]> scripts.mit.edu Git - autoinstalls/wordpress.git/commitdiff
Wordpress 3.3 wordpress-3.3
authorEdward Z. Yang <ezyang@mit.edu>
Sun, 18 Dec 2011 20:04:21 +0000 (15:04 -0500)
committerEdward Z. Yang <ezyang@mit.edu>
Sun, 18 Dec 2011 20:04:21 +0000 (15:04 -0500)
Signed-off-by: Edward Z. Yang <ezyang@mit.edu>
496 files changed:
readme.html
wp-activate.php
wp-admin/about.php [new file with mode: 0644]
wp-admin/admin-ajax.php
wp-admin/admin-footer.php
wp-admin/admin-header.php
wp-admin/admin.php
wp-admin/async-upload.php
wp-admin/comment.php
wp-admin/credits.php
wp-admin/css/colors-classic-rtl.css [deleted file]
wp-admin/css/colors-classic-rtl.dev.css [deleted file]
wp-admin/css/colors-classic.css
wp-admin/css/colors-classic.dev.css
wp-admin/css/colors-fresh-rtl.css [deleted file]
wp-admin/css/colors-fresh-rtl.dev.css [deleted file]
wp-admin/css/colors-fresh.css
wp-admin/css/colors-fresh.dev.css
wp-admin/css/dashboard-rtl.css [deleted file]
wp-admin/css/dashboard-rtl.dev.css [deleted file]
wp-admin/css/dashboard.css [deleted file]
wp-admin/css/dashboard.dev.css [deleted file]
wp-admin/css/farbtastic-rtl.css [deleted file]
wp-admin/css/farbtastic.css
wp-admin/css/global-rtl.css [deleted file]
wp-admin/css/global-rtl.dev.css [deleted file]
wp-admin/css/global.css [deleted file]
wp-admin/css/global.dev.css [deleted file]
wp-admin/css/ie-rtl.css
wp-admin/css/ie-rtl.dev.css
wp-admin/css/ie.css
wp-admin/css/ie.dev.css
wp-admin/css/install-rtl.css [deleted file]
wp-admin/css/install-rtl.dev.css [deleted file]
wp-admin/css/install.css
wp-admin/css/install.dev.css
wp-admin/css/login-rtl.css [deleted file]
wp-admin/css/login-rtl.dev.css [deleted file]
wp-admin/css/login.css [deleted file]
wp-admin/css/login.dev.css [deleted file]
wp-admin/css/media-rtl.css
wp-admin/css/media-rtl.dev.css
wp-admin/css/media.css
wp-admin/css/media.dev.css
wp-admin/css/ms.css [deleted file]
wp-admin/css/ms.dev.css [deleted file]
wp-admin/css/nav-menu-rtl.css [deleted file]
wp-admin/css/nav-menu-rtl.dev.css [deleted file]
wp-admin/css/nav-menu.css [deleted file]
wp-admin/css/nav-menu.dev.css [deleted file]
wp-admin/css/plugin-install-rtl.css [deleted file]
wp-admin/css/plugin-install-rtl.dev.css [deleted file]
wp-admin/css/plugin-install.css [deleted file]
wp-admin/css/plugin-install.dev.css [deleted file]
wp-admin/css/press-this-rtl.css [deleted file]
wp-admin/css/press-this-rtl.dev.css [deleted file]
wp-admin/css/press-this.css [deleted file]
wp-admin/css/press-this.dev.css [deleted file]
wp-admin/css/theme-editor-rtl.css [deleted file]
wp-admin/css/theme-editor-rtl.dev.css [deleted file]
wp-admin/css/theme-editor.css [deleted file]
wp-admin/css/theme-editor.dev.css [deleted file]
wp-admin/css/theme-install-rtl.css [deleted file]
wp-admin/css/theme-install-rtl.dev.css [deleted file]
wp-admin/css/theme-install.css [deleted file]
wp-admin/css/theme-install.dev.css [deleted file]
wp-admin/css/widgets-rtl.css [deleted file]
wp-admin/css/widgets-rtl.dev.css [deleted file]
wp-admin/css/widgets.css [deleted file]
wp-admin/css/widgets.dev.css [deleted file]
wp-admin/css/wp-admin-rtl.css
wp-admin/css/wp-admin-rtl.dev.css
wp-admin/css/wp-admin.css
wp-admin/css/wp-admin.dev.css
wp-admin/custom-background.php
wp-admin/custom-header.php
wp-admin/edit-comments.php
wp-admin/edit-form-advanced.php
wp-admin/edit-form-comment.php
wp-admin/edit-link-form.php
wp-admin/edit-tags.php
wp-admin/edit.php
wp-admin/export.php
wp-admin/freedoms.php
wp-admin/images/icons32-vs.png
wp-admin/images/icons32.png
wp-admin/images/media-button.png [new file with mode: 0644]
wp-admin/images/menu-vs.png
wp-admin/images/menu.png
wp-admin/images/screenshots/admin-flyouts.png [new file with mode: 0644]
wp-admin/images/screenshots/coediting.png [new file with mode: 0644]
wp-admin/images/screenshots/drag-and-drop.png [new file with mode: 0644]
wp-admin/images/screenshots/help-screen.png [new file with mode: 0644]
wp-admin/images/screenshots/media-icon.png [new file with mode: 0644]
wp-admin/images/screenshots/new-feature-pointer.png [new file with mode: 0644]
wp-admin/images/screenshots/welcome-screen.png [new file with mode: 0644]
wp-admin/images/wp-badge.png [new file with mode: 0644]
wp-admin/images/xit.gif
wp-admin/import.php
wp-admin/includes/admin.php
wp-admin/includes/class-wp-comments-list-table.php
wp-admin/includes/class-wp-filesystem-base.php
wp-admin/includes/class-wp-filesystem-direct.php
wp-admin/includes/class-wp-filesystem-ftpext.php
wp-admin/includes/class-wp-filesystem-ftpsockets.php
wp-admin/includes/class-wp-filesystem-ssh2.php
wp-admin/includes/class-wp-list-table.php
wp-admin/includes/class-wp-media-list-table.php
wp-admin/includes/class-wp-ms-sites-list-table.php
wp-admin/includes/class-wp-ms-users-list-table.php
wp-admin/includes/class-wp-plugin-install-list-table.php
wp-admin/includes/class-wp-plugins-list-table.php
wp-admin/includes/class-wp-posts-list-table.php
wp-admin/includes/class-wp-terms-list-table.php
wp-admin/includes/class-wp-theme-install-list-table.php
wp-admin/includes/class-wp-themes-list-table.php
wp-admin/includes/class-wp-upgrader.php
wp-admin/includes/class-wp-users-list-table.php
wp-admin/includes/dashboard.php
wp-admin/includes/deprecated.php
wp-admin/includes/export.php
wp-admin/includes/file.php
wp-admin/includes/image-edit.php
wp-admin/includes/image.php
wp-admin/includes/internal-linking.php [deleted file]
wp-admin/includes/manifest.php
wp-admin/includes/media.php
wp-admin/includes/menu.php
wp-admin/includes/meta-boxes.php
wp-admin/includes/misc.php
wp-admin/includes/ms.php
wp-admin/includes/nav-menu.php
wp-admin/includes/plugin-install.php
wp-admin/includes/post.php
wp-admin/includes/schema.php
wp-admin/includes/screen.php [new file with mode: 0644]
wp-admin/includes/template.php
wp-admin/includes/theme-install.php
wp-admin/includes/theme.php
wp-admin/includes/update-core.php
wp-admin/includes/update.php
wp-admin/includes/upgrade.php
wp-admin/includes/user.php
wp-admin/includes/widgets.php
wp-admin/index.php
wp-admin/install.php
wp-admin/js/common.dev.js
wp-admin/js/common.js
wp-admin/js/dashboard.dev.js
wp-admin/js/dashboard.js
wp-admin/js/edit-comments.dev.js
wp-admin/js/edit-comments.js
wp-admin/js/editor.dev.js
wp-admin/js/editor.js
wp-admin/js/gallery.dev.js
wp-admin/js/gallery.js
wp-admin/js/image-edit.dev.js
wp-admin/js/image-edit.js
wp-admin/js/inline-edit-post.dev.js
wp-admin/js/inline-edit-post.js
wp-admin/js/media-upload.dev.js
wp-admin/js/media-upload.js
wp-admin/js/nav-menu.dev.js
wp-admin/js/nav-menu.js
wp-admin/js/post.dev.js
wp-admin/js/post.js
wp-admin/js/postbox.dev.js
wp-admin/js/postbox.js
wp-admin/js/widgets.dev.js
wp-admin/js/widgets.js
wp-admin/js/wp-fullscreen.dev.js
wp-admin/js/wp-fullscreen.js
wp-admin/link-manager.php
wp-admin/load-styles.php
wp-admin/maint/repair.php
wp-admin/media-new.php
wp-admin/media-upload.php
wp-admin/media.php
wp-admin/menu-header.php
wp-admin/menu.php
wp-admin/my-sites.php
wp-admin/nav-menus.php
wp-admin/network.php
wp-admin/network/edit.php
wp-admin/network/index.php
wp-admin/network/menu.php
wp-admin/network/settings.php
wp-admin/network/site-info.php
wp-admin/network/site-new.php
wp-admin/network/site-settings.php
wp-admin/network/site-themes.php
wp-admin/network/site-users.php
wp-admin/network/sites.php
wp-admin/network/themes.php
wp-admin/network/upgrade.php
wp-admin/network/user-new.php
wp-admin/network/users.php
wp-admin/options-discussion.php
wp-admin/options-general.php
wp-admin/options-media.php
wp-admin/options-permalink.php
wp-admin/options-privacy.php
wp-admin/options-reading.php
wp-admin/options-writing.php
wp-admin/options.php
wp-admin/plugin-editor.php
wp-admin/plugin-install.php
wp-admin/plugins.php
wp-admin/post-new.php
wp-admin/post.php
wp-admin/press-this.php
wp-admin/setup-config.php
wp-admin/theme-editor.php
wp-admin/theme-install.php
wp-admin/themes.php
wp-admin/tools.php
wp-admin/update-core.php
wp-admin/update.php
wp-admin/upgrade.php
wp-admin/upload.php
wp-admin/user-edit.php
wp-admin/user-new.php
wp-admin/user/menu.php
wp-admin/users.php
wp-admin/widgets.php
wp-app.php
wp-atom.php [deleted file]
wp-comments-post.php
wp-commentsrss2.php [deleted file]
wp-content/themes/twentyeleven/archive.php
wp-content/themes/twentyeleven/colors/dark.css
wp-content/themes/twentyeleven/content-gallery.php
wp-content/themes/twentyeleven/content-image.php
wp-content/themes/twentyeleven/content-single.php
wp-content/themes/twentyeleven/editor-style-rtl.css
wp-content/themes/twentyeleven/footer.php
wp-content/themes/twentyeleven/functions.php
wp-content/themes/twentyeleven/image.php
wp-content/themes/twentyeleven/inc/theme-options.php
wp-content/themes/twentyeleven/inc/widgets.php
wp-content/themes/twentyeleven/languages/twentyeleven.pot
wp-content/themes/twentyeleven/page.php
wp-content/themes/twentyeleven/rtl.css
wp-content/themes/twentyeleven/showcase.php
wp-content/themes/twentyeleven/sidebar-page.php
wp-content/themes/twentyeleven/style.css
wp-content/themes/twentyten/archive.php
wp-content/themes/twentyten/editor-style-rtl.css
wp-content/themes/twentyten/editor-style.css
wp-content/themes/twentyten/functions.php
wp-content/themes/twentyten/languages/twentyten.pot
wp-content/themes/twentyten/loop-attachment.php
wp-content/themes/twentyten/loop-single.php
wp-content/themes/twentyten/style.css
wp-cron.php
wp-feed.php [deleted file]
wp-includes/admin-bar.php
wp-includes/author-template.php
wp-includes/bookmark.php
wp-includes/cache.php
wp-includes/canonical.php
wp-includes/capabilities.php
wp-includes/category-template.php
wp-includes/class-http.php
wp-includes/class-oembed.php
wp-includes/class-phpass.php
wp-includes/class-wp-admin-bar.php
wp-includes/class-wp-editor.php [new file with mode: 0644]
wp-includes/class-wp-error.php
wp-includes/class-wp-xmlrpc-server.php
wp-includes/class-wp.php
wp-includes/class.wp-dependencies.php
wp-includes/class.wp-scripts.php
wp-includes/class.wp-styles.php
wp-includes/comment-template.php
wp-includes/comment.php
wp-includes/cron.php
wp-includes/css/admin-bar-rtl.css
wp-includes/css/admin-bar-rtl.dev.css
wp-includes/css/admin-bar.css
wp-includes/css/admin-bar.dev.css
wp-includes/css/editor-buttons.css [new file with mode: 0644]
wp-includes/css/editor-buttons.dev.css [new file with mode: 0644]
wp-includes/css/jquery-ui-dialog.css
wp-includes/css/jquery-ui-dialog.dev.css
wp-includes/css/wp-pointer.css [new file with mode: 0644]
wp-includes/css/wp-pointer.dev.css [new file with mode: 0644]
wp-includes/default-constants.php
wp-includes/default-filters.php
wp-includes/default-widgets.php
wp-includes/deprecated.php
wp-includes/feed-atom-comments.php
wp-includes/feed-rss2-comments.php
wp-includes/feed.php
wp-includes/formatting.php
wp-includes/functions.php
wp-includes/functions.wp-scripts.php
wp-includes/functions.wp-styles.php
wp-includes/general-template.php
wp-includes/http.php
wp-includes/images/admin-bar-sprite-rtl.png [deleted file]
wp-includes/images/admin-bar-sprite.png
wp-includes/images/arrow-pointer-blue.png [new file with mode: 0644]
wp-includes/images/down_arrow.gif [moved from wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/down_arrow.gif with 100% similarity]
wp-includes/images/icon-pointer-flag.png [new file with mode: 0644]
wp-includes/images/toggle-arrow.png [moved from wp-includes/js/tinymce/plugins/wplink/img/toggle-arrow.png with 100% similarity]
wp-includes/images/wpicons.png [moved from wp-includes/js/tinymce/themes/advanced/img/wpicons.png with 100% similarity]
wp-includes/images/xit.gif [new file with mode: 0644]
wp-includes/js/admin-bar.dev.js
wp-includes/js/admin-bar.js
wp-includes/js/autosave.dev.js
wp-includes/js/autosave.js
wp-includes/js/jquery/jquery.js
wp-includes/js/jquery/ui.button.js [deleted file]
wp-includes/js/jquery/ui.core.js [deleted file]
wp-includes/js/jquery/ui.draggable.js [deleted file]
wp-includes/js/jquery/ui.mouse.js [deleted file]
wp-includes/js/jquery/ui.resizable.js [deleted file]
wp-includes/js/jquery/ui.widget.js [deleted file]
wp-includes/js/jquery/ui/jquery.effects.blind.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.effects.bounce.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.effects.clip.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.effects.core.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.effects.drop.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.effects.explode.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.effects.fade.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.effects.fold.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.effects.highlight.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.effects.pulsate.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.effects.scale.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.effects.shake.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.effects.slide.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.effects.transfer.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.ui.accordion.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.ui.autocomplete.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.ui.button.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.ui.core.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.ui.datepicker.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.ui.dialog.min.js [moved from wp-includes/js/jquery/ui.dialog.js with 75% similarity]
wp-includes/js/jquery/ui/jquery.ui.draggable.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.ui.droppable.min.js [moved from wp-includes/js/jquery/ui.droppable.js with 81% similarity]
wp-includes/js/jquery/ui/jquery.ui.mouse.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.ui.position.min.js [moved from wp-includes/js/jquery/ui.position.js with 99% similarity]
wp-includes/js/jquery/ui/jquery.ui.progressbar.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.ui.resizable.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.ui.selectable.min.js [moved from wp-includes/js/jquery/ui.selectable.js with 97% similarity]
wp-includes/js/jquery/ui/jquery.ui.slider.min.js [new file with mode: 0644]
wp-includes/js/jquery/ui/jquery.ui.sortable.min.js [moved from wp-includes/js/jquery/ui.sortable.js with 89% similarity]
wp-includes/js/jquery/ui/jquery.ui.tabs.min.js [moved from wp-includes/js/jquery/ui.tabs.js with 99% similarity]
wp-includes/js/jquery/ui/jquery.ui.widget.min.js [new file with mode: 0644]
wp-includes/js/l10n.dev.js [deleted file]
wp-includes/js/l10n.js [deleted file]
wp-includes/js/plupload/changelog.txt [new file with mode: 0644]
wp-includes/js/plupload/handlers.dev.js [new file with mode: 0644]
wp-includes/js/plupload/handlers.js [new file with mode: 0644]
wp-includes/js/plupload/license.txt [new file with mode: 0644]
wp-includes/js/plupload/plupload.flash.js [new file with mode: 0644]
wp-includes/js/plupload/plupload.flash.swf [new file with mode: 0644]
wp-includes/js/plupload/plupload.html4.js [new file with mode: 0644]
wp-includes/js/plupload/plupload.html5.js [new file with mode: 0644]
wp-includes/js/plupload/plupload.js [new file with mode: 0644]
wp-includes/js/plupload/plupload.silverlight.js [new file with mode: 0644]
wp-includes/js/plupload/plupload.silverlight.xap [new file with mode: 0644]
wp-includes/js/quicktags.dev.js
wp-includes/js/quicktags.js
wp-includes/js/swfupload/license.txt
wp-includes/js/thickbox/thickbox.css
wp-includes/js/thickbox/thickbox.js
wp-includes/js/tinymce/langs/wp-langs-en.js
wp-includes/js/tinymce/langs/wp-langs.php
wp-includes/js/tinymce/plugins/fullscreen/editor_plugin.js
wp-includes/js/tinymce/plugins/fullscreen/fullscreen.htm
wp-includes/js/tinymce/plugins/inlinepopups/editor_plugin.js
wp-includes/js/tinymce/plugins/inlinepopups/skins/clearlooks2/window.css
wp-includes/js/tinymce/plugins/inlinepopups/template.htm
wp-includes/js/tinymce/plugins/media/editor_plugin.js
wp-includes/js/tinymce/plugins/media/js/media.js
wp-includes/js/tinymce/plugins/media/media.htm
wp-includes/js/tinymce/plugins/paste/editor_plugin.js
wp-includes/js/tinymce/plugins/paste/pastetext.htm
wp-includes/js/tinymce/plugins/paste/pasteword.htm
wp-includes/js/tinymce/plugins/spellchecker/changelog.txt
wp-includes/js/tinymce/plugins/spellchecker/classes/EnchantSpell.php
wp-includes/js/tinymce/plugins/spellchecker/classes/PSpellShell.php
wp-includes/js/tinymce/plugins/spellchecker/editor_plugin.js
wp-includes/js/tinymce/plugins/tabfocus/editor_plugin.js
wp-includes/js/tinymce/plugins/wordpress/editor_plugin.dev.js
wp-includes/js/tinymce/plugins/wordpress/editor_plugin.js
wp-includes/js/tinymce/plugins/wpdialogs/js/popup.dev.js
wp-includes/js/tinymce/plugins/wpeditimage/css/editimage.css
wp-includes/js/tinymce/plugins/wpeditimage/editor_plugin.dev.js
wp-includes/js/tinymce/plugins/wpeditimage/editor_plugin.js
wp-includes/js/tinymce/plugins/wpeditimage/js/editimage.dev.js
wp-includes/js/tinymce/plugins/wpeditimage/js/editimage.js
wp-includes/js/tinymce/plugins/wpfullscreen/css/wp-fullscreen.css
wp-includes/js/tinymce/plugins/wpfullscreen/editor_plugin.dev.js
wp-includes/js/tinymce/plugins/wpfullscreen/editor_plugin.js
wp-includes/js/tinymce/plugins/wplink/css/wplink-rtl.css [deleted file]
wp-includes/js/tinymce/plugins/wplink/css/wplink-rtl.dev.css [deleted file]
wp-includes/js/tinymce/plugins/wplink/css/wplink.css [deleted file]
wp-includes/js/tinymce/plugins/wplink/css/wplink.dev.css [deleted file]
wp-includes/js/tinymce/plugins/wplink/js/wplink.js [deleted file]
wp-includes/js/tinymce/themes/advanced/about.htm
wp-includes/js/tinymce/themes/advanced/anchor.htm
wp-includes/js/tinymce/themes/advanced/charmap.htm
wp-includes/js/tinymce/themes/advanced/color_picker.htm
wp-includes/js/tinymce/themes/advanced/editor_template.js
wp-includes/js/tinymce/themes/advanced/image.htm
wp-includes/js/tinymce/themes/advanced/img/colorpicker.jpg
wp-includes/js/tinymce/themes/advanced/img/flash.gif
wp-includes/js/tinymce/themes/advanced/img/icons.gif
wp-includes/js/tinymce/themes/advanced/img/quicktime.gif
wp-includes/js/tinymce/themes/advanced/img/shockwave.gif
wp-includes/js/tinymce/themes/advanced/js/image.js
wp-includes/js/tinymce/themes/advanced/link.htm
wp-includes/js/tinymce/themes/advanced/shortcuts.htm
wp-includes/js/tinymce/themes/advanced/skins/default/content.css
wp-includes/js/tinymce/themes/advanced/skins/default/img/buttons.png
wp-includes/js/tinymce/themes/advanced/skins/default/img/items.gif
wp-includes/js/tinymce/themes/advanced/skins/default/img/tabs.gif
wp-includes/js/tinymce/themes/advanced/skins/default/ui.css
wp-includes/js/tinymce/themes/advanced/skins/highcontrast/content.css
wp-includes/js/tinymce/themes/advanced/skins/highcontrast/ui.css
wp-includes/js/tinymce/themes/advanced/skins/o2k7/content.css
wp-includes/js/tinymce/themes/advanced/skins/o2k7/img/button_bg.png
wp-includes/js/tinymce/themes/advanced/skins/o2k7/img/button_bg_black.png
wp-includes/js/tinymce/themes/advanced/skins/o2k7/img/button_bg_silver.png
wp-includes/js/tinymce/themes/advanced/skins/o2k7/ui.css
wp-includes/js/tinymce/themes/advanced/skins/wp_theme/content.css
wp-includes/js/tinymce/themes/advanced/skins/wp_theme/dialog.css
wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/butt2.png [deleted file]
wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/button_bg.png [deleted file]
wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/fade-butt.png [deleted file]
wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/separator.gif [deleted file]
wp-includes/js/tinymce/themes/advanced/skins/wp_theme/ui.css
wp-includes/js/tinymce/themes/advanced/source_editor.htm
wp-includes/js/tinymce/tiny_mce.js
wp-includes/js/tinymce/utils/editable_selects.js
wp-includes/js/tinymce/wp-mce-help.php
wp-includes/js/tinymce/wp-tinymce.js.gz
wp-includes/js/wp-pointer.dev.js [new file with mode: 0644]
wp-includes/js/wp-pointer.js [new file with mode: 0644]
wp-includes/js/wplink.dev.js [moved from wp-includes/js/tinymce/plugins/wplink/js/wplink.dev.js with 97% similarity]
wp-includes/js/wplink.js [new file with mode: 0644]
wp-includes/kses.php
wp-includes/l10n.php
wp-includes/link-template.php
wp-includes/load.php
wp-includes/locale.php
wp-includes/media.php
wp-includes/meta.php
wp-includes/ms-blogs.php
wp-includes/ms-default-filters.php
wp-includes/ms-deprecated.php
wp-includes/ms-files.php
wp-includes/ms-functions.php
wp-includes/ms-load.php
wp-includes/ms-settings.php
wp-includes/nav-menu-template.php
wp-includes/nav-menu.php
wp-includes/pluggable-deprecated.php
wp-includes/pluggable.php
wp-includes/plugin.php
wp-includes/pomo/entry.php
wp-includes/pomo/mo.php
wp-includes/pomo/po.php
wp-includes/pomo/streams.php
wp-includes/pomo/translations.php
wp-includes/post-template.php
wp-includes/post-thumbnail-template.php
wp-includes/post.php
wp-includes/query.php
wp-includes/rewrite.php
wp-includes/script-loader.php
wp-includes/shortcodes.php
wp-includes/taxonomy.php
wp-includes/theme-compat/comments-popup.php
wp-includes/theme-compat/comments.php
wp-includes/theme-compat/header.php
wp-includes/theme-compat/sidebar.php
wp-includes/theme.php
wp-includes/update.php
wp-includes/user.php
wp-includes/vars.php
wp-includes/version.php
wp-includes/widgets.php
wp-includes/wp-db.php
wp-load.php
wp-login.php
wp-mail.php
wp-pass.php
wp-rdf.php [deleted file]
wp-rss.php [deleted file]
wp-rss2.php [deleted file]
wp-settings.php
wp-signup.php

index 691753e22c1eaef4876919494c397067360edfa0..72e21ee6f10820c8ffcf44ea5cf5a4d722ddc4b2 100644 (file)
@@ -8,7 +8,7 @@
 <body>
 <h1 id="logo">
        <a href="http://wordpress.org/"><img alt="WordPress" src="wp-admin/images/wordpress-logo.png" width="250" height="68" /></a>
 <body>
 <h1 id="logo">
        <a href="http://wordpress.org/"><img alt="WordPress" src="wp-admin/images/wordpress-logo.png" width="250" height="68" /></a>
-       <br /> Version 3.2.1
+       <br /> Version 3.3
 </h1>
 <p style="text-align: center">Semantic Personal Publishing Platform</p>
 
 </h1>
 <p style="text-align: center">Semantic Personal Publishing Platform</p>
 
index 1ec40287dce80a2aaf783918c847b628352988eb..4f72070943ecaeb68faed0def9697aa8db29fc1d 100644 (file)
@@ -63,9 +63,9 @@ get_header();
                                <?php
                                echo '<p class="lead-in">';
                                if ( $signup->domain . $signup->path == '' ) {
                                <?php
                                echo '<p class="lead-in">';
                                if ( $signup->domain . $signup->path == '' ) {
-                                       printf( __('Your account has been activated. You may now <a href="%1$s">log in</a> to the site using your chosen username of &#8220;%2$s&#8221;.  Please check your email inbox at %3$s for your password and login instructions. If you do not receive an email, please check your junk or spam folder. If you still do not receive an email within an hour, you can <a href="%4$s">reset your password</a>.'), network_site_url( 'wp-login.php', 'login' ), $signup->user_login, $signup->user_email, network_site_url( 'wp-login.php?action=lostpassword', 'login' ) );
+                                       printf( __('Your account has been activated. You may now <a href="%1$s">log in</a> to the site using your chosen username of &#8220;%2$s&#8221;.  Please check your email inbox at %3$s for your password and login instructions. If you do not receive an email, please check your junk or spam folder. If you still do not receive an email within an hour, you can <a href="%4$s">reset your password</a>.'), network_site_url( 'wp-login.php', 'login' ), $signup->user_login, $signup->user_email, wp_lostpassword_url() );
                                } else {
                                } else {
-                                       printf( __('Your site at <a href="%1$s">%2$s</a> is active. You may now log in to your site using your chosen username of &#8220;%3$s&#8221;.  Please check your email inbox at %4$s for your password and login instructions.  If you do not receive an email, please check your junk or spam folder.  If you still do not receive an email within an hour, you can <a href="%5$s">reset your password</a>.'), 'http://' . $signup->domain, $signup->domain, $signup->user_login, $signup->user_email, network_site_url( 'wp-login.php?action=lostpassword' ) );
+                                       printf( __('Your site at <a href="%1$s">%2$s</a> is active. You may now log in to your site using your chosen username of &#8220;%3$s&#8221;.  Please check your email inbox at %4$s for your password and login instructions.  If you do not receive an email, please check your junk or spam folder.  If you still do not receive an email within an hour, you can <a href="%5$s">reset your password</a>.'), 'http://' . $signup->domain, $signup->domain, $signup->user_login, $signup->user_email, wp_lostpassword_url() );
                                }
                                echo '</p>';
                        } else {
                                }
                                echo '</p>';
                        } else {
diff --git a/wp-admin/about.php b/wp-admin/about.php
new file mode 100644 (file)
index 0000000..21156f0
--- /dev/null
@@ -0,0 +1,201 @@
+<?php
+/**
+ * About This Version administration panel.
+ *
+ * @package WordPress
+ * @subpackage Administration
+ */
+
+/** WordPress Administration Bootstrap */
+require_once( './admin.php' );
+
+$title = __( 'About' );
+
+list( $display_version ) = explode( '-', $wp_version );
+
+include( './admin-header.php' );
+?>
+<div class="wrap about-wrap">
+
+<h1><?php printf( __( 'Welcome to WordPress %s' ), $display_version ); ?></h1>
+
+<div class="about-text"><?php printf( __( 'Thank you for updating to the latest version! Using WordPress %s will improve your looks, personality, and web publishing experience. Okay, just the last one, but still. :)' ), $display_version ); ?></div>
+
+<div class="wp-badge"><?php printf( __( 'Version %s' ), $display_version ); ?></div>
+
+<h2 class="nav-tab-wrapper">
+       <a href="about.php" class="nav-tab nav-tab-active">
+               <?php _e( 'What&#8217;s New' ); ?>
+       </a><a href="credits.php" class="nav-tab">
+               <?php _e( 'Credits' ); ?>
+       </a><a href="freedoms.php" class="nav-tab">
+               <?php _e( 'Freedoms' ); ?>
+       </a>
+</h2>
+
+<div class="changelog">
+       <h3><?php _e( 'Easier Uploading' ); ?></h3>
+
+       <div class="feature-section images-stagger-right">
+               <div class="feature-images">
+                       <img src="images/screenshots/media-icon.png" width="200" class="angled-right" />
+                       <img src="images/screenshots/drag-and-drop.png" width="200" class="angled-left" />
+               </div>
+               <div class="left-feature">
+                       <h4><?php _e( 'File Type Detection' ); ?></h4>
+                       <p><?php _e( 'We&#8217;ve streamlined things! Instead of needing to click on a specific upload icon based on your file type, now there&#8217;s just one. Once your file is uploaded, the appropriate fields will be displayed for entering information based on the file type.' ); ?></p>
+
+                       <h4><?php _e( 'Drag-and-Drop Media Uploader' ); ?></h4>
+                       <p><?php _e( 'Adding photos or other files to posts and pages just got easier. Drag files from your desktop and drop them into the uploader. Add one file at a time, or many at once.' ); ?></p>
+
+                       <h4><?php _e( 'More File Formats' ); ?></h4>
+                       <p><?php _e( 'We&#8217;ve added the rar and 7z file formats to the list of allowed file types in the uploader.' ); ?></p>
+               </div>
+       </div>
+</div>
+
+<div class="changelog">
+       <h3><?php _e( 'Dashboard Design' ); ?></h3>
+
+       <div class="feature-section text-features">
+               <h4><?php _e( 'Flyout Menus' ); ?></h4>
+               <p><?php _e( 'Speed up navigating the dashboard and reduce repetitive clicking with our new flyout submenus. As you hover over each main menu item in your dashboard navigation, the submenus will magically appear, providing single-click access to any dashboard screen.' ); ?></p>
+
+               <div>
+               <h4><?php _e( 'Header + Admin Bar = Toolbar' ); ?></h4>
+               <p><?php _e( 'To save space and increase efficiency, we&#8217;ve combined the admin bar and the old Dashboard header into one persistent toolbar. Hovering over the toolbar items will reveal submenus when available for quick access. ' ); ?></p>
+               </div>
+       </div>
+
+       <div class="feature-section screenshot-features">
+               <div class="angled-left">
+                       <img src="images/screenshots/admin-flyouts.png" />
+                       <h4><?php _e( 'Responsive Design' ); ?></h4>
+                       <p><?php _e( 'Certain dashboard screens have been updated to look better at various sizes, including improved iPad/tablet support.' ); ?></p>
+               </div>
+               <div class="angled-right">
+                       <img src="images/screenshots/help-screen.png" />
+                       <h4><?php _e( 'Help Tabs' ); ?></h4>
+                       <p><?php _e( 'The Help tabs located in the upper corner of the dashboard screens below your name have gotten a facelift. Help content is broken into smaller sections for easier access, with links to relevant documentation and the support forums always visible.' ); ?></p>
+               </div>
+       </div>
+</div>
+
+<div class="changelog">
+       <h3><?php _e( 'Feels Like the First Time' ); ?></h3>
+
+       <div class="feature-section images-stagger-right">
+               <div class="feature-images">
+                       <img src="images/screenshots/new-feature-pointer.png" class="angled-right" />
+                       <img src="images/screenshots/welcome-screen.png" class="angled-left" />
+               </div>
+               <div class="left-feature">
+                       <h4><?php _e( 'New Feature Pointers' ); ?></h4>
+                       <p><?php _e( 'When we add new features, move navigation, or do anything else with the dashboard that might throw you for a loop when you update your WordPress site, we&#8217;ll let you know about it with new feature pointers explaining the change.' ); ?></p>
+
+                       <h4><?php _e( 'Post-update Changelog' ); ?></h4>
+                       <p><?php _e( 'This screen! From now on when you update WordPress, you&#8217;ll be brought to this screen &mdash; also accessible any time from the W logo in the corner of the toolbar &mdash; to get an overview of what&#8217;s changed.' ); ?></p>
+
+                       <h4><?php _e( 'Dashboard Welcome' ); ?></h4>
+                       <p><?php _e( 'The dashboard home screen will have a Welcome area that displays when a new WordPress installation is accessed for the first time, prompting the site owner to complete various setup tasks. Once dismissed, this welcome can be accessed via the dashboard home screen options tab.' ); ?></p>
+               </div>
+       </div>
+
+</div>
+
+<div class="changelog">
+       <h3><?php _e( 'Content Tools' ); ?></h3>
+
+       <div class="feature-section three-col">
+               <div>
+                       <h4><?php _e( 'Better Co-Editing' ); ?></h4>
+                       <img src="images/screenshots/coediting.png" class="element-screenshot" />
+                       <p><?php _e( 'Have you ever gone to edit a post after someone else has finished with it, only to get an alert that tells you the other person is still editing the post? From now on, you&#8217;ll only get that alert if another person is still on the editing screen &mdash; no more time lag.' ); ?></p>
+               </div>
+               <div>
+                       <h4><?php _e( 'Tumblr Importer' ); ?></h4>
+                       <p><?php _e( 'Want to import content from Tumblr to WordPress? No problem! Go to <span class="no-break">Tools &rarr; Import</span> to get the new Tumblr Importer, which maps your Tumblog posts to the matching WordPress post formats. Tip: Choose a theme designed to display post formats to get the greatest benefit from the importer.' ); ?></p>
+               </div>
+               <div class="last-feature">
+                       <h4><?php _e( 'Widget Improvements' ); ?></h4>
+                       <p><?php _e( 'Changing themes often requires widget re-configuration based on the number and position of sidebars. Now if you change back to a previous theme, the widgets will automatically go back to how you had them arranged in that theme. <em>Note: if you&#8217;ve added new widgets since the switch, you&#8217;ll need to rescue them from the Inactive Widgets area.</em>' ); ?></p>
+               </div>
+       </div>
+
+</div>
+
+<div class="changelog">
+       <h3><?php _e( 'Under the Hood' ); ?></h3>
+
+       <div class="feature-section three-col">
+               <div>
+                       <h4><?php _e( 'Flexible Permalinks' ); ?></h4>
+                       <p><?php _e( 'You have more freedom when choosing a post permalink structure. Skip the date information or add a category slug without a performance penalty.' ); ?></p>
+               </div>
+               <div>
+                       <h4><?php _e( 'Post Slugs: Less Funky' ); ?></h4>
+                       <p><?php _e( 'Funky characters in post titles (e.g. curly quotes from a word processor) will no longer result in garbled post slugs.' ); ?></p>
+               </div>
+               <div class="last-feature">
+                       <h4><?php _e( 'jQuery and jQuery UI' ); ?></h4>
+                       <p><?php printf( __( 'WordPress now includes the entire jQuery UI stack and the latest version of jQuery: %s.' ), '1.7.1' ); ?></p>
+               </div>
+       </div>
+
+       <div class="feature-section three-col">
+               <div>
+                       <h4 style="direction:ltr">is_main_query()</h4>
+                       <p><?php _e( 'This handy method will tell you if a <code>WP_Query</code> object is the main WordPress query or a secondary query.' ); ?></p>
+               </div>
+               <div>
+                       <h4><?php _e( 'WP_Screen API' ); ?></h4>
+                       <p><?php _e( 'WordPress has a nice new API for working with admin screens. Create rich screens, add help documentation, adapt to screen contexts, and more.' ); ?></p>
+               </div>
+               <div class="last-feature">
+                       <h4><?php _e( 'Editor API Overhaul' ); ?></h4>
+                       <p><?php _e( 'The new editor API automatically pulls in all the JS and CSS goodness for the editor. It even supports multiple editors on the same page.' ); ?></p>
+               </div>
+       </div>
+
+</div>
+
+<div class="return-to-dashboard">
+       <?php if ( current_user_can( 'update_core' ) && isset( $_GET['updated'] ) ) : ?>
+       <a href="<?php echo esc_url( network_admin_url( 'update-core.php' ) ); ?>"><?php
+               is_multisite() ? _e( 'Return to Updates' ) : _e( 'Return to Dashboard &rarr; Updates' );
+       ?></a> |
+       <?php endif; ?>
+       <a href="<?php echo esc_url( admin_url() ); ?>"><?php _e( 'Go to Dashboard &rarr; Home' ); ?></a>
+</div>
+
+</div>
+<?php
+
+include( './admin-footer.php' );
+
+// These are strings we may use to describe maintenance/security releases, where we aim for no new strings.
+return;
+
+_n_noop( 'Maintenance Release', 'Maintenance Releases' );
+_n_noop( 'Security Release', 'Security Releases' );
+_n_noop( 'Maintenance and Security Release', 'Maintenance and Security Releases' );
+
+/* translators: 1: WordPress version number. */
+_n_noop( '<strong>Version %1$s</strong> addressed a security issue.',
+         '<strong>Version %1$s</strong> addressed some security issues.' );
+
+/* translators: 1: WordPress version number, 2: plural number of bugs. */
+_n_noop( '<strong>Version %1$s</strong> addressed %2$s bug.',
+         '<strong>Version %1$s</strong> addressed %2$s bugs.' );
+
+/* translators: 1: WordPress version number, 2: plural number of bugs. Singular security issue. */
+_n_noop( '<strong>Version %1$s</strong> addressed a security issue and fixed %2$s bug.',
+         '<strong>Version %1$s</strong> addressed a security issue and fixed %2$s bugs.' );
+
+/* translators: 1: WordPress version number, 2: plural number of bugs. More than one security issue. */
+_n_noop( '<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bug.',
+         '<strong>Version %1$s</strong> addressed some security issues and fixed %2$s bugs.' );
+
+__( 'For more information, see <a href="%s">the release notes</a>.' );
+
+?>
\ No newline at end of file
index 18a853bf6d325deffbb9d72fa46fd92832b16a97..c21c861e4bbb2e4a9c6c14cfc7162bf59cabf67a 100644 (file)
@@ -55,10 +55,7 @@ case 'fetch-list' :
        $list_class = $_GET['list_args']['class'];
        check_ajax_referer( "fetch-list-$list_class", '_ajax_fetch_list_nonce' );
 
        $list_class = $_GET['list_args']['class'];
        check_ajax_referer( "fetch-list-$list_class", '_ajax_fetch_list_nonce' );
 
-       $current_screen = (object) $_GET['list_args']['screen'];
-       //TODO fix this in a better way see #15336
-       $current_screen->is_network = 'false' === $current_screen->is_network ? false : true;
-       $current_screen->is_user = 'false' === $current_screen->is_user ? false : true;
+       $current_screen = convert_to_screen( $_GET['list_args']['screen']['id'] );
 
        define( 'WP_NETWORK_ADMIN', $current_screen->is_network );
        define( 'WP_USER_ADMIN', $current_screen->is_user );
 
        define( 'WP_NETWORK_ADMIN', $current_screen->is_network );
        define( 'WP_USER_ADMIN', $current_screen->is_user );
@@ -321,7 +318,7 @@ switch ( $action = $_POST['action'] ) :
 case 'delete-comment' : // On success, die with time() instead of 1
        if ( !$comment = get_comment( $id ) )
                die( (string) time() );
 case 'delete-comment' : // On success, die with time() instead of 1
        if ( !$comment = get_comment( $id ) )
                die( (string) time() );
-       if ( !current_user_can( 'edit_post', $comment->comment_post_ID ) )
+       if ( ! current_user_can( 'edit_comment', $comment->comment_ID ) )
                die('-1');
 
        check_ajax_referer( "delete-comment_$id" );
                die('-1');
 
        check_ajax_referer( "delete-comment_$id" );
@@ -393,10 +390,10 @@ case 'delete-link' :
        break;
 case 'delete-meta' :
        check_ajax_referer( "delete-meta_$id" );
        break;
 case 'delete-meta' :
        check_ajax_referer( "delete-meta_$id" );
-       if ( !$meta = get_post_meta_by_id( $id ) )
+       if ( !$meta = get_metadata_by_mid( 'post', $id ) )
                die('1');
 
                die('1');
 
-       if ( !current_user_can( 'edit_post', $meta->post_id ) || is_protected_meta( $meta->meta_key ) )
+       if ( is_protected_meta( $meta->meta_key, 'post' ) || ! current_user_can( 'delete_post_meta',  $meta->post_id, $meta->meta_key ) )
                die('-1');
        if ( delete_meta( $meta->meta_id ) )
                die('1');
                die('-1');
        if ( delete_meta( $meta->meta_id ) )
                die('1');
@@ -457,7 +454,7 @@ case 'dim-comment' : // On success, die with time() instead of 1
                $x->send();
        }
 
                $x->send();
        }
 
-       if ( !current_user_can( 'edit_post', $comment->comment_post_ID ) && !current_user_can( 'moderate_comments' ) )
+       if ( ! current_user_can( 'edit_comment', $comment->comment_ID ) && ! current_user_can( 'moderate_comments' ) )
                die('-1');
 
        $current = wp_get_comment_status( $comment->comment_ID );
                die('-1');
 
        $current = wp_get_comment_status( $comment->comment_ID );
@@ -612,6 +609,8 @@ case 'get-comments' :
        $x = new WP_Ajax_Response();
        ob_start();
        foreach ( $wp_list_table->items as $comment ) {
        $x = new WP_Ajax_Response();
        ob_start();
        foreach ( $wp_list_table->items as $comment ) {
+               if ( ! current_user_can( 'edit_comment', $comment->comment_ID ) )
+                       continue;
                get_comment( $comment );
                $wp_list_table->single_row( $comment );
        }
                get_comment( $comment );
                $wp_list_table->single_row( $comment );
        }
@@ -638,7 +637,7 @@ case 'replyto-comment' :
        if ( empty($status) )
                die('1');
        elseif ( in_array($status, array('draft', 'pending', 'trash') ) )
        if ( empty($status) )
                die('1');
        elseif ( in_array($status, array('draft', 'pending', 'trash') ) )
-               die( __('Error: you are replying to a comment on a draft post.') );
+               die( __('ERROR: you are replying to a comment on a draft post.') );
 
        $user = wp_get_current_user();
        if ( $user->ID ) {
 
        $user = wp_get_current_user();
        if ( $user->ID ) {
@@ -646,8 +645,8 @@ case 'replyto-comment' :
                $comment_author_email = $wpdb->escape($user->user_email);
                $comment_author_url   = $wpdb->escape($user->user_url);
                $comment_content      = trim($_POST['content']);
                $comment_author_email = $wpdb->escape($user->user_email);
                $comment_author_url   = $wpdb->escape($user->user_url);
                $comment_content      = trim($_POST['content']);
-               if ( current_user_can('unfiltered_html') ) {
-                       if ( wp_create_nonce('unfiltered-html-comment_' . $comment_post_ID) != $_POST['_wp_unfiltered_html_comment'] ) {
+               if ( current_user_can( 'unfiltered_html' ) ) {
+                       if ( wp_create_nonce( 'unfiltered-html-comment' ) != $_POST['_wp_unfiltered_html_comment'] ) {
                                kses_remove_filters(); // start with a clean slate
                                kses_init_filters(); // set up the filters
                        }
                                kses_remove_filters(); // start with a clean slate
                                kses_init_filters(); // set up the filters
                        }
@@ -657,7 +656,7 @@ case 'replyto-comment' :
        }
 
        if ( '' == $comment_content )
        }
 
        if ( '' == $comment_content )
-               die( __('Error: please type a comment.') );
+               die( __('ERROR: please type a comment.') );
 
        $comment_parent = absint($_POST['comment_ID']);
        $comment_auto_approved = false;
 
        $comment_parent = absint($_POST['comment_ID']);
        $comment_auto_approved = false;
@@ -714,14 +713,13 @@ case 'edit-comment' :
 
        set_current_screen( 'edit-comments' );
 
 
        set_current_screen( 'edit-comments' );
 
-       $comment_post_ID = (int) $_POST['comment_post_ID'];
-       if ( ! current_user_can( 'edit_post', $comment_post_ID ) )
+       $comment_id = (int) $_POST['comment_ID'];
+       if ( ! current_user_can( 'edit_comment', $comment_id ) )
                die('-1');
 
        if ( '' == $_POST['content'] )
                die('-1');
 
        if ( '' == $_POST['content'] )
-               die( __('Error: please type a comment.') );
+               die( __('ERROR: please type a comment.') );
 
 
-       $comment_id = (int) $_POST['comment_ID'];
        $_POST['comment_status'] = $_POST['status'];
        edit_comment();
 
        $_POST['comment_status'] = $_POST['status'];
        edit_comment();
 
@@ -848,7 +846,7 @@ case 'add-meta' :
                        die(__('Please provide a custom field value.'));
                }
 
                        die(__('Please provide a custom field value.'));
                }
 
-               $meta = get_post_meta_by_id( $mid );
+               $meta = get_metadata_by_mid( 'post', $mid );
                $pid = (int) $meta->post_id;
                $meta = get_object_vars( $meta );
                $x = new WP_Ajax_Response( array(
                $pid = (int) $meta->post_id;
                $meta = get_object_vars( $meta );
                $x = new WP_Ajax_Response( array(
@@ -859,26 +857,24 @@ case 'add-meta' :
                        'supplemental' => array('postid' => $pid)
                ) );
        } else { // Update?
                        'supplemental' => array('postid' => $pid)
                ) );
        } else { // Update?
-               $mid = (int) array_pop( array_keys($_POST['meta']) );
-               $key = $_POST['meta'][$mid]['key'];
-               $value = $_POST['meta'][$mid]['value'];
+               $mid = (int) key( $_POST['meta'] );
+               $key = stripslashes( $_POST['meta'][$mid]['key'] );
+               $value = stripslashes( $_POST['meta'][$mid]['value'] );
                if ( '' == trim($key) )
                        die(__('Please provide a custom field name.'));
                if ( '' == trim($value) )
                        die(__('Please provide a custom field value.'));
                if ( '' == trim($key) )
                        die(__('Please provide a custom field name.'));
                if ( '' == trim($value) )
                        die(__('Please provide a custom field value.'));
-               if ( !$meta = get_post_meta_by_id( $mid ) )
+               if ( ! $meta = get_metadata_by_mid( 'post', $mid ) )
                        die('0'); // if meta doesn't exist
                        die('0'); // if meta doesn't exist
-               if ( !current_user_can( 'edit_post', $meta->post_id ) )
-                       die('-1');
-               if ( is_protected_meta( $meta->meta_key ) )
+               if ( is_protected_meta( $meta->meta_key, 'post' ) || is_protected_meta( $key, 'post' ) ||
+                       ! current_user_can( 'edit_post_meta', $meta->post_id, $meta->meta_key ) ||
+                       ! current_user_can( 'edit_post_meta', $meta->post_id, $key ) )
                        die('-1');
                        die('-1');
-               if ( $meta->meta_value != stripslashes($value) || $meta->meta_key != stripslashes($key) ) {
-                       if ( !$u = update_meta( $mid, $key, $value ) )
+               if ( $meta->meta_value != $value || $meta->meta_key != $key ) {
+                       if ( !$u = update_metadata_by_mid( 'post', $mid, $value, $key ) )
                                die('0'); // We know meta exists; we also know it's unchanged (or DB error, in which case there are bigger problems).
                }
 
                                die('0'); // We know meta exists; we also know it's unchanged (or DB error, in which case there are bigger problems).
                }
 
-               $key = stripslashes($key);
-               $value = stripslashes($value);
                $x = new WP_Ajax_Response( array(
                        'what' => 'meta',
                        'id' => $mid, 'old_id' => $mid,
                $x = new WP_Ajax_Response( array(
                        'what' => 'meta',
                        'id' => $mid, 'old_id' => $mid,
@@ -983,20 +979,23 @@ case 'autosave' : // The name of this action is hardcoded in edit_post()
                }
                $data = $message;
        } else {
                }
                $data = $message;
        } else {
-               if ( isset( $_POST['auto_draft'] ) && '1' == $_POST['auto_draft'] )
+               if ( ! empty( $_POST['auto_draft'] ) )
                        $id = 0; // This tells us it didn't actually save
                else
                        $id = $post->ID;
        }
 
                        $id = 0; // This tells us it didn't actually save
                else
                        $id = $post->ID;
        }
 
-       if ( $do_lock && ( isset( $_POST['auto_draft'] ) && ( $_POST['auto_draft'] != '1' ) ) && $id && is_numeric($id) )
-               wp_set_post_lock( $id );
+       if ( $do_lock && empty( $_POST['auto_draft'] ) && $id && is_numeric( $id ) ) {
+               $lock_result = wp_set_post_lock( $id );
+               $supplemental['active-post-lock'] = implode( ':', $lock_result );
+       }
 
        if ( $nonce_age == 2 ) {
                $supplemental['replace-autosavenonce'] = wp_create_nonce('autosave');
                $supplemental['replace-getpermalinknonce'] = wp_create_nonce('getpermalink');
                $supplemental['replace-samplepermalinknonce'] = wp_create_nonce('samplepermalink');
                $supplemental['replace-closedpostboxesnonce'] = wp_create_nonce('closedpostboxes');
 
        if ( $nonce_age == 2 ) {
                $supplemental['replace-autosavenonce'] = wp_create_nonce('autosave');
                $supplemental['replace-getpermalinknonce'] = wp_create_nonce('getpermalink');
                $supplemental['replace-samplepermalinknonce'] = wp_create_nonce('samplepermalink');
                $supplemental['replace-closedpostboxesnonce'] = wp_create_nonce('closedpostboxes');
+               $supplemental['replace-_ajax_linking_nonce'] = wp_create_nonce( 'internal-linking' );
                if ( $id ) {
                        if ( $_POST['post_type'] == 'post' )
                                $supplemental['replace-_wpnonce'] = wp_create_nonce('update-post_' . $id);
                if ( $id ) {
                        if ( $_POST['post_type'] == 'post' )
                                $supplemental['replace-_wpnonce'] = wp_create_nonce('update-post_' . $id);
@@ -1026,8 +1025,8 @@ case 'closed-postboxes' :
 
        $page = isset( $_POST['page'] ) ? $_POST['page'] : '';
 
 
        $page = isset( $_POST['page'] ) ? $_POST['page'] : '';
 
-       if ( !preg_match( '/^[a-z_-]+$/', $page ) )
-               die('-1');
+       if ( $page != sanitize_key( $page ) )
+               die('0');
 
        if ( ! $user = wp_get_current_user() )
                die('-1');
 
        if ( ! $user = wp_get_current_user() )
                die('-1');
@@ -1048,8 +1047,8 @@ case 'hidden-columns' :
        $hidden = explode( ',', $_POST['hidden'] );
        $page = isset( $_POST['page'] ) ? $_POST['page'] : '';
 
        $hidden = explode( ',', $_POST['hidden'] );
        $page = isset( $_POST['page'] ) ? $_POST['page'] : '';
 
-       if ( !preg_match( '/^[a-z_-]+$/', $page ) )
-               die('-1');
+       if ( $page != sanitize_key( $page ) )
+               die('0');
 
        if ( ! $user = wp_get_current_user() )
                die('-1');
 
        if ( ! $user = wp_get_current_user() )
                die('-1');
@@ -1057,6 +1056,16 @@ case 'hidden-columns' :
        if ( is_array($hidden) )
                update_user_option($user->ID, "manage{$page}columnshidden", $hidden, true);
 
        if ( is_array($hidden) )
                update_user_option($user->ID, "manage{$page}columnshidden", $hidden, true);
 
+       die('1');
+       break;
+case 'update-welcome-panel' :
+       check_ajax_referer( 'welcome-panel-nonce', 'welcomepanelnonce' );
+
+       if ( ! current_user_can( 'edit_theme_options' ) )
+               die('-1');
+
+       update_user_meta( get_current_user_id(), 'show_welcome_panel', empty( $_POST['visible'] ) ? 0 : 1 );
+
        die('1');
        break;
 case 'menu-get-metabox' :
        die('1');
        break;
 case 'menu-get-metabox' :
@@ -1109,8 +1118,6 @@ case 'menu-quick-search':
        exit;
        break;
 case 'wp-link-ajax':
        exit;
        break;
 case 'wp-link-ajax':
-       require_once ABSPATH . 'wp-admin/includes/internal-linking.php';
-
        check_ajax_referer( 'internal-linking', '_ajax_linking_nonce' );
 
        $args = array();
        check_ajax_referer( 'internal-linking', '_ajax_linking_nonce' );
 
        $args = array();
@@ -1119,7 +1126,8 @@ case 'wp-link-ajax':
                $args['s'] = stripslashes( $_POST['search'] );
        $args['pagenum'] = ! empty( $_POST['page'] ) ? absint( $_POST['page'] ) : 1;
 
                $args['s'] = stripslashes( $_POST['search'] );
        $args['pagenum'] = ! empty( $_POST['page'] ) ? absint( $_POST['page'] ) : 1;
 
-       $results = wp_link_query( $args );
+       require(ABSPATH . WPINC . '/class-wp-editor.php');
+       $results = _WP_Editors::wp_link_query( $args );
 
        if ( ! isset( $results ) )
                die( '0' );
 
        if ( ! isset( $results ) )
                die( '0' );
@@ -1141,11 +1149,15 @@ case 'menu-locations-save':
 case 'meta-box-order':
        check_ajax_referer( 'meta-box-order' );
        $order = isset( $_POST['order'] ) ? (array) $_POST['order'] : false;
 case 'meta-box-order':
        check_ajax_referer( 'meta-box-order' );
        $order = isset( $_POST['order'] ) ? (array) $_POST['order'] : false;
-       $page_columns = isset( $_POST['page_columns'] ) ? (int) $_POST['page_columns'] : 0;
+       $page_columns = isset( $_POST['page_columns'] ) ? $_POST['page_columns'] : 'auto';
+
+       if ( $page_columns != 'auto' )
+               $page_columns = (int) $page_columns;
+
        $page = isset( $_POST['page'] ) ? $_POST['page'] : '';
 
        $page = isset( $_POST['page'] ) ? $_POST['page'] : '';
 
-       if ( !preg_match( '/^[a-z_-]+$/', $page ) )
-               die('-1');
+       if ( $page != sanitize_key( $page ) )
+               die('0');
 
        if ( ! $user = wp_get_current_user() )
                die('-1');
 
        if ( ! $user = wp_get_current_user() )
                die('-1');
@@ -1471,8 +1483,10 @@ case 'set-post-thumbnail':
        check_ajax_referer( "set_post_thumbnail-$post_ID" );
 
        if ( $thumbnail_id == '-1' ) {
        check_ajax_referer( "set_post_thumbnail-$post_ID" );
 
        if ( $thumbnail_id == '-1' ) {
-               delete_post_meta( $post_ID, '_thumbnail_id' );
-               die( _wp_post_thumbnail_html() );
+               if ( delete_post_thumbnail( $post_ID ) )
+                       die( _wp_post_thumbnail_html() );
+               else
+                       die( '0' );
        }
 
        if ( set_post_thumbnail( $post_ID, $thumbnail_id ) )
        }
 
        if ( set_post_thumbnail( $post_ID, $thumbnail_id ) )
@@ -1486,32 +1500,17 @@ case 'time_format' :
        die( date_i18n( sanitize_option( 'time_format', $_POST['date'] ) ) );
        break;
 case 'wp-fullscreen-save-post' :
        die( date_i18n( sanitize_option( 'time_format', $_POST['date'] ) ) );
        break;
 case 'wp-fullscreen-save-post' :
-       if ( isset($_POST['post_ID']) )
-               $post_id = (int) $_POST['post_ID'];
-       else
-               $post_id = 0;
+       $post_id = isset( $_POST['post_ID'] ) ? (int) $_POST['post_ID'] : 0;
 
 
-       $post = null;
-       $post_type_object = null;
-       $post_type = null;
-       if ( $post_id ) {
-               $post = get_post($post_id);
-               if ( $post ) {
-                       $post_type_object = get_post_type_object($post->post_type);
-                       if ( $post_type_object ) {
-                               $post_type = $post->post_type;
-                               $current_screen->post_type = $post->post_type;
-                               $current_screen->id = $current_screen->post_type;
-                       }
-               }
-       } elseif ( isset($_POST['post_type']) ) {
-               $post_type_object = get_post_type_object($_POST['post_type']);
-               if ( $post_type_object ) {
-                       $post_type = $post_type_object->name;
-                       $current_screen->post_type = $post_type;
-                       $current_screen->id = $current_screen->post_type;
-               }
-       }
+       $post = $post_type = null;
+
+       if ( $post_id )
+               $post = get_post( $post_id );
+
+       if ( $post )
+               $post_type = $post->post_type;
+       elseif ( isset( $_POST['post_type'] ) && post_type_exists( $_POST['post_type'] ) )
+               $post_type = $_POST['post_type'];
 
        check_ajax_referer('update-' . $post_type . '_' . $post_id, '_wpnonce');
 
 
        check_ajax_referer('update-' . $post_type . '_' . $post_id, '_wpnonce');
 
@@ -1547,6 +1546,43 @@ case 'wp-fullscreen-save-post' :
        echo json_encode( array( 'message' => $message, 'last_edited' => $last_edited ) );
        die();
        break;
        echo json_encode( array( 'message' => $message, 'last_edited' => $last_edited ) );
        die();
        break;
+case 'wp-remove-post-lock' :
+       if ( empty( $_POST['post_ID'] ) || empty( $_POST['active_post_lock'] ) )
+               die( '0' );
+       $post_id = (int) $_POST['post_ID'];
+       if ( ! $post = get_post( $post_id ) )
+               die( '0' );
+
+       check_ajax_referer( 'update-' . $post->post_type . '_' . $post_id );
+
+       if ( ! current_user_can( 'edit_post', $post_id ) )
+               die( '-1' );
+
+       $active_lock = array_map( 'absint', explode( ':', $_POST['active_post_lock'] ) );
+       if ( $active_lock[1] != get_current_user_id() )
+               die( '0' );
+
+       $new_lock = ( time() - apply_filters( 'wp_check_post_lock_window', AUTOSAVE_INTERVAL * 2 ) + 5 ) . ':' . $active_lock[1];
+       update_post_meta( $post_id, '_edit_lock', $new_lock, implode( ':', $active_lock ) );
+       die( '1' );
+case 'dismiss-wp-pointer' :
+       $pointer = $_POST['pointer'];
+       if ( $pointer != sanitize_key( $pointer ) )
+               die( '0' );
+
+//     check_ajax_referer( 'dismiss-pointer_' . $pointer );
+
+       $dismissed = array_filter( explode( ',', (string) get_user_meta( get_current_user_id(), 'dismissed_wp_pointers', true ) ) );
+
+       if ( in_array( $pointer, $dismissed ) )
+               die( '0' );
+
+       $dismissed[] = $pointer;
+       $dismissed = implode( ',', $dismissed );
+
+       update_user_meta( get_current_user_id(), 'dismissed_wp_pointers', $dismissed );
+       die( '1' );
+       break;
 default :
        do_action( 'wp_ajax_' . $_POST['action'] );
        die('0');
 default :
        do_action( 'wp_ajax_' . $_POST['action'] );
        die('0');
index 04d73159096b4a0fd28a36d029b91d86477ccd82..02f0db9a4b98e76640d9a7f68fd83671bd6c30d3 100644 (file)
@@ -21,10 +21,6 @@ if ( !defined('ABSPATH') )
 $upgrade = apply_filters( 'update_footer', '' );
 $footer_text = array(
        '<span id="footer-thankyou">' . __( 'Thank you for creating with <a href="http://wordpress.org/">WordPress</a>.' ) . '</span>',
 $upgrade = apply_filters( 'update_footer', '' );
 $footer_text = array(
        '<span id="footer-thankyou">' . __( 'Thank you for creating with <a href="http://wordpress.org/">WordPress</a>.' ) . '</span>',
-       __( '<a href="http://codex.wordpress.org/">Documentation</a>' ),
-       sprintf( __( '<a href="%s">Freedoms</a>' ), admin_url( 'freedoms.php' ) ),
-       __('<a href="http://wordpress.org/support/forum/4">Feedback</a>'),
-       sprintf(__('<a href="%s">Credits</a>'), admin_url('credits.php') ),
 );
 echo apply_filters( 'admin_footer_text', implode( ' &bull; ', $footer_text ) );
 unset( $footer_text );
 );
 echo apply_filters( 'admin_footer_text', implode( ' &bull; ', $footer_text ) );
 unset( $footer_text );
index 18b5ff3c3a3aae33dfd6e80b07b29a1ac042df41..a34a51b882e59990e079f96c8a5a7a879d17b114 100644 (file)
 if ( ! defined( 'WP_ADMIN' ) )
        require_once( './admin.php' );
 
 if ( ! defined( 'WP_ADMIN' ) )
        require_once( './admin.php' );
 
+// In case admin-header.php is included in a function.
+global $title, $hook_suffix, $current_screen, $wp_locale, $pagenow, $wp_version, $is_iphone,
+       $current_site, $update_title, $total_update_count, $parent_file;
+
+// Catch plugins that include admin-header.php before admin.php completes.
+if ( empty( $current_screen ) )
+       set_current_screen();
+
 get_admin_page_title();
 $title = esc_html( strip_tags( $title ) );
 
 get_admin_page_title();
 $title = esc_html( strip_tags( $title ) );
 
@@ -29,26 +37,18 @@ $admin_title = apply_filters( 'admin_title', $admin_title, $title );
 
 wp_user_settings();
 
 
 wp_user_settings();
 
+_wp_admin_html_begin();
 ?>
 ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" <?php do_action('admin_xml_ns'); ?> <?php language_attributes(); ?>>
-<head>
-<meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php echo get_option('blog_charset'); ?>" />
 <title><?php echo $admin_title; ?></title>
 <?php
 
 <title><?php echo $admin_title; ?></title>
 <?php
 
-wp_admin_css( 'global' );
-wp_admin_css();
-wp_admin_css( 'colors' );
-wp_admin_css( 'ie' );
-if ( is_multisite() )
-       wp_admin_css( 'ms' );
+wp_enqueue_style( 'colors' );
+wp_enqueue_style( 'ie' );
 wp_enqueue_script('utils');
 
 $admin_body_class = preg_replace('/[^a-z0-9_-]+/i', '-', $hook_suffix);
 ?>
 <script type="text/javascript">
 wp_enqueue_script('utils');
 
 $admin_body_class = preg_replace('/[^a-z0-9_-]+/i', '-', $hook_suffix);
 ?>
 <script type="text/javascript">
-//<![CDATA[
 addLoadEvent = function(func){if(typeof jQuery!="undefined")jQuery(document).ready(func);else if(typeof wpOnload!='function'){wpOnload=func;}else{var oldonload=wpOnload;wpOnload=function(){oldonload();func();}}};
 var userSettings = {
                'url': '<?php echo SITECOOKIEPATH; ?>',
 addLoadEvent = function(func){if(typeof jQuery!="undefined")jQuery(document).ready(func);else if(typeof wpOnload!='function'){wpOnload=func;}else{var oldonload=wpOnload;wpOnload=function(){oldonload();func();}}};
 var userSettings = {
                'url': '<?php echo SITECOOKIEPATH; ?>',
@@ -57,19 +57,14 @@ var userSettings = {
        },
        ajaxurl = '<?php echo admin_url('admin-ajax.php'); ?>',
        pagenow = '<?php echo $current_screen->id; ?>',
        },
        ajaxurl = '<?php echo admin_url('admin-ajax.php'); ?>',
        pagenow = '<?php echo $current_screen->id; ?>',
-       typenow = '<?php if ( isset($current_screen->post_type) ) echo $current_screen->post_type; ?>',
+       typenow = '<?php echo $current_screen->post_type; ?>',
        adminpage = '<?php echo $admin_body_class; ?>',
        thousandsSeparator = '<?php echo addslashes( $wp_locale->number_format['thousands_sep'] ); ?>',
        decimalPoint = '<?php echo addslashes( $wp_locale->number_format['decimal_point'] ); ?>',
        isRtl = <?php echo (int) is_rtl(); ?>;
        adminpage = '<?php echo $admin_body_class; ?>',
        thousandsSeparator = '<?php echo addslashes( $wp_locale->number_format['thousands_sep'] ); ?>',
        decimalPoint = '<?php echo addslashes( $wp_locale->number_format['decimal_point'] ); ?>',
        isRtl = <?php echo (int) is_rtl(); ?>;
-//]]>
 </script>
 <?php
 
 </script>
 <?php
 
-if ( in_array( $pagenow, array('post.php', 'post-new.php') ) ) {
-       wp_enqueue_script('quicktags');
-}
-
 do_action('admin_enqueue_scripts', $hook_suffix);
 do_action("admin_print_styles-$hook_suffix");
 do_action('admin_print_styles');
 do_action('admin_enqueue_scripts', $hook_suffix);
 do_action("admin_print_styles-$hook_suffix");
 do_action('admin_print_styles');
@@ -87,7 +82,7 @@ if ( is_admin_bar_showing() )
 if ( is_rtl() )
        $admin_body_class .= ' rtl';
 
 if ( is_rtl() )
        $admin_body_class .= ' rtl';
 
-$admin_body_class .= ' branch-' . str_replace( '.', '-', floatval( $wp_version ) );
+$admin_body_class .= ' branch-' . str_replace( array( '.', ',' ), '-', floatval( $wp_version ) );
 $admin_body_class .= ' version-' . str_replace( '.', '-', preg_replace( '/^([.0-9]+).*/', '$1', $wp_version ) );
 $admin_body_class .= ' admin-color-' . sanitize_html_class( get_user_option( 'admin_color' ), 'fresh' );
 
 $admin_body_class .= ' version-' . str_replace( '.', '-', preg_replace( '/^([.0-9]+).*/', '$1', $wp_version ) );
 $admin_body_class .= ' admin-color-' . sanitize_html_class( get_user_option( 'admin_color' ), 'fresh' );
 
@@ -96,115 +91,28 @@ if ( $is_iphone ) { ?>
 <?php } ?>
 </head>
 <body class="wp-admin no-js <?php echo apply_filters( 'admin_body_class', '' ) . " $admin_body_class"; ?>">
 <?php } ?>
 </head>
 <body class="wp-admin no-js <?php echo apply_filters( 'admin_body_class', '' ) . " $admin_body_class"; ?>">
-<script type="text/javascript">
-//<![CDATA[
-(function(){
-var c = document.body.className;
-c = c.replace(/no-js/, 'js');
-document.body.className = c;
-})();
-//]]>
-</script>
+<script type="text/javascript">document.body.className = document.body.className.replace('no-js','js');</script>
 
 <div id="wpwrap">
 <?php require(ABSPATH . 'wp-admin/menu-header.php'); ?>
 <div id="wpcontent">
 
 <div id="wpwrap">
 <?php require(ABSPATH . 'wp-admin/menu-header.php'); ?>
 <div id="wpcontent">
-<div id="wphead">
-<?php
-
-if ( is_network_admin() )
-       $blog_name = sprintf( __('%s Network Admin'), esc_html($current_site->site_name) );
-elseif ( is_user_admin() )
-       $blog_name = sprintf( __('%s Global Dashboard'), esc_html($current_site->site_name) );
-else
-       $blog_name = get_bloginfo('name', 'display');
-if ( '' == $blog_name ) {
-       $blog_name = __( 'Visit Site' );
-} else {
-       $blog_name_excerpt = wp_html_excerpt($blog_name, 40);
-       if ( $blog_name != $blog_name_excerpt )
-               $blog_name_excerpt = trim($blog_name_excerpt) . '&hellip;';
-       $blog_name = $blog_name_excerpt;
-       unset($blog_name_excerpt);
-}
-$title_class = '';
-if ( function_exists('mb_strlen') ) {
-       if ( mb_strlen($blog_name, 'UTF-8') > 30 )
-               $title_class = 'class="long-title"';
-} else {
-       if ( strlen($blog_name) > 30 )
-               $title_class = 'class="long-title"';
-}
-?>
-
-<img id="header-logo" src="<?php echo esc_url( includes_url( 'images/blank.gif' ) ); ?>" alt="" width="16" height="16" />
-<h1 id="site-heading" <?php echo $title_class ?>>
-       <a href="<?php echo trailingslashit( get_bloginfo( 'url' ) ); ?>" title="<?php esc_attr_e('Visit Site') ?>">
-               <span id="site-title"><?php echo $blog_name ?></span>
-       </a>
-</h1>
 
 <?php
 
 <?php
-
 do_action('in_admin_header');
 do_action('in_admin_header');
-
-$links = array();
-
-// Generate user profile and info links.
-$links[5] = sprintf( __('Howdy, %1$s'), $user_identity );
-
-$links[8] = '<a href="profile.php" title="' . esc_attr__('Edit your profile') . '">' . __('Your Profile') . '</a>';
-
-if ( is_multisite() && is_super_admin() ) {
-       if ( !is_network_admin() )
-               $links[10] = '<a href="' . network_admin_url() . '" title="' . ( ! empty( $update_title ) ? $update_title : esc_attr__('Network Admin') ) . '">' . __('Network Admin') . ( ! empty( $total_update_count ) ? ' (' . number_format_i18n( $total_update_count ) . ')' : '' ) . '</a>';
-       else
-               $links[10] = '<a href="' . get_dashboard_url( get_current_user_id() ) . '" title="' . esc_attr__('Site Admin') . '">' . __('Site Admin') . '</a>';
-}
-
-$links[15] = '<a href="' . wp_logout_url() . '" title="' . esc_attr__('Log Out') . '">' . __('Log Out') . '</a>';
-
-$links = apply_filters( 'admin_user_info_links', $links, $current_user );
-ksort( $links );
-
-// Trim whitespace and pipes from links, then convert to list items.
-$links = array_map( 'trim', $links, array_fill( 0, count( $links ), " |\n\t" ) );
-
-$howdy = array_shift( $links );
-
-$links_no_js = implode( ' | ', $links );
-$links_js = '<li>' . implode( '</li><li>', $links ) . '</li>';
-
 ?>
 
 ?>
 
-<div id="wphead-info">
-<div id="user_info">
-       <p class="hide-if-js"><?php echo "$howdy | $links_no_js"; ?></p>
-
-       <div class="hide-if-no-js">
-               <p><?php echo $howdy; ?></p>
-               <div id="user_info_arrow"></div>
-               <div id="user_info_links_wrap"><div id="user_info_links">
-                       <ul><?php echo $links_js; ?></ul>
-               </div></div>
-       </div>
-</div>
-</div>
-
-</div>
-
 <div id="wpbody">
 <?php
 unset($title_class, $blog_name, $total_update_count, $update_title);
 
 <div id="wpbody">
 <?php
 unset($title_class, $blog_name, $total_update_count, $update_title);
 
-$current_screen->parent_file = $parent_file;
-$current_screen->parent_base = preg_replace('/\?.*$/', '', $parent_file);
-$current_screen->parent_base = str_replace('.php', '', $current_screen->parent_base);
+$current_screen->set_parentage( $parent_file );
+
 ?>
 
 <div id="wpbody-content">
 <?php
 ?>
 
 <div id="wpbody-content">
 <?php
-screen_meta($current_screen);
+
+$current_screen->render_screen_meta();
 
 if ( is_network_admin() )
        do_action('network_admin_notices');
 
 if ( is_network_admin() )
        do_action('network_admin_notices');
index ce1227d7d32604c3bb5627ba7779aaf4ff0ad9fd..46e45e34d837f89d2896c41fa0a056bd301ee48a 100644 (file)
@@ -39,7 +39,7 @@ if ( get_option('db_upgraded') ) {
         * @since 2.8
         */
        do_action('after_db_upgrade');
         * @since 2.8
         */
        do_action('after_db_upgrade');
-} elseif ( get_option('db_version') != $wp_db_version ) {
+} elseif ( get_option('db_version') != $wp_db_version && empty($_POST) ) {
        if ( !is_multisite() ) {
                wp_redirect(admin_url('upgrade.php?_wp_http_referer=' . urlencode(stripslashes($_SERVER['REQUEST_URI']))));
                exit;
        if ( !is_multisite() ) {
                wp_redirect(admin_url('upgrade.php?_wp_http_referer=' . urlencode(stripslashes($_SERVER['REQUEST_URI']))));
                exit;
@@ -88,13 +88,13 @@ if ( isset($_GET['page']) ) {
        $plugin_page = plugin_basename($plugin_page);
 }
 
        $plugin_page = plugin_basename($plugin_page);
 }
 
-if ( isset($_GET['post_type']) )
-       $typenow = sanitize_key($_GET['post_type']);
+if ( isset( $_REQUEST['post_type'] ) && post_type_exists( $_REQUEST['post_type'] ) )
+       $typenow = $_REQUEST['post_type'];
 else
        $typenow = '';
 
 else
        $typenow = '';
 
-if ( isset($_GET['taxonomy']) )
-       $taxnow = sanitize_key($_GET['taxonomy']);
+if ( isset( $_REQUEST['taxonomy'] ) && taxonomy_exists( $_REQUEST['taxonomy'] ) )
+       $taxnow = $_REQUEST['taxonomy'];
 else
        $taxnow = '';
 
 else
        $taxnow = '';
 
@@ -183,13 +183,9 @@ if ( isset($plugin_page) ) {
                exit;
        }
 
                exit;
        }
 
-       // Allow plugins to define importers as well
-       if ( !isset($wp_importers) || !isset($wp_importers[$importer]) || ! is_callable($wp_importers[$importer][2])) {
-               if (! file_exists(ABSPATH . "wp-admin/import/$importer.php")) {
-                       wp_redirect( admin_url( 'import.php?invalid=' . $importer ) );
-                       exit;
-               }
-               include(ABSPATH . "wp-admin/import/$importer.php");
+       if ( ! isset($wp_importers[$importer]) || ! is_callable($wp_importers[$importer][2]) ) {
+               wp_redirect( admin_url( 'import.php?invalid=' . $importer ) );
+               exit;
        }
 
        $parent_file = 'tools.php';
        }
 
        $parent_file = 'tools.php';
@@ -211,8 +207,7 @@ if ( isset($plugin_page) ) {
        include(ABSPATH . 'wp-admin/admin-footer.php');
 
        // Make sure rules are flushed
        include(ABSPATH . 'wp-admin/admin-footer.php');
 
        // Make sure rules are flushed
-       global $wp_rewrite;
-       $wp_rewrite->flush_rules(false);
+       flush_rewrite_rules(false);
 
        exit();
 } else {
 
        exit();
 } else {
index 6fa651817ecfad622beec5ffad93462a703d6d79..1bd267fa52b81c5585d4a945e48c29eba61ea5d1 100644 (file)
@@ -23,7 +23,7 @@ if ( empty($_COOKIE[LOGGED_IN_COOKIE]) && !empty($_REQUEST['logged_in_cookie'])
 unset($current_user);
 require_once('./admin.php');
 
 unset($current_user);
 require_once('./admin.php');
 
-header('Content-Type: text/plain; charset=' . get_option('blog_charset'));
+header('Content-Type: text/html; charset=' . get_option('blog_charset'));
 
 if ( !current_user_can('upload_files') )
        wp_die(__('You do not have permission to upload files.'));
 
 if ( !current_user_can('upload_files') )
        wp_die(__('You do not have permission to upload files.'));
index a26ed5c56c833bbcfe7662b4a2133880239e6739..b2c69cb75298a2c3bf3dc2025dc479579e7240f0 100644 (file)
@@ -45,8 +45,15 @@ switch( $action ) {
 case 'editcomment' :
        $title = __('Edit Comment');
 
 case 'editcomment' :
        $title = __('Edit Comment');
 
-       add_contextual_help( $current_screen, '<p>' . __( 'You can edit the information left in a comment if needed. This is often useful when you notice that a commenter has made a typographical error.' ) . '</p>' .
-       '<p>' . __( 'You can also moderate the comment from this screen using the Status box, where you can also change the timestamp of the comment.' ) . '</p>' .
+       get_current_screen()->add_help_tab( array(
+               'id'      => 'overview',
+               'title'   => __('Overview'),
+               'content' =>
+                       '<p>' . __( 'You can edit the information left in a comment if needed. This is often useful when you notice that a commenter has made a typographical error.' ) . '</p>' .
+                       '<p>' . __( 'You can also moderate the comment from this screen using the Status box, where you can also change the timestamp of the comment.' ) . '</p>'
+       ) );
+
+       get_current_screen()->set_help_sidebar(
        '<p><strong>' . __( 'For more information:' ) . '</strong></p>' .
        '<p>' . __( '<a href="http://codex.wordpress.org/Administration_Screens#Comments" target="_blank">Documentation on Comments</a>' ) . '</p>' .
        '<p>' . __( '<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>' ) . '</p>'
        '<p><strong>' . __( 'For more information:' ) . '</strong></p>' .
        '<p>' . __( '<a href="http://codex.wordpress.org/Administration_Screens#Comments" target="_blank">Documentation on Comments</a>' ) . '</p>' .
        '<p>' . __( '<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>' ) . '</p>'
@@ -66,6 +73,9 @@ case 'editcomment' :
        if ( 'trash' == $comment->comment_approved )
                comment_footer_die( __('This comment is in the Trash. Please move it out of the Trash if you want to edit it.') );
 
        if ( 'trash' == $comment->comment_approved )
                comment_footer_die( __('This comment is in the Trash. Please move it out of the Trash if you want to edit it.') );
 
+       if ( 'spam' == $comment->comment_approved )
+               comment_footer_die( __('This comment is marked as Spam. Please mark it as Not Spam if you want to edit it.') );
+
        $comment = get_comment_to_edit( $comment_id );
 
        include('./edit-form-comment.php');
        $comment = get_comment_to_edit( $comment_id );
 
        include('./edit-form-comment.php');
index 773053a9c22fccc67fedefd69c44d3b1ee1cde35..cdc84c7c6989a621a407c4c21012bd0c00441593 100644 (file)
 require_once( './admin.php' );
 
 $title = __( 'Credits' );
 require_once( './admin.php' );
 
 $title = __( 'Credits' );
-$parent_file = 'index.php';
-
-add_contextual_help($current_screen,
-       '<p>' . __('Each name or handle is a link to that person&#8217;s profile in the WordPress.org community directory.') . '</p>' .
-       '<p>' . __('You can register your own profile at <a href="http://wordpress.org/support/register.php" target="_blank">this link</a> to start contributing.') . '</p>' .
-       '<p>' . __('WordPress always needs more people to report bugs, patch bugs, test betas, work on UI design, translate strings, write documentation, and add questions/answers/suggestions to the Support Forums. Join in!') . '</p>' .
-       '<p><strong>' . __('For more information:') . '</strong></p>' .
-       '<p>' . __('<a href="http://codex.wordpress.org/Contributing_to_WordPress" target="_blank">Documentation on Contributing to WordPress</a>') . '</p>' .
-       '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
-);
-
-add_action( 'admin_head', '_wp_credits_add_css' );
-function _wp_credits_add_css() { ?>
-<style type="text/css">
-div.wrap { max-width: 750px }
-h3.wp-people-group, p.wp-credits-list { clear: both; }
-ul.compact { margin-bottom: 0 }
-
-<?php if ( is_rtl() ) { ?>
-ul.wp-people-group { margin-bottom: 30px; float: right; clear: both; }
-li.wp-person { float: right; height: 70px; width: 220px; margin-left: 10px; }
-li.wp-person img.gravatar { float: right; margin-left: 10px; margin-bottom: 10px; }
-<?php } else { ?>
-li.wp-person { float: left; margin-right: 10px; }
-li.wp-person img.gravatar { float: left; margin-right: 10px; margin-bottom: 10px; }
-<?php } ?>
-li.wp-person img.gravatar { width: 60px; height: 60px; }
-ul.compact li.wp-person img.gravatar { width: 30px; height: 30px; }
-li.wp-person { height: 70px; width: 220px; }
-ul.compact li.wp-person { height: 40px; width: auto; white-space: nowrap }
-li.wp-person a.web { font-size: 16px; text-decoration: none; }
-</style>
-<?php }
 
 function wp_credits() {
        global $wp_version;
 
 function wp_credits() {
        global $wp_version;
@@ -75,18 +42,34 @@ function _wp_credits_build_object_link( &$data ) {
        $data = '<a href="' . esc_url( $data[1] ) . '">' . $data[0] . '</a>';
 }
 
        $data = '<a href="' . esc_url( $data[1] ) . '">' . $data[0] . '</a>';
 }
 
+list( $display_version ) = explode( '-', $wp_version );
+
 include( './admin-header.php' );
 ?>
 include( './admin-header.php' );
 ?>
-<div class="wrap">
-<?php screen_icon(); ?>
-<h2><?php _e( 'WordPress Credits' ); ?></h2>
+<div class="wrap about-wrap">
+
+<h1><?php printf( __( 'Welcome to WordPress %s' ), $display_version ); ?></h1>
+
+<div class="about-text"><?php printf( __( 'Thank you for updating to the latest version! Using WordPress %s will improve your looks, personality, and web publishing experience. Okay, just the last one, but still. :)' ), $display_version ); ?></div>
+
+<div class="wp-badge"><?php printf( __( 'Version %s' ), $display_version ); ?></div>
+
+<h2 class="nav-tab-wrapper">
+       <a href="about.php" class="nav-tab">
+               <?php _e( 'What&#8217;s New' ); ?>
+       </a><a href="credits.php" class="nav-tab nav-tab-active">
+               <?php _e( 'Credits' ); ?>
+       </a><a href="freedoms.php" class="nav-tab">
+               <?php _e( 'Freedoms' ); ?>
+       </a>
+</h2>
 
 <?php
 
 $credits = wp_credits();
 
 if ( ! $credits ) {
 
 <?php
 
 $credits = wp_credits();
 
 if ( ! $credits ) {
-       echo '<p>' . sprintf( __( 'WordPress is created by a <a href="%1$s">worldwide team</a> of passionate individuals. <a href="%2$s">Get involved in WordPress</a>.' ),
+       echo '<p class="about-description">' . sprintf( __( 'WordPress is created by a <a href="%1$s">worldwide team</a> of passionate individuals. <a href="%2$s">Get involved in WordPress</a>.' ),
                'http://wordpress.org/about/',
                /* translators: Url to the codex documentation on contributing to WordPress used on the credits page */
                __( 'http://codex.wordpress.org/Contributing_to_WordPress' ) ) . '</p>';
                'http://wordpress.org/about/',
                /* translators: Url to the codex documentation on contributing to WordPress used on the credits page */
                __( 'http://codex.wordpress.org/Contributing_to_WordPress' ) ) . '</p>';
@@ -94,7 +77,7 @@ if ( ! $credits ) {
        exit;
 }
 
        exit;
 }
 
-echo '<p>' . __( 'WordPress is created by a worldwide team of passionate individuals. We couldn&#8217;t possibly list them all, but here some of the most influential people currently involved with the project:' ) . "</p>\n";
+echo '<p class="about-description">' . __( 'WordPress is created by a worldwide team of passionate individuals.' ) . "</p>\n";
 
 $gravatar = is_ssl() ? 'https://secure.gravatar.com/avatar/' : 'http://0.gravatar.com/avatar/';
 
 
 $gravatar = is_ssl() ? 'https://secure.gravatar.com/avatar/' : 'http://0.gravatar.com/avatar/';
 
@@ -109,7 +92,7 @@ foreach ( $credits['groups'] as $group_slug => $group_data ) {
                        $title = translate( $group_data['name'] );
                }
 
                        $title = translate( $group_data['name'] );
                }
 
-               echo '<h3 class="wp-people-group">' . $title . "</h3>\n";
+               echo '<h4 class="wp-people-group">' . $title . "</h4>\n";
        }
 
        if ( ! empty( $group_data['shuffle'] ) )
        }
 
        if ( ! empty( $group_data['shuffle'] ) )
@@ -135,7 +118,7 @@ foreach ( $credits['groups'] as $group_slug => $group_data ) {
                                echo '<img src="' . $gravatar . $person_data[1] . '?s=' . $size . '" class="gravatar" alt="' . esc_attr( $person_data[0] ) . '" /></a>' . "\n\t";
                                echo '<a class="web" href="' . sprintf( $credits['data']['profiles'], $person_data[2] ) . '">' . $person_data[0] . "</a>\n\t";
                                if ( ! $compact )
                                echo '<img src="' . $gravatar . $person_data[1] . '?s=' . $size . '" class="gravatar" alt="' . esc_attr( $person_data[0] ) . '" /></a>' . "\n\t";
                                echo '<a class="web" href="' . sprintf( $credits['data']['profiles'], $person_data[2] ) . '">' . $person_data[0] . "</a>\n\t";
                                if ( ! $compact )
-                                       echo '<br /><span class="title">' . translate( $person_data[3] ) . "</span>\n";
+                                       echo '<span class="title">' . translate( $person_data[3] ) . "</span>\n";
                                echo "</li>\n";
                        }
                        echo "</ul>\n";
                                echo "</li>\n";
                        }
                        echo "</ul>\n";
@@ -158,11 +141,14 @@ return;
 // These are strings returned by the API that we want to be translatable
 __( 'Project Leaders' );
 __( 'Extended Core Team' );
 // These are strings returned by the API that we want to be translatable
 __( 'Project Leaders' );
 __( 'Extended Core Team' );
+__( 'Core Developers' );
 __( 'Recent Rockstars' );
 __( 'Core Contributors to WordPress %s' );
 __( 'Recent Rockstars' );
 __( 'Core Contributors to WordPress %s' );
+__( 'Contributing Developers' );
 __( 'Cofounder, Project Lead' );
 __( 'Lead Developer' );
 __( 'User Experience Lead' );
 __( 'Cofounder, Project Lead' );
 __( 'Lead Developer' );
 __( 'User Experience Lead' );
+__( 'Core Developer' );
 __( 'Core Committer' );
 __( 'Guest Committer' );
 __( 'Developer' );
 __( 'Core Committer' );
 __( 'Guest Committer' );
 __( 'Developer' );
@@ -171,6 +157,5 @@ __( 'XML-RPC' );
 __( 'Internationalization' );
 __( 'External Libraries' );
 __( 'Icon Design' );
 __( 'Internationalization' );
 __( 'External Libraries' );
 __( 'Icon Design' );
-__( 'Blue Color Scheme' );
 
 ?>
 
 ?>
diff --git a/wp-admin/css/colors-classic-rtl.css b/wp-admin/css/colors-classic-rtl.css
deleted file mode 100644 (file)
index 268fa9e..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.bar{border-right-color:none;border-left-color:#99d;}.post-com-count{background-image:url(../images/bubble_bg-rtl.gif);}#user_info_arrow{background:transparent url(../images/arrows-vs.png) no-repeat 0 5px;}#user_info:hover #user_info_arrow,#user_info.active #user_info_arrow{background:transparent url(../images/arrows-dark-vs.png) no-repeat 0 5px;}#adminmenushadow,#adminmenuback{background-image:url(../images/menu-shadow-rtl.png);background-position:top left;}#adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,#adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle{background:transparent url(../images/arrows-dark-vs.png) no-repeat 8px 6px;}#adminmenu .wp-has-submenu:hover .wp-menu-toggle,#adminmenu .wp-menu-open .wp-menu-toggle{background:transparent url(../images/arrows-vs.png) no-repeat 8px 6px;}#adminmenu .wp-submenu .wp-submenu-head{border-right-color:none;border-left-color:#d1e5ee;}.folded #adminmenu .wp-submenu-wrap{-moz-box-shadow:-2px 2px 5px rgba(0,0,0,0.4);-webkit-box-shadow:-2px 2px 5px rgba(0,0,0,0.4);box-shadow:-2px 2px 5px rgba(0,0,0,0.4);}#collapse-button div{background-position:0 -108px;}.folded #collapse-button div{background-position:0 -72px;}.meta-box-sortables .postbox:hover .handlediv{background:transparent url(../images/arrows-vs.png) no-repeat 6px 7px;}.tablenav .tablenav-pages a{border-color:#d1e5ee;background:#eee url('../images/menu-bits-rtl-vs.gif?ver=20100610') repeat-x scroll right -379px;}#post-body .misc-pub-section{border-right-color:none;border-left-color:#d1e5ee;}#favorite-toggle{background:transparent url(../images/arrows-vs.png) no-repeat 4px 2px;}#screen-meta a.show-settings,.toggle-arrow{background:transparent url(../images/arrows-vs.png) no-repeat left 3px;}#screen-meta .screen-meta-active a.show-settings{background:transparent url(../images/arrows-vs.png) no-repeat left -33px;}.sidebar-name-arrow{background:transparent url(../images/arrows-vs.png) no-repeat 5px 9px;}.sidebar-name:hover .sidebar-name-arrow{background:transparent url(../images/arrows-dark-vs.png) no-repeat 5px 9px;}
\ No newline at end of file
diff --git a/wp-admin/css/colors-classic-rtl.dev.css b/wp-admin/css/colors-classic-rtl.dev.css
deleted file mode 100644 (file)
index 8a56444..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-.bar {
-       border-right-color: none;
-       border-left-color: #99d;
-}
-
-.post-com-count {
-       background-image: url(../images/bubble_bg-rtl.gif);
-}
-
-#user_info_arrow {
-       background: transparent url(../images/arrows-vs.png) no-repeat 0 5px;
-}
-
-#user_info:hover #user_info_arrow,
-#user_info.active #user_info_arrow {
-       background: transparent url(../images/arrows-dark-vs.png) no-repeat 0 5px;
-}
-
-/* editors */
-
-/* menu */
-
-#adminmenushadow,
-#adminmenuback {
-       background-image: url(../images/menu-shadow-rtl.png);
-       background-position: top left;
-}
-
-#adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,
-#adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle {
-       background: transparent url(../images/arrows-dark-vs.png) no-repeat 8px 6px;
-}
-
-#adminmenu .wp-has-submenu:hover .wp-menu-toggle,
-#adminmenu .wp-menu-open .wp-menu-toggle {
-       background: transparent url(../images/arrows-vs.png) no-repeat 8px 6px;
-}
-
-
-#adminmenu .wp-submenu .wp-submenu-head {
-       border-right-color: none;
-       border-left-color: #d1e5ee;
-}
-
-.folded #adminmenu .wp-submenu-wrap {
-       -moz-box-shadow: -2px 2px 5px rgba( 0, 0, 0, 0.4 );
-       -webkit-box-shadow: -2px 2px 5px rgba( 0, 0, 0, 0.4 );
-       box-shadow: -2px 2px 5px rgba( 0, 0, 0, 0.4 );
-}
-
-/* collapse menu button */
-#collapse-button div {
-       background-position: 0 -108px;
-}
-.folded #collapse-button div {
-       background-position: 0 -72px;
-}
-
-/* edit image */
-
-.meta-box-sortables .postbox:hover .handlediv {
-       background: transparent url(../images/arrows-vs.png) no-repeat 6px 7px;
-}
-
-.tablenav .tablenav-pages a {
-       border-color: #d1e5ee;
-       background: #eee url('../images/menu-bits-rtl-vs.gif?ver=20100610') repeat-x scroll right -379px;
-}
-
-#post-body .misc-pub-section {
-       border-right-color: none;
-       border-left-color: #d1e5ee;
-}
-
-#favorite-toggle {
-       background: transparent url(../images/arrows-vs.png) no-repeat 4px 2px;
-}
-
-#screen-meta a.show-settings,
-.toggle-arrow {
-       background: transparent url(../images/arrows-vs.png) no-repeat left 3px;
-}
-
-#screen-meta .screen-meta-active a.show-settings {
-       background: transparent url(../images/arrows-vs.png) no-repeat left -33px;
-}
-
-.sidebar-name-arrow {
-       background: transparent url(../images/arrows-vs.png) no-repeat 5px 9px;
-}
-.sidebar-name:hover .sidebar-name-arrow {
-       background: transparent url(../images/arrows-dark-vs.png) no-repeat 5px 9px;
-}
-
-
-/* custom header & background pages */
-
-/* custom header & background pages */
\ No newline at end of file
index d5d4ebe1c28c91750002ec7adc3c6dcfdff4bce1..fae10241c9c69fa624f495f64051c9c3a0888f15 100644 (file)
@@ -1 +1 @@
-html,.wp-dialog{background-color:#fff;}* html input,* html .widget{border-color:#dfdfdf;}textarea,input[type="text"],input[type="password"],input[type="file"],input[type="button"],input[type="submit"],input[type="reset"],select{border-color:#dfdfdf;background-color:#fff;}kbd,code{background:#eaeaea;}input[readonly]{background-color:#eee;}.find-box-search{border-color:#dfdfdf;background-color:#f1f1f1;}.find-box{background-color:#f1f1f1;}.find-box-inside{background-color:#fff;}a.page-numbers:hover{border-color:#999;}body,#wpbody,.form-table .pre{color:#333;}body>#upload-menu{border-bottom-color:#fff;}#postcustomstuff table,#your-profile fieldset,#rightnow,div.dashboard-widget,#dashboard-widgets p.dashboard-widget-links,#replyrow #ed_reply_toolbar input{border-color:#D1E5EE;}#poststuff .inside label.spam,#poststuff .inside label.deleted{color:red;}#poststuff .inside label.waiting{color:orange;}#poststuff .inside label.approved{color:green;}#postcustomstuff table{border-color:#dfdfdf;background-color:#F9F9F9;}#postcustomstuff thead th{background-color:#F1F1F1;}#postcustomstuff table input,#postcustomstuff table textarea{border-color:#dfdfdf;background-color:#fff;}.widefat{border-color:#D1E5EE;background-color:#fff;}div.dashboard-widget-error{background-color:#c43;}div.dashboard-widget-notice{background-color:#cfe1ef;}div.dashboard-widget-submit{border-top-color:#ccc;}div.tabs-panel,.wp-tab-panel,ul.category-tabs li.tabs,ul.add-menu-item-tabs li.tabs,.wp-tab-active{border-color:#dfdfdf;background-color:#fff;}ul.category-tabs li.tabs,ul.add-menu-item-tabs li.tabs,.wp-tab-active{background-color:#fff;}input.disabled,textarea.disabled{background-color:#ccc;}#plugin-information .action-button a,#plugin-information .action-button a:hover,#plugin-information .action-button a:visited{color:#fff;}.widget .widget-top,.postbox h3,.stuffbox h3,.widefat thead tr th,.widefat tfoot tr th,h3.dashboard-widget-title,h3.dashboard-widget-title span,h3.dashboard-widget-title small,.find-box-head,.sidebar-name,#nav-menu-header,#nav-menu-footer,.menu-item-handle,#fullscreen-topbar{background-color:#f5fafd;background-image:-ms-linear-gradient(top,#f7fcfe,#eff8ff);background-image:-moz-linear-gradient(top,#f7fcfe,#eff8ff);background-image:-o-linear-gradient(top,#f7fcfe,#eff8ff);background-image:-webkit-gradient(linear,left top,left bottom,from(#f7fcfe),to(#eff8ff));background-image:-webkit-linear-gradient(top,#f7fcfe,#eff8ff);background-image:linear-gradient(top,#f7fcfe,#eff8ff);}.widget .widget-top,.postbox h3,.stuffbox h3{border-bottom-color:#D1E5EE;text-shadow:#fff 0 1px 0;-moz-box-shadow:0 1px 0 #fff;-webkit-box-shadow:0 1px 0 #fff;box-shadow:0 1px 0 #fff;}.form-table th,.form-wrap label{color:#222;text-shadow:#fff 0 1px 0;}.description,.form-wrap p{color:#666;}strong .post-com-count span{background-color:#21759b;}.sorthelper{background-color:#ccf3fa;}.ac_match,.subsubsub a.current{color:#000;}.wrap h2{color:#174f69;}.wrap .add-new-h2{background:#f1f1f1;}.subtitle{color:#777;}.ac_over{background-color:#f0f0b8;}.ac_results{background-color:#fff;border-color:#808080;}.ac_results li{color:#101010;}.alternate,.alt{background-color:#f7fcfe;}.available-theme a.screenshot{background-color:#f1f1f1;border-color:#ddd;}.bar{background-color:#e8e8e8;border-right-color:#99d;}#media-upload,#media-upload .media-item .slidetoggle{background:#fff;}#media-upload .slidetoggle{border-top-color:#dfdfdf;}div.error,.login #login_error{background-color:#ffebe8;border-color:#c00;}div.error a{color:#c00;}.form-invalid{background-color:#ffebe8!important;}.form-invalid input,.form-invalid select{border-color:#c00!important;}.submit{border-color:#DFDFDF;}.highlight{background-color:#e4f2fd;color:#000;}.howto,.nonessential,#edit-slug-box,.form-input-tip,.subsubsub{color:#666;}.media-item{border-bottom-color:#dfdfdf;}#wpbody-content #media-items .describe{border-top-color:#dfdfdf;}.media-upload-form label.form-help,td.help{color:#9a9a9a;}.post-com-count{background-image:url(../images/bubble_bg.gif);color:#fff;}.post-com-count span{background-color:#bbb;color:#fff;}.post-com-count:hover span{background-color:#d54e21;}.quicktags,.search{background-color:#ccc;color:#000;}.side-info h5{border-bottom-color:#dadada;}.side-info ul{color:#666;}.button,.button-secondary,.submit input,input[type=button],input[type=submit]{border-color:#bbb;color:#464646;}.button:hover,.button-secondary:hover,.submit input:hover,input[type=button]:hover,input[type=submit]:hover{color:#000;border-color:#666;}.button,.submit input,.button-secondary{background:#f2f2f2 url(../images/white-grad.png) repeat-x scroll left top;text-shadow:rgba(255,255,255,1) 0 1px 0;}.button:active,.submit input:active,.button-secondary:active{background:#eee url(../images/white-grad-active.png) repeat-x scroll left top;}input.button-primary,button.button-primary,a.button-primary{border-color:#298cba;font-weight:bold;color:#fff;background:#21759B url(../images/button-grad.png) repeat-x scroll left top;text-shadow:rgba(0,0,0,0.3) 0 -1px 0;}input.button-primary:active,button.button-primary:active,a.button-primary:active{background:#21759b url(../images/button-grad-active.png) repeat-x scroll left top;color:#eaf2fa;}input.button-primary:hover,button.button-primary:hover,a.button-primary:hover,a.button-primary:focus,a.button-primary:active{border-color:#13455b;color:#eaf2fa;}.button-disabled,.button[disabled],.button:disabled,.button-secondary[disabled],.button-secondary:disabled,a.button.disabled{color:#aaa!important;border-color:#ddd!important;}.button-primary-disabled,.button-primary[disabled],.button-primary:disabled{color:#9FD0D5!important;background:#298CBA!important;}a:hover,a:active,a:focus{color:#d54e21;}#wphead #viewsite a:hover,#adminmenu a:hover,#adminmenu ul.wp-submenu a:hover,#the-comment-list .comment a:hover,#rightnow a:hover,#media-upload a.del-link:hover,div.dashboard-widget-submit input:hover,.subsubsub a:hover,.subsubsub a.current:hover,.ui-tabs-nav a:hover,.plugins .inactive a:hover,#all-plugins-table .plugins .inactive a:hover,#search-plugins-table .plugins .inactive a:hover{color:#d54e21;}#the-comment-list .comment-item,#dashboard-widgets #dashboard_quick_press form p.submit{border-color:#dfdfdf;}#side-sortables .category-tabs .tabs a,#side-sortables .add-menu-item-tabs .tabs a,.wp-tab-bar .wp-tab-active a{color:#333;}#rightnow .rbutton{background-color:#ebebeb;color:#264761;}.submitbox .submit{background-color:#464646;color:#ccc;}.plugins a.delete:hover,#all-plugins-table .plugins a.delete:hover,#search-plugins-table .plugins a.delete:hover,.submitbox .submitdelete{color:#f00;border-bottom-color:#f00;}.submitbox .submitdelete:hover,#media-items a.delete:hover{color:#fff;background-color:#f00;border-bottom-color:#f00;}#normal-sortables .submitbox .submitdelete:hover{color:#000;background-color:#f00;border-bottom-color:#f00;}.tablenav .dots{border-color:transparent;}.tablenav .next,.tablenav .prev{border-color:transparent;color:#21759b;}.tablenav .next:hover,.tablenav .prev:hover{border-color:transparent;color:#d54e21;}div.updated,.login .message{background-color:#ffffe0;border-color:#e6db55;}.update-message{color:#000;}a.page-numbers{border-bottom-color:#B8D3E2;}.commentlist li{border-bottom-color:#ccc;}.widefat td,.widefat th{border-top-color:#fff;border-bottom-color:#D0DFE9;}.widefat th{text-shadow:rgba(255,255,255,0.8) 0 1px 0;}.widefat td{color:#555;}.widefat p,.widefat ol,.widefat ul{color:#333;}.widefat thead tr th,.widefat tfoot tr th,h3.dashboard-widget-title,h3.dashboard-widget-title span,h3.dashboard-widget-title small,.find-box-head{color:#333;}th.sortable a:hover,th.sortable a:active,th.sortable a:focus{color:#333;}h3.dashboard-widget-title small a{color:#d7d7d7;}h3.dashboard-widget-title small a:hover{color:#fff;}a,#adminmenu a,#poststuff #edButtonPreview,#poststuff #edButtonHTML,#the-comment-list p.comment-author strong a,#media-upload a.del-link,#media-items a.delete,.plugins a.delete,.ui-tabs-nav a{color:#21759b;}#adminmenu .awaiting-mod,#adminmenu .update-plugins,#sidemenu a .update-plugins,#rightnow .reallynow{background-color:#464646;color:#fff;-moz-box-shadow:rgba(255,255,255,0.5) 0 1px 0;-khtml-box-shadow:rgba(255,255,255,0.5) 0 1px 0;-webkit-box-shadow:rgba(255,255,255,0.5) 0 1px 0;box-shadow:rgba(255,255,255,0.5) 0 1px 0;}#plugin-information .action-button{background-color:#d54e21;color:#fff;}#adminmenu li.current a .awaiting-mod,#adminmenu li a.wp-has-current-submenu .update-plugins{background-color:#464646;color:#fff;-moz-box-shadow:rgba(255,255,255,0.5) 0 1px 0;-khtml-box-shadow:rgba(255,255,255,0.5) 0 1px 0;-webkit-box-shadow:rgba(255,255,255,0.5) 0 1px 0;box-shadow:rgba(255,255,255,0.5) 0 1px 0;}div#media-upload-header,div#plugin-information-header{background-color:#f9f9f9;border-bottom-color:#dfdfdf;}#currenttheme img{border-color:#666;}#dashboard_secondary div.dashboard-widget-content ul li a{background-color:#f9f9f9;}input.readonly,textarea.readonly{background-color:#ddd;}#ed_toolbar input,#ed_reply_toolbar input{background:#fff url("../images/fade-butt.png") repeat-x 0 -2px;}#editable-post-name{background-color:#fffbcc;}#edit-slug-box strong,.tablenav .displaying-num,#submitted-on,.submitted-on{color:#777;}.login #nav a,.login #backtoblog a{color:#21759b!important;}.login #nav a:hover,.login #backtoblog a:hover{color:#d54e21!important;}#footer{color:#777;border-color:#b0c8d7;}#media-items,.imgedit-group{border-color:#dfdfdf;}.checkbox,.side-info,.plugins tr,#your-profile #rich_editing{background-color:#fcfcfc;}.plugins .inactive,.plugins .inactive th,.plugins .inactive td,tr.inactive+tr.plugin-update-tr .plugin-update{background-color:#efede7;}.plugin-update-tr .update-message{background-color:#fffbe4;border-color:#dfdfdf;}.plugins .active,.plugins .active th,.plugins .active td{color:#000;}.plugins .inactive a{color:#579;}#the-comment-list tr.undo,#the-comment-list div.undo{background-color:#f4f4f4;}#the-comment-list .unapproved{background-color:#ffffe0;}#the-comment-list .approve a{color:#006505;}#the-comment-list .unapprove a{color:#d98500;}table.widefat span.delete a,table.widefat span.trash a,table.widefat span.spam a,#dashboard_recent_comments .delete a,#dashboard_recent_comments .trash a,#dashboard_recent_comments .spam a{color:#bc0b0b;}.widget,#widget-list .widget-top,.postbox,#titlediv,#poststuff .postarea,.stuffbox{border-color:#d1e5ee;-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;}.widget,#widget-list .widget-top,.postbox,.menu-item-settings{background-color:#f7fcfe;}.postbox h3{color:#174f69;}.widget .widget-top{color:#174f69;}.sidebar-name:hover h3,.postbox h3:hover{color:#000;}.curtime #timestamp{background-image:url(../images/date-button.gif);}#quicktags #ed_link{color:#00f;}#rightnow .youhave{background-color:#f0f6fb;}#rightnow a{color:#448abd;}.tagchecklist span a,#bulk-titles div a{background:url(../images/xit.gif) no-repeat;}.tagchecklist span a:hover,#bulk-titles div a:hover{background:url(../images/xit.gif) no-repeat -10px 0;}#update-nag,.update-nag{background-color:#fffbcc;border-color:#e6db55;color:#555;}.login #backtoblog a{color:#464646;}#wphead{border-bottom:#d0dfe9 1px solid;}#wphead h1 a{color:#174f69;}#user_info{color:#777;}#user_info:hover,#user_info.active{color:#185069;}#user_info.active{background-color:#f7fcfe;background-image:-ms-linear-gradient(bottom,#f7fcfe,#f9f9f9);background-image:-moz-linear-gradient(bottom,#f7fcfe,#f9f9f9);background-image:-o-linear-gradient(bottom,#f7fcfe,#f9f9f9);background-image:-webkit-gradient(linear,left bottom,left top,from(#f7fcfe),to(#f9f9f9));background-image:-webkit-linear-gradient(bottom,#f7fcfe,#f9f9f9);background-image:linear-gradient(bottom,#f7fcfe,#f9f9f9);border-color:#d0dfe9 #d0dfe9 #d0dfe9;}#user_info_arrow{background:transparent url(../images/arrows-vs.png) no-repeat 6px 5px;}#user_info:hover #user_info_arrow,#user_info.active #user_info_arrow{background:transparent url(../images/arrows-dark-vs.png) no-repeat 6px 5px;}#user_info_links{-moz-box-shadow:0 3px 2px -2px rgba(0,0,0,0.2);-webkit-box-shadow:0 3px 2px -2px rgba(0,0,0,0.2);box-shadow:0 3px 2px -2px rgba(0,0,0,0.2);}#user_info_links ul{background:#f7fcfe;border-color:#d0dfe9 #d0dfe9 #d0dfe9;-moz-box-shadow:inset 0 1px 0 #f9f9f9;-webkit-box-shadow:inset 0 1px 0 #f9f9f9;box-shadow:inset 0 1px 0 #f9f9f9;}#user_info_links li:hover{background-color:#ECF8FE;}#user_info_links li:hover a,#user_info_links li a:hover{text-decoration:none;}#user_info a:link,#user_info a:visited,#footer a:link,#footer a:visited{text-decoration:none;}#footer a:hover{color:#000;text-decoration:underline;}div#media-upload-error,.file-error,abbr.required,.widget-control-remove:hover,table.widefat .delete a:hover,table.widefat .trash a:hover,table.widefat .spam a:hover,#dashboard_recent_comments .delete a:hover,#dashboard_recent_comments .trash a:hover #dashboard_recent_comments .spam a:hover{color:#f00;}#pass-strength-result{background-color:#eee;border-color:#ddd!important;}#pass-strength-result.bad{background-color:#ffb78c;border-color:#ff853c!important;}#pass-strength-result.good{background-color:#ffec8b;border-color:#fc0!important;}#pass-strength-result.short{background-color:#ffa0a0;border-color:#f04040!important;}#pass-strength-result.strong{background-color:#c3ff88;border-color:#8dff1c!important;}#quicktags{border-color:#cfdfe9;background-color:#cfdfe9;background-image:url("../images/ed-bg-vs.gif?ver=20101102");}#ed_toolbar input{border-color:#C3C3C3;}#ed_toolbar input:hover{border-color:#aaa;background:#ddd;}#poststuff .wp_themeSkin .mceStatusbar{border-color:#d0dfe9;}#poststuff .wp_themeSkin .mceStatusbar *{color:#555;}#poststuff #edButtonPreview,#poststuff #edButtonHTML{background-color:#f7fcfe;border-color:#d0dfe9 #d0dfe9 #d0dfe9;color:#999;}#poststuff #editor-toolbar .active{border-color:#d0dfe9 #d0dfe9 #eff8ff;background-color:#eff8ff;color:#333;}#post-status-info{background-color:#eff8ff;}.wp_themeSkin *,.wp_themeSkin a:hover,.wp_themeSkin a:link,.wp_themeSkin a:visited,.wp_themeSkin a:active{color:#000;}.wp_themeSkin table.mceLayout{border-color:#bed1dd #bed1dd #d0dfe9;}#editorcontainer #content,#editorcontainer .wp_themeSkin .mceIframeContainer{-moz-box-shadow:inset 1px 1px 2px rgba(0,0,0,0.1);-webkit-box-shadow:inset 1px 1px 2px rgba(0,0,0,0.1);box-shadow:inset 1px 1px 2px rgba(0,0,0,0.1);}.wp_themeSkin iframe{background:transparent;}.wp_themeSkin .mceStatusbar{color:#000;background-color:#f5f5f5;}.wp_themeSkin .mceButton{border-color:#B0C8D7;background-color:#cfdfe9;background-image:-ms-linear-gradient(bottom,#cfdfe9,#fff);background-image:-moz-linear-gradient(bottom,#cfdfe9,#fff);background-image:-o-linear-gradient(bottom,#cfdfe9,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#cfdfe9),to(#fff));background-image:-webkit-linear-gradient(bottom,#cfdfe9,#fff)!important;background-image:linear-gradient(bottom,#cfdfe9,#fff);}.wp_themeSkin a.mceButtonEnabled:hover{border-color:#5589AA!important;background-color:#c9c9c9;background-image:-ms-linear-gradient(bottom,#bdccd5,#fff);background-image:-moz-linear-gradient(bottom,#bdccd5,#fff));background-image:-o-linear-gradient(bottom,#bdccd5,#fff));background-image:-webkit-gradient(linear,left bottom,left top,from(#bdccd5),to(#fff));background-image:-webkit-linear-gradient(bottom,#bdccd5,#fff)!important;background-image:linear-gradient(bottom,#bdccd5,#fff);}.wp_themeSkin a.mceButton:active,.wp_themeSkin a.mceButtonEnabled:active,.wp_themeSkin a.mceButtonSelected:active,.wp_themeSkin a.mceButtonActive,.wp_themeSkin a.mceButtonActive:active,.wp_themeSkin a.mceButtonActive:hover{background:#B0C8D7!important;background-image:-ms-linear-gradient(bottom,#fff,#cfdfe9);background-image:-moz-linear-gradient(bottom,#fff,#cfdfe9));background-image:-o-linear-gradient(bottom,#fff,#cfdfe9));background-image:-webkit-gradient(linear,left bottom,left top,from(#fff),to(#cfdfe9));background-image:-webkit-linear-gradient(bottom,#fff,#cfdfe9)!important;background-image:linear-gradient(bottom,#fff,#cfdfe9);border-color:#5589AA!important;}.wp_themeSkin .mceButtonDisabled{border-color:#B0C8D7!important;}.wp_themeSkin .mceListBox .mceText,.wp_themeSkin .mceListBox .mceOpen{border-color:#B0C8D7;background-color:#cfdfe9;background-image:-ms-linear-gradient(bottom,#cfdfe9,#fff);background-image:-moz-linear-gradient(bottom,#cfdfe9,#fff);background-image:-o-linear-gradient(bottom,#cfdfe9,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#cfdfe9),to(#fff));background-image:-webkit-linear-gradient(bottom,#cfdfe9,#fff)!important;background-image:linear-gradient(bottom,#cfdfe9,#fff);}.wp_themeSkin .mceListBox .mceOpen{border-left:0!important;}.wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,.wp_themeSkin .mceListBoxHover .mceOpen,.wp_themeSkin .mceListBoxHover:active .mceOpen,.wp_themeSkin .mceListBoxSelected .mceOpen,.wp_themeSkin .mceListBoxSelected .mceText,.wp_themeSkin table.mceListBoxEnabled:active .mceText{background:#B0C8D7;border-color:#5589AA!important;}.wp_themeSkin table.mceListBoxEnabled:hover .mceText,.wp_themeSkin .mceListBoxHover .mceText,.wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,.wp_themeSkin .mceListBoxHover .mceOpen{border-color:#5589AA!important;background-color:#c9c9c9;background-image:-ms-linear-gradient(bottom,#cfdfe9,#fff);background-image:-moz-linear-gradient(bottom,#cfdfe9,#fff);background-image:-o-linear-gradient(bottom,#cfdfe9,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#cfdfe9),to(#fff));background-image:-webkit-linear-gradient(bottom,#cfdfe9,#fff)!important;background-image:linear-gradient(bottom,#cfdfe9,#fff);}.wp_themeSkin select.mceListBox{border-color:#B2B2B2;background-color:#fff;}.wp_themeSkin .mceSplitButton a.mceAction,.wp_themeSkin .mceSplitButton a.mceOpen{border-color:#B0C8D7;}.wp_themeSkin .mceSplitButton a.mceOpen:hover,.wp_themeSkin .mceSplitButtonSelected a.mceOpen,.wp_themeSkin table.mceSplitButtonEnabled:hover a.mceAction,.wp_themeSkin .mceSplitButton a.mceAction:hover{border-color:#5589AA!important;}.wp_themeSkin table.mceSplitButton td{background-color:#cfdfe9;background-image:-ms-linear-gradient(bottom,#cfdfe9,#fff);background-image:-moz-linear-gradient(bottom,#cfdfe9,#fff);background-image:-o-linear-gradient(bottom,#cfdfe9,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#cfdfe9),to(#fff));background-image:-webkit-linear-gradient(bottom,#cfdfe9,#fff)!important;background-image:linear-gradient(bottom,#cfdfe9,#fff);}.wp_themeSkin table.mceSplitButton:hover td{background-image:-ms-linear-gradient(bottom,#cfdfe9,#fff);background-image:-moz-linear-gradient(bottom,#cfdfe9,#fff);background-image:-o-linear-gradient(bottom,#cfdfe9,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#cfdfe9),to(#fff));background-image:-webkit-linear-gradient(bottom,#cfdfe9,#fff)!important;background-image:linear-gradient(bottom,#cfdfe9,#fff);}.wp_themeSkin .mceSplitButtonActive{background-color:#B0C8D7;}.wp_themeSkin div.mceColorSplitMenu table{background-color:#ebebeb;border-color:#B2B2B2;}.wp_themeSkin .mceColorSplitMenu a{border-color:#B2B2B2;}.wp_themeSkin .mceColorSplitMenu a.mceMoreColors{border-color:#fff;}.wp_themeSkin .mceColorSplitMenu a.mceMoreColors:hover{border-color:#0A246A;background-color:#B6BDD2;}.wp_themeSkin a.mceMoreColors:hover{border-color:#0A246A;}.wp_themeSkin .mceMenu{border-color:#ddd;}.wp_themeSkin .mceMenu table{background-color:#ebeaeb;}.wp_themeSkin .mceMenu .mceText{color:#000;}.wp_themeSkin .mceMenu .mceMenuItemEnabled a:hover,.wp_themeSkin .mceMenu .mceMenuItemActive{background-color:#f5f5f5;}.wp_themeSkin td.mceMenuItemSeparator{background-color:#aaa;}.wp_themeSkin .mceMenuItemTitle a{background-color:#ccc;border-bottom-color:#aaa;}.wp_themeSkin .mceMenuItemTitle span.mceText{color:#000;}.wp_themeSkin .mceMenuItemDisabled .mceText{color:#888;}.wp_themeSkin tr.mceFirst td.mceToolbar{background:#cfdfe9 url("../images/ed-bg-vs.gif?ver=20101102") repeat-x scroll left top;border-color:#cfdfe9;}.wp-admin #mceModalBlocker{background:#000;}.wp-admin .clearlooks2 .mceFocus .mceTop .mceLeft{background:#444;border-left:1px solid #999;border-top:1px solid #999;-moz-border-radius:3px 0 0 0;-webkit-border-top-left-radius:3px;-khtml-border-top-left-radius:3px;border-top-left-radius:3px;}.wp-admin .clearlooks2 .mceFocus .mceTop .mceRight{background:#444;border-right:1px solid #999;border-top:1px solid #999;border-top-right-radius:3px;-khtml-border-top-right-radius:3px;-webkit-border-top-right-radius:3px;-moz-border-radius:0 3px 0 0;}.wp-admin .clearlooks2 .mceMiddle .mceLeft{background:#f1f1f1;border-left:1px solid #999;}.wp-admin .clearlooks2 .mceMiddle .mceRight{background:#f1f1f1;border-right:1px solid #999;}.wp-admin .clearlooks2 .mceBottom{background:#f1f1f1;border-bottom:1px solid #999;}.wp-admin .clearlooks2 .mceBottom .mceLeft{background:#f1f1f1;border-bottom:1px solid #999;border-left:1px solid #999;}.wp-admin .clearlooks2 .mceBottom .mceCenter{background:#f1f1f1;border-bottom:1px solid #999;}.wp-admin .clearlooks2 .mceBottom .mceRight{background:#f1f1f1;border-bottom:1px solid #999;border-right:1px solid #999;}.wp-admin .clearlooks2 .mceFocus .mceTop span{color:#e5e5e5;}#titlediv #title{border-color:#bdccd5;}#editorcontainer{border-color:#bdccd5 #bdccd5 #d0dfe9;}#post-status-info{border-color:#d0dfe9 #bdccd5 #bdccd5;}.editwidget .widget-inside{border-color:#d0dfe9;}#titlediv #title{background-color:#fff;}#tTips p#tTips_inside{background-color:#ddd;color:#333;}#timestampdiv input,#namediv input,#poststuff .inside .the-tagcloud{border-color:#ddd;}#adminmenuback,#adminmenuwrap{background-color:#EFF8FF;border-color:#D1E5EE;}#adminmenushadow,#adminmenuback{background-image:url(../images/menu-shadow.png);background-position:top right;background-repeat:repeat-y;}#adminmenu li.wp-menu-separator{background:#D1E5EE;border-color:#bed1dd;}#adminmenu div.separator{border-color:#D1E5EE;}#adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,#adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle{background:transparent url(../images/arrows-dark-vs.png) no-repeat -1px 6px;}#adminmenu .wp-has-submenu:hover .wp-menu-toggle,#adminmenu .wp-menu-open .wp-menu-toggle{background:transparent url(../images/arrows-vs.png) no-repeat -2px 6px;}#adminmenu a.menu-top,.folded #adminmenu li.menu-top,#adminmenu .wp-submenu .wp-submenu-head{border-top-color:#fff;border-bottom-color:#d1e5ee;}#adminmenu li.wp-menu-open{border-color:#d1e5ee;}#adminmenu li.wp-has-current-submenu a.wp-has-current-submenu,#adminmenu li.current a.menu-top,.folded #adminmenu li.wp-has-current-submenu,.folded #adminmenu li.current.menu-top,#adminmenu .wp-menu-arrow,#adminmenu .wp-has-current-submenu .wp-submenu .wp-submenu-head{background-color:#5589AA;background-image:-ms-linear-gradient(bottom,#5589AA,#5A8FAD);background-image:-moz-linear-gradient(bottom,#5589AA,#5A8FAD);background-image:-o-linear-gradient(bottom,#5589AA,#5A8FAD);background-image:-webkit-gradient(linear,left bottom,left top,from(#5589AA),to(#5A8FAD));background-image:-webkit-linear-gradient(bottom,#5589AA,#5A8FAD);background-image:linear-gradient(bottom,#5589AA,#5A8FAD);}#adminmenu li.wp-has-current-submenu a.wp-has-current-submenu,#adminmenu li.current a.menu-top,#adminmenu .wp-has-current-submenu .wp-submenu .wp-submenu-head{text-shadow:0 -1px 0 #333;color:#fff;border-top-color:#5A8FAD;border-bottom-color:#5589AA;}.folded #adminmenu li.wp-has-current-submenu,.folded #adminmenu li.current.menu-top{border-top-color:#5A8FAD;border-bottom-color:#5589AA;}#adminmenu .wp-submenu a:hover{background-color:#EAF2FA!important;color:#333!important;}#adminmenu .wp-submenu li.current,#adminmenu .wp-submenu li.current a,#adminmenu .wp-submenu li.current a:hover{color:#333;}#adminmenu .wp-submenu ul{background-color:#fff;}.folded #adminmenu .wp-submenu-wrap,.folded #adminmenu .wp-submenu ul{border-color:#d0dfe9;}.folded #adminmenu .wp-submenu-wrap{-moz-box-shadow:2px 2px 5px rgba(0,0,0,0.4);-webkit-box-shadow:2px 2px 5px rgba(0,0,0,0.4);box-shadow:2px 2px 5px rgba(0,0,0,0.4);}#adminmenu .wp-submenu .wp-submenu-head{border-right-color:#d0dfe9;background-color:#EFF8FF;}#adminmenu div.wp-submenu{background-color:transparent;}#collapse-menu{color:#A0C3D5;}#collapse-menu:hover{color:#5A8FAD;}#collapse-button{border-color:#d0dfe9;background-color:#eff8ff;background-image:-ms-linear-gradient(bottom,#eff8ff,#fff);background-image:-moz-linear-gradient(bottom,#eff8ff,#fff);background-image:-o-linear-gradient(bottom,#eff8ff,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#eff8ff),to(#fff));background-image:-webkit-linear-gradient(bottom,#eff8ff,#fff);background-image:linear-gradient(bottom,#eff8ff,#fff);}#collapse-menu:hover #collapse-button{border-color:#A0C3D5;}#collapse-button div{background:transparent url(../images/arrows-vs.png) no-repeat 0 -72px;}.folded #collapse-button div{background-position:0 -108px;}#adminmenu .menu-icon-dashboard div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -60px -33px;}#adminmenu .menu-icon-dashboard:hover div.wp-menu-image,#adminmenu .menu-icon-dashboard.wp-has-current-submenu div.wp-menu-image,#adminmenu .menu-icon-dashboard.current div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -60px -1px;}#adminmenu .menu-icon-post div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -271px -33px;}#adminmenu .menu-icon-post:hover div.wp-menu-image,#adminmenu .menu-icon-post.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -271px -1px;}#adminmenu .menu-icon-media div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -120px -33px;}#adminmenu .menu-icon-media:hover div.wp-menu-image,#adminmenu .menu-icon-media.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -120px -1px;}#adminmenu .menu-icon-links div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -90px -33px;}#adminmenu .menu-icon-links:hover div.wp-menu-image,#adminmenu .menu-icon-links.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -90px -1px;}#adminmenu .menu-icon-page div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -150px -33px;}#adminmenu .menu-icon-page:hover div.wp-menu-image,#adminmenu .menu-icon-page.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -150px -1px;}#adminmenu .menu-icon-comments div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -30px -33px;}#adminmenu .menu-icon-comments:hover div.wp-menu-image,#adminmenu .menu-icon-comments.wp-has-current-submenu div.wp-menu-image,#adminmenu .menu-icon-comments.current div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -30px -1px;}#adminmenu .menu-icon-appearance div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll 0 -33px;}#adminmenu .menu-icon-appearance:hover div.wp-menu-image,#adminmenu .menu-icon-appearance.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll 0 -1px;}#adminmenu .menu-icon-plugins div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -180px -33px;}#adminmenu .menu-icon-plugins:hover div.wp-menu-image,#adminmenu .menu-icon-plugins.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -180px -1px;}#adminmenu .menu-icon-users div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -300px -33px;}#adminmenu .menu-icon-users:hover div.wp-menu-image,#adminmenu .menu-icon-users.wp-has-current-submenu div.wp-menu-image,#adminmenu .menu-icon-users.current div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -300px -1px;}#adminmenu .menu-icon-tools div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -210px -33px;}#adminmenu .menu-icon-tools:hover div.wp-menu-image,#adminmenu .menu-icon-tools.wp-has-current-submenu div.wp-menu-image,#adminmenu .menu-icon-tools.current div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -210px -1px;}#icon-options-general,#adminmenu .menu-icon-settings div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -240px -33px;}#adminmenu .menu-icon-settings:hover div.wp-menu-image,#adminmenu .menu-icon-settings.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -240px -1px;}#adminmenu .menu-icon-site div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -360px -33px;}#adminmenu .menu-icon-site:hover div.wp-menu-image,#adminmenu .menu-icon-site.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -360px -1px;}#icon-edit,#icon-post{background:transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -552px -5px;}#icon-index{background:transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -137px -5px;}#icon-upload{background:transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -251px -5px;}#icon-link-manager,#icon-link,#icon-link-category{background:transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -190px -5px;}#icon-edit-pages,#icon-page{background:transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -312px -5px;}#icon-edit-comments{background:transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -72px -5px;}#icon-themes{background:transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -11px -5px;}#icon-plugins{background:transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -370px -5px;}#icon-users,#icon-profile,#icon-user-edit{background:transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -600px -5px;}#icon-tools,#icon-admin{background:transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -432px -5px;}#icon-options-general{background:transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -492px -5px;}#icon-ms-admin{background:transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -659px -5px;}table.diff .diff-deletedline{background-color:#fdd;}table.diff .diff-deletedline del{background-color:#f99;}table.diff .diff-addedline{background-color:#dfd;}table.diff .diff-addedline ins{background-color:#9f9;}#att-info{background-color:#E4F2FD;}#sidemenu a{background-color:#f9f9f9;border-color:#f9f9f9;border-bottom-color:#dfdfdf;}#sidemenu a.current{background-color:#fff;border-color:#dfdfdf #dfdfdf #fff;color:#D54E21;}#screen-options-wrap,#contextual-help-wrap{background-color:#f7fcfe;border-color:#D1e5ee;}#screen-options-link-wrap,#contextual-help-link-wrap{background-color:#eff8ff;border-right:1px solid #D1E5EE;border-left:1px solid #D1E5EE;border-bottom:1px solid #D1E5EE;background-image:-ms-linear-gradient(bottom,#eff8ff,#fff);background-image:-moz-linear-gradient(bottom,#eff8ff,#fff);background-image:-o-linear-gradient(bottom,#eff8ff,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#eff8ff),to(#fff));background-image:-webkit-linear-gradient(bottom,#eff8ff,#fff);background-image:linear-gradient(bottom,#eff8ff,#fff);}#screen-meta-links a.show-settings{color:#606060;}#screen-meta-links a.show-settings:hover{color:#000;}#replysubmit{background-color:#f1f1f1;border-top-color:#ddd;}#replyerror{border-color:#ddd;background-color:#f9f9f9;}#edithead,#replyhead{background-color:#f1f1f1;}#ed_reply_toolbar{background-color:#e9e9e9;}.vim-current,.vim-current th,.vim-current td{background-color:#E4F2FD!important;}.star-average,.star.star-rating{background-color:#fc0;}div.star.select:hover{background-color:#d00;}div.star img{border-left:1px solid #fff;border-right:1px solid #fff;}#plugin-information .fyi ul{background-color:#eaf3fa;}#plugin-information .fyi h2.mainheader{background-color:#cee1ef;}#plugin-information pre,#plugin-information code{background-color:#ededff;}#plugin-information pre{border:1px solid #ccc;}.inline-edit-row fieldset input[type="text"],.inline-edit-row fieldset textarea,#bulk-titles,#replyrow input{border-color:#ddd;}.inline-editor div.title{background-color:#EAF3FA;}.inline-editor ul.cat-checklist{background-color:#fff;border-color:#ddd;}.inline-editor .categories .catshow,.inline-editor .categories .cathide{color:#21759b;}.inline-editor .quick-edit-save{background-color:#f1f1f1;}#replyrow #ed_reply_toolbar input:hover{border-color:#aaa;background:#ddd;}fieldset.inline-edit-col-right .inline-edit-col{border-color:#dfdfdf;}.attention{color:#D54E21;}.meta-box-sortables .postbox:hover .handlediv{background:transparent url(../images/arrows-vs.png) no-repeat 6px 7px;}.tablenav .tablenav-pages{color:#555;}.tablenav .tablenav-pages a{border-color:#d1e5ee;background:#eee url('../images/menu-bits-vs.gif?ver=20101102') repeat-x scroll left -379px;}.tablenav .tablenav-pages a:hover,.tablenav .tablenav-pages a:focus{color:#d54e21;}.tablenav .tablenav-pages a.disabled,.tablenav .tablenav-pages a.disabled:hover,.tablenav .tablenav-pages a.disabled:focus{color:#aaa;}.tablenav .tablenav-pages .current{background:#dfdfdf;border-color:#d3d3d3;}#availablethemes,#availablethemes td{border-color:#ddd;}#current-theme img{border-color:#999;}#TB_window #TB_title a.tb-theme-preview-link,#TB_window #TB_title a.tb-theme-preview-link:visited{color:#999;}#TB_window #TB_title a.tb-theme-preview-link:hover,#TB_window #TB_title a.tb-theme-preview-link:focus{color:#ccc;}.misc-pub-section{border-top-color:#fff;border-bottom-color:#eee;}#minor-publishing{border-bottom-color:#ddd;}#post-body .misc-pub-section{border-right-color:#eee;}.post-com-count span{background-color:#bbb;}.form-table .color-palette td{border-color:#fff;}.sortable-placeholder{border-color:#bbb;background-color:#f5f5f5;}#post-body ul.category-tabs li.tabs a,#post-body ul.add-menu-item-tabs li.tabs a,body.press-this ul.category-tabs li.tabs a{color:#333;}#wp_editimgbtn,#wp_delimgbtn,#wp_editgallery,#wp_delgallery{border-color:#999;background-color:#eee;}#wp_editimgbtn:hover,#wp_delimgbtn:hover,#wp_editgallery:hover,#wp_delgallery:hover{border-color:#555;background-color:#ccc;}#favorite-first{border-color:#c0c0c0;background:#f1f1f1;background:-moz-linear-gradient(bottom,#e7e7e7,#fff);background:-webkit-gradient(linear,left bottom,left top,from(#e7e7e7),to(#fff));}#favorite-inside{border-color:#c0c0c0;background-color:#fff;}#favorite-toggle{background:transparent url(../images/fav-arrow.gif?ver=20100531) no-repeat 0 -4px;border-color:#d0dfe9;-moz-box-shadow:inset 1px 0 0 #fff;-webkit-box-shadow:inset 1px 0 0 #fff;box-shadow:inset 1px 0 0 #fff;}#favorite-actions a{color:#464646;}#favorite-actions a:hover{color:#000;}#favorite-inside a:hover{text-decoration:underline;}#screen-meta a.show-settings,.toggle-arrow{background:transparent url(../images/arrows-vs.png) no-repeat right 3px;}#screen-meta .screen-meta-active a.show-settings{background:transparent url(../images/arrows-vs.png) no-repeat right -33px;}.view-switch #view-switch-list{background:transparent url(../images/list.png) no-repeat 0 0;}.view-switch .current #view-switch-list{background:transparent url(../images/list.png) no-repeat -40px 0;}.view-switch #view-switch-excerpt{background:transparent url(../images/list.png) no-repeat -20px 0;}.view-switch .current #view-switch-excerpt{background:transparent url(../images/list.png) no-repeat -60px 0;}#header-logo{background:transparent url(../images/wp-logo-vs.png?ver=20101102) no-repeat scroll center center;}.popular-tags,.feature-filter{background-color:#fff;border-color:#DFDFDF;}#theme-information .action-button{border-top-color:#DFDFDF;}.theme-listing br.line{border-bottom-color:#ccc;}div.widgets-sortables,#widgets-left .inactive{background-color:#f7fcfe;border-color:#d0dfe9;}#available-widgets .widget-holder{background-color:#f7fcfe;border-color:#d0dfe9;}#available-widgets .widget-description{color:#555;}.sidebar-name{color:#464646;background-color:#f7fcfe;background-image:-ms-linear-gradient(top,#ECF8FE,#f7fcfe);background-image:-moz-linear-gradient(top,#ECF8FE,#f7fcfe);background-image:-o-linear-gradient(top,#ECF8FE,#f7fcfe);background-image:-webkit-gradient(linear,left top,left bottom,from(#ECF8FE),to(#f7fcfe));background-image:-webkit-linear-gradient(top,#ECF8FE,#f7fcfe);background-image:linear-gradient(top,#ECF8FE,#f7fcfe);text-shadow:#fff 0 1px 0;border-color:#d0dfe9;-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;}.sidebar-name:hover,#removing-widget{color:#d54e21;}#removing-widget span{color:black;}.sidebar-name-arrow{background:transparent url(../images/arrows-vs.png) no-repeat 5px 9px;}.sidebar-name:hover .sidebar-name-arrow{background:transparent url(../images/arrows-dark-vs.png) no-repeat 5px 9px;}.in-widget-title{color:#606060;}.deleting .widget-title *{color:#aaa;}.imgedit-menu div{border-color:#d5d5d5;background-color:#f1f1f1;}.imgedit-menu div:hover{border-color:#c1c1c1;background-color:#eaeaea;}.imgedit-menu div.disabled{border-color:#ccc;background-color:#ddd;filter:alpha(opacity=50);opacity:.5;}#dashboard_recent_comments div.undo{border-top-color:#dfdfdf;}.comment-ays,.comment-ays th{border-color:#ddd;}.comment-ays th{background-color:#f1f1f1;}#menu-management .menu-edit{border-color:#d0dfe9;}#post-body{background:#fff;border-top-color:#fff;border-bottom-color:#d0dfe9;}#nav-menu-header{border-bottom-color:#d0dfe9;}#nav-menu-footer{border-top-color:#fff;}#menu-management .nav-tabs-arrow a{color:#C1C1C1;}#menu-management .nav-tabs-arrow a:hover{color:#D54E21;}#menu-management .nav-tabs-arrow a:active{color:#464646;}#menu-management .nav-tab-active{border-color:#dfdfdf;}#menu-management .nav-tab{background:#f7fcfe;border-color:#d0dfe9;}.js .input-with-default-title{color:#aaa;}#cancel-save{color:#f00;}#cancel-save:hover{background-color:#F00;color:#fff;}.list-container{border-color:#dfdfdf;}.menu-item-handle{border-color:#d0dfe9;}.menu li.deleting .menu-item-handle{background-color:#f66;text-shadow:#ccc;}.item-type{color:#999;}.item-controls .menu-item-delete:hover{color:#f00;}.item-edit{background:transparent url(../images/arrows-vs.png) no-repeat 8px 10px;border-bottom-color:#eee;}.item-edit:hover{background:transparent url(../images/arrows-dark-vs.png) no-repeat 8px 10px;}.menu-item-settings{border-color:#d0dfe9;}.link-to-original{color:#777;border-color:#d0dfe9;}#cancel-save:hover{color:#fff!important;}#update-menu-item{color:#fff!important;}#update-menu-item:hover,#update-menu-item:active,#update-menu-item:focus{color:#eaf2fa!important;border-color:#13455b!important;}.submitbox .submitcancel{color:#21759B;border-bottom-color:#21759B;}.submitbox .submitcancel:hover{background:#21759B;color:#fff;}#menu-management .nav-tab-active,.menu-item-handle,.menu-item-settings{-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;}#menu-management .nav-tab-active{background:#eff8ff;border-bottom-color:#eff8ff;}#upload-form label{color:#777;}.fullscreen-overlay{background:#fff;}.wp-fullscreen-focus #wp-fullscreen-title,.wp-fullscreen-focus #wp-fullscreen-container{border-color:#BED1DD;}#fullscreen-topbar{border-bottom-color:#D1E5EE;}
\ No newline at end of file
+html,.wp-dialog{background-color:#fff;}* html input,* html .widget{border-color:#dfdfdf;}textarea,input[type="text"],input[type="password"],input[type="file"],input[type="button"],input[type="submit"],input[type="reset"],input[type="email"],input[type="number"],input[type="search"],input[type="tel"],input[type="url"],select{border-color:#dfdfdf;background-color:#fff;}kbd,code{background:#eaeaea;}input[readonly]{background-color:#eee;}.find-box-search{border-color:#dfdfdf;background-color:#f1f1f1;}.find-box{background-color:#f1f1f1;}.find-box-inside{background-color:#fff;}a.page-numbers:hover{border-color:#999;}body,#wpbody,.form-table .pre{color:#333;}body>#upload-menu{border-bottom-color:#fff;}#postcustomstuff table,#your-profile fieldset,#rightnow,div.dashboard-widget,#dashboard-widgets p.dashboard-widget-links{border-color:#D1E5EE;}#poststuff .inside label.spam,#poststuff .inside label.deleted{color:red;}#poststuff .inside label.waiting{color:orange;}#poststuff .inside label.approved{color:green;}#postcustomstuff table{border-color:#dfdfdf;background-color:#F9F9F9;}#postcustomstuff thead th{background-color:#F1F1F1;}#postcustomstuff table input,#postcustomstuff table textarea{border-color:#dfdfdf;background-color:#fff;}.widefat{border-color:#D1E5EE;background-color:#fff;}div.dashboard-widget-error{background-color:#c43;}div.dashboard-widget-notice{background-color:#cfe1ef;}div.dashboard-widget-submit{border-top-color:#ccc;}div.tabs-panel,.wp-tab-panel,ul.category-tabs li.tabs,ul.add-menu-item-tabs li.tabs,.wp-tab-active{border-color:#dfdfdf;background-color:#fff;}ul.category-tabs li.tabs,ul.add-menu-item-tabs li.tabs,.wp-tab-active{background-color:#fff;}input.disabled,textarea.disabled{background-color:#ccc;}#plugin-information .action-button a,#plugin-information .action-button a:hover,#plugin-information .action-button a:visited{color:#fff;}.widget .widget-top,.postbox h3,.stuffbox h3,.widefat thead tr th,.widefat tfoot tr th,h3.dashboard-widget-title,h3.dashboard-widget-title span,h3.dashboard-widget-title small,.find-box-head,.sidebar-name,#nav-menu-header,#nav-menu-footer,.menu-item-handle,#fullscreen-topbar{background-color:#f5fafd;background-image:-ms-linear-gradient(top,#f7fcfe,#eff8ff);background-image:-moz-linear-gradient(top,#f7fcfe,#eff8ff);background-image:-o-linear-gradient(top,#f7fcfe,#eff8ff);background-image:-webkit-gradient(linear,left top,left bottom,from(#f7fcfe),to(#eff8ff));background-image:-webkit-linear-gradient(top,#f7fcfe,#eff8ff);background-image:linear-gradient(top,#f7fcfe,#eff8ff);}.widget .widget-top,.postbox h3,.stuffbox h3{border-bottom-color:#D1E5EE;text-shadow:#fff 0 1px 0;-moz-box-shadow:0 1px 0 #fff;-webkit-box-shadow:0 1px 0 #fff;box-shadow:0 1px 0 #fff;}.form-table th,.form-wrap label{color:#222;text-shadow:#fff 0 1px 0;}.description,.form-wrap p{color:#666;}strong .post-com-count span{background-color:#21759b;}.sorthelper{background-color:#ccf3fa;}.ac_match,.subsubsub a.current{color:#000;}.wrap h2{color:#174f69;}.wrap .add-new-h2{background:#f1f1f1;}.subtitle{color:#777;}.ac_over{background-color:#f0f0b8;}.ac_results{background-color:#fff;border-color:#808080;}.ac_results li{color:#101010;}.alternate,.alt{background-color:#f7fcfe;}.available-theme a.screenshot{background-color:#f1f1f1;border-color:#ddd;}.bar{background-color:#e8e8e8;border-right-color:#99d;}#media-upload,#media-upload .media-item .slidetoggle{background:#fff;}#media-upload .slidetoggle{border-top-color:#dfdfdf;}div.error,.login #login_error{background-color:#ffebe8;border-color:#c00;}div.error a{color:#c00;}.form-invalid{background-color:#ffebe8!important;}.form-invalid input,.form-invalid select{border-color:#c00!important;}.submit{border-color:#DFDFDF;}.highlight{background-color:#e4f2fd;color:#000;}.howto,.nonessential,#edit-slug-box,.form-input-tip,.subsubsub{color:#666;}.media-upload-form label.form-help,td.help{color:#9a9a9a;}.post-com-count{background-image:url(../images/bubble_bg.gif);color:#fff;}.post-com-count span{background-color:#bbb;color:#fff;}.post-com-count:hover span{background-color:#d54e21;}.quicktags,.search{background-color:#ccc;color:#000;}.side-info h5{border-bottom-color:#dadada;}.side-info ul{color:#666;}.button,.button-secondary,.submit input,input[type=button],input[type=submit]{border-color:#bbb;color:#464646;}.button:hover,.button-secondary:hover,.submit input:hover,input[type=button]:hover,input[type=submit]:hover{color:#000;border-color:#666;}.button,.submit input,.button-secondary{background:#f2f2f2 url(../images/white-grad.png) repeat-x scroll left top;text-shadow:rgba(255,255,255,1) 0 1px 0;}.button:active,.submit input:active,.button-secondary:active{background:#eee url(../images/white-grad-active.png) repeat-x scroll left top;}input.button-primary,button.button-primary,a.button-primary{border-color:#298cba;font-weight:bold;color:#fff;background:#21759B url(../images/button-grad.png) repeat-x scroll left top;text-shadow:rgba(0,0,0,0.3) 0 -1px 0;}input.button-primary:active,button.button-primary:active,a.button-primary:active{background:#21759b url(../images/button-grad-active.png) repeat-x scroll left top;color:#eaf2fa;}input.button-primary:hover,button.button-primary:hover,a.button-primary:hover,a.button-primary:focus,a.button-primary:active{border-color:#13455b;color:#eaf2fa;}.button-disabled,.button[disabled],.button:disabled,.button-secondary[disabled],.button-secondary:disabled,a.button.disabled{color:#aaa!important;border-color:#ddd!important;}.button-primary-disabled,.button-primary[disabled],.button-primary:disabled{color:#9FD0D5!important;background:#298CBA!important;}a:hover,a:active,a:focus{color:#d54e21;}#adminmenu a:hover,#adminmenu li.menu-top>a:focus,#adminmenu ul.wp-submenu a:hover,#the-comment-list .comment a:hover,#rightnow a:hover,#media-upload a.del-link:hover,div.dashboard-widget-submit input:hover,.subsubsub a:hover,.subsubsub a.current:hover,.ui-tabs-nav a:hover,.plugins .inactive a:hover,#all-plugins-table .plugins .inactive a:hover,#search-plugins-table .plugins .inactive a:hover{color:#d54e21;}#the-comment-list .comment-item,#dashboard-widgets #dashboard_quick_press form p.submit{border-color:#dfdfdf;}#side-sortables .category-tabs .tabs a,#side-sortables .add-menu-item-tabs .tabs a,.wp-tab-bar .wp-tab-active a{color:#333;}#rightnow .rbutton{background-color:#ebebeb;color:#264761;}.submitbox .submit{background-color:#464646;color:#ccc;}.plugins a.delete:hover,#all-plugins-table .plugins a.delete:hover,#search-plugins-table .plugins a.delete:hover,.submitbox .submitdelete{color:#f00;border-bottom-color:#f00;}.submitbox .submitdelete:hover,#media-items a.delete:hover{color:#fff;background-color:#f00;border-bottom-color:#f00;}#normal-sortables .submitbox .submitdelete:hover{color:#000;background-color:#f00;border-bottom-color:#f00;}.tablenav .dots{border-color:transparent;}.tablenav .next,.tablenav .prev{border-color:transparent;color:#21759b;}.tablenav .next:hover,.tablenav .prev:hover{border-color:transparent;color:#d54e21;}div.updated,.login .message{background-color:#ffffe0;border-color:#e6db55;}.update-message{color:#000;}a.page-numbers{border-bottom-color:#B8D3E2;}.commentlist li{border-bottom-color:#ccc;}.widefat td,.widefat th{border-top-color:#fff;border-bottom-color:#D0DFE9;}.widefat th{text-shadow:rgba(255,255,255,0.8) 0 1px 0;}.widefat td{color:#555;}.widefat p,.widefat ol,.widefat ul{color:#333;}.widefat thead tr th,.widefat tfoot tr th,h3.dashboard-widget-title,h3.dashboard-widget-title span,h3.dashboard-widget-title small,.find-box-head{color:#333;}th.sortable a:hover,th.sortable a:active,th.sortable a:focus{color:#333;}h3.dashboard-widget-title small a{color:#d7d7d7;}h3.dashboard-widget-title small a:hover{color:#fff;}a,#adminmenu a,#the-comment-list p.comment-author strong a,#media-upload a.del-link,#media-items a.delete,.plugins a.delete,.ui-tabs-nav a{color:#21759b;}#adminmenu .awaiting-mod,#adminmenu .update-plugins,#sidemenu a .update-plugins,#rightnow .reallynow{background-color:#464646;color:#fff;-moz-box-shadow:rgba(255,255,255,0.5) 0 1px 0;-webkit-box-shadow:rgba(255,255,255,0.5) 0 1px 0;box-shadow:rgba(255,255,255,0.5) 0 1px 0;}#plugin-information .action-button{background-color:#d54e21;color:#fff;}#adminmenu li.current a .awaiting-mod,#adminmenu li a.wp-has-current-submenu .update-plugins{background-color:#464646;color:#fff;-moz-box-shadow:rgba(255,255,255,0.5) 0 1px 0;-webkit-box-shadow:rgba(255,255,255,0.5) 0 1px 0;box-shadow:rgba(255,255,255,0.5) 0 1px 0;}div#media-upload-header,div#plugin-information-header{background-color:#f9f9f9;border-bottom-color:#dfdfdf;}#currenttheme img{border-color:#666;}#dashboard_secondary div.dashboard-widget-content ul li a{background-color:#f9f9f9;}input.readonly,textarea.readonly{background-color:#ddd;}.quicktags-toolbar input{background:#fff;background-image:-ms-linear-gradient(bottom,#e5f0f8,#fff);background-image:-moz-linear-gradient(bottom,#e5f0f8,#fff);background-image:-o-linear-gradient(bottom,#e5f0f8,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#e5f0f8),to(#fff));background-image:-webkit-linear-gradient(bottom,#e5f0f8,#fff)!important;background-image:linear-gradient(bottom,#e5f0f8,#fff);}#editable-post-name{background-color:#fffbcc;}#edit-slug-box strong,.tablenav .displaying-num,#submitted-on,.submitted-on{color:#777;}.login #nav a,.login #backtoblog a{color:#21759b!important;}.login #nav a:hover,.login #backtoblog a:hover{color:#d54e21!important;}#footer{color:#777;border-color:#b0c8d7;}#media-items .media-item,.media-item .describe,.imgedit-group{border-color:#dfdfdf;}.checkbox,.side-info,.plugins tr,#your-profile #rich_editing{background-color:#fcfcfc;}.plugins .inactive,.plugins .inactive th,.plugins .inactive td,tr.inactive+tr.plugin-update-tr .plugin-update{background-color:#f4f4f4;}.plugin-update-tr .update-message{background-color:#fffbe4;border-color:#dfdfdf;}.plugins .active,.plugins .active th,.plugins .active td{color:#000;}.plugins .inactive a{color:#579;}#the-comment-list tr.undo,#the-comment-list div.undo{background-color:#f4f4f4;}#the-comment-list .unapproved{background-color:#ffffe0;}#the-comment-list .approve a{color:#006505;}#the-comment-list .unapprove a{color:#d98500;}table.widefat span.delete a,table.widefat span.trash a,table.widefat span.spam a,#dashboard_recent_comments .delete a,#dashboard_recent_comments .trash a,#dashboard_recent_comments .spam a{color:#bc0b0b;}.welcome-panel{border-color:#d1e5ee;}.welcome-panel p{color:#777;}.welcome-panel-column p{color:#464646;}.welcome-panel h3{text-shadow:1px 1px 1px white;}.widget,#widget-list .widget-top,.postbox,#titlediv,#poststuff .postarea,.stuffbox{border-color:#d1e5ee;-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;-webkit-border-radius:3px;border-radius:3px;}.widget,#widget-list .widget-top,.postbox,.menu-item-settings{background-color:#f7fcfe;}.postbox h3{color:#174f69;}.widget .widget-top{color:#174f69;}.sidebar-name:hover h3,.postbox h3:hover{color:#000;}.curtime #timestamp{background-image:url(../images/date-button.gif);}#quicktags #ed_link{color:#00f;}#rightnow .youhave{background-color:#f0f6fb;}#rightnow a{color:#448abd;}.tagchecklist span a,#bulk-titles div a{background:url(../images/xit.gif) no-repeat;}.tagchecklist span a:hover,#bulk-titles div a:hover{background:url(../images/xit.gif) no-repeat -10px 0;}#update-nag,.update-nag{background-color:#fffbcc;border-color:#e6db55;color:#555;}.login #backtoblog a{color:#464646;}#wphead{border-bottom:#d0dfe9 1px solid;}#wphead h1 a{color:#174f69;}#footer a:link,#footer a:visited{text-decoration:none;}#footer a:hover{color:#000;text-decoration:underline;}.file-error,abbr.required,.widget-control-remove:hover,table.widefat .delete a:hover,table.widefat .trash a:hover,table.widefat .spam a:hover,#dashboard_recent_comments .delete a:hover,#dashboard_recent_comments .trash a:hover #dashboard_recent_comments .spam a:hover{color:#f00;}#pass-strength-result{background-color:#eee;border-color:#ddd!important;}#pass-strength-result.bad{background-color:#ffb78c;border-color:#ff853c!important;}#pass-strength-result.good{background-color:#ffec8b;border-color:#fc0!important;}#pass-strength-result.short{background-color:#ffa0a0;border-color:#f04040!important;}#pass-strength-result.strong{background-color:#c3ff88;border-color:#8dff1c!important;}#quicktags{border-color:#cfdfe9;background-color:#cfdfe9;background-image:url("../images/ed-bg-vs.gif?ver=20101102");}.quicktags-toolbar input{border-color:#b2c4c8;}.quicktags-toolbar input:hover{border-color:#d0dfe9;background:#f0f8fe;}#poststuff .wp-editor-wrap .wp_themeSkin .mceStatusbar{border-color:#d0dfe9;}#poststuff .wp-editor-wrap .wp_themeSkin .mceStatusbar *{color:#555;}#poststuff #editor-toolbar .active{border-color:#d0dfe9 #d0dfe9 #eff8ff;background-color:#eff8ff;color:#333;}#post-status-info{background-color:#eff8ff;}.wp-editor-wrap .wp_themeSkin *,.wp-editor-wrap .wp_themeSkin a:hover,.wp-editor-wrap .wp_themeSkin a:link,.wp-editor-wrap .wp_themeSkin a:visited,.wp-editor-wrap .wp_themeSkin a:active{color:#000;}.wp-editor-wrap .wp_themeSkin table.mceLayout{border-color:#bed1dd #bed1dd #d0dfe9;}#editorcontainer #content,#editorcontainer .wp-editor-wrap .wp_themeSkin .mceIframeContainer{-moz-box-shadow:inset 1px 1px 2px rgba(0,0,0,0.1);-webkit-box-shadow:inset 1px 1px 2px rgba(0,0,0,0.1);box-shadow:inset 1px 1px 2px rgba(0,0,0,0.1);}.wp-editor-wrap .wp_themeSkin iframe{background:transparent;}.wp-editor-wrap .wp_themeSkin .mceStatusbar{color:#000;background-color:#f5f5f5;}.wp-editor-wrap .wp_themeSkin .mceButton{border-color:#B0C8D7;background-color:#cfdfe9;background-image:-ms-linear-gradient(bottom,#cfdfe9,#fff);background-image:-moz-linear-gradient(bottom,#cfdfe9,#fff);background-image:-o-linear-gradient(bottom,#cfdfe9,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#cfdfe9),to(#fff));background-image:-webkit-linear-gradient(bottom,#cfdfe9,#fff)!important;background-image:linear-gradient(bottom,#cfdfe9,#fff);}.wp-editor-wrap .wp_themeSkin a.mceButtonEnabled:hover{border-color:#5589AA!important;background-color:#c9c9c9;background-image:-ms-linear-gradient(bottom,#bdccd5,#fff);background-image:-moz-linear-gradient(bottom,#bdccd5,#fff);background-image:-o-linear-gradient(bottom,#bdccd5,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#bdccd5),to(#fff));background-image:-webkit-linear-gradient(bottom,#bdccd5,#fff)!important;background-image:linear-gradient(bottom,#bdccd5,#fff);}.wp-editor-wrap .wp_themeSkin a.mceButton:active,.wp-editor-wrap .wp_themeSkin a.mceButtonEnabled:active,.wp-editor-wrap .wp_themeSkin a.mceButtonSelected:active,.wp-editor-wrap .wp_themeSkin a.mceButtonActive,.wp-editor-wrap .wp_themeSkin a.mceButtonActive:active,.wp-editor-wrap .wp_themeSkin a.mceButtonActive:hover{background:#B0C8D7!important;background-image:-ms-linear-gradient(bottom,#fff,#cfdfe9);background-image:-moz-linear-gradient(bottom,#fff,#cfdfe9);background-image:-o-linear-gradient(bottom,#fff,#cfdfe9);background-image:-webkit-gradient(linear,left bottom,left top,from(#fff),to(#cfdfe9));background-image:-webkit-linear-gradient(bottom,#fff,#cfdfe9)!important;background-image:linear-gradient(bottom,#fff,#cfdfe9);border-color:#5589AA!important;}.wp-editor-wrap .wp_themeSkin .mceButtonDisabled{border-color:#B0C8D7!important;}.wp-editor-wrap .wp_themeSkin .mceListBox .mceText,.wp-editor-wrap .wp_themeSkin .mceListBox .mceOpen{border-color:#B0C8D7;background-color:#cfdfe9;background-image:-ms-linear-gradient(bottom,#cfdfe9,#fff);background-image:-moz-linear-gradient(bottom,#cfdfe9,#fff);background-image:-o-linear-gradient(bottom,#cfdfe9,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#cfdfe9),to(#fff));background-image:-webkit-linear-gradient(bottom,#cfdfe9,#fff)!important;background-image:linear-gradient(bottom,#cfdfe9,#fff);}.wp-editor-wrap .wp_themeSkin .mceListBox .mceOpen{border-left:0!important;}.wp-editor-wrap .wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,.wp-editor-wrap .wp_themeSkin .mceListBoxHover .mceOpen,.wp-editor-wrap .wp_themeSkin .mceListBoxHover:active .mceOpen,.wp-editor-wrap .wp_themeSkin .mceListBoxSelected .mceOpen,.wp-editor-wrap .wp_themeSkin .mceListBoxSelected .mceText,.wp-editor-wrap .wp_themeSkin table.mceListBoxEnabled:active .mceText{background:#B0C8D7;border-color:#5589AA!important;}.wp-editor-wrap .wp_themeSkin table.mceListBoxEnabled:hover .mceText,.wp-editor-wrap .wp_themeSkin .mceListBoxHover .mceText,.wp-editor-wrap .wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,.wp-editor-wrap .wp_themeSkin .mceListBoxHover .mceOpen{border-color:#5589AA!important;background-color:#c9c9c9;background-image:-ms-linear-gradient(bottom,#cfdfe9,#fff);background-image:-moz-linear-gradient(bottom,#cfdfe9,#fff);background-image:-o-linear-gradient(bottom,#cfdfe9,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#cfdfe9),to(#fff));background-image:-webkit-linear-gradient(bottom,#cfdfe9,#fff)!important;background-image:linear-gradient(bottom,#cfdfe9,#fff);}.wp-editor-wrap .wp_themeSkin select.mceListBox{border-color:#B2B2B2;background-color:#fff;}.wp-editor-wrap .wp_themeSkin .mceSplitButton a.mceAction,.wp-editor-wrap .wp_themeSkin .mceSplitButton a.mceOpen{border-color:#B0C8D7;}.wp-editor-wrap .wp_themeSkin .mceSplitButton a.mceOpen:hover,.wp-editor-wrap .wp_themeSkin .mceSplitButtonSelected a.mceOpen,.wp-editor-wrap .wp_themeSkin table.mceSplitButtonEnabled:hover a.mceAction,.wp-editor-wrap .wp_themeSkin .mceSplitButton a.mceAction:hover{border-color:#5589AA!important;}.wp-editor-wrap .wp_themeSkin table.mceSplitButton td{background-color:#cfdfe9;background-image:-ms-linear-gradient(bottom,#cfdfe9,#fff);background-image:-moz-linear-gradient(bottom,#cfdfe9,#fff);background-image:-o-linear-gradient(bottom,#cfdfe9,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#cfdfe9),to(#fff));background-image:-webkit-linear-gradient(bottom,#cfdfe9,#fff)!important;background-image:linear-gradient(bottom,#cfdfe9,#fff);}.wp-editor-wrap .wp_themeSkin table.mceSplitButton:hover td{background-image:-ms-linear-gradient(bottom,#cfdfe9,#fff);background-image:-moz-linear-gradient(bottom,#cfdfe9,#fff);background-image:-o-linear-gradient(bottom,#cfdfe9,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#cfdfe9),to(#fff));background-image:-webkit-linear-gradient(bottom,#cfdfe9,#fff)!important;background-image:linear-gradient(bottom,#cfdfe9,#fff);}.wp-editor-wrap .wp_themeSkin .mceSplitButtonActive{background-color:#B0C8D7;}.wp-editor-wrap .wp_themeSkin div.mceColorSplitMenu table{background-color:#ebebeb;border-color:#B2B2B2;}.wp-editor-wrap .wp_themeSkin .mceColorSplitMenu a{border-color:#B2B2B2;}.wp-editor-wrap .wp_themeSkin .mceColorSplitMenu a.mceMoreColors{border-color:#fff;}.wp-editor-wrap .wp_themeSkin .mceColorSplitMenu a.mceMoreColors:hover{border-color:#0A246A;background-color:#B6BDD2;}.wp-editor-wrap .wp_themeSkin a.mceMoreColors:hover{border-color:#0A246A;}.wp-editor-wrap .wp_themeSkin .mceMenu{border-color:#ddd;}.wp-editor-wrap .wp_themeSkin .mceMenu table{background-color:#ebeaeb;}.wp-editor-wrap .wp_themeSkin .mceMenu .mceText{color:#000;}.wp-editor-wrap .wp_themeSkin .mceMenu .mceMenuItemEnabled a:hover,.wp-editor-wrap .wp_themeSkin .mceMenu .mceMenuItemActive{background-color:#f5f5f5;}.wp-editor-wrap .wp_themeSkin td.mceMenuItemSeparator{background-color:#aaa;}.wp-editor-wrap .wp_themeSkin .mceMenuItemTitle a{background-color:#ccc;border-bottom-color:#aaa;}.wp-editor-wrap .wp_themeSkin .mceMenuItemTitle span.mceText{color:#000;}.wp-editor-wrap .wp_themeSkin .mceMenuItemDisabled .mceText{color:#888;}.wp-editor-wrap .wp_themeSkin tr.mceFirst td.mceToolbar{background:#cfdfe9 url("../images/ed-bg-vs.gif?ver=20101102") repeat-x scroll left top;border-color:#cfdfe9;}.wp-admin #mceModalBlocker{background:#000;}.wp-admin .clearlooks2 .mceFocus .mceTop .mceLeft{background:#444;border-left:1px solid #999;border-top:1px solid #999;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;}.wp-admin .clearlooks2 .mceFocus .mceTop .mceRight{background:#444;border-right:1px solid #999;border-top:1px solid #999;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;}.wp-admin .clearlooks2 .mceMiddle .mceLeft{background:#f1f1f1;border-left:1px solid #999;}.wp-admin .clearlooks2 .mceMiddle .mceRight{background:#f1f1f1;border-right:1px solid #999;}.wp-admin .clearlooks2 .mceBottom{background:#f1f1f1;border-bottom:1px solid #999;}.wp-admin .clearlooks2 .mceBottom .mceLeft{background:#f1f1f1;border-bottom:1px solid #999;border-left:1px solid #999;}.wp-admin .clearlooks2 .mceBottom .mceCenter{background:#f1f1f1;border-bottom:1px solid #999;}.wp-admin .clearlooks2 .mceBottom .mceRight{background:#f1f1f1;border-bottom:1px solid #999;border-right:1px solid #999;}.wp-admin .clearlooks2 .mceFocus .mceTop span{color:#e5e5e5;}.wp-editor-wrap .wp-switch-editor{background-color:#f5fafd;border-color:#d1e5ee #d1e5ee #d1e5ee;color:#999;}.wp-editor-wrap.tmce-active .switch-tmce,.wp-editor-wrap.html-active .switch-html{background-color:#eff8ff;border-color:#d1e5ee #d1e5ee #eff8ff;color:#333;}.wp-editor-wrap.quicktags-toolbar input{color:#464646;border-color:#d1e5ee;background-color:#eff8ff;background-image:-ms-linear-gradient(bottom,#eff8ff,#fff);background-image:-moz-linear-gradient(bottom,#eff8ff,#fff);background-image:-o-linear-gradient(bottom,#eff8ff,#fff);background-image:-webkit-linear-gradient(bottom,#eff8ff,#fff);background-image:linear-gradient(bottom,#eff8ff,#fff);}.wp-editor-wrap .quicktags-toolbar,.wp-editor-wrap.wp_themeSkin tr.mceFirst td.mceToolbar{border-bottom:1px solid #ccc;background-color:#eff8ff;background-image:-ms-linear-gradient(bottom,#cfdfe9,#eff8ff);background-image:-moz-linear-gradient(bottom,#cfdfe9,#eff8ff);background-image:-o-linear-gradient(bottom,#cfdfe9,#eff8ff);background-image:-webkit-linear-gradient(bottom,#cfdfe9,#eff8ff);background-image:linear-gradient(bottom,#cfdfe9,#eff8ff);}.wp-editor-wrap .quicktags-toolbar input:hover{border-color:#aaa;background:#ddd;}.wp-editor-wrap.wp_themeSkin .mceButton,.wp-editor-wrap.wp_themeSkin .mceListBox .mceText,.wp-editor-wrap.wp_themeSkin .mceListBox .mceOpen{border-color:#ccc;background-color:#eff8ff;background-image:-ms-linear-gradient(bottom,#eff8ff,#fff);background-image:-moz-linear-gradient(bottom,#eff8ff,#fff);background-image:-o-linear-gradient(bottom,#eff8ff,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#eff8ff),to(#fff));background-image:-webkit-linear-gradient(bottom,#eff8ff,#fff);background-image:linear-gradient(bottom,#eff8ff,#fff);}.wp-editor-wrap.wp_themeSkin a.mceButtonEnabled:hover{border-color:#a0a0a0;background:#ddd;background-image:-ms-linear-gradient(bottom,#cfdfe9,#fff);background-image:-moz-linear-gradient(bottom,#cfdfe9,#fff);background-image:-o-linear-gradient(bottom,#cfdfe9,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#cfdfe9),to(#fff));background-image:-webkit-linear-gradient(bottom,#cfdfe9,#fff);background-image:linear-gradient(bottom,#cfdfe9,#fff);}#titlediv #title{border-color:#bdccd5;}#editorcontainer{border-color:#bdccd5 #bdccd5 #d0dfe9;}#post-status-info{border-color:#d0dfe9 #bdccd5 #bdccd5;}.editwidget .widget-inside{border-color:#d0dfe9;}#titlediv #title{background-color:#fff;}#tTips p#tTips_inside{background-color:#ddd;color:#333;}#timestampdiv input,#namediv input,#poststuff .inside .the-tagcloud{border-color:#ddd;}#adminmenuback,#adminmenuwrap{background-color:#EFF8FF;border-color:#D1E5EE;}#adminmenushadow,#adminmenuback{background-image:url(../images/menu-shadow.png);background-position:top right;background-repeat:repeat-y;}#adminmenu li.wp-menu-separator{background:#D1E5EE;border-color:#bed1dd;}#adminmenu div.separator{border-color:#D1E5EE;}#adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,#adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle{background:transparent url(../images/arrows-dark-vs.png) no-repeat -1px 6px;}#adminmenu .wp-has-submenu:hover .wp-menu-toggle,#adminmenu .wp-menu-open .wp-menu-toggle{background:transparent url(../images/arrows-vs.png) no-repeat -2px 6px;}#adminmenu a.menu-top,.folded #adminmenu li.menu-top,#adminmenu .wp-submenu .wp-submenu-head{border-top-color:#fff;border-bottom-color:#cae6ff;}#adminmenu li.wp-menu-open{border-color:#d1e5ee;}#adminmenu li.menu-top:hover>a,#adminmenu li.menu-top.focused>a,#adminmenu li.menu-top>a:focus{background-color:#e0f1ff;text-shadow:0 1px 0 rgba(255,255,255,0.4);}#adminmenu li.wp-has-current-submenu a.wp-has-current-submenu,#adminmenu li.current a.menu-top,.folded #adminmenu li.wp-has-current-submenu,.folded #adminmenu li.current.menu-top,#adminmenu .wp-menu-arrow,#adminmenu .wp-has-current-submenu .wp-submenu .wp-submenu-head{background-color:#5589AA;background-image:-ms-linear-gradient(bottom,#5589AA,#619bbb);background-image:-moz-linear-gradient(bottom,#5589AA,#619bbb);background-image:-o-linear-gradient(bottom,#5589AA,#619bbb);background-image:-webkit-gradient(linear,left bottom,left top,from(#5589AA),to(#619bbb));background-image:-webkit-linear-gradient(bottom,#5589AA,#619bbb);background-image:linear-gradient(bottom,#5589AA,#619bbb);}#adminmenu .wp-menu-arrow div{background-color:#5589AA;background-image:-ms-linear-gradient(right bottom,#5589AA,#619bbb);background-image:-moz-linear-gradient(right bottom,#5589AA,#619bbb);background-image:-o-linear-gradient(right bottom,#5589AA,#619bbb);background-image:-webkit-gradient(linear,right bottom,left top,from(#5589AA),to(#619bbb));background-image:-webkit-linear-gradient(right bottom,#5589AA,#619bbb);background-image:linear-gradient(right bottom,#5589AA,#619bbb);}#adminmenu li.wp-not-current-submenu .wp-menu-arrow{border-top-color:#fff;border-bottom-color:#cae6ff;background:#e0f1ff;}#adminmenu li.wp-not-current-submenu .wp-menu-arrow div{background:#e0f1ff;border-color:#cae6ff;}.folded #adminmenu li.menu-top li:hover a{background-image:none;}#adminmenu li.wp-has-current-submenu a.wp-has-current-submenu,#adminmenu li.current a.menu-top,#adminmenu .wp-has-current-submenu .wp-submenu .wp-submenu-head{text-shadow:0 -1px 0 #333;color:#fff;border-top-color:#5A8FAD;border-bottom-color:#5589AA;}.folded #adminmenu li.wp-has-current-submenu,.folded #adminmenu li.current.menu-top{border-top-color:#5A8FAD;border-bottom-color:#5589AA;}#adminmenu .wp-submenu a:hover,#adminmenu .wp-submenu a:focus{background-color:#EFF8FF;color:#333;}#adminmenu .wp-submenu li.current,#adminmenu .wp-submenu li.current a,#adminmenu .wp-submenu li.current a:hover{color:#333;}#adminmenu .wp-submenu ul{background-color:#fff;}#adminmenu .wp-submenu-wrap,#adminmenu .wp-submenu ul{border-color:#d0dfe9;}#adminmenu .wp-submenu-wrap,.folded #adminmenu .wp-has-current-submenu .wp-submenu-wrap{-moz-box-shadow:2px 2px 5px rgba(0,0,0,0.4);-webkit-box-shadow:2px 2px 5px rgba(0,0,0,0.4);box-shadow:2px 2px 5px rgba(0,0,0,0.4);}#adminmenu .wp-submenu .wp-submenu-head{border-right-color:#e8eff4;background-color:#EFF8FF;}#adminmenu div.wp-submenu{background-color:transparent;}#collapse-menu{color:#A0C3D5;}#collapse-menu:hover{color:#5A8FAD;}#collapse-button{border-color:#d0dfe9;background-color:#eff8ff;background-image:-ms-linear-gradient(bottom,#eff8ff,#fff);background-image:-moz-linear-gradient(bottom,#eff8ff,#fff);background-image:-o-linear-gradient(bottom,#eff8ff,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#eff8ff),to(#fff));background-image:-webkit-linear-gradient(bottom,#eff8ff,#fff);background-image:linear-gradient(bottom,#eff8ff,#fff);}#collapse-menu:hover #collapse-button{border-color:#A0C3D5;}#collapse-button div{background:transparent url(../images/arrows-vs.png) no-repeat 0 -72px;}.folded #collapse-button div{background-position:0 -108px;}.icon16.icon-dashboard,#adminmenu .menu-icon-dashboard div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -60px -33px;}#adminmenu .menu-icon-dashboard:hover div.wp-menu-image,#adminmenu .menu-icon-dashboard.wp-has-current-submenu div.wp-menu-image,#adminmenu .menu-icon-dashboard.current div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -60px -1px;}.icon16.icon-post,#adminmenu .menu-icon-post div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -271px -33px;}#adminmenu .menu-icon-post:hover div.wp-menu-image,#adminmenu .menu-icon-post.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -271px -1px;}.icon16.icon-media,#adminmenu .menu-icon-media div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -120px -33px;}#adminmenu .menu-icon-media:hover div.wp-menu-image,#adminmenu .menu-icon-media.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -120px -1px;}.icon16.icon-links,#adminmenu .menu-icon-links div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -90px -33px;}#adminmenu .menu-icon-links:hover div.wp-menu-image,#adminmenu .menu-icon-links.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -90px -1px;}.icon16.icon-page,#adminmenu .menu-icon-page div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -150px -33px;}#adminmenu .menu-icon-page:hover div.wp-menu-image,#adminmenu .menu-icon-page.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -150px -1px;}.icon16.icon-comments,#adminmenu .menu-icon-comments div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -30px -33px;}#adminmenu .menu-icon-comments:hover div.wp-menu-image,#adminmenu .menu-icon-comments.wp-has-current-submenu div.wp-menu-image,#adminmenu .menu-icon-comments.current div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -30px -1px;}.icon16.icon-appearance,#adminmenu .menu-icon-appearance div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll 0 -33px;}#adminmenu .menu-icon-appearance:hover div.wp-menu-image,#adminmenu .menu-icon-appearance.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll 0 -1px;}.icon16.icon-plugins,#adminmenu .menu-icon-plugins div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -180px -33px;}#adminmenu .menu-icon-plugins:hover div.wp-menu-image,#adminmenu .menu-icon-plugins.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -180px -1px;}.icon16.icon-users,#adminmenu .menu-icon-users div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -300px -33px;}#adminmenu .menu-icon-users:hover div.wp-menu-image,#adminmenu .menu-icon-users.wp-has-current-submenu div.wp-menu-image,#adminmenu .menu-icon-users.current div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -300px -1px;}.icon16.icon-tools,#adminmenu .menu-icon-tools div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -210px -33px;}#adminmenu .menu-icon-tools:hover div.wp-menu-image,#adminmenu .menu-icon-tools.wp-has-current-submenu div.wp-menu-image,#adminmenu .menu-icon-tools.current div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -210px -1px;}.icon16.icon-settings,#icon-options-general,#adminmenu .menu-icon-settings div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -240px -33px;}#adminmenu .menu-icon-settings:hover div.wp-menu-image,#adminmenu .menu-icon-settings.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -240px -1px;}.icon16.icon-site,#adminmenu .menu-icon-site div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -360px -33px;}#adminmenu .menu-icon-site:hover div.wp-menu-image,#adminmenu .menu-icon-site.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -360px -1px;}.icon32.icon-post,#icon-edit,#icon-post{background:transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -552px -5px;}.icon32.icon-dashboard,#icon-index{background:transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -137px -5px;}.icon32.icon-media,#icon-upload{background:transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -251px -5px;}.icon32.icon-links,#icon-link-manager,#icon-link,#icon-link-category{background:transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -190px -5px;}.icon32.icon-page,#icon-edit-pages,#icon-page{background:transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -312px -5px;}.icon32.icon-comments,#icon-edit-comments{background:transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -72px -5px;}.icon32.icon-appearance,#icon-themes{background:transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -11px -5px;}.icon32.icon-plugins,#icon-plugins{background:transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -370px -5px;}.icon32.icon-users,#icon-users,#icon-profile,#icon-user-edit{background:transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -600px -5px;}.icon32.icon-tools,#icon-tools,#icon-admin{background:transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -432px -5px;}.icon32.icon-settings,#icon-options-general{background:transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -492px -5px;}.icon32.icon-site,#icon-ms-admin{background:transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -659px -5px;}table.diff .diff-deletedline{background-color:#fdd;}table.diff .diff-deletedline del{background-color:#f99;}table.diff .diff-addedline{background-color:#dfd;}table.diff .diff-addedline ins{background-color:#9f9;}#att-info{background-color:#E4F2FD;}#sidemenu a{background-color:#f9f9f9;border-color:#f9f9f9;border-bottom-color:#dfdfdf;}#sidemenu a.current{background-color:#fff;border-color:#dfdfdf #dfdfdf #fff;color:#D54E21;}#screen-meta{background-color:#EFF8FF;border-color:#D1E5EE;-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.05);box-shadow:0 1px 3px rgba(0,0,0,0.05);}#contextual-help-back{background:#fff;}.contextual-help-tabs a:hover{background-color:#ceeaff;color:#333;}#contextual-help-back,.contextual-help-tabs .active{border-color:#D1E5EE;}.contextual-help-tabs .active,.contextual-help-tabs .active a,.contextual-help-tabs .active a:hover{background:#fff;color:#000;}#screen-options-link-wrap,#contextual-help-link-wrap{background-color:#eff8ff;border-right:1px solid #D1E5EE;border-left:1px solid #D1E5EE;border-bottom:1px solid #D1E5EE;background-image:-ms-linear-gradient(bottom,#eff8ff,#fff);background-image:-moz-linear-gradient(bottom,#eff8ff,#fff);background-image:-o-linear-gradient(bottom,#eff8ff,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#eff8ff),to(#fff));background-image:-webkit-linear-gradient(bottom,#eff8ff,#fff);background-image:linear-gradient(bottom,#eff8ff,#fff);}#screen-meta-links a.show-settings{color:#606060;}#screen-meta-links a.show-settings:hover{color:#000;}#screen-meta-links a.show-settings{background:transparent url(../images/arrows.png) no-repeat right 3px;}#screen-meta-links a.show-settings.screen-meta-active{background:transparent url(../images/arrows.png) no-repeat right -33px;}#replyerror{border-color:#ddd;background-color:#f9f9f9;}.vim-current,.vim-current th,.vim-current td{background-color:#E4F2FD!important;}.star-average,.star.star-rating{background-color:#fc0;}div.star.select:hover{background-color:#d00;}div.star img{border-left:1px solid #fff;border-right:1px solid #fff;}#plugin-information .fyi ul{background-color:#eaf3fa;}#plugin-information .fyi h2.mainheader{background-color:#cee1ef;}#plugin-information pre,#plugin-information code{background-color:#ededff;}#plugin-information pre{border:1px solid #ccc;}.inline-edit-row fieldset input[type="text"],.inline-edit-row fieldset textarea,#bulk-titles{border-color:#ddd;}.inline-editor div.title{background-color:#EAF3FA;}.inline-editor ul.cat-checklist{background-color:#fff;border-color:#ddd;}.inline-editor .categories .catshow,.inline-editor .categories .cathide{color:#21759b;}.inline-editor .quick-edit-save{background-color:#f1f1f1;}fieldset.inline-edit-col-right .inline-edit-col{border-color:#dfdfdf;}.attention{color:#D54E21;}.meta-box-sortables .postbox:hover .handlediv{background:transparent url(../images/arrows-vs.png) no-repeat 6px 7px;}.tablenav .tablenav-pages{color:#555;}.tablenav .tablenav-pages a{border-color:#d1e5ee;background:#eee url('../images/menu-bits-vs.gif?ver=20101102') repeat-x scroll left -379px;}.tablenav .tablenav-pages a:hover,.tablenav .tablenav-pages a:focus{color:#d54e21;}.tablenav .tablenav-pages a.disabled,.tablenav .tablenav-pages a.disabled:hover,.tablenav .tablenav-pages a.disabled:focus{color:#aaa;}.tablenav .tablenav-pages .current{background:#dfdfdf;border-color:#d3d3d3;}#availablethemes,#availablethemes td{border-color:#ddd;}#current-theme img{border-color:#999;}#TB_window #TB_title a.tb-theme-preview-link,#TB_window #TB_title a.tb-theme-preview-link:visited{color:#999;}#TB_window #TB_title a.tb-theme-preview-link:hover,#TB_window #TB_title a.tb-theme-preview-link:focus{color:#ccc;}.misc-pub-section{border-top-color:#fff;border-bottom-color:#eee;}#minor-publishing{border-bottom-color:#ddd;}#post-body .misc-pub-section{border-right-color:#eee;}.post-com-count span{background-color:#bbb;}.form-table .color-palette td{border-color:#fff;}.sortable-placeholder{border-color:#bbb;background-color:#f5f5f5;}#post-body ul.category-tabs li.tabs a,#post-body ul.add-menu-item-tabs li.tabs a,body.press-this ul.category-tabs li.tabs a{color:#333;}.view-switch #view-switch-list{background:transparent url(../images/list.png) no-repeat 0 0;}.view-switch .current #view-switch-list{background:transparent url(../images/list.png) no-repeat -40px 0;}.view-switch #view-switch-excerpt{background:transparent url(../images/list.png) no-repeat -20px 0;}.view-switch .current #view-switch-excerpt{background:transparent url(../images/list.png) no-repeat -60px 0;}#header-logo{background:transparent url(../images/wp-logo-vs.png?ver=20101102) no-repeat scroll center center;}.popular-tags,.feature-filter{background-color:#fff;border-color:#DFDFDF;}#theme-information .action-button{border-top-color:#DFDFDF;}.theme-listing br.line{border-bottom-color:#ccc;}div.widgets-sortables,#widgets-left .inactive{background-color:#f7fcfe;border-color:#d0dfe9;}#available-widgets .widget-holder{background-color:#f7fcfe;border-color:#d0dfe9;}#available-widgets .widget-description{color:#555;}.sidebar-name{color:#464646;background-color:#f7fcfe;background-image:-ms-linear-gradient(top,#ECF8FE,#f7fcfe);background-image:-moz-linear-gradient(top,#ECF8FE,#f7fcfe);background-image:-o-linear-gradient(top,#ECF8FE,#f7fcfe);background-image:-webkit-gradient(linear,left top,left bottom,from(#ECF8FE),to(#f7fcfe));background-image:-webkit-linear-gradient(top,#ECF8FE,#f7fcfe);background-image:linear-gradient(top,#ECF8FE,#f7fcfe);text-shadow:#fff 0 1px 0;border-color:#d0dfe9;-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;}.sidebar-name:hover,#removing-widget{color:#d54e21;}#removing-widget span{color:black;}.sidebar-name-arrow{background:transparent url(../images/arrows-vs.png) no-repeat 5px 9px;}.sidebar-name:hover .sidebar-name-arrow{background:transparent url(../images/arrows-dark-vs.png) no-repeat 5px 9px;}.in-widget-title{color:#606060;}.deleting .widget-title *{color:#aaa;}.imgedit-menu div{border-color:#d5d5d5;background-color:#f1f1f1;}.imgedit-menu div:hover{border-color:#c1c1c1;background-color:#eaeaea;}.imgedit-menu div.disabled{border-color:#ccc;background-color:#ddd;filter:alpha(opacity=50);opacity:.5;}#dashboard_recent_comments div.undo{border-top-color:#dfdfdf;}.comment-ays,.comment-ays th{border-color:#ddd;}.comment-ays th{background-color:#f1f1f1;}#menu-management .menu-edit{border-color:#d0dfe9;}#post-body{background:#fff;border-top-color:#fff;border-bottom-color:#d0dfe9;}#nav-menu-header{border-bottom-color:#d0dfe9;}#nav-menu-footer{border-top-color:#fff;}#menu-management .nav-tabs-arrow a{color:#C1C1C1;}#menu-management .nav-tabs-arrow a:hover{color:#D54E21;}#menu-management .nav-tabs-arrow a:active{color:#464646;}#menu-management .nav-tab-active{border-color:#dfdfdf;}#menu-management .nav-tab{background:#f7fcfe;border-color:#d0dfe9;}.js .input-with-default-title{color:#aaa;}#cancel-save{color:#f00;}#cancel-save:hover{background-color:#F00;color:#fff;}.list-container{border-color:#dfdfdf;}.menu-item-handle{border-color:#d0dfe9;}.menu li.deleting .menu-item-handle{background-color:#f66;text-shadow:#ccc;}.item-type{color:#999;}.item-controls .menu-item-delete:hover{color:#f00;}.nav-menus-php .item-edit{background:transparent url(../images/arrows-vs.png) no-repeat 8px 10px;border-bottom-color:#eff8ff;}.item-edit:hover{background:transparent url(../images/arrows-dark-vs.png) no-repeat 8px 10px;}.menu-item-settings{border-color:#d0dfe9;}.link-to-original{color:#777;border-color:#d0dfe9;}#cancel-save:hover{color:#fff!important;}#update-menu-item{color:#fff!important;}#update-menu-item:hover,#update-menu-item:active,#update-menu-item:focus{color:#eaf2fa!important;border-color:#13455b!important;}.submitbox .submitcancel{color:#21759B;border-bottom-color:#21759B;}.submitbox .submitcancel:hover{background:#21759B;color:#fff;}#menu-management .nav-tab-active,.menu-item-handle,.menu-item-settings{-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;}#menu-management .nav-tab-active{background:#eff8ff;border-bottom-color:#eff8ff;}#upload-form label{color:#777;}.fullscreen-overlay{background:#fff;}.wp-fullscreen-focus #wp-fullscreen-title,.wp-fullscreen-focus #wp-fullscreen-container{border-color:#BED1DD;}#fullscreen-topbar{border-bottom-color:#D1E5EE;}.about-wrap h1{color:#333;text-shadow:1px 1px 1px white;}.about-text{color:#777;}.wp-badge{color:#fff;text-shadow:0 -1px 0 rgba(22,57,81,0.3);}.about-wrap h2 .nav-tab{color:#21759B;}.about-wrap h2 .nav-tab:hover{color:#d54e21;}.about-wrap h2 .nav-tab-active,.about-wrap h2 .nav-tab-active:hover{color:#333;}.about-wrap h2 .nav-tab-active{text-shadow:1px 1px 1px white;color:#464646;}.about-wrap h3{color:#333;text-shadow:1px 1px 1px white;}.about-wrap .feature-section h4{color:#464646;}.about-wrap .feature-section img{background:#fff;border-color:#dfdfdf;-moz-box-shadow:0 0 6px rgba(0,0,0,0.3);-webkit-box-shadow:0 0 6px rgba(0,0,0,0.3);box-shadow:0 0 6px rgba(0,0,0,0.3);}.about-wrap .point-releases{border-bottom:1px solid #dfdfdf;}.about-wrap .point-releases h3{border-top:1px solid #dfdfdf;}.about-wrap .point-releases h3:first-child{border:0;}.about-wrap h4.wp-people-group{text-shadow:1px 1px 1px white;}.about-wrap li.wp-person img.gravatar{-moz-box-shadow:0 0 4px rgba(0,0,0,0.4);-webkit-box-shadow:0 0 4px rgba(0,0,0,0.4);box-shadow:0 0 4px rgba(0,0,0,0.4);}.about-wrap li.wp-person .title{color:#464646;text-shadow:1px 1px 1px white;}.freedoms-php .about-wrap ol li{color:#999;}.freedoms-php .about-wrap ol p{color:#464646;}.rtl .bar{border-right-color:none;border-left-color:#99d;}.rtl .post-com-count{background-image:url(../images/bubble_bg-rtl.gif);}.rtl #screen-meta-links a.show-settings{background-position:left 3px;}.rtl #screen-meta-links a.show-settings.screen-meta-active{background-position:left -33px;}.rtl #adminmenushadow,.rtl #adminmenuback{background-image:url(../images/menu-shadow-rtl.png);background-position:top left;}.rtl #adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,.rtl #adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle{background:transparent url(../images/arrows-dark-vs.png) no-repeat 8px 6px;}.rtl #adminmenu .wp-has-submenu:hover .wp-menu-toggle,.rtl #adminmenu .wp-menu-open .wp-menu-toggle{background:transparent url(../images/arrows-vs.png) no-repeat 8px 6px;}.rtl #adminmenu .wp-submenu .wp-submenu-head{border-right-color:none;border-left-color:#d1e5ee;}.rtl #adminmenu .wp-submenu-wrap,.rtl.folded #adminmenu .wp-has-current-submenu .wp-submenu-wrap{-moz-box-shadow:-2px 2px 5px rgba(0,0,0,0.4);-webkit-box-shadow:-2px 2px 5px rgba(0,0,0,0.4);box-shadow:-2px 2px 5px rgba(0,0,0,0.4);}.rtl #collapse-button div{background-position:0 -108px;}.rtl.folded #collapse-button div{background-position:0 -72px;}.rtl .meta-box-sortables .postbox:hover .handlediv{background:transparent url(../images/arrows-vs.png) no-repeat 6px 7px;}.rtl .tablenav .tablenav-pages a{border-color:#d1e5ee;background:#eee url('../images/menu-bits-rtl-vs.gif?ver=20100610') repeat-x scroll right -379px;}.rtl #post-body .misc-pub-section{border-right-color:none;border-left-color:#d1e5ee;}.rtl .sidebar-name-arrow{background:transparent url(../images/arrows-vs.png) no-repeat 5px 9px;}.rtl .sidebar-name:hover .sidebar-name-arrow{background:transparent url(../images/arrows-dark-vs.png) no-repeat 5px 9px;}
\ No newline at end of file
index 329d32e63c7df09d5811c1e4bbc0bb0ccbc75660..3c71473c960e285f8cf8748a72e02ec9e955018b 100644 (file)
@@ -1,3 +1,25 @@
+/*------------------------------------------------------------------------------
+
+
+Howdy! This is the CSS file that controls the
+Blue (classic) color style on the WordPress Dashboard.
+
+This file contains both LTR and RTL styles.
+
+
+TABLE OF CONTENTS:
+------------------
+ 1.0 - Left to Right Styles
+ 2.0 - Right to Left Styles
+
+
+------------------------------------------------------------------------------*/
+
+
+/*------------------------------------------------------------------------------
+  1.0 - Left to Right Styles
+------------------------------------------------------------------------------*/
+
 html,
 .wp-dialog {
        background-color: #fff;
 html,
 .wp-dialog {
        background-color: #fff;
@@ -15,6 +37,11 @@ input[type="file"],
 input[type="button"],
 input[type="submit"],
 input[type="reset"],
 input[type="button"],
 input[type="submit"],
 input[type="reset"],
+input[type="email"],
+input[type="number"],
+input[type="search"],
+input[type="tel"],
+input[type="url"],
 select {
        border-color: #dfdfdf;
        background-color: #fff;
 select {
        border-color: #dfdfdf;
        background-color: #fff;
@@ -60,8 +87,7 @@ body > #upload-menu {
 #your-profile fieldset,
 #rightnow,
 div.dashboard-widget,
 #your-profile fieldset,
 #rightnow,
 div.dashboard-widget,
-#dashboard-widgets p.dashboard-widget-links,
-#replyrow #ed_reply_toolbar input {
+#dashboard-widgets p.dashboard-widget-links {
        border-color: #D1E5EE
 }
 
        border-color: #D1E5EE
 }
 
@@ -278,14 +304,6 @@ div.error a {
        color: #666;
 }
 
        color: #666;
 }
 
-.media-item {
-       border-bottom-color: #dfdfdf;
-}
-
-#wpbody-content #media-items .describe {
-       border-top-color: #dfdfdf;
-}
-
 .media-upload-form label.form-help,
 td.help {
        color: #9a9a9a;
 .media-upload-form label.form-help,
 td.help {
        color: #9a9a9a;
@@ -398,8 +416,8 @@ a:focus {
        color: #d54e21;
 }
 
        color: #d54e21;
 }
 
-#wphead #viewsite a:hover,
 #adminmenu a:hover,
 #adminmenu a:hover,
+#adminmenu li.menu-top > a:focus,
 #adminmenu ul.wp-submenu a:hover,
 #the-comment-list .comment a:hover,
 #rightnow a:hover,
 #adminmenu ul.wp-submenu a:hover,
 #the-comment-list .comment a:hover,
 #rightnow a:hover,
@@ -532,8 +550,6 @@ h3.dashboard-widget-title small a:hover {
 
 a,
 #adminmenu a,
 
 a,
 #adminmenu a,
-#poststuff #edButtonPreview,
-#poststuff #edButtonHTML,
 #the-comment-list p.comment-author strong a,
 #media-upload a.del-link,
 #media-items a.delete,
 #the-comment-list p.comment-author strong a,
 #media-upload a.del-link,
 #media-items a.delete,
@@ -549,7 +565,6 @@ a,
        background-color: #464646;
        color: #fff;
        -moz-box-shadow: rgba(255,255,255,0.5) 0 1px 0;
        background-color: #464646;
        color: #fff;
        -moz-box-shadow: rgba(255,255,255,0.5) 0 1px 0;
-       -khtml-box-shadow: rgba(255,255,255,0.5) 0 1px 0;
        -webkit-box-shadow: rgba(255,255,255,0.5) 0 1px 0;
        box-shadow: rgba(255,255,255,0.5) 0 1px 0;
 }
        -webkit-box-shadow: rgba(255,255,255,0.5) 0 1px 0;
        box-shadow: rgba(255,255,255,0.5) 0 1px 0;
 }
@@ -563,7 +578,6 @@ a,
        background-color: #464646;
        color: #fff;
        -moz-box-shadow: rgba(255,255,255,0.5) 0 1px 0;
        background-color: #464646;
        color: #fff;
        -moz-box-shadow: rgba(255,255,255,0.5) 0 1px 0;
-       -khtml-box-shadow: rgba(255,255,255,0.5) 0 1px 0;
        -webkit-box-shadow: rgba(255,255,255,0.5) 0 1px 0;
        box-shadow: rgba(255,255,255,0.5) 0 1px 0;
 }
        -webkit-box-shadow: rgba(255,255,255,0.5) 0 1px 0;
        box-shadow: rgba(255,255,255,0.5) 0 1px 0;
 }
@@ -586,9 +600,14 @@ input.readonly, textarea.readonly {
        background-color: #ddd;
 }
 
        background-color: #ddd;
 }
 
-#ed_toolbar input,
-#ed_reply_toolbar input {
-       background: #fff url("../images/fade-butt.png") repeat-x 0 -2px;
+.quicktags-toolbar input {
+       background: #fff;
+       background-image: -ms-linear-gradient(bottom, #e5f0f8, #fff); /* IE10 */
+       background-image: -moz-linear-gradient(bottom, #e5f0f8, #fff); /* Firefox */
+       background-image: -o-linear-gradient(bottom, #e5f0f8, #fff); /* Opera */
+       background-image: -webkit-gradient(linear, left bottom, left top, from(#e5f0f8), to(#fff)); /* old Webkit        */
+       background-image: -webkit-linear-gradient(bottom, #e5f0f8, #fff) !important; /* new Webkit */
+       background-image: linear-gradient(bottom, #e5f0f8, #fff); /* proposed W3C Markup */
 }
 
 #editable-post-name {
 }
 
 #editable-post-name {
@@ -617,7 +636,8 @@ input.readonly, textarea.readonly {
        border-color: #b0c8d7;
 }
 
        border-color: #b0c8d7;
 }
 
-#media-items,
+#media-items .media-item,
+.media-item .describe,
 .imgedit-group {
        border-color: #dfdfdf;
 }
 .imgedit-group {
        border-color: #dfdfdf;
 }
@@ -633,7 +653,7 @@ input.readonly, textarea.readonly {
 .plugins .inactive th,
 .plugins .inactive td,
 tr.inactive + tr.plugin-update-tr .plugin-update {
 .plugins .inactive th,
 .plugins .inactive td,
 tr.inactive + tr.plugin-update-tr .plugin-update {
-       background-color: #efede7;
+       background-color: #f4f4f4;
 }
 
 .plugin-update-tr .update-message {
 }
 
 .plugin-update-tr .update-message {
@@ -677,6 +697,19 @@ table.widefat span.spam a,
        color: #bc0b0b;
 }
 
        color: #bc0b0b;
 }
 
+.welcome-panel {
+       border-color: #d1e5ee;
+}
+.welcome-panel p {
+       color: #777;
+}
+.welcome-panel-column p {
+       color: #464646;
+}
+.welcome-panel h3 {
+       text-shadow: 1px 1px 1px white;
+}
+
 .widget,
 #widget-list .widget-top,
 .postbox,
 .widget,
 #widget-list .widget-top,
 .postbox,
@@ -687,8 +720,6 @@ table.widefat span.spam a,
        -moz-box-shadow: inset 0 1px 0 #fff;
        -webkit-box-shadow: inset 0 1px 0 #fff;
        box-shadow: inset 0 1px 0 #fff;
        -moz-box-shadow: inset 0 1px 0 #fff;
        -webkit-box-shadow: inset 0 1px 0 #fff;
        box-shadow: inset 0 1px 0 #fff;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
        -webkit-border-radius: 3px;
        border-radius: 3px;
 }
        -webkit-border-radius: 3px;
        border-radius: 3px;
 }
@@ -757,60 +788,6 @@ table.widefat span.spam a,
        color: #174f69;
 }
 
        color: #174f69;
 }
 
-#user_info {
-       color: #777;
-}
-
-#user_info:hover,
-#user_info.active {
-       color: #185069;
-}
-
-#user_info.active {
-       background-color: #f7fcfe; /* Fallback */
-       background-image: -ms-linear-gradient(bottom, #f7fcfe, #f9f9f9); /* IE10 */
-       background-image: -moz-linear-gradient(bottom, #f7fcfe, #f9f9f9); /* Firefox */
-       background-image: -o-linear-gradient(bottom, #f7fcfe, #f9f9f9); /* Opera */
-       background-image: -webkit-gradient(linear, left bottom, left top, from(#f7fcfe), to(#f9f9f9)); /* old Webkit */
-       background-image: -webkit-linear-gradient(bottom, #f7fcfe, #f9f9f9); /* new Webkit */
-       background-image: linear-gradient(bottom, #f7fcfe, #f9f9f9); /* proposed W3C Markup */
-       border-color: #d0dfe9 #d0dfe9 #d0dfe9;
-}
-
-#user_info_arrow {
-       background: transparent url(../images/arrows-vs.png) no-repeat 6px 5px;
-}
-
-#user_info:hover #user_info_arrow,
-#user_info.active #user_info_arrow {
-       background: transparent url(../images/arrows-dark-vs.png) no-repeat 6px 5px;
-}
-
-#user_info_links {
-       -moz-box-shadow: 0 3px 2px -2px rgba( 0, 0, 0, 0.2 );
-       -webkit-box-shadow: 0 3px 2px -2px rgba( 0, 0, 0, 0.2 );
-       box-shadow: 0 3px 2px -2px rgba( 0, 0, 0, 0.2 );
-}
-
-#user_info_links ul {
-       background: #f7fcfe;
-       border-color: #d0dfe9 #d0dfe9 #d0dfe9;
-       -moz-box-shadow: inset 0 1px 0 #f9f9f9;
-       -webkit-box-shadow: inset 0 1px 0 #f9f9f9;
-       box-shadow: inset 0 1px 0 #f9f9f9;
-}
-
-#user_info_links li:hover {
-       background-color: #ECF8FE;
-}
-
-#user_info_links li:hover a,
-#user_info_links li a:hover {
-       text-decoration: none;
-}
-
-#user_info a:link,
-#user_info a:visited,
 #footer a:link,
 #footer a:visited {
        text-decoration: none;
 #footer a:link,
 #footer a:visited {
        text-decoration: none;
@@ -821,7 +798,6 @@ table.widefat span.spam a,
        text-decoration: underline;
 }
 
        text-decoration: underline;
 }
 
-div#media-upload-error,
 .file-error,
 abbr.required,
 .widget-control-remove:hover,
 .file-error,
 abbr.required,
 .widget-control-remove:hover,
@@ -866,30 +842,23 @@ table.widefat .spam a:hover,
        background-image: url("../images/ed-bg-vs.gif?ver=20101102");
 }
 
        background-image: url("../images/ed-bg-vs.gif?ver=20101102");
 }
 
-#ed_toolbar input {
-       border-color: #C3C3C3;
+.quicktags-toolbar input {
+       border-color: #b2c4c8;
 }
 
 }
 
-#ed_toolbar input:hover {
-       border-color: #aaa;
-       background: #ddd;
+.quicktags-toolbar input:hover {
+       border-color: #d0dfe9;
+       background: #f0f8fe;
 }
 
 }
 
-#poststuff .wp_themeSkin .mceStatusbar {
+#poststuff .wp-editor-wrap .wp_themeSkin .mceStatusbar {
        border-color: #d0dfe9;
 }
 
        border-color: #d0dfe9;
 }
 
-#poststuff .wp_themeSkin .mceStatusbar * {
+#poststuff .wp-editor-wrap .wp_themeSkin .mceStatusbar * {
        color: #555;
 }
 
        color: #555;
 }
 
-#poststuff #edButtonPreview,
-#poststuff #edButtonHTML {
-       background-color: #f7fcfe;
-       border-color: #d0dfe9 #d0dfe9 #d0dfe9;
-       color: #999;
-}
-
 #poststuff #editor-toolbar .active {
        border-color: #d0dfe9 #d0dfe9 #eff8ff;
        background-color: #eff8ff;
 #poststuff #editor-toolbar .active {
        border-color: #d0dfe9 #d0dfe9 #eff8ff;
        background-color: #eff8ff;
@@ -901,37 +870,37 @@ table.widefat .spam a:hover,
        background-color: #eff8ff;
 }
 
        background-color: #eff8ff;
 }
 
-.wp_themeSkin *,
-.wp_themeSkin a:hover,
-.wp_themeSkin a:link,
-.wp_themeSkin a:visited,
-.wp_themeSkin a:active {
+.wp-editor-wrap .wp_themeSkin *,
+.wp-editor-wrap .wp_themeSkin a:hover,
+.wp-editor-wrap .wp_themeSkin a:link,
+.wp-editor-wrap .wp_themeSkin a:visited,
+.wp-editor-wrap .wp_themeSkin a:active {
        color: #000;
 }
 
 /* Containers */
        color: #000;
 }
 
 /* Containers */
-.wp_themeSkin table.mceLayout {
+.wp-editor-wrap .wp_themeSkin table.mceLayout {
        border-color: #bed1dd #bed1dd #d0dfe9;
 }
 
 #editorcontainer #content,
        border-color: #bed1dd #bed1dd #d0dfe9;
 }
 
 #editorcontainer #content,
-#editorcontainer .wp_themeSkin .mceIframeContainer {
+#editorcontainer .wp-editor-wrap .wp_themeSkin .mceIframeContainer {
        -moz-box-shadow: inset 1px 1px 2px rgba( 0, 0, 0, 0.1 );
        -webkit-box-shadow: inset 1px 1px 2px rgba( 0, 0, 0, 0.1 );
        box-shadow: inset 1px 1px 2px rgba( 0, 0, 0, 0.1 );
 }
        -moz-box-shadow: inset 1px 1px 2px rgba( 0, 0, 0, 0.1 );
        -webkit-box-shadow: inset 1px 1px 2px rgba( 0, 0, 0, 0.1 );
        box-shadow: inset 1px 1px 2px rgba( 0, 0, 0, 0.1 );
 }
-.wp_themeSkin iframe {
+.wp-editor-wrap .wp_themeSkin iframe {
        background: transparent;
 }
 
 /* Layout */
        background: transparent;
 }
 
 /* Layout */
-.wp_themeSkin .mceStatusbar {
+.wp-editor-wrap .wp_themeSkin .mceStatusbar {
        color: #000;
        background-color: #f5f5f5;
 }
 
 /* Button */
        color: #000;
        background-color: #f5f5f5;
 }
 
 /* Button */
-.wp_themeSkin .mceButton {
+.wp-editor-wrap .wp_themeSkin .mceButton {
        border-color: #B0C8D7;
        background-color: #cfdfe9; /* Fallback */
        background-image: -ms-linear-gradient(bottom, #cfdfe9, #fff); /* IE10 */
        border-color: #B0C8D7;
        background-color: #cfdfe9; /* Fallback */
        background-image: -ms-linear-gradient(bottom, #cfdfe9, #fff); /* IE10 */
@@ -942,40 +911,40 @@ table.widefat .spam a:hover,
        background-image: linear-gradient(bottom, #cfdfe9, #fff); /* proposed W3C Markup */
 }
 
        background-image: linear-gradient(bottom, #cfdfe9, #fff); /* proposed W3C Markup */
 }
 
-.wp_themeSkin a.mceButtonEnabled:hover {
+.wp-editor-wrap .wp_themeSkin a.mceButtonEnabled:hover {
        border-color: #5589AA !important;
        background-color: #c9c9c9; /* Fallback */
        background-image: -ms-linear-gradient(bottom, #bdccd5, #fff); /* IE10 */
        border-color: #5589AA !important;
        background-color: #c9c9c9; /* Fallback */
        background-image: -ms-linear-gradient(bottom, #bdccd5, #fff); /* IE10 */
-       background-image: -moz-linear-gradient(bottom, #bdccd5, #fff)); /* Firefox */
-       background-image: -o-linear-gradient(bottom, #bdccd5, #fff)); /* Opera */
+       background-image: -moz-linear-gradient(bottom, #bdccd5, #fff); /* Firefox */
+       background-image: -o-linear-gradient(bottom, #bdccd5, #fff); /* Opera */
        background-image: -webkit-gradient(linear, left bottom, left top, from(#bdccd5), to(#fff)); /* old Webkit        */
        background-image: -webkit-linear-gradient(bottom, #bdccd5, #fff) !important; /* new Webkit */
        background-image: linear-gradient(bottom, #bdccd5, #fff); /* proposed W3C Markup */
 }
 
        background-image: -webkit-gradient(linear, left bottom, left top, from(#bdccd5), to(#fff)); /* old Webkit        */
        background-image: -webkit-linear-gradient(bottom, #bdccd5, #fff) !important; /* new Webkit */
        background-image: linear-gradient(bottom, #bdccd5, #fff); /* proposed W3C Markup */
 }
 
-.wp_themeSkin a.mceButton:active,
-.wp_themeSkin a.mceButtonEnabled:active,
-.wp_themeSkin a.mceButtonSelected:active,
-.wp_themeSkin a.mceButtonActive,
-.wp_themeSkin a.mceButtonActive:active,
-.wp_themeSkin a.mceButtonActive:hover {
+.wp-editor-wrap .wp_themeSkin a.mceButton:active,
+.wp-editor-wrap .wp_themeSkin a.mceButtonEnabled:active,
+.wp-editor-wrap .wp_themeSkin a.mceButtonSelected:active,
+.wp-editor-wrap .wp_themeSkin a.mceButtonActive,
+.wp-editor-wrap .wp_themeSkin a.mceButtonActive:active,
+.wp-editor-wrap .wp_themeSkin a.mceButtonActive:hover {
        background: #B0C8D7 !important;
        background-image: -ms-linear-gradient(bottom, #fff, #cfdfe9); /* IE10 */
        background: #B0C8D7 !important;
        background-image: -ms-linear-gradient(bottom, #fff, #cfdfe9); /* IE10 */
-       background-image: -moz-linear-gradient(bottom, #fff, #cfdfe9)); /* Firefox */
-       background-image: -o-linear-gradient(bottom, #fff, #cfdfe9)); /* Opera */
+       background-image: -moz-linear-gradient(bottom, #fff, #cfdfe9); /* Firefox */
+       background-image: -o-linear-gradient(bottom, #fff, #cfdfe9); /* Opera */
        background-image: -webkit-gradient(linear, left bottom, left top, from(#fff), to(#cfdfe9)); /* old Webkit        */
        background-image: -webkit-linear-gradient(bottom, #fff, #cfdfe9) !important; /* new Webkit */
        background-image: linear-gradient(bottom, #fff, #cfdfe9); /* proposed W3C Markup */
        border-color: #5589AA !important;
 }
 
        background-image: -webkit-gradient(linear, left bottom, left top, from(#fff), to(#cfdfe9)); /* old Webkit        */
        background-image: -webkit-linear-gradient(bottom, #fff, #cfdfe9) !important; /* new Webkit */
        background-image: linear-gradient(bottom, #fff, #cfdfe9); /* proposed W3C Markup */
        border-color: #5589AA !important;
 }
 
-.wp_themeSkin .mceButtonDisabled {
+.wp-editor-wrap .wp_themeSkin .mceButtonDisabled {
        border-color: #B0C8D7 !important;
 }
 
 /* ListBox */
        border-color: #B0C8D7 !important;
 }
 
 /* ListBox */
-.wp_themeSkin .mceListBox .mceText,
-.wp_themeSkin .mceListBox .mceOpen     {
+.wp-editor-wrap .wp_themeSkin .mceListBox .mceText,
+.wp-editor-wrap .wp_themeSkin .mceListBox .mceOpen     {
        border-color: #B0C8D7;
        background-color: #cfdfe9; /* Fallback */
        background-image: -ms-linear-gradient(bottom, #cfdfe9, #fff); /* IE10 */
        border-color: #B0C8D7;
        background-color: #cfdfe9; /* Fallback */
        background-image: -ms-linear-gradient(bottom, #cfdfe9, #fff); /* IE10 */
@@ -986,25 +955,25 @@ table.widefat .spam a:hover,
        background-image: linear-gradient(bottom, #cfdfe9, #fff); /* proposed W3C Markup */
 }
 
        background-image: linear-gradient(bottom, #cfdfe9, #fff); /* proposed W3C Markup */
 }
 
-.wp_themeSkin .mceListBox .mceOpen {
+.wp-editor-wrap .wp_themeSkin .mceListBox .mceOpen {
        border-left: 0px !important;
 }
 
        border-left: 0px !important;
 }
 
-.wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,
-.wp_themeSkin .mceListBoxHover .mceOpen,
-.wp_themeSkin .mceListBoxHover:active .mceOpen,
-.wp_themeSkin .mceListBoxSelected .mceOpen,
-.wp_themeSkin .mceListBoxSelected .mceText,
-.wp_themeSkin table.mceListBoxEnabled:active .mceText {
+.wp-editor-wrap .wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,
+.wp-editor-wrap .wp_themeSkin .mceListBoxHover .mceOpen,
+.wp-editor-wrap .wp_themeSkin .mceListBoxHover:active .mceOpen,
+.wp-editor-wrap .wp_themeSkin .mceListBoxSelected .mceOpen,
+.wp-editor-wrap .wp_themeSkin .mceListBoxSelected .mceText,
+.wp-editor-wrap .wp_themeSkin table.mceListBoxEnabled:active .mceText {
        background: #B0C8D7;
        border-color: #5589AA !important;
 }
 
 /* List Box Hover */
        background: #B0C8D7;
        border-color: #5589AA !important;
 }
 
 /* List Box Hover */
-.wp_themeSkin table.mceListBoxEnabled:hover .mceText,
-.wp_themeSkin .mceListBoxHover .mceText,
-.wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,
-.wp_themeSkin .mceListBoxHover .mceOpen {
+.wp-editor-wrap .wp_themeSkin table.mceListBoxEnabled:hover .mceText,
+.wp-editor-wrap .wp_themeSkin .mceListBoxHover .mceText,
+.wp-editor-wrap .wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,
+.wp-editor-wrap .wp_themeSkin .mceListBoxHover .mceOpen {
        border-color: #5589AA !important;
        background-color: #c9c9c9; /* Fallback */
        background-image: -ms-linear-gradient(bottom, #cfdfe9, #fff); /* IE10 */
        border-color: #5589AA !important;
        background-color: #c9c9c9; /* Fallback */
        background-image: -ms-linear-gradient(bottom, #cfdfe9, #fff); /* IE10 */
@@ -1015,26 +984,26 @@ table.widefat .spam a:hover,
        background-image: linear-gradient(bottom, #cfdfe9, #fff); /* proposed W3C Markup */
 }
 
        background-image: linear-gradient(bottom, #cfdfe9, #fff); /* proposed W3C Markup */
 }
 
-.wp_themeSkin select.mceListBox {
+.wp-editor-wrap .wp_themeSkin select.mceListBox {
        border-color: #B2B2B2;
        background-color: #fff;
 }
 
 /* SplitButton */
        border-color: #B2B2B2;
        background-color: #fff;
 }
 
 /* SplitButton */
-.wp_themeSkin .mceSplitButton a.mceAction,
-.wp_themeSkin .mceSplitButton a.mceOpen {
+.wp-editor-wrap .wp_themeSkin .mceSplitButton a.mceAction,
+.wp-editor-wrap .wp_themeSkin .mceSplitButton a.mceOpen {
        border-color: #B0C8D7;
 }
 
        border-color: #B0C8D7;
 }
 
-.wp_themeSkin .mceSplitButton a.mceOpen:hover,
-.wp_themeSkin .mceSplitButtonSelected a.mceOpen,
-.wp_themeSkin table.mceSplitButtonEnabled:hover a.mceAction,
-.wp_themeSkin .mceSplitButton a.mceAction:hover {
+.wp-editor-wrap .wp_themeSkin .mceSplitButton a.mceOpen:hover,
+.wp-editor-wrap .wp_themeSkin .mceSplitButtonSelected a.mceOpen,
+.wp-editor-wrap .wp_themeSkin table.mceSplitButtonEnabled:hover a.mceAction,
+.wp-editor-wrap .wp_themeSkin .mceSplitButton a.mceAction:hover {
        border-color: #5589AA !important;
 }
 
 
        border-color: #5589AA !important;
 }
 
 
-.wp_themeSkin table.mceSplitButton td {
+.wp-editor-wrap .wp_themeSkin table.mceSplitButton td {
        background-color: #cfdfe9; /* Fallback */
        background-image: -ms-linear-gradient(bottom, #cfdfe9, #fff); /* IE10 */
        background-image: -moz-linear-gradient(bottom, #cfdfe9, #fff); /* Firefox */
        background-color: #cfdfe9; /* Fallback */
        background-image: -ms-linear-gradient(bottom, #cfdfe9, #fff); /* IE10 */
        background-image: -moz-linear-gradient(bottom, #cfdfe9, #fff); /* Firefox */
@@ -1044,7 +1013,7 @@ table.widefat .spam a:hover,
        background-image: linear-gradient(bottom, #cfdfe9, #fff); /* proposed W3C Markup */
 }
 
        background-image: linear-gradient(bottom, #cfdfe9, #fff); /* proposed W3C Markup */
 }
 
-.wp_themeSkin table.mceSplitButton:hover td {
+.wp-editor-wrap .wp_themeSkin table.mceSplitButton:hover td {
        background-image: -ms-linear-gradient(bottom, #cfdfe9, #fff); /* IE10 */
        background-image: -moz-linear-gradient(bottom, #cfdfe9, #fff); /* Firefox */
        background-image: -o-linear-gradient(bottom, #cfdfe9, #fff); /* Opera */
        background-image: -ms-linear-gradient(bottom, #cfdfe9, #fff); /* IE10 */
        background-image: -moz-linear-gradient(bottom, #cfdfe9, #fff); /* Firefox */
        background-image: -o-linear-gradient(bottom, #cfdfe9, #fff); /* Opera */
@@ -1053,65 +1022,65 @@ table.widefat .spam a:hover,
        background-image: linear-gradient(bottom, #cfdfe9, #fff); /* proposed W3C Markup */
 }
 
        background-image: linear-gradient(bottom, #cfdfe9, #fff); /* proposed W3C Markup */
 }
 
-.wp_themeSkin .mceSplitButtonActive {
+.wp-editor-wrap .wp_themeSkin .mceSplitButtonActive {
        background-color: #B0C8D7;
 }
 
 /* ColorSplitButton */
        background-color: #B0C8D7;
 }
 
 /* ColorSplitButton */
-.wp_themeSkin div.mceColorSplitMenu table {
+.wp-editor-wrap .wp_themeSkin div.mceColorSplitMenu table {
        background-color: #ebebeb;
        border-color: #B2B2B2;
 }
 
        background-color: #ebebeb;
        border-color: #B2B2B2;
 }
 
-.wp_themeSkin .mceColorSplitMenu a {
+.wp-editor-wrap .wp_themeSkin .mceColorSplitMenu a {
        border-color: #B2B2B2;
 }
 
        border-color: #B2B2B2;
 }
 
-.wp_themeSkin .mceColorSplitMenu a.mceMoreColors {
+.wp-editor-wrap .wp_themeSkin .mceColorSplitMenu a.mceMoreColors {
        border-color: #fff;
 }
 
        border-color: #fff;
 }
 
-.wp_themeSkin .mceColorSplitMenu a.mceMoreColors:hover {
+.wp-editor-wrap .wp_themeSkin .mceColorSplitMenu a.mceMoreColors:hover {
        border-color: #0A246A;
        background-color: #B6BDD2;
 }
 
        border-color: #0A246A;
        background-color: #B6BDD2;
 }
 
-.wp_themeSkin a.mceMoreColors:hover {
+.wp-editor-wrap .wp_themeSkin a.mceMoreColors:hover {
        border-color: #0A246A;
 }
 
 /* Menu */
        border-color: #0A246A;
 }
 
 /* Menu */
-.wp_themeSkin .mceMenu {
+.wp-editor-wrap .wp_themeSkin .mceMenu {
        border-color: #ddd;
 }
 
        border-color: #ddd;
 }
 
-.wp_themeSkin .mceMenu table {
+.wp-editor-wrap .wp_themeSkin .mceMenu table {
        background-color: #ebeaeb;
 }
 
        background-color: #ebeaeb;
 }
 
-.wp_themeSkin .mceMenu .mceText {
+.wp-editor-wrap .wp_themeSkin .mceMenu .mceText {
        color: #000;
 }
 
        color: #000;
 }
 
-.wp_themeSkin .mceMenu .mceMenuItemEnabled a:hover,
-.wp_themeSkin .mceMenu .mceMenuItemActive {
+.wp-editor-wrap .wp_themeSkin .mceMenu .mceMenuItemEnabled a:hover,
+.wp-editor-wrap .wp_themeSkin .mceMenu .mceMenuItemActive {
        background-color: #f5f5f5;
 }
        background-color: #f5f5f5;
 }
-.wp_themeSkin td.mceMenuItemSeparator {
+.wp-editor-wrap .wp_themeSkin td.mceMenuItemSeparator {
        background-color: #aaa;
 }
        background-color: #aaa;
 }
-.wp_themeSkin .mceMenuItemTitle a {
+.wp-editor-wrap .wp_themeSkin .mceMenuItemTitle a {
        background-color: #ccc;
        border-bottom-color: #aaa;
 }
        background-color: #ccc;
        border-bottom-color: #aaa;
 }
-.wp_themeSkin .mceMenuItemTitle span.mceText {
+.wp-editor-wrap .wp_themeSkin .mceMenuItemTitle span.mceText {
        color: #000;
 }
        color: #000;
 }
-.wp_themeSkin .mceMenuItemDisabled .mceText {
+.wp-editor-wrap .wp_themeSkin .mceMenuItemDisabled .mceText {
        color: #888;
 }
 
        color: #888;
 }
 
-.wp_themeSkin tr.mceFirst td.mceToolbar {
+.wp-editor-wrap .wp_themeSkin tr.mceFirst td.mceToolbar {
        background: #cfdfe9 url("../images/ed-bg-vs.gif?ver=20101102") repeat-x scroll left top;
        border-color: #cfdfe9;
 }
        background: #cfdfe9 url("../images/ed-bg-vs.gif?ver=20101102") repeat-x scroll left top;
        border-color: #cfdfe9;
 }
@@ -1124,9 +1093,7 @@ table.widefat .spam a:hover,
        background: #444444;
        border-left: 1px solid #999;
        border-top: 1px solid #999;
        background: #444444;
        border-left: 1px solid #999;
        border-top: 1px solid #999;
-       -moz-border-radius: 3px 0 0 0;
        -webkit-border-top-left-radius: 3px;
        -webkit-border-top-left-radius: 3px;
-       -khtml-border-top-left-radius: 3px;
        border-top-left-radius: 3px;
 }
 
        border-top-left-radius: 3px;
 }
 
@@ -1134,10 +1101,8 @@ table.widefat .spam a:hover,
        background: #444444;
        border-right: 1px solid #999;
        border-top: 1px solid #999;
        background: #444444;
        border-right: 1px solid #999;
        border-top: 1px solid #999;
-       border-top-right-radius: 3px;
-       -khtml-border-top-right-radius: 3px;
        -webkit-border-top-right-radius: 3px;
        -webkit-border-top-right-radius: 3px;
-       -moz-border-radius: 0 3px 0 0;
+       border-top-right-radius: 3px;
 }
 
 .wp-admin .clearlooks2 .mceMiddle .mceLeft {
 }
 
 .wp-admin .clearlooks2 .mceMiddle .mceLeft {
@@ -1175,6 +1140,69 @@ table.widefat .spam a:hover,
 .wp-admin .clearlooks2 .mceFocus .mceTop span {
        color: #e5e5e5;
 }
 .wp-admin .clearlooks2 .mceFocus .mceTop span {
        color: #e5e5e5;
 }
+
+.wp-editor-wrap .wp-switch-editor {
+       background-color: #f5fafd;
+       border-color: #d1e5ee #d1e5ee #d1e5ee;
+       color: #999
+}
+
+.wp-editor-wrap.tmce-active .switch-tmce,
+.wp-editor-wrap.html-active .switch-html {
+       background-color: #eff8ff;
+       border-color: #d1e5ee #d1e5ee #eff8ff;
+       color: #333;
+}
+
+.wp-editor-wrap.quicktags-toolbar input {
+       color: #464646;
+       border-color: #d1e5ee;
+       background-color: #eff8ff;
+       background-image: -ms-linear-gradient(bottom, #eff8ff, #fff);
+       background-image: -moz-linear-gradient(bottom, #eff8ff, #fff);
+       background-image: -o-linear-gradient(bottom, #eff8ff, #fff);
+       background-image: -webkit-linear-gradient(bottom, #eff8ff, #fff);
+       background-image: linear-gradient(bottom, #eff8ff, #fff);
+}
+.wp-editor-wrap .quicktags-toolbar,
+.wp-editor-wrap.wp_themeSkin tr.mceFirst td.mceToolbar {
+       border-bottom: 1px solid #ccc;
+       background-color: #eff8ff; /* Fallback */
+       background-image: -ms-linear-gradient(bottom, #cfdfe9, #eff8ff); /* IE10 */
+       background-image: -moz-linear-gradient(bottom, #cfdfe9, #eff8ff); /* Firefox */
+       background-image: -o-linear-gradient(bottom, #cfdfe9, #eff8ff); /* Opera */
+       background-image: -webkit-linear-gradient(bottom, #cfdfe9, #eff8ff); /* new Webkit */
+       background-image: linear-gradient(bottom, #cfdfe9, #eff8ff); /* proposed W3C Markup */
+}
+.wp-editor-wrap .quicktags-toolbar input:hover {
+       border-color: #aaa;
+       background: #ddd;
+}
+
+.wp-editor-wrap.wp_themeSkin .mceButton,
+.wp-editor-wrap.wp_themeSkin .mceListBox .mceText,
+.wp-editor-wrap.wp_themeSkin .mceListBox .mceOpen {
+       border-color: #ccc;
+       background-color: #eff8ff; /* Fallback */
+       background-image: -ms-linear-gradient(bottom, #eff8ff, #fff); /* IE10 */
+       background-image: -moz-linear-gradient(bottom, #eff8ff, #fff); /* Firefox */
+       background-image: -o-linear-gradient(bottom, #eff8ff, #fff); /* Opera */
+       background-image: -webkit-gradient(linear, left bottom, left top, from(#eff8ff), to(#fff)); /* old Webkit */
+       background-image: -webkit-linear-gradient(bottom, #eff8ff, #fff); /* new Webkit */
+       background-image: linear-gradient(bottom, #eff8ff, #fff); /* proposed W3C Markup */
+}
+
+.wp-editor-wrap.wp_themeSkin a.mceButtonEnabled:hover {
+       border-color: #a0a0a0;
+       background: #ddd; /* Fallback */
+       background-image: -ms-linear-gradient(bottom, #cfdfe9, #fff); /* IE10 */
+       background-image: -moz-linear-gradient(bottom, #cfdfe9, #fff); /* Firefox */
+       background-image: -o-linear-gradient(bottom, #cfdfe9, #fff); /* Opera */
+       background-image: -webkit-gradient(linear, left bottom, left top, from(#cfdfe9), to(#fff)); /* old Webkit */
+       background-image: -webkit-linear-gradient(bottom, #cfdfe9, #fff); /* new Webkit */
+       background-image: linear-gradient(bottom, #cfdfe9, #fff); /* proposed W3C Markup */
+}
+
 /* end TinyMCE */
 
 #titlediv #title {
 /* end TinyMCE */
 
 #titlediv #title {
@@ -1245,13 +1273,20 @@ table.widefat .spam a:hover,
 .folded #adminmenu li.menu-top,
 #adminmenu .wp-submenu .wp-submenu-head {
        border-top-color: #ffffff;
 .folded #adminmenu li.menu-top,
 #adminmenu .wp-submenu .wp-submenu-head {
        border-top-color: #ffffff;
-       border-bottom-color: #d1e5ee;
+       border-bottom-color: #cae6ff;
 }
 
 #adminmenu li.wp-menu-open {
        border-color: #d1e5ee;
 }
 
 }
 
 #adminmenu li.wp-menu-open {
        border-color: #d1e5ee;
 }
 
+#adminmenu li.menu-top:hover > a,
+#adminmenu li.menu-top.focused > a,
+#adminmenu li.menu-top > a:focus {
+       background-color: #e0f1ff;
+       text-shadow: 0 1px 0 rgba( 255, 255, 255, 0.4 );
+}
+
 #adminmenu li.wp-has-current-submenu a.wp-has-current-submenu,
 #adminmenu li.current a.menu-top,
 .folded #adminmenu li.wp-has-current-submenu,
 #adminmenu li.wp-has-current-submenu a.wp-has-current-submenu,
 #adminmenu li.current a.menu-top,
 .folded #adminmenu li.wp-has-current-submenu,
@@ -1259,12 +1294,37 @@ table.widefat .spam a:hover,
 #adminmenu .wp-menu-arrow,
 #adminmenu .wp-has-current-submenu .wp-submenu .wp-submenu-head {
        background-color: #5589AA; /* Fallback */
 #adminmenu .wp-menu-arrow,
 #adminmenu .wp-has-current-submenu .wp-submenu .wp-submenu-head {
        background-color: #5589AA; /* Fallback */
-       background-image: -ms-linear-gradient(bottom, #5589AA, #5A8FAD); /* IE10 */
-       background-image: -moz-linear-gradient(bottom, #5589AA, #5A8FAD); /* Firefox */
-       background-image: -o-linear-gradient(bottom, #5589AA, #5A8FAD); /* Opera */
-       background-image: -webkit-gradient(linear, left bottom, left top, from(#5589AA), to(#5A8FAD)); /* old Webkit */
-       background-image: -webkit-linear-gradient(bottom, #5589AA, #5A8FAD); /* new Webkit */
-       background-image: linear-gradient(bottom, #5589AA, #5A8FAD); /* proposed W3C Markup */
+       background-image: -ms-linear-gradient(bottom, #5589AA, #619bbb); /* IE10 */
+       background-image: -moz-linear-gradient(bottom, #5589AA, #619bbb); /* Firefox */
+       background-image: -o-linear-gradient(bottom, #5589AA, #619bbb); /* Opera */
+       background-image: -webkit-gradient(linear, left bottom, left top, from(#5589AA), to(#619bbb)); /* old Webkit */
+       background-image: -webkit-linear-gradient(bottom, #5589AA, #619bbb); /* new Webkit */
+       background-image: linear-gradient(bottom, #5589AA, #619bbb); /* proposed W3C Markup */
+}
+
+#adminmenu .wp-menu-arrow div {
+       background-color: #5589AA; /* Fallback */
+       background-image: -ms-linear-gradient(right bottom, #5589AA, #619bbb); /* IE10 */
+       background-image: -moz-linear-gradient(right bottom, #5589AA, #619bbb); /* Firefox */
+       background-image: -o-linear-gradient(right bottom, #5589AA, #619bbb); /* Opera */
+       background-image: -webkit-gradient(linear, right bottom, left top, from(#5589AA), to(#619bbb)); /* old Webkit */
+       background-image: -webkit-linear-gradient(right bottom, #5589AA, #619bbb); /* new Webkit */
+       background-image: linear-gradient(right bottom, #5589AA, #619bbb); /* proposed W3C Markup */
+}
+
+#adminmenu li.wp-not-current-submenu .wp-menu-arrow {
+       border-top-color: #fff;
+       border-bottom-color: #cae6ff;
+       background: #e0f1ff;
+}
+
+#adminmenu li.wp-not-current-submenu .wp-menu-arrow div {
+       background: #e0f1ff;
+       border-color: #cae6ff;
+}
+
+.folded #adminmenu li.menu-top li:hover a {
+       background-image: none;
 }
 
 #adminmenu li.wp-has-current-submenu a.wp-has-current-submenu,
 }
 
 #adminmenu li.wp-has-current-submenu a.wp-has-current-submenu,
@@ -1282,9 +1342,10 @@ table.widefat .spam a:hover,
        border-bottom-color: #5589AA;
 }
 
        border-bottom-color: #5589AA;
 }
 
-#adminmenu .wp-submenu a:hover {
-       background-color: #EAF2FA !important;
-       color: #333 !important;
+#adminmenu .wp-submenu a:hover,
+#adminmenu .wp-submenu a:focus {
+       background-color: #EFF8FF;
+       color: #333;
 }
 
 #adminmenu .wp-submenu li.current,
 }
 
 #adminmenu .wp-submenu li.current,
@@ -1297,19 +1358,20 @@ table.widefat .spam a:hover,
        background-color: #fff;
 }
 
        background-color: #fff;
 }
 
-.folded #adminmenu .wp-submenu-wrap,
-.folded #adminmenu .wp-submenu ul {
+#adminmenu .wp-submenu-wrap,
+#adminmenu .wp-submenu ul {
        border-color: #d0dfe9;
 }
 
        border-color: #d0dfe9;
 }
 
-.folded #adminmenu .wp-submenu-wrap {
+#adminmenu .wp-submenu-wrap,
+.folded #adminmenu .wp-has-current-submenu .wp-submenu-wrap {
        -moz-box-shadow: 2px 2px 5px rgba( 0, 0, 0, 0.4 );
        -webkit-box-shadow: 2px 2px 5px rgba( 0, 0, 0, 0.4 );
        box-shadow: 2px 2px 5px rgba( 0, 0, 0, 0.4 );
 }
 
 #adminmenu .wp-submenu .wp-submenu-head {
        -moz-box-shadow: 2px 2px 5px rgba( 0, 0, 0, 0.4 );
        -webkit-box-shadow: 2px 2px 5px rgba( 0, 0, 0, 0.4 );
        box-shadow: 2px 2px 5px rgba( 0, 0, 0, 0.4 );
 }
 
 #adminmenu .wp-submenu .wp-submenu-head {
-       border-right-color: #d0dfe9;
+       border-right-color: #e8eff4;
        background-color: #EFF8FF;
 }
 
        background-color: #EFF8FF;
 }
 
@@ -1347,174 +1409,198 @@ table.widefat .spam a:hover,
 }
 
 /* menu and screen icons */
 }
 
 /* menu and screen icons */
+.icon16.icon-dashboard,
 #adminmenu .menu-icon-dashboard div.wp-menu-image {
 #adminmenu .menu-icon-dashboard div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -60px -33px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -60px -33px;
 }
 
 #adminmenu .menu-icon-dashboard:hover div.wp-menu-image,
 #adminmenu .menu-icon-dashboard.wp-has-current-submenu div.wp-menu-image,
 #adminmenu .menu-icon-dashboard.current div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-dashboard:hover div.wp-menu-image,
 #adminmenu .menu-icon-dashboard.wp-has-current-submenu div.wp-menu-image,
 #adminmenu .menu-icon-dashboard.current div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -60px -1px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -60px -1px;
 }
 
 }
 
+.icon16.icon-post,
 #adminmenu .menu-icon-post div.wp-menu-image {
 #adminmenu .menu-icon-post div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -271px -33px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -271px -33px;
 }
 
 #adminmenu .menu-icon-post:hover div.wp-menu-image,
 #adminmenu .menu-icon-post.wp-has-current-submenu div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-post:hover div.wp-menu-image,
 #adminmenu .menu-icon-post.wp-has-current-submenu div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -271px -1px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -271px -1px;
 }
 
 }
 
+.icon16.icon-media,
 #adminmenu .menu-icon-media div.wp-menu-image {
 #adminmenu .menu-icon-media div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -120px -33px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -120px -33px;
 }
 
 #adminmenu .menu-icon-media:hover div.wp-menu-image,
 #adminmenu .menu-icon-media.wp-has-current-submenu div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-media:hover div.wp-menu-image,
 #adminmenu .menu-icon-media.wp-has-current-submenu div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -120px -1px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -120px -1px;
 }
 
 }
 
+.icon16.icon-links,
 #adminmenu .menu-icon-links div.wp-menu-image {
 #adminmenu .menu-icon-links div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -90px -33px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -90px -33px;
 }
 
 #adminmenu .menu-icon-links:hover div.wp-menu-image,
 #adminmenu .menu-icon-links.wp-has-current-submenu div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-links:hover div.wp-menu-image,
 #adminmenu .menu-icon-links.wp-has-current-submenu div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -90px -1px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -90px -1px;
 }
 
 }
 
+.icon16.icon-page,
 #adminmenu .menu-icon-page div.wp-menu-image {
 #adminmenu .menu-icon-page div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -150px -33px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -150px -33px;
 }
 
 #adminmenu .menu-icon-page:hover div.wp-menu-image,
 #adminmenu .menu-icon-page.wp-has-current-submenu div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-page:hover div.wp-menu-image,
 #adminmenu .menu-icon-page.wp-has-current-submenu div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -150px -1px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -150px -1px;
 }
 
 }
 
+.icon16.icon-comments,
 #adminmenu .menu-icon-comments div.wp-menu-image {
 #adminmenu .menu-icon-comments div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -30px -33px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -30px -33px;
 }
 
 #adminmenu .menu-icon-comments:hover div.wp-menu-image,
 #adminmenu .menu-icon-comments.wp-has-current-submenu div.wp-menu-image,
 #adminmenu .menu-icon-comments.current div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-comments:hover div.wp-menu-image,
 #adminmenu .menu-icon-comments.wp-has-current-submenu div.wp-menu-image,
 #adminmenu .menu-icon-comments.current div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -30px -1px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -30px -1px;
 }
 
 }
 
+.icon16.icon-appearance,
 #adminmenu .menu-icon-appearance div.wp-menu-image {
 #adminmenu .menu-icon-appearance div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll 0 -33px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll 0 -33px;
 }
 
 #adminmenu .menu-icon-appearance:hover div.wp-menu-image,
 #adminmenu .menu-icon-appearance.wp-has-current-submenu div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-appearance:hover div.wp-menu-image,
 #adminmenu .menu-icon-appearance.wp-has-current-submenu div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll 0 -1px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll 0 -1px;
 }
 
 }
 
+.icon16.icon-plugins,
 #adminmenu .menu-icon-plugins div.wp-menu-image {
 #adminmenu .menu-icon-plugins div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -180px -33px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -180px -33px;
 }
 
 #adminmenu .menu-icon-plugins:hover div.wp-menu-image,
 #adminmenu .menu-icon-plugins.wp-has-current-submenu div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-plugins:hover div.wp-menu-image,
 #adminmenu .menu-icon-plugins.wp-has-current-submenu div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -180px -1px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -180px -1px;
 }
 
 }
 
+.icon16.icon-users,
 #adminmenu .menu-icon-users div.wp-menu-image {
 #adminmenu .menu-icon-users div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -300px -33px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -300px -33px;
 }
 
 #adminmenu .menu-icon-users:hover div.wp-menu-image,
 #adminmenu .menu-icon-users.wp-has-current-submenu div.wp-menu-image,
 #adminmenu .menu-icon-users.current div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-users:hover div.wp-menu-image,
 #adminmenu .menu-icon-users.wp-has-current-submenu div.wp-menu-image,
 #adminmenu .menu-icon-users.current div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -300px -1px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -300px -1px;
 }
 
 }
 
+.icon16.icon-tools,
 #adminmenu .menu-icon-tools div.wp-menu-image {
 #adminmenu .menu-icon-tools div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -210px -33px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -210px -33px;
 }
 
 #adminmenu .menu-icon-tools:hover div.wp-menu-image,
 #adminmenu .menu-icon-tools.wp-has-current-submenu div.wp-menu-image,
 #adminmenu .menu-icon-tools.current div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-tools:hover div.wp-menu-image,
 #adminmenu .menu-icon-tools.wp-has-current-submenu div.wp-menu-image,
 #adminmenu .menu-icon-tools.current div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -210px -1px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -210px -1px;
 }
 
 }
 
+.icon16.icon-settings,
 #icon-options-general,
 #adminmenu .menu-icon-settings div.wp-menu-image {
 #icon-options-general,
 #adminmenu .menu-icon-settings div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -240px -33px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -240px -33px;
 }
 
 #adminmenu .menu-icon-settings:hover div.wp-menu-image,
 #adminmenu .menu-icon-settings.wp-has-current-submenu div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-settings:hover div.wp-menu-image,
 #adminmenu .menu-icon-settings.wp-has-current-submenu div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -240px -1px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -240px -1px;
 }
 
 }
 
+.icon16.icon-site,
 #adminmenu .menu-icon-site div.wp-menu-image {
 #adminmenu .menu-icon-site div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -360px -33px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -360px -33px;
 }
 
 #adminmenu .menu-icon-site:hover div.wp-menu-image,
 #adminmenu .menu-icon-site.wp-has-current-submenu div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-site:hover div.wp-menu-image,
 #adminmenu .menu-icon-site.wp-has-current-submenu div.wp-menu-image {
-       background: transparent url('../images/menu-vs.png?ver=20100531') no-repeat scroll -360px -1px;
+       background: transparent url('../images/menu-vs.png?ver=20111128') no-repeat scroll -360px -1px;
 }
 /* end menu and screen icons */
 
 /* Screen Icons */
 }
 /* end menu and screen icons */
 
 /* Screen Icons */
+.icon32.icon-post,
 #icon-edit,
 #icon-post {
 #icon-edit,
 #icon-post {
-       background: transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -552px -5px;
+       background: transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -552px -5px;
 }
 
 }
 
+.icon32.icon-dashboard,
 #icon-index {
 #icon-index {
-       background: transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -137px -5px;
+       background: transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -137px -5px;
 }
 
 }
 
+.icon32.icon-media,
 #icon-upload {
 #icon-upload {
-       background: transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -251px -5px;
+       background: transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -251px -5px;
 }
 
 }
 
+.icon32.icon-links,
 #icon-link-manager,
 #icon-link,
 #icon-link-category {
 #icon-link-manager,
 #icon-link,
 #icon-link-category {
-       background: transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -190px -5px;
+       background: transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -190px -5px;
 }
 
 }
 
+.icon32.icon-page,
 #icon-edit-pages,
 #icon-page {
 #icon-edit-pages,
 #icon-page {
-       background: transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -312px -5px;
+       background: transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -312px -5px;
 }
 
 }
 
+.icon32.icon-comments,
 #icon-edit-comments {
 #icon-edit-comments {
-       background: transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -72px -5px;
+       background: transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -72px -5px;
 }
 
 }
 
+.icon32.icon-appearance,
 #icon-themes {
 #icon-themes {
-       background: transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -11px -5px;
+       background: transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -11px -5px;
 }
 
 }
 
+.icon32.icon-plugins,
 #icon-plugins {
 #icon-plugins {
-       background: transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -370px -5px;
+       background: transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -370px -5px;
 }
 
 }
 
+.icon32.icon-users,
 #icon-users,
 #icon-profile,
 #icon-user-edit {
 #icon-users,
 #icon-profile,
 #icon-user-edit {
-       background: transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -600px -5px;
+       background: transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -600px -5px;
 }
 
 }
 
+.icon32.icon-tools,
 #icon-tools,
 #icon-admin {
 #icon-tools,
 #icon-admin {
-       background: transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -432px -5px;
+       background: transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -432px -5px;
 }
 
 }
 
+.icon32.icon-settings,
 #icon-options-general {
 #icon-options-general {
-       background: transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -492px -5px;
+       background: transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -492px -5px;
 }
 
 }
 
+.icon32.icon-site,
 #icon-ms-admin {
 #icon-ms-admin {
-       background: transparent url(../images/icons32-vs.png?ver=20100531) no-repeat -659px -5px;
+       background: transparent url(../images/icons32-vs.png?ver=20111206) no-repeat -659px -5px;
 }
 /* end screen icons */
 
 }
 /* end screen icons */
 
@@ -1553,12 +1639,35 @@ table.diff .diff-addedline ins {
        color: #D54E21;
 }
 
        color: #D54E21;
 }
 
-#screen-options-wrap,
-#contextual-help-wrap {
-       background-color: #f7fcfe;
-       border-color: #D1e5ee;
+#screen-meta {
+       background-color: #EFF8FF;
+       border-color: #D1E5EE;
+       -webkit-box-shadow: 0 1px 3px rgba( 0, 0, 0, 0.05 );
+       box-shadow: 0 1px 3px rgba( 0, 0, 0, 0.05 );
 }
 
 }
 
+#contextual-help-back {
+       background: #fff;
+}
+
+.contextual-help-tabs a:hover {
+       background-color: #ceeaff;
+       color: #333;
+}
+
+#contextual-help-back,
+.contextual-help-tabs .active {
+       border-color: #D1E5EE;
+}
+
+.contextual-help-tabs .active,
+.contextual-help-tabs .active a,
+.contextual-help-tabs .active a:hover {
+       background: #fff;
+       color: #000;
+}
+
+/* screen options and help tabs */
 #screen-options-link-wrap,
 #contextual-help-link-wrap {
        background-color: #eff8ff; /* Fallback */
 #screen-options-link-wrap,
 #contextual-help-link-wrap {
        background-color: #eff8ff; /* Fallback */
@@ -1581,23 +1690,19 @@ table.diff .diff-addedline ins {
        color: #000;
 }
 
        color: #000;
 }
 
-#replysubmit {
-       background-color: #f1f1f1;
-       border-top-color: #ddd;
+#screen-meta-links a.show-settings {
+       background: transparent url(../images/arrows.png) no-repeat right 3px;
 }
 
 }
 
-#replyerror {
-       border-color: #ddd;
-       background-color: #f9f9f9;
+#screen-meta-links a.show-settings.screen-meta-active  {
+       background: transparent url(../images/arrows.png) no-repeat right -33px;
 }
 
 }
 
-#edithead,
-#replyhead {
-       background-color: #f1f1f1;
-}
+/* end screen options and help tabs */
 
 
-#ed_reply_toolbar {
-       background-color: #e9e9e9;
+#replyerror {
+       border-color: #ddd;
+       background-color: #f9f9f9;
 }
 
 /* table vim shortcuts */
 }
 
 /* table vim shortcuts */
@@ -1642,8 +1747,7 @@ div.star img {
 /* inline editor */
 .inline-edit-row fieldset input[type="text"],
 .inline-edit-row fieldset textarea,
 /* inline editor */
 .inline-edit-row fieldset input[type="text"],
 .inline-edit-row fieldset textarea,
-#bulk-titles,
-#replyrow input {
+#bulk-titles {
        border-color: #ddd;
 }
 
        border-color: #ddd;
 }
 
@@ -1665,11 +1769,6 @@ div.star img {
        background-color: #f1f1f1;
 }
 
        background-color: #f1f1f1;
 }
 
-#replyrow #ed_reply_toolbar input:hover {
-       border-color: #aaa;
-       background: #ddd;
-}
-
 fieldset.inline-edit-col-right .inline-edit-col {
        border-color: #dfdfdf;
 }
 fieldset.inline-edit-col-right .inline-edit-col {
        border-color: #dfdfdf;
 }
@@ -1758,63 +1857,6 @@ body.press-this ul.category-tabs li.tabs a {
        color: #333;
 }
 
        color: #333;
 }
 
-#wp_editimgbtn,
-#wp_delimgbtn,
-#wp_editgallery,
-#wp_delgallery {
-       border-color: #999;
-       background-color: #eee;
-}
-
-#wp_editimgbtn:hover,
-#wp_delimgbtn:hover,
-#wp_editgallery:hover,
-#wp_delgallery:hover {
-       border-color: #555;
-       background-color: #ccc;
-}
-
-#favorite-first {
-       border-color: #c0c0c0;
-       background: #f1f1f1; /* fallback color */
-       background:-moz-linear-gradient(bottom, #e7e7e7, #fff);
-       background:-webkit-gradient(linear, left bottom, left top, from(#e7e7e7), to(#fff));
-}
-
-#favorite-inside {
-       border-color: #c0c0c0;
-       background-color: #fff;
-}
-
-#favorite-toggle {
-       background: transparent url(../images/fav-arrow.gif?ver=20100531) no-repeat 0 -4px;
-       border-color: #d0dfe9;
-       -moz-box-shadow: inset 1px 0 0 #fff;
-       -webkit-box-shadow: inset 1px 0 0 #fff;
-       box-shadow: inset 1px 0 0 #fff;
-}
-
-#favorite-actions a {
-       color: #464646;
-}
-
-#favorite-actions a:hover {
-       color: #000;
-}
-
-#favorite-inside a:hover {
-       text-decoration: underline;
-}
-
-#screen-meta a.show-settings,
-.toggle-arrow {
-       background: transparent url(../images/arrows-vs.png) no-repeat right 3px;
-}
-
-#screen-meta .screen-meta-active a.show-settings {
-       background: transparent url(../images/arrows-vs.png) no-repeat right -33px;
-}
-
 .view-switch #view-switch-list {
        background: transparent url(../images/list.png) no-repeat 0 0;
 }
 .view-switch #view-switch-list {
        background: transparent url(../images/list.png) no-repeat 0 0;
 }
@@ -2009,9 +2051,9 @@ div.widgets-sortables,
        color: #ff0000;
 }
 
        color: #ff0000;
 }
 
-.item-edit {
+.nav-menus-php .item-edit {
        background: transparent url(../images/arrows-vs.png) no-repeat 8px 10px;
        background: transparent url(../images/arrows-vs.png) no-repeat 8px 10px;
-       border-bottom-color: #eee;
+       border-bottom-color: #eff8ff;
 }
 
 .item-edit:hover {
 }
 
 .item-edit:hover {
@@ -2085,3 +2127,169 @@ div.widgets-sortables,
 #fullscreen-topbar {
        border-bottom-color: #D1E5EE;
 }
 #fullscreen-topbar {
        border-bottom-color: #D1E5EE;
 }
+
+/* Begin About Pages */
+
+.about-wrap h1 {
+       color: #333;
+       text-shadow: 1px 1px 1px white;
+}
+
+.about-text {
+       color: #777;
+}
+
+.wp-badge {
+       color: #fff;
+       text-shadow: 0 -1px 0 rgba(22, 57, 81, 0.3);
+}
+
+.about-wrap h2 .nav-tab {
+       color: #21759B;
+}
+.about-wrap h2 .nav-tab:hover {
+       color: #d54e21;
+}
+.about-wrap h2 .nav-tab-active,
+.about-wrap h2 .nav-tab-active:hover {
+       color: #333;
+}
+.about-wrap h2 .nav-tab-active {
+       text-shadow: 1px 1px 1px white;
+       color: #464646;
+}
+
+.about-wrap h3 {
+       color: #333;
+       text-shadow: 1px 1px 1px white;
+}
+
+.about-wrap .feature-section h4 {
+       color: #464646;
+}
+
+.about-wrap .feature-section img {
+       background: #fff;
+       border-color: #dfdfdf;
+
+       -moz-box-shadow: 0 0 6px rgba( 0, 0, 0, 0.3 );
+       -webkit-box-shadow: 0 0 6px rgba( 0, 0, 0, 0.3 );
+       box-shadow: 0 0 6px rgba( 0, 0, 0, 0.3 );
+}
+
+.about-wrap .point-releases {
+       border-bottom: 1px solid #dfdfdf;
+}
+
+.about-wrap .point-releases h3 {
+       border-top: 1px solid #dfdfdf;
+}
+
+.about-wrap .point-releases h3:first-child {
+       border: 0;
+}
+
+.about-wrap h4.wp-people-group {
+       text-shadow: 1px 1px 1px white;
+}
+
+.about-wrap li.wp-person img.gravatar {
+       -moz-box-shadow: 0 0 4px rgba( 0, 0, 0, 0.4 );
+       -webkit-box-shadow: 0 0 4px rgba( 0, 0, 0, 0.4 );
+       box-shadow: 0 0 4px rgba( 0, 0, 0, 0.4 );
+}
+.about-wrap li.wp-person .title {
+       color: #464646;
+       text-shadow: 1px 1px 1px white;
+}
+
+.freedoms-php .about-wrap ol li {
+       color: #999;
+}
+.freedoms-php .about-wrap ol p {
+       color: #464646;
+}
+
+/* End About Pages */
+
+
+/*------------------------------------------------------------------------------
+  2.0 - Right to Left Styles
+------------------------------------------------------------------------------*/
+
+.rtl .bar {
+       border-right-color: none;
+       border-left-color: #99d;
+}
+
+.rtl .post-com-count {
+       background-image: url(../images/bubble_bg-rtl.gif);
+}
+
+.rtl #screen-meta-links a.show-settings {
+       background-position: left 3px;
+}
+
+.rtl #screen-meta-links a.show-settings.screen-meta-active {
+       background-position: left -33px;
+}
+
+/* Menu */
+.rtl #adminmenushadow,
+.rtl #adminmenuback {
+       background-image: url(../images/menu-shadow-rtl.png);
+       background-position: top left;
+}
+
+.rtl #adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,
+.rtl #adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle {
+       background: transparent url(../images/arrows-dark-vs.png) no-repeat 8px 6px;
+}
+
+.rtl #adminmenu .wp-has-submenu:hover .wp-menu-toggle,
+.rtl #adminmenu .wp-menu-open .wp-menu-toggle {
+       background: transparent url(../images/arrows-vs.png) no-repeat 8px 6px;
+}
+
+.rtl #adminmenu .wp-submenu .wp-submenu-head {
+       border-right-color: none;
+       border-left-color: #d1e5ee;
+}
+
+.rtl #adminmenu .wp-submenu-wrap,
+.rtl.folded #adminmenu .wp-has-current-submenu .wp-submenu-wrap{
+       -moz-box-shadow: -2px 2px 5px rgba( 0, 0, 0, 0.4 );
+       -webkit-box-shadow: -2px 2px 5px rgba( 0, 0, 0, 0.4 );
+       box-shadow: -2px 2px 5px rgba( 0, 0, 0, 0.4 );
+}
+
+/* Collapse Menu Button */
+.rtl #collapse-button div {
+       background-position: 0 -108px;
+}
+
+.rtl.folded #collapse-button div {
+       background-position: 0 -72px;
+}
+
+/* edit image */
+.rtl .meta-box-sortables .postbox:hover .handlediv {
+       background: transparent url(../images/arrows-vs.png) no-repeat 6px 7px;
+}
+
+.rtl .tablenav .tablenav-pages a {
+       border-color: #d1e5ee;
+       background: #eee url('../images/menu-bits-rtl-vs.gif?ver=20100610') repeat-x scroll right -379px;
+}
+
+.rtl #post-body .misc-pub-section {
+       border-right-color: none;
+       border-left-color: #d1e5ee;
+}
+
+.rtl .sidebar-name-arrow {
+       background: transparent url(../images/arrows-vs.png) no-repeat 5px 9px;
+}
+.rtl .sidebar-name:hover .sidebar-name-arrow {
+       background: transparent url(../images/arrows-dark-vs.png) no-repeat 5px 9px;
+}
diff --git a/wp-admin/css/colors-fresh-rtl.css b/wp-admin/css/colors-fresh-rtl.css
deleted file mode 100644 (file)
index bd5b114..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.bar{border-right-color:none;border-left-color:#99d;}.post-com-count{background-image:url(../images/bubble_bg-rtl.gif);}#user_info_arrow{background:transparent url(../images/arrows.png) no-repeat 0 5px;}#user_info:hover #user_info_arrow,#user_info.active #user_info_arrow{background:transparent url(../images/arrows-dark.png) no-repeat 0 5px;}#adminmenushadow,#adminmenuback{background-image:url(../images/menu-shadow-rtl.png);background-position:top left;}#adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,#adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle{background:transparent url(../images/arrows-dark.png) no-repeat 8px 6px;}#adminmenu .wp-has-submenu:hover .wp-menu-toggle,#adminmenu .wp-menu-open .wp-menu-toggle{background:transparent url(../images/arrows.png) no-repeat 8px 6px;}#adminmenu .wp-submenu .wp-submenu-head{border-right-color:none;border-left-color:#dfdfdf;}.folded #adminmenu .wp-submenu-wrap{-moz-box-shadow:-2px 2px 5px rgba(0,0,0,0.4);-webkit-box-shadow:-2px 2px 5px rgba(0,0,0,0.4);box-shadow:-2px 2px 5px rgba(0,0,0,0.4);}#collapse-button div{background-position:0 -108px;}.folded #collapse-button div{background-position:0 -72px;}.meta-box-sortables .postbox:hover .handlediv{background:transparent url(../images/arrows.png) no-repeat 6px 7px;}.tablenav .tablenav-pages a{border-color:#e3e3e3;background:#eee url('../images/menu-bits-rtl.gif?ver=20100610') repeat-x scroll right -379px;}#post-body .misc-pub-section{border-right-color:none;border-left-color:#eee;}#favorite-toggle{background:transparent url(../images/arrows.png) no-repeat 4px 2px;}#screen-meta a.show-settings,.toggle-arrow{background:transparent url(../images/arrows.png) no-repeat left 3px;}#screen-meta .screen-meta-active a.show-settings{background:transparent url(../images/arrows.png) no-repeat left -33px;}.sidebar-name-arrow{background:transparent url(../images/arrows.png) no-repeat 5px 9px;}.sidebar-name:hover .sidebar-name-arrow{background:transparent url(../images/arrows-dark.png) no-repeat 5px 9px;}
\ No newline at end of file
diff --git a/wp-admin/css/colors-fresh-rtl.dev.css b/wp-admin/css/colors-fresh-rtl.dev.css
deleted file mode 100644 (file)
index 58ffe59..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-.bar {
-       border-right-color: none;
-       border-left-color: #99d;
-}
-
-.post-com-count {
-       background-image: url(../images/bubble_bg-rtl.gif);
-}
-
-#user_info_arrow {
-       background: transparent url(../images/arrows.png) no-repeat 0 5px;
-}
-
-#user_info:hover #user_info_arrow,
-#user_info.active #user_info_arrow {
-       background: transparent url(../images/arrows-dark.png) no-repeat 0 5px;
-}
-
-/* editors */
-
-/* menu */
-
-#adminmenushadow,
-#adminmenuback {
-       background-image: url(../images/menu-shadow-rtl.png);
-       background-position: top left;
-}
-
-#adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,
-#adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle {
-       background: transparent url(../images/arrows-dark.png) no-repeat 8px 6px;
-}
-
-#adminmenu .wp-has-submenu:hover .wp-menu-toggle,
-#adminmenu .wp-menu-open .wp-menu-toggle {
-       background: transparent url(../images/arrows.png) no-repeat 8px 6px;
-}
-
-
-#adminmenu .wp-submenu .wp-submenu-head {
-       border-right-color: none;
-       border-left-color: #dfdfdf;
-}
-
-.folded #adminmenu .wp-submenu-wrap {
-       -moz-box-shadow: -2px 2px 5px rgba( 0, 0, 0, 0.4 );
-       -webkit-box-shadow: -2px 2px 5px rgba( 0, 0, 0, 0.4 );
-       box-shadow: -2px 2px 5px rgba( 0, 0, 0, 0.4 );
-}
-
-/* collapse menu button */
-#collapse-button div {
-       background-position: 0 -108px;
-}
-.folded #collapse-button div {
-       background-position: 0 -72px;
-}
-
-/* edit image */
-
-.meta-box-sortables .postbox:hover .handlediv {
-       background: transparent url(../images/arrows.png) no-repeat 6px 7px;
-}
-
-.tablenav .tablenav-pages a {
-       border-color: #e3e3e3;
-       background: #eee url('../images/menu-bits-rtl.gif?ver=20100610') repeat-x scroll right -379px;
-}
-
-#post-body .misc-pub-section {
-       border-right-color: none;
-       border-left-color: #eee;
-}
-
-#favorite-toggle {
-       background: transparent url(../images/arrows.png) no-repeat 4px 2px;
-}
-
-#screen-meta a.show-settings,
-.toggle-arrow {
-       background: transparent url(../images/arrows.png) no-repeat left 3px;
-}
-
-#screen-meta .screen-meta-active a.show-settings {
-       background: transparent url(../images/arrows.png) no-repeat left -33px;
-}
-
-.sidebar-name-arrow {
-       background: transparent url(../images/arrows.png) no-repeat 5px 9px;
-}
-.sidebar-name:hover .sidebar-name-arrow {
-       background: transparent url(../images/arrows-dark.png) no-repeat 5px 9px;
-}
-
-
-/* custom header & background pages */
-
-/* custom header & background pages */
index 760faeee3f5c272e8266b960c7988eb735c170e6..58c75d26a42d534b7a3f7fc0d01e2f3d2918f2ca 100644 (file)
@@ -1 +1 @@
-html,.wp-dialog{background-color:#fff;}* html input,* html .widget{border-color:#dfdfdf;}textarea,input[type="text"],input[type="password"],input[type="file"],input[type="button"],input[type="submit"],input[type="reset"],select{border-color:#dfdfdf;background-color:#fff;}kbd,code{background:#eaeaea;}input[readonly]{background-color:#eee;}.find-box-search{border-color:#dfdfdf;background-color:#f1f1f1;}.find-box{background-color:#f1f1f1;}.find-box-inside{background-color:#fff;}a.page-numbers:hover{border-color:#999;}body,#wpbody,.form-table .pre{color:#333;}body>#upload-menu{border-bottom-color:#fff;}#postcustomstuff table,#your-profile fieldset,#rightnow,div.dashboard-widget,#dashboard-widgets p.dashboard-widget-links,#replyrow #ed_reply_toolbar input{border-color:#ccc;}#poststuff .inside label.spam,#poststuff .inside label.deleted{color:red;}#poststuff .inside label.waiting{color:orange;}#poststuff .inside label.approved{color:green;}#postcustomstuff table{border-color:#dfdfdf;background-color:#F9F9F9;}#postcustomstuff thead th{background-color:#F1F1F1;}#postcustomstuff table input,#postcustomstuff table textarea{border-color:#dfdfdf;background-color:#fff;}.widefat{border-color:#dfdfdf;background-color:#f9f9f9;}div.dashboard-widget-error{background-color:#c43;}div.dashboard-widget-notice{background-color:#cfe1ef;}div.dashboard-widget-submit{border-top-color:#ccc;}div.tabs-panel,.wp-tab-panel,ul.category-tabs li.tabs,ul.add-menu-item-tabs li.tabs,.wp-tab-active{border-color:#dfdfdf;background-color:#fff;}ul.category-tabs li.tabs,ul.add-menu-item-tabs li.tabs,.wp-tab-active{background-color:#fff;}input.disabled,textarea.disabled{background-color:#ccc;}#plugin-information .action-button a,#plugin-information .action-button a:hover,#plugin-information .action-button a:visited{color:#fff;}.widget .widget-top,.postbox h3,.stuffbox h3,.widefat thead tr th,.widefat tfoot tr th,h3.dashboard-widget-title,h3.dashboard-widget-title span,h3.dashboard-widget-title small,.find-box-head,.sidebar-name,#nav-menu-header,#nav-menu-footer,.menu-item-handle,#fullscreen-topbar{background-color:#f1f1f1;background-image:-ms-linear-gradient(top,#f9f9f9,#ececec);background-image:-moz-linear-gradient(top,#f9f9f9,#ececec);background-image:-o-linear-gradient(top,#f9f9f9,#ececec);background-image:-webkit-gradient(linear,left top,left bottom,from(#f9f9f9),to(#ececec));background-image:-webkit-linear-gradient(top,#f9f9f9,#ececec);background-image:linear-gradient(top,#f9f9f9,#ececec);}.widget .widget-top,.postbox h3,.stuffbox h3{border-bottom-color:#dfdfdf;text-shadow:#fff 0 1px 0;-moz-box-shadow:0 1px 0 #fff;-webkit-box-shadow:0 1px 0 #fff;box-shadow:0 1px 0 #fff;}.form-table th,.form-wrap label{color:#222;text-shadow:#fff 0 1px 0;}.description,.form-wrap p{color:#666;}strong .post-com-count span{background-color:#21759b;}.sorthelper{background-color:#ccf3fa;}.ac_match,.subsubsub a.current{color:#000;}.wrap h2{color:#464646;}.wrap .add-new-h2{background:#f1f1f1;}.subtitle{color:#777;}.ac_over{background-color:#f0f0b8;}.ac_results{background-color:#fff;border-color:#808080;}.ac_results li{color:#101010;}.alternate,.alt{background-color:#fcfcfc;}.available-theme a.screenshot{background-color:#f1f1f1;border-color:#ddd;}.bar{background-color:#e8e8e8;border-right-color:#99d;}#media-upload,#media-upload .media-item .slidetoggle{background:#fff;}#media-upload .slidetoggle{border-top-color:#dfdfdf;}div.error,.login #login_error{background-color:#ffebe8;border-color:#c00;}div.error a{color:#c00;}.form-invalid{background-color:#ffebe8!important;}.form-invalid input,.form-invalid select{border-color:#c00!important;}.submit{border-color:#DFDFDF;}.highlight{background-color:#e4f2fd;color:#000;}.howto,.nonessential,#edit-slug-box,.form-input-tip,.subsubsub{color:#666;}.media-item{border-bottom-color:#dfdfdf;}#wpbody-content #media-items .describe{border-top-color:#dfdfdf;}.media-upload-form label.form-help,td.help{color:#9a9a9a;}.post-com-count{background-image:url(../images/bubble_bg.gif);color:#fff;}.post-com-count span{background-color:#bbb;color:#fff;}.post-com-count:hover span{background-color:#d54e21;}.quicktags,.search{background-color:#ccc;color:#000;}.side-info h5{border-bottom-color:#dadada;}.side-info ul{color:#666;}.button,.button-secondary,.submit input,input[type=button],input[type=submit]{border-color:#bbb;color:#464646;}.button:hover,.button-secondary:hover,.submit input:hover,input[type=button]:hover,input[type=submit]:hover{color:#000;border-color:#666;}.button,.submit input,.button-secondary{background:#f2f2f2 url(../images/white-grad.png) repeat-x scroll left top;text-shadow:rgba(255,255,255,1) 0 1px 0;}.button:active,.submit input:active,.button-secondary:active{background:#eee url(../images/white-grad-active.png) repeat-x scroll left top;}input.button-primary,button.button-primary,a.button-primary{border-color:#298cba;font-weight:bold;color:#fff;background:#21759B url(../images/button-grad.png) repeat-x scroll left top;text-shadow:rgba(0,0,0,0.3) 0 -1px 0;}input.button-primary:active,button.button-primary:active,a.button-primary:active{background:#21759b url(../images/button-grad-active.png) repeat-x scroll left top;color:#eaf2fa;}input.button-primary:hover,button.button-primary:hover,a.button-primary:hover,a.button-primary:focus,a.button-primary:active{border-color:#13455b;color:#eaf2fa;}.button-disabled,.button[disabled],.button:disabled,.button-secondary[disabled],.button-secondary:disabled,a.button.disabled{color:#aaa!important;border-color:#ddd!important;}.button-primary-disabled,.button-primary[disabled],.button-primary:disabled{color:#9FD0D5!important;background:#298CBA!important;}a:hover,a:active,a:focus{color:#d54e21;}#wphead #viewsite a:hover,#adminmenu a:hover,#adminmenu ul.wp-submenu a:hover,#the-comment-list .comment a:hover,#rightnow a:hover,#media-upload a.del-link:hover,div.dashboard-widget-submit input:hover,.subsubsub a:hover,.subsubsub a.current:hover,.ui-tabs-nav a:hover,.plugins .inactive a:hover,#all-plugins-table .plugins .inactive a:hover,#search-plugins-table .plugins .inactive a:hover{color:#d54e21;}#the-comment-list .comment-item,#dashboard-widgets #dashboard_quick_press form p.submit{border-color:#dfdfdf;}#side-sortables .category-tabs .tabs a,#side-sortables .add-menu-item-tabs .tabs a,.wp-tab-bar .wp-tab-active a{color:#333;}#rightnow .rbutton{background-color:#ebebeb;color:#264761;}.submitbox .submit{background-color:#464646;color:#ccc;}.plugins a.delete:hover,#all-plugins-table .plugins a.delete:hover,#search-plugins-table .plugins a.delete:hover,.submitbox .submitdelete{color:#f00;border-bottom-color:#f00;}.submitbox .submitdelete:hover,#media-items a.delete:hover{color:#fff;background-color:#f00;border-bottom-color:#f00;}#normal-sortables .submitbox .submitdelete:hover{color:#000;background-color:#f00;border-bottom-color:#f00;}.tablenav .dots{border-color:transparent;}.tablenav .next,.tablenav .prev{border-color:transparent;color:#21759b;}.tablenav .next:hover,.tablenav .prev:hover{border-color:transparent;color:#d54e21;}div.updated,.login .message{background-color:#ffffe0;border-color:#e6db55;}.update-message{color:#000;}a.page-numbers{border-bottom-color:#B8D3E2;}.commentlist li{border-bottom-color:#ccc;}.widefat td,.widefat th{border-top-color:#fff;border-bottom-color:#dfdfdf;}.widefat th{text-shadow:rgba(255,255,255,0.8) 0 1px 0;}.widefat td{color:#555;}.widefat p,.widefat ol,.widefat ul{color:#333;}.widefat thead tr th,.widefat tfoot tr th,h3.dashboard-widget-title,h3.dashboard-widget-title span,h3.dashboard-widget-title small,.find-box-head{color:#333;}th.sortable a:hover,th.sortable a:active,th.sortable a:focus{color:#333;}h3.dashboard-widget-title small a{color:#d7d7d7;}h3.dashboard-widget-title small a:hover{color:#fff;}a,#adminmenu a,#poststuff #edButtonPreview,#poststuff #edButtonHTML,#the-comment-list p.comment-author strong a,#media-upload a.del-link,#media-items a.delete,.plugins a.delete,.ui-tabs-nav a{color:#21759b;}#adminmenu .awaiting-mod,#adminmenu .update-plugins,#sidemenu a .update-plugins,#rightnow .reallynow{background-color:#464646;color:#fff;-moz-box-shadow:rgba(255,255,255,0.5) 0 1px 0;-khtml-box-shadow:rgba(255,255,255,0.5) 0 1px 0;-webkit-box-shadow:rgba(255,255,255,0.5) 0 1px 0;box-shadow:rgba(255,255,255,0.5) 0 1px 0;}#plugin-information .action-button{background-color:#d54e21;color:#fff;}#adminmenu li.current a .awaiting-mod,#adminmenu li a.wp-has-current-submenu .update-plugins{background-color:#464646;color:#fff;-moz-box-shadow:rgba(255,255,255,0.5) 0 1px 0;-khtml-box-shadow:rgba(255,255,255,0.5) 0 1px 0;-webkit-box-shadow:rgba(255,255,255,0.5) 0 1px 0;box-shadow:rgba(255,255,255,0.5) 0 1px 0;}div#media-upload-header,div#plugin-information-header{background-color:#f9f9f9;border-bottom-color:#dfdfdf;}#currenttheme img{border-color:#666;}#dashboard_secondary div.dashboard-widget-content ul li a{background-color:#f9f9f9;}input.readonly,textarea.readonly{background-color:#ddd;}#ed_toolbar input,#ed_reply_toolbar input{background:#fff url("../images/fade-butt.png") repeat-x 0 -2px;}#editable-post-name{background-color:#fffbcc;}#edit-slug-box strong,.tablenav .displaying-num,#submitted-on,.submitted-on{color:#777;}.login #nav a,.login #backtoblog a{color:#21759b!important;}.login #nav a:hover,.login #backtoblog a:hover{color:#d54e21!important;}#footer{color:#777;border-color:#dfdfdf;}#media-items,.imgedit-group{border-color:#dfdfdf;}.checkbox,.side-info,.plugins tr,#your-profile #rich_editing{background-color:#fcfcfc;}.plugins .inactive,.plugins .inactive th,.plugins .inactive td,tr.inactive+tr.plugin-update-tr .plugin-update{background-color:#f4f4f4;}.plugin-update-tr .update-message{background-color:#fffbe4;border-color:#dfdfdf;}.plugins .active,.plugins .active th,.plugins .active td{color:#000;}.plugins .inactive a{color:#579;}#the-comment-list tr.undo,#the-comment-list div.undo{background-color:#f4f4f4;}#the-comment-list .unapproved{background-color:#ffffe0;}#the-comment-list .approve a{color:#006505;}#the-comment-list .unapprove a{color:#d98500;}table.widefat span.delete a,table.widefat span.trash a,table.widefat span.spam a,#dashboard_recent_comments .delete a,#dashboard_recent_comments .trash a,#dashboard_recent_comments .spam a{color:#bc0b0b;}.widget,#widget-list .widget-top,.postbox,#titlediv,#poststuff .postarea,.stuffbox{border-color:#dfdfdf;-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;}.widget,#widget-list .widget-top,.postbox,.menu-item-settings{background-color:#f5f5f5;background-image:-ms-linear-gradient(top,#f9f9f9,#f5f5f5);background-image:-moz-linear-gradient(top,#f9f9f9,#f5f5f5);background-image:-o-linear-gradient(top,#f9f9f9,#f5f5f5);background-image:-webkit-gradient(linear,left top,left bottom,from(#f9f9f9),to(#f5f5f5));background-image:-webkit-linear-gradient(top,#f9f9f9,#f5f5f5);background-image:linear-gradient(top,#f9f9f9,#f5f5f5);}.postbox h3{color:#464646;}.widget .widget-top{color:#222;}.sidebar-name:hover h3,.postbox h3:hover{color:#000;}.curtime #timestamp{background-image:url(../images/date-button.gif);}#quicktags #ed_link{color:#00f;}#rightnow .youhave{background-color:#f0f6fb;}#rightnow a{color:#448abd;}.tagchecklist span a,#bulk-titles div a{background:url(../images/xit.gif) no-repeat;}.tagchecklist span a:hover,#bulk-titles div a:hover{background:url(../images/xit.gif) no-repeat -10px 0;}#update-nag,.update-nag{background-color:#FFFBCC;border-color:#E6DB55;color:#555;}.login #backtoblog a{color:#464646;}#wphead{border-bottom:#dfdfdf 1px solid;}#wphead h1 a{color:#464646;}#user_info{color:#555;}#user_info:hover,#user_info.active{color:#222;}#user_info.active{background-color:#f1f1f1;background-image:-ms-linear-gradient(bottom,#e9e9e9,#f9f9f9);background-image:-moz-linear-gradient(bottom,#e9e9e9,#f9f9f9);background-image:-o-linear-gradient(bottom,#e9e9e9,#f9f9f9);background-image:-webkit-gradient(linear,left bottom,left top,from(#e9e9e9),to(#f9f9f9));background-image:-webkit-linear-gradient(bottom,#e9e9e9,#f9f9f9);background-image:linear-gradient(bottom,#e9e9e9,#f9f9f9);border-color:#aaa #aaa #dfdfdf;}#user_info_arrow{background:transparent url(../images/arrows.png) no-repeat 6px 5px;}#user_info:hover #user_info_arrow,#user_info.active #user_info_arrow{background:transparent url(../images/arrows-dark.png) no-repeat 6px 5px;}#user_info_links{-moz-box-shadow:0 3px 2px -2px rgba(0,0,0,0.2);-webkit-box-shadow:0 3px 2px -2px rgba(0,0,0,0.2);box-shadow:0 3px 2px -2px rgba(0,0,0,0.2);}#user_info_links ul{background:#f1f1f1;border-color:#ccc #aaa #aaa;-moz-box-shadow:inset 0 1px 0 #f9f9f9;-webkit-box-shadow:inset 0 1px 0 #f9f9f9;box-shadow:inset 0 1px 0 #f9f9f9;}#user_info_links li:hover{background-color:#dfdfdf;}#user_info_links li:hover a,#user_info_links li a:hover{text-decoration:none;}#user_info a:link,#user_info a:visited,#footer a:link,#footer a:visited{text-decoration:none;}#footer a:hover{color:#000;text-decoration:underline;}div#media-upload-error,.file-error,abbr.required,.widget-control-remove:hover,table.widefat .delete a:hover,table.widefat .trash a:hover,table.widefat .spam a:hover,#dashboard_recent_comments .delete a:hover,#dashboard_recent_comments .trash a:hover #dashboard_recent_comments .spam a:hover{color:#f00;}#pass-strength-result{background-color:#eee;border-color:#ddd!important;}#pass-strength-result.bad{background-color:#ffb78c;border-color:#ff853c!important;}#pass-strength-result.good{background-color:#ffec8b;border-color:#fc0!important;}#pass-strength-result.short{background-color:#ffa0a0;border-color:#f04040!important;}#pass-strength-result.strong{background-color:#c3ff88;border-color:#8dff1c!important;}#quicktags{border-color:#ccc;background-color:#dfdfdf;background-image:url("../images/ed-bg.gif");}#ed_toolbar input{border-color:#C3C3C3;}#ed_toolbar input:hover{border-color:#aaa;background:#ddd;}#poststuff .wp_themeSkin .mceStatusbar{border-color:#dfdfdf;}#poststuff .wp_themeSkin .mceStatusbar *{color:#555;}#poststuff #edButtonPreview,#poststuff #edButtonHTML{background-color:#f1f1f1;border-color:#dfdfdf #dfdfdf #ccc;color:#999;}#poststuff #editor-toolbar .active{border-color:#ccc #ccc #e9e9e9;background-color:#e9e9e9;color:#333;}#post-status-info{background-color:#EDEDED;}.wp_themeSkin *,.wp_themeSkin a:hover,.wp_themeSkin a:link,.wp_themeSkin a:visited,.wp_themeSkin a:active{color:#000;}.wp_themeSkin table.mceLayout{border-color:#ccc #ccc #dfdfdf;}#editorcontainer #content,#editorcontainer .wp_themeSkin .mceIframeContainer{-moz-box-shadow:inset 1px 1px 2px rgba(0,0,0,0.1);-webkit-box-shadow:inset 1px 1px 2px rgba(0,0,0,0.1);box-shadow:inset 1px 1px 2px rgba(0,0,0,0.1);}.wp_themeSkin iframe{background:transparent;}.wp_themeSkin .mceStatusbar{color:#000;background-color:#f5f5f5;}.wp_themeSkin .mceButton{border-color:#ccc;background-color:#eee;background-image:-ms-linear-gradient(bottom,#ddd,#fff);background-image:-moz-linear-gradient(bottom,#ddd,#fff);background-image:-o-linear-gradient(bottom,#ddd,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#ddd),to(#fff));background-image:-webkit-linear-gradient(bottom,#ddd,#fff);background-image:linear-gradient(bottom,#ddd,#fff);}.wp_themeSkin a.mceButtonEnabled:hover{border-color:#a0a0a0;background:#ddd;background-image:-ms-linear-gradient(bottom,#ccc,#fff);background-image:-moz-linear-gradient(bottom,#ccc,#fff);background-image:-o-linear-gradient(bottom,#ccc,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#ccc),to(#fff));background-image:-webkit-linear-gradient(bottom,#ccc,#fff);background-image:linear-gradient(bottom,#ccc,#fff);}.wp_themeSkin a.mceButton:active,.wp_themeSkin a.mceButtonEnabled:active,.wp_themeSkin a.mceButtonSelected:active,.wp_themeSkin a.mceButtonActive,.wp_themeSkin a.mceButtonActive:active,.wp_themeSkin a.mceButtonActive:hover{background-color:#ddd;background-image:-ms-linear-gradient(bottom,#eee,#bbb);background-image:-moz-linear-gradient(bottom,#eee,#bbb);background-image:-o-linear-gradient(bottom,#eee,#bbb);background-image:-webkit-gradient(linear,left bottom,left top,from(#eee),to(#bbb));background-image:-webkit-linear-gradient(bottom,#eee,#bbb);background-image:linear-gradient(bottom,#eee,#bbb);border-color:#909090;}.wp_themeSkin .mceButtonDisabled{border-color:#ccc!important;}.wp_themeSkin .mceListBox .mceText,.wp_themeSkin .mceListBox .mceOpen{border-color:#ccc;background-color:#eee;background-image:-ms-linear-gradient(bottom,#ddd,#fff);background-image:-moz-linear-gradient(bottom,#ddd,#fff);background-image:-o-linear-gradient(bottom,#ddd,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#ddd),to(#fff));background-image:-webkit-linear-gradient(bottom,#ddd,#fff);background-image:linear-gradient(bottom,#ddd,#fff);}.wp_themeSkin .mceListBox .mceOpen{border-left:0!important;}.wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,.wp_themeSkin .mceListBoxHover .mceOpen,.wp_themeSkin .mceListBoxHover:active .mceOpen,.wp_themeSkin .mceListBoxSelected .mceOpen,.wp_themeSkin .mceListBoxSelected .mceText,.wp_themeSkin table.mceListBoxEnabled:active .mceText{background:#ccc;border-color:#999;}.wp_themeSkin table.mceListBoxEnabled:hover .mceText,.wp_themeSkin .mceListBoxHover .mceText,.wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,.wp_themeSkin .mceListBoxHover .mceOpen{border-color:#909090;background-color:#eee;background-image:-ms-linear-gradient(bottom,#ccc,#fff);background-image:-moz-linear-gradient(bottom,#ccc,#fff);background-image:-o-linear-gradient(bottom,#ccc,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#ccc),to(#fff));background-image:-webkit-linear-gradient(bottom,#ccc,#fff);background-image:linear-gradient(bottom,#ccc,#fff);}.wp_themeSkin select.mceListBox{border-color:#B2B2B2;background-color:#fff;}.wp_themeSkin .mceSplitButton a.mceAction,.wp_themeSkin .mceSplitButton a.mceOpen{border-color:#ccc;}.wp_themeSkin .mceSplitButton a.mceOpen:hover,.wp_themeSkin .mceSplitButtonSelected a.mceOpen,.wp_themeSkin table.mceSplitButtonEnabled:hover a.mceAction,.wp_themeSkin .mceSplitButton a.mceAction:hover{border-color:#909090;}.wp_themeSkin table.mceSplitButton td{background-color:#eee;background-image:-ms-linear-gradient(bottom,#ddd,#fff);background-image:-moz-linear-gradient(bottom,#ddd,#fff);background-image:-o-linear-gradient(bottom,#ddd,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#ddd),to(#fff));background-image:-webkit-linear-gradient(bottom,#ddd,#fff);background-image:linear-gradient(bottom,#ddd,#fff);}.wp_themeSkin table.mceSplitButton:hover td{background-image:-ms-linear-gradient(bottom,#ccc,#fff);background-image:-moz-linear-gradient(bottom,#ccc,#fff);background-image:-o-linear-gradient(bottom,#ccc,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#ccc),to(#fff));background-image:-webkit-linear-gradient(bottom,#ccc,#fff);background-image:linear-gradient(bottom,#ccc,#fff);}.wp_themeSkin .mceSplitButtonActive{background-color:#B2B2B2;}.wp_themeSkin div.mceColorSplitMenu table{background-color:#ebebeb;border-color:#B2B2B2;}.wp_themeSkin .mceColorSplitMenu a{border-color:#B2B2B2;}.wp_themeSkin .mceColorSplitMenu a.mceMoreColors{border-color:#fff;}.wp_themeSkin .mceColorSplitMenu a.mceMoreColors:hover{border-color:#0A246A;background-color:#B6BDD2;}.wp_themeSkin a.mceMoreColors:hover{border-color:#0A246A;}.wp_themeSkin .mceMenu{border-color:#ddd;}.wp_themeSkin .mceMenu table{background-color:#ebeaeb;}.wp_themeSkin .mceMenu .mceText{color:#000;}.wp_themeSkin .mceMenu .mceMenuItemEnabled a:hover,.wp_themeSkin .mceMenu .mceMenuItemActive{background-color:#f5f5f5;}.wp_themeSkin td.mceMenuItemSeparator{background-color:#aaa;}.wp_themeSkin .mceMenuItemTitle a{background-color:#ccc;border-bottom-color:#aaa;}.wp_themeSkin .mceMenuItemTitle span.mceText{color:#000;}.wp_themeSkin .mceMenuItemDisabled .mceText{color:#888;}.wp_themeSkin tr.mceFirst td.mceToolbar{background:#dfdfdf url("../images/ed-bg.gif") repeat-x scroll left top;border-color:#ccc;}.wp-admin #mceModalBlocker{background:#000;}.wp-admin .clearlooks2 .mceFocus .mceTop .mceLeft{background:#444;border-left:1px solid #999;border-top:1px solid #999;-moz-border-radius:3px 0 0 0;-webkit-border-top-left-radius:3px;-khtml-border-top-left-radius:3px;border-top-left-radius:3px;}.wp-admin .clearlooks2 .mceFocus .mceTop .mceRight{background:#444;border-right:1px solid #999;border-top:1px solid #999;border-top-right-radius:3px;-khtml-border-top-right-radius:3px;-webkit-border-top-right-radius:3px;-moz-border-radius:0 3px 0 0;}.wp-admin .clearlooks2 .mceMiddle .mceLeft{background:#f1f1f1;border-left:1px solid #999;}.wp-admin .clearlooks2 .mceMiddle .mceRight{background:#f1f1f1;border-right:1px solid #999;}.wp-admin .clearlooks2 .mceBottom{background:#f1f1f1;border-bottom:1px solid #999;}.wp-admin .clearlooks2 .mceBottom .mceLeft{background:#f1f1f1;border-bottom:1px solid #999;border-left:1px solid #999;}.wp-admin .clearlooks2 .mceBottom .mceCenter{background:#f1f1f1;border-bottom:1px solid #999;}.wp-admin .clearlooks2 .mceBottom .mceRight{background:#f1f1f1;border-bottom:1px solid #999;border-right:1px solid #999;}.wp-admin .clearlooks2 .mceFocus .mceTop span{color:#e5e5e5;}#titlediv #title{border-color:#ccc;}#editorcontainer{border-color:#ccc #ccc #dfdfdf;}#post-status-info{border-color:#dfdfdf #ccc #ccc;}.editwidget .widget-inside{border-color:#dfdfdf;}#titlediv #title{background-color:#fff;}#tTips p#tTips_inside{background-color:#ddd;color:#333;}#timestampdiv input,#namediv input,#poststuff .inside .the-tagcloud{border-color:#ddd;}#adminmenuback,#adminmenuwrap{background-color:#ececec;border-color:#ccc;}#adminmenushadow,#adminmenuback{background-image:url(../images/menu-shadow.png);background-position:top right;background-repeat:repeat-y;}#adminmenu li.wp-menu-separator{background:#dfdfdf;border-color:#cfcfcf;}#adminmenu div.separator{border-color:#e1e1e1;}#adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,#adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle{background:transparent url(../images/arrows-dark.png) no-repeat -1px 6px;}#adminmenu .wp-has-submenu:hover .wp-menu-toggle,#adminmenu .wp-menu-open .wp-menu-toggle{background:transparent url(../images/arrows.png) no-repeat -2px 6px;}#adminmenu a.menu-top,.folded #adminmenu li.menu-top,#adminmenu .wp-submenu .wp-submenu-head{border-top-color:#f9f9f9;border-bottom-color:#dfdfdf;}#adminmenu li.wp-menu-open{border-color:#dfdfdf;}#adminmenu li.wp-has-current-submenu a.wp-has-current-submenu,#adminmenu li.current a.menu-top,.folded #adminmenu li.wp-has-current-submenu,.folded #adminmenu li.current.menu-top,#adminmenu .wp-menu-arrow,#adminmenu .wp-has-current-submenu .wp-submenu .wp-submenu-head{background-color:#777;background-image:-ms-linear-gradient(bottom,#6d6d6d,#808080);background-image:-moz-linear-gradient(bottom,#6d6d6d,#808080);background-image:-o-linear-gradient(bottom,#6d6d6d,#808080);background-image:-webkit-gradient(linear,left bottom,left top,from(#6d6d6d),to(#808080));background-image:-webkit-linear-gradient(bottom,#6d6d6d,#808080);background-image:linear-gradient(bottom,#6d6d6d,#808080);}#adminmenu li.wp-has-current-submenu a.wp-has-current-submenu,#adminmenu li.current a.menu-top,#adminmenu .wp-has-current-submenu .wp-submenu .wp-submenu-head{text-shadow:0 -1px 0 #333;color:#fff;border-top-color:#808080;border-bottom-color:#6d6d6d;}.folded #adminmenu li.wp-has-current-submenu,.folded #adminmenu li.current.menu-top{border-top-color:#808080;border-bottom-color:#6d6d6d;}#adminmenu .wp-submenu a:hover{background-color:#EAF2FA!important;color:#333!important;}#adminmenu .wp-submenu li.current,#adminmenu .wp-submenu li.current a,#adminmenu .wp-submenu li.current a:hover{color:#333;}#adminmenu .wp-submenu ul{background-color:#fff;}.folded #adminmenu .wp-submenu-wrap,.folded #adminmenu .wp-submenu ul{border-color:#dfdfdf;}.folded #adminmenu .wp-submenu-wrap{-moz-box-shadow:2px 2px 5px rgba(0,0,0,0.4);-webkit-box-shadow:2px 2px 5px rgba(0,0,0,0.4);box-shadow:2px 2px 5px rgba(0,0,0,0.4);}#adminmenu .wp-submenu .wp-submenu-head{border-right-color:#dfdfdf;background-color:#ececec;}#adminmenu div.wp-submenu{background-color:transparent;}#collapse-menu{color:#aaa;}#collapse-menu:hover{color:#999;}#collapse-button{border-color:#ccc;background-color:#f4f4f4;background-image:-ms-linear-gradient(bottom,#dfdfdf,#fff);background-image:-moz-linear-gradient(bottom,#dfdfdf,#fff);background-image:-o-linear-gradient(bottom,#dfdfdf,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#dfdfdf),to(#fff));background-image:-webkit-linear-gradient(bottom,#dfdfdf,#fff);background-image:linear-gradient(bottom,#dfdfdf,#fff);}#collapse-menu:hover #collapse-button{border-color:#aaa;}#collapse-button div{background:transparent url(../images/arrows.png) no-repeat 0 -72px;}.folded #collapse-button div{background-position:0 -108px;}#adminmenu .menu-icon-dashboard div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll -60px -33px;}#adminmenu .menu-icon-dashboard:hover div.wp-menu-image,#adminmenu .menu-icon-dashboard.wp-has-current-submenu div.wp-menu-image,#adminmenu .menu-icon-dashboard.current div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll -60px -1px;}#adminmenu .menu-icon-post div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll -271px -33px;}#adminmenu .menu-icon-post:hover div.wp-menu-image,#adminmenu .menu-icon-post.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll -271px -1px;}#adminmenu .menu-icon-media div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll -120px -33px;}#adminmenu .menu-icon-media:hover div.wp-menu-image,#adminmenu .menu-icon-media.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll -120px -1px;}#adminmenu .menu-icon-links div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll -90px -33px;}#adminmenu .menu-icon-links:hover div.wp-menu-image,#adminmenu .menu-icon-links.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll -90px -1px;}#adminmenu .menu-icon-page div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll -150px -33px;}#adminmenu .menu-icon-page:hover div.wp-menu-image,#adminmenu .menu-icon-page.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll -150px -1px;}#adminmenu .menu-icon-comments div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll -30px -33px;}#adminmenu .menu-icon-comments:hover div.wp-menu-image,#adminmenu .menu-icon-comments.wp-has-current-submenu div.wp-menu-image,#adminmenu .menu-icon-comments.current div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll -30px -1px;}#adminmenu .menu-icon-appearance div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll 0 -33px;}#adminmenu .menu-icon-appearance:hover div.wp-menu-image,#adminmenu .menu-icon-appearance.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll 0 -1px;}#adminmenu .menu-icon-plugins div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll -180px -33px;}#adminmenu .menu-icon-plugins:hover div.wp-menu-image,#adminmenu .menu-icon-plugins.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll -180px -1px;}#adminmenu .menu-icon-users div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll -300px -33px;}#adminmenu .menu-icon-users:hover div.wp-menu-image,#adminmenu .menu-icon-users.wp-has-current-submenu div.wp-menu-image,#adminmenu .menu-icon-users.current div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll -300px -1px;}#adminmenu .menu-icon-tools div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll -210px -33px;}#adminmenu .menu-icon-tools:hover div.wp-menu-image,#adminmenu .menu-icon-tools.wp-has-current-submenu div.wp-menu-image,#adminmenu .menu-icon-tools.current div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll -210px -1px;}#icon-options-general,#adminmenu .menu-icon-settings div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll -240px -33px;}#adminmenu .menu-icon-settings:hover div.wp-menu-image,#adminmenu .menu-icon-settings.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll -240px -1px;}#adminmenu .menu-icon-site div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll -360px -33px;}#adminmenu .menu-icon-site:hover div.wp-menu-image,#adminmenu .menu-icon-site.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu.png?ver=20100531') no-repeat scroll -360px -1px;}#icon-edit,#icon-post{background:transparent url(../images/icons32.png?ver=20100531) no-repeat -552px -5px;}#icon-index{background:transparent url(../images/icons32.png?ver=20100531) no-repeat -137px -5px;}#icon-upload{background:transparent url(../images/icons32.png?ver=20100531) no-repeat -251px -5px;}#icon-link-manager,#icon-link,#icon-link-category{background:transparent url(../images/icons32.png?ver=20100531) no-repeat -190px -5px;}#icon-edit-pages,#icon-page{background:transparent url(../images/icons32.png?ver=20100531) no-repeat -312px -5px;}#icon-edit-comments{background:transparent url(../images/icons32.png?ver=20100531) no-repeat -72px -5px;}#icon-themes{background:transparent url(../images/icons32.png?ver=20100531) no-repeat -11px -5px;}#icon-plugins{background:transparent url(../images/icons32.png?ver=20100531) no-repeat -370px -5px;}#icon-users,#icon-profile,#icon-user-edit{background:transparent url(../images/icons32.png?ver=20100531) no-repeat -600px -5px;}#icon-tools,#icon-admin{background:transparent url(../images/icons32.png?ver=20100531) no-repeat -432px -5px;}#icon-options-general{background:transparent url(../images/icons32.png?ver=20100531) no-repeat -492px -5px;}#icon-ms-admin{background:transparent url(../images/icons32.png?ver=20100531) no-repeat -659px -5px;}table.diff .diff-deletedline{background-color:#fdd;}table.diff .diff-deletedline del{background-color:#f99;}table.diff .diff-addedline{background-color:#dfd;}table.diff .diff-addedline ins{background-color:#9f9;}#att-info{background-color:#E4F2FD;}#sidemenu a{background-color:#f9f9f9;border-color:#f9f9f9;border-bottom-color:#dfdfdf;}#sidemenu a.current{background-color:#fff;border-color:#dfdfdf #dfdfdf #fff;color:#D54E21;}#screen-options-wrap,#contextual-help-wrap{background-color:#f1f1f1;border-color:#dfdfdf;}#screen-options-link-wrap,#contextual-help-link-wrap{background-color:#e3e3e3;border-right:1px solid transparent;border-left:1px solid transparent;border-bottom:1px solid transparent;background-image:-ms-linear-gradient(bottom,#dfdfdf,#f1f1f1);background-image:-moz-linear-gradient(bottom,#dfdfdf,#f1f1f1);background-image:-o-linear-gradient(bottom,#dfdfdf,#f1f1f1);background-image:-webkit-gradient(linear,left bottom,left top,from(#dfdfdf),to(#f1f1f1));background-image:-webkit-linear-gradient(bottom,#dfdfdf,#f1f1f1);background-image:linear-gradient(bottom,#dfdfdf,#f1f1f1);}#screen-meta-links a.show-settings{color:#777;}#screen-meta-links a.show-settings:hover{color:#000;}#replysubmit{background-color:#f1f1f1;border-top-color:#ddd;}#replyerror{border-color:#ddd;background-color:#f9f9f9;}#edithead,#replyhead{background-color:#f1f1f1;}#ed_reply_toolbar{background-color:#e9e9e9;}.vim-current,.vim-current th,.vim-current td{background-color:#E4F2FD!important;}.star-average,.star.star-rating{background-color:#fc0;}div.star.select:hover{background-color:#d00;}div.star img{border-left:1px solid #fff;border-right:1px solid #fff;}.widefat div.star img{border-left:1px solid #f9f9f9;border-right:1px solid #f9f9f9;}#plugin-information .fyi ul{background-color:#eaf3fa;}#plugin-information .fyi h2.mainheader{background-color:#cee1ef;}#plugin-information pre,#plugin-information code{background-color:#ededff;}#plugin-information pre{border:1px solid #ccc;}.inline-edit-row fieldset input[type="text"],.inline-edit-row fieldset textarea,#bulk-titles,#replyrow input{border-color:#ddd;}.inline-editor div.title{background-color:#EAF3FA;}.inline-editor ul.cat-checklist{background-color:#fff;border-color:#ddd;}.inline-editor .categories .catshow,.inline-editor .categories .cathide{color:#21759b;}.inline-editor .quick-edit-save{background-color:#f1f1f1;}#replyrow #ed_reply_toolbar input:hover{border-color:#aaa;background:#ddd;}fieldset.inline-edit-col-right .inline-edit-col{border-color:#dfdfdf;}.attention{color:#D54E21;}.meta-box-sortables .postbox:hover .handlediv{background:transparent url(../images/arrows.png) no-repeat 6px 7px;}.tablenav .tablenav-pages{color:#555;}.tablenav .tablenav-pages a{border-color:#e3e3e3;background:#eee url('../images/menu-bits.gif?ver=20100610') repeat-x scroll left -379px;}.tablenav .tablenav-pages a:hover,.tablenav .tablenav-pages a:focus{color:#d54e21;}.tablenav .tablenav-pages a.disabled,.tablenav .tablenav-pages a.disabled:hover,.tablenav .tablenav-pages a.disabled:focus{color:#aaa;}.tablenav .tablenav-pages .current{background:#dfdfdf;border-color:#d3d3d3;}#availablethemes,#availablethemes td{border-color:#ddd;}#current-theme img{border-color:#999;}#TB_window #TB_title a.tb-theme-preview-link,#TB_window #TB_title a.tb-theme-preview-link:visited{color:#999;}#TB_window #TB_title a.tb-theme-preview-link:hover,#TB_window #TB_title a.tb-theme-preview-link:focus{color:#ccc;}.misc-pub-section{border-top-color:#fff;border-bottom-color:#dfdfdf;}#minor-publishing{border-bottom-color:#dfdfdf;}#post-body .misc-pub-section{border-right-color:#eee;}.post-com-count span{background-color:#bbb;}.form-table .color-palette td{border-color:#fff;}.sortable-placeholder{border-color:#bbb;background-color:#f5f5f5;}#post-body ul.category-tabs li.tabs a,#post-body ul.add-menu-item-tabs li.tabs a,body.press-this ul.category-tabs li.tabs a{color:#333;}#wp_editimgbtn,#wp_delimgbtn,#wp_editgallery,#wp_delgallery{border-color:#999;background-color:#eee;}#wp_editimgbtn:hover,#wp_delimgbtn:hover,#wp_editgallery:hover,#wp_delgallery:hover{border-color:#555;background-color:#ccc;}#favorite-first{border-color:#c0c0c0;background:#f1f1f1;background:-moz-linear-gradient(bottom,#e7e7e7,#fff);background:-webkit-gradient(linear,left bottom,left top,from(#e7e7e7),to(#fff));}#favorite-inside{border-color:#c0c0c0;background-color:#fff;}#favorite-toggle{background:transparent url(../images/arrows.png) no-repeat 4px 2px;border-color:#dfdfdf;-moz-box-shadow:inset 1px 0 0 #fff;-webkit-box-shadow:inset 1px 0 0 #fff;box-shadow:inset 1px 0 0 #fff;}#favorite-actions a{color:#464646;}#favorite-actions a:hover{color:#000;}#favorite-inside a:hover{text-decoration:underline;}#screen-meta a.show-settings,.toggle-arrow{background:transparent url(../images/arrows.png) no-repeat right 3px;}#screen-meta .screen-meta-active a.show-settings{background:transparent url(../images/arrows.png) no-repeat right -33px;}.view-switch #view-switch-list{background:transparent url(../images/list.png) no-repeat 0 0;}.view-switch .current #view-switch-list{background:transparent url(../images/list.png) no-repeat -40px 0;}.view-switch #view-switch-excerpt{background:transparent url(../images/list.png) no-repeat -20px 0;}.view-switch .current #view-switch-excerpt{background:transparent url(../images/list.png) no-repeat -60px 0;}#header-logo{background:transparent url(../images/wp-logo.png?ver=20110504) no-repeat scroll center center;}.popular-tags,.feature-filter{background-color:#fff;border-color:#DFDFDF;}#theme-information .action-button{border-top-color:#DFDFDF;}.theme-listing br.line{border-bottom-color:#ccc;}div.widgets-sortables,#widgets-left .inactive{background-color:#fcfcfc;border-color:#dfdfdf;}#available-widgets .widget-holder{background-color:#fcfcfc;border-color:#dfdfdf;}#available-widgets .widget-description{color:#555;}.sidebar-name{color:#464646;text-shadow:#fff 0 1px 0;border-color:#dfdfdf;-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;}.sidebar-name:hover,#removing-widget{color:#d54e21;}#removing-widget span{color:black;}.sidebar-name-arrow{background:transparent url(../images/arrows.png) no-repeat 5px 9px;}.sidebar-name:hover .sidebar-name-arrow{background:transparent url(../images/arrows-dark.png) no-repeat 5px 9px;}.in-widget-title{color:#606060;}.deleting .widget-title *{color:#aaa;}.imgedit-menu div{border-color:#d5d5d5;background-color:#f1f1f1;}.imgedit-menu div:hover{border-color:#c1c1c1;background-color:#eaeaea;}.imgedit-menu div.disabled{border-color:#ccc;background-color:#ddd;filter:alpha(opacity=50);opacity:.5;}#dashboard_recent_comments div.undo{border-top-color:#dfdfdf;}.comment-ays,.comment-ays th{border-color:#ddd;}.comment-ays th{background-color:#f1f1f1;}#menu-management .menu-edit{border-color:#dfdfdf;}#post-body{background:#fff;border-top-color:#fff;border-bottom-color:#dfdfdf;}#nav-menu-header{border-bottom-color:#dfdfdf;}#nav-menu-footer{border-top-color:#fff;}#menu-management .nav-tabs-arrow a{color:#C1C1C1;}#menu-management .nav-tabs-arrow a:hover{color:#D54E21;}#menu-management .nav-tabs-arrow a:active{color:#464646;}#menu-management .nav-tab-active{border-color:#dfdfdf;}#menu-management .nav-tab{background:#fbfbfb;border-color:#dfdfdf;}.js .input-with-default-title{color:#aaa;}#cancel-save{color:#f00;}#cancel-save:hover{background-color:#F00;color:#fff;}.list-container{border-color:#DFDFDF;}.menu-item-handle{border-color:#dfdfdf;}.menu li.deleting .menu-item-handle{background-color:#f66;text-shadow:#ccc;}.item-type{color:#999;}.item-controls .menu-item-delete:hover{color:#f00;}.item-edit{background:transparent url(../images/arrows.png) no-repeat 8px 10px;border-bottom-color:#eee;}.item-edit:hover{background:transparent url(../images/arrows-dark.png) no-repeat 8px 10px;}.menu-item-settings{border-color:#dfdfdf;}.link-to-original{color:#777;border-color:#dfdfdf;}#cancel-save:hover{color:#fff!important;}#update-menu-item{color:#fff!important;}#update-menu-item:hover,#update-menu-item:active,#update-menu-item:focus{color:#eaf2fa!important;border-color:#13455b!important;}.submitbox .submitcancel{color:#21759B;border-bottom-color:#21759B;}.submitbox .submitcancel:hover{background:#21759B;color:#fff;}#menu-management .nav-tab-active,.menu-item-handle,.menu-item-settings{-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;}#menu-management .nav-tab-active{background:#f9f9f9;border-bottom-color:#f9f9f9;}#upload-form label{color:#777;}.fullscreen-overlay{background:#fff;}.wp-fullscreen-focus #wp-fullscreen-title,.wp-fullscreen-focus #wp-fullscreen-container{border-color:#ccc;}#fullscreen-topbar{border-bottom-color:#DFDFDF;}
\ No newline at end of file
+html,.wp-dialog{background-color:#fff;}textarea,input[type="text"],input[type="password"],input[type="file"],input[type="button"],input[type="submit"],input[type="reset"],input[type="email"],input[type="number"],input[type="search"],input[type="tel"],input[type="url"],select{border-color:#dfdfdf;background-color:#fff;}textarea:focus,input[type="text"]:focus,input[type="password"]:focus,input[type="file"]:focus,input[type="button"]:focus,input[type="submit"]:focus,input[type="reset"]:focus,input[type="email"]:focus,input[type="number"]:focus,input[type="search"]:focus,input[type="tel"]:focus,input[type="url"]:focus,select:focus{border-color:#bbb;}kbd,code{background:#eaeaea;}input[readonly]{background-color:#eee;}.find-box-search{border-color:#dfdfdf;background-color:#f1f1f1;}.find-box{background-color:#f1f1f1;}.find-box-inside{background-color:#fff;}a.page-numbers:hover{border-color:#999;}body,#wpbody,.form-table .pre{color:#333;}body>#upload-menu{border-bottom-color:#fff;}#postcustomstuff table,#your-profile fieldset,#rightnow,div.dashboard-widget,#dashboard-widgets p.dashboard-widget-links{border-color:#ccc;}#poststuff .inside label.spam,#poststuff .inside label.deleted{color:red;}#poststuff .inside label.waiting{color:orange;}#poststuff .inside label.approved{color:green;}#postcustomstuff table{border-color:#dfdfdf;background-color:#F9F9F9;}#postcustomstuff thead th{background-color:#F1F1F1;}.widefat{border-color:#dfdfdf;background-color:#f9f9f9;}textarea.widefat{background-color:#fff;}div.dashboard-widget-error{background-color:#c43;}div.dashboard-widget-notice{background-color:#cfe1ef;}div.dashboard-widget-submit{border-top-color:#ccc;}div.tabs-panel,.wp-tab-panel,ul.category-tabs li.tabs,ul.add-menu-item-tabs li.tabs,.wp-tab-active{border-color:#dfdfdf;background-color:#fff;}ul.category-tabs li.tabs,ul.add-menu-item-tabs li.tabs,.wp-tab-active{background-color:#fff;}input.disabled,textarea.disabled{background-color:#ccc;}#plugin-information .action-button a,#plugin-information .action-button a:hover,#plugin-information .action-button a:visited{color:#fff;}.widget .widget-top,.postbox h3,.stuffbox h3,.widefat thead tr th,.widefat tfoot tr th,h3.dashboard-widget-title,h3.dashboard-widget-title span,h3.dashboard-widget-title small,.find-box-head,.sidebar-name,#nav-menu-header,#nav-menu-footer,.menu-item-handle,#fullscreen-topbar{background-color:#f1f1f1;background-image:-ms-linear-gradient(top,#f9f9f9,#ececec);background-image:-moz-linear-gradient(top,#f9f9f9,#ececec);background-image:-o-linear-gradient(top,#f9f9f9,#ececec);background-image:-webkit-gradient(linear,left top,left bottom,from(#f9f9f9),to(#ececec));background-image:-webkit-linear-gradient(top,#f9f9f9,#ececec);background-image:linear-gradient(top,#f9f9f9,#ececec);}.widget .widget-top,.postbox h3,.stuffbox h3{border-bottom-color:#dfdfdf;text-shadow:#fff 0 1px 0;-moz-box-shadow:0 1px 0 #fff;-webkit-box-shadow:0 1px 0 #fff;box-shadow:0 1px 0 #fff;}.form-table th,.form-wrap label{color:#222;text-shadow:#fff 0 1px 0;}.description,.form-wrap p{color:#666;}strong .post-com-count span{background-color:#21759b;}.sorthelper{background-color:#ccf3fa;}.ac_match,.subsubsub a.current{color:#000;}.wrap h2{color:#464646;}.wrap .add-new-h2{background:#f1f1f1;}.subtitle{color:#777;}.ac_over{background-color:#f0f0b8;}.ac_results{background-color:#fff;border-color:#808080;}.ac_results li{color:#101010;}.alternate,.alt{background-color:#fcfcfc;}.available-theme a.screenshot{background-color:#f1f1f1;border-color:#ddd;}.bar{background-color:#e8e8e8;border-right-color:#99d;}#media-upload,#media-upload .media-item .slidetoggle{background:#fff;}#media-upload .slidetoggle{border-top-color:#dfdfdf;}div.error,.login #login_error{background-color:#ffebe8;border-color:#c00;}div.error a{color:#c00;}.form-invalid{background-color:#ffebe8!important;}.form-invalid input,.form-invalid select{border-color:#c00!important;}.submit{border-color:#DFDFDF;}.highlight{background-color:#e4f2fd;color:#000;}.howto,.nonessential,#edit-slug-box,.form-input-tip,.subsubsub{color:#666;}.media-upload-form label.form-help,td.help{color:#9a9a9a;}.post-com-count{background-image:url(../images/bubble_bg.gif);color:#fff;}.post-com-count span{background-color:#bbb;color:#fff;}.post-com-count:hover span{background-color:#d54e21;}.quicktags,.search{background-color:#ccc;color:#000;}.side-info h5{border-bottom-color:#dadada;}.side-info ul{color:#666;}.button,.button-secondary,.submit input,input[type=button],input[type=submit]{border-color:#bbb;color:#464646;}.button:hover,.button-secondary:hover,.submit input:hover,input[type=button]:hover,input[type=submit]:hover{color:#000;border-color:#666;}.button,.submit input,.button-secondary{background:#f2f2f2 url(../images/white-grad.png) repeat-x scroll left top;text-shadow:rgba(255,255,255,1) 0 1px 0;}.button:active,.submit input:active,.button-secondary:active{background:#eee url(../images/white-grad-active.png) repeat-x scroll left top;}input.button-primary,button.button-primary,a.button-primary{border-color:#298cba;font-weight:bold;color:#fff;background:#21759B url(../images/button-grad.png) repeat-x scroll left top;text-shadow:rgba(0,0,0,0.3) 0 -1px 0;}input.button-primary:active,button.button-primary:active,a.button-primary:active{background:#21759b url(../images/button-grad-active.png) repeat-x scroll left top;color:#eaf2fa;}input.button-primary:hover,button.button-primary:hover,a.button-primary:hover,a.button-primary:focus,a.button-primary:active{border-color:#13455b;color:#eaf2fa;}.button-disabled,.button[disabled],.button:disabled,.button-secondary[disabled],.button-secondary:disabled,a.button.disabled{color:#aaa!important;border-color:#ddd!important;}.button-primary-disabled,.button-primary[disabled],.button-primary:disabled{color:#9FD0D5!important;background:#298CBA!important;}a:hover,a:active,a:focus{color:#d54e21;}#adminmenu a:hover,#adminmenu li.menu-top>a:focus,#adminmenu ul.wp-submenu a:hover,#the-comment-list .comment a:hover,#rightnow a:hover,#media-upload a.del-link:hover,div.dashboard-widget-submit input:hover,.subsubsub a:hover,.subsubsub a.current:hover,.ui-tabs-nav a:hover,.plugins .inactive a:hover,#all-plugins-table .plugins .inactive a:hover,#search-plugins-table .plugins .inactive a:hover{color:#d54e21;}#the-comment-list .comment-item,#dashboard-widgets #dashboard_quick_press form p.submit{border-color:#dfdfdf;}#side-sortables .category-tabs .tabs a,#side-sortables .add-menu-item-tabs .tabs a,.wp-tab-bar .wp-tab-active a{color:#333;}#rightnow .rbutton{background-color:#ebebeb;color:#264761;}.submitbox .submit{background-color:#464646;color:#ccc;}.plugins a.delete:hover,#all-plugins-table .plugins a.delete:hover,#search-plugins-table .plugins a.delete:hover,.submitbox .submitdelete{color:#f00;border-bottom-color:#f00;}.submitbox .submitdelete:hover,#media-items a.delete:hover{color:#fff;background-color:#f00;border-bottom-color:#f00;}#normal-sortables .submitbox .submitdelete:hover{color:#000;background-color:#f00;border-bottom-color:#f00;}.tablenav .dots{border-color:transparent;}.tablenav .next,.tablenav .prev{border-color:transparent;color:#21759b;}.tablenav .next:hover,.tablenav .prev:hover{border-color:transparent;color:#d54e21;}div.updated,.login .message{background-color:#ffffe0;border-color:#e6db55;}.update-message{color:#000;}a.page-numbers{border-bottom-color:#B8D3E2;}.commentlist li{border-bottom-color:#ccc;}.widefat td,.widefat th{border-top-color:#fff;border-bottom-color:#dfdfdf;}.widefat th{text-shadow:rgba(255,255,255,0.8) 0 1px 0;}.widefat td{color:#555;}.widefat p,.widefat ol,.widefat ul{color:#333;}.widefat thead tr th,.widefat tfoot tr th,h3.dashboard-widget-title,h3.dashboard-widget-title span,h3.dashboard-widget-title small,.find-box-head{color:#333;}th.sortable a:hover,th.sortable a:active,th.sortable a:focus{color:#333;}h3.dashboard-widget-title small a{color:#d7d7d7;}h3.dashboard-widget-title small a:hover{color:#fff;}a,#adminmenu a,#the-comment-list p.comment-author strong a,#media-upload a.del-link,#media-items a.delete,.plugins a.delete,.ui-tabs-nav a{color:#21759b;}#adminmenu .awaiting-mod,#adminmenu .update-plugins,#sidemenu a .update-plugins,#rightnow .reallynow{background-color:#464646;color:#fff;-moz-box-shadow:rgba(255,255,255,0.5) 0 1px 0;-webkit-box-shadow:rgba(255,255,255,0.5) 0 1px 0;box-shadow:rgba(255,255,255,0.5) 0 1px 0;}#plugin-information .action-button{background-color:#d54e21;color:#fff;}#adminmenu li.current a .awaiting-mod,#adminmenu li a.wp-has-current-submenu .update-plugins{background-color:#464646;color:#fff;-moz-box-shadow:rgba(255,255,255,0.5) 0 1px 0;-webkit-box-shadow:rgba(255,255,255,0.5) 0 1px 0;box-shadow:rgba(255,255,255,0.5) 0 1px 0;}div#media-upload-header,div#plugin-information-header{background-color:#f9f9f9;border-bottom-color:#dfdfdf;}#currenttheme img{border-color:#666;}#dashboard_secondary div.dashboard-widget-content ul li a{background-color:#f9f9f9;}input.readonly,textarea.readonly{background-color:#ddd;}#editable-post-name{background-color:#fffbcc;}#edit-slug-box strong,.tablenav .displaying-num,#submitted-on,.submitted-on{color:#777;}.login #nav a,.login #backtoblog a{color:#21759b!important;}.login #nav a:hover,.login #backtoblog a:hover{color:#d54e21!important;}#footer{color:#777;border-color:#dfdfdf;}.imgedit-group,#media-items .media-item,.media-item .describe{border-color:#dfdfdf;}.checkbox,.side-info,.plugins tr,#your-profile #rich_editing{background-color:#fcfcfc;}.plugins .inactive,.plugins .inactive th,.plugins .inactive td,tr.inactive+tr.plugin-update-tr .plugin-update{background-color:#f4f4f4;}.plugin-update-tr .update-message{background-color:#fffbe4;border-color:#dfdfdf;}.plugins .active,.plugins .active th,.plugins .active td{color:#000;}.plugins .inactive a{color:#579;}#the-comment-list tr.undo,#the-comment-list div.undo{background-color:#f4f4f4;}#the-comment-list .unapproved{background-color:#ffffe0;}#the-comment-list .approve a{color:#006505;}#the-comment-list .unapprove a{color:#d98500;}table.widefat span.delete a,table.widefat span.trash a,table.widefat span.spam a,#dashboard_recent_comments .delete a,#dashboard_recent_comments .trash a,#dashboard_recent_comments .spam a{color:#bc0b0b;}.welcome-panel{border-color:#dfdfdf;}.welcome-panel p{color:#777;}.welcome-panel-column p{color:#464646;}.welcome-panel h3{text-shadow:1px 1px 1px white;}.widget,#widget-list .widget-top,.postbox,#titlediv,#poststuff .postarea,.stuffbox{border-color:#dfdfdf;-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;-webkit-border-radius:3px;border-radius:3px;}.widget,#widget-list .widget-top,.postbox,.menu-item-settings{background-color:#f5f5f5;background-image:-ms-linear-gradient(top,#f9f9f9,#f5f5f5);background-image:-moz-linear-gradient(top,#f9f9f9,#f5f5f5);background-image:-o-linear-gradient(top,#f9f9f9,#f5f5f5);background-image:-webkit-gradient(linear,left top,left bottom,from(#f9f9f9),to(#f5f5f5));background-image:-webkit-linear-gradient(top,#f9f9f9,#f5f5f5);background-image:linear-gradient(top,#f9f9f9,#f5f5f5);}.postbox h3{color:#464646;}.widget .widget-top{color:#222;}.sidebar-name:hover h3,.postbox h3:hover{color:#000;}.curtime #timestamp{background-image:url(../images/date-button.gif);}#quicktags #ed_link{color:#00f;}#rightnow .youhave{background-color:#f0f6fb;}#rightnow a{color:#448abd;}.tagchecklist span a,#bulk-titles div a{background:url(../images/xit.gif) no-repeat;}.tagchecklist span a:hover,#bulk-titles div a:hover{background:url(../images/xit.gif) no-repeat -10px 0;}#update-nag,.update-nag{background-color:#FFFBCC;border-color:#E6DB55;color:#555;}#screen-meta{background-color:#f1f1f1;border-color:#ccc;-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.05);box-shadow:0 1px 3px rgba(0,0,0,0.05);}#contextual-help-back{background:#fff;}.contextual-help-tabs a:hover{color:#333;}#contextual-help-back,.contextual-help-tabs .active{border-color:#ccc;}.contextual-help-tabs .active,.contextual-help-tabs .active a,.contextual-help-tabs .active a:hover{background:#fff;color:#000;}#screen-options-link-wrap,#contextual-help-link-wrap{background-color:#e3e3e3;border-right:1px solid transparent;border-left:1px solid transparent;border-bottom:1px solid transparent;background-image:-ms-linear-gradient(bottom,#dfdfdf,#f1f1f1);background-image:-moz-linear-gradient(bottom,#dfdfdf,#f1f1f1);background-image:-o-linear-gradient(bottom,#dfdfdf,#f1f1f1);background-image:-webkit-gradient(linear,left bottom,left top,from(#dfdfdf),to(#f1f1f1));background-image:-webkit-linear-gradient(bottom,#dfdfdf,#f1f1f1);background-image:linear-gradient(bottom,#dfdfdf,#f1f1f1);}#screen-meta-links a.show-settings{color:#777;}#screen-meta-links a.show-settings:hover{color:#000;}#screen-meta-links a.show-settings{background:transparent url(../images/arrows.png) no-repeat right 3px;}#screen-meta-links a.show-settings.screen-meta-active{background:transparent url(../images/arrows.png) no-repeat right -33px;}.login #backtoblog a{color:#464646;}#wphead{border-bottom:#dfdfdf 1px solid;}#wphead h1 a{color:#464646;}#footer a:link,#footer a:visited{text-decoration:none;}#footer a:hover{color:#000;text-decoration:underline;}.file-error,abbr.required,.widget-control-remove:hover,table.widefat .delete a:hover,table.widefat .trash a:hover,table.widefat .spam a:hover,#dashboard_recent_comments .delete a:hover,#dashboard_recent_comments .trash a:hover #dashboard_recent_comments .spam a:hover{color:#f00;}#pass-strength-result{background-color:#eee;border-color:#ddd!important;}#pass-strength-result.bad{background-color:#ffb78c;border-color:#ff853c!important;}#pass-strength-result.good{background-color:#ffec8b;border-color:#fc0!important;}#pass-strength-result.short{background-color:#ffa0a0;border-color:#f04040!important;}#pass-strength-result.strong{background-color:#c3ff88;border-color:#8dff1c!important;}#titlediv #title{border-color:#ccc;}#post-status-info{border-color:#dfdfdf #ccc #ccc;background-color:#eaeaea;}.editwidget .widget-inside{border-color:#dfdfdf;}#titlediv #title{background-color:#fff;}#tTips p#tTips_inside{background-color:#ddd;color:#333;}#timestampdiv input,#namediv input,#poststuff .inside .the-tagcloud{border-color:#ddd;}#adminmenuback,#adminmenuwrap{background-color:#ececec;border-color:#ccc;}#adminmenushadow,#adminmenuback{background-image:url(../images/menu-shadow.png);background-position:top right;background-repeat:repeat-y;}#adminmenu li.wp-menu-separator{background:#dfdfdf;border-color:#cfcfcf;}#adminmenu div.separator{border-color:#e1e1e1;}#adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,#adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle{background:transparent url(../images/arrows-dark.png) no-repeat -1px 6px;}#adminmenu .wp-has-submenu:hover .wp-menu-toggle,#adminmenu .wp-menu-open .wp-menu-toggle{background:transparent url(../images/arrows.png) no-repeat -2px 6px;}#adminmenu a.menu-top,.folded #adminmenu li.menu-top,#adminmenu .wp-submenu .wp-submenu-head{border-top-color:#f9f9f9;border-bottom-color:#dfdfdf;}#adminmenu li.wp-menu-open{border-color:#dfdfdf;}#adminmenu li.menu-top:hover>a,#adminmenu li.menu-top.focused>a,#adminmenu li.menu-top>a:focus{background-color:#e4e4e4;text-shadow:0 1px 0 rgba(255,255,255,0.4);}#adminmenu li.wp-has-current-submenu a.wp-has-current-submenu,#adminmenu li.current a.menu-top,.folded #adminmenu li.wp-has-current-submenu,.folded #adminmenu li.current.menu-top,#adminmenu .wp-menu-arrow,#adminmenu .wp-has-current-submenu .wp-submenu .wp-submenu-head{background-color:#777;background-image:-ms-linear-gradient(bottom,#6d6d6d,#808080);background-image:-moz-linear-gradient(bottom,#6d6d6d,#808080);background-image:-o-linear-gradient(bottom,#6d6d6d,#808080);background-image:-webkit-gradient(linear,left bottom,left top,from(#6d6d6d),to(#808080));background-image:-webkit-linear-gradient(bottom,#6d6d6d,#808080);background-image:linear-gradient(bottom,#6d6d6d,#808080);}#adminmenu .wp-menu-arrow div{background-color:#777;background-image:-ms-linear-gradient(right bottom,#6d6d6d,#808080);background-image:-moz-linear-gradient(right bottom,#6d6d6d,#808080);background-image:-o-linear-gradient(right bottom,#6d6d6d,#808080);background-image:-webkit-gradient(linear,right bottom,left top,from(#6d6d6d),to(#808080));background-image:-webkit-linear-gradient(right bottom,#6d6d6d,#808080);background-image:linear-gradient(right bottom,#6d6d6d,#808080);}#adminmenu li.wp-not-current-submenu .wp-menu-arrow{border-top-color:#f9f9f9;border-bottom-color:#dfdfdf;background:#E4E4E4;}#adminmenu li.wp-not-current-submenu .wp-menu-arrow div{background:#E4E4E4;border-color:#ccc;}.folded #adminmenu li.menu-top li:hover a{background-image:none;}#adminmenu li.wp-has-current-submenu a.wp-has-current-submenu,#adminmenu li.current a.menu-top,#adminmenu .wp-has-current-submenu .wp-submenu .wp-submenu-head{text-shadow:0 -1px 0 #333;color:#fff;border-top-color:#808080;border-bottom-color:#6d6d6d;}.folded #adminmenu li.wp-has-current-submenu,.folded #adminmenu li.current.menu-top{border-top-color:#808080;border-bottom-color:#6d6d6d;}#adminmenu .wp-submenu a:hover,#adminmenu .wp-submenu a:focus{background-color:#EAF2FA;color:#333;}#adminmenu .wp-submenu li.current,#adminmenu .wp-submenu li.current a,#adminmenu .wp-submenu li.current a:hover{color:#333;}#adminmenu .wp-submenu ul{background-color:#fff;}#adminmenu .wp-submenu-wrap,#adminmenu .wp-submenu ul{border-color:#dfdfdf;}#adminmenu .wp-submenu-wrap,.folded #adminmenu .wp-has-current-submenu .wp-submenu-wrap{-moz-box-shadow:2px 2px 5px rgba(0,0,0,0.4);-webkit-box-shadow:2px 2px 5px rgba(0,0,0,0.4);box-shadow:2px 2px 5px rgba(0,0,0,0.4);}#adminmenu .wp-submenu .wp-submenu-head{border-right-color:#dfdfdf;background-color:#ececec;}#adminmenu div.wp-submenu{background-color:transparent;}#collapse-menu{color:#aaa;}#collapse-menu:hover{color:#999;}#collapse-button{border-color:#ccc;background-color:#f4f4f4;background-image:-ms-linear-gradient(bottom,#dfdfdf,#fff);background-image:-moz-linear-gradient(bottom,#dfdfdf,#fff);background-image:-o-linear-gradient(bottom,#dfdfdf,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#dfdfdf),to(#fff));background-image:-webkit-linear-gradient(bottom,#dfdfdf,#fff);background-image:linear-gradient(bottom,#dfdfdf,#fff);}#collapse-menu:hover #collapse-button{border-color:#aaa;}#collapse-button div{background:transparent url(../images/arrows.png) no-repeat 0 -72px;}.folded #collapse-button div{background-position:0 -108px;}.icon16.icon-dashboard,#adminmenu .menu-icon-dashboard div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll -60px -33px;}#adminmenu .menu-icon-dashboard:hover div.wp-menu-image,#adminmenu .menu-icon-dashboard.wp-has-current-submenu div.wp-menu-image,#adminmenu .menu-icon-dashboard.current div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll -60px -1px;}.icon16.icon-post,#adminmenu .menu-icon-post div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll -271px -33px;}#adminmenu .menu-icon-post:hover div.wp-menu-image,#adminmenu .menu-icon-post.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll -271px -1px;}.icon16.icon-media,#adminmenu .menu-icon-media div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll -120px -33px;}#adminmenu .menu-icon-media:hover div.wp-menu-image,#adminmenu .menu-icon-media.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll -120px -1px;}.icon16.icon-links,#adminmenu .menu-icon-links div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll -90px -33px;}#adminmenu .menu-icon-links:hover div.wp-menu-image,#adminmenu .menu-icon-links.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll -90px -1px;}.icon16.icon-page,#adminmenu .menu-icon-page div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll -150px -33px;}#adminmenu .menu-icon-page:hover div.wp-menu-image,#adminmenu .menu-icon-page.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll -150px -1px;}.icon16.icon-comments,#adminmenu .menu-icon-comments div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll -30px -33px;}#adminmenu .menu-icon-comments:hover div.wp-menu-image,#adminmenu .menu-icon-comments.wp-has-current-submenu div.wp-menu-image,#adminmenu .menu-icon-comments.current div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll -30px -1px;}.icon16.icon-appearance,#adminmenu .menu-icon-appearance div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll 0 -33px;}#adminmenu .menu-icon-appearance:hover div.wp-menu-image,#adminmenu .menu-icon-appearance.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll 0 -1px;}.icon16.icon-plugins,#adminmenu .menu-icon-plugins div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll -180px -33px;}#adminmenu .menu-icon-plugins:hover div.wp-menu-image,#adminmenu .menu-icon-plugins.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll -180px -1px;}.icon16.icon-users,#adminmenu .menu-icon-users div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll -300px -33px;}#adminmenu .menu-icon-users:hover div.wp-menu-image,#adminmenu .menu-icon-users.wp-has-current-submenu div.wp-menu-image,#adminmenu .menu-icon-users.current div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll -300px -1px;}.icon16.icon-tools,#adminmenu .menu-icon-tools div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll -210px -33px;}#adminmenu .menu-icon-tools:hover div.wp-menu-image,#adminmenu .menu-icon-tools.wp-has-current-submenu div.wp-menu-image,#adminmenu .menu-icon-tools.current div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll -210px -1px;}.icon16.icon-settings,#adminmenu .menu-icon-settings div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll -240px -33px;}#adminmenu .menu-icon-settings:hover div.wp-menu-image,#adminmenu .menu-icon-settings.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll -240px -1px;}.icon16.icon-site,#adminmenu .menu-icon-site div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll -360px -33px;}#adminmenu .menu-icon-site:hover div.wp-menu-image,#adminmenu .menu-icon-site.wp-has-current-submenu div.wp-menu-image{background:transparent url('../images/menu.png?ver=20111128') no-repeat scroll -360px -1px;}.icon32.icon-post,#icon-edit,#icon-post{background:transparent url(../images/icons32.png?ver=20111206) no-repeat -552px -5px;}.icon32.icon-dashboard,#icon-index{background:transparent url(../images/icons32.png?ver=20111206) no-repeat -137px -5px;}.icon32.icon-media,#icon-upload{background:transparent url(../images/icons32.png?ver=20111206) no-repeat -251px -5px;}.icon32.icon-links,#icon-link-manager,#icon-link,#icon-link-category{background:transparent url(../images/icons32.png?ver=20111206) no-repeat -190px -5px;}.icon32.icon-page,#icon-edit-pages,#icon-page{background:transparent url(../images/icons32.png?ver=20111206) no-repeat -312px -5px;}.icon32.icon-comments,#icon-edit-comments{background:transparent url(../images/icons32.png?ver=20111206) no-repeat -72px -5px;}.icon32.icon-appearance,#icon-themes{background:transparent url(../images/icons32.png?ver=20111206) no-repeat -11px -5px;}.icon32.icon-plugins,#icon-plugins{background:transparent url(../images/icons32.png?ver=20111206) no-repeat -370px -5px;}.icon32.icon-users,#icon-users,#icon-profile,#icon-user-edit{background:transparent url(../images/icons32.png?ver=20111206) no-repeat -600px -5px;}.icon32.icon-tools,#icon-tools,#icon-admin{background:transparent url(../images/icons32.png?ver=20111206) no-repeat -432px -5px;}.icon32.icon-settings,#icon-options-general{background:transparent url(../images/icons32.png?ver=20111206) no-repeat -492px -5px;}.icon32.icon-site,#icon-ms-admin{background:transparent url(../images/icons32.png?ver=20111206) no-repeat -659px -5px;}table.diff .diff-deletedline{background-color:#fdd;}table.diff .diff-deletedline del{background-color:#f99;}table.diff .diff-addedline{background-color:#dfd;}table.diff .diff-addedline ins{background-color:#9f9;}#att-info{background-color:#E4F2FD;}#sidemenu a{background-color:#f9f9f9;border-color:#f9f9f9;border-bottom-color:#dfdfdf;}#sidemenu a.current{background-color:#fff;border-color:#dfdfdf #dfdfdf #fff;color:#D54E21;}#replyerror{border-color:#ddd;background-color:#f9f9f9;}.vim-current,.vim-current th,.vim-current td{background-color:#E4F2FD!important;}.star-average,.star.star-rating{background-color:#fc0;}div.star.select:hover{background-color:#d00;}div.star img{border-left:1px solid #fff;border-right:1px solid #fff;}.widefat div.star img{border-left:1px solid #f9f9f9;border-right:1px solid #f9f9f9;}#plugin-information .fyi ul{background-color:#eaf3fa;}#plugin-information .fyi h2.mainheader{background-color:#cee1ef;}#plugin-information pre,#plugin-information code{background-color:#ededff;}#plugin-information pre{border:1px solid #ccc;}.inline-edit-row fieldset input[type="text"],.inline-edit-row fieldset textarea,#bulk-titles{border-color:#ddd;}.inline-editor div.title{background-color:#EAF3FA;}.inline-editor ul.cat-checklist{background-color:#fff;border-color:#ddd;}.inline-editor .categories .catshow,.inline-editor .categories .cathide{color:#21759b;}.inline-editor .quick-edit-save{background-color:#f1f1f1;}fieldset.inline-edit-col-right .inline-edit-col{border-color:#dfdfdf;}.attention{color:#D54E21;}.meta-box-sortables .postbox:hover .handlediv{background:transparent url(../images/arrows.png) no-repeat 6px 7px;}.tablenav .tablenav-pages{color:#555;}.tablenav .tablenav-pages a{border-color:#e3e3e3;background:#eee url('../images/menu-bits.gif?ver=20100610') repeat-x scroll left -379px;}.tablenav .tablenav-pages a:hover,.tablenav .tablenav-pages a:focus{color:#d54e21;}.tablenav .tablenav-pages a.disabled,.tablenav .tablenav-pages a.disabled:hover,.tablenav .tablenav-pages a.disabled:focus{color:#aaa;}.tablenav .tablenav-pages .current{background:#dfdfdf;border-color:#d3d3d3;}#availablethemes,#availablethemes td{border-color:#ddd;}#current-theme img{border-color:#999;}#TB_window #TB_title a.tb-theme-preview-link,#TB_window #TB_title a.tb-theme-preview-link:visited{color:#999;}#TB_window #TB_title a.tb-theme-preview-link:hover,#TB_window #TB_title a.tb-theme-preview-link:focus{color:#ccc;}.misc-pub-section{border-top-color:#fff;border-bottom-color:#dfdfdf;}#minor-publishing{border-bottom-color:#dfdfdf;}#post-body .misc-pub-section{border-right-color:#eee;}.post-com-count span{background-color:#bbb;}.form-table .color-palette td{border-color:#fff;}.sortable-placeholder{border-color:#bbb;background-color:#f5f5f5;}#post-body ul.category-tabs li.tabs a,#post-body ul.add-menu-item-tabs li.tabs a,body.press-this ul.category-tabs li.tabs a{color:#333;}.view-switch #view-switch-list{background:transparent url(../images/list.png) no-repeat 0 0;}.view-switch .current #view-switch-list{background:transparent url(../images/list.png) no-repeat -40px 0;}.view-switch #view-switch-excerpt{background:transparent url(../images/list.png) no-repeat -20px 0;}.view-switch .current #view-switch-excerpt{background:transparent url(../images/list.png) no-repeat -60px 0;}#header-logo{background:transparent url(../images/wp-logo.png?ver=20110504) no-repeat scroll center center;}.popular-tags,.feature-filter{background-color:#fff;border-color:#DFDFDF;}#theme-information .action-button{border-top-color:#DFDFDF;}.theme-listing br.line{border-bottom-color:#ccc;}div.widgets-sortables,#widgets-left .inactive{background-color:#fcfcfc;border-color:#dfdfdf;}#available-widgets .widget-holder{background-color:#fcfcfc;border-color:#dfdfdf;}#available-widgets .widget-description{color:#555;}.sidebar-name{color:#464646;text-shadow:#fff 0 1px 0;border-color:#dfdfdf;-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;}.sidebar-name:hover,#removing-widget{color:#d54e21;}#removing-widget span{color:black;}.sidebar-name-arrow{background:transparent url(../images/arrows.png) no-repeat 5px 9px;}.sidebar-name:hover .sidebar-name-arrow{background:transparent url(../images/arrows-dark.png) no-repeat 5px 9px;}.in-widget-title{color:#606060;}.deleting .widget-title *{color:#aaa;}.imgedit-menu div{border-color:#d5d5d5;background-color:#f1f1f1;}.imgedit-menu div:hover{border-color:#c1c1c1;background-color:#eaeaea;}.imgedit-menu div.disabled{border-color:#ccc;background-color:#ddd;filter:alpha(opacity=50);opacity:.5;}#dashboard_recent_comments div.undo{border-top-color:#dfdfdf;}.comment-ays,.comment-ays th{border-color:#ddd;}.comment-ays th{background-color:#f1f1f1;}#menu-management .menu-edit{border-color:#dfdfdf;}#post-body{background:#fff;border-top-color:#fff;border-bottom-color:#dfdfdf;}#nav-menu-header{border-bottom-color:#dfdfdf;}#nav-menu-footer{border-top-color:#fff;}#menu-management .nav-tabs-arrow a{color:#C1C1C1;}#menu-management .nav-tabs-arrow a:hover{color:#D54E21;}#menu-management .nav-tabs-arrow a:active{color:#464646;}#menu-management .nav-tab-active{border-color:#dfdfdf;}#menu-management .nav-tab{background:#fbfbfb;border-color:#dfdfdf;}.js .input-with-default-title{color:#aaa;}#cancel-save{color:#f00;}#cancel-save:hover{background-color:#F00;color:#fff;}.list-container{border-color:#DFDFDF;}.menu-item-handle{border-color:#dfdfdf;}.menu li.deleting .menu-item-handle{background-color:#f66;text-shadow:#ccc;}.item-type{color:#999;}.item-controls .menu-item-delete:hover{color:#f00;}.nav-menus-php .item-edit{background:transparent url(../images/arrows.png) no-repeat 8px 10px;border-bottom-color:#eee;}.item-edit:hover{background:transparent url(../images/arrows-dark.png) no-repeat 8px 10px;}.menu-item-settings{border-color:#dfdfdf;}.link-to-original{color:#777;border-color:#dfdfdf;}#cancel-save:hover{color:#fff!important;}#update-menu-item{color:#fff!important;}#update-menu-item:hover,#update-menu-item:active,#update-menu-item:focus{color:#eaf2fa!important;border-color:#13455b!important;}.submitbox .submitcancel{color:#21759B;border-bottom-color:#21759B;}.submitbox .submitcancel:hover{background:#21759B;color:#fff;}#menu-management .nav-tab-active,.menu-item-handle,.menu-item-settings{-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff;}#menu-management .nav-tab-active{background:#f9f9f9;border-bottom-color:#f9f9f9;}#upload-form label{color:#777;}.fullscreen-overlay{background:#fff;}.wp-fullscreen-focus #wp-fullscreen-title,.wp-fullscreen-focus #wp-fullscreen-container{border-color:#ccc;}#fullscreen-topbar{border-bottom-color:#DFDFDF;}.about-wrap h1{color:#333;text-shadow:1px 1px 1px white;}.about-text{color:#777;}.wp-badge{color:#fff;text-shadow:0 -1px 0 rgba(22,57,81,0.3);}.about-wrap h2 .nav-tab{color:#21759B;}.about-wrap h2 .nav-tab:hover{color:#d54e21;}.about-wrap h2 .nav-tab-active,.about-wrap h2 .nav-tab-active:hover{color:#333;}.about-wrap h2 .nav-tab-active{text-shadow:1px 1px 1px white;color:#464646;}.about-wrap h3{color:#333;text-shadow:1px 1px 1px white;}.about-wrap .feature-section h4{color:#464646;}.about-wrap .feature-section img{background:#fff;border-color:#dfdfdf;-moz-box-shadow:0 0 6px rgba(0,0,0,0.3);-webkit-box-shadow:0 0 6px rgba(0,0,0,0.3);box-shadow:0 0 6px rgba(0,0,0,0.3);}.about-wrap h4.wp-people-group{text-shadow:1px 1px 1px white;}.about-wrap .point-releases{border-bottom:1px solid #dfdfdf;}.about-wrap .point-releases h3{border-top:1px solid #dfdfdf;}.about-wrap .point-releases h3:first-child{border:0;}.about-wrap li.wp-person img.gravatar{-moz-box-shadow:0 0 4px rgba(0,0,0,0.4);-webkit-box-shadow:0 0 4px rgba(0,0,0,0.4);box-shadow:0 0 4px rgba(0,0,0,0.4);}.about-wrap li.wp-person .title{color:#464646;text-shadow:1px 1px 1px white;}.freedoms-php .about-wrap ol li{color:#999;}.freedoms-php .about-wrap ol p{color:#464646;}.rtl .bar{border-right-color:none;border-left-color:#99d;}.rtl .post-com-count{background-image:url(../images/bubble_bg-rtl.gif);}.rtl #screen-meta-links a.show-settings{background-position:left 3px;}.rtl #screen-meta-links a.show-settings.screen-meta-active{background-position:left -33px;}.rtl #adminmenushadow,.rtl #adminmenuback{background-image:url(../images/menu-shadow-rtl.png);background-position:top left;}.rtl #adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,.rtl #adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle{background:transparent url(../images/arrows-dark.png) no-repeat 8px 6px;}.rtl #adminmenu .wp-has-submenu:hover .wp-menu-toggle,.rtl #adminmenu .wp-menu-open .wp-menu-toggle{background:transparent url(../images/arrows.png) no-repeat 8px 6px;}.rtl #adminmenu .wp-submenu .wp-submenu-head{border-right-color:none;border-left-color:#dfdfdf;}.rtl #adminmenu .wp-submenu-wrap,.rtl.folded #adminmenu .wp-has-current-submenu .wp-submenu-wrap{-moz-box-shadow:-2px 2px 5px rgba(0,0,0,0.4);-webkit-box-shadow:-2px 2px 5px rgba(0,0,0,0.4);box-shadow:-2px 2px 5px rgba(0,0,0,0.4);}.rtl #collapse-button div{background-position:0 -108px;}.rtl.folded #collapse-button div{background-position:0 -72px;}.rtl .meta-box-sortables .postbox:hover .handlediv{background:transparent url(../images/arrows.png) no-repeat 6px 7px;}.rtl .tablenav .tablenav-pages a{border-color:#e3e3e3;background:#eee url('../images/menu-bits-rtl.gif?ver=20100610') repeat-x scroll right -379px;}.rtl #post-body .misc-pub-section{border-right-color:none;border-left-color:#eee;}.rtl .sidebar-name-arrow{background:transparent url(../images/arrows.png) no-repeat 5px 9px;}.rtl .sidebar-name:hover .sidebar-name-arrow{background:transparent url(../images/arrows-dark.png) no-repeat 5px 9px;}
\ No newline at end of file
index eb86042d4b84826e802085eb70957c53352ec7a4..4543e55b8bef3e4f7be591801854c60f7213c12d 100644 (file)
@@ -1,13 +1,30 @@
+/*------------------------------------------------------------------------------
+
+
+Howdy! This is the CSS file that controls the
+Gray (fresh) color style on the WordPress Dashboard.
+
+This file contains both LTR and RTL styles.
+
+
+TABLE OF CONTENTS:
+------------------
+ 1.0 - Left to Right Styles
+ 2.0 - Right to Left Styles
+
+
+------------------------------------------------------------------------------*/
+
+
+/*------------------------------------------------------------------------------
+  1.0 - Left to Right Styles
+------------------------------------------------------------------------------*/
+
 html,
 .wp-dialog {
        background-color: #fff;
 }
 
 html,
 .wp-dialog {
        background-color: #fff;
 }
 
-* html input,
-* html .widget {
-       border-color: #dfdfdf;
-}
-
 textarea,
 input[type="text"],
 input[type="password"],
 textarea,
 input[type="text"],
 input[type="password"],
@@ -15,11 +32,32 @@ input[type="file"],
 input[type="button"],
 input[type="submit"],
 input[type="reset"],
 input[type="button"],
 input[type="submit"],
 input[type="reset"],
+input[type="email"],
+input[type="number"],
+input[type="search"],
+input[type="tel"],
+input[type="url"],
 select {
        border-color: #dfdfdf;
        background-color: #fff;
 }
 
 select {
        border-color: #dfdfdf;
        background-color: #fff;
 }
 
+textarea:focus,
+input[type="text"]:focus,
+input[type="password"]:focus,
+input[type="file"]:focus,
+input[type="button"]:focus,
+input[type="submit"]:focus,
+input[type="reset"]:focus,
+input[type="email"]:focus,
+input[type="number"]:focus,
+input[type="search"]:focus,
+input[type="tel"]:focus,
+input[type="url"]:focus,
+select:focus {
+       border-color: #bbb;
+}
+
 kbd,
 code {
        background: #eaeaea;
 kbd,
 code {
        background: #eaeaea;
@@ -60,8 +98,7 @@ body > #upload-menu {
 #your-profile fieldset,
 #rightnow,
 div.dashboard-widget,
 #your-profile fieldset,
 #rightnow,
 div.dashboard-widget,
-#dashboard-widgets p.dashboard-widget-links,
-#replyrow #ed_reply_toolbar input {
+#dashboard-widgets p.dashboard-widget-links {
        border-color: #ccc;
 }
 
        border-color: #ccc;
 }
 
@@ -87,16 +124,13 @@ div.dashboard-widget,
        background-color: #F1F1F1;
 }
 
        background-color: #F1F1F1;
 }
 
-#postcustomstuff table input,
-#postcustomstuff table textarea {
-       border-color: #dfdfdf;
-       background-color: #fff;
-}
-
 .widefat {
        border-color: #dfdfdf;
        background-color: #f9f9f9;
 }
 .widefat {
        border-color: #dfdfdf;
        background-color: #f9f9f9;
 }
+textarea.widefat {
+       background-color: #fff;
+}
 
 div.dashboard-widget-error {
        background-color: #c43;
 
 div.dashboard-widget-error {
        background-color: #c43;
@@ -278,14 +312,6 @@ div.error a {
        color: #666;
 }
 
        color: #666;
 }
 
-.media-item {
-       border-bottom-color: #dfdfdf;
-}
-
-#wpbody-content #media-items .describe {
-       border-top-color: #dfdfdf;
-}
-
 .media-upload-form label.form-help,
 td.help {
        color: #9a9a9a;
 .media-upload-form label.form-help,
 td.help {
        color: #9a9a9a;
@@ -398,8 +424,8 @@ a:focus {
        color: #d54e21;
 }
 
        color: #d54e21;
 }
 
-#wphead #viewsite a:hover,
 #adminmenu a:hover,
 #adminmenu a:hover,
+#adminmenu li.menu-top > a:focus,
 #adminmenu ul.wp-submenu a:hover,
 #the-comment-list .comment a:hover,
 #rightnow a:hover,
 #adminmenu ul.wp-submenu a:hover,
 #the-comment-list .comment a:hover,
 #rightnow a:hover,
@@ -532,8 +558,6 @@ h3.dashboard-widget-title small a:hover {
 
 a,
 #adminmenu a,
 
 a,
 #adminmenu a,
-#poststuff #edButtonPreview,
-#poststuff #edButtonHTML,
 #the-comment-list p.comment-author strong a,
 #media-upload a.del-link,
 #media-items a.delete,
 #the-comment-list p.comment-author strong a,
 #media-upload a.del-link,
 #media-items a.delete,
@@ -549,7 +573,6 @@ a,
        background-color: #464646;
        color: #fff;
        -moz-box-shadow: rgba(255,255,255,0.5) 0 1px 0;
        background-color: #464646;
        color: #fff;
        -moz-box-shadow: rgba(255,255,255,0.5) 0 1px 0;
-       -khtml-box-shadow: rgba(255,255,255,0.5) 0 1px 0;
        -webkit-box-shadow: rgba(255,255,255,0.5) 0 1px 0;
        box-shadow: rgba(255,255,255,0.5) 0 1px 0;
 }
        -webkit-box-shadow: rgba(255,255,255,0.5) 0 1px 0;
        box-shadow: rgba(255,255,255,0.5) 0 1px 0;
 }
@@ -563,7 +586,6 @@ a,
        background-color: #464646;
        color: #fff;
        -moz-box-shadow: rgba(255,255,255,0.5) 0 1px 0;
        background-color: #464646;
        color: #fff;
        -moz-box-shadow: rgba(255,255,255,0.5) 0 1px 0;
-       -khtml-box-shadow: rgba(255,255,255,0.5) 0 1px 0;
        -webkit-box-shadow: rgba(255,255,255,0.5) 0 1px 0;
        box-shadow: rgba(255,255,255,0.5) 0 1px 0;
 }
        -webkit-box-shadow: rgba(255,255,255,0.5) 0 1px 0;
        box-shadow: rgba(255,255,255,0.5) 0 1px 0;
 }
@@ -586,11 +608,6 @@ input.readonly, textarea.readonly {
        background-color: #ddd;
 }
 
        background-color: #ddd;
 }
 
-#ed_toolbar input,
-#ed_reply_toolbar input {
-       background: #fff url("../images/fade-butt.png") repeat-x 0 -2px;
-}
-
 #editable-post-name {
        background-color: #fffbcc;
 }
 #editable-post-name {
        background-color: #fffbcc;
 }
@@ -617,8 +634,9 @@ input.readonly, textarea.readonly {
        border-color: #dfdfdf;
 }
 
        border-color: #dfdfdf;
 }
 
-#media-items,
-.imgedit-group {
+.imgedit-group,
+#media-items .media-item,
+.media-item .describe {
        border-color: #dfdfdf;
 }
 
        border-color: #dfdfdf;
 }
 
@@ -677,6 +695,19 @@ table.widefat span.spam a,
        color: #bc0b0b;
 }
 
        color: #bc0b0b;
 }
 
+.welcome-panel {
+       border-color: #dfdfdf;
+}
+.welcome-panel p {
+       color: #777;
+}
+.welcome-panel-column p {
+       color: #464646;
+}
+.welcome-panel h3 {
+       text-shadow: 1px 1px 1px white;
+}
+
 .widget,
 #widget-list .widget-top,
 .postbox,
 .widget,
 #widget-list .widget-top,
 .postbox,
@@ -687,8 +718,6 @@ table.widefat span.spam a,
        -moz-box-shadow: inset 0 1px 0 #fff;
        -webkit-box-shadow: inset 0 1px 0 #fff;
        box-shadow: inset 0 1px 0 #fff;
        -moz-box-shadow: inset 0 1px 0 #fff;
        -webkit-box-shadow: inset 0 1px 0 #fff;
        box-shadow: inset 0 1px 0 #fff;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
        -webkit-border-radius: 3px;
        border-radius: 3px;
 }
        -webkit-border-radius: 3px;
        border-radius: 3px;
 }
@@ -751,72 +780,78 @@ table.widefat span.spam a,
        color: #555;
 }
 
        color: #555;
 }
 
-.login #backtoblog a {
-       color: #464646;
+#screen-meta {
+       background-color: #f1f1f1;
+       border-color: #ccc;
+       -webkit-box-shadow: 0 1px 3px rgba( 0, 0, 0, 0.05 );
+       box-shadow: 0 1px 3px rgba( 0, 0, 0, 0.05 );
 }
 
 }
 
-#wphead {
-       border-bottom:#dfdfdf 1px solid;
+#contextual-help-back {
+       background: #fff;
 }
 
 }
 
-#wphead h1 a {
-       color: #464646;
+.contextual-help-tabs a:hover {
+       color: #333;
 }
 
 }
 
-#user_info {
-       color: #555;
+#contextual-help-back,
+.contextual-help-tabs .active {
+       border-color: #ccc;
 }
 
 }
 
-#user_info:hover,
-#user_info.active {
-       color: #222;
+.contextual-help-tabs .active,
+.contextual-help-tabs .active a,
+.contextual-help-tabs .active a:hover {
+       background: #fff;
+       color: #000;
 }
 
 }
 
-#user_info.active {
-       background-color: #f1f1f1; /* Fallback */
-       background-image: -ms-linear-gradient(bottom, #e9e9e9, #f9f9f9); /* IE10 */
-       background-image: -moz-linear-gradient(bottom, #e9e9e9, #f9f9f9); /* Firefox */
-       background-image: -o-linear-gradient(bottom, #e9e9e9, #f9f9f9); /* Opera */
-       background-image: -webkit-gradient(linear, left bottom, left top, from(#e9e9e9), to(#f9f9f9)); /* old Webkit */
-       background-image: -webkit-linear-gradient(bottom, #e9e9e9, #f9f9f9); /* new Webkit */
-       background-image: linear-gradient(bottom, #e9e9e9, #f9f9f9); /* proposed W3C Markup */
-       border-color: #aaa #aaa #dfdfdf;
+/* screen options and help tabs */
+#screen-options-link-wrap,
+#contextual-help-link-wrap {
+       background-color: #e3e3e3; /* Fallback */
+       border-right: 1px solid transparent;
+       border-left: 1px solid transparent;
+       border-bottom: 1px solid transparent;
+       background-image: -ms-linear-gradient(bottom, #dfdfdf, #f1f1f1); /* IE10 */
+       background-image: -moz-linear-gradient(bottom, #dfdfdf, #f1f1f1); /* Firefox */
+       background-image: -o-linear-gradient(bottom, #dfdfdf, #f1f1f1); /* Opera */
+       background-image: -webkit-gradient(linear, left bottom, left top, from(#dfdfdf), to(#f1f1f1)); /* old Webkit */
+       background-image: -webkit-linear-gradient(bottom, #dfdfdf, #f1f1f1); /* new Webkit */
+       background-image: linear-gradient(bottom, #dfdfdf, #f1f1f1); /* proposed W3C Markup */
 }
 
 }
 
-#user_info_arrow {
-       background: transparent url(../images/arrows.png) no-repeat 6px 5px;
+#screen-meta-links a.show-settings {
+       color: #777;
 }
 
 }
 
-#user_info:hover #user_info_arrow,
-#user_info.active #user_info_arrow {
-       background: transparent url(../images/arrows-dark.png) no-repeat 6px 5px;
+#screen-meta-links a.show-settings:hover {
+       color: #000;
 }
 
 }
 
-#user_info_links {
-       -moz-box-shadow: 0 3px 2px -2px rgba( 0, 0, 0, 0.2 );
-       -webkit-box-shadow: 0 3px 2px -2px rgba( 0, 0, 0, 0.2 );
-       box-shadow: 0 3px 2px -2px rgba( 0, 0, 0, 0.2 );
+#screen-meta-links a.show-settings {
+       background: transparent url(../images/arrows.png) no-repeat right 3px;
 }
 
 }
 
-#user_info_links ul {
-       background: #f1f1f1;
-       border-color: #ccc #aaa #aaa;
-       -moz-box-shadow: inset 0 1px 0 #f9f9f9;
-       -webkit-box-shadow: inset 0 1px 0 #f9f9f9;
-       box-shadow: inset 0 1px 0 #f9f9f9;
+#screen-meta-links a.show-settings.screen-meta-active {
+       background: transparent url(../images/arrows.png) no-repeat right -33px;
 }
 
 }
 
-#user_info_links li:hover {
-       background-color: #dfdfdf;
+/* end screen options and help tabs */
+
+.login #backtoblog a {
+       color: #464646;
 }
 
 }
 
-#user_info_links li:hover a,
-#user_info_links li a:hover {
-       text-decoration: none;
+#wphead {
+       border-bottom:#dfdfdf 1px solid;
+}
+
+#wphead h1 a {
+       color: #464646;
 }
 
 }
 
-#user_info a:link,
-#user_info a:visited,
 #footer a:link,
 #footer a:visited {
        text-decoration: none;
 #footer a:link,
 #footer a:visited {
        text-decoration: none;
@@ -827,7 +862,6 @@ table.widefat span.spam a,
        text-decoration: underline;
 }
 
        text-decoration: underline;
 }
 
-div#media-upload-error,
 .file-error,
 abbr.required,
 .widget-control-remove:hover,
 .file-error,
 abbr.required,
 .widget-control-remove:hover,
@@ -865,334 +899,13 @@ table.widefat .spam a:hover,
        border-color: #8dff1c !important;
 }
 
        border-color: #8dff1c !important;
 }
 
-/* editors */
-#quicktags {
-       border-color: #ccc;
-       background-color: #dfdfdf;
-       background-image: url("../images/ed-bg.gif");
-}
-
-#ed_toolbar input {
-       border-color: #C3C3C3;
-}
-
-#ed_toolbar input:hover {
-       border-color: #aaa;
-       background: #ddd;
-}
-
-#poststuff .wp_themeSkin .mceStatusbar {
-       border-color: #dfdfdf;
-}
-
-#poststuff .wp_themeSkin .mceStatusbar * {
-       color: #555;
-}
-
-#poststuff #edButtonPreview,
-#poststuff #edButtonHTML {
-       background-color: #f1f1f1;
-       border-color: #dfdfdf #dfdfdf #ccc;
-       color: #999;
-}
-
-#poststuff #editor-toolbar .active {
-       border-color: #ccc #ccc #e9e9e9;
-       background-color: #e9e9e9;
-       color: #333;
-}
-
-/* TinyMCE */
-#post-status-info {
-       background-color: #EDEDED;
-}
-
-.wp_themeSkin *,
-.wp_themeSkin a:hover,
-.wp_themeSkin a:link,
-.wp_themeSkin a:visited,
-.wp_themeSkin a:active {
-       color: #000;
-}
-
-/* Containers */
-.wp_themeSkin table.mceLayout {
-       border-color: #ccc #ccc #dfdfdf;
-}
-
-#editorcontainer #content,
-#editorcontainer .wp_themeSkin .mceIframeContainer {
-       -moz-box-shadow: inset 1px 1px 2px rgba( 0, 0, 0, 0.1 );
-       -webkit-box-shadow: inset 1px 1px 2px rgba( 0, 0, 0, 0.1 );
-       box-shadow: inset 1px 1px 2px rgba( 0, 0, 0, 0.1 );
-}
-.wp_themeSkin iframe {
-       background: transparent;
-}
-
-/* Layout */
-.wp_themeSkin .mceStatusbar {
-       color: #000;
-       background-color: #f5f5f5;
-}
-
-/* Button */
-.wp_themeSkin .mceButton {
-       border-color: #ccc;
-       background-color: #eee; /* Fallback */
-       background-image: -ms-linear-gradient(bottom, #ddd, #fff); /* IE10 */
-       background-image: -moz-linear-gradient(bottom, #ddd, #fff); /* Firefox */
-       background-image: -o-linear-gradient(bottom, #ddd, #fff); /* Opera */
-       background-image: -webkit-gradient(linear, left bottom, left top, from(#ddd), to(#fff)); /* old Webkit */
-       background-image: -webkit-linear-gradient(bottom, #ddd, #fff); /* new Webkit */
-       background-image: linear-gradient(bottom, #ddd, #fff); /* proposed W3C Markup */
-}
-
-.wp_themeSkin a.mceButtonEnabled:hover {
-       border-color: #a0a0a0;
-       background: #ddd; /* Fallback */
-       background-image: -ms-linear-gradient(bottom, #ccc, #fff); /* IE10 */
-       background-image: -moz-linear-gradient(bottom, #ccc, #fff); /* Firefox */
-       background-image: -o-linear-gradient(bottom, #ccc, #fff); /* Opera */
-       background-image: -webkit-gradient(linear, left bottom, left top, from(#ccc), to(#fff)); /* old Webkit */
-       background-image: -webkit-linear-gradient(bottom, #ccc, #fff); /* new Webkit */
-       background-image: linear-gradient(bottom, #ccc, #fff); /* proposed W3C Markup */
-}
-
-.wp_themeSkin a.mceButton:active,
-.wp_themeSkin a.mceButtonEnabled:active,
-.wp_themeSkin a.mceButtonSelected:active,
-.wp_themeSkin a.mceButtonActive,
-.wp_themeSkin a.mceButtonActive:active,
-.wp_themeSkin a.mceButtonActive:hover {
-       background-color: #ddd; /* Fallback */
-       background-image: -ms-linear-gradient(bottom, #eee, #bbb); /* IE10 */
-       background-image: -moz-linear-gradient(bottom, #eee, #bbb); /* Firefox */
-       background-image: -o-linear-gradient(bottom, #eee, #bbb); /* Opera */
-       background-image: -webkit-gradient(linear, left bottom, left top, from(#eee), to(#bbb)); /* old Webkit */
-       background-image: -webkit-linear-gradient(bottom, #eee, #bbb); /* new Webkit */
-       background-image: linear-gradient(bottom, #eee, #bbb); /* proposed W3C Markup */
-       border-color: #909090;
-}
-
-.wp_themeSkin .mceButtonDisabled {
-       border-color: #ccc !important;
-}
-
-/* ListBox */
-.wp_themeSkin .mceListBox .mceText,
-.wp_themeSkin .mceListBox .mceOpen     {
-       border-color: #ccc;
-       background-color: #eee; /* Fallback */
-       background-image: -ms-linear-gradient(bottom, #ddd, #fff); /* IE10 */
-       background-image: -moz-linear-gradient(bottom, #ddd, #fff); /* Firefox */
-       background-image: -o-linear-gradient(bottom, #ddd, #fff); /* Opera */
-       background-image: -webkit-gradient(linear, left bottom, left top, from(#ddd), to(#fff)); /* old Webkit */
-       background-image: -webkit-linear-gradient(bottom, #ddd, #fff); /* new Webkit */
-       background-image: linear-gradient(bottom, #ddd, #fff); /* proposed W3C Markup */
-}
-
-.wp_themeSkin .mceListBox .mceOpen {
-       border-left: 0 !important;
-}
-
-.wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,
-.wp_themeSkin .mceListBoxHover .mceOpen,
-.wp_themeSkin .mceListBoxHover:active .mceOpen,
-.wp_themeSkin .mceListBoxSelected .mceOpen,
-.wp_themeSkin .mceListBoxSelected .mceText,
-.wp_themeSkin table.mceListBoxEnabled:active .mceText {
-       background: #ccc;
-       border-color: #999;
-}
-
-/* List Box Hover */
-.wp_themeSkin table.mceListBoxEnabled:hover .mceText,
-.wp_themeSkin .mceListBoxHover .mceText,
-.wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,
-.wp_themeSkin .mceListBoxHover .mceOpen {
-       border-color: #909090;
-       background-color: #eee; /* Fallback */
-       background-image: -ms-linear-gradient(bottom, #ccc, #fff); /* IE10 */
-       background-image: -moz-linear-gradient(bottom, #ccc, #fff); /* Firefox */
-       background-image: -o-linear-gradient(bottom, #ccc, #fff); /* Opera */
-       background-image: -webkit-gradient(linear, left bottom, left top, from(#ccc), to(#fff)); /* old Webkit */
-       background-image: -webkit-linear-gradient(bottom, #ccc, #fff); /* new Webkit */
-       background-image: linear-gradient(bottom, #ccc, #fff); /* proposed W3C Markup */
-}
-
-.wp_themeSkin select.mceListBox {
-       border-color: #B2B2B2;
-       background-color: #fff;
-}
-
-/* SplitButton */
-.wp_themeSkin .mceSplitButton a.mceAction,
-.wp_themeSkin .mceSplitButton a.mceOpen {
-       border-color: #ccc;
-}
-
-.wp_themeSkin .mceSplitButton a.mceOpen:hover,
-.wp_themeSkin .mceSplitButtonSelected a.mceOpen,
-.wp_themeSkin table.mceSplitButtonEnabled:hover a.mceAction,
-.wp_themeSkin .mceSplitButton a.mceAction:hover {
-       border-color: #909090;
-}
-
-
-.wp_themeSkin table.mceSplitButton td {
-       background-color: #eee; /* Fallback */
-       background-image: -ms-linear-gradient(bottom, #ddd, #fff); /* IE10 */
-       background-image: -moz-linear-gradient(bottom, #ddd, #fff); /* Firefox */
-       background-image: -o-linear-gradient(bottom, #ddd, #fff); /* Opera */
-       background-image: -webkit-gradient(linear, left bottom, left top, from(#ddd), to(#fff)); /* old Webkit */
-       background-image: -webkit-linear-gradient(bottom, #ddd, #fff); /* new Webkit */
-       background-image: linear-gradient(bottom, #ddd, #fff); /* proposed W3C Markup */
-}
-
-.wp_themeSkin table.mceSplitButton:hover td {
-       background-image: -ms-linear-gradient(bottom, #ccc, #fff); /* IE10 */
-       background-image: -moz-linear-gradient(bottom, #ccc, #fff); /* Firefox */
-       background-image: -o-linear-gradient(bottom, #ccc, #fff); /* Opera */
-       background-image: -webkit-gradient(linear, left bottom, left top, from(#ccc), to(#fff)); /* old Webkit */
-       background-image: -webkit-linear-gradient(bottom, #ccc, #fff); /* new Webkit */
-       background-image: linear-gradient(bottom, #ccc, #fff); /* proposed W3C Markup */
-}
-
-.wp_themeSkin .mceSplitButtonActive {
-       background-color: #B2B2B2;
-}
-
-/* ColorSplitButton */
-.wp_themeSkin div.mceColorSplitMenu table {
-       background-color: #ebebeb;
-       border-color: #B2B2B2;
-}
-
-.wp_themeSkin .mceColorSplitMenu a {
-       border-color: #B2B2B2;
-}
-
-.wp_themeSkin .mceColorSplitMenu a.mceMoreColors {
-       border-color: #fff;
-}
-
-.wp_themeSkin .mceColorSplitMenu a.mceMoreColors:hover {
-       border-color: #0A246A;
-       background-color: #B6BDD2;
-}
-
-.wp_themeSkin a.mceMoreColors:hover {
-       border-color: #0A246A;
-}
-
-/* Menu */
-.wp_themeSkin .mceMenu {
-       border-color: #ddd;
-}
-
-.wp_themeSkin .mceMenu table {
-       background-color: #ebeaeb;
-}
-
-.wp_themeSkin .mceMenu .mceText {
-       color: #000;
-}
-
-.wp_themeSkin .mceMenu .mceMenuItemEnabled a:hover,
-.wp_themeSkin .mceMenu .mceMenuItemActive {
-       background-color: #f5f5f5;
-}
-.wp_themeSkin td.mceMenuItemSeparator {
-       background-color: #aaa;
-}
-.wp_themeSkin .mceMenuItemTitle a {
-       background-color: #ccc;
-       border-bottom-color: #aaa;
-}
-.wp_themeSkin .mceMenuItemTitle span.mceText {
-       color: #000;
-}
-.wp_themeSkin .mceMenuItemDisabled .mceText {
-       color: #888;
-}
-
-.wp_themeSkin tr.mceFirst td.mceToolbar {
-       background: #dfdfdf url("../images/ed-bg.gif") repeat-x scroll left top;
-       border-color: #ccc;
-}
-
-.wp-admin #mceModalBlocker {
-       background: #000;
-}
-
-.wp-admin .clearlooks2 .mceFocus .mceTop .mceLeft {
-       background: #444444;
-       border-left: 1px solid #999;
-       border-top: 1px solid #999;
-       -moz-border-radius: 3px 0 0 0;
-       -webkit-border-top-left-radius: 3px;
-       -khtml-border-top-left-radius: 3px;
-       border-top-left-radius: 3px;
-}
-
-.wp-admin .clearlooks2 .mceFocus .mceTop .mceRight {
-       background: #444444;
-       border-right: 1px solid #999;
-       border-top: 1px solid #999;
-       border-top-right-radius: 3px;
-       -khtml-border-top-right-radius: 3px;
-       -webkit-border-top-right-radius: 3px;
-       -moz-border-radius: 0 3px 0 0;
-}
-
-.wp-admin .clearlooks2 .mceMiddle .mceLeft {
-       background: #f1f1f1;
-       border-left: 1px solid #999;
-}
-
-.wp-admin .clearlooks2 .mceMiddle .mceRight {
-       background: #f1f1f1;
-       border-right: 1px solid #999;
-}
-
-.wp-admin .clearlooks2 .mceBottom {
-       background: #f1f1f1;
-       border-bottom: 1px solid #999;
-}
-
-.wp-admin .clearlooks2 .mceBottom .mceLeft {
-       background: #f1f1f1;
-       border-bottom: 1px solid #999;
-       border-left: 1px solid #999;
-}
-
-.wp-admin .clearlooks2 .mceBottom .mceCenter {
-       background: #f1f1f1;
-       border-bottom: 1px solid #999;
-}
-
-.wp-admin .clearlooks2 .mceBottom .mceRight {
-       background: #f1f1f1;
-       border-bottom: 1px solid #999;
-       border-right: 1px solid #999;
-}
-
-.wp-admin .clearlooks2 .mceFocus .mceTop span {
-       color: #e5e5e5;
-}
-/* end TinyMCE */
-
 #titlediv #title {
        border-color: #ccc;
 }
 
 #titlediv #title {
        border-color: #ccc;
 }
 
-#editorcontainer {
-       border-color: #ccc #ccc #dfdfdf;
-}
-
 #post-status-info {
        border-color: #dfdfdf #ccc #ccc;
 #post-status-info {
        border-color: #dfdfdf #ccc #ccc;
+       background-color: #eaeaea;
 }
 
 .editwidget .widget-inside {
 }
 
 .editwidget .widget-inside {
@@ -1258,6 +971,13 @@ table.widefat .spam a:hover,
        border-color: #dfdfdf;
 }
 
        border-color: #dfdfdf;
 }
 
+#adminmenu li.menu-top:hover > a,
+#adminmenu li.menu-top.focused > a,
+#adminmenu li.menu-top > a:focus {
+       background-color: #e4e4e4;
+       text-shadow: 0 1px 0 rgba( 255, 255, 255, 0.4 );
+}
+
 #adminmenu li.wp-has-current-submenu a.wp-has-current-submenu,
 #adminmenu li.current a.menu-top,
 .folded #adminmenu li.wp-has-current-submenu,
 #adminmenu li.wp-has-current-submenu a.wp-has-current-submenu,
 #adminmenu li.current a.menu-top,
 .folded #adminmenu li.wp-has-current-submenu,
@@ -1273,6 +993,31 @@ table.widefat .spam a:hover,
        background-image: linear-gradient(bottom, #6d6d6d, #808080); /* proposed W3C Markup */
 }
 
        background-image: linear-gradient(bottom, #6d6d6d, #808080); /* proposed W3C Markup */
 }
 
+#adminmenu .wp-menu-arrow div {
+       background-color: #777; /* Fallback */
+       background-image: -ms-linear-gradient(right bottom, #6d6d6d, #808080); /* IE10 */
+       background-image: -moz-linear-gradient(right bottom, #6d6d6d, #808080); /* Firefox */
+       background-image: -o-linear-gradient(right bottom, #6d6d6d, #808080); /* Opera */
+       background-image: -webkit-gradient(linear, right bottom, left top, from(#6d6d6d), to(#808080)); /* old Webkit */
+       background-image: -webkit-linear-gradient(right bottom, #6d6d6d, #808080); /* new Webkit */
+       background-image: linear-gradient(right bottom, #6d6d6d, #808080); /* proposed W3C Markup */
+}
+
+#adminmenu li.wp-not-current-submenu .wp-menu-arrow {
+       border-top-color: #f9f9f9;
+       border-bottom-color: #dfdfdf;
+       background: #E4E4E4;
+}
+
+#adminmenu li.wp-not-current-submenu .wp-menu-arrow div {
+       background: #E4E4E4;
+       border-color: #ccc;
+}
+
+.folded #adminmenu li.menu-top li:hover a {
+       background-image: none;
+}
+
 #adminmenu li.wp-has-current-submenu a.wp-has-current-submenu,
 #adminmenu li.current a.menu-top,
 #adminmenu .wp-has-current-submenu .wp-submenu .wp-submenu-head {
 #adminmenu li.wp-has-current-submenu a.wp-has-current-submenu,
 #adminmenu li.current a.menu-top,
 #adminmenu .wp-has-current-submenu .wp-submenu .wp-submenu-head {
@@ -1288,9 +1033,10 @@ table.widefat .spam a:hover,
        border-bottom-color: #6d6d6d;
 }
 
        border-bottom-color: #6d6d6d;
 }
 
-#adminmenu .wp-submenu a:hover {
-       background-color: #EAF2FA !important;
-       color: #333 !important;
+#adminmenu .wp-submenu a:hover,
+#adminmenu .wp-submenu a:focus {
+       background-color: #EAF2FA;
+       color: #333;
 }
 
 #adminmenu .wp-submenu li.current,
 }
 
 #adminmenu .wp-submenu li.current,
@@ -1303,12 +1049,13 @@ table.widefat .spam a:hover,
        background-color: #fff;
 }
 
        background-color: #fff;
 }
 
-.folded #adminmenu .wp-submenu-wrap,
-.folded #adminmenu .wp-submenu ul {
+#adminmenu .wp-submenu-wrap,
+#adminmenu .wp-submenu ul {
        border-color: #dfdfdf;
 }
 
        border-color: #dfdfdf;
 }
 
-.folded #adminmenu .wp-submenu-wrap {
+#adminmenu .wp-submenu-wrap,
+.folded #adminmenu .wp-has-current-submenu .wp-submenu-wrap {
        -moz-box-shadow: 2px 2px 5px rgba( 0, 0, 0, 0.4 );
        -webkit-box-shadow: 2px 2px 5px rgba( 0, 0, 0, 0.4 );
        box-shadow: 2px 2px 5px rgba( 0, 0, 0, 0.4 );
        -moz-box-shadow: 2px 2px 5px rgba( 0, 0, 0, 0.4 );
        -webkit-box-shadow: 2px 2px 5px rgba( 0, 0, 0, 0.4 );
        box-shadow: 2px 2px 5px rgba( 0, 0, 0, 0.4 );
@@ -1353,174 +1100,197 @@ table.widefat .spam a:hover,
 }
 
 /* menu and screen icons */
 }
 
 /* menu and screen icons */
+.icon16.icon-dashboard,
 #adminmenu .menu-icon-dashboard div.wp-menu-image {
 #adminmenu .menu-icon-dashboard div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll -60px -33px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll -60px -33px;
 }
 
 #adminmenu .menu-icon-dashboard:hover div.wp-menu-image,
 #adminmenu .menu-icon-dashboard.wp-has-current-submenu div.wp-menu-image,
 #adminmenu .menu-icon-dashboard.current div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-dashboard:hover div.wp-menu-image,
 #adminmenu .menu-icon-dashboard.wp-has-current-submenu div.wp-menu-image,
 #adminmenu .menu-icon-dashboard.current div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll -60px -1px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll -60px -1px;
 }
 
 }
 
+.icon16.icon-post,
 #adminmenu .menu-icon-post div.wp-menu-image {
 #adminmenu .menu-icon-post div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll -271px -33px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll -271px -33px;
 }
 
 #adminmenu .menu-icon-post:hover div.wp-menu-image,
 #adminmenu .menu-icon-post.wp-has-current-submenu div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-post:hover div.wp-menu-image,
 #adminmenu .menu-icon-post.wp-has-current-submenu div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll -271px -1px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll -271px -1px;
 }
 
 }
 
+.icon16.icon-media,
 #adminmenu .menu-icon-media div.wp-menu-image {
 #adminmenu .menu-icon-media div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll -120px -33px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll -120px -33px;
 }
 
 #adminmenu .menu-icon-media:hover div.wp-menu-image,
 #adminmenu .menu-icon-media.wp-has-current-submenu div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-media:hover div.wp-menu-image,
 #adminmenu .menu-icon-media.wp-has-current-submenu div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll -120px -1px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll -120px -1px;
 }
 
 }
 
+.icon16.icon-links,
 #adminmenu .menu-icon-links div.wp-menu-image {
 #adminmenu .menu-icon-links div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll -90px -33px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll -90px -33px;
 }
 
 #adminmenu .menu-icon-links:hover div.wp-menu-image,
 #adminmenu .menu-icon-links.wp-has-current-submenu div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-links:hover div.wp-menu-image,
 #adminmenu .menu-icon-links.wp-has-current-submenu div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll -90px -1px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll -90px -1px;
 }
 
 }
 
+.icon16.icon-page,
 #adminmenu .menu-icon-page div.wp-menu-image {
 #adminmenu .menu-icon-page div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll -150px -33px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll -150px -33px;
 }
 
 #adminmenu .menu-icon-page:hover div.wp-menu-image,
 #adminmenu .menu-icon-page.wp-has-current-submenu div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-page:hover div.wp-menu-image,
 #adminmenu .menu-icon-page.wp-has-current-submenu div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll -150px -1px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll -150px -1px;
 }
 
 }
 
+.icon16.icon-comments,
 #adminmenu .menu-icon-comments div.wp-menu-image {
 #adminmenu .menu-icon-comments div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll -30px -33px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll -30px -33px;
 }
 
 #adminmenu .menu-icon-comments:hover div.wp-menu-image,
 #adminmenu .menu-icon-comments.wp-has-current-submenu div.wp-menu-image,
 #adminmenu .menu-icon-comments.current div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-comments:hover div.wp-menu-image,
 #adminmenu .menu-icon-comments.wp-has-current-submenu div.wp-menu-image,
 #adminmenu .menu-icon-comments.current div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll -30px -1px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll -30px -1px;
 }
 
 }
 
+.icon16.icon-appearance,
 #adminmenu .menu-icon-appearance div.wp-menu-image {
 #adminmenu .menu-icon-appearance div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll 0 -33px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll 0 -33px;
 }
 
 #adminmenu .menu-icon-appearance:hover div.wp-menu-image,
 #adminmenu .menu-icon-appearance.wp-has-current-submenu div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-appearance:hover div.wp-menu-image,
 #adminmenu .menu-icon-appearance.wp-has-current-submenu div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll 0 -1px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll 0 -1px;
 }
 
 }
 
+.icon16.icon-plugins,
 #adminmenu .menu-icon-plugins div.wp-menu-image {
 #adminmenu .menu-icon-plugins div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll -180px -33px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll -180px -33px;
 }
 
 #adminmenu .menu-icon-plugins:hover div.wp-menu-image,
 #adminmenu .menu-icon-plugins.wp-has-current-submenu div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-plugins:hover div.wp-menu-image,
 #adminmenu .menu-icon-plugins.wp-has-current-submenu div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll -180px -1px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll -180px -1px;
 }
 
 }
 
+.icon16.icon-users,
 #adminmenu .menu-icon-users div.wp-menu-image {
 #adminmenu .menu-icon-users div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll -300px -33px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll -300px -33px;
 }
 
 #adminmenu .menu-icon-users:hover div.wp-menu-image,
 #adminmenu .menu-icon-users.wp-has-current-submenu div.wp-menu-image,
 #adminmenu .menu-icon-users.current div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-users:hover div.wp-menu-image,
 #adminmenu .menu-icon-users.wp-has-current-submenu div.wp-menu-image,
 #adminmenu .menu-icon-users.current div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll -300px -1px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll -300px -1px;
 }
 
 }
 
+.icon16.icon-tools,
 #adminmenu .menu-icon-tools div.wp-menu-image {
 #adminmenu .menu-icon-tools div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll -210px -33px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll -210px -33px;
 }
 
 #adminmenu .menu-icon-tools:hover div.wp-menu-image,
 #adminmenu .menu-icon-tools.wp-has-current-submenu div.wp-menu-image,
 #adminmenu .menu-icon-tools.current div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-tools:hover div.wp-menu-image,
 #adminmenu .menu-icon-tools.wp-has-current-submenu div.wp-menu-image,
 #adminmenu .menu-icon-tools.current div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll -210px -1px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll -210px -1px;
 }
 
 }
 
-#icon-options-general,
+.icon16.icon-settings,
 #adminmenu .menu-icon-settings div.wp-menu-image {
 #adminmenu .menu-icon-settings div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll -240px -33px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll -240px -33px;
 }
 
 #adminmenu .menu-icon-settings:hover div.wp-menu-image,
 #adminmenu .menu-icon-settings.wp-has-current-submenu div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-settings:hover div.wp-menu-image,
 #adminmenu .menu-icon-settings.wp-has-current-submenu div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll -240px -1px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll -240px -1px;
 }
 
 }
 
+.icon16.icon-site,
 #adminmenu .menu-icon-site div.wp-menu-image {
 #adminmenu .menu-icon-site div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll -360px -33px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll -360px -33px;
 }
 
 #adminmenu .menu-icon-site:hover div.wp-menu-image,
 #adminmenu .menu-icon-site.wp-has-current-submenu div.wp-menu-image {
 }
 
 #adminmenu .menu-icon-site:hover div.wp-menu-image,
 #adminmenu .menu-icon-site.wp-has-current-submenu div.wp-menu-image {
-       background: transparent url('../images/menu.png?ver=20100531') no-repeat scroll -360px -1px;
+       background: transparent url('../images/menu.png?ver=20111128') no-repeat scroll -360px -1px;
 }
 /* end menu and screen icons */
 
 /* Screen Icons */
 }
 /* end menu and screen icons */
 
 /* Screen Icons */
+.icon32.icon-post,
 #icon-edit,
 #icon-post {
 #icon-edit,
 #icon-post {
-       background: transparent url(../images/icons32.png?ver=20100531) no-repeat -552px -5px;
+       background: transparent url(../images/icons32.png?ver=20111206) no-repeat -552px -5px;
 }
 
 }
 
+.icon32.icon-dashboard,
 #icon-index {
 #icon-index {
-       background: transparent url(../images/icons32.png?ver=20100531) no-repeat -137px -5px;
+       background: transparent url(../images/icons32.png?ver=20111206) no-repeat -137px -5px;
 }
 
 }
 
+.icon32.icon-media,
 #icon-upload {
 #icon-upload {
-       background: transparent url(../images/icons32.png?ver=20100531) no-repeat -251px -5px;
+       background: transparent url(../images/icons32.png?ver=20111206) no-repeat -251px -5px;
 }
 
 }
 
+.icon32.icon-links,
 #icon-link-manager,
 #icon-link,
 #icon-link-category {
 #icon-link-manager,
 #icon-link,
 #icon-link-category {
-       background: transparent url(../images/icons32.png?ver=20100531) no-repeat -190px -5px;
+       background: transparent url(../images/icons32.png?ver=20111206) no-repeat -190px -5px;
 }
 
 }
 
+.icon32.icon-page,
 #icon-edit-pages,
 #icon-page {
 #icon-edit-pages,
 #icon-page {
-       background: transparent url(../images/icons32.png?ver=20100531) no-repeat -312px -5px;
+       background: transparent url(../images/icons32.png?ver=20111206) no-repeat -312px -5px;
 }
 
 }
 
+.icon32.icon-comments,
 #icon-edit-comments {
 #icon-edit-comments {
-       background: transparent url(../images/icons32.png?ver=20100531) no-repeat -72px -5px;
+       background: transparent url(../images/icons32.png?ver=20111206) no-repeat -72px -5px;
 }
 
 }
 
+.icon32.icon-appearance,
 #icon-themes {
 #icon-themes {
-       background: transparent url(../images/icons32.png?ver=20100531) no-repeat -11px -5px;
+       background: transparent url(../images/icons32.png?ver=20111206) no-repeat -11px -5px;
 }
 
 }
 
+.icon32.icon-plugins,
 #icon-plugins {
 #icon-plugins {
-       background: transparent url(../images/icons32.png?ver=20100531) no-repeat -370px -5px;
+       background: transparent url(../images/icons32.png?ver=20111206) no-repeat -370px -5px;
 }
 
 }
 
+.icon32.icon-users,
 #icon-users,
 #icon-profile,
 #icon-user-edit {
 #icon-users,
 #icon-profile,
 #icon-user-edit {
-       background: transparent url(../images/icons32.png?ver=20100531) no-repeat -600px -5px;
+       background: transparent url(../images/icons32.png?ver=20111206) no-repeat -600px -5px;
 }
 
 }
 
+.icon32.icon-tools,
 #icon-tools,
 #icon-admin {
 #icon-tools,
 #icon-admin {
-       background: transparent url(../images/icons32.png?ver=20100531) no-repeat -432px -5px;
+       background: transparent url(../images/icons32.png?ver=20111206) no-repeat -432px -5px;
 }
 
 }
 
+.icon32.icon-settings,
 #icon-options-general {
 #icon-options-general {
-       background: transparent url(../images/icons32.png?ver=20100531) no-repeat -492px -5px;
+       background: transparent url(../images/icons32.png?ver=20111206) no-repeat -492px -5px;
 }
 
 }
 
+.icon32.icon-site,
 #icon-ms-admin {
 #icon-ms-admin {
-       background: transparent url(../images/icons32.png?ver=20100531) no-repeat -659px -5px;
+       background: transparent url(../images/icons32.png?ver=20111206) no-repeat -659px -5px;
 }
 /* end screen icons */
 
 }
 /* end screen icons */
 
@@ -1559,53 +1329,11 @@ table.diff .diff-addedline ins {
        color: #D54E21;
 }
 
        color: #D54E21;
 }
 
-#screen-options-wrap,
-#contextual-help-wrap {
-       background-color: #f1f1f1;
-       border-color: #dfdfdf;
-}
-
-#screen-options-link-wrap,
-#contextual-help-link-wrap {
-       background-color: #e3e3e3; /* Fallback */
-       border-right: 1px solid transparent;
-       border-left: 1px solid transparent;
-       border-bottom: 1px solid transparent;
-       background-image: -ms-linear-gradient(bottom, #dfdfdf, #f1f1f1); /* IE10 */
-       background-image: -moz-linear-gradient(bottom, #dfdfdf, #f1f1f1); /* Firefox */
-       background-image: -o-linear-gradient(bottom, #dfdfdf, #f1f1f1); /* Opera */
-       background-image: -webkit-gradient(linear, left bottom, left top, from(#dfdfdf), to(#f1f1f1)); /* old Webkit */
-       background-image: -webkit-linear-gradient(bottom, #dfdfdf, #f1f1f1); /* new Webkit */
-       background-image: linear-gradient(bottom, #dfdfdf, #f1f1f1); /* proposed W3C Markup */
-}
-
-#screen-meta-links a.show-settings {
-       color: #777;
-}
-
-#screen-meta-links a.show-settings:hover {
-       color: #000;
-}
-
-#replysubmit {
-       background-color: #f1f1f1;
-       border-top-color: #ddd;
-}
-
 #replyerror {
        border-color: #ddd;
        background-color: #f9f9f9;
 }
 
 #replyerror {
        border-color: #ddd;
        background-color: #f9f9f9;
 }
 
-#edithead,
-#replyhead {
-       background-color: #f1f1f1;
-}
-
-#ed_reply_toolbar {
-       background-color: #e9e9e9;
-}
-
 /* table vim shortcuts */
 .vim-current,
 .vim-current th,
 /* table vim shortcuts */
 .vim-current,
 .vim-current th,
@@ -1653,8 +1381,7 @@ div.star img {
 /* inline editor */
 .inline-edit-row fieldset input[type="text"],
 .inline-edit-row fieldset textarea,
 /* inline editor */
 .inline-edit-row fieldset input[type="text"],
 .inline-edit-row fieldset textarea,
-#bulk-titles,
-#replyrow input {
+#bulk-titles {
        border-color: #ddd;
 }
 
        border-color: #ddd;
 }
 
@@ -1676,11 +1403,6 @@ div.star img {
        background-color: #f1f1f1;
 }
 
        background-color: #f1f1f1;
 }
 
-#replyrow #ed_reply_toolbar input:hover {
-       border-color: #aaa;
-       background: #ddd;
-}
-
 fieldset.inline-edit-col-right .inline-edit-col {
        border-color: #dfdfdf;
 }
 fieldset.inline-edit-col-right .inline-edit-col {
        border-color: #dfdfdf;
 }
@@ -1769,63 +1491,6 @@ body.press-this ul.category-tabs li.tabs a {
        color: #333;
 }
 
        color: #333;
 }
 
-#wp_editimgbtn,
-#wp_delimgbtn,
-#wp_editgallery,
-#wp_delgallery {
-       border-color: #999;
-       background-color: #eee;
-}
-
-#wp_editimgbtn:hover,
-#wp_delimgbtn:hover,
-#wp_editgallery:hover,
-#wp_delgallery:hover {
-       border-color: #555;
-       background-color: #ccc;
-}
-
-#favorite-first {
-       border-color: #c0c0c0;
-       background: #f1f1f1; /* fallback color */
-       background:-moz-linear-gradient(bottom, #e7e7e7, #fff);
-       background:-webkit-gradient(linear, left bottom, left top, from(#e7e7e7), to(#fff));
-}
-
-#favorite-inside {
-       border-color: #c0c0c0;
-       background-color: #fff;
-}
-
-#favorite-toggle {
-       background: transparent url(../images/arrows.png) no-repeat 4px 2px;
-       border-color: #dfdfdf;
-       -moz-box-shadow: inset 1px 0 0 #fff;
-       -webkit-box-shadow: inset 1px 0 0 #fff;
-       box-shadow: inset 1px 0 0 #fff;
-}
-
-#favorite-actions a {
-       color: #464646;
-}
-
-#favorite-actions a:hover {
-       color: #000;
-}
-
-#favorite-inside a:hover {
-       text-decoration: underline;
-}
-
-#screen-meta a.show-settings,
-.toggle-arrow {
-       background: transparent url(../images/arrows.png) no-repeat right 3px;
-}
-
-#screen-meta .screen-meta-active a.show-settings {
-       background: transparent url(../images/arrows.png) no-repeat right -33px;
-}
-
 .view-switch #view-switch-list {
        background: transparent url(../images/list.png) no-repeat 0 0;
 }
 .view-switch #view-switch-list {
        background: transparent url(../images/list.png) no-repeat 0 0;
 }
@@ -2013,7 +1678,7 @@ div.widgets-sortables,
        color: #ff0000;
 }
 
        color: #ff0000;
 }
 
-.item-edit {
+.nav-menus-php .item-edit {
        background: transparent url(../images/arrows.png) no-repeat 8px 10px;
        border-bottom-color: #eee;
 }
        background: transparent url(../images/arrows.png) no-repeat 8px 10px;
        border-bottom-color: #eee;
 }
@@ -2089,3 +1754,170 @@ div.widgets-sortables,
 #fullscreen-topbar {
        border-bottom-color: #DFDFDF;
 }
 #fullscreen-topbar {
        border-bottom-color: #DFDFDF;
 }
+
+/* Begin About Pages */
+
+.about-wrap h1 {
+       color: #333;
+       text-shadow: 1px 1px 1px white;
+}
+
+.about-text {
+       color: #777;
+}
+
+.wp-badge {
+       color: #fff;
+       text-shadow: 0 -1px 0 rgba(22, 57, 81, 0.3);
+}
+
+.about-wrap h2 .nav-tab {
+       color: #21759B;
+}
+.about-wrap h2 .nav-tab:hover {
+       color: #d54e21;
+}
+.about-wrap h2 .nav-tab-active,
+.about-wrap h2 .nav-tab-active:hover {
+       color: #333;
+}
+.about-wrap h2 .nav-tab-active {
+       text-shadow: 1px 1px 1px white;
+       color: #464646;
+}
+
+.about-wrap h3 {
+       color: #333;
+       text-shadow: 1px 1px 1px white;
+}
+
+.about-wrap .feature-section h4 {
+       color: #464646;
+}
+
+.about-wrap .feature-section img {
+       background: #fff;
+       border-color: #dfdfdf;
+
+       -moz-box-shadow: 0 0 6px rgba( 0, 0, 0, 0.3 );
+       -webkit-box-shadow: 0 0 6px rgba( 0, 0, 0, 0.3 );
+       box-shadow: 0 0 6px rgba( 0, 0, 0, 0.3 );
+}
+
+.about-wrap h4.wp-people-group {
+       text-shadow: 1px 1px 1px white;
+}
+
+.about-wrap .point-releases {
+       border-bottom: 1px solid #dfdfdf;
+}
+
+.about-wrap .point-releases h3 {
+       border-top: 1px solid #dfdfdf;
+}
+
+.about-wrap .point-releases h3:first-child {
+       border: 0;
+}
+
+.about-wrap li.wp-person img.gravatar {
+       -moz-box-shadow: 0 0 4px rgba( 0, 0, 0, 0.4 );
+       -webkit-box-shadow: 0 0 4px rgba( 0, 0, 0, 0.4 );
+       box-shadow: 0 0 4px rgba( 0, 0, 0, 0.4 );
+}
+.about-wrap li.wp-person .title {
+       color: #464646;
+       text-shadow: 1px 1px 1px white;
+}
+
+.freedoms-php .about-wrap ol li {
+       color: #999;
+}
+.freedoms-php .about-wrap ol p {
+       color: #464646;
+}
+
+/* End About Pages */
+
+
+/*------------------------------------------------------------------------------
+  2.0 - Right to Left Styles
+------------------------------------------------------------------------------*/
+
+.rtl .bar {
+       border-right-color: none;
+       border-left-color: #99d;
+}
+
+.rtl .post-com-count {
+       background-image: url(../images/bubble_bg-rtl.gif);
+}
+
+.rtl #screen-meta-links a.show-settings {
+       background-position: left 3px;
+}
+
+.rtl #screen-meta-links a.show-settings.screen-meta-active {
+       background-position: left -33px;
+}
+
+/* Menu */
+.rtl #adminmenushadow,
+.rtl #adminmenuback {
+       background-image: url(../images/menu-shadow-rtl.png);
+       background-position: top left;
+}
+
+.rtl #adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,
+.rtl #adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle {
+       background: transparent url(../images/arrows-dark.png) no-repeat 8px 6px;
+}
+
+.rtl #adminmenu .wp-has-submenu:hover .wp-menu-toggle,
+.rtl #adminmenu .wp-menu-open .wp-menu-toggle {
+       background: transparent url(../images/arrows.png) no-repeat 8px 6px;
+}
+
+.rtl #adminmenu .wp-submenu .wp-submenu-head {
+       border-right-color: none;
+       border-left-color: #dfdfdf;
+}
+
+.rtl #adminmenu .wp-submenu-wrap,
+.rtl.folded #adminmenu .wp-has-current-submenu .wp-submenu-wrap{
+       -moz-box-shadow: -2px 2px 5px rgba( 0, 0, 0, 0.4 );
+       -webkit-box-shadow: -2px 2px 5px rgba( 0, 0, 0, 0.4 );
+       box-shadow: -2px 2px 5px rgba( 0, 0, 0, 0.4 );
+}
+
+/* Collapse Menu Button */
+.rtl #collapse-button div {
+       background-position: 0 -108px;
+}
+
+.rtl.folded #collapse-button div {
+       background-position: 0 -72px;
+}
+
+/* Edit Image */
+.rtl .meta-box-sortables .postbox:hover .handlediv {
+       background: transparent url(../images/arrows.png) no-repeat 6px 7px;
+}
+
+.rtl .tablenav .tablenav-pages a {
+       border-color: #e3e3e3;
+       background: #eee url('../images/menu-bits-rtl.gif?ver=20100610') repeat-x scroll right -379px;
+}
+
+.rtl #post-body .misc-pub-section {
+       border-right-color: none;
+       border-left-color: #eee;
+}
+
+.rtl .sidebar-name-arrow {
+       background: transparent url(../images/arrows.png) no-repeat 5px 9px;
+}
+
+.rtl .sidebar-name:hover .sidebar-name-arrow {
+       background: transparent url(../images/arrows-dark.png) no-repeat 5px 9px;
+}
diff --git a/wp-admin/css/dashboard-rtl.css b/wp-admin/css/dashboard-rtl.css
deleted file mode 100644 (file)
index 14d25ae..0000000
+++ /dev/null
@@ -1 +0,0 @@
-#dashboard-widgets-wrap .has-sidebar{margin-right:0;margin-left:-51%;}#dashboard-widgets-wrap .has-sidebar .has-sidebar-content{margin-right:0;margin-left:51%;}.view-all{right:auto;left:0;}#dashboard_right_now p.sub,#dashboard-widgets h4,#dashboard_quick_press h4,a.rsswidget,#dashboard_plugins h4,#dashboard_plugins h5,#dashboard_recent_comments .comment-meta .approve{font-family:Tahoma,Arial;}#dashboard_right_now p.sub{left:auto;right:15px;}#dashboard_right_now td.b{padding-right:0;padding-left:6px;text-align:left;font-family:Tahoma,Arial;}#dashboard_right_now .t{padding-right:0;padding-left:12px;}#dashboard_right_now .table_content{float:right;}#dashboard_right_now .table_discussion{float:left;}#dashboard_right_now .versions a{font-family:Tahoma,Arial;}#dashboard_right_now a.button{float:left;clear:left;}#dashboard_plugins .inside span{padding-left:0;padding-right:5px;}#dashboard-widgets h3 .postbox-title-action{right:auto;left:30px;}#the-comment-list .pingback{padding-left:0!important;padding-right:9px!important;}#the-comment-list .comment-item{padding:1em 70px 1em 10px;}#the-comment-list .comment-item .avatar{float:right;margin-left:0;margin-right:-60px;}.rss-widget cite{text-align:left;}.rss-widget span.rss-date{font-family:Tahoma,Arial;margin-left:0;margin-right:3px;}#dashboard_quick_press h4{float:right;text-align:left;}#dashboard_quick_press h4 label{margin-right:0;margin-left:10px;}#dashboard_quick_press .input-text-wrap,#dashboard_quick_press .textarea-wrap{margin:0 5em 1em 0;}#dashboard_quick_press #media-buttons{margin:0 5em .5em 0;padding:0 10px 0 0;}#dashboard-widgets #dashboard_quick_press form p.submit{margin-left:0;margin-right:4.6em;}#dashboard-widgets #dashboard_quick_press form p.submit input{float:right;}#dashboard-widgets #dashboard_quick_press form p.submit #save-post{margin:0 10px 0 1em;}#dashboard-widgets #dashboard_quick_press form p.submit #publish{float:left;}#dashboard-widgets #dashboard_quick_press form p.submit img.waiting{margin:4px 0 0 6px;}#dashboard_recent_drafts h4 abbr{font-family:Tahoma,Arial;margin-left:0;margin-right:3px;}
\ No newline at end of file
diff --git a/wp-admin/css/dashboard-rtl.dev.css b/wp-admin/css/dashboard-rtl.dev.css
deleted file mode 100644 (file)
index 8617bfa..0000000
+++ /dev/null
@@ -1,110 +0,0 @@
-#dashboard-widgets-wrap .has-sidebar {
-       margin-right: 0;
-       margin-left: -51%;
-}
-#dashboard-widgets-wrap .has-sidebar .has-sidebar-content {
-       margin-right: 0;
-       margin-left: 51%;
-}
-.view-all {
-       right: auto;
-       left: 0;
-}
-#dashboard_right_now p.sub, #dashboard-widgets h4, #dashboard_quick_press h4, a.rsswidget, #dashboard_plugins h4, #dashboard_plugins h5, #dashboard_recent_comments .comment-meta .approve {
-       font-family: Tahoma, Arial;
-}
-#dashboard_right_now p.sub  {
-       left:auto;
-       right:15px;
-}
-#dashboard_right_now td.b {
-       padding-right: 0;
-       padding-left: 6px;
-       text-align: left;
-       font-family: Tahoma, Arial;
-}
-#dashboard_right_now .t {
-       padding-right: 0;
-       padding-left: 12px;
-}
-#dashboard_right_now .table_content {
-       float:right;
-}
-#dashboard_right_now .table_discussion {
-       float:left;
-}
-#dashboard_right_now .versions a {
-       font-family: Tahoma, Arial;
-}
-#dashboard_right_now a.button {
-       float: left;
-       clear: left;
-}
-#dashboard_plugins .inside span {
-        padding-left: 0;
-        padding-right: 5px;
-}
-#dashboard-widgets h3 .postbox-title-action {
-       right: auto;
-       left: 30px;
-}
-#the-comment-list .pingback {
-       padding-left: 0 !important;
-       padding-right: 9px !important;
-}
-/* Recent Comments */
-#the-comment-list .comment-item {
-       padding: 1em 70px 1em 10px;
-}
-#the-comment-list .comment-item .avatar {
-       float: right;
-       margin-left: 0;
-       margin-right: -60px;
-}
-/* Feeds */
-.rss-widget cite {
-       text-align: left;
-}
-.rss-widget span.rss-date {
-       font-family: Tahoma, Arial;
-       margin-left: 0;
-       margin-right: 3px;
-}
-/* QuickPress */
-#dashboard_quick_press h4 {
-       float: right;
-       text-align: left;
-}
-#dashboard_quick_press h4 label {
-       margin-right: 0;
-       margin-left: 10px;
-}
-#dashboard_quick_press .input-text-wrap, #dashboard_quick_press .textarea-wrap {
-       margin: 0 5em 1em 0;
-}
-#dashboard_quick_press #media-buttons {
-       margin: 0 5em .5em 0;
-       padding: 0 10px 0 0;
-}
-#dashboard-widgets #dashboard_quick_press form p.submit {
-       margin-left: 0;
-       margin-right: 4.6em;
-}
-#dashboard-widgets #dashboard_quick_press form p.submit input {
-       float: right;
-}
-#dashboard-widgets #dashboard_quick_press form p.submit #save-post {
-       margin: 0 10px 0 1em;
-}
-#dashboard-widgets #dashboard_quick_press form p.submit #publish {
-       float: left;
-}
-#dashboard-widgets #dashboard_quick_press form p.submit img.waiting {
-       margin: 4px 0 0 6px;
-}
-/* Recent Drafts */
-#dashboard_recent_drafts h4 abbr {
-       font-family: Tahoma, Arial;
-       margin-left:0;
-       margin-right: 3px;
-}
\ No newline at end of file
diff --git a/wp-admin/css/dashboard.css b/wp-admin/css/dashboard.css
deleted file mode 100644 (file)
index e30d686..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.postbox p,.postbox ul,.postbox ol,.postbox blockquote,#wp-version-message{font-size:12px;}.edit-box{display:none;}h3:hover .edit-box{display:inline;}form .input-text-wrap{background:#fff;border-style:solid;border-width:1px;padding:2px 3px;border-color:#ccc;}#dashboard-widgets form .input-text-wrap input{border:0 none;outline:none;margin:0;padding:0;width:99%;color:#333;}form .textarea-wrap{background:#fff;border-style:solid;border-width:1px;padding:2px;border-color:#ccc;}#dashboard-widgets form .textarea-wrap textarea{border:0 none;padding:0;outline:none;width:99%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;}#dashboard-widgets .postbox form .submit{float:none;margin:.5em 0 0;padding:0;border:none;}#dashboard-widgets-wrap #dashboard-widgets .postbox form .submit input{margin:0;}#dashboard-widgets-wrap #dashboard-widgets .postbox form .submit #publish{min-width:0;}div.postbox div.inside{margin:10px 0;position:relative;}#dashboard-widgets a{text-decoration:none;}#dashboard-widgets h3 a{text-decoration:underline;}#dashboard-widgets h3 .postbox-title-action{position:absolute;right:30px;padding:0;top:8px;}#dashboard-widgets h4{font-family:Georgia,"Times New Roman","Bitstream Charter",Times,serif;font-weight:normal;font-size:13px;margin:0 0 .2em;padding:0;}#dashboard_right_now p.sub,#dashboard_right_now .table,#dashboard_right_now .versions{margin:-12px;}#dashboard_right_now .inside{font-size:12px;padding-top:20px;}#dashboard_right_now p.sub{padding:5px 0 15px;color:#8f8f8f;font-size:14px;position:absolute;top:-17px;left:15px;}#dashboard_right_now .table{margin:0;padding:0;position:relative;}#dashboard_right_now .table_content{float:left;border-top:#ececec 1px solid;width:45%;}#dashboard_right_now .table_discussion{float:right;border-top:#ececec 1px solid;width:45%;}#dashboard_right_now table td{padding:3px 0;white-space:nowrap;}#dashboard_right_now table tr.first td{border-top:none;}#dashboard_right_now td.b{padding-right:6px;text-align:right;font-family:Georgia,"Times New Roman","Bitstream Charter",Times,serif;font-size:14px;width:1%;}#dashboard_right_now td.b a{font-size:18px;}#dashboard_right_now td.b a:hover{color:#d54e21;}#dashboard_right_now .t{font-size:12px;padding-right:12px;padding-top:6px;color:#777;}#dashboard_right_now .t a{white-space:nowrap;}#dashboard_right_now .spam{color:red;}#dashboard_right_now .waiting{color:#e66f00;}#dashboard_right_now .approved{color:green;}#dashboard_right_now .versions{padding:6px 10px 12px;clear:both;}#dashboard_right_now .versions .b{font-weight:bold;}#dashboard_right_now a.button{float:right;clear:right;position:relative;top:-5px;}#dashboard_recent_comments h3{margin-bottom:0;}#dashboard_recent_comments .inside{margin-top:0;}#dashboard_recent_comments .comment-meta .approve{font-style:italic;font-family:sans-serif;font-size:10px;}#dashboard_recent_comments .subsubsub{float:none;}#the-comment-list{position:relative;}#the-comment-list .comment-item{padding:1em 10px;border-top:1px solid;}#the-comment-list .pingback{padding-left:9px!important;}#the-comment-list .comment-item,#the-comment-list #replyrow{margin:0 -10px;}#the-comment-list .comment-item:first-child{border-top:none;}#the-comment-list .comment-item .avatar{float:left;margin:0 10px 5px 0;}#the-comment-list .comment-item h4{line-height:1.7em;margin-top:-0.4em;color:#777;}#the-comment-list .comment-item h4 cite{font-style:normal;font-weight:normal;}#the-comment-list .comment-item blockquote,#the-comment-list .comment-item blockquote p{margin:0;padding:0;display:inline;}#dashboard_recent_comments #the-comment-list .trackback blockquote,#dashboard_recent_comments #the-comment-list .pingback blockquote{display:block;}#the-comment-list .comment-item p.row-actions{margin:3px 0 0;padding:0;font-size:12px;}#dashboard_quick_press h4{font-family:sans-serif;float:left;width:5.5em;clear:both;font-weight:normal;text-align:right;padding-top:5px;font-size:12px;}#dashboard_quick_press h4 label{margin-right:10px;}#dashboard_quick_press .input-text-wrap,#dashboard_quick_press .textarea-wrap{margin:0 0 1em 5em;}#dashboard_quick_press #media-buttons{margin:0 0 .5em 5em;padding:0 0 0 10px;font-size:12px;line-height:17px;color:#777;}#dashboard_quick_press #media-buttons a{vertical-align:bottom;}#dashboard-widgets #dashboard_quick_press form p.submit{margin-left:4.6em;}#dashboard-widgets #dashboard_quick_press form p.submit input{float:left;}#dashboard-widgets #dashboard_quick_press form p.submit #save-post{margin:0 1em 0 10px;}#dashboard-widgets #dashboard_quick_press form p.submit #publish{float:right;}#dashboard-widgets #dashboard_quick_press form p.submit img.waiting{vertical-align:middle;visibility:hidden;margin:4px 6px 0 0;}#dashboard_recent_drafts ul{margin:0;padding:0;list-style:none;}#dashboard_recent_drafts ul li{margin-bottom:1em;}#dashboard_recent_drafts h4{line-height:1.7em;}#dashboard_recent_drafts h4 abbr{font-weight:normal;font-family:sans-serif;font-size:12px;color:#999;margin-left:3px;}#dashboard_recent_drafts p{margin:0;padding:0;}.rss-widget ul{margin:0;padding:0;list-style:none;}a.rsswidget{font-size:13px;font-family:Georgia,"Times New Roman","Bitstream Charter",Times,serif;line-height:1.7em;}.rss-widget ul li{line-height:1.5em;margin-bottom:12px;}.rss-widget span.rss-date{color:#999;font-size:12px;margin-left:3px;}.rss-widget cite{display:block;text-align:right;margin:0 0 1em;padding:0;}.rss-widget cite:before{content:'\2014';}#dashboard_plugins h4{line-height:1.7em;}#dashboard_plugins h5{font-family:Georgia,"Times New Roman","Bitstream Charter",Times,serif;font-weight:normal;font-size:13px;margin:0;display:inline;line-height:1.4em;}#dashboard_plugins h5 a{line-height:1.4em;}#dashboard_plugins .inside span{font-size:12px;padding-left:5px;}#dashboard_plugins p{margin:.3em 0 1.4em;line-height:1.4em;}.dashboard-comment-wrap{overflow:hidden;word-wrap:break-word;}#dashboard_browser_nag a.update-browser-link{font-size:1.2em;font-weight:bold;}#dashboard_browser_nag a{text-decoration:underline;}#dashboard_browser_nag p.browser-update-nag.has-browser-icon{padding-right:125px;}#dashboard_browser_nag .browser-icon{margin-top:-35px;}#dashboard_browser_nag.postbox.browser-insecure{background-color:#ac1b1b;border-color:#ac1b1b;}#dashboard_browser_nag.postbox{background-color:#e29808;background-image:none;border-color:#edc048;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;color:#fff;}#dashboard_browser_nag.postbox.browser-insecure h3{border-bottom-color:#cd5a5a;color:#fff;}#dashboard_browser_nag.postbox h3{border-bottom-color:#f6e2ac;text-shadow:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;background:transparent none;color:#fff;}#dashboard_browser_nag a{color:#fff;}#dashboard_browser_nag.browser-insecure a.browse-happy-link,#dashboard_browser_nag.browser-insecure a.update-browser-link{text-shadow:#871b15 0 1px 0;}#dashboard_browser_nag a.browse-happy-link,#dashboard_browser_nag a.update-browser-link{text-shadow:#d29a04 0 1px 0;}
\ No newline at end of file
diff --git a/wp-admin/css/dashboard.dev.css b/wp-admin/css/dashboard.dev.css
deleted file mode 100644 (file)
index 8371941..0000000
+++ /dev/null
@@ -1,486 +0,0 @@
-.postbox p,
-.postbox ul,
-.postbox ol,
-.postbox blockquote,
-#wp-version-message {
-       font-size: 12px;
-}
-
-.edit-box {
-       display: none;
-}
-
-h3:hover .edit-box {
-       display: inline;
-}
-
-form .input-text-wrap {
-       background: #fff;
-       border-style: solid;
-       border-width: 1px;
-       padding: 2px 3px;
-       border-color: #ccc;
-}
-
-#dashboard-widgets form .input-text-wrap input {
-       border: 0 none;
-       outline: none;
-       margin: 0;
-       padding: 0;
-       width: 99%;
-       color: #333;
-}
-
-form .textarea-wrap {
-       background: #fff;
-       border-style: solid;
-       border-width: 1px;
-       padding: 2px;
-       border-color: #ccc;
-}
-
-#dashboard-widgets form .textarea-wrap textarea {
-       border: 0 none;
-       padding: 0;
-       outline: none;
-       width: 99%;
-       -moz-box-sizing: border-box;
-       -webkit-box-sizing: border-box;
-       box-sizing: border-box;
-}
-
-#dashboard-widgets .postbox form .submit {
-       float: none;
-       margin: .5em 0 0;
-       padding: 0;
-       border: none;
-}
-
-#dashboard-widgets-wrap #dashboard-widgets .postbox form .submit input {
-       margin: 0;
-}
-
-#dashboard-widgets-wrap #dashboard-widgets .postbox form .submit #publish {
-       min-width: 0;
-}
-
-div.postbox div.inside {
-       margin: 10px 0;
-       position: relative;
-}
-
-#dashboard-widgets a {
-       text-decoration: none;
-}
-
-#dashboard-widgets h3 a {
-       text-decoration: underline;
-}
-
-#dashboard-widgets h3 .postbox-title-action {
-       position: absolute;
-       right: 30px;
-       padding: 0;
-       top: 8px;
-}
-
-#dashboard-widgets h4 {
-       font-family: Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
-       font-weight: normal;
-       font-size: 13px;
-       margin: 0 0 .2em;
-       padding: 0;
-}
-
-/* Right Now */
-
-#dashboard_right_now p.sub,
-#dashboard_right_now .table, #dashboard_right_now .versions {
-       margin: -12px;
-}
-
-#dashboard_right_now .inside {
-       font-size: 12px;
-       padding-top: 20px;
-}
-
-#dashboard_right_now p.sub {
-       padding: 5px 0 15px;
-       color: #8f8f8f;
-       font-size: 14px;
-       position: absolute;
-       top: -17px;
-       left: 15px;
-}
-
-#dashboard_right_now .table {
-       margin: 0;
-       padding: 0;
-       position: relative;
-}
-
-#dashboard_right_now .table_content {
-       float: left;
-       border-top: #ececec 1px solid;
-       width: 45%;
-}
-
-#dashboard_right_now .table_discussion {
-       float: right;
-       border-top: #ececec 1px solid;
-       width: 45%;
-}
-
-#dashboard_right_now table td {
-       padding: 3px 0;
-       white-space: nowrap;
-}
-
-#dashboard_right_now table tr.first td {
-       border-top: none;
-}
-
-#dashboard_right_now td.b {
-       padding-right: 6px;
-       text-align: right;
-       font-family: Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
-       font-size: 14px;
-       width: 1%;
-}
-
-#dashboard_right_now td.b a {
-       font-size: 18px;
-}
-
-#dashboard_right_now td.b a:hover {
-       color: #d54e21;
-}
-
-#dashboard_right_now .t {
-       font-size: 12px;
-       padding-right: 12px;
-       padding-top: 6px;
-       color: #777;
-}
-
-#dashboard_right_now .t a {
-       white-space: nowrap;
-}
-
-#dashboard_right_now .spam {
-       color: red;
-}
-
-#dashboard_right_now .waiting {
-       color: #e66f00;
-}
-
-#dashboard_right_now .approved {
-       color: green;
-}
-
-#dashboard_right_now .versions {
-       padding: 6px 10px 12px;
-       clear: both;
-}
-
-#dashboard_right_now .versions .b {
-       font-weight: bold;
-}
-
-#dashboard_right_now a.button {
-       float: right;
-       clear: right;
-       position: relative;
-       top: -5px;
-}
-
-/* Recent Comments */
-
-#dashboard_recent_comments h3 {
-       margin-bottom: 0;
-}
-
-#dashboard_recent_comments .inside {
-       margin-top: 0;
-}
-
-#dashboard_recent_comments .comment-meta .approve {
-       font-style: italic;
-       font-family: sans-serif;
-       font-size: 10px;
-}
-
-#dashboard_recent_comments .subsubsub {
-       float: none;
-}
-
-#the-comment-list {
-       position: relative;
-}
-
-#the-comment-list .comment-item {
-       padding: 1em 10px;
-       border-top: 1px solid;
-}
-
-#the-comment-list .pingback {
-       padding-left: 9px !important;
-}
-
-#the-comment-list .comment-item,
-#the-comment-list #replyrow {
-       margin: 0 -10px;
-}
-
-#the-comment-list .comment-item:first-child {
-       border-top: none;
-}
-
-#the-comment-list .comment-item .avatar {
-       float: left;
-       margin: 0 10px 5px 0;
-}
-
-#the-comment-list .comment-item h4 {
-       line-height: 1.7em;
-       margin-top: -0.4em;
-       color: #777;
-}
-
-#the-comment-list .comment-item h4 cite {
-       font-style: normal;
-       font-weight: normal;
-}
-
-#the-comment-list .comment-item blockquote,
-#the-comment-list .comment-item blockquote p {
-       margin: 0;
-       padding: 0;
-       display: inline;
-}
-
-#dashboard_recent_comments #the-comment-list .trackback blockquote,
-#dashboard_recent_comments #the-comment-list .pingback blockquote {
-       display: block;
-}
-
-#the-comment-list .comment-item p.row-actions {
-       margin: 3px 0 0;
-       padding: 0;
-       font-size: 12px;
-}
-
-/* QuickPress */
-
-#dashboard_quick_press h4 {
-       font-family: sans-serif;
-       float: left;
-       width: 5.5em;
-       clear: both;
-       font-weight: normal;
-       text-align: right;
-       padding-top: 5px;
-       font-size: 12px;
-}
-
-#dashboard_quick_press h4 label {
-       margin-right: 10px;
-}
-
-#dashboard_quick_press .input-text-wrap,
-#dashboard_quick_press .textarea-wrap {
-       margin: 0 0 1em 5em;
-}
-
-#dashboard_quick_press #media-buttons {
-       margin: 0 0 .5em 5em;
-       padding: 0 0 0 10px;
-       font-size: 12px;
-       line-height: 17px;
-       color: #777;
-}
-
-#dashboard_quick_press #media-buttons a {
-       vertical-align: bottom;
-}
-
-#dashboard-widgets #dashboard_quick_press form p.submit {
-       margin-left: 4.6em;
-}
-
-#dashboard-widgets #dashboard_quick_press form p.submit input {
-       float: left;
-}
-
-#dashboard-widgets #dashboard_quick_press form p.submit #save-post {
-       margin: 0 1em 0 10px;
-}
-
-#dashboard-widgets #dashboard_quick_press form p.submit #publish {
-       float: right;
-}
-
-#dashboard-widgets #dashboard_quick_press form p.submit img.waiting {
-       vertical-align: middle;
-       visibility: hidden;
-       margin: 4px 6px 0 0;
-}
-
-/* Recent Drafts */
-#dashboard_recent_drafts ul {
-       margin: 0;
-       padding: 0;
-       list-style: none;
-}
-
-#dashboard_recent_drafts ul li {
-       margin-bottom: 1em;
-}
-
-#dashboard_recent_drafts h4 {
-       line-height: 1.7em;
-}
-
-#dashboard_recent_drafts h4 abbr {
-       font-weight: normal;
-       font-family: sans-serif;
-       font-size: 12px;
-       color: #999;
-       margin-left: 3px;
-}
-
-#dashboard_recent_drafts p {
-       margin: 0;
-       padding: 0;
-}
-
-/* Feeds */
-
-.rss-widget ul {
-       margin: 0;
-       padding: 0;
-       list-style: none;
-}
-
-a.rsswidget {
-       font-size: 13px;
-       font-family: Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
-       line-height: 1.7em;
-}
-
-.rss-widget ul li {
-       line-height: 1.5em;
-       margin-bottom: 12px;
-}
-
-.rss-widget span.rss-date {
-       color: #999;
-       font-size: 12px;
-       margin-left: 3px;
-}
-
-.rss-widget cite {
-       display: block;
-       text-align: right;
-       margin: 0 0 1em;
-       padding: 0;
-}
-
-.rss-widget cite:before {
-       content: '\2014';
-}
-
-/* Plugins */
-#dashboard_plugins h4 {
-       line-height: 1.7em;
-}
-#dashboard_plugins h5 {
-       font-family: Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
-       font-weight: normal;
-       font-size: 13px;
-       margin: 0;
-       display: inline;
-       line-height: 1.4em;
-}
-
-#dashboard_plugins h5 a {
-       line-height: 1.4em;
-}
-
-#dashboard_plugins .inside span {
-       font-size: 12px;
-       padding-left: 5px;
-}
-
-#dashboard_plugins p {
-       margin: 0.3em 0 1.4em;
-       line-height: 1.4em;
-}
-
-.dashboard-comment-wrap {
-       overflow: hidden;
-       word-wrap: break-word;
-}
-
-/* Browser Nag */
-#dashboard_browser_nag a.update-browser-link {
-       font-size: 1.2em;
-       font-weight: bold;
-}
-
-#dashboard_browser_nag a {
-       text-decoration: underline;
-}
-
-#dashboard_browser_nag p.browser-update-nag.has-browser-icon {
-       padding-right: 125px;
-}
-
-#dashboard_browser_nag .browser-icon {
-       margin-top: -35px;
-}
-
-#dashboard_browser_nag.postbox.browser-insecure {
-       background-color: #ac1b1b;
-       border-color: #ac1b1b;
-}
-
-#dashboard_browser_nag.postbox {
-       background-color: #e29808;
-       background-image: none;
-       border-color: #edc048;
-       -moz-box-shadow: none;
-       -webkit-box-shadow: none;
-       box-shadow: none;
-       color: #fff;
-}
-
-#dashboard_browser_nag.postbox.browser-insecure h3 {
-       border-bottom-color: #cd5a5a;
-       color: #fff;
-}
-
-#dashboard_browser_nag.postbox h3 {
-       border-bottom-color: #f6e2ac;
-       text-shadow: none;
-       -moz-box-shadow: none;
-       -webkit-box-shadow: none;
-       box-shadow: none;
-       background: transparent none;
-       color: #fff;
-}
-
-#dashboard_browser_nag a {
-       color: #fff;
-}
-
-#dashboard_browser_nag.browser-insecure a.browse-happy-link,
-#dashboard_browser_nag.browser-insecure a.update-browser-link {
-       text-shadow: #871b15 0 1px 0;
-}
-
-#dashboard_browser_nag a.browse-happy-link,
-#dashboard_browser_nag a.update-browser-link {
-       text-shadow: #d29a04 0 1px 0;
-}
diff --git a/wp-admin/css/farbtastic-rtl.css b/wp-admin/css/farbtastic-rtl.css
deleted file mode 100644 (file)
index 7a8badb..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-.farbtastic .color, .farbtastic .overlay {
-       left: 0;
-       right: 47px;
-}
-.farbtastic .marker {
-       margin: -8px -8px 0 0;
-}
index 71ad3c13d01fe51498ba0deb35b46a058de400cd..1022b71a1fe39713b4564b9961574bfaf84898f7 100644 (file)
@@ -1,32 +1,55 @@
+
 .farbtastic {
   position: relative;
 }
 .farbtastic {
   position: relative;
 }
+
 .farbtastic * {
   position: absolute;
   cursor: crosshair;
 }
 .farbtastic * {
   position: absolute;
   cursor: crosshair;
 }
-.farbtastic, .farbtastic .wheel {
+
+.farbtastic,
+.farbtastic .wheel {
   width: 195px;
   height: 195px;
 }
   width: 195px;
   height: 195px;
 }
-.farbtastic .color, .farbtastic .overlay {
+
+.farbtastic .color,
+.farbtastic .overlay {
   top: 47px;
   left: 47px;
   width: 101px;
   height: 101px;
 }
   top: 47px;
   left: 47px;
   width: 101px;
   height: 101px;
 }
+
 .farbtastic .wheel {
   background: url(../images/wheel.png) no-repeat;
   width: 195px;
   height: 195px;
 }
 .farbtastic .wheel {
   background: url(../images/wheel.png) no-repeat;
   width: 195px;
   height: 195px;
 }
+
 .farbtastic .overlay {
   background: url(../images/mask.png) no-repeat;
 }
 .farbtastic .overlay {
   background: url(../images/mask.png) no-repeat;
 }
+
 .farbtastic .marker {
   width: 17px;
   height: 17px;
   margin: -8px 0 0 -8px;
   overflow: hidden;
   background: url(../images/marker.png) no-repeat;
 .farbtastic .marker {
   width: 17px;
   height: 17px;
   margin: -8px 0 0 -8px;
   overflow: hidden;
   background: url(../images/marker.png) no-repeat;
-}
\ No newline at end of file
+}
+
+
+/* farbtastic-rtl */
+.rtl .farbtastic .color,
+.rtl .farbtastic .overlay {
+       left: 0;
+       right: 47px;
+}
+
+.rtl .farbtastic .marker {
+       margin: -8px -8px 0 0;
+}
+
+
diff --git a/wp-admin/css/global-rtl.css b/wp-admin/css/global-rtl.css
deleted file mode 100644 (file)
index 0a5a8b7..0000000
+++ /dev/null
@@ -1 +0,0 @@
-#wpcontent{margin-left:0;margin-right:165px;}.wp-admin #footer{margin-left:15px;margin-right:165px;}.js.folded #wpcontent{margin-left:0;margin-right:52px;}.js.folded.wp-admin #footer{margin-left:15px;margin-right:52px;}#wpbody-content{float:right;}#adminmenuwrap{float:right;}#adminmenu{clear:right;}.inner-sidebar{float:left;clear:left;}.has-right-sidebar #post-body{float:right;clear:right;margin-right:0;margin-left:-340px;}.has-right-sidebar #post-body-content{margin-right:0;margin-left:300px;}#col-right{float:left;clear:left;}.alignleft{float:right;}.alignright{float:left;}.textleft{text-align:right;}.textright{text-align:left;}.screen-reader-text,.screen-reader-text span{left:auto;right:-1000em;}body,td,textarea,input,select{font-family:Tahoma,Arial,sans-serif;}ul.ul-disc,ul.ul-square,ol.ol-decimal{margin-left:0;margin-right:1.8em;}.subsubsub{float:right;}.widefat thead th:first-of-type{-moz-border-radius-topleft:0;-moz-border-radius-topright:3px;-khtml-border-top-left-radius:0;-khtml-border-top-right-radius:3px;-webkit-border-top-left-radius:0;-webkit-border-top-right-radius:3px;border-top-left-radius:0;border-top-right-radius:3px;}.widefat thead th:last-of-type{-moz-border-radius-topright:0;-moz-border-radius-topleft:3px;-khtml-border-top-right-radius:0;-khtml-border-top-left-radius:3px;-webkit-border-top-right-radius:0;-webkit-border-top-left-radius:3px;border-top-right-radius:0;border-top-left-radius:3px;}.widefat tfoot th:first-of-type{-moz-border-radius-bottomleft:0;-moz-border-radius-bottomright:3px;-khtml-border-bottom-left-radius:0;-khtml-border-bottom-right-radius:3px;-webkit-border-bottom-left-radius:0;-webkit-border-bottom-right-radius:3px;border-bottom-left-radius:0;border-bottom-right-radius:3px;}.widefat tfoot th:last-of-type{-moz-border-radius-bottomright:0;-moz-border-radius-bottomleft:3px;-khtml-border-bottom-right-radius:0;-khtml-border-bottom-left-radius:3px;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:3px;border-bottom-right-radius:0;border-bottom-left-radius:3px;}.widefat th{text-align:right;}.widefat th input{margin:0 8px 0 0;}.wrap{margin:0 0 0 15px;}.wrap h2,.subtitle{font-family:Tahoma,Arial,sans-serif;}.wrap h2{padding:9px 0 4px 15px;}.subtitle{padding-left:0;padding-right:25px;}.wrap .add-new-h2{font-family:Tahoma,Arial,sans-serif;margin-left:0;margin-right:4px;}.wrap h2.long-header{padding-left:0;}
\ No newline at end of file
diff --git a/wp-admin/css/global-rtl.dev.css b/wp-admin/css/global-rtl.dev.css
deleted file mode 100644 (file)
index 7907b6b..0000000
+++ /dev/null
@@ -1,181 +0,0 @@
-
-/* 2 column liquid layout */
-
-#wpcontent {
-       margin-left: 0;
-       margin-right: 165px;
-}
-
-.wp-admin #footer {
-       margin-left: 15px;
-       margin-right: 165px;
-}
-
-.js.folded #wpcontent {
-       margin-left: 0;
-       margin-right: 52px;
-}
-
-.js.folded.wp-admin #footer {
-       margin-left: 15px;
-       margin-right: 52px;
-}
-
-#wpbody-content {
-       float: right;
-}
-
-#adminmenuwrap {
-       float: right;
-}
-
-#adminmenu {
-       clear: right;
-}
-
-/* inner 2 column liquid layout */
-.inner-sidebar {
-       float: left;
-       clear: left;
-}
-
-.has-right-sidebar #post-body {
-       float: right;
-       clear: right;
-       margin-right: 0;
-       margin-left: -340px;
-}
-
-.has-right-sidebar #post-body-content {
-       margin-right: 0;
-       margin-left: 300px;
-}
-
-/* 2 columns main area */
-
-#col-right {
-       float: left;
-       clear: left;
-}
-
-/* utility classes*/
-.alignleft {
-       float: right;
-}
-
-.alignright {
-       float: left;
-}
-
-.textleft {
-       text-align: right;
-}
-
-.textright {
-       text-align: left;
-}
-
-/* Hide visually but not from screen readers */
-.screen-reader-text, .screen-reader-text span {
-       left: auto;
-       right: -1000em;
-}
-
-/* styles for use by people extending the WordPress interface */
-
-body,
-td,
-textarea,
-input,
-select {
-       font-family: Tahoma, Arial, sans-serif;
-}
-
-ul.ul-disc,
-ul.ul-square,
-ol.ol-decimal {
-       margin-left: 0;
-       margin-right: 1.8em;
-}
-
-.subsubsub {
-       float: right;
-}
-
-.widefat thead th:first-of-type {
-       -moz-border-radius-topleft: 0;
-       -moz-border-radius-topright: 3px;
-       -khtml-border-top-left-radius: 0;
-       -khtml-border-top-right-radius: 3px;
-       -webkit-border-top-left-radius: 0;
-       -webkit-border-top-right-radius: 3px;
-       border-top-left-radius: 0;
-       border-top-right-radius: 3px;
-}
-
-.widefat thead th:last-of-type {
-       -moz-border-radius-topright: 0;
-       -moz-border-radius-topleft: 3px;
-       -khtml-border-top-right-radius: 0;
-       -khtml-border-top-left-radius: 3px;
-       -webkit-border-top-right-radius: 0;
-       -webkit-border-top-left-radius: 3px;
-       border-top-right-radius: 0;
-       border-top-left-radius: 3px;
-}
-.widefat tfoot th:first-of-type {
-       -moz-border-radius-bottomleft: 0;
-       -moz-border-radius-bottomright: 3px;
-       -khtml-border-bottom-left-radius: 0;
-       -khtml-border-bottom-right-radius: 3px;
-       -webkit-border-bottom-left-radius: 0;
-       -webkit-border-bottom-right-radius: 3px;
-       border-bottom-left-radius: 0;
-       border-bottom-right-radius: 3px;
-}
-.widefat tfoot th:last-of-type {
-       -moz-border-radius-bottomright: 0;
-       -moz-border-radius-bottomleft: 3px;
-       -khtml-border-bottom-right-radius: 0;
-       -khtml-border-bottom-left-radius: 3px;
-       -webkit-border-bottom-right-radius: 0;
-       -webkit-border-bottom-left-radius: 3px;
-       border-bottom-right-radius: 0;
-       border-bottom-left-radius: 3px;
-}
-
-.widefat th {
-       text-align: right;
-}
-
-.widefat th input {
-       margin: 0 8px 0 0;
-}
-
-.wrap {
-       margin: 0 0 0 15px;
-}
-
-
-.wrap h2,
-.subtitle {
-       font-family: Tahoma, Arial, sans-serif;
-}
-.wrap h2 {
-       padding: 9px 0 4px 15px;
-}
-
-.subtitle {
-       padding-left: 0;
-       padding-right: 25px;
-}
-
-.wrap .add-new-h2 {
-       font-family: Tahoma, Arial, sans-serif;
-       margin-left: 0;
-       margin-right: 4px;
-}
-
-.wrap h2.long-header {
-       padding-left: 0;
-}
diff --git a/wp-admin/css/global.css b/wp-admin/css/global.css
deleted file mode 100644 (file)
index 739d365..0000000
+++ /dev/null
@@ -1 +0,0 @@
-html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{margin:0;padding:0;border:0;outline:0;background:transparent;}body{line-height:1;}ol,ul{list-style:none;}blockquote,q{quotes:none;}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;}ins{text-decoration:none;}del{text-decoration:line-through;}#wpwrap{height:auto;min-height:100%;width:100%;position:relative;}#wpcontent{height:100%;}#wpcontent,#footer{margin-left:165px;}#wpbody-content{padding-bottom:65px;}.js.folded #wpcontent,.js.folded #footer{margin-left:52px;}#wpbody-content{float:left;width:100%;}#adminmenuback,#adminmenuwrap,#adminmenu,.js.folded #adminmenu .wp-submenu.sub-open,.js.folded #adminmenu .wp-submenu-wrap{width:145px;}#adminmenuback{position:absolute;top:0;bottom:0;z-index:-1;}#adminmenuwrap{float:left;}#adminmenu{clear:left;padding:0;list-style:none;}.js.folded #adminmenuback,.js.folded #adminmenuwrap,.js.folded #adminmenu,.js.folded #adminmenu li.menu-top{width:32px;}#footer{position:relative;}.inner-sidebar{float:right;clear:right;display:none;width:281px;position:relative;}.inner-sidebar #side-sortables{width:280px;min-height:300px;}.has-right-sidebar .inner-sidebar{display:block;}.has-right-sidebar #post-body{float:left;clear:left;width:100%;margin-right:-340px;}.has-right-sidebar #post-body-content{margin-right:300px;}#col-container{overflow:hidden;padding:0;margin:0;}#col-left{padding:0;margin:0;overflow:hidden;width:39%;}#col-right{float:right;clear:right;overflow:hidden;padding:0;margin:0;width:59%;}.alignleft{float:left;}.alignright{float:right;}.textleft{text-align:left;}.textright{text-align:right;}.clear{clear:both;}.screen-reader-text,.screen-reader-text span{position:absolute;left:-1000em;height:1px;width:1px;overflow:hidden;}.hidden,.js .closed .inside,.js .hide-if-js,.no-js .hide-if-no-js{display:none;}input[type="text"],input[type="password"],textarea{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;}input[type="checkbox"],input[type="radio"]{vertical-align:middle;}html,body{height:100%;}body,td,textarea,input,select{font-family:sans-serif;font-size:13px;}body,textarea{line-height:1.4em;}input,select{line-height:15px;}p{margin:1em 0;}blockquote{margin:1em;}label{cursor:pointer;}li,dd{margin-bottom:6px;}p,li,dl,dd,dt{line-height:140%;}textarea,input,select{margin:1px;padding:3px;}h1{display:block;font-size:2em;font-weight:bold;margin:.67em 0;}h2{display:block;font-size:1.5em;font-weight:bold;margin:.83em 0;}h3{display:block;font-size:1.17em;font-weight:bold;margin:1em 0;}h4{display:block;font-size:1em;font-weight:bold;margin:1.33em 0;}h5{display:block;font-size:.83em;font-weight:bold;margin:1.67em 0;}h6{display:block;font-size:.67em;font-weight:bold;margin:2.33em 0;}ul.ul-disc{list-style:disc outside;}ul.ul-square{list-style:square outside;}ol.ol-decimal{list-style:decimal outside;}ul.ul-disc,ul.ul-square,ol.ol-decimal{margin-left:1.8em;}ul.ul-disc>li,ul.ul-square>li,ol.ol-decimal>li{margin:0 0 .5em;}.subsubsub{list-style:none;margin:8px 0 5px;padding:0;white-space:nowrap;font-size:12px;float:left;}.subsubsub a{line-height:2;padding:.2em;text-decoration:none;}.subsubsub a .count,.subsubsub a.current .count{color:#999;font-weight:normal;}.subsubsub a.current{font-weight:bold;background:none;border:none;}.subsubsub li{display:inline;margin:0;padding:0;}.widefat{border-width:1px;border-style:solid;border-spacing:0;width:100%;clear:both;margin:0;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;}.widefat *{word-wrap:break-word;}.widefat a{text-decoration:none;}.widefat thead th:first-of-type{-moz-border-radius-topleft:3px;-khtml-border-top-left-radius:3px;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;}.widefat thead th:last-of-type{-moz-border-radius-topright:3px;-khtml-border-top-right-radius:3px;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;}.widefat tfoot th:first-of-type{-moz-border-radius-bottomleft:3px;-khtml-border-bottom-left-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;}.widefat tfoot th:last-of-type{-moz-border-radius-bottomright:3px;-khtml-border-bottom-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px;}.widefat td,.widefat th{border-width:1px 0;border-style:solid;}.widefat tfoot th{border-bottom:none;}.widefat .no-items td{border-bottom-width:0;}.widefat td{font-size:12px;padding:4px 7px 2px;vertical-align:top;}.widefat td p,.widefat td ol,.widefat td ul{font-size:12px;}.widefat th{padding:7px 7px 8px;text-align:left;line-height:1.3em;font-size:14px;}.widefat th input{margin:0 0 0 8px;padding:0;vertical-align:text-top;}.widefat .check-column{width:2.2em;padding:11px 0 0;vertical-align:top;}.widefat tbody th.check-column{padding:9px 0 22px;}.widefat .num,.column-comments,.column-links,.column-posts{text-align:center;}.widefat th#comments{vertical-align:middle;}.wrap{margin:0 15px 0 0;}div.updated,div.error{border-width:1px;border-style:solid;padding:0 .6em;margin:5px 15px 2px;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;}div.updated p,div.error p{margin:.5em 0;padding:2px;}.wrap div.updated,.wrap div.error{margin:5px 0 15px;}.wrap h2,.subtitle{font-family:"HelveticaNeue-Light","Helvetica Neue Light","Helvetica Neue",sans-serif;font-weight:normal;margin:0;text-shadow:rgba(255,255,255,1) 0 1px 0;}.wrap h2{font-size:23px;padding:9px 15px 4px 0;line-height:29px;}.subtitle{font-size:14px;padding-left:25px;}.wrap .add-new-h2{font-family:sans-serif;margin-left:4px;padding:3px 8px;position:relative;top:-3px;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;text-decoration:none;font-size:12px;}.wrap h2.long-header{padding-right:0;}.fade-1000{opacity:0;-moz-transition-property:opacity;-moz-transition-duration:1s;-webkit-transition-property:opacity;-webkit-transition-duration:1s;-o-transition-property:opacity;-o-transition-duration:1s;transition-property:opacity;transition-duration:1s;}.fade-600{opacity:0;-moz-transition-property:opacity;-moz-transition-duration:.6s;-webkit-transition-property:opacity;-webkit-transition-duration:.6s;-o-transition-property:opacity;-o-transition-duration:.6s;transition-property:opacity;transition-duration:.6s;}.fade-400{opacity:0;-moz-transition-property:opacity;-moz-transition-duration:.4s;-webkit-transition-property:opacity;-webkit-transition-duration:.4s;-o-transition-property:opacity;-o-transition-duration:.4s;transition-property:opacity;transition-duration:.4s;}.fade-300{opacity:0;-moz-transition-property:opacity;-moz-transition-duration:.3s;-webkit-transition-property:opacity;-webkit-transition-duration:.3s;-o-transition-property:opacity;-o-transition-duration:.3s;transition-property:opacity;transition-duration:.3s;}.fade-trigger{opacity:1;}
\ No newline at end of file
diff --git a/wp-admin/css/global.dev.css b/wp-admin/css/global.dev.css
deleted file mode 100644 (file)
index 1a74f12..0000000
+++ /dev/null
@@ -1,607 +0,0 @@
-/* http://meyerweb.com/eric/tools/css/reset/ */
-/* v1.0 | 20080212 */
-
-html, body, div, span, applet, object, iframe,
-h1, h2, h3, h4, h5, h6, p, blockquote, pre,
-a, abbr, acronym, address, big, cite, code,
-del, dfn, em, font, img, ins, kbd, q, s, samp,
-small, strike, strong, sub, sup, tt, var,
-b, u, i, center,
-dl, dt, dd, ol, ul, li,
-fieldset, form, label, legend,
-table, caption, tbody, tfoot, thead, tr, th, td {
-       margin: 0;
-       padding: 0;
-       border: 0;
-       outline: 0;
-/*     font-size: 100%;
-       vertical-align: baseline; */
-       background: transparent;
-}
-body {
-       line-height: 1;
-}
-ol, ul {
-       list-style: none;
-}
-blockquote, q {
-       quotes: none;
-}
-blockquote:before, blockquote:after,
-q:before, q:after {
-       content: '';
-       content: none;
-}
-
-/* remember to define focus styles! */
-/*
-:focus {
-       outline: 0;
-}
-*/
-/* remember to highlight inserts somehow! */
-ins {
-       text-decoration: none;
-}
-del {
-       text-decoration: line-through;
-}
-
-/* tables still need 'cellspacing="0"' in the markup */
-/*
-table {
-       border-collapse: collapse;
-       border-spacing: 0;
-}
-*/
-/* end reset css */
-
-
-/* 2 column liquid layout */
-#wpwrap {
-       height: auto;
-       min-height: 100%;
-       width: 100%;
-       position: relative;
-}
-
-#wpcontent {
-       height: 100%;
-}
-
-#wpcontent,
-#footer {
-       margin-left: 165px;
-}
-
-#wpbody-content {
-       padding-bottom: 65px;
-}
-
-.js.folded #wpcontent,
-.js.folded #footer {
-       margin-left: 52px;
-}
-
-#wpbody-content {
-       float: left;
-       width: 100%;
-}
-
-#adminmenuback,
-#adminmenuwrap,
-#adminmenu,
-.js.folded #adminmenu .wp-submenu.sub-open,
-.js.folded #adminmenu .wp-submenu-wrap {
-       width: 145px;
-}
-
-#adminmenuback {
-       position: absolute;
-       top: 0;
-       bottom: 0;
-       z-index: -1;
-}
-
-#adminmenuwrap {
-       float: left;
-}
-
-#adminmenu {
-       clear: left;
-       padding: 0;
-       list-style: none;
-}
-
-.js.folded #adminmenuback,
-.js.folded #adminmenuwrap,
-.js.folded #adminmenu,
-.js.folded #adminmenu li.menu-top {
-       width: 32px;
-}
-
-#footer {
-       position: relative;
-}
-
-/* inner 2 column liquid layout */
-.inner-sidebar {
-       float: right;
-       clear: right;
-       display: none;
-       width: 281px;
-       position: relative;
-}
-
-.inner-sidebar #side-sortables {
-       width: 280px;
-       min-height: 300px;
-}
-
-.has-right-sidebar .inner-sidebar {
-       display: block;
-}
-
-.has-right-sidebar #post-body {
-       float: left;
-       clear: left;
-       width: 100%;
-       margin-right: -340px;
-}
-
-.has-right-sidebar #post-body-content {
-       margin-right: 300px;
-}
-
-/* 2 columns main area */
-
-#col-container {
-       overflow: hidden;
-       padding: 0;
-       margin: 0;
-}
-
-#col-left {
-       padding: 0;
-       margin: 0;
-       overflow: hidden;
-       width: 39%;
-}
-
-#col-right {
-       float: right;
-       clear: right;
-       overflow: hidden;
-       padding: 0;
-       margin: 0;
-       width: 59%;
-}
-
-/* utility classes */
-.alignleft {
-       float: left;
-}
-
-.alignright {
-       float: right;
-}
-
-.textleft {
-       text-align: left;
-}
-
-.textright {
-       text-align: right;
-}
-
-.clear {
-       clear: both;
-}
-
-/* Hide visually but not from screen readers */
-.screen-reader-text,
-.screen-reader-text span {
-       position: absolute;
-       left: -1000em;
-       height: 1px;
-       width: 1px;
-       overflow: hidden;
-}
-
-.hidden,
-.js .closed .inside,
-.js .hide-if-js,
-.no-js .hide-if-no-js {
-       display: none;
-}
-
-/* include margin and padding in the width calculation of input and textarea */
-input[type="text"],
-input[type="password"],
-textarea {
-       -moz-box-sizing: border-box;
-       -webkit-box-sizing: border-box;
-       -ms-box-sizing: border-box; /* ie8 only */
-       box-sizing: border-box;
-}
-
-input[type="checkbox"],
-input[type="radio"] {
-       vertical-align: middle;
-}
-
-/* styles for use by people extending the WordPress interface */
-html,
-body {
-       height: 100%;
-}
-
-body,
-td,
-textarea,
-input,
-select {
-       font-family: sans-serif;
-       font-size: 13px;
-}
-
-body,
-textarea {
-       line-height: 1.4em;
-}
-
-input,
-select {
-       line-height: 15px;
-}
-
-p {
-       margin: 1em 0;
-}
-
-blockquote {
-       margin: 1em;
-}
-
-label {
-       cursor: pointer;
-}
-
-li,
-dd {
-       margin-bottom: 6px;
-}
-
-p,
-li,
-dl,
-dd,
-dt {
-       line-height: 140%;
-}
-
-textarea,
-input,
-select {
-       margin: 1px;
-       padding: 3px;
-}
-
-h1 {
-  display: block;
-  font-size: 2em;
-  font-weight: bold;
-  margin: .67em 0;
-}
-
-h2 {
-  display: block;
-  font-size: 1.5em;
-  font-weight: bold;
-  margin: .83em 0;
-}
-
-h3 {
-  display: block;
-  font-size: 1.17em;
-  font-weight: bold;
-  margin: 1em 0;
-}
-
-h4 {
-  display: block;
-  font-size: 1em;
-  font-weight: bold;
-  margin: 1.33em 0;
-}
-
-h5 {
-  display: block;
-  font-size: 0.83em;
-  font-weight: bold;
-  margin: 1.67em 0;
-}
-
-h6 {
-  display: block;
-  font-size: 0.67em;
-  font-weight: bold;
-  margin: 2.33em 0;
-}
-
-ul.ul-disc {
-       list-style: disc outside;
-}
-
-ul.ul-square {
-       list-style: square outside;
-}
-
-ol.ol-decimal {
-       list-style: decimal outside;
-}
-
-ul.ul-disc,
-ul.ul-square,
-ol.ol-decimal {
-       margin-left: 1.8em;
-}
-
-ul.ul-disc > li,
-ul.ul-square > li,
-ol.ol-decimal > li {
-       margin: 0 0 0.5em;
-}
-
-.subsubsub {
-       list-style: none;
-       margin: 8px 0 5px;
-       padding: 0;
-       white-space: nowrap;
-       font-size: 12px;
-       float: left;
-}
-
-.subsubsub a {
-       line-height: 2;
-       padding: .2em;
-       text-decoration: none;
-}
-
-.subsubsub a .count, .subsubsub a.current .count {
-       color: #999;
-       font-weight: normal;
-}
-
-.subsubsub a.current {
-       font-weight: bold;
-       background: none;
-       border: none;
-}
-
-.subsubsub li {
-       display: inline;
-       margin: 0;
-       padding: 0;
-}
-
-.widefat {
-       border-width: 1px;
-       border-style: solid;
-       border-spacing: 0;
-       width: 100%;
-       clear: both;
-       margin: 0;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;
-}
-
-.widefat * {
-       word-wrap: break-word;
-}
-
-.widefat a {
-       text-decoration: none;
-}
-
-.widefat thead th:first-of-type {
-       -moz-border-radius-topleft: 3px;
-       -khtml-border-top-left-radius: 3px;
-       -webkit-border-top-left-radius: 3px;
-       border-top-left-radius: 3px;
-}
-.widefat thead th:last-of-type {
-       -moz-border-radius-topright: 3px;
-       -khtml-border-top-right-radius: 3px;
-       -webkit-border-top-right-radius: 3px;
-       border-top-right-radius: 3px;
-}
-.widefat tfoot th:first-of-type {
-       -moz-border-radius-bottomleft: 3px;
-       -khtml-border-bottom-left-radius: 3px;
-       -webkit-border-bottom-left-radius: 3px;
-       border-bottom-left-radius: 3px;
-}
-.widefat tfoot th:last-of-type {
-       -moz-border-radius-bottomright: 3px;
-       -khtml-border-bottom-right-radius: 3px;
-       -webkit-border-bottom-right-radius: 3px;
-       border-bottom-right-radius: 3px;
-}
-
-.widefat td,
-.widefat th {
-       border-width: 1px 0;
-       border-style: solid;
-}
-.widefat tfoot th {
-       border-bottom: none;
-}
-
-.widefat .no-items td {
-       border-bottom-width: 0;
-}
-
-.widefat td {
-       font-size: 12px;
-       padding: 4px 7px 2px;
-       vertical-align: top;
-}
-
-.widefat td p,
-.widefat td ol,
-.widefat td ul {
-       font-size: 12px;
-}
-
-.widefat th {
-       padding: 7px 7px 8px;
-       text-align: left;
-       line-height: 1.3em;
-       font-size: 14px;
-}
-
-.widefat th input {
-       margin: 0 0 0 8px;
-       padding: 0;
-       vertical-align: text-top;
-}
-
-.widefat .check-column {
-       width: 2.2em;
-       padding: 11px 0 0;
-       vertical-align: top;
-}
-
-.widefat tbody th.check-column {
-       padding: 9px 0 22px;
-}
-
-.widefat .num,
-.column-comments,
-.column-links,
-.column-posts {
-       text-align: center;
-}
-
-.widefat th#comments {
-       vertical-align: middle;
-}
-
-.wrap {
-       margin: 0 15px 0 0;
-}
-
-div.updated,
-div.error {
-       border-width: 1px;
-       border-style: solid;
-       padding: 0 0.6em;
-       margin: 5px 15px 2px;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;
-}
-
-div.updated p,
-div.error p {
-       margin: 0.5em 0;
-       padding: 2px;
-}
-
-.wrap div.updated,
-.wrap div.error {
-       margin: 5px 0 15px;
-}
-
-.wrap h2,
-.subtitle {
-       font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", sans-serif;
-       font-weight: normal;
-       margin: 0;
-       text-shadow: rgba(255,255,255,1) 0 1px 0;
-}
-.wrap h2 {
-       font-size: 23px;
-       padding: 9px 15px 4px 0;
-       line-height: 29px;
-}
-.subtitle {
-       font-size: 14px;
-       padding-left: 25px;
-}
-.wrap .add-new-h2 {
-       font-family: sans-serif;
-       margin-left: 4px;
-       padding: 3px 8px;
-       position: relative;
-       top: -3px;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;
-       text-decoration: none;
-       font-size: 12px;
-}
-
-.wrap h2.long-header {
-       padding-right: 0;
-}
-
-
-/* =CSS 3 transitions
--------------------------------------------------------------- */
-.fade-1000 {
-       opacity: 0;
-       -moz-transition-property: opacity;
-       -moz-transition-duration: 1s;
-       -webkit-transition-property: opacity;
-       -webkit-transition-duration: 1s;
-       -o-transition-property: opacity;
-       -o-transition-duration: 1s;
-       transition-property: opacity;
-       transition-duration: 1s;
-}
-
-.fade-600 {
-       opacity: 0;
-       -moz-transition-property: opacity;
-       -moz-transition-duration: 0.6s;
-       -webkit-transition-property: opacity;
-       -webkit-transition-duration: 0.6s;
-       -o-transition-property: opacity;
-       -o-transition-duration: 0.6s;
-       transition-property: opacity;
-       transition-duration: 0.6s;
-}
-
-.fade-400 {
-       opacity: 0;
-       -moz-transition-property: opacity;
-       -moz-transition-duration: 0.4s;
-       -webkit-transition-property: opacity;
-       -webkit-transition-duration: 0.4s;
-       -o-transition-property: opacity;
-       -o-transition-duration: 0.4s;
-       transition-property: opacity;
-       transition-duration: 0.4s;
-}
-
-.fade-300 {
-       opacity: 0;
-       -moz-transition-property: opacity;
-       -moz-transition-duration: 0.3s;
-       -webkit-transition-property: opacity;
-       -webkit-transition-duration: 0.3s;
-       -o-transition-property: opacity;
-       -o-transition-duration: 0.3s;
-       transition-property: opacity;
-       transition-duration: 0.3s;
-}
-
-.fade-trigger {
-       opacity: 1;
-}
index 40f5b76b0d3fe05757383f13aa7868b744bd662e..274306d2234046d3ea932077c20b67232ea80f50 100644 (file)
@@ -1 +1 @@
-html{direction:ltr;}body{direction:rtl;}* html #wpcontent #adminmenu .wp-has-submenu .wp-menu-toggle{background:url(../images/menu-bits-rtl.gif?ver=20100531) no-repeat scroll right -109px;}* html #wpcontent #adminmenu li.wp-has-current-submenu .wp-menu-toggle{background:url(../images/menu-bits-rtl.gif?ver=20100531) no-repeat scroll right -206px;}* html #adminmenu{margin-left:0;margin-right:-80px;}* html div.folded #adminmenu{margin-left:0;margin-right:-22px;}#wpcontent #adminmenu .wp-submenu li.wp-submenu-head{padding:3px 10px 4px 4px;}.inline-edit-row fieldset label span.title{float:right;}.inline-edit-row fieldset label span.input-text-wrap{margin-right:0;}p.search-box{float:left;}* html #poststuff h2{margin-right:0;}#bh{margin:7px 10px 0 0;float:left;}#user_info+div#favorite-actions{right:auto;left:15px;}#wphead-info{float:left;}div#dashboard-widgets{padding-right:0;padding-left:1px;}.tagchecklist span a{margin:4px -9px 0 0;}.widefat th input{margin:0 5px 0 0;}#TB_window{width:670px;position:absolute;top:50%;left:50%;margin-right:335px!important;}#dashboard_plugins{direction:ltr;}#dashboard_plugins h3.hndle{direction:rtl;}#dashboard_incoming_links ul li,#dashboard_secondary ul li,#dashboard_primary ul li,p.row-actions{width:100%;}#favorite-inside{position:absolute;right:0;}#post-status-info{height:25px;}#screen-meta{position:static;}p.submit{height:22px;}.inner-sidebar{position:static;}form#widgets-filter{position:static;}* html .meta-box-sortables .postbox .handlediv{background:transparent url(../images/menu-bits-rtl-vs.gif) no-repeat scroll right -111px;}.menu-max-depth-0 #menu-management{width:460px;}.menu-max-depth-1 #menu-management{width:490px;}.menu-max-depth-2 #menu-management{width:520px;}.menu-max-depth-3 #menu-management{width:550px;}.menu-max-depth-4 #menu-management{width:580px;}.menu-max-depth-5 #menu-management{width:610px;}.menu-max-depth-6 #menu-management{width:640px;}.menu-max-depth-7 #menu-management{width:670px;}.menu-max-depth-8 #menu-management{width:700px;}.menu-max-depth-9 #menu-management{width:730px;}.menu-max-depth-10 #menu-management{width:760px;}.menu-max-depth-11 #menu-management{width:790px;}.menu-item-depth-0{margin-left:0;}.menu-item-depth-1{margin-left:-30px;}.menu-item-depth-2{margin-left:-60px;}.menu-item-depth-3{margin-left:-90px;}.menu-item-depth-4{margin-left:-120px;}.menu-item-depth-5{margin-left:-150px;}.menu-item-depth-6{margin-left:-180px;}.menu-item-depth-7{margin-left:-210px;}.menu-item-depth-8{margin-left:-240px;}.menu-item-depth-9{margin-left:-270px;}.menu-item-depth-10{margin-left:-300px;}.menu-item-depth-11{margin-left:-330px;}#menu-to-edit li dl{padding:0!important;margin:0!important;}.ui-sortable-helper .menu-item-transport{margin-top:13px;}.ui-sortable-helper .menu-item-transport .menu-item-transport{margin-top:0;}.sortable-placeholder{margin-top:0!important;margin-left:0!important;margin-bottom:13px!important;padding:0!important;}.auto-add-pages{clear:both;float:none;}#nav-menus-frame .open-label span{float:none;display:inline-block;}#nav-menus-frame .delete-action{float:none;}
\ No newline at end of file
+body{direction:rtl;width:99.5%;}.rtl #adminmenuback{left:auto;right:0;background-image:none;}.rtl #adminmenuback,.rtl #adminmenuwrap{border-width:0 0 0 1px;}#plupload-upload-ui{zoom:1;}.post-com-count-wrapper a.post-com-count{float:none;}#adminmenu .wp-submenu ul{width:99%;}#adminmenu .wp-submenu .wp-submenu .wp-submenu-wrap,#adminmenu .wp-menu-open .wp-submenu .wp-submenu-wrap{border:1px solid #dfdfdf;}.folded #adminmenu .wp-submenu{right:30px;top:-4px;}#adminmenu .wp-submenu .wp-submenu-head{padding:6px 10px 6px 4px;}#adminmenu .wp-menu-arrow{display:none!important;}#wpcontent #adminmenu .wp-submenu li.wp-submenu-head{padding:3px 10px 4px 4px;}div.quicktags-toolbar input{min-width:0;}.inline-edit-row fieldset label span.title{float:right;}.inline-edit-row fieldset label span.input-text-wrap{margin-right:0;}p.search-box{float:left;}#bh{margin:7px 10px 0 0;float:left;}.postbox div.inside,.wp-editor-wrap .wp-editor-container .wp-editor-area,#nav-menu-theme-locations .howto select{width:97.5%;}div#dashboard-widgets{padding-right:0;padding-left:1px;}#dashboard_quick_press h4{text-align:right;}.tagchecklist span a{margin:4px -9px 0 0;}.widefat th input{margin:0 5px 0 0;}#TB_window{width:670px;position:absolute;top:50%;left:50%;margin-right:335px!important;}#dashboard_plugins{direction:ltr;}#dashboard_plugins h3.hndle{direction:rtl;}#dashboard_incoming_links ul li,#dashboard_secondary ul li,#dashboard_primary ul li,p.row-actions{width:100%;}#post-status-info{height:25px;}p.submit{height:22px;}.inner-sidebar{position:static;}form#widgets-filter{position:static;}.menu-item-depth-0{margin-left:0;}.menu-item-depth-1{margin-left:-30px;}.menu-item-depth-2{margin-left:-60px;}.menu-item-depth-3{margin-left:-90px;}.menu-item-depth-4{margin-left:-120px;}.menu-item-depth-5{margin-left:-150px;}.menu-item-depth-6{margin-left:-180px;}.menu-item-depth-7{margin-left:-210px;}.menu-item-depth-8{margin-left:-240px;}.menu-item-depth-9{margin-left:-270px;}.menu-item-depth-10{margin-left:-300px;}.menu-item-depth-11{margin-left:-330px;}#menu-management,.nav-menus-php .menu-edit,#nav-menu-header .submitbox{zoom:1;}.nav-menus-php label{max-width:90%!important;}p.button-controls,.nav-menus-php .tabs-panel{max-width:90%;}.nav-menus-php .major-publishing-actions .publishing-action{float:none;}#wpbody #nav-menu-header label{float:none;}#nav-menu-header{margin-top:-10px;}#nav-menu-footer{margin-bottom:-20px;}#update-nav-menu .publishing-action{max-width:200px;}#nav-menus-frame #update-nav-menu .delete-action{margin-top:-25px;float:left;}#menu-to-edit li{margin-top:-10px;margin-bottom:-10px;}.sortable-placeholder{margin-top:0!important;margin-left:0!important;margin-bottom:13px!important;padding:0!important;}.auto-add-pages{clear:both;float:none;}#nav-menus-frame .open-label span{float:none;display:inline-block;}#nav-menus-frame .delete-action{float:none;}
\ No newline at end of file
index c35fc8945e8e0f8936dfa4008a0cd2e0cbbcf223..78417d7de1ac162cce2c541a8ae0018e4f411389 100644 (file)
@@ -1,61 +1,99 @@
-html {
-       direction: ltr;
-}
+
 body {
        direction: rtl;
 body {
        direction: rtl;
+       width: 99.5%;
+}
+
+.rtl #adminmenuback {
+       left: auto;
+       right: 0;
+       background-image: none;
+}
+
+.rtl #adminmenuback,
+.rtl #adminmenuwrap {
+       border-width: 0 0 0 1px;
+}
+
+#plupload-upload-ui {
+       zoom: 1;
+}
+
+.post-com-count-wrapper a.post-com-count {
+       float: none;
 }
 }
-* html #wpcontent #adminmenu .wp-has-submenu .wp-menu-toggle {
-       background: url(../images/menu-bits-rtl.gif?ver=20100531) no-repeat scroll right -109px;
+
+#adminmenu .wp-submenu ul {
+       width: 99%;
+}
+
+#adminmenu .wp-submenu .wp-submenu .wp-submenu-wrap,
+#adminmenu .wp-menu-open .wp-submenu .wp-submenu-wrap {
+       border: 1px solid #dfdfdf;
 }
 
 }
 
-* html #wpcontent #adminmenu li.wp-has-current-submenu .wp-menu-toggle {
-       background: url(../images/menu-bits-rtl.gif?ver=20100531) no-repeat scroll right -206px;
+.folded #adminmenu .wp-submenu {
+       right: 30px;
+       top: -4px;
 }
 }
-* html #adminmenu {
-       margin-left:0;
-       margin-right: -80px;
+
+#adminmenu .wp-submenu .wp-submenu-head {
+       padding: 6px 10px 6px 4px;
 }
 }
-* html div.folded #adminmenu {
-       margin-left: 0;
-       margin-right: -22px;
+
+#adminmenu .wp-menu-arrow {
+       display: none !important;
 }
 }
+
 #wpcontent #adminmenu .wp-submenu li.wp-submenu-head {
        padding: 3px 10px 4px 4px;
 }
 #wpcontent #adminmenu .wp-submenu li.wp-submenu-head {
        padding: 3px 10px 4px 4px;
 }
+
+div.quicktags-toolbar input {
+       min-width: 0;
+}
+
 .inline-edit-row fieldset label span.title {
        float: right;
 }
 .inline-edit-row fieldset label span.title {
        float: right;
 }
+
 .inline-edit-row fieldset label span.input-text-wrap {
        margin-right: 0;
 }
 .inline-edit-row fieldset label span.input-text-wrap {
        margin-right: 0;
 }
+
 p.search-box {
        float: left;
 }
 p.search-box {
        float: left;
 }
-* html #poststuff h2 {
-       margin-right: 0;
-}
+
 #bh {
        margin: 7px 10px 0 0;
        float: left;
 }
 #bh {
        margin: 7px 10px 0 0;
        float: left;
 }
-#user_info + div#favorite-actions {
-       right: auto;
-       left: 15px;
-}
-#wphead-info {
-       float: left;
+
+.postbox div.inside,
+.wp-editor-wrap .wp-editor-container .wp-editor-area,
+#nav-menu-theme-locations .howto select {
+       width: 97.5%;
 }
 }
+
 /* without this dashboard widgets appear in one column for some screen widths */
 div#dashboard-widgets {
        padding-right: 0;
        padding-left: 1px;
 }
 /* without this dashboard widgets appear in one column for some screen widths */
 div#dashboard-widgets {
        padding-right: 0;
        padding-left: 1px;
 }
+
+#dashboard_quick_press h4 {
+       text-align: right;
+}
+
 .tagchecklist span a {
        margin: 4px -9px 0 0;
 }
 .tagchecklist span a {
        margin: 4px -9px 0 0;
 }
+
 .widefat th input {
        margin: 0 5px 0 0;
 }
 .widefat th input {
        margin: 0 5px 0 0;
 }
+
 /* ---------- add by navid */
 #TB_window {
        width: 670px;
 /* ---------- add by navid */
 #TB_window {
        width: 670px;
@@ -64,43 +102,39 @@ div#dashboard-widgets {
        left: 50%;
        margin-right: 335px !important;
 }
        left: 50%;
        margin-right: 335px !important;
 }
+
 #dashboard_plugins {
        direction: ltr;
 }
 #dashboard_plugins {
        direction: ltr;
 }
+
 #dashboard_plugins h3.hndle {
        direction: rtl;
 }
 #dashboard_plugins h3.hndle {
        direction: rtl;
 }
+
 #dashboard_incoming_links ul li,
 #dashboard_secondary ul li,
 #dashboard_primary ul li,
 p.row-actions {
        width: 100%;
 }
 #dashboard_incoming_links ul li,
 #dashboard_secondary ul li,
 #dashboard_primary ul li,
 p.row-actions {
        width: 100%;
 }
-#favorite-inside {
-       position: absolute;
-       right:0;
-}
+
 #post-status-info {
        height: 25px;
 }
 #post-status-info {
        height: 25px;
 }
-#screen-meta {
-       position: static;
-}
+
 p.submit { /* quick edit and reply in edit-comments.php */
        height:22px;
 }
 p.submit { /* quick edit and reply in edit-comments.php */
        height:22px;
 }
+
 .inner-sidebar { /* fix edit single comment */
        position: static;
 }
 .inner-sidebar { /* fix edit single comment */
        position: static;
 }
+
 form#widgets-filter { /* fix widget page */
        position: static;
 }
 
 form#widgets-filter { /* fix widget page */
        position: static;
 }
 
-* html .meta-box-sortables .postbox .handlediv {
-       background: transparent url(../images/menu-bits-rtl-vs.gif) no-repeat scroll right -111px;
-}
-
-/* nav menus */
+/* nav menus
 .menu-max-depth-0 #menu-management { width: 460px; }
 .menu-max-depth-1 #menu-management { width: 490px; }
 .menu-max-depth-2 #menu-management { width: 520px; }
 .menu-max-depth-0 #menu-management { width: 460px; }
 .menu-max-depth-1 #menu-management { width: 490px; }
 .menu-max-depth-2 #menu-management { width: 520px; }
@@ -113,7 +147,7 @@ form#widgets-filter { /* fix widget page */
 .menu-max-depth-9 #menu-management { width: 730px; }
 .menu-max-depth-10 #menu-management { width: 760px; }
 .menu-max-depth-11 #menu-management { width: 790px; }
 .menu-max-depth-9 #menu-management { width: 730px; }
 .menu-max-depth-10 #menu-management { width: 760px; }
 .menu-max-depth-11 #menu-management { width: 790px; }
-
+*/
 .menu-item-depth-0 { margin-left: 0px; }
 .menu-item-depth-1 { margin-left: -30px; }
 .menu-item-depth-2 { margin-left: -60px; }
 .menu-item-depth-0 { margin-left: 0px; }
 .menu-item-depth-1 { margin-left: -30px; }
 .menu-item-depth-2 { margin-left: -60px; }
@@ -127,30 +161,84 @@ form#widgets-filter { /* fix widget page */
 .menu-item-depth-10 { margin-left: -300px; }
 .menu-item-depth-11 { margin-left: -330px; }
 
 .menu-item-depth-10 { margin-left: -300px; }
 .menu-item-depth-11 { margin-left: -330px; }
 
+/*
 #menu-to-edit li dl {
        padding: 0 !important;
        margin: 0 !important;
 }
 #menu-to-edit li dl {
        padding: 0 !important;
        margin: 0 !important;
 }
+
 .ui-sortable-helper .menu-item-transport {
        margin-top: 13px;
 }
 .ui-sortable-helper .menu-item-transport {
        margin-top: 13px;
 }
-       .ui-sortable-helper .menu-item-transport .menu-item-transport {
-               margin-top: 0;
-       }
+
+.ui-sortable-helper .menu-item-transport .menu-item-transport {
+       margin-top: 0;
+}
+*/
+
+#menu-management,
+.nav-menus-php .menu-edit,
+#nav-menu-header .submitbox {
+       zoom: 1;
+}
+
+.nav-menus-php label {
+       max-width: 90% !important;
+}
+
+p.button-controls,
+.nav-menus-php .tabs-panel {
+       max-width: 90%;
+}
+
+.nav-menus-php .major-publishing-actions .publishing-action {
+       float: none;
+}
+
+#wpbody #nav-menu-header label {
+       float: none;
+}
+
+#nav-menu-header {
+       margin-top: -10px;
+}
+
+#nav-menu-footer {
+       margin-bottom: -20px;
+}
+
+#update-nav-menu .publishing-action {
+       max-width: 200px;
+}
+
+#nav-menus-frame #update-nav-menu .delete-action {
+       margin-top: -25px;
+       float: left;
+}
+
+#menu-to-edit li {
+       margin-top: -10px;
+       margin-bottom: -10px;
+}
+
 .sortable-placeholder {
        margin-top: 0 !important;
        margin-left: 0 !important;
        margin-bottom: 13px !important;
        padding: 0 !important;
 }
 .sortable-placeholder {
        margin-top: 0 !important;
        margin-left: 0 !important;
        margin-bottom: 13px !important;
        padding: 0 !important;
 }
+
 .auto-add-pages {
        clear: both;
        float: none;
 }
 .auto-add-pages {
        clear: both;
        float: none;
 }
+
 #nav-menus-frame .open-label span {
        float: none;
        display: inline-block;
 }
 #nav-menus-frame .open-label span {
        float: none;
        display: inline-block;
 }
+
 #nav-menus-frame .delete-action {
        float: none;
 }
 #nav-menus-frame .delete-action {
        float: none;
 }
+
index 00e1af76b3f1a363fd5b5d7e9218690b9bf35ce8..d8c9a5e017ea8a77b0d756eef64709196e50b996 100644 (file)
@@ -1 +1 @@
-#wp-fullscreen-title{width:97%;}#wp_mce_fullscreen_ifr{background-color:#f9f9f9;}#wp-fullscreen-tagline{color:#888;font-size:14px;}#adminmenuback{left:0;}#adminmenu li.wp-menu-separator,#adminmenu li.wp-menu-separator-last{font-size:1px;line-height:1;}#adminmenu a.menu-top{border-bottom:0 none;border-top:1px solid #ddd;}#adminmenu .separator{font-size:1px;line-height:1px;}#wpbody-content input.button,#wpbody-content input.button-primary,#wpbody-content input.button-secondary,#wpbody-content input.button-highlighted{overflow:visible;}#dashboard-widgets #dashboard_quick_press form p.submit #publish{float:none;}#dashboard-widgets h3 a{height:14px;line-height:14px;}.tablenav-pages .current-page{vertical-align:middle;}#wpbody-content .postbox{border:1px solid #dfdfdf;}#wpbody-content .postbox h3{margin-bottom:-1px;}* html .meta-box-sortables .postbox .handlediv{background:transparent url(../images/menu-bits-vs.gif) no-repeat scroll left -111px;}* html .edit-box{display:inline;}* html .inner-sidebar #side-sortables,* html .postbox-container .meta-box-sortables{height:300px;}* html #wpbody-content #screen-options-link-wrap{display:inline-block;width:150px;text-align:center;}* html #wpbody-content #contextual-help-link-wrap{display:inline-block;width:100px;text-align:center;}* html #adminmenu{margin-left:-80px;}* html .folded #adminmenu{margin-left:-22px;}* html #wpcontent #adminmenu li.menu-top{display:inline;padding:0;margin:0;}* html #footer{margin:0;}.js.folded #adminmenu li.menu-top{display:block;zoom:100%;}ul#adminmenu{z-index:99;}#adminmenu li.menu-top a.menu-top{min-width:auto;width:auto;}#wpcontent #adminmenu li.wp-has-current-submenu a.wp-has-submenu{font-style:normal;}* html #wpcontent #adminmenu .wp-menu-open .wp-menu-toggle{background:none;}* html #wpcontent #adminmenu .wp-has-submenu .wp-menu-toggle{background:url(../images/menu-bits.gif?ver=20100610) no-repeat scroll left -109px;}* html #wpcontent #adminmenu li.wp-has-current-submenu .wp-menu-toggle{background:url(../images/menu-bits.gif?ver=20100610) no-repeat scroll left -206px;}* html #adminmenu div.wp-menu-image{height:29px;}#wpcontent #adminmenu .wp-submenu li{padding:0;}#adminmenu,.major-publishing-actions,.wp-submenu,.wp-submenu li,.wp-menu-toggle,#template,#template div,#editcat,#addcat,* html .stuffbox h3{zoom:100%;}#wpcontent #adminmenu .wp-submenu li.wp-submenu-head{padding:3px 4px 4px 10px;zoom:100%;}.js.folded #adminmenu .menu-top{height:30px;}.js.folded #adminmenu .wp-submenu{margin:-1px 0 0 0;}.wp-menu-arrow{height:28px;}.submitbox{margin-top:10px;}#wpbody-content .quick-edit-row-post .inline-edit-col-left{width:39%;}#wpbody-content .inline-edit-row-post .inline-edit-col-center{width:19%;}#wpbody-content .quick-edit-row-page .inline-edit-col-left{width:49%;}#wpbody-content .bulk-edit-row .inline-edit-col-left{width:29%;}.inline-edit-row p.submit{zoom:100%;}.inline-edit-row fieldset label span.title{display:block;float:left;width:5em;}.inline-edit-row fieldset label span.input-text-wrap{margin-left:0;zoom:100%;}#wpbody-content .inline-edit-row fieldset label span.input-text-wrap input{line-height:130%;}#wpbody-content .inline-edit-row .input-text-wrap input{width:95%;}#wpbody-content .inline-edit-row .input-text-wrap input.inline-edit-password-input{width:8em;}* html .row-actions{visibility:visible;}#wphead-info{float:right;}#titlediv #title{width:98%;}a.button{line-height:1.4em;margin:1px;padding:2px 6px;}* html div.widget-liquid-left,* html div.widget-liquid-right{display:block;position:relative;}#screen-options-wrap{overflow:hidden;}#favorite-actions{z-index:12;}#favorite-inside,#favorite-inside a,.favorite-action{zoom:100%;}#the-comment-list .comment-item,#post-status-info,#wpwrap,#wpcontent,#wrap,#postdivrich,#postdiv,#poststuff,.metabox-holder,#titlediv,#post-body,#editorcontainer,.tablenav,.widget-liquid-left,.widget-liquid-right,#widgets-left,.widgets-sortables,#dragHelper,.widget .widget-top,.widget,.widget-control-actions,.tagchecklist,#col-container,#col-left,#col-right,.fileedit-sub{display:block;zoom:100%;}p.search-box{position:static;float:right;margin:-3px 0 4px;}* html #editorcontainer{padding:0;}#editorcontainer #content{overflow:auto;margin:auto;width:98%;}form#template div{width:100%;}#ed_toolbar input,#ed_reply_toolbar input{overflow:visible;padding:0 4px;}#poststuff h2{font-size:1.6em;}* html #poststuff h2{margin-left:0;}#bh{margin:7px 10px 0 0;float:right;}div#dashboard-widgets{padding-right:1px;}.tagchecklist span,.tagchecklist span a{display:inline-block;display:block;}.tagchecklist span a{margin:4px 0 0 -9px;}.tablenav .button-secondary,.nav .button-secondary{padding-top:2px;padding-bottom:2px;}.tablenav select{font-size:13px;display:inline-block;vertical-align:top;margin-top:2px;}.tablenav .actions select{width:155px;}table.ie-fixed{table-layout:fixed;}.widefat tr,.widefat th{margin-bottom:0;border-spacing:0;}.widefat th input{margin:0 0 0 5px;}.widefat .check-column{padding:6px 0 2px;}.widefat tbody th.check-column{padding:4px 0 22px;}.widefat{empty-cells:show;border-collapse:collapse;}.tablenav a.button-secondary{display:inline-block;padding:2px 5px;}* html .stuffbox,* html .stuffbox input,* html .stuffbox textarea{border:1px solid #DFDFDF;}* html .feature-filter .feature-group li{width:145px;}* html .widget-top .widget-title-action a{background:url("../images/menu-bits.gif?ver=20100610") no-repeat scroll 0 -110px;}* html div.widget-liquid-left{width:99%;}#wp_inactive_widgets{padding-bottom:8px;}* html .widgets-sortables{height:50px;}* html a#content_resize{right:-2px;}* html .widget-title h4{width:205px;}* html #removing-widget .in-widget-title{display:none;}#available-widgets .widget-holder{padding-bottom:65px;}#widgets-left .inactive{padding-bottom:10px;}.widget-liquid-right .widget,#wp_inactive_widgets .widget{position:relative;}* html .media-item .pinkynail{height:32px;width:40px;}#wpcontent .button-primary-disabled{color:#9FD0D5;background:#298CBA;}#wpcontent #ajax-loading,#wpcontent .ajax-loading{vertical-align:baseline;}* html .describe .field input.text,* html .describe .field textarea{width:440px;}#the-comment-list .unapproved tr,#the-comment-list .unapproved td{background-color:#ffffe0;}.imgedit-submit{width:300px;}* html input{border:1px solid #dfdfdf;}#nav-menu-header,#nav-menus-frame,#wpbody,.menu li{zoom:100%;}#update-nav-menu #post-body{overflow:hidden;}.menu li{min-width:100%;}.menu li.sortable-placeholder{min-width:400px;}
\ No newline at end of file
+.welcome-panel .wp-badge{position:absolute;}.welcome-panel .welcome-panel-column{margin:0 -25px 0 4%;}#wp-fullscreen-title{width:97%;}#wp_mce_fullscreen_ifr{background-color:#f9f9f9;}#wp-fullscreen-tagline{color:#888;font-size:14px;}#adminmenushadow{display:none;}#adminmenuback{left:0;background-image:none;}#adminmenuwrap{position:static;}#adminmenu{position:relative;}#adminmenu li.wp-menu-separator,#adminmenu li.wp-menu-separator-last{font-size:1px;line-height:1;}#adminmenu a.menu-top{border-bottom:0 none;border-top:1px solid #ddd;}#adminmenu .separator{font-size:1px;line-height:1px;}#adminmenu .wp-submenu ul{margin:0;}.folded #adminmenu .wp-submenu ul{margin-left:5px;}#adminmenu li.menu-top{margin-bottom:-2px;}#adminmenu li.wp-not-current-submenu:hover .wp-menu-arrow{display:none;}#wpcontent #adminmenu .wp-submenu li.wp-submenu-head{padding:3px 4px 4px 10px;zoom:100%;}.js.folded #adminmenu .menu-top{height:30px;}.js.folded #adminmenu .wp-submenu{margin:-1px 0 0 0;}.js.folded #adminmenu li.menu-top{display:block;zoom:100%;}ul#adminmenu{z-index:99;}#adminmenu li.menu-top a.menu-top{min-width:auto;width:auto;}#wpcontent #adminmenu li.wp-has-current-submenu a.wp-has-submenu{font-style:normal;}#wpcontent #adminmenu .wp-submenu li{padding:0;}#collapse-menu{line-height:23px;}#wpadminbar .ab-comments-icon{padding-top:7px;}table.fixed th,table.fixed td{border-top:1px solid #ddd;}#wpbody-content input.button,#wpbody-content input.button-primary,#wpbody-content input.button-secondary,#wpbody-content input.button-highlighted{overflow:visible;}#dashboard-widgets #dashboard_quick_press form p.submit #publish{float:none;}#dashboard-widgets h3 a{height:14px;line-height:14px;}#dashboard_browser_nag{color:#fff;}#dashboard_browser_nag .browser-icon{position:relative;}.tablenav-pages .current-page{vertical-align:middle;}#wpbody-content .postbox{border:1px solid #dfdfdf;}#wpbody-content .postbox h3{margin-bottom:-1px;}.major-publishing-actions,.wp-submenu,.wp-submenu li,.wp-menu-toggle,#template,#template div,#editcat,#addcat{zoom:100%;}.wp-menu-arrow{height:28px;}.submitbox{margin-top:10px;}#wpbody-content .quick-edit-row-post .inline-edit-col-left{width:39%;}#wpbody-content .inline-edit-row-post .inline-edit-col-center{width:19%;}#wpbody-content .quick-edit-row-page .inline-edit-col-left{width:49%;}#wpbody-content .bulk-edit-row .inline-edit-col-left{width:29%;}.inline-edit-row p.submit{zoom:100%;}.inline-edit-row fieldset label span.title{display:block;float:left;width:5em;}.inline-edit-row fieldset label span.input-text-wrap{margin-left:0;zoom:100%;}#wpbody-content .inline-edit-row fieldset label span.input-text-wrap input{line-height:130%;}#wpbody-content .inline-edit-row .input-text-wrap input{width:95%;}#wpbody-content .inline-edit-row .input-text-wrap input.inline-edit-password-input{width:8em;}#titlediv #title{width:98%;}a.button{line-height:1.4em;margin:1px;padding:2px 6px;}#screen-options-wrap{overflow:hidden;}#the-comment-list .comment-item,#post-status-info,#wpwrap,#wrap,#postdivrich,#postdiv,#poststuff,.metabox-holder,#titlediv,#post-body,#editorcontainer,.tablenav,.widget-liquid-left,.widget-liquid-right,#widgets-left,.widgets-sortables,#dragHelper,.widget .widget-top,.widget,.widget-control-actions,.tagchecklist,#col-container,#col-left,#col-right,.fileedit-sub{display:block;zoom:100%;}p.search-box{position:static;float:right;margin:-3px 0 4px;}#editorcontainer #content{overflow:auto;margin:auto;width:98%;}form#template div{width:100%;}#ed_toolbar input,#ed_reply_toolbar input{overflow:visible;padding:0 4px;}#poststuff h2{font-size:1.6em;}#bh{margin:7px 10px 0 0;float:right;}div#dashboard-widgets{padding-right:1px;}.tagchecklist span,.tagchecklist span a{display:inline-block;display:block;}.tagchecklist span a{margin:4px 0 0 -9px;}.tablenav .button-secondary,.nav .button-secondary{padding-top:2px;padding-bottom:2px;}.tablenav select{font-size:13px;display:inline-block;vertical-align:top;margin-top:2px;}.tablenav .actions select{width:155px;}table.ie-fixed{table-layout:fixed;}.widefat tr,.widefat th{margin-bottom:0;border-spacing:0;}.widefat th input{margin:0 0 0 5px;}.widefat .check-column{padding:6px 0 2px;}.widefat tbody th.check-column{padding:4px 0 22px;}.widefat{empty-cells:show;border-collapse:collapse;}.tablenav a.button-secondary{display:inline-block;padding:2px 5px;}.inactive-sidebar .widgets-sortables{padding-bottom:8px;}#available-widgets .widget-holder{padding-bottom:65px;}#widgets-left .inactive{padding-bottom:10px;}.widget-liquid-right .widget,.inactive-sidebar .widget{position:relative;}#wpcontent .button-primary-disabled{color:#9FD0D5;background:#298CBA;}#wpcontent #ajax-loading,#wpcontent .ajax-loading{vertical-align:baseline;}#the-comment-list .unapproved tr,#the-comment-list .unapproved td{background-color:#ffffe0;}.imgedit-submit{width:300px;}#nav-menus-frame,#wpbody,.menu li{zoom:100%;}#update-nav-menu #post-body{overflow:hidden;}.menu li{min-width:100%;}.menu li.sortable-placeholder{min-width:400px;}.about-wrap img.element-screenshot{padding:2px;}.about-wrap .feature-section img,.about-wrap .feature-section .image-mask{border-width:1px;border-style:solid;}.about-wrap .feature-section.three-col img{margin-left:0;}* html .row-actions{visibility:visible;}* html div.widget-liquid-left,* html div.widget-liquid-right{display:block;position:relative;}* html #editorcontainer{padding:0;}* html #poststuff h2{margin-left:0;}* html .stuffbox,* html .stuffbox input,* html .stuffbox textarea{border:1px solid #DFDFDF;}* html .feature-filter .feature-group li{width:145px;}* html .widget-top .widget-title-action a{background:url("../images/menu-bits.gif?ver=20100610") no-repeat scroll 0 -110px;}* html div.widget-liquid-left{width:99%;}* html .widgets-sortables{height:50px;}* html a#content_resize{right:-2px;}* html .widget-title h4{width:205px;}* html #removing-widget .in-widget-title{display:none;}* html .media-item .pinkynail{height:32px;width:40px;}* html .describe .field input.text,* html .describe .field textarea{width:440px;}* html input{border:1px solid #dfdfdf;}* html .meta-box-sortables .postbox .handlediv{background:transparent url(../images/menu-bits-vs.gif) no-repeat scroll left -111px;}* html .edit-box{display:inline;}* html .inner-sidebar #side-sortables,* html .postbox-container .meta-box-sortables{height:300px;}* html #wpbody-content #screen-options-link-wrap{display:inline-block;width:150px;text-align:center;}* html #wpbody-content #contextual-help-link-wrap{display:inline-block;width:100px;text-align:center;}* html #adminmenu{margin-left:-80px;}* html .folded #adminmenu{margin-left:-22px;}* html #wpcontent #adminmenu li.menu-top{display:inline;padding:0;margin:0;}* html #footer{margin:0;}* html #wpcontent #adminmenu .wp-menu-open .wp-menu-toggle{background:none;}* html #wpcontent #adminmenu .wp-has-submenu .wp-menu-toggle{background:url(../images/menu-bits.gif?ver=20100610) no-repeat scroll left -109px;}* html #wpcontent #adminmenu li.wp-has-current-submenu .wp-menu-toggle{background:url(../images/menu-bits.gif?ver=20100610) no-repeat scroll left -206px;}* html #adminmenu div.wp-menu-image{height:29px;}
\ No newline at end of file
index a41d08fe8c00b7c4b52a69f505a6247f5a1e250b..fa9f12ba903e797bf588a81c3bd9f868cada0b3d 100644 (file)
@@ -1,4 +1,11 @@
 /* Fixes for IE bugs */
 /* Fixes for IE bugs */
+.welcome-panel .wp-badge {
+       position: absolute;
+}
+
+.welcome-panel .welcome-panel-column {
+       margin: 0 -25px 0 4%;
+}
 
 #wp-fullscreen-title {
        width: 97%;
 
 #wp-fullscreen-title {
        width: 97%;
        font-size: 14px;
 }
 
        font-size: 14px;
 }
 
+#adminmenushadow {
+       display: none;
+}
+
 #adminmenuback {
        left: 0;
 #adminmenuback {
        left: 0;
+       background-image: none;
+}
+
+#adminmenuwrap {
+       position: static;
+}
+
+#adminmenu {
+       position: relative;
 }
 
 #adminmenu li.wp-menu-separator,
 }
 
 #adminmenu li.wp-menu-separator,
        line-height: 1px;
 }
 
        line-height: 1px;
 }
 
-#wpbody-content input.button,
-#wpbody-content input.button-primary,
-#wpbody-content input.button-secondary,
-#wpbody-content input.button-highlighted {
-       overflow: visible;
-}
-
-#dashboard-widgets #dashboard_quick_press form p.submit #publish {
-       float: none;
+#adminmenu .wp-submenu ul {
+       margin: 0;
 }
 
 }
 
-#dashboard-widgets h3 a {
-       height: 14px;
-       line-height: 14px;
+.folded #adminmenu .wp-submenu ul {
+       margin-left: 5px;
 }
 
 }
 
-.tablenav-pages .current-page {
-       vertical-align: middle;
+#adminmenu li.menu-top {
+       margin-bottom: -2px;
 }
 
 }
 
-#wpbody-content .postbox {
-       border: 1px solid #dfdfdf;
+#adminmenu li.wp-not-current-submenu:hover .wp-menu-arrow {
+       display: none;
 }
 
 }
 
-#wpbody-content .postbox h3 {
-       margin-bottom: -1px;
+#wpcontent #adminmenu .wp-submenu li.wp-submenu-head {
+       padding: 3px 4px 4px 10px;
+       zoom: 100%;
 }
 
 }
 
-* html .meta-box-sortables .postbox .handlediv {
-       background: transparent url(../images/menu-bits-vs.gif) no-repeat scroll left -111px;
+.js.folded #adminmenu .menu-top {
+       height: 30px;
 }
 
 }
 
-* html .edit-box {
-       display: inline;
+.js.folded #adminmenu .wp-submenu {
+       margin: -1px 0 0 0;
 }
 
 }
 
-* html .inner-sidebar #side-sortables,
-* html .postbox-container .meta-box-sortables {
-       height: 300px;
+.js.folded #adminmenu li.menu-top {
+       display: block;
+       zoom: 100%;
 }
 
 }
 
-* html #wpbody-content #screen-options-link-wrap {
-       display: inline-block;
-       width: 150px;
-       text-align: center;
+ul#adminmenu {
+       z-index: 99;
 }
 
 }
 
-* html #wpbody-content #contextual-help-link-wrap {
-       display: inline-block;
-       width: 100px;
-       text-align: center;
+#adminmenu li.menu-top a.menu-top {
+       min-width: auto;
+       width: auto;
 }
 
 }
 
-* html #adminmenu {
-       margin-left: -80px;
+#wpcontent #adminmenu li.wp-has-current-submenu a.wp-has-submenu {
+       font-style: normal;
 }
 
 }
 
-* html .folded #adminmenu {
-       margin-left: -22px;
+#wpcontent #adminmenu .wp-submenu li {
+       padding: 0;
 }
 
 }
 
-* html #wpcontent #adminmenu li.menu-top {
-       display: inline;
-       padding: 0;
-       margin: 0;
+#collapse-menu {
+       line-height: 23px;
 }
 
 }
 
-* html #footer {
-       margin: 0;
+#wpadminbar .ab-comments-icon {
+       padding-top: 7px;
 }
 
 }
 
-.js.folded #adminmenu li.menu-top {
-       display: block;
-       zoom: 100%;
+table.fixed th,
+table.fixed td {
+       border-top: 1px solid #ddd;
 }
 
 }
 
-ul#adminmenu {
-       z-index: 99;
+#wpbody-content input.button,
+#wpbody-content input.button-primary,
+#wpbody-content input.button-secondary,
+#wpbody-content input.button-highlighted {
+       overflow: visible;
 }
 
 }
 
-#adminmenu li.menu-top a.menu-top {
-       min-width: auto;
-       width: auto;
+#dashboard-widgets #dashboard_quick_press form p.submit #publish {
+       float: none;
 }
 
 }
 
-#wpcontent #adminmenu li.wp-has-current-submenu a.wp-has-submenu {
-       font-style: normal;
+#dashboard-widgets h3 a {
+       height: 14px;
+       line-height: 14px;
 }
 
 }
 
-* html #wpcontent #adminmenu .wp-menu-open .wp-menu-toggle {
-       background: none;
+#dashboard_browser_nag {
+       color: #fff;
 }
 
 }
 
-* html #wpcontent #adminmenu .wp-has-submenu .wp-menu-toggle {
-       background: url(../images/menu-bits.gif?ver=20100610) no-repeat scroll left -109px;
+#dashboard_browser_nag .browser-icon {
+       position: relative;
 }
 
 }
 
-* html #wpcontent #adminmenu li.wp-has-current-submenu .wp-menu-toggle {
-       background: url(../images/menu-bits.gif?ver=20100610) no-repeat scroll left -206px;
+.tablenav-pages .current-page {
+       vertical-align: middle;
 }
 
 }
 
-* html #adminmenu div.wp-menu-image {
-       height: 29px;
+#wpbody-content .postbox {
+       border: 1px solid #dfdfdf;
 }
 
 }
 
-#wpcontent #adminmenu .wp-submenu li {
-       padding: 0;
+#wpbody-content .postbox h3 {
+       margin-bottom: -1px;
 }
 
 }
 
-#adminmenu,
 .major-publishing-actions,
 .wp-submenu,
 .wp-submenu li,
 .major-publishing-actions,
 .wp-submenu,
 .wp-submenu li,
@@ -150,24 +160,10 @@ ul#adminmenu {
 #template,
 #template div,
 #editcat,
 #template,
 #template div,
 #editcat,
-#addcat,
-* html .stuffbox h3  {
-       zoom: 100%;
-}
-
-#wpcontent #adminmenu .wp-submenu li.wp-submenu-head {
-       padding: 3px 4px 4px 10px;
+#addcat {
        zoom: 100%;
 }
 
        zoom: 100%;
 }
 
-.js.folded #adminmenu .menu-top {
-       height: 30px;
-}
-
-.js.folded #adminmenu .wp-submenu {
-       margin: -1px 0 0 0;
-}
-
 .wp-menu-arrow {
        height: 28px;
 }
 .wp-menu-arrow {
        height: 28px;
 }
@@ -221,14 +217,6 @@ ul#adminmenu {
 }
 /* end Inline Editor */
 
 }
 /* end Inline Editor */
 
-* html .row-actions {
-       visibility: visible;
-}
-
-#wphead-info {
-       float: right;
-}
-
 #titlediv #title {
        width: 98%;
 }
 #titlediv #title {
        width: 98%;
 }
@@ -239,30 +227,13 @@ a.button {
        padding: 2px 6px;
 }
 
        padding: 2px 6px;
 }
 
-* html div.widget-liquid-left,
-* html div.widget-liquid-right {
-       display: block;
-       position: relative;
-}
-
 #screen-options-wrap {
        overflow: hidden;
 }
 
 #screen-options-wrap {
        overflow: hidden;
 }
 
-#favorite-actions {
-       z-index: 12;
-}
-
-#favorite-inside,
-#favorite-inside a,
-.favorite-action {
-       zoom: 100%;
-}
-
 #the-comment-list .comment-item,
 #post-status-info,
 #wpwrap,
 #the-comment-list .comment-item,
 #post-status-info,
 #wpwrap,
-#wpcontent,
 #wrap,
 #postdivrich,
 #postdiv,
 #wrap,
 #postdivrich,
 #postdiv,
@@ -295,9 +266,6 @@ p.search-box {
        margin: -3px 0 4px;
 }
 
        margin: -3px 0 4px;
 }
 
-* html #editorcontainer {
-       padding: 0;
-}
 
 #editorcontainer #content {
        overflow: auto;
 
 #editorcontainer #content {
        overflow: auto;
@@ -319,10 +287,6 @@ form#template div {
        font-size: 1.6em;
 }
 
        font-size: 1.6em;
 }
 
-* html #poststuff h2 {
-       margin-left: 0;
-}
-
 #bh {
        margin: 7px 10px 0 0;
        float: right;
 #bh {
        margin: 7px 10px 0 0;
        float: right;
@@ -390,6 +354,96 @@ table.ie-fixed {
        padding: 2px 5px;
 }
 
        padding: 2px 5px;
 }
 
+.inactive-sidebar .widgets-sortables {
+       padding-bottom: 8px;
+}
+
+#available-widgets .widget-holder {
+       padding-bottom: 65px;
+}
+
+#widgets-left .inactive {
+       padding-bottom: 10px;
+}
+
+.widget-liquid-right .widget,
+.inactive-sidebar .widget {
+       position: relative;
+}
+
+
+
+#wpcontent .button-primary-disabled {
+       color: #9FD0D5;
+       background: #298CBA;
+}
+
+#wpcontent #ajax-loading,
+#wpcontent .ajax-loading {
+       vertical-align: baseline;
+}
+
+#the-comment-list .unapproved tr,
+#the-comment-list .unapproved td {
+       background-color: #ffffe0;
+}
+
+.imgedit-submit {
+       width: 300px;
+}
+
+#nav-menus-frame,
+#wpbody,
+.menu li {
+       zoom: 100%;
+}
+
+#update-nav-menu #post-body {
+       overflow:hidden;
+}
+
+.menu li {
+       min-width: 100%;
+}
+
+.menu li.sortable-placeholder {
+       min-width: 400px;
+}
+
+.about-wrap img.element-screenshot {
+       padding: 2px;
+}
+
+.about-wrap .feature-section img,
+.about-wrap .feature-section .image-mask {
+       border-width: 1px;
+       border-style: solid;
+}
+
+.about-wrap .feature-section.three-col img {
+       margin-left: 0;
+}
+
+
+/* IE6 leftovers */
+* html .row-actions {
+       visibility: visible;
+}
+
+* html div.widget-liquid-left,
+* html div.widget-liquid-right {
+       display: block;
+       position: relative;
+}
+
+* html #editorcontainer {
+       padding: 0;
+}
+
+* html #poststuff h2 {
+       margin-left: 0;
+}
+
 * html .stuffbox,
 * html .stuffbox input,
 * html .stuffbox textarea {
 * html .stuffbox,
 * html .stuffbox input,
 * html .stuffbox textarea {
@@ -408,10 +462,6 @@ table.ie-fixed {
        width: 99%;
 }
 
        width: 99%;
 }
 
-#wp_inactive_widgets {
-       padding-bottom: 8px;
-}
-
 * html .widgets-sortables {
        height: 50px;
 }
 * html .widgets-sortables {
        height: 50px;
 }
@@ -428,67 +478,76 @@ table.ie-fixed {
        display: none;
 }
 
        display: none;
 }
 
-#available-widgets .widget-holder {
-       padding-bottom: 65px;
+* html .media-item .pinkynail {
+       height: 32px;
+       width: 40px;
 }
 
 }
 
-#widgets-left .inactive {
-       padding-bottom: 10px;
+* html .describe .field input.text,
+* html .describe .field textarea {
+       width: 440px;
 }
 
 }
 
-.widget-liquid-right .widget,
-#wp_inactive_widgets .widget {
-       position: relative;
+* html input {
+       border: 1px solid #dfdfdf;
 }
 
 }
 
-* html .media-item .pinkynail {
-       height: 32px;
-       width: 40px;
+* html .meta-box-sortables .postbox .handlediv {
+       background: transparent url(../images/menu-bits-vs.gif) no-repeat scroll left -111px;
 }
 
 }
 
-#wpcontent .button-primary-disabled {
-       color: #9FD0D5;
-       background: #298CBA;
+* html .edit-box {
+       display: inline;
 }
 
 }
 
-#wpcontent #ajax-loading,
-#wpcontent .ajax-loading {
-       vertical-align: baseline;
+* html .inner-sidebar #side-sortables,
+* html .postbox-container .meta-box-sortables {
+       height: 300px;
 }
 
 }
 
-* html .describe .field input.text,
-* html .describe .field textarea {
-       width: 440px;
+* html #wpbody-content #screen-options-link-wrap {
+       display: inline-block;
+       width: 150px;
+       text-align: center;
 }
 
 }
 
-#the-comment-list .unapproved tr,
-#the-comment-list .unapproved td {
-       background-color: #ffffe0;
+* html #wpbody-content #contextual-help-link-wrap {
+       display: inline-block;
+       width: 100px;
+       text-align: center;
 }
 
 }
 
-.imgedit-submit {
-       width: 300px;
+* html #adminmenu {
+       margin-left: -80px;
 }
 
 }
 
-* html input {
-       border: 1px solid #dfdfdf;
+* html .folded #adminmenu {
+       margin-left: -22px;
 }
 
 }
 
-#nav-menu-header,
-#nav-menus-frame,
-#wpbody,
-.menu li {
-       zoom:100%;
+* html #wpcontent #adminmenu li.menu-top {
+       display: inline;
+       padding: 0;
+       margin: 0;
 }
 
 }
 
-#update-nav-menu #post-body {
-       overflow:hidden;
+* html #footer {
+       margin: 0;
 }
 
 }
 
-.menu li {
-       min-width:100%;
+* html #wpcontent #adminmenu .wp-menu-open .wp-menu-toggle {
+       background: none;
 }
 
 }
 
-.menu li.sortable-placeholder {
-       min-width:400px;
+* html #wpcontent #adminmenu .wp-has-submenu .wp-menu-toggle {
+       background: url(../images/menu-bits.gif?ver=20100610) no-repeat scroll left -109px;
 }
 }
+
+* html #wpcontent #adminmenu li.wp-has-current-submenu .wp-menu-toggle {
+       background: url(../images/menu-bits.gif?ver=20100610) no-repeat scroll left -206px;
+}
+
+* html #adminmenu div.wp-menu-image {
+       height: 29px;
+}
+
diff --git a/wp-admin/css/install-rtl.css b/wp-admin/css/install-rtl.css
deleted file mode 100644 (file)
index e422ece..0000000
+++ /dev/null
@@ -1 +0,0 @@
-body{font-family:Tahoma,arial;}h1{font-family:arial;margin:5px -4px 0 0;}ul,ol{padding:5px 22px 5px 5px;}.step,th{text-align:right;}.submit input,.button,.button-secondary{font-family:Tahoma,arial;margin-right:0;}.form-table th{text-align:right;}#user_login,#admin_email,#pass1,#pass2{direction:ltr;}
\ No newline at end of file
diff --git a/wp-admin/css/install-rtl.dev.css b/wp-admin/css/install-rtl.dev.css
deleted file mode 100644 (file)
index 9e0be99..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-body {
-       font-family: Tahoma, arial;
-}
-h1 {
-       font-family: arial;
-       margin: 5px -4px 0 0;
-}
-ul, ol {
-       padding: 5px 22px 5px 5px;
-}
-.step, th {
-       text-align: right;
-}
-.submit input, .button, .button-secondary {
-       font-family: Tahoma, arial;
-       margin-right: 0;
-}
-.form-table th {
-       text-align: right;
-}
-#user_login, #admin_email, #pass1, #pass2 {
-       direction: ltr;
-}
\ No newline at end of file
index fa7687249091f52a21508582171d3f050b206a7f..868b9810b313c8f2b04ea3d342df4628aee5e0ce 100644 (file)
@@ -1 +1 @@
-html{background:#f9f9f9;}body{background:#fff;color:#333;font-family:sans-serif;margin:2em auto;width:700px;padding:1em 2em;-moz-border-radius:11px;-khtml-border-radius:11px;-webkit-border-radius:11px;border-radius:11px;border:1px solid #dfdfdf;}a{color:#2583ad;text-decoration:none;}a:hover{color:#d54e21;}h1{border-bottom:1px solid #dadada;clear:both;color:#666;font:24px Georgia,"Times New Roman",Times,serif;margin:5px 0 0 -4px;padding:0;padding-bottom:7px;}h2{font-size:16px;}p,li,dd,dt{padding-bottom:2px;font-size:12px;line-height:18px;}code,.code{font-size:13px;}ul,ol,dl{padding:5px 5px 5px 22px;}a img{border:0;}abbr{border:0;font-variant:normal;}#logo{margin:6px 0 14px 0;border-bottom:none;text-align:center;}.step{margin:20px 0 15px;}.step,th{text-align:left;padding:0;}.submit input,.button,.button-secondary{font-family:sans-serif;text-decoration:none;font-size:14px!important;line-height:16px;padding:6px 12px;cursor:pointer;border:1px solid #bbb;color:#464646;-moz-border-radius:15px;-khtml-border-radius:15px;-webkit-border-radius:15px;border-radius:15px;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;-khtml-box-sizing:content-box;box-sizing:content-box;}.button:hover,.button-secondary:hover,.submit input:hover{color:#000;border-color:#666;}.button,.submit input,.button-secondary{background:#f2f2f2 url(../images/white-grad.png) repeat-x scroll left top;}.button:active,.submit input:active,.button-secondary:active{background:#eee url(../images/white-grad-active.png) repeat-x scroll left top;}textarea{border:1px solid #bbb;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;}.form-table{border-collapse:collapse;margin-top:1em;width:100%;}.form-table td{margin-bottom:9px;padding:10px;border-bottom:8px solid #fff;font-size:12px;}.form-table th{font-size:13px;text-align:left;padding:16px 10px 10px 10px;border-bottom:8px solid #fff;width:130px;vertical-align:top;}.form-table tr{background:#f3f3f3;}.form-table code{line-height:18px;font-size:18px;}.form-table p{margin:4px 0 0 0;font-size:11px;}.form-table input{line-height:20px;font-size:15px;padding:2px;}.form-table th p{font-weight:normal;}#error-page{margin-top:50px;}#error-page p{font-size:12px;line-height:18px;margin:25px 0 20px;}#error-page code,.code{font-family:Consolas,Monaco,monospace;}#pass-strength-result{background-color:#eee;border-color:#ddd!important;border-style:solid;border-width:1px;margin:5px 5px 5px 1px;padding:5px;text-align:center;width:200px;display:none;}#pass-strength-result.bad{background-color:#ffb78c;border-color:#ff853c!important;}#pass-strength-result.good{background-color:#ffec8b;border-color:#fc0!important;}#pass-strength-result.short{background-color:#ffa0a0;border-color:#f04040!important;}#pass-strength-result.strong{background-color:#c3ff88;border-color:#8dff1c!important;}.message{border:1px solid #e6db55;padding:.3em .6em;margin:5px 0 15px;background-color:#ffffe0;}
\ No newline at end of file
+html{background:#f9f9f9;}body{background:#fff;color:#333;font-family:sans-serif;margin:2em auto;padding:1em 2em;-webkit-border-radius:3px;border-radius:3px;border:1px solid #dfdfdf;max-width:700px;}a{color:#21759B;text-decoration:none;}a:hover{color:#D54E21;}h1{border-bottom:1px solid #dadada;clear:both;color:#666;font:24px Georgia,"Times New Roman",Times,serif;margin:30px 0 0 0;padding:0;padding-bottom:7px;}h2{font-size:16px;}p,li,dd,dt{padding-bottom:2px;font-size:14px;line-height:1.5;}code,.code{font-size:14px;}ul,ol,dl{padding:5px 5px 5px 22px;}a img{border:0;}abbr{border:0;font-variant:normal;}#logo{margin:6px 0 14px 0;border-bottom:none;text-align:center;}.step{margin:20px 0 15px;}.step,th{text-align:left;padding:0;}.submit input,.button,.button-secondary{font-family:sans-serif;text-decoration:none;font-size:14px!important;line-height:16px;padding:6px 12px;cursor:pointer;border:1px solid #bbb;color:#464646;-webkit-border-radius:15px;border-radius:15px;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box;}.button:hover,.button-secondary:hover,.submit input:hover{color:#000;border-color:#666;}.button,.submit input,.button-secondary{background:#f2f2f2 url(../images/white-grad.png) repeat-x scroll left top;}.button:active,.submit input:active,.button-secondary:active{background:#eee url(../images/white-grad-active.png) repeat-x scroll left top;}textarea{border:1px solid #dfdfdf;-webkit-border-radius:3px;border-radius:3px;font-family:sans-serif;width:695px;}.form-table{border-collapse:collapse;margin-top:1em;width:100%;}.form-table td{margin-bottom:9px;padding:10px 20px 10px 0;border-bottom:8px solid #fff;font-size:14px;vertical-align:top;}.form-table th{font-size:14px;text-align:left;padding:16px 20px 10px 0;border-bottom:8px solid #fff;width:140px;vertical-align:top;}.form-table code{line-height:18px;font-size:14px;}.form-table p{margin:4px 0 0 0;font-size:11px;}.form-table input{line-height:20px;font-size:15px;padding:2px;border:1px #DFDFDF solid;-webkit-border-radius:3px;border-radius:3px;font-family:sans-serif;}.form-table input[type=text],.form-table input[type=password]{width:206px;}.form-table th p{font-weight:normal;}.form-table.install-success td{vertical-align:middle;padding:16px 20px 10px 0;}.form-table.install-success td p{margin:0;font-size:14px;}.form-table.install-success td code{margin:0;font-size:18px;}#error-page{margin-top:50px;}#error-page p{font-size:14px;line-height:18px;margin:25px 0 20px;}#error-page code,.code{font-family:Consolas,Monaco,monospace;}#pass-strength-result{background-color:#eee;border-color:#ddd!important;border-style:solid;border-width:1px;margin:5px 5px 5px 0;padding:5px;text-align:center;width:200px;display:none;}#pass-strength-result.bad{background-color:#ffb78c;border-color:#ff853c!important;}#pass-strength-result.good{background-color:#ffec8b;border-color:#fc0!important;}#pass-strength-result.short{background-color:#ffa0a0;border-color:#f04040!important;}#pass-strength-result.strong{background-color:#c3ff88;border-color:#8dff1c!important;}.message{border:1px solid #e6db55;padding:.3em .6em;margin:5px 0 15px;background-color:#ffffe0;}body.rtl{font-family:Tahoma,arial;}.rtl h1{font-family:arial;margin:5px -4px 0 0;}.rtl ul,.rtl ol{padding:5px 22px 5px 5px;}.rtl .step,.rtl th,.rtl .form-table th{text-align:right;}.rtl .submit input,.rtl .button,.rtl .button-secondary{margin-right:0;}.rtl #user_login,.rtl #admin_email,.rtl #pass1,.rtl #pass2{direction:ltr;}
\ No newline at end of file
index d1a389f10dc2231bb847fae742f615c6e0d1625a..04ff488b06bd5d4adcb0b5ad3a46edc267a72c94 100644 (file)
@@ -7,22 +7,20 @@ body {
        color: #333;
        font-family: sans-serif;
        margin: 2em auto;
        color: #333;
        font-family: sans-serif;
        margin: 2em auto;
-       width: 700px;
        padding: 1em 2em;
        padding: 1em 2em;
-       -moz-border-radius: 11px;
-       -khtml-border-radius: 11px;
-       -webkit-border-radius: 11px;
-       border-radius: 11px;
+       -webkit-border-radius: 3px;
+       border-radius: 3px;
        border: 1px solid #dfdfdf;
        border: 1px solid #dfdfdf;
+       max-width: 700px;
 }
 
 a {
 }
 
 a {
-       color: #2583ad;
+       color: #21759B;
        text-decoration: none;
 }
 
 a:hover {
        text-decoration: none;
 }
 
 a:hover {
-       color: #d54e21;
+       color: #D54E21;
 }
 
 h1 {
 }
 
 h1 {
@@ -30,7 +28,7 @@ h1 {
        clear: both;
        color: #666;
        font: 24px Georgia, "Times New Roman", Times, serif;
        clear: both;
        color: #666;
        font: 24px Georgia, "Times New Roman", Times, serif;
-       margin: 5px 0 0 -4px;
+       margin: 30px 0 0 0;
        padding: 0;
        padding-bottom: 7px;
 }
        padding: 0;
        padding-bottom: 7px;
 }
@@ -41,12 +39,12 @@ h2 {
 
 p, li, dd, dt {
        padding-bottom: 2px;
 
 p, li, dd, dt {
        padding-bottom: 2px;
-       font-size: 12px;
-       line-height: 18px;
+       font-size: 14px;
+       line-height: 1.5;
 }
 
 code, .code {
 }
 
 code, .code {
-       font-size: 13px;
+       font-size: 14px;
 }
 
 ul, ol, dl {
 }
 
 ul, ol, dl {
@@ -82,13 +80,10 @@ abbr {
        cursor: pointer;
        border: 1px solid #bbb;
        color: #464646;
        cursor: pointer;
        border: 1px solid #bbb;
        color: #464646;
-       -moz-border-radius: 15px;
-       -khtml-border-radius: 15px;
        -webkit-border-radius: 15px;
        border-radius: 15px;
        -moz-box-sizing: content-box;
        -webkit-box-sizing: content-box;
        -webkit-border-radius: 15px;
        border-radius: 15px;
        -moz-box-sizing: content-box;
        -webkit-box-sizing: content-box;
-       -khtml-box-sizing: content-box;
        box-sizing: content-box;
 }
 
        box-sizing: content-box;
 }
 
@@ -106,11 +101,11 @@ abbr {
 }
 
 textarea {
 }
 
 textarea {
-       border: 1px solid #bbb;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
+       border: 1px solid #dfdfdf;
        -webkit-border-radius: 3px;
        border-radius: 3px;
        -webkit-border-radius: 3px;
        border-radius: 3px;
+       font-family: sans-serif;
+       width:  695px;
 }
 
 .form-table {
 }
 
 .form-table {
@@ -121,27 +116,24 @@ textarea {
 
 .form-table td {
        margin-bottom: 9px;
 
 .form-table td {
        margin-bottom: 9px;
-       padding: 10px;
+       padding: 10px 20px 10px 0;
        border-bottom: 8px solid #fff;
        border-bottom: 8px solid #fff;
-       font-size: 12px;
+       font-size: 14px;
+       vertical-align: top
 }
 
 .form-table th {
 }
 
 .form-table th {
-       font-size: 13px;
+       font-size: 14px;
        text-align: left;
        text-align: left;
-       padding: 16px 10px 10px 10px;
+       padding: 16px 20px 10px 0;
        border-bottom: 8px solid #fff;
        border-bottom: 8px solid #fff;
-       width: 130px;
+       width: 140px;
        vertical-align: top;
 }
 
        vertical-align: top;
 }
 
-.form-table tr {
-       background: #f3f3f3;
-}
-
 .form-table code {
        line-height: 18px;
 .form-table code {
        line-height: 18px;
-       font-size: 18px;
+       font-size: 14px;
 }
 
 .form-table p {
 }
 
 .form-table p {
@@ -153,18 +145,42 @@ textarea {
        line-height: 20px;
        font-size: 15px;
        padding: 2px;
        line-height: 20px;
        font-size: 15px;
        padding: 2px;
+       border: 1px #DFDFDF solid;
+       -webkit-border-radius: 3px;
+       border-radius: 3px;
+       font-family: sans-serif;
+}
+
+.form-table input[type=text],
+.form-table input[type=password] {
+       width: 206px;
 }
 
 .form-table th p {
        font-weight: normal;
 }
 
 }
 
 .form-table th p {
        font-weight: normal;
 }
 
+.form-table.install-success td {
+       vertical-align: middle;
+       padding: 16px 20px 10px 0;
+}
+
+.form-table.install-success td p {
+       margin: 0;
+       font-size: 14px;
+}
+
+.form-table.install-success td code {
+       margin: 0;
+       font-size: 18px;
+}
+
 #error-page {
        margin-top: 50px;
 }
 
 #error-page p {
 #error-page {
        margin-top: 50px;
 }
 
 #error-page p {
-       font-size: 12px;
+       font-size: 14px;
        line-height: 18px;
        margin: 25px 0 20px;
 }
        line-height: 18px;
        margin: 25px 0 20px;
 }
@@ -178,7 +194,7 @@ textarea {
        border-color: #ddd !important;
        border-style: solid;
        border-width: 1px;
        border-color: #ddd !important;
        border-style: solid;
        border-width: 1px;
-       margin: 5px 5px 5px 1px;
+       margin: 5px 5px 5px 0;
        padding: 5px;
        text-align: center;
        width: 200px;
        padding: 5px;
        text-align: center;
        width: 200px;
@@ -211,3 +227,39 @@ textarea {
        margin: 5px 0 15px;
        background-color: #ffffe0;
 }
        margin: 5px 0 15px;
        background-color: #ffffe0;
 }
+
+
+/* install-rtl */
+body.rtl {
+       font-family: Tahoma, arial;
+}
+
+.rtl h1 {
+       font-family: arial;
+       margin: 5px -4px 0 0;
+}
+
+.rtl ul,
+.rtl  ol {
+       padding: 5px 22px 5px 5px;
+}
+
+.rtl .step,
+.rtl th,
+.rtl .form-table th {
+       text-align: right;
+}
+
+.rtl .submit input,
+.rtl .button,
+.rtl .button-secondary {
+       margin-right: 0;
+}
+
+.rtl #user_login,
+.rtl #admin_email,
+.rtl #pass1,
+.rtl #pass2 {
+       direction: ltr;
+}
+
diff --git a/wp-admin/css/login-rtl.css b/wp-admin/css/login-rtl.css
deleted file mode 100644 (file)
index 11040fa..0000000
+++ /dev/null
@@ -1 +0,0 @@
-body{font-family:Tahoma,arial;}form{margin-right:8px;margin-left:0;}form .forgetmenot{float:right;}#login form .submit input{font-family:Tahoma,arial;}form .submit{float:left;}#backtoblog a{padding:8px 15px 0 0;}#login_error,.message{margin:0 8px 16px 0;}#nav{margin:0 8px 0 0;}#user_pass,#user_login,#user_email{margin-left:6px;margin-right:0;direction:ltr;}h1 a{text-decoration:none;}
\ No newline at end of file
diff --git a/wp-admin/css/login-rtl.dev.css b/wp-admin/css/login-rtl.dev.css
deleted file mode 100644 (file)
index 954b320..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-body {
-       font-family: Tahoma, arial;
-}
-form {
-       margin-right: 8px;
-       margin-left: 0;
-}
-form .forgetmenot {
-       float: right;
-}
-#login form .submit input {
-       font-family: Tahoma, arial;
-}
-form .submit { float: left; }
-#backtoblog a {
-       padding: 8px 15px 0 0;
-}
-#login_error, .message {
-       margin: 0 8px 16px 0;
-}
-#nav { margin: 0 8px 0 0; }
-#user_pass, #user_login, #user_email {
-       margin-left: 6px;
-       margin-right: 0;
-       direction:ltr;
-}
-h1 a {
-       text-decoration: none;
-}
diff --git a/wp-admin/css/login.css b/wp-admin/css/login.css
deleted file mode 100644 (file)
index d0e6f3d..0000000
+++ /dev/null
@@ -1 +0,0 @@
-*{margin:0;padding:0;}html{background:#fbfbfb!important;}body{padding-top:30px;font-family:sans-serif;font-size:12px;}form{margin-left:8px;padding:26px 24px 46px;font-weight:normal;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#fff;border:1px solid #e5e5e5;-moz-box-shadow:rgba(200,200,200,0.7) 0 4px 10px -1px;-webkit-box-shadow:rgba(200,200,200,0.7) 0 4px 10px -1px;-khtml-box-shadow:rgba(200,200,200,0.7) 0 4px 10px -1px;box-shadow:rgba(200,200,200,0.7) 0 4px 10px -1px;}form .forgetmenot{font-weight:normal;float:left;margin-bottom:0;}.button-primary{font-family:sans-serif;padding:3px 10px;border:none;font-size:13px;border-width:1px;border-style:solid;-moz-border-radius:11px;-khtml-border-radius:11px;-webkit-border-radius:11px;border-radius:11px;cursor:pointer;text-decoration:none;margin-top:-3px;}#login form p{margin-bottom:0;}label{color:#777;font-size:14px;}form .forgetmenot label{font-size:12px;line-height:19px;}form .submit,.alignright{float:right;}form p{margin-bottom:24px;}h1 a{background:url(../images/logo-login.png) no-repeat top center;width:326px;height:67px;text-indent:-9999px;overflow:hidden;padding-bottom:15px;display:block;}#login{width:320px;margin:7em auto;}#login_error,.message{margin:0 0 16px 8px;border-width:1px;border-style:solid;padding:12px;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;}#nav,#backtoblog{text-shadow:rgba(255,255,255,1) 0 1px 0;margin:0 0 0 16px;padding:16px 16px 0;}#backtoblog{padding:12px 16px 0;}body form .input{font-family:"HelveticaNeue-Light","Helvetica Neue Light","Helvetica Neue",sans-serif;font-weight:200;font-size:24px;width:97%;padding:3px;margin-top:2px;margin-right:6px;margin-bottom:16px;border:1px solid #e5e5e5;background:#fbfbfb;outline:none;-moz-box-shadow:inset 1px 1px 2px rgba(200,200,200,0.2);-webkit-box-shadow:inset 1px 1px 2px rgba(200,200,200,0.2);box-shadow:inset 1px 1px 2px rgba(200,200,200,0.2);}input{color:#555;}.clear{clear:both;}#pass-strength-result{font-weight:bold;border-style:solid;border-width:1px;margin:12px 0 6px;padding:6px 5px;text-align:center;}
\ No newline at end of file
diff --git a/wp-admin/css/login.dev.css b/wp-admin/css/login.dev.css
deleted file mode 100644 (file)
index 3dc5b79..0000000
+++ /dev/null
@@ -1,144 +0,0 @@
-* { margin: 0; padding: 0; }
-
-html {
-       background: #fbfbfb !important;
-}
-
-body {
-       padding-top: 30px;
-       font-family: sans-serif;
-       font-size: 12px;
-}
-
-form {
-       margin-left: 8px;
-       padding: 26px 24px 46px;
-       font-weight: normal;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;
-       background: #fff;
-       border: 1px solid #e5e5e5;
-       -moz-box-shadow: rgba(200, 200, 200, 0.7) 0px 4px 10px -1px;
-       -webkit-box-shadow: rgba(200, 200, 200, 0.7) 0px 4px 10px -1px;
-       -khtml-box-shadow: rgba(200, 200, 200, 0.7) 0px 4px 10px -1px;
-       box-shadow: rgba(200, 200, 200, 0.7) 0px 4px 10px -1px;
-}
-
-form .forgetmenot {
-       font-weight: normal;
-       float: left;
-       margin-bottom: 0;
-}
-
-.button-primary {
-       font-family: sans-serif;
-       padding: 3px 10px;
-       border: none;
-       font-size: 13px;
-       border-width: 1px;
-       border-style: solid;
-       -moz-border-radius: 11px;
-       -khtml-border-radius: 11px;
-       -webkit-border-radius: 11px;
-       border-radius: 11px;
-       cursor: pointer;
-       text-decoration: none;
-       margin-top: -3px;
-}
-
-#login form p {
-       margin-bottom: 0;
-}
-
-label {
-       color: #777;
-       font-size: 14px;
-}
-
-form .forgetmenot label {
-       font-size: 12px;
-       line-height: 19px;
-}
-
-form .submit,
-.alignright {
-       float: right;
-}
-
-form p {
-       margin-bottom: 24px;
-}
-
-h1 a {
-       background: url(../images/logo-login.png) no-repeat top center;
-       width: 326px;
-       height: 67px;
-       text-indent: -9999px;
-       overflow: hidden;
-       padding-bottom: 15px;
-       display: block;
-}
-
-#login {
-       width: 320px;
-       margin: 7em auto;
-}
-
-#login_error,
-.message {
-       margin: 0 0 16px 8px;
-       border-width: 1px;
-       border-style: solid;
-       padding: 12px;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;
-}
-
-#nav,
-#backtoblog {
-       text-shadow: rgba(255,255,255,1) 0 1px 0;
-       margin: 0 0 0 16px;
-       padding: 16px 16px 0;
-}
-#backtoblog {
-       padding: 12px 16px 0;
-}
-
-body form .input {
-       font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", sans-serif;
-       font-weight: 200;
-       font-size: 24px;
-       width: 97%;
-       padding: 3px;
-       margin-top: 2px;
-       margin-right: 6px;
-       margin-bottom: 16px;
-       border: 1px solid #e5e5e5;
-       background: #fbfbfb;
-       outline: none;
-       -moz-box-shadow: inset 1px 1px 2px rgba(200, 200, 200, 0.2);
-       -webkit-box-shadow: inset 1px 1px 2px rgba(200, 200, 200, 0.2);
-       box-shadow: inset 1px 1px 2px rgba(200, 200, 200, 0.2);
-}
-
-input {
-       color: #555;
-}
-
-.clear {
-       clear: both;
-}
-
-#pass-strength-result {
-       font-weight: bold;
-       border-style: solid;
-       border-width: 1px;
-       margin: 12px 0 6px;
-       padding: 6px 5px;
-       text-align: center;
-}
-
index 19d73663bde334789fe9bf55c41f88718f3568f3..d5f7ef555a225b1005945c9fb1746b6a7f626d65 100644 (file)
@@ -1 +1 @@
-body#media-upload ul#sidemenu{left:auto;right:0;}#search-filter{text-align:left;}.align .field label{padding:0 28px 0 0;margin:0 0 0 1em;}.image-align-none-label,.image-align-left-label,.image-align-center-label,.image-align-right-label{background-position:center right;}tr.image-size div.image-size-item{float:right;}tr.image-size label{margin:0 1em 0 0;}.crunching{text-align:left;margin-right:0;margin-left:5px;}button.dismiss{right:auto;left:5px;}.file-error{margin:0 50px 5px 0;}.progress{left:auto;right:0;}.describe td{padding:0 0 0 5px;}.bar{border-right-width:0;border-left-width:3px;border-right-style:none;border-left-style:solid;}#media-upload .media-upload-form p{margin:0 0 1em 1em;}#media-upload .describe th.label{text-align:right;}.menu_order{float:left;}.media-upload-form label.form-help,td.help,#media-upload p.help,#media-upload label.help{font-family:Tahoma,Arial;}#gallery-settings #basic th.label{padding:5px 0 5px 5px;}#gallery-settings .title,h3.media-title{font-family:Tahoma,Arial;}#gallery-settings .describe th.label{text-align:right;}#gallery-settings label,#gallery-settings legend{margin-right:0;margin-left:15px;}#gallery-settings .align .field label{margin:0 0 0 1.5em;}#sort-buttons{margin:3px 0 -8px 25px;text-align:left;}#sort-buttons #asc,#sort-buttons #showall{padding-left:0;padding-right:5px;}#sort-buttons span{margin-right:0;margin-left:25px;}
\ No newline at end of file
+body#media-upload ul#sidemenu{left:auto;right:0;}#search-filter{text-align:left;}.align .field label{padding:0 23px 0 0;margin:0 3px 0 1em;}.image-align-none-label,.image-align-left-label,.image-align-center-label,.image-align-right-label{background-position:center right;}tr.image-size label{margin:0 5px 0 0;}.file-error{margin:0 50px 5px 0;}.progress{left:auto;right:0;}.describe td{padding:0 0 0 5px;}#media-upload .describe th.label{text-align:right;}.menu_order{float:left;}.media-upload-form label.form-help,td.help,#media-upload p.help,#media-upload label.help{font-family:Tahoma,Arial;}#gallery-settings #basic th.label{padding:5px 0 5px 5px;}#gallery-settings .title,h3.media-title{font-family:Tahoma,Arial;}#gallery-settings .describe th.label{text-align:right;}#gallery-settings label,#gallery-settings legend{margin-right:0;margin-left:15px;}#gallery-settings .align .field label{margin:0 3px 0 1em;}#sort-buttons{margin:3px 0 -8px 25px;text-align:left;}#sort-buttons #asc,#sort-buttons #showall{padding-left:0;padding-right:5px;}#sort-buttons span{margin-right:0;margin-left:25px;}
\ No newline at end of file
index efa1e2e3d55fa8136d099e3a0303c4a2842782b0..0c3ccb3cac8a5d8b0a84c431062f3885931e26cb 100644 (file)
@@ -7,26 +7,14 @@ body#media-upload ul#sidemenu {
 }
 /* specific to the image upload form */
 .align .field label {
 }
 /* specific to the image upload form */
 .align .field label {
-       padding: 0 28px 0 0;
-       margin: 0 0 0 1em;
+       padding: 0 23px 0 0;
+       margin: 0 3px 0 1em;
 }
 .image-align-none-label, .image-align-left-label, .image-align-center-label, .image-align-right-label {
        background-position: center right;
 }
 }
 .image-align-none-label, .image-align-left-label, .image-align-center-label, .image-align-right-label {
        background-position: center right;
 }
-tr.image-size div.image-size-item {
-       float: right;
-}
 tr.image-size label {
 tr.image-size label {
-       margin: 0 1em 0 0;
-}
-.crunching {
-       text-align: left;
-       margin-right: 0;
-       margin-left: 5px;
-}
-button.dismiss {
-       right: auto;
-       left: 5px;
+       margin: 0 5px 0 0;
 }
 .file-error {
        margin: 0 50px 5px 0;
 }
 .file-error {
        margin: 0 50px 5px 0;
@@ -38,17 +26,8 @@ button.dismiss {
 .describe td {
        padding: 0 0 0 5px;
 }
 .describe td {
        padding: 0 0 0 5px;
 }
-.bar {
-       border-right-width: 0;
-       border-left-width: 3px;
-       border-right-style: none;
-       border-left-style: solid;
-}
 
 /* Specific to Uploader */
 
 /* Specific to Uploader */
-#media-upload .media-upload-form p {
-       margin: 0 0 1em 1em;
-}
 #media-upload .describe th.label {
        text-align: right;
 }
 #media-upload .describe th.label {
        text-align: right;
 }
@@ -73,7 +52,7 @@ button.dismiss {
        margin-left: 15px;
 }
 #gallery-settings .align .field label {
        margin-left: 15px;
 }
 #gallery-settings .align .field label {
-       margin: 0 0 0 1.5em;
+       margin: 0 3px 0 1em;
 }
 #sort-buttons {
        margin: 3px 0 -8px 25px;
 }
 #sort-buttons {
        margin: 3px 0 -8px 25px;
index 157ecdf6692bcab07ae283b137b678052bac9c16..88b5f031893627f14d572053bb40b657cc7bf954 100644 (file)
@@ -1 +1 @@
-div#media-upload-header{margin:0;padding:0 5px;font-weight:bold;position:relative;border-bottom-width:1px;border-bottom-style:solid;}body#media-upload ul#sidemenu{font-weight:normal;margin:0 5px;left:0;bottom:-1px;float:none;overflow:hidden;}div#media-upload-error{margin:1em;font-weight:bold;}form{margin:1em;}#search-filter{text-align:right;}th{position:relative;}.media-upload-form label.form-help,td.help{font-family:sans-serif;font-style:italic;font-weight:normal;}.media-upload-form p.help{margin:0;padding:0;}.media-upload-form fieldset{width:100%;border:none;text-align:justify;margin:0 0 1em 0;padding:0;}.image-align-none-label{background:url(../images/align-none.png) no-repeat center left;}.image-align-left-label{background:url(../images/align-left.png) no-repeat center left;}.image-align-center-label{background:url(../images/align-center.png) no-repeat center left;}.image-align-right-label{background:url(../images/align-right.png) no-repeat center left;}tr.image-size td{width:460px;}tr.image-size div.image-size-item{float:left;width:25%;margin:0;}#library-form .progress,#gallery-form .progress,.insert-gallery,.describe.startopen,.describe.startclosed{display:none;}.media-item .thumbnail{max-width:128px;max-height:128px;}thead.media-item-info tr{background-color:transparent;}thead.media-item-info th,thead.media-item-info td{border:none;margin:0;}.form-table thead.media-item-info{border:8px solid #fff;}abbr.required{text-decoration:none;border:none;}.describe label{display:inline;}.describe td{vertical-align:middle;padding:0 5px 8px 0;}.describe td.error{padding:2px 8px;}.describe td.A1{width:132px;}.describe input[type="text"],.describe textarea{width:460px;border-width:1px;border-style:solid;}.hidden{height:0;width:0;overflow:hidden;border:none;}#media-upload p.ml-submit{padding:1em 0;}#media-upload p.help,#media-upload label.help{font-family:sans-serif;font-style:italic;font-weight:normal;}#media-upload tr.image-size td.field{text-align:center;}#media-upload #media-items{border-width:1px;border-style:solid;border-bottom:none;width:623px;}#media-upload .media-item{border-bottom-width:1px;border-bottom-style:solid;min-height:36px;width:100%;}#media-upload .ui-sortable .media-item{cursor:move;}.filename{line-height:36px;padding:0 10px;overflow:hidden;}#media-upload .describe{width:100%;clear:both;cursor:default;}#media-upload .slidetoggle{border-top-width:1px;border-top-style:solid;}#media-upload .describe th.label{padding-top:.2em;text-align:left;min-width:120px;}#media-upload tr.align td.field{text-align:center;}#media-upload tr.image-size{margin-bottom:1em;height:3em;}#media-upload #filter{width:623px;}#media-upload #filter .subsubsub{margin:8px 0;}#filter .tablenav select{border-style:solid;border-width:1px;padding:2px;vertical-align:top;width:auto;}#media-upload .del-attachment{display:none;margin:5px 0;}.menu_order{float:right;font-size:11px;margin:10px 10px 0;}.menu_order_input{border:1px solid #ddd;font-size:10px;padding:1px;width:23px;}.ui-sortable-helper{background-color:#fff;border:1px solid #aaa;opacity:.6;filter:alpha(opacity=60);}#media-upload th.order-head{width:20%;text-align:center;}#media-upload th.actions-head{width:25%;text-align:center;}#media-upload a.wp-post-thumbnail{margin:0 20px;}#media-items a.delete{display:block;float:right;}#media-upload .widefat{width:626px;border-style:solid solid none;}.sorthelper{height:37px;width:623px;display:block;}#gallery-settings th.label{width:160px;}#gallery-settings #basic th.label{padding:5px 5px 5px 0;}#gallery-settings .title{clear:both;padding:0 0 3px;font-size:1.6em;border-bottom:1px solid #DADADA;}h3.media-title{font-size:1.6em;}h4.media-sub-title{border-bottom:1px solid #DADADA;font-size:1.3em;margin:12px;padding:0 0 3px;}#gallery-settings .title,h3.media-title,h4.media-sub-title{font-family:Georgia,"Times New Roman",Times,serif;font-weight:normal;color:#5A5A5A;}#gallery-settings .describe td{vertical-align:middle;height:3em;}#gallery-settings .describe th.label{padding-top:.5em;text-align:left;}#gallery-settings .describe{padding:5px;width:615px;clear:both;cursor:default;}#gallery-settings .describe select{width:15em;}#gallery-settings .describe select option,#gallery-settings .describe td{padding:0;}#gallery-settings label,#gallery-settings legend{font-size:13px;color:#464646;margin-right:15px;}#gallery-settings .align .field label{margin:0 1.5em 0 0;}#gallery-settings p.ml-submit{border-top:1px solid #dfdfdf;}#gallery-settings select#columns{width:6em;}#sort-buttons{font-size:.8em;margin:3px 25px -8px 0;text-align:right;max-width:625px;}#sort-buttons a{text-decoration:none;}#sort-buttons #asc,#sort-buttons #showall{padding-left:5px;}#sort-buttons span{margin-right:25px;}
\ No newline at end of file
+div#media-upload-header{margin:0;padding:5px 5px 0;font-weight:bold;position:relative;border-bottom-width:1px;border-bottom-style:solid;}body#media-upload ul#sidemenu{font-weight:normal;margin:0 5px;left:0;bottom:-1px;float:none;overflow:hidden;}form{margin:1em;}#search-filter{text-align:right;}th{position:relative;}.media-upload-form label.form-help,td.help{font-family:sans-serif;font-style:italic;font-weight:normal;}.media-upload-form p.help{margin:0;padding:0;}.media-upload-form fieldset{width:100%;border:none;text-align:justify;margin:0 0 1em 0;padding:0;}.image-align-none-label{background:url(../images/align-none.png) no-repeat center left;}.image-align-left-label{background:url(../images/align-left.png) no-repeat center left;}.image-align-center-label{background:url(../images/align-center.png) no-repeat center left;}.image-align-right-label{background:url(../images/align-right.png) no-repeat center left;}tr.image-size td{width:460px;}tr.image-size div.image-size-item{margin:0 0 5px;}#library-form .progress,#gallery-form .progress,.insert-gallery,.describe.startopen,.describe.startclosed{display:none;}.media-item .thumbnail{max-width:128px;max-height:128px;}thead.media-item-info tr{background-color:transparent;}.form-table thead.media-item-info{border:8px solid #fff;}abbr.required{text-decoration:none;border:none;}.describe label{display:inline;}.describe td.error{padding:2px 8px;}.describe td.A1{width:132px;}.describe input[type="text"],.describe textarea{width:460px;border-width:1px;border-style:solid;}#media-upload p.ml-submit{padding:1em 0;}#media-upload p.help,#media-upload label.help{font-family:sans-serif;font-style:italic;font-weight:normal;}#media-upload .ui-sortable .media-item{cursor:move;}#media-upload tr.image-size{margin-bottom:1em;height:3em;}#media-upload #filter{width:623px;}#media-upload #filter .subsubsub{margin:8px 0;}#filter .tablenav select{border-style:solid;border-width:1px;padding:2px;vertical-align:top;width:auto;}#media-upload .del-attachment{display:none;margin:5px 0;}.menu_order{float:right;font-size:11px;margin:10px 10px 0;}.menu_order_input{border:1px solid #ddd;font-size:10px;padding:1px;width:23px;}.ui-sortable-helper{background-color:#fff;border:1px solid #aaa;opacity:.6;filter:alpha(opacity=60);}#media-upload th.order-head{width:20%;text-align:center;}#media-upload th.actions-head{width:25%;text-align:center;}#media-upload a.wp-post-thumbnail{margin:0 20px;}#media-items a.delete{display:block;float:right;}#media-upload .widefat{width:626px;border-style:solid solid none;}.sorthelper{height:37px;width:623px;display:block;}#gallery-settings th.label{width:160px;}#gallery-settings #basic th.label{padding:5px 5px 5px 0;}#gallery-settings .title{clear:both;padding:0 0 3px;font-size:1.6em;border-bottom:1px solid #DADADA;}h3.media-title{font-size:1.6em;}h4.media-sub-title{border-bottom:1px solid #DADADA;font-size:1.3em;margin:12px;padding:0 0 3px;}#gallery-settings .title,h3.media-title,h4.media-sub-title{font-family:Georgia,"Times New Roman",Times,serif;font-weight:normal;color:#5A5A5A;}#gallery-settings .describe td{vertical-align:middle;height:3em;}#gallery-settings .describe th.label{padding-top:.5em;text-align:left;}#gallery-settings .describe{padding:5px;width:615px;clear:both;cursor:default;}#gallery-settings .describe select{width:15em;}#gallery-settings .describe select option,#gallery-settings .describe td{padding:0;}#gallery-settings label,#gallery-settings legend{font-size:13px;color:#464646;margin-right:15px;}#gallery-settings .align .field label{margin:0 1em 0 3px;}#gallery-settings p.ml-submit{border-top:1px solid #dfdfdf;}#gallery-settings select#columns{width:6em;}#sort-buttons{font-size:.8em;margin:3px 25px -8px 0;text-align:right;max-width:625px;}#sort-buttons a{text-decoration:none;}#sort-buttons #asc,#sort-buttons #showall{padding-left:5px;}#sort-buttons span{margin-right:25px;}p.media-types{margin:1em;}tr.not-image{display:none;}table.not-image tr.not-image{display:table-row;}table.not-image tr.image-only{display:none;}
\ No newline at end of file
index f439f49a12f15011f6d6b88b98200006dd7af7f7..38361bb4c02e628f387aa1546d4662061800de98 100644 (file)
@@ -1,6 +1,8 @@
+/* Styles for the media library iframe (not used on the Library screen) */
+
 div#media-upload-header {
        margin: 0;
 div#media-upload-header {
        margin: 0;
-       padding: 0 5px;
+       padding: 5px 5px 0;
        font-weight: bold;
        position: relative;
        border-bottom-width: 1px;
        font-weight: bold;
        position: relative;
        border-bottom-width: 1px;
@@ -16,11 +18,6 @@ body#media-upload ul#sidemenu {
        overflow: hidden;
 }
 
        overflow: hidden;
 }
 
-div#media-upload-error {
-       margin: 1em;
-       font-weight: bold;
-}
-
 form {
        margin: 1em;
 }
 form {
        margin: 1em;
 }
@@ -76,9 +73,7 @@ tr.image-size td {
 }
 
 tr.image-size div.image-size-item {
 }
 
 tr.image-size div.image-size-item {
-       float: left;
-       width: 25%;
-       margin: 0;
+       margin: 0 0 5px;
 }
 
 #library-form .progress,
 }
 
 #library-form .progress,
@@ -98,12 +93,6 @@ thead.media-item-info tr {
        background-color: transparent;
 }
 
        background-color: transparent;
 }
 
-thead.media-item-info th,
-thead.media-item-info td {
-       border: none;
-       margin: 0;
-}
-
 .form-table thead.media-item-info {
        border: 8px solid #fff;
 }
 .form-table thead.media-item-info {
        border: 8px solid #fff;
 }
@@ -117,11 +106,6 @@ abbr.required {
        display: inline;
 }
 
        display: inline;
 }
 
-.describe td {
-       vertical-align: middle;
-       padding: 0 5px 8px 0;
-}
-
 .describe td.error {
        padding: 2px 8px;
 }
 .describe td.error {
        padding: 2px 8px;
 }
@@ -137,13 +121,6 @@ abbr.required {
        border-style: solid;
 }
 
        border-style: solid;
 }
 
-.hidden {
-       height: 0;
-       width: 0;
-       overflow: hidden;
-       border: none;
-}
-
 /* Specific to Uploader */
 
 #media-upload p.ml-submit {
 /* Specific to Uploader */
 
 #media-upload p.ml-submit {
@@ -157,55 +134,10 @@ abbr.required {
        font-weight: normal;
 }
 
        font-weight: normal;
 }
 
-#media-upload tr.image-size td.field {
-       text-align: center;
-}
-
-#media-upload #media-items {
-       border-width: 1px;
-       border-style: solid;
-       border-bottom: none;
-       width: 623px;
-}
-
-#media-upload .media-item {
-       border-bottom-width: 1px;
-       border-bottom-style: solid;
-       min-height: 36px;
-       width: 100%;
-}
-
 #media-upload .ui-sortable .media-item {
        cursor: move;
 }
 
 #media-upload .ui-sortable .media-item {
        cursor: move;
 }
 
-.filename {
-       line-height: 36px;
-       padding: 0 10px;
-       overflow: hidden;
-}
-
-#media-upload .describe {
-       width: 100%;
-       clear: both;
-       cursor: default;
-}
-
-#media-upload .slidetoggle {
-       border-top-width: 1px;
-       border-top-style: solid;
-}
-
-#media-upload .describe th.label {
-       padding-top: .2em;
-       text-align: left;
-       min-width: 120px;
-}
-
-#media-upload tr.align td.field {
-       text-align: center;
-}
-
 #media-upload tr.image-size {
        margin-bottom: 1em;
        height: 3em;
 #media-upload tr.image-size {
        margin-bottom: 1em;
        height: 3em;
@@ -350,7 +282,7 @@ h4.media-sub-title {
 }
 
 #gallery-settings .align .field label {
 }
 
 #gallery-settings .align .field label {
-       margin: 0 1.5em 0 0;
+       margin: 0 1em 0 3px;
 }
 
 #gallery-settings p.ml-submit {
 }
 
 #gallery-settings p.ml-submit {
@@ -380,3 +312,19 @@ h4.media-sub-title {
 #sort-buttons span {
        margin-right: 25px;
 }
 #sort-buttons span {
        margin-right: 25px;
 }
+
+p.media-types {
+       margin: 1em;
+}
+
+tr.not-image {
+       display: none;
+}
+
+table.not-image tr.not-image {
+       display: table-row;
+}
+
+table.not-image tr.image-only {
+       display: none;
+}
diff --git a/wp-admin/css/ms.css b/wp-admin/css/ms.css
deleted file mode 100644 (file)
index 29d9d54..0000000
+++ /dev/null
@@ -1 +0,0 @@
-#dashboard_right_now p.musub{margin-top:12px;border-top:1px solid #ececec;padding-left:16px;position:static;}.rtl #dashboard_right_now p.musub{padding-left:0;padding-right:16px;}#dashboard_right_now td.b a.musublink{font-size:16px;}#dashboard_right_now div.musubtable{border-top:none;}#dashboard_right_now div.musubtable .t{white-space:normal;}.wp-list-table .site-deleted{background:#ff8573;}.wp-list-table .site-spammed{background:#faafaa;}.wp-list-table .site-archived{background:#ffebe8;}.wp-list-table .site-mature{background:#fecac2;}
\ No newline at end of file
diff --git a/wp-admin/css/ms.dev.css b/wp-admin/css/ms.dev.css
deleted file mode 100644 (file)
index 5a5e749..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-/* Dashboard: MS Specific Data */
-#dashboard_right_now p.musub {
-       margin-top: 12px;
-       border-top: 1px solid #ececec;
-       padding-left: 16px;
-       position: static;
-}
-
-.rtl #dashboard_right_now p.musub {
-       padding-left: 0;
-       padding-right: 16px;
-}
-
-#dashboard_right_now td.b a.musublink {
-       font-size: 16px;
-}
-
-#dashboard_right_now div.musubtable {
-       border-top: none;
-}
-
-#dashboard_right_now div.musubtable .t {
-       white-space: normal;
-}
-
-/* Background Color for Site Status */
-.wp-list-table .site-deleted {
-       background: #ff8573;
-}
-.wp-list-table .site-spammed {
-       background: #faafaa;
-}
-.wp-list-table .site-archived {
-       background: #ffebe8;
-}
-.wp-list-table .site-mature {
-       background: #fecac2;
-}
diff --git a/wp-admin/css/nav-menu-rtl.css b/wp-admin/css/nav-menu-rtl.css
deleted file mode 100644 (file)
index 639f5e9..0000000
+++ /dev/null
@@ -1 +0,0 @@
-#nav-menus-frame{margin-right:300px;margin-left:0;}#wpbody-content #menu-settings-column{margin-right:-300px;margin-left:0;float:right;}#menu-management-liquid{float:right;}#menu-management{margin-left:20px;margin-right:0;}#post-body{padding:0 10px 10px 0;}.post-body-plain{padding:10px 0 0 10px;}#menu-management .nav-tabs-arrow-left{right:0;left:auto;}#menu-management .nav-tabs-arrow-right{left:0;right:auto;text-align:left;font-family:Tahoma,Arial,sans-serif;}#menu-management .nav-tabs{padding-right:20px;padding-left:10px;}.js #menu-management .nav-tabs{float:right;margin-right:0;margin-left:-400px;}#select-nav-menu-container{text-align:left;}#wpbody .open-label{float:right;}#wpbody .open-label span{padding-left:10px;padding-right:0;}.js .input-with-default-title{font-style:normal;font-weight:bold;}.postbox .howto input{float:left;}#nav-menu-theme-locations .button-controls{text-align:left;}.meta-sep,.submitdelete,.submitcancel{float:right;}#cancel-save{margin-left:0;margin-right:20px;}.list-controls{float:right;}.add-to-menu{float:left;}#add-custom-link label span{float:right;padding-left:5px;padding-right:0;}.howto span{float:right;}.list li .menu-item-title input{margin-left:3px;margin-right:0;}.menu-item-handle{padding-right:10px;padding-left:0;}.menu-item-edit-active .menu-item-handle{-moz-border-radius:3px 3px 0 0;-webkit-border-bottom-left-radius:0;-webkit-border-bottom-right-radius:0;-khtml-border-bottom-left-radius:0;-khtml-border-bottom-right-radius:0;border-bottom-left-radius:0;border-bottom-right-radius:0;}.menu-item-handle .item-title{margin-left:13em;margin-right:0;}.menu-item-depth-0{margin-right:0;margin-left:0;}.menu-item-depth-1{margin-right:30px;margin-left:0;}.menu-item-depth-2{margin-right:60px;margin-left:0;}.menu-item-depth-3{margin-right:90px;margin-left:0;}.menu-item-depth-4{margin-right:120px;margin-left:0;}.menu-item-depth-5{margin-right:150px;margin-left:0;}.menu-item-depth-6{margin-right:180px;margin-left:0;}.menu-item-depth-7{margin-right:210px;margin-left:0;}.menu-item-depth-8{margin-right:240px;margin-left:0;}.menu-item-depth-9{margin-right:270px;margin-left:0;}.menu-item-depth-10{margin-right:300px;margin-left:0;}.menu-item-depth-11{margin-right:330px;margin-left:0;}.menu-item-depth-0 .menu-item-transport{margin-right:0;margin-left:0;}.menu-item-depth-1 .menu-item-transport{margin-right:-30px;margin-left:0;}.menu-item-depth-2 .menu-item-transport{margin-right:-60px;margin-left:0;}.menu-item-depth-3 .menu-item-transport{margin-right:-90px;margin-left:0;}.menu-item-depth-4 .menu-item-transport{margin-right:-120px;margin-left:0;}.menu-item-depth-5 .menu-item-transport{margin-right:-150px;margin-left:0;}.menu-item-depth-6 .menu-item-transport{margin-right:-180px;margin-left:0;}.menu-item-depth-7 .menu-item-transport{margin-right:-210px;margin-left:0;}.menu-item-depth-8 .menu-item-transport{margin-right:-240px;margin-left:0;}.menu-item-depth-9 .menu-item-transport{margin-right:-270px;margin-left:0;}.menu-item-depth-10 .menu-item-transport{margin-right:-300px;margin-left:0;}.menu-item-depth-11 .menu-item-transport{margin-right:-330px;margin-left:0;}.item-type{padding-left:10px;padding-right:0;}.item-controls{left:20px;right:auto;}.item-controls .item-order{padding-left:10px;padding-right:0;}.item-edit{left:-20px;right:auto;-moz-border-radius-bottomright:3px;-moz-border-radius-bottomleft:0;-webkit-border-bottom-right-radius:3px;-webkit-border-bottom-left-radius:0;-khtml-border-bottom-right-radius:3px;-khtml-border-bottom-left-radius:0;border-bottom-right-radius:3px;border-bottom-left-radius:0;}.menu-item-settings{padding:10px 10px 10px 0;border-width:0 1px 1px 1px;}.link-to-original{font-style:normal;font-weight:bold;}.link-to-original a{padding-right:4px;padding-left:0;}.menu-item-settings .description-thin,.menu-item-settings .description-wide{margin-left:10px;margin-right:0;float:right;}.major-publishing-actions .publishing-action{text-align:left;float:left;}.major-publishing-actions .delete-action{text-align:right;float:right;padding-left:15px;padding-right:0;}.menu-name-label{margin-left:15px;margin-right:0;}.auto-add-pages{float:right;}
\ No newline at end of file
diff --git a/wp-admin/css/nav-menu-rtl.dev.css b/wp-admin/css/nav-menu-rtl.dev.css
deleted file mode 100644 (file)
index 69d8797..0000000
+++ /dev/null
@@ -1,210 +0,0 @@
-#nav-menus-frame {
-       margin-right: 300px;
-       margin-left: 0;
-}
-
-#wpbody-content #menu-settings-column {
-       margin-right: -300px;
-       margin-left: 0;
-       float: right;
-}
-
-/* Menu Container */
-#menu-management-liquid {
-       float: right;
-}
-#menu-management {
-       margin-left: 20px;
-       margin-right: 0;
-}
-
-
-       #post-body {
-               padding:0 10px 10px 0;
-       }
-
-       .post-body-plain {
-               padding: 10px 0 0 10px;
-       }
-
-/* Menu Tabs */
-
-       #menu-management .nav-tabs-arrow-left {
-               right: 0;
-               left:auto;
-       }
-       #menu-management .nav-tabs-arrow-right {
-               left: 0;
-               right:auto;
-               text-align: left;
-               font-family: Tahoma, Arial, sans-serif;
-       }
-
-#menu-management .nav-tabs {
-       padding-right: 20px;
-       padding-left: 10px;
-}
-.js #menu-management .nav-tabs {
-       float: right;
-       margin-right: 0px;
-       margin-left: -400px;
-}
-
-#select-nav-menu-container {
-       text-align: left;
-}
-
-#wpbody .open-label {
-       float:right;
-}
-
-#wpbody .open-label span {
-       padding-left: 10px;
-       padding-right:0;
-}
-
-       .js .input-with-default-title {
-               font-style: normal;
-               font-weight:bold;
-       }
-
-/* Add Menu Item Boxes */
-.postbox .howto input {
-       float: left;
-}
-#nav-menu-theme-locations .button-controls {
-       text-align: left;
-}
-
-/* Button Primary Actions */
-
-.meta-sep,
-.submitdelete,
-.submitcancel {
-       float:right;
-}
-
-#cancel-save {
-       margin-left: 0;
-       margin-right: 20px;
-}
-
-/* Button Secondary Actions */
-.list-controls {
-        float: right;
-}
-.add-to-menu {
-       float: left;
-}
-
-/* Custom Links */
-#add-custom-link label span { float: right; padding-left: 5px; padding-right:0;}
-.howto span { float: right; }
-
-.list li .menu-item-title input { margin-left: 3px; margin-right: 0 }
-
-/* Nav Menu */
-.menu-item-handle {
-       padding-right: 10px;
-       padding-left: 0;
-}
-.menu-item-edit-active .menu-item-handle {
-       -moz-border-radius: 3px 3px 0 0;
-       -webkit-border-bottom-left-radius: 0;
-       -webkit-border-bottom-right-radius: 0;
-       -khtml-border-bottom-left-radius: 0;
-       -khtml-border-bottom-right-radius: 0;
-       border-bottom-left-radius: 0;
-       border-bottom-right-radius: 0;
-}
-.menu-item-handle .item-title {
-       margin-left:13em;
-       margin-right:0;
-}
-
-
-/* WARNING: The factor of 30px is hardcoded into the nav-menus javascript. */
-.menu-item-depth-0 { margin-right: 0px; margin-left:0;}
-.menu-item-depth-1 { margin-right: 30px; margin-left:0;}
-.menu-item-depth-2 { margin-right: 60px; margin-left:0;}
-.menu-item-depth-3 { margin-right: 90px; margin-left:0;}
-.menu-item-depth-4 { margin-right: 120px; margin-left:0;}
-.menu-item-depth-5 { margin-right: 150px; margin-left:0;}
-.menu-item-depth-6 { margin-right: 180px; margin-left:0;}
-.menu-item-depth-7 { margin-right: 210px; margin-left:0;}
-.menu-item-depth-8 { margin-right: 240px; margin-left:0;}
-.menu-item-depth-9 { margin-right: 270px; margin-left:0;}
-.menu-item-depth-10 { margin-right: 300px; margin-left:0;}
-.menu-item-depth-11 { margin-right: 330px; margin-left:0;}
-
-.menu-item-depth-0 .menu-item-transport { margin-right: 0px; margin-left:0;}
-.menu-item-depth-1 .menu-item-transport { margin-right: -30px; margin-left:0;}
-.menu-item-depth-2 .menu-item-transport { margin-right: -60px; margin-left:0;}
-.menu-item-depth-3 .menu-item-transport { margin-right: -90px; margin-left:0;}
-.menu-item-depth-4 .menu-item-transport { margin-right: -120px; margin-left:0;}
-.menu-item-depth-5 .menu-item-transport { margin-right: -150px; margin-left:0;}
-.menu-item-depth-6 .menu-item-transport { margin-right: -180px; margin-left:0;}
-.menu-item-depth-7 .menu-item-transport { margin-right: -210px; margin-left:0;}
-.menu-item-depth-8 .menu-item-transport { margin-right: -240px; margin-left:0;}
-.menu-item-depth-9 .menu-item-transport { margin-right: -270px; margin-left:0;}
-.menu-item-depth-10 .menu-item-transport { margin-right: -300px; margin-left:0;}
-.menu-item-depth-11 .menu-item-transport { margin-right: -330px; margin-left:0;}
-
-/* Menu item controls */
-.item-type { padding-left: 10px;  padding-right:0;}
-.item-controls { left: 20px; right: auto;}
-.item-controls .item-order { padding-left: 10px; padding-right: 0;}
-
-.item-edit {
-       left: -20px;
-       right:auto;
-       -moz-border-radius-bottomright: 3px;
-       -moz-border-radius-bottomleft: 0;
-       -webkit-border-bottom-right-radius: 3px;
-       -webkit-border-bottom-left-radius: 0;
-       -khtml-border-bottom-right-radius: 3px;
-       -khtml-border-bottom-left-radius: 0;
-       border-bottom-right-radius: 3px;
-       border-bottom-left-radius: 0;
-}
-
-/* Menu editing */
-.menu-item-settings {
-       padding: 10px 10px 10px 0;
-       border-width: 0 1px 1px 1px;
-}
-
-.link-to-original {
-       font-style: normal;
-       font-weight: bold;
-}
-       .link-to-original a {
-               padding-right: 4px;
-               padding-left:0;
-       }
-
-.menu-item-settings .description-thin,
-.menu-item-settings .description-wide {
-       margin-left: 10px;
-       margin-right:0;
-       float: right;
-}
-
-/* Major/minor publishing actions (classes) */
-.major-publishing-actions .publishing-action {
-       text-align: left;
-       float: left;
-}
-.major-publishing-actions .delete-action {
-       text-align: right;
-       float: right;
-       padding-left: 15px;
-       padding-right:0;
-}
-.menu-name-label {
-       margin-left: 15px;
-       margin-right:0;
-}
-.auto-add-pages {
-       float: right;
-}
\ No newline at end of file
diff --git a/wp-admin/css/nav-menu.css b/wp-admin/css/nav-menu.css
deleted file mode 100644 (file)
index a1f5677..0000000
+++ /dev/null
@@ -1 +0,0 @@
-html,body{min-width:950px;}#nav-menus-frame{margin-left:300px;}#wpbody-content #menu-settings-column{display:inline;width:281px;margin-left:-300px;clear:both;float:left;padding-top:24px;}.no-js #wpbody-content #menu-settings-column{padding-top:31px;}#menu-settings-column .inside{clear:both;}.metabox-holder-disabled .postbox{opacity:.5;filter:alpha(opacity=50);}.metabox-holder-disabled .button-controls .select-all{display:none;}#wpbody{position:relative;}#menu-management-liquid{float:left;min-width:100%;}#menu-management{position:relative;margin-right:20px;margin-top:-3px;width:100%;}#menu-management .menu-edit{border:1px solid;-moz-border-radius:3px;-webkit-border-radius:3px;-khtml-border-radius:3px;border-radius:3px;margin-bottom:20px;}#post-body{padding:10px;border-width:1px 0;border-style:solid;}#nav-menu-header,#nav-menu-footer{padding:0 10px;}#nav-menu-header{border-bottom:1px solid;}#nav-menu-footer{border-top:1px solid;}#post-body div.updated,#post-body div.error{margin:0;}#post-body-content{position:relative;}#menu-management .menu-add-new abbr{font-weight:bold;}#menu-management .nav-tabs-nav{margin:0 20px;}#menu-management .nav-tabs-arrow{width:10px;padding:0 5px 4px;cursor:pointer;position:absolute;top:0;line-height:22px;font-size:18px;text-shadow:0 1px 0 #fff;}#menu-management .nav-tabs-arrow-left{left:0;}#menu-management .nav-tabs-arrow-right{right:0;text-align:right;}#menu-management .nav-tabs-wrapper{width:100%;height:28px;margin-bottom:-1px;overflow:hidden;}#menu-management .nav-tabs{padding-left:20px;padding-right:10px;}.js #menu-management .nav-tabs{float:left;margin-left:0;margin-right:-400px;}#menu-management .nav-tab{margin-bottom:0;font-size:14px;font-family:Georgia,"Times New Roman","Bitstream Charter",Times,serif;}#select-nav-menu-container{text-align:right;padding:0 10px 3px 10px;margin-bottom:5px;}#select-nav-menu{width:100px;display:inline;}#menu-name-label{margin-top:-2px;}#wpbody .open-label{display:block;float:left;}#wpbody .open-label span{padding-right:10px;}.js .input-with-default-title{font-style:italic;}#menu-management .inside{padding:0 10px;}.postbox .howto input{width:180px;float:right;}.customlinkdiv .howto input{width:200px;}#nav-menu-theme-locations .howto select{width:100%;}#nav-menu-theme-locations .button-controls{text-align:right;}.add-menu-item-view-all{height:400px;}#menu-container .submit{margin:0 0 10px;padding:0;}.meta-sep,.submitdelete,.submitcancel{display:block;float:left;font-size:12px;margin:4px 0;line-height:15px;}.meta-sep{padding:0 2px;}#cancel-save{text-decoration:underline;font-size:12px;margin-left:20px;margin-top:5px;}.list-controls{float:left;margin-top:5px;}.add-to-menu{float:right;}.postbox img.waiting{display:none;vertical-align:middle;}.button-controls{clear:both;margin:10px 0;}.show-all,.hide-all{cursor:pointer;}.hide-all{display:none;}#menu-name{width:270px;}#manage-menu .inside{padding:0;}#available-links dt{display:block;}#add-custom-link .howto{font-size:12px;}#add-custom-link label span{display:block;float:left;margin-top:5px;padding-right:5px;}.menu-item-textbox{width:180px;}.howto span{margin-top:4px;display:block;float:left;}.quick-search{width:190px;}.list-wrap{display:none;clear:both;margin-bottom:10px;}.list-container{max-height:200px;overflow-y:auto;padding:10px 10px 5px;border:1px solid;-moz-border-radius:3px;}.postbox p.submit{margin-bottom:0;}.list li{display:none;margin:0;margin-bottom:5px;}.list li .menu-item-title{cursor:pointer;display:block;}.list li .menu-item-title input{margin-right:3px;margin-top:-3px;}#menu-container .inside{padding-bottom:10px;}.menu{padding-top:1em;}#menu-to-edit{padding:1em 0;}.menu ul{width:100%;}.menu li{margin-bottom:0;position:relative;}.menu-item-bar{clear:both;line-height:1.5em;position:relative;margin-top:13px;}.menu-item-handle{border:1px solid #dfdfdf;position:relative;padding-left:10px;height:auto;width:400px;line-height:35px;text-shadow:0 1px 0 #FFF;overflow:hidden;word-wrap:break-word;border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px;-khtml-border-radius:3px;}#menu-to-edit .menu-item-invalid .menu-item-handle{background-color:#f6c9cc;background-image:-ms-linear-gradient(bottom,#f6c9cc,#fdf8ff);background-image:-moz-linear-gradient(bottom,#f6c9cc,#fdf8ff);background-image:-o-linear-gradient(bottom,#f6c9cc,#fdf8ff);background-image:-webkit-gradient(linear,left bottom,left top,from(#f6c9cc),to(#fdf8ff));background-image:-webkit-linear-gradient(bottom,#f6c9cc,#fdf8ff);background-image:linear-gradient(bottom,#f6c9cc,#fdf8ff);}.menu-item-edit-active .menu-item-handle{-moz-border-radius:3px 3px 0 0;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-khtml-border-bottom-right-radius:0;-khtml-border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom-left-radius:0;}.no-js .menu-item-edit-active .item-edit{display:none;}.js .menu-item-handle{cursor:move;}.menu li.deleting .menu-item-handle{background-image:none;text-shadow:0;}.menu-item-handle .item-title{font-size:12px;font-weight:bold;padding:7px 0;line-height:20px;display:block;margin-right:13em;}li.menu-item.ui-sortable-helper dl{margin-top:0;}li.menu-item.ui-sortable-helper .menu-item-transport dl{margin-top:13px;}.menu .sortable-placeholder{height:35px;width:410px;margin-top:13px;}.menu-item-depth-0{margin-left:0;}.menu-item-depth-1{margin-left:30px;}.menu-item-depth-2{margin-left:60px;}.menu-item-depth-3{margin-left:90px;}.menu-item-depth-4{margin-left:120px;}.menu-item-depth-5{margin-left:150px;}.menu-item-depth-6{margin-left:180px;}.menu-item-depth-7{margin-left:210px;}.menu-item-depth-8{margin-left:240px;}.menu-item-depth-9{margin-left:270px;}.menu-item-depth-10{margin-left:300px;}.menu-item-depth-11{margin-left:330px;}.menu-item-depth-0 .menu-item-transport{margin-left:0;}.menu-item-depth-1 .menu-item-transport{margin-left:-30px;}.menu-item-depth-2 .menu-item-transport{margin-left:-60px;}.menu-item-depth-3 .menu-item-transport{margin-left:-90px;}.menu-item-depth-4 .menu-item-transport{margin-left:-120px;}.menu-item-depth-5 .menu-item-transport{margin-left:-150px;}.menu-item-depth-6 .menu-item-transport{margin-left:-180px;}.menu-item-depth-7 .menu-item-transport{margin-left:-210px;}.menu-item-depth-8 .menu-item-transport{margin-left:-240px;}.menu-item-depth-9 .menu-item-transport{margin-left:-270px;}.menu-item-depth-10 .menu-item-transport{margin-left:-300px;}.menu-item-depth-11 .menu-item-transport{margin-left:-330px;}body.menu-max-depth-0{min-width:950px!important;}body.menu-max-depth-1{min-width:980px!important;}body.menu-max-depth-2{min-width:1010px!important;}body.menu-max-depth-3{min-width:1040px!important;}body.menu-max-depth-4{min-width:1070px!important;}body.menu-max-depth-5{min-width:1100px!important;}body.menu-max-depth-6{min-width:1130px!important;}body.menu-max-depth-7{min-width:1160px!important;}body.menu-max-depth-8{min-width:1190px!important;}body.menu-max-depth-9{min-width:1220px!important;}body.menu-max-depth-10{min-width:1250px!important;}body.menu-max-depth-11{min-width:1280px!important;}.item-type{font-size:12px;padding-right:10px;}.item-controls{font-size:12px;position:absolute;right:20px;top:-1px;}.item-controls a{text-decoration:none;}.item-controls a:hover{cursor:pointer;}.item-controls .item-order{padding-right:10px;}.item-controls .item-order a{font-weight:bold;}body.js .item-order{display:none;}.item-edit{position:absolute;right:-20px;top:0;display:block;width:30px;height:36px;overflow:hidden;text-indent:-999em;border-bottom:1px solid;-moz-border-radius-bottomleft:3px;-webkit-border-bottom-left-radius:3px;-khtml-border-bottom-left-radius:3px;border-bottom-left-radius:3px;}.menu-instructions-inactive{display:none;}.menu-item-settings{display:block;width:400px;padding:10px 0 10px 10px;border:solid;border-width:0 1px 1px 1px;-moz-border-radius:0 0 3px 3px;-webkit-border-bottom-right-radius:3px;-webkit-border-bottom-left-radius:3px;-khtml-border-bottom-right-radius:3px;-khtml-border-bottom-left-radius:3px;}.menu-item-edit-active .menu-item-settings{display:block;}.menu-item-edit-inactive .menu-item-settings{display:none;}.add-menu-item-pagelinks{margin:.5em auto;text-align:center;}.link-to-original{display:block;margin:0 0 10px;padding:3px 5px 5px;font-size:12px;font-style:italic;border:1px solid;border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px;-khtml-border-radius:3px;}.link-to-original a{padding-left:4px;font-style:normal;}.hidden-field{display:none;}.menu-item-settings .description-thin,.menu-item-settings .description-wide{margin-right:10px;float:left;}.description-thin{width:190px;height:40px;}.description-wide{width:390px;}.menu-item-actions{padding-top:15px;}#cancel-save{cursor:pointer;}.major-publishing-actions{clear:both;padding:3px 0 5px;}.major-publishing-actions .publishing-action{text-align:right;float:right;line-height:23px;margin:5px 0 1px;}.major-publishing-actions .delete-action{vertical-align:middle;text-align:left;float:left;padding-right:15px;margin-top:5px;}.menu-name-label span,.auto-add-pages label{font-size:12px;font-style:normal;}.menu-name-label{margin-right:15px;}.auto-add-pages input{margin-top:0;}.auto-add-pages{margin-top:4px;float:left;}.submitbox .submitcancel{border-bottom:1px solid;padding:1px 2px;text-decoration:none;}.major-publishing-actions .form-invalid{padding-left:4px;margin-left:-4px;border-radius:3px;-webkit-border-radius:3px;-moz-border-radius:3px;-khtml-border-radius:3px;}#menu-item-name-wrap:after,#menu-item-url-wrap:after,#menu-name-label:after,#menu-settings-column .inside:after,#nav-menus-frame:after,#post-body-content:after,.button-controls:after,.major-publishing-actions:after,.menu-item-settings:after{clear:both;content:".";display:block;height:0;visibility:hidden;}#nav-menus-frame,.button-controls,#menu-item-url-wrap,#menu-item-name-wrap{display:block;}
\ No newline at end of file
diff --git a/wp-admin/css/nav-menu.dev.css b/wp-admin/css/nav-menu.dev.css
deleted file mode 100644 (file)
index 7224ee3..0000000
+++ /dev/null
@@ -1,705 +0,0 @@
-/**
- * WordPress Administration Custom Navigation
- * Interface CSS
- *
- * @version 2.0.0
- *
- * @package WordPress
- * @subpackage Administration
- */
-
-html,
-body {
-       min-width: 950px;
-}
-
-#nav-menus-frame {
-       margin-left: 300px;
-}
-
-#wpbody-content #menu-settings-column {
-       display:inline;
-       width:281px;
-       margin-left: -300px;
-       clear: both;
-       float: left;
-       padding-top: 24px;
-}
-       .no-js #wpbody-content #menu-settings-column {
-               padding-top: 31px;
-       }
-
-#menu-settings-column .inside {
-       clear: both;
-}
-
-.metabox-holder-disabled .postbox {
-       opacity: 0.5;
-       filter: alpha(opacity=50);
-}
-
-.metabox-holder-disabled .button-controls .select-all {
-       display: none;
-}
-#wpbody {
-       position: relative;
-}
-
-/* Menu Container */
-#menu-management-liquid {
-       float: left;
-       min-width: 100%;
-}
-
-#menu-management {
-       position: relative;
-       margin-right: 20px;
-       margin-top: -3px;
-       width: 100%;
-}
-
-#menu-management .menu-edit {
-       border: 1px solid;
-       -moz-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       border-radius: 3px;
-       margin-bottom: 20px;
-}
-
-#post-body {
-       padding: 10px;
-       border-width: 1px 0;
-       border-style: solid;
-}
-
-#nav-menu-header,
-#nav-menu-footer {
-       padding: 0 10px;
-}
-
-#nav-menu-header {
-       border-bottom: 1px solid;
-}
-
-#nav-menu-footer {
-       border-top: 1px solid;
-}
-
-#post-body div.updated, #post-body div.error {
-       margin: 0;
-}
-
-#post-body-content {
-       position: relative;
-}
-
-#menu-management .menu-add-new abbr {
-       font-weight:bold;
-}
-
-/* Menu Tabs */
-
-#menu-management .nav-tabs-nav {
-       margin: 0 20px;
-}
-
-#menu-management .nav-tabs-arrow {
-       width: 10px;
-       padding: 0 5px 4px;
-       cursor: pointer;
-       position: absolute;
-       top: 0;
-       line-height: 22px;
-       font-size: 18px;
-       text-shadow: 0 1px 0 #fff;
-}
-
-#menu-management .nav-tabs-arrow a:hover{
-}
-
-#menu-management .nav-tabs-arrow a:active {
-}
-
-#menu-management .nav-tabs-arrow-left {
-               left: 0;
-}
-
-#menu-management .nav-tabs-arrow-right {
-               right: 0;
-               text-align: right;
-}
-
-#menu-management .nav-tabs-wrapper {
-       width: 100%;
-       height: 28px;
-       margin-bottom: -1px;
-       overflow: hidden;
-}
-
-#menu-management .nav-tabs {
-       padding-left: 20px;
-       padding-right: 10px;
-}
-
-.js #menu-management .nav-tabs {
-       float: left;
-       margin-left: 0px;
-       margin-right: -400px;
-}
-
-#menu-management .nav-tab {
-       margin-bottom: 0;
-       font-size: 14px;
-       font-family: Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
-}
-
-
-#select-nav-menu-container {
-       text-align: right;
-       padding: 0 10px 3px 10px;
-       margin-bottom: 5px;
-}
-
-#select-nav-menu {
-       width: 100px;
-       display: inline;
-}
-
-#menu-name-label {
-       margin-top: -2px;
-}
-
-#wpbody .open-label {
-       display: block;
-       float:left;
-}
-
-#wpbody .open-label span {
-       padding-right: 10px;
-}
-
-.js .input-with-default-title {
-       font-style: italic;
-}
-
-#menu-management .inside {
-       padding: 0 10px;
-}
-
-/* Add Menu Item Boxes */
-.postbox .howto input {
-       width: 180px;
-       float: right;
-}
-
-.customlinkdiv .howto input {
-       width: 200px;
-}
-
-#nav-menu-theme-locations .howto select {
-       width: 100%;
-}
-
-#nav-menu-theme-locations .button-controls {
-       text-align: right;
-}
-
-.add-menu-item-view-all {
-       height: 400px;
-}
-
-/* Button Primary Actions */
-#menu-container .submit {
-       margin: 0px 0px 10px;
-       padding: 0px;
-}
-
-.meta-sep,
-.submitdelete,
-.submitcancel {
-       display:block;
-       float:left;
-       font-size: 12px;
-       margin: 4px 0;
-       line-height: 15px;
-}
-
-.meta-sep {
-       padding: 0 2px;
-}
-
-#cancel-save {
-       text-decoration: underline;
-       font-size: 12px;
-       margin-left: 20px;
-       margin-top: 5px;
-}
-
-/* Button Secondary Actions */
-.list-controls {
-       float: left;
-       margin-top: 5px;
-}
-
-.add-to-menu {
-       float: right;
-}
-
-.postbox img.waiting {
-       display: none;
-       vertical-align: middle;
-}
-
-.button-controls {
-       clear:both;
-       margin: 10px 0;
-}
-
-.show-all, .hide-all {
-       cursor: pointer;
-}
-
-.hide-all {
-       display: none;
-}
-
-/* Create Menu */
-#menu-name {
-       width: 270px;
-}
-
-#manage-menu .inside {
-       padding: 0px 0px;
-}
-
-/* Custom Links */
-#available-links dt {
-       display: block;
-}
-
-#add-custom-link .howto {
-       font-size: 12px;
-}
-
-#add-custom-link label span {
-       display: block;
-       float: left;
-       margin-top: 5px;
-       padding-right: 5px;
-}
-
-.menu-item-textbox {
-       width: 180px;
-}
-
-.howto span {
-       margin-top: 4px;
-       display: block;
-       float: left;
-}
-
-/* Menu item types */
-.quick-search {
-       width: 190px;
-}
-
-.list-wrap {
-       display: none;
-       clear: both;
-       margin-bottom: 10px;
-}
-
-.list-container {
-       max-height: 200px;
-       overflow-y: auto;
-       padding: 10px 10px 5px;
-       border: 1px solid;
-       -moz-border-radius: 3px;
-}
-
-.postbox p.submit {
-       margin-bottom: 0;
-}
-
-/* Listings */
-.list li {
-       display: none;
-       margin: 0;
-       margin-bottom: 5px;
-}
-
-.list li .menu-item-title {
-       cursor: pointer;
-       display: block;
-}
-
-.list li .menu-item-title input {
-       margin-right: 3px;
-       margin-top: -3px;
-}
-
-/* Nav Menu */
-#menu-container .inside {
-       padding-bottom: 10px;
-}
-
-.menu {
-       padding-top:1em;
-}
-
-#menu-to-edit {
-       padding: 1em 0;
-}
-
-.menu ul {
-       width: 100%;
-}
-
-.menu ul.sub-menu {
-}
-
-.menu li {
-       margin-bottom: 0;
-       position:relative;
-}
-
-.menu-item-bar {
-       clear:both;
-       line-height:1.5em;
-       position:relative;
-       margin-top: 13px;
-}
-
-.menu-item-handle {
-       border: 1px solid #dfdfdf;
-       position: relative;
-       padding-left: 10px;
-       height: auto;
-       width: 400px;
-       line-height: 35px;
-       text-shadow: 0 1px 0 #FFFFFF;
-       overflow: hidden;
-       word-wrap: break-word;
-       border-radius: 3px;
-       -webkit-border-radius: 3px;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-}
-
-#menu-to-edit .menu-item-invalid .menu-item-handle {
-       background-color: #f6c9cc; /* Fallback */
-       background-image: -ms-linear-gradient(bottom, #f6c9cc, #fdf8ff); /* IE10 */
-       background-image: -moz-linear-gradient(bottom, #f6c9cc, #fdf8ff); /* Firefox */
-       background-image: -o-linear-gradient(bottom, #f6c9cc, #fdf8ff); /* Opera */
-       background-image: -webkit-gradient(linear, left bottom, left top, from(#f6c9cc), to(#fdf8ff)); /* old Webkit  */
-       background-image: -webkit-linear-gradient(bottom, #f6c9cc, #fdf8ff); /* new Webkit */
-       background-image: linear-gradient(bottom, #f6c9cc, #fdf8ff); /* proposed W3C Markup */
-}
-
-.menu-item-edit-active .menu-item-handle {
-       -moz-border-radius: 3px 3px 0 0;
-       -webkit-border-bottom-right-radius: 0;
-       -webkit-border-bottom-left-radius: 0;
-       -khtml-border-bottom-right-radius: 0;
-       -khtml-border-bottom-left-radius: 0;
-       border-bottom-right-radius: 0;
-       border-bottom-left-radius: 0;
-}
-
-.no-js .menu-item-edit-active .item-edit {
-       display: none;
-}
-
-.js .menu-item-handle {
-       cursor: move;
-}
-
-.menu li.deleting .menu-item-handle {
-       background-image: none;
-       text-shadow: 0 0 0;
-}
-
-.menu-item-handle .item-title {
-       font-size: 12px;
-       font-weight: bold;
-       padding: 7px 0;
-       line-height: 20px;
-       display:block;
-       margin-right:13em;
-}
-
-/* Sortables */
-li.menu-item.ui-sortable-helper dl {
-       margin-top: 0;
-}
-
-li.menu-item.ui-sortable-helper .menu-item-transport dl {
-               margin-top: 13px;
-}
-
-.menu .sortable-placeholder {
-       height: 35px;
-       width: 410px;
-       margin-top: 13px;
-}
-
-/* WARNING: The factor of 30px is hardcoded into the nav-menus javascript. */
-.menu-item-depth-0 { margin-left: 0px; }
-.menu-item-depth-1 { margin-left: 30px; }
-.menu-item-depth-2 { margin-left: 60px; }
-.menu-item-depth-3 { margin-left: 90px; }
-.menu-item-depth-4 { margin-left: 120px; }
-.menu-item-depth-5 { margin-left: 150px; }
-.menu-item-depth-6 { margin-left: 180px; }
-.menu-item-depth-7 { margin-left: 210px; }
-.menu-item-depth-8 { margin-left: 240px; }
-.menu-item-depth-9 { margin-left: 270px; }
-.menu-item-depth-10 { margin-left: 300px; }
-.menu-item-depth-11 { margin-left: 330px; }
-
-.menu-item-depth-0 .menu-item-transport { margin-left: 0px; }
-.menu-item-depth-1 .menu-item-transport { margin-left: -30px; }
-.menu-item-depth-2 .menu-item-transport { margin-left: -60px; }
-.menu-item-depth-3 .menu-item-transport { margin-left: -90px; }
-.menu-item-depth-4 .menu-item-transport { margin-left: -120px; }
-.menu-item-depth-5 .menu-item-transport { margin-left: -150px; }
-.menu-item-depth-6 .menu-item-transport { margin-left: -180px; }
-.menu-item-depth-7 .menu-item-transport { margin-left: -210px; }
-.menu-item-depth-8 .menu-item-transport { margin-left: -240px; }
-.menu-item-depth-9 .menu-item-transport { margin-left: -270px; }
-.menu-item-depth-10 .menu-item-transport { margin-left: -300px; }
-.menu-item-depth-11 .menu-item-transport { margin-left: -330px; }
-
-body.menu-max-depth-0 { min-width: 950px !important; }
-body.menu-max-depth-1 { min-width: 980px !important; }
-body.menu-max-depth-2 { min-width: 1010px !important; }
-body.menu-max-depth-3 { min-width: 1040px !important; }
-body.menu-max-depth-4 { min-width: 1070px !important; }
-body.menu-max-depth-5 { min-width: 1100px !important; }
-body.menu-max-depth-6 { min-width: 1130px !important; }
-body.menu-max-depth-7 { min-width: 1160px !important; }
-body.menu-max-depth-8 { min-width: 1190px !important; }
-body.menu-max-depth-9 { min-width: 1220px !important; }
-body.menu-max-depth-10 { min-width: 1250px !important; }
-body.menu-max-depth-11 { min-width: 1280px !important; }
-
-/* Menu item controls */
-.item-type {
-       font-size: 12px;
-       padding-right: 10px;
-}
-
-.item-controls {
-       font-size: 12px;
-       position: absolute;
-       right: 20px;
-       top: -1px;
-}
-
-.item-controls a {
-       text-decoration: none;
-}
-
-.item-controls a:hover {
-       cursor: pointer;
-}
-
-.item-controls .item-order {
-       padding-right: 10px;
-}
-
-.item-controls .item-order a {
-       font-weight:bold;
-}
-
-body.js .item-order {
-       display:none;
-}
-
-.item-controls .menu-item-delete:hover {
-}
-
-.item-edit {
-       position: absolute;
-       right: -20px;
-       top: 0;
-       display: block;
-       width:30px;
-       height: 36px;
-       overflow: hidden;
-       text-indent:-999em;
-       border-bottom: 1px solid;
-       -moz-border-radius-bottomleft: 3px;
-       -webkit-border-bottom-left-radius: 3px;
-       -khtml-border-bottom-left-radius: 3px;
-       border-bottom-left-radius: 3px;
-}
-
-.item-edit:hover {
-}
-
-/* Menu editing */
-.menu-instructions-inactive {
-       display: none;
-}
-
-.menu-item-settings {
-       display:block;
-       width: 400px;
-       padding: 10px 0 10px 10px;
-       border: solid;
-       border-width: 0 1px 1px 1px;
-       -moz-border-radius: 0 0 3px 3px;
-       -webkit-border-bottom-right-radius: 3px;
-       -webkit-border-bottom-left-radius: 3px;
-       -khtml-border-bottom-right-radius: 3px;
-       -khtml-border-bottom-left-radius: 3px;
-}
-
-.menu-item-edit-active .menu-item-settings {
-       display:block;
-}
-
-.menu-item-edit-inactive .menu-item-settings {
-       display:none;
-}
-
-.add-menu-item-pagelinks {
-       margin:.5em auto;
-       text-align:center;
-}
-
-.link-to-original {
-       display: block;
-       margin: 0 0 10px;
-       padding: 3px 5px 5px;
-       font-size: 12px;
-       font-style: italic;
-       border: 1px solid;
-       border-radius: 3px;
-       -webkit-border-radius: 3px;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-}
-
-.link-to-original a {
-               padding-left: 4px;
-               font-style: normal;
-}
-
-.hidden-field {
-       display: none;
-}
-
-.menu-item-settings .description-thin,
-.menu-item-settings .description-wide {
-       margin-right: 10px;
-       float: left;
-}
-
-.description-thin {
-       width: 190px;
-       height: 40px;
-}
-
-.description-wide {
-       width: 390px;
-}
-
-.menu-item-actions {
-       padding-top: 15px;
-}
-
-#cancel-save {
-       cursor: pointer;
-}
-
-#cancel-save:hover {
-}
-
-#update-menu-item {
-}
-
-#update-menu-item:hover,
-#update-menu-item:active,
-#update-menu-item:focus {
-}
-
-/* Major/minor publishing actions (classes) */
-.major-publishing-actions {
-       clear:both;
-       padding: 3px 0 5px;
-}
-
-.major-publishing-actions .publishing-action {
-       text-align: right;
-       float: right;
-       line-height: 23px;
-       margin: 5px 0 1px;
-}
-
-.major-publishing-actions .delete-action {
-       vertical-align: middle;
-       text-align: left;
-       float: left;
-       padding-right: 15px;
-       margin-top: 5px;
-}
-
-.menu-name-label span, .auto-add-pages label {
-       font-size: 12px;
-       font-style: normal;
-}
-
-.menu-name-label {
-       margin-right: 15px;
-}
-
-.auto-add-pages input {
-       margin-top: 0;
-}
-
-.auto-add-pages {
-       margin-top: 4px;
-       float: left;
-}
-
-.submitbox .submitcancel {
-       border-bottom: 1px solid;
-       padding: 1px 2px;
-       text-decoration: none;
-}
-
-.submitbox .submitcancel:hover {
-}
-
-.major-publishing-actions .form-invalid {
-       padding-left: 4px;
-       margin-left: -4px;
-       border-radius: 3px;
-       -webkit-border-radius: 3px;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-}
-
-/* Clearfix */
-#menu-item-name-wrap:after,
-#menu-item-url-wrap:after,
-#menu-name-label:after,
-#menu-settings-column .inside:after,
-#nav-menus-frame:after,
-#post-body-content:after,
-.button-controls:after,
-.major-publishing-actions:after,
-.menu-item-settings:after {
-       clear: both;
-       content: ".";
-       display: block;
-       height: 0;
-       visibility: hidden;
-}
-
-#nav-menus-frame, .button-controls, #menu-item-url-wrap, #menu-item-name-wrap {
-       display: block;
-}
diff --git a/wp-admin/css/plugin-install-rtl.css b/wp-admin/css/plugin-install-rtl.css
deleted file mode 100644 (file)
index f1ade77..0000000
+++ /dev/null
@@ -1 +0,0 @@
-div.star{left:auto;right:0;letter-spacing:0;}.star img,div.star a,div.star a:hover,div.star a:visited{right:auto;left:0;}#plugin-information ul#sidemenu{left:auto;right:0;}#plugin-information h2{margin-right:0;margin-left:200px;}#plugin-information .fyi{margin-left:5px;margin-right:20px;}#plugin-information .fyi h2{margin-left:0;}#plugin-information .fyi ul{padding:10px 7px 10px 5px;}#plugin-information #section-screenshots li p{padding-left:0;padding-right:20px;}#plugin-information .updated,#plugin-information pre{margin-right:0;margin-left:215px;}#plugin-information .updated,#plugin-information .error{clear:none;direction:rtl;}#section-description{direction:ltr;}
\ No newline at end of file
diff --git a/wp-admin/css/plugin-install-rtl.dev.css b/wp-admin/css/plugin-install-rtl.dev.css
deleted file mode 100644 (file)
index 9a6dd11..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-div.star {
-       left: auto;
-       right: 0;
-       letter-spacing: 0;
-}
-.star img, div.star a, div.star a:hover, div.star a:visited {
-       right: auto;
-       left: 0;
-}
-#plugin-information ul#sidemenu {
-       left: auto;
-       right: 0;
-}
-#plugin-information h2 {
-       margin-right: 0;
-       margin-left: 200px;
-}
-#plugin-information .fyi {
-       margin-left: 5px;
-       margin-right: 20px;
-}
-#plugin-information .fyi h2 {
-       margin-left: 0;
-}
-#plugin-information .fyi ul {
-       padding: 10px 7px 10px 5px;
-}
-#plugin-information #section-screenshots li p {
-       padding-left: 0;
-       padding-right: 20px;
-}
-#plugin-information .updated,
-#plugin-information pre {
-       margin-right: 0;
-       margin-left: 215px;
-}
-#plugin-information .updated, #plugin-information .error {
-       clear: none;
-       direction: rtl;
-}
-#section-description {
-       direction: ltr;
-}
diff --git a/wp-admin/css/plugin-install.css b/wp-admin/css/plugin-install.css
deleted file mode 100644 (file)
index 939408f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-div.star-holder{position:relative;height:19px;width:100px;font-size:19px;}div.action-links{font-weight:normal;margin:6px 0 0;}div.star{height:100%;position:absolute;top:0;left:0;background-color:transparent;letter-spacing:1ex;border:none;}.star1{width:20%;}.star2{width:40%;}.star3{width:60%;}.star4{width:80%;}.star5{width:100%;}.star img,div.star a,div.star a:hover,div.star a:visited{display:block;position:absolute;right:0;border:none;text-decoration:none;}div.star img{width:19px;height:19px;}#plugin-information-header{margin:0;padding:0 5px;font-weight:bold;position:relative;border-bottom-width:1px;border-bottom-style:solid;height:2.5em;}#plugin-information ul#sidemenu{font-weight:normal;margin:0 5px;position:absolute;left:0;bottom:-1px;}#plugin-information p.action-button{width:100%;padding-bottom:0;margin-bottom:0;margin-top:10px;-moz-border-radius:3px 0 0 3px;-webkit-border-top-left-radius:3px;-khtml-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;-khtml-border-bottom-left-radius:3px;border-bottom-left-radius:3px;}#plugin-information .action-button a{text-align:center;font-weight:bold;text-decoration:none;display:block;line-height:2em;}#plugin-information h2{clear:none!important;margin-right:200px;}#plugin-information .fyi{margin:0 10px 50px;width:210px;}#plugin-information .fyi h2{font-size:.9em;margin-bottom:0;margin-right:0;}#plugin-information .fyi h2.mainheader{padding:5px;-moz-border-radius-topleft:3px;-webkit-border-top-left-radius:3px;-khtml-border-top-left-radius:3px;border-top-left-radius:3px;}#plugin-information .fyi ul{padding:10px 5px 10px 7px;margin:0;list-style:none;-moz-border-radius-bottomleft:3px;-webkit-border-bottom-left-radius:3px;-khtml-border-bottom-left-radius:3px;border-bottom-left-radius:3px;}#plugin-information .fyi li{margin-right:0;}#plugin-information #section-holder{padding:10px;}#plugin-information .section ul,#plugin-information .section ol{margin-left:16px;list-style-type:square;list-style-image:none;}#plugin-information #section-screenshots li img{vertical-align:text-top;}#plugin-information #section-screenshots li p{font-style:italic;padding-left:20px;padding-bottom:2em;}#plugin-information .updated,#plugin-information pre{margin-right:215px;}#plugin-information pre{padding:7px;}
\ No newline at end of file
diff --git a/wp-admin/css/plugin-install.dev.css b/wp-admin/css/plugin-install.dev.css
deleted file mode 100644 (file)
index 2204257..0000000
+++ /dev/null
@@ -1,150 +0,0 @@
-/* NOTE: the following CSS rules(.star*) are taken more or less straight from the bbPress rating plugin. */
-div.star-holder {
-       position: relative;
-       height: 19px;
-       width: 100px;
-       font-size: 19px;
-}
-
-div.action-links {
-       font-weight: normal;
-       margin: 6px 0 0;
-}
-
-div.star {
-       height: 100%;
-       position: absolute;
-       top: 0;
-       left: 0;
-       background-color: transparent;
-       letter-spacing: 1ex;
-       border: none;
-}
-
-.star1 { width: 20%; }
-.star2 { width: 40%; }
-.star3 { width: 60%; }
-.star4 { width: 80%; }
-.star5 { width: 100%; }
-
-.star img, div.star a, div.star a:hover, div.star a:visited {
-       display: block;
-       position: absolute;
-       right: 0;
-       border: none;
-       text-decoration: none;
-}
-
-div.star img {
-       width: 19px;
-       height: 19px;
-}
-
-/* Header on thickbox */
-#plugin-information-header {
-       margin: 0;
-       padding: 0 5px;
-       font-weight: bold;
-       position: relative;
-       border-bottom-width: 1px;
-       border-bottom-style: solid;
-       height: 2.5em;
-}
-#plugin-information ul#sidemenu {
-       font-weight: normal;
-       margin: 0 5px;
-       position: absolute;
-       left: 0;
-       bottom: -1px;
-}
-
-/* Install sidemenu */
-#plugin-information p.action-button {
-       width: 100%;
-       padding-bottom: 0;
-       margin-bottom: 0;
-       margin-top: 10px;
-       -moz-border-radius: 3px 0 0 3px;
-       -webkit-border-top-left-radius: 3px;
-       -khtml-border-top-left-radius: 3px;
-       border-top-left-radius: 3px;
-       -webkit-border-bottom-left-radius: 3px;
-       -khtml-border-bottom-left-radius: 3px;
-       border-bottom-left-radius: 3px;
-}
-
-#plugin-information .action-button a {
-       text-align: center;
-       font-weight: bold;
-       text-decoration: none;
-       display: block;
-       line-height: 2em;
-}
-
-#plugin-information h2 {
-       clear: none !important;
-       margin-right: 200px;
-}
-
-#plugin-information .fyi {
-       margin: 0 10px 50px;
-       width: 210px;
-}
-
-#plugin-information .fyi h2 {
-       font-size: 0.9em;
-       margin-bottom: 0;
-       margin-right: 0;
-}
-
-#plugin-information .fyi h2.mainheader {
-       padding: 5px;
-       -moz-border-radius-topleft: 3px;
-       -webkit-border-top-left-radius: 3px;
-       -khtml-border-top-left-radius: 3px;
-       border-top-left-radius: 3px;
-}
-
-#plugin-information .fyi ul {
-       padding: 10px 5px 10px 7px;
-       margin: 0;
-       list-style: none;
-       -moz-border-radius-bottomleft: 3px;
-       -webkit-border-bottom-left-radius: 3px;
-       -khtml-border-bottom-left-radius: 3px;
-       border-bottom-left-radius: 3px;
-}
-
-#plugin-information .fyi li {
-       margin-right: 0;
-}
-
-#plugin-information #section-holder {
-       padding: 10px;
-}
-
-#plugin-information .section ul,
-#plugin-information .section ol {
-       margin-left: 16px;
-       list-style-type: square;
-       list-style-image: none;
-}
-
-#plugin-information #section-screenshots li img {
-       vertical-align: text-top;
-}
-
-#plugin-information #section-screenshots li p {
-       font-style: italic;
-       padding-left: 20px;
-       padding-bottom: 2em;
-}
-
-#plugin-information .updated,
-#plugin-information pre {
-       margin-right: 215px;
-}
-
-#plugin-information pre {
-       padding: 7px;
-}
diff --git a/wp-admin/css/press-this-rtl.css b/wp-admin/css/press-this-rtl.css
deleted file mode 100644 (file)
index a19d20c..0000000
+++ /dev/null
@@ -1 +0,0 @@
-body{font-family:Tahoma,Arial;}#poststuff #edButtonPreview,#poststuff #edButtonHTML{float:left;}#poststuff #edButtonHTML{margin-left:15px;margin-right:5px;}#header-logo,#wphead h1{float:right;}div#poststuff{padding-left:0;padding-right:10px;}.posting{margin-left:212px;margin-right:0;position:relative;}#side-info-column{float:left;right:auto;left:0;}h3.tb{margin-left:0;margin-right:5px;}#publish{float:left;}.postbox .handlediv{float:left;}.actions{float:left;}.actions li{float:right;margin-right:0;margin-left:10px;}#extra-fields .actions{margin:-23px 0 0 -7px;}#img_container a{float:right;}#category-add input,#category-add select{font-family:Tahoma,Arial;}.inline-editor ul.cat-checklist ul,.categorydiv ul.categorychecklist ul,#linkcategorydiv ul.categorychecklist ul{margin-left:0;margin-right:18px;}.category-tabs li{padding-left:0;padding-right:8px;}#tagsdiv #newtag{margin-right:0;margin-left:5px;}#tagadd{margin-left:0;margin-right:3px;}#tagchecklist span{margin-left:.5em;margin-right:10px;float:right;}#tagchecklist span a{margin:6px -9px 0 0;float:right;}#content{margin-left:0;margin-right:1%;}.submit input,.button,.button-primary,.button-secondary,.button-highlighted,#postcustomstuff .submit input{font-family:Tahoma,Arial,sans-serif;}.ac_results li{text-align:right;}#TB_ajaxContent #options{right:auto;left:25px;}#post_status{margin-left:0;margin-right:10px;}#footer{padding:10px 60px 0 0;}
\ No newline at end of file
diff --git a/wp-admin/css/press-this-rtl.dev.css b/wp-admin/css/press-this-rtl.dev.css
deleted file mode 100644 (file)
index fbb1456..0000000
+++ /dev/null
@@ -1,140 +0,0 @@
-body {
-       font-family: Tahoma, Arial;
-}
-
-#poststuff #edButtonPreview,
-#poststuff #edButtonHTML {
-       float: left;
-}
-
-#poststuff #edButtonHTML {
-       margin-left: 15px;
-       margin-right: 5px;
-}
-
-#header-logo,
-#wphead h1 {
-       float: right;
-}
-
-/* Editor/Main Column */
-div#poststuff {
-       padding-left: 0;
-       padding-right: 10px;
-}
-
-.posting {
-       margin-left: 212px;
-       margin-right: 0;
-       position: relative;
-}
-
-#side-info-column {
-       float: left;
-       right: auto;
-       left: 0;
-}
-
-h3.tb {
-       margin-left: 0;
-       margin-right: 5px;
-}
-
-#publish {
-       float: left;
-}
-
-.postbox .handlediv {
-       float: left;
-}
-
-.actions {
-       float: left;
-}
-
-.actions li {
-       float: right;
-       margin-right: 0;
-       margin-left: 10px;
-}
-
-#extra-fields .actions {
-    margin: -23px 0 0 -7px;
-}
-
-/* Photo Styles */
-#img_container a {
-       float: right;
-}
-
-#category-add input,
-#category-add select {
-       font-family: Tahoma, Arial;
-}
-
-.inline-editor ul.cat-checklist ul,
-.categorydiv ul.categorychecklist ul,
-#linkcategorydiv ul.categorychecklist ul {
-       margin-left: 0;
-       margin-right: 18px;
-}
-
-/* Categories */
-.category-tabs li {
-       padding-left: 0;
-       padding-right: 8px;
-}
-
-/* Tags */
-#tagsdiv #newtag {
-       margin-right: 0;
-       margin-left: 5px;
-}
-
-#tagadd {
-       margin-left: 0;
-       margin-right: 3px;
-}
-
-#tagchecklist span {
-       margin-left: .5em;
-       margin-right: 10px;
-       float: right;
-}
-#tagchecklist span a {
-       margin: 6px -9px 0 0;
-       float: right;
-}
-
-#content {
-       margin-left: 0;
-       margin-right: 1%;
-}
-
-.submit input,
-.button,
-.button-primary,
-.button-secondary,
-.button-highlighted,
-#postcustomstuff .submit input {
-       font-family: Tahoma, Arial, sans-serif;
-}
-
-.ac_results li {
-       text-align: right;
-}
-
-#TB_ajaxContent #options {
-       right: auto;
-       left: 25px;
-}
-
-#post_status {
-       margin-left: 0;
-       margin-right: 10px;
-}
-
-/* Footer */
-#footer {
-       padding: 10px 60px 0 0;
-}
diff --git a/wp-admin/css/press-this.css b/wp-admin/css/press-this.css
deleted file mode 100644 (file)
index fd1970a..0000000
+++ /dev/null
@@ -1 +0,0 @@
-body{font-size:13px;font-family:sans-serif;color:#333;margin:0;padding:0;min-width:675px;min-height:400px;}img{border:none;}#wphead{height:32px;margin-right:5px;margin-bottom:5px;}#header-logo{float:left;margin:7px 7px 0;-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none;user-select:none;}#wphead h1{font:normal 16px Georgia,"Times New Roman","Bitstream Charter",Times,serif;padding:6px 0 0;margin:0;float:left;}#wphead h1 a{text-decoration:none;}#wphead h1 a:hover{text-decoration:underline;}.tagchecklist span a{background:transparent url(../images/xit.gif) no-repeat 0 0;}#edButtonPreview,#edButtonHTML{height:18px;margin:5px 5px 0 0;padding:4px 5px 2px;float:right;cursor:pointer;border-width:1px;border-style:solid;-moz-border-radius:3px 3px 0 0;-webkit-border-top-right-radius:3px;-webkit-border-top-left-radius:3px;-khtml-border-top-right-radius:3px;-khtml-border-top-left-radius:3px;border-top-right-radius:3px;border-top-left-radius:3px;}#poststuff #edButtonHTML{margin-right:15px;}#media-buttons{cursor:default;padding:8px 8px 0;}#media-buttons a{cursor:pointer;padding:0 0 5px 10px;}#media-buttons img,#submitpost #ajax-loading,#submitpost .ajax-loading{vertical-align:middle;}.howto{margin-top:2px;margin-bottom:3px;font-size:12px;font-style:italic;display:block;}input.text{outline-color:-moz-use-text-color;outline-style:none;outline-width:medium;width:100%;}#message{-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;}div#poststuff{margin:0 10px 10px;}#poststuff #editor-toolbar{height:30px;}div.zerosize{border:0 none;height:0;margin:0;overflow:hidden;padding:0;width:0;}.posting{margin-right:212px;position:relative;}#side-info-column{float:right;width:200px;position:relative;right:0;}#side-info-column .sleeve{padding-top:5px;}#poststuff .inside{font-size:12px;margin:8px;}#submitdiv .inside{margin:0;}#submitdiv .inside p{padding:5px 8px;margin:0;}#submitdiv #publishing-actions{padding-left:6px;border-bottom:1px solid #dfdfdf;-webkit-box-shadow:0 1px 0 #fff;-moz-box-shadow:0 1px 0 #fff;box-shadow:0 1px 0 #fff;}#publish{float:right;}#poststuff h2,#poststuff h3{font-size:13px;font-family:Georgia,"Times New Roman","Bitstream Charter",Times,serif;font-weight:normal;line-height:1;margin:0;padding:7px 9px;border-width:0 0 1px 0;border-style:solid;}#poststuff h2{border-color:#dfdfdf;}#tagsdiv-post_tag h3,#categorydiv h3{cursor:pointer;}h3.tb{text-shadow:0 1px 0 #fff;font-weight:bold;font-size:12px;margin-left:5px;}#TB_window{border:1px solid #333;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;}.postbox,.stuffbox{margin-bottom:10px;border-width:1px;border-style:solid;line-height:1;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;}.postbox:hover .handlediv,.stuffbox:hover .handlediv{background:transparent url(../images/arrows.png) no-repeat 6px 7px;}.postbox .handlediv{float:right;width:27px;height:30px;cursor:pointer;}#title,.tbtitle{font-family:sans-serif;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;border-style:solid;border-width:1px;font-size:1.7em;outline:none;padding:3px 4px;border-color:#dfdfdf;}.tbtitle{font-size:12px;padding:3px;}#title{width:97%;}.editor-container{-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;border:1px solid #ccc;background-color:#fff;}.actions{float:right;margin:-19px 0 0;}#extra-fields .actions{margin:-23px -7px 0 0;}.actions li{float:left;list-style:none;margin-right:10px;}#extra-fields .button{margin-right:5px;padding:3px 6px;border-radius:10px;-webkit-border-radius:10px;-khtml-border-radius:10px;-moz-border-radius:10px;}#photo_saving{margin:0 8px 8px;vertical-align:middle;}#img_container_container{overflow:auto;}#extra-fields{margin-top:10px;position:relative;}#waiting{margin-top:10px;}#extra-fields .postbox{margin-bottom:5px;}#extra-fields .titlewrap{padding:0;overflow:auto;height:100px;}#img_container a{display:block;float:left;overflow:hidden;vertical-align:center;}#img_container img,#img_container a{width:68px;height:68px;}#img_container img{border:none;background-color:#f4f4f4;cursor:pointer;}#img_container a,#img_container a:link,#img_container a:visited{border:1px solid #ccc;display:block;position:relative;}#img_container a:hover,#img_container a:active{border-color:#000;z-index:1000;border-width:2px;margin:-1px;}#embed-code{width:100%;height:98px;}.wp-hidden-children .wp-hidden-child{display:none;}.category-add input{width:94%;font-family:sans-serif;font-size:12px;margin:1px;}select{width:100%;-x-system-font:none;border-style:solid;border-width:1px;font-family:sans-serif;font-size:12px;height:2em;line-height:20px;padding:2px;margin:1px;vertical-align:top;}.category-add input.category-add-sumbit{width:auto;}.categorydiv div.tabs-panel,#linkcategorydiv div.tabs-panel{height:100px;overflow:auto;padding:.5em .9em;border-style:solid;border-width:1px;}.category-tabs li{display:inline;padding-right:8px;}.category-tabs a{text-decoration:none;}.categorydiv ul,#linkcategorydiv ul{list-style:none;padding:0;margin:0;}.inline-editor ul.cat-checklist ul,.categorydiv ul.categorychecklist ul,#linkcategorydiv ul.categorychecklist ul{margin-left:18px;}ul.categorychecklist li{margin:0;padding:0;line-height:19px;}.categorydiv .tabs-panel{border-width:3px;border-style:solid;}ul.category-tabs{margin-top:12px;margin-bottom:5px;}ul.category-tabs li.tabs{border-style:solid solid none;border-width:1px 1px 0;}ul.category-tabs li{padding:5px 8px;-moz-border-radius:3px 3px 0 0;-webkit-border-top-left-radius:3px;-webkit-border-top-right-radius:3px;-khtml-border-top-left-radius:3px;-khtml-border-top-right-radius:3px;border-top-left-radius:3px;border-top-right-radius:3px;}.screen-reader-text{display:none;}.tagsdiv .newtag{margin-right:5px;}.jaxtag{clear:both;margin:0;}.tagadd{margin-left:3px;}.tagchecklist{margin-top:3px;margin-bottom:1em;font-size:12px;overflow:auto;}.tagchecklist strong{position:absolute;font-size:.75em;}.tagchecklist span{margin-right:.5em;margin-left:10px;display:block;float:left;font-size:12px;line-height:1.8em;white-space:nowrap;cursor:default;}.tagchecklist span a{margin:6px 0 0 -9px;cursor:pointer;width:10px;height:10px;display:block;float:left;text-indent:-9999px;overflow:hidden;position:absolute;}#content{margin:5px 0;padding:0 5px;border:0 none;height:365px;width:97%!important;font-family:Consolas,Monaco,monospace;font-size:13px;line-height:19px;background:transparent;}* html .postdivrich{zoom:1;}#saving{display:inline;vertical-align:middle;}.submit input,.button,.button-primary,.button-secondary,.button-highlighted,#postcustomstuff .submit input{font-family:sans-serif;text-decoration:none;font-size:12px!important;line-height:16px;padding:2px 8px;margin:2px;cursor:pointer;border-width:1px;border-style:solid;-moz-border-radius:11px;-khtml-border-radius:11px;-webkit-border-radius:11px;border-radius:11px;}.button-primary{background:#21759B url(../images/button-grad.png) repeat-x scroll left top;border-color:#21759B;color:#fff;}.ac_results{padding:0;margin:0;list-style:none;position:absolute;z-index:10000;display:none;border-width:1px;border-style:solid;}.ac_results li{padding:2px 5px;white-space:nowrap;text-align:left;}.ac_over{cursor:pointer;}.ac_match{text-decoration:underline;}#TB_ajaxContent #options{position:absolute;top:20px;right:25px;padding:5px;}#TB_ajaxContent h3{margin-bottom:.25em;}.updated{margin:10px 0;padding:0;border-width:1px;border-style:solid;width:99%;}.updated p,.error p{margin:.6em 0;padding:0 .6em;}.error a{text-decoration:underline;}.updated a{text-decoration:none;padding-bottom:2px;}#post_status{margin-left:10px;margin-bottom:1em;display:block;}#footer{height:65px;display:block;width:640px;padding:10px 0 0 60px;margin:0;position:absolute;bottom:0;font-size:12px;}#footer p{margin:0;padding:7px 0;}#footer p a{text-decoration:none;}#footer p a:hover{text-decoration:underline;}.centered{text-align:center;}.hidden{display:none;}.postbox input[type="text"],.postbox textarea,.stuffbox input[type="text"],.stuffbox textarea{border-width:1px;border-style:solid;}.taghint{color:#aaa;margin:-17px 0 0 7px;visibility:hidden;}input.newtag ~ div.taghint{visibility:visible;}input.newtag:focus ~ div.taghint{visibility:hidden;}#mce_fullscreen_container{background:#fff;}
\ No newline at end of file
diff --git a/wp-admin/css/press-this.dev.css b/wp-admin/css/press-this.dev.css
deleted file mode 100644 (file)
index 416227c..0000000
+++ /dev/null
@@ -1,678 +0,0 @@
-body {
-       font-size: 13px;
-       font-family: sans-serif;
-       color: #333;
-       margin: 0;
-       padding: 0;
-       min-width: 675px;
-       min-height: 400px;
-}
-
-img {
-       border: none;
-}
-
-/* Header */
-#wphead {
-       height: 32px;
-       margin-right: 5px;
-       margin-bottom: 5px;
-}
-
-#header-logo {
-       float: left;
-       margin: 7px 7px 0;
-       -webkit-user-select: none;
-       -moz-user-select: none;
-       -khtml-user-select: none;
-       user-select: none;
-}
-
-#wphead h1 {
-       font: normal 16px Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
-       padding: 6px 0 0;
-       margin: 0;
-       float: left;
-}
-
-#wphead h1 a {
-       text-decoration: none;
-}
-#wphead h1 a:hover {
-       text-decoration: underline;
-}
-
-.tagchecklist span a {
-       background: transparent url(../images/xit.gif) no-repeat 0 0;
-}
-
-#edButtonPreview,
-#edButtonHTML {
-       height: 18px;
-       margin: 5px 5px 0 0;
-       padding: 4px 5px 2px;
-       float: right;
-       cursor: pointer;
-       border-width: 1px;
-       border-style: solid;
-       -moz-border-radius: 3px 3px 0 0;
-       -webkit-border-top-right-radius: 3px;
-       -webkit-border-top-left-radius: 3px;
-       -khtml-border-top-right-radius: 3px;
-       -khtml-border-top-left-radius: 3px;
-       border-top-right-radius: 3px;
-       border-top-left-radius: 3px;
-}
-
-#poststuff #edButtonHTML {
-       margin-right: 15px;
-}
-
-#media-buttons {
-       cursor: default;
-       padding: 8px 8px 0;
-}
-
-#media-buttons a {
-       cursor: pointer;
-       padding: 0 0 5px 10px;
-}
-
-#media-buttons img,
-#submitpost #ajax-loading,
-#submitpost .ajax-loading {
-       vertical-align: middle;
-}
-
-.howto {
-       margin-top: 2px;
-       margin-bottom: 3px;
-       font-size: 12px;
-       font-style: italic;
-       display: block;
-}
-
-input.text {
-       outline-color: -moz-use-text-color;
-       outline-style: none;
-       outline-width: medium;
-       width: 100%;
-}
-
-#message {
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;
-}
-
-/* Editor/Main Column */
-div#poststuff {
-       margin: 0 10px 10px;
-}
-
-#poststuff #editor-toolbar {
-       height: 30px;
-}
-
-div.zerosize {
-       border: 0 none;
-       height: 0;
-       margin: 0;
-       overflow: hidden;
-       padding: 0;
-       width: 0;
-}
-
-.posting {
-       margin-right: 212px;
-       position: relative;
-}
-
-#side-info-column {
-       float: right;
-       width: 200px;
-       position: relative;
-       right: 0;
-}
-
-#side-info-column .sleeve {
-       padding-top: 5px;
-}
-
-#poststuff .inside {
-       font-size: 12px;
-       margin: 8px;
-}
-
-#submitdiv .inside {
-       margin: 0;
-}
-
-#submitdiv .inside p {
-       padding: 5px 8px;
-       margin: 0;
-}
-
-#submitdiv #publishing-actions {
-       padding-left: 6px;
-       border-bottom: 1px solid #dfdfdf;
-       -webkit-box-shadow: 0 1px 0 #fff;
-       -moz-box-shadow: 0 1px 0 #fff;
-       box-shadow: 0 1px 0 #fff;
-}
-
-#publish {
-       float: right;
-}
-
-#poststuff h2,#poststuff h3 {
-       font-size: 13px;
-       font-family: Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
-       font-weight: normal;
-       line-height: 1;
-       margin: 0;
-       padding: 7px 9px;
-       border-width: 0 0 1px 0;
-       border-style: solid;
-}
-
-#poststuff h2 {
-       border-color: #dfdfdf;
-}
-
-#tagsdiv-post_tag h3,
-#categorydiv h3 {
-       cursor: pointer;
-}
-
-h3.tb {
-       text-shadow: 0 1px 0 #fff;
-       font-weight: bold;
-       font-size: 12px;
-       margin-left: 5px;
-}
-
-#TB_window {
-       border: 1px solid #333;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;
-}
-
-.postbox,
-.stuffbox {
-       margin-bottom: 10px;
-       border-width: 1px;
-       border-style: solid;
-       line-height: 1;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;
-}
-
-.postbox:hover .handlediv,
-.stuffbox:hover .handlediv {
-       background: transparent url(../images/arrows.png) no-repeat 6px 7px;
-}
-
-.postbox .handlediv {
-       float: right;
-       width: 27px;
-       height: 30px;
-       cursor: pointer;
-}
-
-#title,
-.tbtitle {
-       font-family: sans-serif;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;
-       border-style: solid;
-       border-width: 1px;
-       font-size: 1.7em;
-       outline: none;
-       padding: 3px 4px;
-       border-color: #dfdfdf;
-}
-
-.tbtitle {
-       font-size: 12px;
-       padding: 3px;
-}
-
-#title {
-       width: 97%;
-}
-
-.editor-container {
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;
-       border: 1px solid #ccc;
-       background-color: #fff;
-}
-
-.actions {
-       float: right;
-       margin: -19px 0 0;
-}
-
-#extra-fields .actions {
-       margin: -23px -7px 0 0;
-}
-
-.actions li {
-       float: left;
-       list-style: none;
-       margin-right: 10px;
-}
-
-#extra-fields .button {
-       margin-right: 5px;
-       padding: 3px 6px;
-       border-radius: 10px;
-       -webkit-border-radius: 10px;
-       -khtml-border-radius: 10px;
-       -moz-border-radius: 10px;
-}
-
-/* Photo Styles */
-#photo_saving {
-       margin: 0 8px 8px;
-       vertical-align: middle;
-}
-
-#img_container_container {
-       overflow: auto;
-}
-
-#extra-fields {
-       margin-top: 10px;
-       position: relative;
-}
-
-#waiting {
-       margin-top: 10px;
-}
-
-#extra-fields .postbox {
-       margin-bottom: 5px;
-}
-
-#extra-fields .titlewrap {
-       padding: 0;
-       overflow: auto;
-       height: 100px;
-}
-
-#img_container a {
-       display: block;
-       float: left;
-       overflow: hidden;
-       vertical-align: center;
-}
-
-#img_container img,
-#img_container a {
-       width: 68px;
-       height: 68px;
-}
-
-#img_container img {
-       border: none;
-       background-color: #f4f4f4;
-       cursor: pointer;
-}
-
-#img_container a,
-#img_container a:link,
-#img_container a:visited {
-       border: 1px solid #ccc;
-       display: block;
-       position: relative;
-}
-
-#img_container a:hover,
-#img_container a:active {
-       border-color: #000;
-       z-index: 1000;
-       border-width: 2px;
-       margin: -1px;
-}
-
-/* Video */
-#embed-code {
-       width: 100%;
-       height: 98px;
-}
-
-/* Submit Column */
-.wp-hidden-children
-.wp-hidden-child {
-       display: none;
-}
-
-/* Categories */
-
-.category-add input {
-       width: 94%;
-       font-family: sans-serif;
-       font-size: 12px;
-       margin: 1px;
-}
-
-select {
-       width: 100%;
-       -x-system-font: none;
-       border-style: solid;
-       border-width: 1px;
-       font-family: sans-serif;
-       font-size: 12px;
-       height: 2em;
-       line-height: 20px;
-       padding: 2px;
-       margin: 1px;
-       vertical-align: top;
-}
-
-.category-add input.category-add-sumbit {
-       width: auto;
-}
-
-.categorydiv div.tabs-panel,
-#linkcategorydiv div.tabs-panel {
-       height: 100px;
-       overflow: auto;
-       padding: 0.5em 0.9em;
-       border-style: solid;
-       border-width: 1px;
-}
-
-.category-tabs li {
-       display: inline;
-       padding-right: 8px;
-}
-
-.category-tabs a {
-       text-decoration: none;
-}
-
-.categorydiv ul,
-#linkcategorydiv ul {
-       list-style: none;
-       padding: 0;
-       margin: 0;
-}
-
-.inline-editor ul.cat-checklist ul,
-.categorydiv ul.categorychecklist ul,
-#linkcategorydiv ul.categorychecklist ul {
-       margin-left: 18px;
-}
-
-ul.categorychecklist li {
-       margin: 0;
-       padding: 0;
-       line-height: 19px;
-}
-
-.categorydiv .tabs-panel {
-       border-width: 3px;
-       border-style: solid;
-}
-
-ul.category-tabs {
-       margin-top: 12px;
-       margin-bottom: 5px;
-}
-
-ul.category-tabs li.tabs {
-       border-style: solid solid none;
-       border-width: 1px 1px 0;
-}
-
-ul.category-tabs li {
-       padding: 5px 8px;
-       -moz-border-radius: 3px 3px 0 0;
-       -webkit-border-top-left-radius: 3px;
-       -webkit-border-top-right-radius: 3px;
-       -khtml-border-top-left-radius: 3px;
-       -khtml-border-top-right-radius: 3px;
-       border-top-left-radius: 3px;
-       border-top-right-radius: 3px;
-}
-
-/* Tags */
-.screen-reader-text {
-       display: none;
-}
-
-.tagsdiv .newtag {
-       margin-right: 5px;
-}
-
-.jaxtag {
-       clear: both;
-       margin: 0;
-}
-
-.tagadd {
-       margin-left: 3px;
-}
-
-.tagchecklist {
-       margin-top: 3px;
-       margin-bottom: 1em;
-       font-size: 12px;
-       overflow: auto;
-}
-
-.tagchecklist strong {
-       position: absolute;
-       font-size: .75em;
-}
-
-.tagchecklist span {
-       margin-right: .5em;
-       margin-left: 10px;
-       display: block;
-       float: left;
-       font-size: 12px;
-       line-height: 1.8em;
-       white-space: nowrap;
-       cursor: default;
-}
-
-.tagchecklist span a {
-       margin: 6px 0 0 -9px;
-       cursor: pointer;
-       width: 10px;
-       height: 10px;
-       display: block;
-       float: left;
-       text-indent: -9999px;
-       overflow: hidden;
-       position: absolute;
-}
-
-#content {
-       margin: 5px 0;
-       padding: 0 5px;
-       border: 0 none;
-       height: 365px;
-       width: 97% !important;
-       font-family: Consolas, Monaco, monospace;
-       font-size: 13px;
-       line-height: 19px;
-       background: transparent;
-}
-
-* html .postdivrich {
-       zoom: 1;
-}
-
-/* Submit */
-#saving {
-       display: inline;
-       vertical-align: middle;
-}
-
-.submit input,
-.button,
-.button-primary,
-.button-secondary,
-.button-highlighted,
-#postcustomstuff .submit input {
-       font-family: sans-serif;
-       text-decoration: none;
-       font-size: 12px !important;
-       line-height: 16px;
-       padding: 2px 8px;
-       margin: 2px;
-       cursor: pointer;
-       border-width: 1px;
-       border-style: solid;
-       -moz-border-radius: 11px;
-       -khtml-border-radius: 11px;
-       -webkit-border-radius: 11px;
-       border-radius: 11px;
-}
-
-.button-primary {
-       background: #21759B url(../images/button-grad.png) repeat-x scroll left top;
-       border-color: #21759B;
-       color: #fff;
-}
-
-.ac_results {
-       padding: 0;
-       margin: 0;
-       list-style: none;
-       position: absolute;
-       z-index: 10000;
-       display: none;
-       border-width: 1px;
-       border-style: solid;
-}
-
-.ac_results li {
-       padding: 2px 5px;
-       white-space: nowrap;
-       text-align: left;
-}
-
-.ac_over {
-       cursor: pointer;
-}
-
-.ac_match {
-       text-decoration: underline;
-}
-
-#TB_ajaxContent #options {
-       position: absolute;
-       top: 20px;
-       right: 25px;
-       padding: 5px;
-}
-
-#TB_ajaxContent h3 {
-       margin-bottom: .25em;
-}
-
-.updated {
-       margin: 10px 0;
-       padding: 0;
-       border-width: 1px;
-       border-style: solid;
-       width: 99%;
-}
-
-.updated p,
-.error p {
-       margin: 0.6em 0;
-       padding: 0 0.6em;
-}
-
-.error a {
-       text-decoration: underline;
-}
-
-.updated a {
-       text-decoration: none;
-       padding-bottom: 2px;
-}
-
-#post_status {
-       margin-left: 10px;
-       margin-bottom: 1em;
-       display: block;
-}
-
-/* Footer */
-#footer {
-       height: 65px;
-       display: block;
-       width: 640px;
-       padding: 10px 0 0 60px;
-       margin: 0;
-       position: absolute;
-       bottom: 0;
-       font-size: 12px;
-}
-
-#footer p {
-       margin: 0;
-       padding: 7px 0;
-}
-
-#footer p a {
-       text-decoration: none;
-}
-
-#footer p a:hover {
-       text-decoration: underline;
-}
-
-/* Utility Classes */
-.centered {
-       text-align: center;
-}
-
-.hidden {
-       display: none;
-}
-
-.postbox input[type="text"],
-.postbox textarea,
-.stuffbox input[type="text"],
-.stuffbox textarea {
-       border-width: 1px;
-       border-style: solid;
-}
-
-/* tag hints */
-.taghint {
-       color: #aaa;
-       margin: -17px 0 0 7px;
-       visibility: hidden;
-}
-
-input.newtag ~ div.taghint {
-       visibility: visible;
-}
-
-input.newtag:focus ~ div.taghint {
-       visibility: hidden;
-}
-
-/* TinyMCE */
-#mce_fullscreen_container {
-       background: #fff;
-}
diff --git a/wp-admin/css/theme-editor-rtl.css b/wp-admin/css/theme-editor-rtl.css
deleted file mode 100644 (file)
index 23023df..0000000
+++ /dev/null
@@ -1 +0,0 @@
-#templateside{float: left;}
diff --git a/wp-admin/css/theme-editor-rtl.dev.css b/wp-admin/css/theme-editor-rtl.dev.css
deleted file mode 100644 (file)
index a4dcb46..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-#templateside {
-       float: left;
-}
diff --git a/wp-admin/css/theme-editor.css b/wp-admin/css/theme-editor.css
deleted file mode 100644 (file)
index fe03629..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.alignleft h3{margin:0;}h3 span{font-weight:normal;}#template textarea{font-family:Consolas,Monaco,monospace;font-size:12px;width:97%;background:#f9f9f9;outline:none;}#template p{width:97%;}#templateside{float:right;width:190px;word-wrap:break-word;}#templateside h3,#postcustomstuff p.submit{margin:0;}#templateside h4{margin:1em 0 0;}#templateside ol,#templateside ul{margin:.5em;padding:0;}#templateside li{margin:4px 0;}#templateside ul li a span.highlight{display:block;}.nonessential{font-size:11px;font-style:italic;padding-left:12px;}.highlight{padding:3px 3px 3px 12px;margin-left:-12px;font-weight:bold;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;}div.tablenav{margin-right:210px;}#documentation{margin-top:10px;}#documentation label{line-height:22px;vertical-align:top;font-weight:bold;}.fileedit-sub{padding:10px 0 8px;line-height:180%;}
\ No newline at end of file
diff --git a/wp-admin/css/theme-editor.dev.css b/wp-admin/css/theme-editor.dev.css
deleted file mode 100644 (file)
index b06837b..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-.alignleft h3 {
-       margin: 0;
-}
-
-h3 span {
-       font-weight: normal;
-}
-
-#template textarea {
-       font-family: Consolas, Monaco, monospace;
-       font-size: 12px;
-       width: 97%;
-       background: #f9f9f9;
-       outline: none;
-}
-
-#template p {
-       width: 97%;
-}
-
-#templateside {
-       float: right;
-       width: 190px;
-       word-wrap: break-word;
-}
-
-#templateside h3,
-#postcustomstuff p.submit {
-       margin: 0;
-}
-
-#templateside h4 {
-       margin: 1em 0 0;
-}
-
-#templateside ol,
-#templateside ul {
-       margin: .5em;
-       padding: 0;
-}
-
-#templateside li {
-       margin: 4px 0;
-}
-
-#templateside ul li a span.highlight {
-       display:block;
-}
-
-.nonessential {
-       font-size: 11px;
-       font-style: italic;
-       padding-left: 12px;
-}
-
-.highlight {
-       padding: 3px 3px 3px 12px;
-       margin-left: -12px;
-       font-weight: bold;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;
-}
-
-div.tablenav {
-       margin-right: 210px;
-}
-
-#documentation {
-       margin-top: 10px;
-}
-#documentation label {
-       line-height: 22px;
-       vertical-align: top;
-       font-weight: bold;
-}
-
-.fileedit-sub {
-       padding: 10px 0 8px;
-       line-height: 180%;
-}
diff --git a/wp-admin/css/theme-install-rtl.css b/wp-admin/css/theme-install-rtl.css
deleted file mode 100644 (file)
index 3dd959c..0000000
+++ /dev/null
@@ -1 +0,0 @@
-div.star{left:auto;right:0;}.star img,div.star a,div.star a:hover,div.star a:visited{right:auto;left:0;}.theme-listing .theme-item h3{font-style:normal;}#theme-information .theme-preview-img{float:right;margin:5px 15px 10px 25px;}#theme-information .action-button #cancel{float:right;}#theme-information .action-button #install{float:left;}.feature-filter .feature-group{float:right;}.feature-filter .feature-name{float:right;text-align:left;}.feature-filter .feature-group li{float:right;padding-right:0;padding-left:25px;}
\ No newline at end of file
diff --git a/wp-admin/css/theme-install-rtl.dev.css b/wp-admin/css/theme-install-rtl.dev.css
deleted file mode 100644 (file)
index 1194688..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-div.star {
-       left:auto;
-       right: 0;
-}
-
-.star img, div.star a, div.star a:hover, div.star a:visited {
-       right: auto;
-       left: 0;
-}
-
-.theme-listing .theme-item h3 {
-       font-style: normal;
-}
-
-#theme-information .theme-preview-img {
-       float: right;
-       margin: 5px 15px 10px 25px;
-}
-
-#theme-information .action-button #cancel {
-       float: right;
-}
-
-#theme-information .action-button #install {
-       float: left;
-}
-
-.feature-filter .feature-group {
-       float: right;
-}
-
-.feature-filter .feature-name {
-       float: right;
-       text-align: left;
-}
-
-.feature-filter .feature-group li {
-       float: right;
-       padding-right: 0;
-       padding-left: 25px;
-}
\ No newline at end of file
diff --git a/wp-admin/css/theme-install.css b/wp-admin/css/theme-install.css
deleted file mode 100644 (file)
index e96844e..0000000
+++ /dev/null
@@ -1 +0,0 @@
-div.star-holder{position:relative;height:19px;width:100px;font-size:19px;}div.star{height:100%;position:absolute;top:0;left:0;background-color:transparent;letter-spacing:1ex;border:none;}.star1{width:20%;}.star2{width:40%;}.star3{width:60%;}.star4{width:80%;}.star5{width:100%;}.star img,div.star a,div.star a:hover,div.star a:visited{display:block;position:absolute;right:0;border:none;text-decoration:none;}div.star img{width:19px;height:19px;border-left:1px solid #fff;border-right:1px solid #fff;}.theme-listing .theme-item{display:inline-block;width:200px;border:thin solid #ccc;vertical-align:top;}.theme-listing .theme-item h3{text-align:center;font-size:14px;font-style:italic;margin:0;padding:0;}.theme-listing .theme-item img{max-width:150px;max-height:150px;}.theme-listing .theme-item-info span{display:none;}.theme-listing .theme-item:hover .theme-item-info span{display:inline;}.theme-listing .theme-item:hover .theme-item-info span.dots{display:none;}.theme-listing .theme-item-info span.action-links{font-weight:bold;text-align:center;}.theme-listing br.line{border-bottom-width:1px;border-bottom-style:solid;margin-bottom:3px;}.available-theme{padding:20px 15px;}#theme-information .theme-preview-img{float:left;margin:5px 25px 10px 15px;width:300px;}#theme-information .action-button{border-top-width:1px;border-top-style:solid;margin:10px 5px 0;}#theme-information .action-button #cancel{float:left;margin:10px 15px;}#theme-information .action-button #install{float:right;margin:10px 15px;}#theme-information .available-theme h3{margin:1em 0;}body#theme-information{height:auto;}.feature-filter{-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;border-width:1px;border-style:solid;padding:8px 12px 0;}.feature-filter .feature-group{float:left;margin-bottom:20px;width:725px;}.feature-filter .feature-name{float:left;text-align:right;width:95px;}.feature-filter .feature-group li{display:inline;float:left;list-style-type:none;padding-right:25px;min-width:145px;}.feature-container{width:100%;overflow:auto;margin-bottom:10px;}.feature-group{margin-bottom:0!important;}
\ No newline at end of file
diff --git a/wp-admin/css/theme-install.dev.css b/wp-admin/css/theme-install.dev.css
deleted file mode 100644 (file)
index 70dee71..0000000
+++ /dev/null
@@ -1,155 +0,0 @@
-/* NOTE: the following CSS rules(.star*) are taken more or less straight from the bbPress rating plugin. */
-div.star-holder {
-       position: relative;
-       height: 19px;
-       width: 100px;
-       font-size: 19px;
-}
-
-div.star {
-       height: 100%;
-       position: absolute;
-       top: 0;
-       left: 0;
-       background-color: transparent;
-       letter-spacing: 1ex;
-       border: none;
-}
-
-.star1 { width: 20%; }
-.star2 { width: 40%; }
-.star3 { width: 60%; }
-.star4 { width: 80%; }
-.star5 { width: 100%; }
-
-.star img, div.star a, div.star a:hover, div.star a:visited {
-       display: block;
-       position: absolute;
-       right: 0;
-       border: none;
-       text-decoration: none;
-}
-
-div.star img {
-       width: 19px;
-       height: 19px;
-       border-left: 1px solid #fff;
-       border-right: 1px solid #fff;
-}
-
-.theme-listing .theme-item {
-       display: inline-block;
-       width: 200px;
-       border: thin solid #ccc;
-       vertical-align: top;
-}
-
-.theme-listing .theme-item h3 {
-       text-align: center;
-       font-size: 14px;
-       font-style: italic;
-       margin: 0;
-       padding: 0;
-}
-
-.theme-listing .theme-item img {
-       max-width: 150px;
-       max-height: 150px;
-}
-
-.theme-listing .theme-item-info span {
-       display: none;
-}
-
-.theme-listing .theme-item:hover .theme-item-info span {
-       display: inline;
-}
-
-.theme-listing .theme-item:hover .theme-item-info span.dots {
-       display: none;
-}
-
-.theme-listing .theme-item-info span.action-links {
-       font-weight: bold;
-       text-align: center;
-}
-
-.theme-listing br.line {
-       border-bottom-width: 1px;
-       border-bottom-style: solid;
-       margin-bottom: 3px;
-}
-
-.available-theme {
-       padding: 20px 15px;
-}
-
-#theme-information .theme-preview-img {
-       float: left;
-       margin: 5px 25px 10px 15px;
-       width: 300px;
-}
-
-#theme-information .action-button {
-       border-top-width: 1px;
-       border-top-style: solid;
-       margin: 10px 5px 0;
-}
-
-#theme-information .action-button #cancel {
-       float: left;
-       margin: 10px 15px;
-}
-
-#theme-information .action-button #install {
-       float: right;
-       margin: 10px 15px;
-}
-
-#theme-information .available-theme h3 {
-       margin: 1em 0;
-}
-
-body#theme-information {
-       height: auto;
-}
-
-.feature-filter {
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;
-       border-width: 1px;
-       border-style: solid;
-       padding: 8px 12px 0;
-}
-
-.feature-filter .feature-group {
-       float: left;
-       margin-bottom: 20px;
-       width: 725px;
-}
-
-.feature-filter .feature-name {
-       float: left;
-       text-align: right;
-       width: 95px;
-}
-
-.feature-filter .feature-group li {
-       display: inline;
-       float: left;
-       list-style-type: none;
-       padding-right: 25px;
-       min-width: 145px;
-}
-
-.feature-container {
-width: 100%;
-overflow: auto;
-margin-bottom: 10px;
-}
-
-.feature-group {
-       margin-bottom: 0px !important;
-}
\ No newline at end of file
diff --git a/wp-admin/css/widgets-rtl.css b/wp-admin/css/widgets-rtl.css
deleted file mode 100644 (file)
index 1f8b2a5..0000000
+++ /dev/null
@@ -1 +0,0 @@
-div.widget-liquid-left{float:right;clear:right;margin-right:0;margin-left:-325px;}div#widgets-left{margin-right:5px;margin-left:325px;}div.widget-liquid-right{float:left;clear:left;}#wp_inactive_widgets .widget{float:right;}div.sidebar-name h3{font-family:Tahoma,Arial,sans-serif;}#widget-list .widget{float:right;}#wp_inactive_widgets .widget-placeholder{float:right;}.widget-top .widget-title-action{float:left;}.widget-control-edit{padding:0 0 0 8px;}.sidebar-name-arrow{float:left;}
\ No newline at end of file
diff --git a/wp-admin/css/widgets-rtl.dev.css b/wp-admin/css/widgets-rtl.dev.css
deleted file mode 100644 (file)
index 672f669..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-/* 2 column liquid layout */
-div.widget-liquid-left {
-       float: right;
-       clear: right;
-       margin-right: 0;
-       margin-left: -325px;
-}
-
-div#widgets-left {
-       margin-right: 5px;
-       margin-left: 325px;
-}
-
-div.widget-liquid-right {
-       float: left;
-       clear: left;
-}
-
-#wp_inactive_widgets .widget {
-       float: right;
-}
-
-div.sidebar-name h3 {
-       font-family: Tahoma, Arial, sans-serif;
-}
-
-#widget-list .widget {
-       float: right;
-}
-
-#wp_inactive_widgets .widget-placeholder {
-       float: right;
-}
-
-.widget-top .widget-title-action {
-       float: left;
-}
-
-.widget-control-edit {
-       padding: 0 0 0 8px;
-}
-
-
-.sidebar-name-arrow {
-       float: left;
-}
-
diff --git a/wp-admin/css/widgets.css b/wp-admin/css/widgets.css
deleted file mode 100644 (file)
index 729bcaf..0000000
+++ /dev/null
@@ -1 +0,0 @@
-html,body{min-width:950px;}div.widget-liquid-left{float:left;clear:left;width:100%;margin-right:-325px;}div#widgets-left{margin-left:5px;margin-right:325px;}div#widgets-right{width:285px;margin:0 auto;}div.widget-liquid-right{float:right;clear:right;width:300px;}.widget-liquid-right .widget,#wp_inactive_widgets .widget,.widget-liquid-right .sidebar-description{width:250px;margin:0 auto 20px;overflow:hidden;}.widget-liquid-right .sidebar-description{margin-bottom:10px;}#wp_inactive_widgets .widget{margin:0 10px 20px;float:left;}div.sidebar-name h3{font-family:Georgia,"Times New Roman","Bitstream Charter",Times,serif;font-weight:normal;font-size:15px;margin:0;padding:8px 10px;overflow:hidden;white-space:nowrap;}div.sidebar-name{cursor:pointer;font-size:13px;border-width:1px;border-style:solid;-moz-border-radius-topleft:3px;-moz-border-radius-topright:3px;-webkit-border-top-right-radius:3px;-webkit-border-top-left-radius:3px;-khtml-border-top-right-radius:3px;-khtml-border-top-left-radius:3px;border-top-right-radius:3px;border-top-left-radius:3px;}.js .closed .sidebar-name{-moz-border-radius-bottomleft:3px;-moz-border-radius-bottomright:3px;-webkit-border-bottom-right-radius:3px;-webkit-border-bottom-left-radius:3px;-khtml-border-bottom-right-radius:3px;-khtml-border-bottom-left-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;}.widget-liquid-right .widgets-sortables,#widgets-left .widget-holder{border-width:0 1px 1px;border-style:none solid solid;-moz-border-radius-bottomleft:3px;-moz-border-radius-bottomright:3px;-webkit-border-bottom-right-radius:3px;-webkit-border-bottom-left-radius:3px;-khtml-border-bottom-right-radius:3px;-khtml-border-bottom-left-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;}.js .closed .widgets-sortables,.js .closed .widget-holder{display:none;}.widget-liquid-right .widgets-sortables{padding:15px 0 0;}#available-widgets .widget-holder{padding:7px 5px 0;}#available-widgets .widget{-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;}#wp_inactive_widgets{padding:5px 5px 0;}#widget-list .widget{width:250px;margin:0 10px 15px;border:0 none;background:transparent;float:left;}#widget-list .widget-description{padding:5px 8px;}#widget-list .widget-top{border-width:1px;border-style:solid;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;}.widget-placeholder{border-width:1px;border-style:dashed;margin:0 auto 20px;height:26px;width:250px;}#wp_inactive_widgets .widget-placeholder{margin:0 10px 20px;float:left;}div.widgets-holder-wrap{padding:0;margin:10px 0 20px;}#widgets-left #available-widgets{background-color:transparent;border:0 none;}ul#widget-list{list-style:none;margin:0;padding:0;min-height:100px;}.widget .widget-top{margin-bottom:-1px;font-size:12px;font-weight:bold;height:26px;overflow:hidden;}.widget-top .widget-title{padding:7px 9px;}.widget-top .widget-title-action{float:right;}a.widget-action{display:block;width:24px;height:26px;}#available-widgets a.widget-action{display:none;}.widget-top a.widget-action{background:transparent url(../images/arrows.png) no-repeat 4px 6px;}.widget-top a.widget-action:hover{background:transparent url(../images/arrows-dark.png) no-repeat 4px 6px;}.widget .widget-inside,.widget .widget-description{padding:12px 12px 10px;font-size:12px;line-height:16px;}.widget-inside,.widget-description{display:none;}#available-widgets .widget-description{display:block;}.widget .widget-inside p{margin:0 0 1em;padding:0;}.widget-title h4{margin:0;line-height:1;overflow:hidden;white-space:nowrap;}.widgets-sortables{min-height:90px;}.widget-control-actions{margin-top:8px;}.widget-control-actions a{text-decoration:none;}.widget-control-actions a:hover{text-decoration:underline;}.widget-control-actions .ajax-feedback{padding-bottom:3px;}.widget-control-actions div.alignleft{margin-top:6px;}div#sidebar-info{padding:0 1em;margin-bottom:1em;font-size:12px;}.widget-title a,.widget-title a:hover{text-decoration:none;border-bottom:none;}.widget-control-edit{display:block;font-size:12px;font-weight:normal;line-height:26px;padding:0 8px 0 0;}a.widget-control-edit{text-decoration:none;}.widget-control-edit .add,.widget-control-edit .edit{display:none;}#available-widgets .widget-control-edit .add,#widgets-right .widget-control-edit .edit,#wp_inactive_widgets .widget-control-edit .edit{display:inline;}.editwidget{margin:0 auto 15px;}.editwidget .widget-inside{display:block;border-width:1px;border-style:solid;padding:10px;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;}.inactive p.description{margin:5px 15px 8px;}#available-widgets p.description{margin:0 12px 12px;}.widget-position{margin-top:8px;}.inactive{padding-top:2px;}.sidebar-name-arrow{float:right;height:29px;width:26px;}.widget-title .in-widget-title{font-size:12px;white-space:nowrap;}#removing-widget{display:none;font-weight:normal;padding-left:15px;font-size:12px;line-height:1;}.widget-control-noform,#access-off,.widgets_access .widget-action,.widgets_access .sidebar-name-arrow,.widgets_access #access-on,.widgets_access .widget-holder .description{display:none;}.widgets_access .widget-holder,.widgets_access #widget-list{padding-top:10px;}.widgets_access #access-off{display:inline;}.widgets_access #wpbody-content .widget-title-action,.widgets_access #wpbody-content .widget-control-edit,.widgets_access .closed .widgets-sortables,.widgets_access .closed .widget-holder{display:block;}.widgets_access .closed .sidebar-name{-moz-border-radius-bottomleft:0;-moz-border-radius-bottomright:0;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-khtml-border-bottom-right-radius:0;-khtml-border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom-left-radius:0;}.widgets_access .sidebar-name,.widgets_access .widget .widget-top{cursor:default;}
\ No newline at end of file
diff --git a/wp-admin/css/widgets.dev.css b/wp-admin/css/widgets.dev.css
deleted file mode 100644 (file)
index 8b4736f..0000000
+++ /dev/null
@@ -1,382 +0,0 @@
-html,
-body {
-       min-width: 950px;
-}
-
-/* 2 column liquid layout */
-div.widget-liquid-left {
-       float: left;
-       clear: left;
-       width: 100%;
-       margin-right: -325px;
-}
-
-div#widgets-left {
-       margin-left: 5px;
-       margin-right: 325px;
-}
-
-div#widgets-right {
-       width: 285px;
-       margin: 0 auto;
-}
-
-div.widget-liquid-right {
-       float: right;
-       clear: right;
-       width: 300px;
-}
-
-.widget-liquid-right .widget,
-#wp_inactive_widgets .widget,
-.widget-liquid-right .sidebar-description {
-       width: 250px;
-       margin: 0 auto 20px;
-       overflow: hidden;
-}
-
-.widget-liquid-right .sidebar-description {
-       margin-bottom: 10px;
-}
-
-#wp_inactive_widgets .widget {
-       margin: 0 10px 20px;
-       float: left;
-}
-
-div.sidebar-name h3 {
-       font-family: Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
-       font-weight: normal;
-       font-size: 15px;
-       margin: 0;
-       padding: 8px 10px;
-       overflow: hidden;
-       white-space: nowrap;
-}
-
-div.sidebar-name {
-       cursor: pointer;
-       font-size: 13px;
-       border-width: 1px;
-       border-style: solid;
-       -moz-border-radius-topleft: 3px;
-       -moz-border-radius-topright: 3px;
-       -webkit-border-top-right-radius: 3px;
-       -webkit-border-top-left-radius: 3px;
-       -khtml-border-top-right-radius: 3px;
-       -khtml-border-top-left-radius: 3px;
-       border-top-right-radius: 3px;
-       border-top-left-radius: 3px;
-}
-
-.js .closed .sidebar-name {
-       -moz-border-radius-bottomleft: 3px;
-       -moz-border-radius-bottomright: 3px;
-       -webkit-border-bottom-right-radius: 3px;
-       -webkit-border-bottom-left-radius: 3px;
-       -khtml-border-bottom-right-radius: 3px;
-       -khtml-border-bottom-left-radius: 3px;
-       border-bottom-right-radius: 3px;
-       border-bottom-left-radius: 3px;
-}
-
-.widget-liquid-right .widgets-sortables,
-#widgets-left .widget-holder {
-       border-width: 0 1px 1px;
-       border-style: none solid solid;
-    -moz-border-radius-bottomleft: 3px;
-       -moz-border-radius-bottomright: 3px;
-       -webkit-border-bottom-right-radius: 3px;
-       -webkit-border-bottom-left-radius: 3px;
-       -khtml-border-bottom-right-radius: 3px;
-       -khtml-border-bottom-left-radius: 3px;
-       border-bottom-right-radius: 3px;
-       border-bottom-left-radius: 3px;
-}
-
-.js .closed .widgets-sortables,
-.js .closed .widget-holder {
-       display: none;
-}
-
-.widget-liquid-right .widgets-sortables {
-       padding: 15px 0 0;
-}
-
-#available-widgets .widget-holder {
-       padding: 7px 5px 0;
-}
-
-#available-widgets .widget {
-       -moz-box-shadow: none;
-       -webkit-box-shadow: none;
-       box-shadow: none;
-}
-
-#wp_inactive_widgets {
-       padding: 5px 5px 0;
-}
-
-#widget-list .widget {
-       width: 250px;
-       margin: 0 10px 15px;
-       border: 0 none;
-       background: transparent;
-       float: left;
-}
-
-#widget-list .widget-description {
-       padding: 5px 8px;
-}
-
-#widget-list .widget-top {
-       border-width: 1px;
-       border-style: solid;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;
-}
-
-.widget-placeholder {
-       border-width: 1px;
-       border-style: dashed;
-       margin: 0 auto 20px;
-       height: 26px;
-       width: 250px;
-}
-
-#wp_inactive_widgets .widget-placeholder {
-       margin: 0 10px 20px;
-       float: left;
-}
-
-div.widgets-holder-wrap {
-       padding: 0;
-       margin: 10px 0 20px;
-}
-
-#widgets-left #available-widgets {
-       background-color: transparent;
-       border: 0 none;
-}
-
-ul#widget-list {
-       list-style: none;
-       margin: 0;
-       padding: 0;
-       min-height: 100px;
-}
-
-.widget .widget-top {
-       margin-bottom: -1px;
-       font-size: 12px;
-       font-weight: bold;
-       height: 26px;
-       overflow: hidden;
-}
-
-.widget-top .widget-title {
-       padding: 7px 9px;
-}
-
-.widget-top .widget-title-action {
-       float: right;
-}
-
-a.widget-action {
-       display: block;
-       width: 24px;
-       height: 26px;
-}
-
-#available-widgets a.widget-action {
-       display: none;
-}
-
-.widget-top a.widget-action {
-       background: transparent url(../images/arrows.png) no-repeat 4px 6px;
-}
-
-.widget-top a.widget-action:hover {
-       background: transparent url(../images/arrows-dark.png) no-repeat 4px 6px;
-}
-
-.widget .widget-inside,
-.widget .widget-description {
-       padding: 12px 12px 10px;
-       font-size: 12px;
-       line-height: 16px;
-}
-
-.widget-inside,
-.widget-description {
-       display: none;
-}
-
-#available-widgets .widget-description {
-       display: block;
-}
-
-.widget .widget-inside p {
-       margin: 0 0 1em;
-       padding: 0;
-}
-
-.widget-title h4 {
-       margin: 0;
-       line-height: 1;
-       overflow: hidden;
-       white-space: nowrap;
-}
-
-.widgets-sortables {
-       min-height: 90px;
-}
-
-.widget-control-actions {
-       margin-top: 8px;
-}
-
-.widget-control-actions a {
-       text-decoration: none;
-}
-
-.widget-control-actions a:hover {
-       text-decoration: underline;
-}
-
-.widget-control-actions .ajax-feedback {
-       padding-bottom: 3px;
-}
-
-.widget-control-actions div.alignleft {
-       margin-top: 6px;
-}
-
-div#sidebar-info {
-       padding: 0 1em;
-       margin-bottom: 1em;
-       font-size: 12px;
-}
-
-.widget-title a,
-.widget-title a:hover {
-       text-decoration: none;
-       border-bottom: none;
-}
-
-.widget-control-edit {
-       display: block;
-       font-size: 12px;
-       font-weight: normal;
-       line-height: 26px;
-       padding: 0 8px 0 0;
-}
-
-a.widget-control-edit {
-       text-decoration: none;
-}
-
-.widget-control-edit .add,
-.widget-control-edit .edit {
-       display: none;
-}
-
-#available-widgets .widget-control-edit .add,
-#widgets-right .widget-control-edit .edit,
-#wp_inactive_widgets .widget-control-edit .edit {
-       display: inline;
-}
-
-.editwidget {
-       margin: 0 auto 15px;
-}
-
-.editwidget .widget-inside {
-       display: block;
-       border-width: 1px;
-       border-style: solid;
-       padding: 10px;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;
-}
-
-.inactive p.description {
-       margin: 5px 15px 8px;
-}
-
-#available-widgets p.description {
-       margin: 0 12px 12px;
-}
-
-.widget-position {
-       margin-top: 8px;
-}
-
-.inactive {
-       padding-top: 2px;
-}
-
-.sidebar-name-arrow {
-       float: right;
-       height: 29px;
-       width: 26px;
-}
-
-.widget-title .in-widget-title {
-       font-size: 12px;
-       white-space: nowrap;
-}
-
-#removing-widget {
-       display: none;
-       font-weight: normal;
-       padding-left: 15px;
-       font-size: 12px;
-       line-height: 1;
-}
-
-.widget-control-noform,
-#access-off,
-.widgets_access .widget-action,
-.widgets_access .sidebar-name-arrow,
-.widgets_access #access-on,
-.widgets_access .widget-holder .description {
-       display: none;
-}
-
-.widgets_access .widget-holder,
-.widgets_access #widget-list {
-       padding-top: 10px;
-}
-
-.widgets_access #access-off {
-       display: inline;
-}
-
-.widgets_access #wpbody-content .widget-title-action,
-.widgets_access #wpbody-content .widget-control-edit,
-.widgets_access .closed .widgets-sortables,
-.widgets_access .closed .widget-holder {
-       display: block;
-}
-
-.widgets_access .closed .sidebar-name {
-       -moz-border-radius-bottomleft: 0;
-       -moz-border-radius-bottomright: 0;
-       -webkit-border-bottom-right-radius: 0;
-       -webkit-border-bottom-left-radius: 0;
-       -khtml-border-bottom-right-radius: 0;
-       -khtml-border-bottom-left-radius: 0;
-       border-bottom-right-radius: 0;
-       border-bottom-left-radius: 0;
-}
-
-.widgets_access .sidebar-name,
-.widgets_access .widget .widget-top {
-       cursor: default;
-}
-
index f9ea458b2684390b71e83af39a88e7d006b042f2..c00bcec3746c1b431709f524fd8dab6c4120a9b3 100644 (file)
@@ -1 +1 @@
-ol{margin-left:0;margin-right:2em;}.code,code{font-family:Tahoma,Arial,sans-serif;}.quicktags,.search{font:12px Tahoma,Arial,sans-serif;}.icon32{float:right;margin:7px 0 0 8px;}.howto{font-style:normal;font-family:Tahoma,Arial,sans-serif;}p.install-help{font-style:normal;}#doaction,#doaction2,#post-query-submit{margin-right:0;margin-left:8px;}#timezone_string option{margin-left:0;margin-right:1em;}#pass-strength-result{float:right;margin:13px 1px 5px 5px;}p.search-box{float:left;}#delete-action{text-align:right;float:right;}#publishing-action{text-align:left;float:left;}#post-body .misc-pub-section{border-right:0;border-left-width:1px;border-left-style:solid;float:right;}#post-body .misc-pub-section-last{border-left:0;}#minor-publishing-actions{padding:10px 8px 2px 10px;text-align:left;}#save-post{float:right;}#minor-publishing .ajax-loading{padding:3px 4px 0 0;float:right;}.preview{float:left;}#sticky-span{margin-left:0;margin-right:18px;}.side-info ul{padding-left:0;padding-right:18px;}td.action-links,th.action-links{text-align:left;}.describe .del-link{padding-left:0;padding-right:5px;}.plugin-update .update-message{margin:0 31px 8px 10px;}form.upgrade .hint{font-style:normal;}#ajax-response.alignleft{margin-left:0;margin-right:2em;}#quicktags{background-position:right top;}#ed_reply_toolbar input{margin:1px 1px 1px 2px;}#wp-fullscreen-body{right:0;left:auto;}#wp-fullscreen-tagline{float:left;}#fullscreen-topbar{left:auto;right:0;}#wp-fullscreen-mode-bar,#wp-fullscreen-button-bar,#wp-fullscreen-close,#wp-fullscreen-count{float:right;}#wp-fullscreen-save{float:left;}#wp-fullscreen-save{padding:2px 5px 0 2px;}#wp-fullscreen-buttons>div{float:right;}#wp-fullscreen-mode-bar{padding:1px 0 0 14px;}#wp-fullscreen-modes a{float:right;border-width:1px 0 1px 1px;}#wp-fullscreen-modes a:first-child{border-width:1px;-moz-border-radius:3px 3px 0 0;-webkit-border-top-left-radius:0;-webkit-border-top-right-radius:3px;-webkit-border-bottom-left-radius:0;-webkit-border-bottom-right-radius:3px;-khtml-border-top-left-radius:0;-khtml-border-top-right-radius:3px;-khtml-border-bottom-left-radius:0;-khtml-border-bottom-right-radius:3px;border-top-left-radius:0;border-top-right-radius:3px;border-bottom-right-left:0;border-bottom-right-radius:3px;}#wp-fullscreen-modes a:last-child{-moz-border-radius:0 0 3px 3px;-webkit-border-top-right-radius:0;-webkit-border-top-left-radius:3px;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:3px;-khtml-border-top-right-radius:0;-khtml-border-top-left-radius:3px;-khtml-border-bottom-right-radius:0;-khtml-border-bottom-left-radius:3px;border-top-right-radius:0;border-top-left-radius:3px;border-bottom-right-radius:0;border-bottom-left-radius:3px;}#wp-fullscreen-save img,#wp-fullscreen-save span{padding-right:0;padding-left:4px;}#wphead-info{margin:0 15px 0 0;}#user_info{float:left;padding:0 6px 0 2px;}#user_info.active{margin-right:0;margin-left:-1px;}#user_info .hide-if-no-js p{margin:0 0 0 20px;}#user_info_arrow{right:auto;left:3px;}#user_info_links_wrap{right:auto;left:0;}#wphead{height:32px;margin-left:15px;margin-right:2px;}#header-logo{float:right;}#wphead h1{font:Tahoma,Arial,sans-serif;float:right;}#favorite-actions{margin:0 15px 0 12px;}#favorite-first a{padding:2px 12px 2px 0;}#favorite-inside a{padding:3px 10px 3px 5px;}#favorite-toggle{right:auto;left:0;}#screen-meta-links{margin:0 0 0 19px;}#screen-meta .screen-reader-text{visibility:hidden;}#screen-options-link-wrap,#contextual-help-link-wrap{float:left;margin:0 6px 0 0;font-family:Tahoma,Arial,sans-serif;}#contextual-help-wrap li{list-style-type:disc;margin-left:auto;margin-right:18px;}.toggle-arrow{background-position:top right;}.toggle-arrow-active{background-position:bottom right;}#screen-meta a.show-settings{padding:0 6px 0 16px;}#screen-options-wrap,#contextual-help-wrap{margin:0 0 0 15px;}.metabox-prefs label{padding-right:auto;padding-left:15px;}.metabox-prefs label input{margin:0 2px 0 5px;}#adminmenushadow{right:auto;left:0;}#adminmenu div.wp-menu-image{float:right;}#adminmenu .wp-submenu a{padding-left:0;padding-right:12px;}#adminmenu li.wp-has-current-submenu .wp-menu-arrow,#adminmenu li.menu-top.current .wp-menu-arrow{right:auto;left:-9px;}#adminmenu .wp-menu-arrow div{background:url(../images/menu-arrow-frame-rtl.png) top left no-repeat;}#adminmenu .wp-menu-image img{float:right;}.js.folded #adminmenu .wp-submenu{display:block;left:auto;right:26px;}.js.folded #adminmenu .wp-submenu.sub-open{padding:0 0 8px 8px;}#adminmenu .wp-submenu .wp-submenu-head{padding:6px 10px 5px 4px;}.js.folded #adminmenu .wp-submenu-wrap{-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:3px;-webkit-border-top-right-radius:0;-webkit-border-top-left-radius:3px;-khtml-border-bottom-right-radius:0;-khtml-border-bottom-left-radius:3px;-khtml-border-top-left-radius:0;-khtml-border-top-left-radius:3px;-moz-border-radius-bottomright:0;-moz-border-radius-bottomleft:3px;-moz-border-radius-topright:0;-moz-border-radius-topleft:3px;border-bottom-right-radius:0;border-bottom-left-radius:3px;border-top-right-radius:0;border-top-left-radius:3px;border-width:0 0 1px 1px;}.js.folded #adminmenu .wp-submenu ul{border-width:0 1px 0 0;}.js.folded #adminmenu .wp-submenu a{padding-left:0;padding-right:10px;}.js.folded #adminmenu a.wp-has-submenu{margin-left:0;margin-right:40px;}#adminmenu .wp-menu-toggle{clear:left;float:left;padding:1px 0 0 2px;}#adminmenu .wp-menu-image img{padding:6px 1px 0 0;}#adminmenu .awaiting-mod,#adminmenu span.update-plugins,#sidemenu li a span.update-plugins{font-family:Tahoma,Arial,sans-serif;margin-left:0;margin-right:7px;}.post-com-count-wrapper{font-family:Tahoma,Arial,sans-serif;}.column-response .post-com-count{float:right;margin-right:0;margin-left:5px;}.response-links{float:right;}#collapse-button{float:right;}.widefat th{font-family:Tahoma,Arial,sans-serif;}.widefat td p{margin:2px 0 .8em;}.postbox-container{float:right;padding-right:0;padding-left:.5%;}.postbox .handlediv{float:left;}#the-comment-list p.comment-author img{float:right;margin-right:0;margin-left:8px;}.fixed .column-comments{text-align:right;}.fixed .column-comments .vers{padding-left:0;padding-right:3px;}.fixed .column-comments a{float:right;}.sorting-indicator{margin-left:0;margin-right:7px;}th.sortable a span,th.sorted a span{float:right;}.tablenav-pages a{margin-right:0;margin-left:1px;}.tablenav-pages .next-page{margin-left:0;margin-right:2px;}.tablenav a.button-secondary{margin:3px 0 0 8px;}.tablenav .tablenav-pages{float:left;}.tablenav .displaying-num{margin-right:0;margin-left:10px;font-family:Tahoma,Arial,sans-serif;font-style:bold;}.tablenav .actions{padding:2px 0 0 8px;}.tablenav .delete{margin-right:0;margin-left:20px;}.view-switch{float:left;}.filter{float:right;margin:-5px 10px 0 0;}.filter .subsubsub{margin-left:0;margin-right:-10px;}#posts-filter fieldset{float:right;margin:0 0 1em 1.5ex;}#posts-filter fieldset legend{padding:0 1px .2em 0;}#wpbody-content .inline-edit-row fieldset{float:right;}#wpbody-content .quick-edit-row-page fieldset.inline-edit-col-right .inline-edit-col{border-width:0 1px 0 0;}#wpbody-content .bulk-edit-row .inline-edit-col-bottom{float:left;}.inline-edit-row fieldset label span.title{float:right;}.inline-edit-row fieldset label span.input-text-wrap{margin-left:0;margin-right:5em;}.quick-edit-row-post fieldset.inline-edit-col-right label span.title{padding-right:0;padding-left:.5em;}#wpbody-content .quick-edit-row fieldset .inline-edit-group label.alignleft:first-child{margin-right:0;margin-left:.5em;}.inline-edit-row fieldset span.title,.inline-edit-row fieldset span.checkbox-title{font-family:Tahoma,Arial,sans-serif;font-style:normal;}.inline-edit-row fieldset .inline-edit-date{float:right;}.inline-edit-row fieldset ul.cat-checklist label,.inline-edit-row .catshow,.inline-edit-row .cathide,.inline-edit-row #bulk-titles div{font-family:Tahoma,Arial,sans-serif;}.quick-edit-row-post fieldset label.inline-edit-status{float:right;}#bulk-titles div a{float:right;margin:3px -2px 0 3px;overflow:hidden;text-indent:-9999px;}#titlediv #title-prompt-text,#wp-fullscreen-title-prompt-text{right:0;}#sample-permalink{direction:ltr;}#sample-permalink #editable-post-name{unicode-bidi:embed;}#wp-fullscreen-title-prompt-text{left:auto;right:0;}.postarea h3 label{float:right;}.postarea #add-media-button{float:left;right:auto;left:10px;}#edButtonPreview,#edButtonHTML{margin:5px 0 0 5px;float:left;}#poststuff #edButtonHTML{margin-right:0;margin-left:15px;}#media-buttons a{padding:0 10px 5px 0;}.submitbox .submit{text-align:right;}.inside-submitbox #post_status{margin:2px -2px 2px 0;}.submitbox .submit input{margin-right:0;margin-left:4px;}#normal-sortables .postbox .submit{float:left;}#post-body ul.category-tabs,#post-body ul.add-menu-item-tabs{float:right;text-align:left;margin:0 5px 0 -120px;}#post-body ul.category-tabs li.tabs,#post-body ul.add-menu-item-tabs li.tabs{-moz-border-radius:3px 3px 0 0;-webkit-border-top-left-radius:0;-webkit-border-top-right-radius:3px;-webkit-border-bottom-left-radius:0;-webkit-border-bottom-right-radius:3px;-khtml-border-top-left-radius:0;-khtml-border-top-right-radius:3px;-khtml-border-bottom-left-radius:0;-khtml-border-bottom-right-radius:3px;border-top-left-radius:0;border-top-right-radius:3px;border-bottom-left-radius:0;border-bottom-right-radius:3px;}#post-body .categorydiv div.tabs-panel,.taxonomy div.tabs-panel,#post-body #linkcategorydiv div.tabs-panel{margin:0 125px 0 5px;}#side-sortables .comments-box thead th,#normal-sortables .comments-box thead th{font-style:normal;}#commentsdiv img.waiting{padding-left:0;padding-right:5px;}#post-body .category-tabs li.tabs,#post-body .add-menu-item-tabs li.tabs{border-width:1px 1px 1px 0;margin-right:0;margin-left:-1px;}#posts-filter fieldset{float:right;margin:0 0 1em 1.5ex;}#posts-filter fieldset legend{padding:0 1px .2em 0;}#post-body .tagsdiv #newtag{margin-right:0;margin-left:5px;}.autosave-info{padding:2px 2px 2px 15px;text-align:left;}#post-body .wp_themeSkin .mceStatusbar a.mceResize{background:transparent url(../images/resize-rtl.gif) no-repeat scroll left bottom;cursor:sw-resize;}.curtime #timestamp{background-position:right top;padding-left:0;padding-right:18px;}#postcustomstuff table input,#postcustomstuff table select,#postcustomstuff table textarea{margin:8px 8px 8px 0;}table.diff td,table.diff th{font-family:Consolas,Monaco,monospace;}.category-adder{margin-left:0;margin-right:120px;}#post-body ul.category-tabs,#post-body ul.add-menu-item-tabs{float:right;text-align:left;margin:0 5px 0 -120px;}#post-body ul.category-tabs li.tabs,#post-body ul.add-menu-item-tabs li.tabs{-moz-border-radius:3px 3px 0 0;-webkit-border-top-left-radius:0;-webkit-border-top-right-radius:3px;-webkit-border-bottom-left-radius:0;-webkit-border-bottom-right-radius:3px;-khtml-border-top-left-radius:0;-khtml-border-top-right-radius:3px;-khtml-border-bottom-left-radius:0;-khtml-border-bottom-right-radius:3px;border-top-left-radius:0;border-top-right-radius:3px;border-bottom-left-radius:0;border-bottom-right-radius:3px;}#front-page-warning,#front-static-pages ul,ul.export-filters,.inline-editor ul.cat-checklist ul,.categorydiv ul.categorychecklist ul,.customlinkdiv ul.categorychecklist ul,.posttypediv ul.categorychecklist ul,.taxonomydiv ul.categorychecklist ul,#linkcategorydiv ul.categorychecklist ul{margin-left:0;margin-right:18px;}#post-body .category-tabs li.tabs,#post-body .add-menu-item-tabs li.tabs{border-style:solid solid solid none;border-width:1px 1px 1px 0;margin-right:0;margin-left:-1px;}p.help,p.description,span.description,.form-wrap p{font-style:normal;font-family:Tahoma,Arial,sans-serif;}.taghint{margin:15px 12px -24px 0;}#poststuff .tagsdiv .howto{margin:0 8px 6px 0;}.ac_results li{text-align:right;}#wpbody-content .describe th{text-align:right;}.describe .media-item-info .A1B1{padding:0 10px 0 0;}.media-upload-form td label{margin-left:6px;margin-right:2px;}.media-upload-form .align .field label{padding:0 22px 0 0;margin:0 0 0 1em;}.media-upload-form tr.image-size label{margin:0 3px 0 0;}#wpbody-content .describe p.help{padding:0 5px 0 0;}.media-item .error-div a.dismiss,.describe-toggle-on,.describe-toggle-off{float:left;margin-right:0;margin-left:20px;}.media-item .error-div{padding-left:0;padding-right:10px;}.media-item .pinkynail{float:right;}.crunching{text-align:left;margin-right:0;margin-left:5px;}.bar{border-right-width:0;border-left-width:3px;border-right-style:none;border-left-style:solid;}#find-posts-response .found-radio{padding:5px 8px 0 0;}.find-box-search label{padding-right:0;padding-left:6px;}.find-box #resize-se{right:auto;left:1px;}form.upgrade .hint{font-style:normal;}.imgedit-menu div{float:right;}.imgedit-help{font-style:normal;}.imgedit-submit-btn{margin-left:0;margin-right:20px;}.form-table th{text-align:right;}.form-table input.tog{margin-right:0;margin-left:2px;float:right;}.form-table table.color-palette{float:right;}#replysubmit img.waiting,.inline-edit-save img.waiting{float:left;}#replysubmit .button{margin-right:0;margin-left:5px;}#edithead .inside{float:right;padding:3px 5px 2px 0;}.comment-ays th{border-right-style:none;border-left-style:solid;border-right-width:0;border-left-width:1px;}.spam-undo-inside .avatar,.trash-undo-inside .avatar{margin-left:8px;}#comment-status-radio input{margin:2px 0 5px 3px;}td.available-theme{text-align:right;}#current-theme img{float:right;margin-right:0;margin-left:1em;}#broken-themes{text-align:right;}.appearance_page_custom-header .available-headers .default-header{float:right;margin:0 0 20px 20px;}.appearance_page_custom-header .random-header{margin:0 0 20px 20px;}.appearance_page_custom-header .available-headers label input,.appearance_page_custom-header .random-header label input{margin-right:0;margin-left:10px;}.nav-tab{margin:0 0 -1px 6px;}h2 .nav-tab{font-family:Tahoma,Arial,sans-serif;}.plugins .desc ul,.plugins .desc ol{margin:0 2em 0 0;}#wpbody-content .plugins .plugin-title,#wpbody-content .plugins .theme-title{padding-right:0;padding-left:12px;}#profile-page .form-table #rich_editing{margin-right:0;margin-left:5px;}#your-profile legend{font-family:Tahoma,Arial,sans-serif;}#utc-time,#local-time{padding-left:0;padding-right:25px;font-style:normal;font-family:Tahoma,Arial,sans-serif;}#footer{margin-right:0;margin-left:15px;}#template div{margin-right:0;margin-left:190px;}.column-author img,.column-username img{float:right;margin-right:0;margin-left:10px;}.tagchecklist{margin-left:0;margin-right:14px;}.tagchecklist strong{margin-left:0;margin-right:-8px;}.tagchecklist span{margin-right:0;margin-left:25px;float:right;}.tagchecklist span a{margin:6px -9px 0 0;float:right;}#poststuff h2{clear:right;}#poststuff h3,.metabox-holder h3{font-family:Tahoma,Arial,sans-serif;}.tool-box .title{font-family:Tahoma,Arial,sans-serif;}#sidemenu{margin:-30px 315px 0 15px;float:left;padding-left:0;padding-right:10px;}#sidemenu a{float:right;}table .vers,table .column-visible,table .column-rating{text-align:right;}* html #template div{margin-left:0;}.list-ajax-loading{float:left;margin-right:0;margin-left:9px;}#editorcontainer .wp_themeSkin .mceStatusbar{padding-left:0;padding-right:5px;}#editorcontainer .wp_themeSkin .mceStatusbar div{float:right;}#editorcontainer .wp_themeSkin .mceStatusbar a.mceResize{float:left;}
\ No newline at end of file
+ol{margin-left:0;margin-right:2em;}.code,code{font-family:Tahoma,Arial,sans-serif;}.quicktags,.search{font:12px Tahoma,Arial,sans-serif;}.icon32{float:right;margin-right:0;margin-left:8px;}.icon16{float:right;margin-right:-8px;margin-left:0;}.howto{font-style:normal;font-family:Tahoma,Arial,sans-serif;}p.install-help{font-style:normal;}#doaction,#doaction2,#post-query-submit{margin-right:0;margin-left:8px;}#timezone_string option{margin-left:0;margin-right:1em;}#pass-strength-result{float:right;margin:13px 1px 5px 5px;}p.search-box{float:left;}#delete-action{float:right;}#publishing-action{float:left;}#post-body .misc-pub-section{border-right:0;border-left-width:1px;border-left-style:solid;float:right;}#post-body .misc-pub-section-last{border-left:0;}#minor-publishing-actions{padding:10px 8px 2px 10px;text-align:left;}#save-post{float:right;}#minor-publishing .ajax-loading{padding:3px 4px 0 0;float:right;}.preview{float:left;}#sticky-span{margin-left:0;margin-right:18px;}.side-info ul{padding-left:0;padding-right:18px;}td.action-links,th.action-links{text-align:left;}.describe .del-link{padding-left:0;padding-right:5px;}form.upgrade .hint{font-style:normal;}#ajax-response.alignleft{margin-left:0;margin-right:2em;}#quicktags{background-position:right top;}#ed_reply_toolbar input{margin:1px 1px 1px 2px;}#wp-fullscreen-body{right:0;left:auto;}#wp-fullscreen-tagline{float:left;}#fullscreen-topbar{left:auto;right:0;}#wp-fullscreen-mode-bar,#wp-fullscreen-button-bar,#wp-fullscreen-close,#wp-fullscreen-count{float:right;}#wp-fullscreen-save{float:left;}#wp-fullscreen-save{padding:2px 5px 0 2px;}#wp-fullscreen-buttons>div{float:right;}#wp-fullscreen-mode-bar{padding:1px 0 0 14px;}#wp-fullscreen-modes a{float:right;border-width:1px 0 1px 1px;}#wp-fullscreen-modes a:first-child{-webkit-border-top-left-radius:0;-webkit-border-top-right-radius:3px;-webkit-border-bottom-left-radius:0;-webkit-border-bottom-right-radius:3px;border-width:1px;border-top-left-radius:0;border-top-right-radius:3px;border-bottom-right-left:0;border-bottom-right-radius:3px;}#wp-fullscreen-modes a:last-child{-webkit-border-top-right-radius:0;-webkit-border-top-left-radius:3px;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:3px;border-top-right-radius:0;border-top-left-radius:3px;border-bottom-right-radius:0;border-bottom-left-radius:3px;}#wp-fullscreen-save img,#wp-fullscreen-save span{padding-right:0;padding-left:4px;}#wphead{height:32px;margin-left:15px;margin-right:2px;}#header-logo{float:right;}#wphead h1{float:right;}#screen-meta-links{margin-right:0;margin-left:24px;}#screen-meta{margin-right:5px;margin-left:15px;}#screen-options-link-wrap,#contextual-help-link-wrap{float:left;margin-left:0;margin-right:6px;}#screen-meta-links a.show-settings{padding-right:6px;padding-left:16px;}.toggle-arrow{background-position:top right;}.toggle-arrow-active{background-position:bottom right;}.metabox-prefs label{padding-right:0;padding-left:15px;}.metabox-prefs label input{margin-right:2px;margin-left:5px;}#contextual-help-wrap{margin-left:0;margin-right:-4px;}#contextual-help-back{left:170px;right:150px;}#contextual-help-wrap.no-sidebar #contextual-help-back{left:0;right:150px;border-right-width:1px;border-left-width:0;-webkit-border-bottom-right-radius:0;border-bottom-right-radius:0;-webkit-border-bottom-left-radius:2px;border-bottom-left-radius:2px;}.contextual-help-tabs{float:right;}.contextual-help-tabs a{padding-left:5px;padding-right:12px;}.contextual-help-tabs .active{margin-right:0;margin-left:-1px;}.contextual-help-tabs .active,.contextual-help-tabs-wrap{border-left:0;border-right-width:1px;}.help-tab-content{margin-right:0;margin-left:22px;}.help-tab-content li{margin-left:0;margin-right:18px;}.contextual-help-sidebar{float:left;padding-right:12px;padding-left:8px;}#adminmenuback,#adminmenuwrap{border-width:0 0 0 1px;}#adminmenushadow{right:auto;left:0;}#adminmenu li .wp-submenu,.folded #adminmenu .wp-has-current-submenu .wp-submenu{left:auto;right:146px;}.folded #adminmenu .wp-submenu,.folded #adminmenu .wp-has-current-submenu .wp-submenu{left:auto;right:26px;}#adminmenu .wp-submenu.sub-open,#adminmenu li.focused.wp-not-current-submenu .wp-submenu,.folded #adminmenu li.focused.wp-has-current-submenu .wp-submenu,.folded #adminmenu .wp-has-current-submenu .wp-submenu.sub-open,.no-js #adminmenu .wp-has-submenu:hover .wp-submenu,.no-js.folded #adminmenu .wp-has-current-submenu:hover .wp-submenu{padding:0 0 8px 8px;}#adminmenu div.wp-menu-image{float:right;}#adminmenu li li{margin-left:0;margin-right:8px;}#adminmenu .wp-submenu a,#adminmenu li li a,.folded #adminmenu .wp-not-current-submenu li a{padding-left:0;padding-right:12px;}#adminmenu .wp-not-current-submenu li a{padding-left:0;padding-right:18px;}.folded #adminmenu li li{margin-left:inherit;margin-right:0;}.folded #adminmenu li li a{padding-left:inherit;padding-right:0;}.wp-menu-arrow{right:0;-moz-transform:translate(-139px);-webkit-transform:translate(-139px);-o-transform:translate(-139px);-ms-transform:translate(-139px);transform:translate(-139px);}.ie8 .wp-menu-arrow{right:-20px;}#adminmenu .wp-menu-arrow div{left:-8px;width:16px;}#adminmenu li.wp-not-current-submenu .wp-menu-arrow{-moz-transform:translate(-138px);-webkit-transform:translate(-138px);-o-transform:translate(-138px);-ms-transform:translate(-138px);transform:translate(-138px);}.folded .wp-menu-arrow{-moz-transform:translate(-27px);-webkit-transform:translate(-27px);-o-transform:translate(-27px);-ms-transform:translate(-27px);transform:translate(-27px);}#adminmenu .wp-not-current-submenu .wp-menu-arrow div{border-style:solid solid none none;border-width:1px 1px 0 0;}#adminmenu .wp-menu-image img{float:right;padding:5px 2px 0 0;}#adminmenu .wp-submenu .wp-submenu-head{padding:6px 10px 5px 4px;}#adminmenu li .wp-submenu-wrap{border-width:1px 0 1px 1px;border-style:solid none solid solid;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:3px;-webkit-border-top-right-radius:0;-webkit-border-top-left-radius:3px;border-bottom-right-radius:0;border-bottom-left-radius:3px;border-top-right-radius:0;border-top-left-radius:3px;}.folded #adminmenu .wp-submenu ul{border-width:0 1px 0 0;}.folded #adminmenu .wp-submenu a{padding-left:0;padding-right:10px;}.folded #adminmenu a.wp-has-submenu{margin-left:0;margin-right:40px;}#adminmenu .wp-menu-toggle{clear:left;float:left;padding:1px 0 0 2px;}#adminmenu .awaiting-mod,#adminmenu span.update-plugins,#sidemenu li a span.update-plugins{font-family:Tahoma,Arial,sans-serif;margin-left:0;margin-right:7px;}#collapse-button{float:right;}.post-com-count-wrapper{font-family:Tahoma,Arial,sans-serif;}.column-response .post-com-count{float:right;margin-right:0;margin-left:5px;}.response-links{float:right;}.widefat th{font-family:Tahoma,Arial,sans-serif;}.widefat td p{margin:2px 0 .8em;}.postbox-container{float:right;}.postbox .handlediv{float:left;}#the-comment-list p.comment-author img{float:right;margin-right:0;margin-left:8px;}#dashboard_browser_nag p.browser-update-nag.has-browser-icon{padding-right:0;padding-left:125px;}.welcome-panel .welcome-panel-close{right:auto;left:10px;}.welcome-panel .welcome-panel-close:before{left:auto;right:-12px;}.welcome-panel .wp-badge{float:right;}.welcome-panel-content .about-description,.welcome-panel h3{margin-left:0;margin-right:190px;}.welcome-panel .welcome-panel-column{margin:0 -25px 0 5%;padding-left:0;padding-right:25px;float:right;}.welcome-panel .welcome-panel-column.welcome-panel-last{margin-right:auto;padding-right:0;margin-left:0;}.welcome-panel h4 .icon16{margin-left:0;margin-right:-32px;}.welcome-panel .welcome-panel-column-container{padding:0 25px 0 0;}.welcome-panel .welcome-panel-column ul{margin:1.6em 1.3em 1em 1em;}.welcome-panel .welcome-panel-column li{padding-left:0;padding-right:2px;}.fixed .column-comments{text-align:right;}.fixed .column-comments .vers{padding-left:0;padding-right:3px;}.fixed .column-comments a{float:right;}.sorting-indicator{margin-left:0;margin-right:7px;}th.sortable a span,th.sorted a span{float:right;}.tablenav-pages a{margin-right:0;margin-left:1px;}.tablenav-pages .next-page{margin-left:0;margin-right:2px;}.tablenav a.button-secondary{margin:3px 0 0 8px;}.tablenav .tablenav-pages{float:left;}.tablenav .displaying-num{margin-right:0;margin-left:10px;font-family:Tahoma,Arial,sans-serif;font-style:bold;}.tablenav .actions{padding:2px 0 0 8px;}.tablenav .delete{margin-right:0;margin-left:20px;}.view-switch{float:left;}.filter{float:right;margin:-5px 10px 0 0;}.filter .subsubsub{margin-left:0;margin-right:-10px;}#posts-filter fieldset{float:right;margin:0 0 1em 1.5ex;}#posts-filter fieldset legend{padding:0 1px .2em 0;}#wpbody-content .inline-edit-row fieldset{float:right;}#wpbody-content .quick-edit-row-page fieldset.inline-edit-col-right .inline-edit-col{border-width:0 1px 0 0;}#wpbody-content .bulk-edit-row .inline-edit-col-bottom{float:left;}.inline-edit-row fieldset label span.title{float:right;}.inline-edit-row fieldset label span.input-text-wrap{margin-left:0;margin-right:5em;}.quick-edit-row-post fieldset.inline-edit-col-right label span.title{padding-right:0;padding-left:.5em;}#wpbody-content .quick-edit-row fieldset .inline-edit-group label.alignleft:first-child{margin-right:0;margin-left:.5em;}.inline-edit-row fieldset span.title,.inline-edit-row fieldset span.checkbox-title{font-family:Tahoma,Arial,sans-serif;font-style:normal;}.inline-edit-row fieldset .inline-edit-date{float:right;}.inline-edit-row fieldset ul.cat-checklist label,.inline-edit-row .catshow,.inline-edit-row .cathide,.inline-edit-row #bulk-titles div{font-family:Tahoma,Arial,sans-serif;}.quick-edit-row-post fieldset label.inline-edit-status{float:right;}#bulk-titles div a{float:right;margin:3px -2px 0 3px;overflow:hidden;text-indent:-9999px;}#titlediv #title-prompt-text,#wp-fullscreen-title-prompt-text{right:0;}#sample-permalink{direction:ltr;}#sample-permalink #editable-post-name{unicode-bidi:embed;}#wp-fullscreen-title-prompt-text{left:auto;right:0;}.postarea h3 label{float:right;}.submitbox .submit{text-align:right;}.inside-submitbox #post_status{margin:2px -2px 2px 0;}.submitbox .submit input{margin-right:0;margin-left:4px;}#normal-sortables .postbox .submit{float:left;}#post-body ul.category-tabs,#post-body ul.add-menu-item-tabs{float:right;text-align:left;margin:0 5px 0 -120px;}#post-body ul.category-tabs li.tabs,#post-body ul.add-menu-item-tabs li.tabs{-webkit-border-top-left-radius:0;-webkit-border-top-right-radius:3px;-webkit-border-bottom-left-radius:0;-webkit-border-bottom-right-radius:3px;border-top-left-radius:0;border-top-right-radius:3px;border-bottom-left-radius:0;border-bottom-right-radius:3px;}#post-body .categorydiv div.tabs-panel,.taxonomy div.tabs-panel,#post-body #linkcategorydiv div.tabs-panel{margin:0 125px 0 5px;}#side-sortables .comments-box thead th,#normal-sortables .comments-box thead th{font-style:normal;}#commentsdiv img.waiting{padding-left:0;padding-right:5px;}#post-body .category-tabs li.tabs,#post-body .add-menu-item-tabs li.tabs{border-width:1px 1px 1px 0;margin-right:0;margin-left:-1px;}#posts-filter fieldset{float:right;margin:0 0 1em 1.5ex;}#posts-filter fieldset legend{padding:0 1px .2em 0;}#post-body .tagsdiv #newtag{margin-right:0;margin-left:5px;}.autosave-info{padding:2px 2px 2px 15px;text-align:left;}#post-body .wp_themeSkin .mceStatusbar a.mceResize{background:transparent url(../images/resize-rtl.gif) no-repeat scroll left bottom;cursor:sw-resize;}.curtime #timestamp{background-position:right top;padding-left:0;padding-right:18px;}#postcustomstuff table input,#postcustomstuff table select,#postcustomstuff table textarea{margin:8px 8px 8px 0;}table.diff td,table.diff th{font-family:Consolas,Monaco,monospace;}.category-adder{margin-left:0;margin-right:120px;}#post-body ul.category-tabs,#post-body ul.add-menu-item-tabs{float:right;text-align:left;margin:0 5px 0 -120px;}#post-body ul.category-tabs li.tabs,#post-body ul.add-menu-item-tabs li.tabs{-webkit-border-top-left-radius:0;-webkit-border-top-right-radius:3px;-webkit-border-bottom-left-radius:0;-webkit-border-bottom-right-radius:3px;border-top-left-radius:0;border-top-right-radius:3px;border-bottom-left-radius:0;border-bottom-right-radius:3px;}#front-page-warning,#front-static-pages ul,ul.export-filters,.inline-editor ul.cat-checklist ul,.categorydiv ul.categorychecklist ul,.customlinkdiv ul.categorychecklist ul,.posttypediv ul.categorychecklist ul,.taxonomydiv ul.categorychecklist ul,#linkcategorydiv ul.categorychecklist ul{margin-left:0;margin-right:18px;}#post-body .category-tabs li.tabs,#post-body .add-menu-item-tabs li.tabs{border-style:solid solid solid none;border-width:1px 1px 1px 0;margin-right:0;margin-left:-1px;}p.help,p.description,span.description,.form-wrap p{font-style:normal;font-family:Tahoma,Arial,sans-serif;}.taghint{margin:15px 12px -24px 0;}#poststuff .tagsdiv .howto{margin:0 8px 6px 0;}.ac_results li{text-align:right;}#wpbody-content .describe th{text-align:right;}.describe .media-item-info .A1B1{padding:0 10px 0 0;}.media-upload-form td label{margin-left:6px;margin-right:2px;}.media-upload-form .align .field label{padding:0 23px 0 0;margin:0 3px 0 1em;}.media-upload-form tr.image-size label{margin:0 5px 0 0;}#wpbody-content .describe p.help{padding:0 5px 0 0;}.media-item .error-div a.dismiss,.describe-toggle-on,.describe-toggle-off{float:left;margin-right:0;margin-left:15px;}.media-item .error-div a.dismiss{padding:0 15px 0 0;}.media-item .error-div{padding-left:0;padding-right:10px;}.media-item .pinkynail{float:right;}.media-item .describe td{padding:0 0 8px 8px;}.media-item .progress{float:left;margin:6px 0 0 10px;}#find-posts-response .found-radio{padding:5px 8px 0 0;}.find-box-search label{padding-right:0;padding-left:6px;}.find-box #resize-se{right:auto;left:1px;}form.upgrade .hint{font-style:normal;}.imgedit-menu div{float:right;}.imgedit-help{font-style:normal;}.imgedit-submit-btn{margin-left:0;margin-right:20px;}.form-table th{text-align:right;}.form-table input.tog{margin-right:0;margin-left:2px;float:right;}.form-table table.color-palette{float:right;}#replysubmit img.waiting,.inline-edit-save img.waiting{float:left;}#replysubmit .button{margin-right:0;margin-left:5px;}#edithead .inside{float:right;padding:3px 5px 2px 0;}.comment-ays th{border-right-style:none;border-left-style:solid;border-right-width:0;border-left-width:1px;}.spam-undo-inside .avatar,.trash-undo-inside .avatar{margin-left:8px;}#comment-status-radio input{margin:2px 0 5px 3px;}td.available-theme{text-align:right;}#current-theme img{float:right;margin-right:0;margin-left:1em;}#broken-themes{text-align:right;}.appearance_page_custom-header .available-headers .default-header{float:right;margin:0 0 20px 20px;}.appearance_page_custom-header .random-header{margin:0 0 20px 20px;}.appearance_page_custom-header .available-headers label input,.appearance_page_custom-header .random-header label input{margin-right:0;margin-left:10px;}.nav-tab{margin:0 0 -1px 6px;}h2 .nav-tab{font-family:Tahoma,Arial,sans-serif;}.plugins .desc ul,.plugins .desc ol{margin:0 2em 0 0;}#wpbody-content .plugins .plugin-title,#wpbody-content .plugins .theme-title{padding-right:0;padding-left:12px;}#profile-page .form-table #rich_editing{margin-right:0;margin-left:5px;}#your-profile legend{font-family:Tahoma,Arial,sans-serif;}.pressthis a span{background-position:-20px 5px;padding:8px 32px 8px 0;}.pressthis a:after{right:auto;left:10px;background:transparent;transform:skew(-20deg) rotate(-6deg);-webkit-transform:skew(-20deg) rotate(-6deg);-moz-transform:skew(-20deg) rotate(-6deg);}.pressthis a:hover:after{transform:skew(-20deg) rotate(-9deg);-webkit-transform:skew(-20deg) rotate(-9deg);-moz-transform:skew(-20deg) rotate(-9deg);}#utc-time,#local-time{padding-left:0;padding-right:25px;font-style:normal;font-family:Tahoma,Arial,sans-serif;}#footer{margin-left:20px;}#wpcontent,#footer{margin-right:165px;}.wrap.about-wrap{margin-left:40px;margin-right:20px;}.about-wrap h1,.about-text{margin-right:0;margin-left:200px;}.about-wrap h2.nav-tab-wrapper{padding-left:0;padding-right:6px;}.about-wrap .wp-badge{right:auto;left:0;}.about-wrap h2 .nav-tab{margin-right:0;margin-left:3px;}.about-wrap .changelog li{margin-left:0;margin-right:3em;}.about-wrap .feature-section .left-feature,.about-wrap .feature-section img,.about-wrap .feature-section .right-feature{float:right;}.about-wrap .feature-section .left-feature{margin-right:0;margin-left:0;}.about-wrap .feature-section .right-feature{margin-left:0;margin-right:0;}.about-wrap .feature-section.text-features{float:right;}.about-wrap .feature-section.screenshot-features{float:left;}.about-wrap .feature-section.screenshot-features .angled-right{margin-left:0;margin-right:2.5em;}.about-wrap .feature-section.screenshot-features .angled-right p{margin-left:0;margin-right:290px;}.about-wrap .feature-section .angled-right img,.about-wrap .feature-section .angled-left img{margin-right:0;margin-left:30px;}.about-wrap .feature-section.three-col div{margin-right:0;margin-left:4.999999999%;float:right;}.about-wrap .feature-section.three-col h4{text-align:right;}.about-wrap .feature-section.three-col img{margin-right:5px;margin-left:0;}.about-wrap .feature-section.three-col .last-feature{margin-left:0;}.about-wrap .feature-section .feature-images img{margin-right:auto;margin-left:5px;}.about-wrap .feature-section.images-stagger-left .angled-left{margin-left:auto;margin-right:5px;}.about-wrap .feature-section .angled-right{float:left;}.about-wrap .feature-section.images-stagger-right .feature-images{right:auto;left:0;}.about-wrap .feature-section.images-stagger-left .feature-images{left:auto;right:0;}.about-wrap .feature-section.images-stagger-right .left-feature{margin-right:0;margin-left:350px;}.about-wrap .feature-section.images-stagger-left .right-feature{margin-left:0;margin-right:350px;}.about-wrap li.wp-person,.about-wrap li.wp-person img.gravatar{float:right;margin-right:0;margin-left:10px;}#template div{margin-right:0;margin-left:190px;}.column-author img,.column-username img{float:right;margin-right:0;margin-left:10px;}.tagchecklist{margin-left:0;margin-right:14px;}.tagchecklist strong{margin-left:0;margin-right:-8px;}.tagchecklist span{margin-right:0;margin-left:25px;float:right;}.tagchecklist span a{margin:6px -9px 0 0;float:right;}#poststuff h2{clear:right;}#poststuff h3,.metabox-holder h3{font-family:Tahoma,Arial,sans-serif;}.tool-box .title{font-family:Tahoma,Arial,sans-serif;}#sidemenu{margin:-30px 315px 0 15px;float:left;padding-left:0;padding-right:10px;}#sidemenu a{float:right;}table .vers,table .column-visible,table .column-rating{text-align:right;}.screen-meta-toggle{right:auto;left:15px;}* html #template div{margin-left:0;}.list-ajax-loading{float:left;margin-right:0;margin-left:9px;}#editorcontainer .wp_themeSkin .mceStatusbar{padding-left:0;padding-right:5px;}#editorcontainer .wp_themeSkin .mceStatusbar div{float:right;}#editorcontainer .wp_themeSkin .mceStatusbar a.mceResize{float:left;}#wpcontent{margin-left:0;margin-right:165px;}.folded #wpcontent{margin-left:0;margin-right:52px;}.folded.wp-admin #footer{margin-left:15px;margin-right:52px;}#wpbody-content{float:right;}#adminmenuwrap{float:right;}#adminmenu{clear:right;}.inner-sidebar{float:left;clear:left;}.has-right-sidebar #post-body{float:right;clear:right;margin-right:0;margin-left:-340px;}.has-right-sidebar #post-body-content{margin-right:0;margin-left:300px;}#col-right{float:left;clear:left;}.alignleft{float:right;}.alignright{float:left;}.textleft{text-align:right;}.textright{text-align:left;}.screen-reader-text,.screen-reader-text span{left:auto;right:-1000em;}body,td,textarea,input,select{font-family:Tahoma,Arial,sans-serif;}ul.ul-disc,ul.ul-square,ol.ol-decimal{margin-left:0;margin-right:1.8em;}.subsubsub{float:right;}.widefat thead th:first-of-type{-webkit-border-top-left-radius:0;-webkit-border-top-right-radius:3px;border-top-left-radius:0;border-top-right-radius:3px;}.widefat thead th:last-of-type{-webkit-border-top-right-radius:0;-webkit-border-top-left-radius:3px;border-top-right-radius:0;border-top-left-radius:3px;}.widefat tfoot th:first-of-type{-webkit-border-bottom-left-radius:0;-webkit-border-bottom-right-radius:3px;border-bottom-left-radius:0;border-bottom-right-radius:3px;}.widefat tfoot th:last-of-type{-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:3px;border-bottom-right-radius:0;border-bottom-left-radius:3px;}.widefat th{text-align:right;}.widefat th input{margin:0 8px 0 0;}.wrap{margin-right:0;margin-left:15px;}.wrap h2,.subtitle{font-family:Tahoma,Arial,sans-serif;}.wrap h2{padding-right:0;padding-left:15px;}.subtitle{padding-left:0;padding-right:25px;}.wrap .add-new-h2{font-family:Tahoma,Arial,sans-serif;margin-left:0;margin-right:4px;}.wrap h2.long-header{padding-left:0;}#dashboard-widgets-wrap .has-sidebar{margin-right:0;margin-left:-51%;}#dashboard-widgets-wrap .has-sidebar .has-sidebar-content{margin-right:0;margin-left:51%;}.view-all{right:auto;left:0;}#dashboard_right_now p.sub,#dashboard-widgets h4,a.rsswidget,#dashboard_plugins h4,#dashboard_plugins h5,#dashboard_recent_comments .comment-meta .approve{font-family:Tahoma,Arial;}#dashboard_right_now p.sub{left:auto;right:15px;}#dashboard_right_now td.b{padding-right:0;padding-left:6px;text-align:left;font-family:Tahoma,Arial;}#dashboard_right_now .t{padding-right:0;padding-left:12px;}#dashboard_right_now .table_content{float:right;}#dashboard_right_now .table_discussion{float:left;}#dashboard_right_now .versions a{font-family:Tahoma,Arial;}#dashboard_right_now a.button{float:left;clear:left;}#dashboard_plugins .inside span{padding-left:0;padding-right:5px;}#dashboard-widgets h3 .postbox-title-action{right:auto;left:30px;}#the-comment-list .pingback{padding-left:0!important;padding-right:9px!important;}#the-comment-list .comment-item{padding:1em 70px 1em 10px;}#the-comment-list .comment-item .avatar{float:right;margin-left:0;margin-right:-60px;}.rss-widget cite{text-align:left;}.rss-widget span.rss-date{font-family:Tahoma,Arial;margin-left:0;margin-right:3px;}#dashboard_quick_press h4{float:right;text-align:left;}#dashboard_quick_press .wp-media-buttons{margin:0 5em .5em 0;}#dashboard_quick_press h4 label{margin-right:0;margin-left:10px;}#dashboard_quick_press .input-text-wrap,#dashboard_quick_press .textarea-wrap{margin:0 5em 1em 0;}#dashboard_quick_press #media-buttons{margin:0 5em .5em 0;padding:0;}#dashboard-widgets #dashboard_quick_press form p.submit{margin-left:0;margin-right:4.6em;}#dashboard-widgets #dashboard_quick_press form p.submit input{float:right;}#dashboard-widgets #dashboard_quick_press form p.submit #save-post{margin:0 10px 0 1em;}#dashboard-widgets #dashboard_quick_press form p.submit #publish{float:left;}#dashboard-widgets #dashboard_quick_press form p.submit img.waiting{margin:4px 0 0 6px;}#dashboard_recent_drafts h4 abbr{font-family:Tahoma,Arial;margin-left:0;margin-right:3px;}body.login{font-family:Tahoma,arial;}.login form{margin-right:8px;margin-left:0;}.login form .forgetmenot{float:right;}.login form .submit{float:left;}#login form .submit input{font-family:Tahoma,arial;}.login #nav,.login #backtoblog{margin:0 16px 0 0;}#login_error,.login .message{margin:0 8px 16px 0;}.login #user_pass,.login #user_login,.login #user_email{margin-left:6px;margin-right:0;direction:ltr;}.login h1 a{text-decoration:none;}.login .button-primary{float:left;}#nav-menus-frame{margin-right:300px;margin-left:0;}#wpbody-content #menu-settings-column{margin-right:-300px;margin-left:0;float:right;}#menu-management-liquid{float:right;}#menu-management{margin-left:20px;margin-right:0;}.post-body-plain{padding:10px 0 0 10px;}#menu-management .nav-tabs-arrow-left{right:0;left:auto;}#menu-management .nav-tabs-arrow-right{left:0;right:auto;text-align:left;font-family:Tahoma,Arial,sans-serif;}#menu-management .nav-tabs{padding-right:20px;padding-left:10px;}.js #menu-management .nav-tabs{float:right;margin-right:0;margin-left:-400px;}#select-nav-menu-container{text-align:left;}#wpbody .open-label{float:right;}#wpbody .open-label span{padding-left:10px;padding-right:0;}.js .input-with-default-title{font-style:normal;font-weight:bold;}.postbox .howto input{float:left;}#nav-menu-theme-locations .button-controls{text-align:left;}.meta-sep,.submitcancel{float:right;}#cancel-save{margin-left:0;margin-right:20px;}.list-controls{float:right;}.add-to-menu{float:left;}#add-custom-link label span{float:right;padding-left:5px;padding-right:0;}.howto span{float:right;}.list li .menu-item-title input{margin-left:3px;margin-right:0;}.menu-item-handle{padding-right:10px;padding-left:0;}.menu-item-edit-active .menu-item-handle{-webkit-border-bottom-left-radius:0;-webkit-border-bottom-right-radius:0;border-bottom-left-radius:0;border-bottom-right-radius:0;}.menu-item-handle .item-title{margin-left:13em;margin-right:0;}.menu-item-depth-0{margin-right:0;margin-left:0;}.menu-item-depth-1{margin-right:30px;margin-left:0;}.menu-item-depth-2{margin-right:60px;margin-left:0;}.menu-item-depth-3{margin-right:90px;margin-left:0;}.menu-item-depth-4{margin-right:120px;margin-left:0;}.menu-item-depth-5{margin-right:150px;margin-left:0;}.menu-item-depth-6{margin-right:180px;margin-left:0;}.menu-item-depth-7{margin-right:210px;margin-left:0;}.menu-item-depth-8{margin-right:240px;margin-left:0;}.menu-item-depth-9{margin-right:270px;margin-left:0;}.menu-item-depth-10{margin-right:300px;margin-left:0;}.menu-item-depth-11{margin-right:330px;margin-left:0;}.menu-item-depth-0 .menu-item-transport{margin-right:0;margin-left:0;}.menu-item-depth-1 .menu-item-transport{margin-right:-30px;margin-left:0;}.menu-item-depth-2 .menu-item-transport{margin-right:-60px;margin-left:0;}.menu-item-depth-3 .menu-item-transport{margin-right:-90px;margin-left:0;}.menu-item-depth-4 .menu-item-transport{margin-right:-120px;margin-left:0;}.menu-item-depth-5 .menu-item-transport{margin-right:-150px;margin-left:0;}.menu-item-depth-6 .menu-item-transport{margin-right:-180px;margin-left:0;}.menu-item-depth-7 .menu-item-transport{margin-right:-210px;margin-left:0;}.menu-item-depth-8 .menu-item-transport{margin-right:-240px;margin-left:0;}.menu-item-depth-9 .menu-item-transport{margin-right:-270px;margin-left:0;}.menu-item-depth-10 .menu-item-transport{margin-right:-300px;margin-left:0;}.menu-item-depth-11 .menu-item-transport{margin-right:-330px;margin-left:0;}.item-type{padding-left:10px;padding-right:0;}.item-controls{left:20px;right:auto;}.item-controls .item-order{padding-left:10px;padding-right:0;}.item-edit{left:-20px;right:auto;-webkit-border-bottom-right-radius:3px;-webkit-border-bottom-left-radius:0;border-bottom-right-radius:3px;border-bottom-left-radius:0;}.menu-item-settings{padding:10px 10px 10px 0;border-width:0 1px 1px 1px;}.link-to-original{font-style:normal;font-weight:bold;}.link-to-original a{padding-right:4px;padding-left:0;}.menu-item-settings .description-thin,.menu-item-settings .description-wide{margin-left:10px;margin-right:0;float:right;}.major-publishing-actions .publishing-action{text-align:left;float:left;}.major-publishing-actions .delete-action{text-align:right;float:right;padding-left:15px;padding-right:0;}.menu-name-label{margin-left:15px;margin-right:0;}.auto-add-pages{float:right;}div.star{left:auto;right:0;letter-spacing:0;}.star img,div.star a,div.star a:hover,div.star a:visited{right:auto;left:0;}#plugin-information ul#sidemenu{left:auto;right:0;}#plugin-information h2{margin-right:0;margin-left:200px;}#plugin-information .fyi{margin-left:5px;margin-right:20px;}#plugin-information .fyi h2{margin-left:0;}#plugin-information .fyi ul{padding:10px 7px 10px 5px;}#plugin-information #section-screenshots li p{padding-left:0;padding-right:20px;}#plugin-information .updated,#plugin-information pre{margin-right:0;margin-left:215px;}#plugin-information .updated,#plugin-information .error{clear:none;direction:rtl;}#section-description{direction:ltr;}.posting{margin-left:212px;margin-right:0;position:relative;}#side-info-column{float:left;right:auto;left:0;}h3.tb{margin-left:0;margin-right:5px;}#publish{float:left;}.postbox .handlediv{float:left;}.actions li{float:right;margin-right:0;margin-left:10px;}#extra-fields .actions{margin:-23px 0 0 -7px;}#img_container a{float:right;}#category-add input,#category-add select{font-family:Tahoma,Arial;}.inline-editor ul.cat-checklist ul,.categorydiv ul.categorychecklist ul,#linkcategorydiv ul.categorychecklist ul{margin-left:0;margin-right:18px;}.category-tabs li{padding-left:0;padding-right:8px;}#tagsdiv #newtag{margin-right:0;margin-left:5px;}#tagadd{margin-left:0;margin-right:3px;}#tagchecklist span{margin-left:.5em;margin-right:10px;float:right;}#tagchecklist span a{margin:6px -9px 0 0;float:right;}.submit input,.button,.button-primary,.button-secondary,.button-highlighted,#postcustomstuff .submit input{font-family:Tahoma,Arial,sans-serif;}.ac_results li{text-align:right;}#TB_ajaxContent #options{right:auto;left:25px;}#post_status{margin-left:0;margin-right:10px;}#templateside{float:left;}#template textarea{direction:ltr;}div.star{left:auto;right:0;}.star img,div.star a,div.star a:hover,div.star a:visited{right:auto;left:0;}.theme-listing .theme-item h3{font-style:normal;}#theme-information .theme-preview-img{float:right;margin:5px 15px 10px 25px;}#theme-information .action-button #cancel{float:right;}#theme-information .action-button #install{float:left;}.feature-filter .feature-group{float:right;}.feature-filter .feature-name{float:right;text-align:left;}.feature-filter .feature-group li{float:right;padding-right:0;padding-left:25px;}div.widget-liquid-left{float:right;clear:right;margin-right:0;margin-left:-325px;}div#widgets-left{margin-right:5px;margin-left:325px;}div.widget-liquid-right{float:left;clear:left;}.inactive-sidebar .widget{float:right;}div.sidebar-name h3{font-family:Tahoma,Arial,sans-serif;}#widget-list .widget{float:right;}.inactive-sidebar .widget-placeholder{float:right;}.widget-top .widget-title-action{float:left;}.widget-control-edit{padding:0 0 0 8px;}.sidebar-name-arrow{float:left;}.press-this-sidebar{float:left;}
\ No newline at end of file
index e208a165efbe187a37be4ad9abf0262d3580066f..3bf4c0fb5fc5f98618971eb1b5717e480af03539 100644 (file)
@@ -13,8 +13,7 @@ TABLE OF CONTENTS:
  4.0 - Notifications
  5.0 - TinyMCE
  6.0 - Admin Header
  4.0 - Notifications
  5.0 - TinyMCE
  6.0 - Admin Header
-       6.1 - Favorites Menu
-       6.2 - Screen Options Tabs
+       6.1 - Screen Options Tabs
  7.0 - Main Navigation
  8.0 - Layout Blocks
  9.0 - Dashboard
  7.0 - Main Navigation
  8.0 - Layout Blocks
  9.0 - Dashboard
@@ -38,9 +37,10 @@ TABLE OF CONTENTS:
 19.0 - Tools
 20.0 - Settings
 21.0 - Admin Footer
 19.0 - Tools
 20.0 - Settings
 21.0 - Admin Footer
-22.0 - Misc
-23.0 - Dead
-24.0 - TinyMCE tweaks
+22.0 - About Pages
+23.0 - Misc
+24.0 - Dead
+25.0 - TinyMCE tweaks
 
 
 ------------------------------------------------------------------------------*/
 
 
 ------------------------------------------------------------------------------*/
@@ -68,7 +68,14 @@ ol {
 
 .icon32 {
        float: right;
 
 .icon32 {
        float: right;
-       margin: 7px 0 0 8px;
+       margin-right: 0;
+       margin-left: 8px;
+}
+
+.icon16 {
+       float: right;
+       margin-right: -8px;
+       margin-left: 0;
 }
 
 .howto {
 }
 
 .howto {
@@ -112,12 +119,10 @@ p.search-box {
 ------------------------------------------------------------------------------*/
 
 #delete-action {
 ------------------------------------------------------------------------------*/
 
 #delete-action {
-       text-align: right;
        float: right;
 }
 
 #publishing-action {
        float: right;
 }
 
 #publishing-action {
-       text-align: left;
        float: left;
 }
 
        float: left;
 }
 
@@ -175,10 +180,6 @@ th.action-links {
   4.0 - Notifications
 ------------------------------------------------------------------------------*/
 
   4.0 - Notifications
 ------------------------------------------------------------------------------*/
 
-.plugin-update .update-message {
-       margin: 0 31px 8px 10px;
-}
-
 form.upgrade .hint {
        font-style: normal;
 }
 form.upgrade .hint {
        font-style: normal;
 }
@@ -254,16 +255,11 @@ form.upgrade .hint {
 }
 
 #wp-fullscreen-modes a:first-child {
 }
 
 #wp-fullscreen-modes a:first-child {
-       border-width: 1px;
-       -moz-border-radius: 3px 3px 0 0;
        -webkit-border-top-left-radius: 0;
        -webkit-border-top-right-radius: 3px;
        -webkit-border-bottom-left-radius: 0;
        -webkit-border-bottom-right-radius: 3px;
        -webkit-border-top-left-radius: 0;
        -webkit-border-top-right-radius: 3px;
        -webkit-border-bottom-left-radius: 0;
        -webkit-border-bottom-right-radius: 3px;
-       -khtml-border-top-left-radius: 0;
-       -khtml-border-top-right-radius: 3px;
-       -khtml-border-bottom-left-radius: 0;
-       -khtml-border-bottom-right-radius: 3px;
+       border-width: 1px;
        border-top-left-radius: 0;
        border-top-right-radius: 3px;
        border-bottom-right-left: 0;
        border-top-left-radius: 0;
        border-top-right-radius: 3px;
        border-bottom-right-left: 0;
@@ -271,15 +267,10 @@ form.upgrade .hint {
 }
 
 #wp-fullscreen-modes a:last-child {
 }
 
 #wp-fullscreen-modes a:last-child {
-       -moz-border-radius: 0 0 3px 3px;
        -webkit-border-top-right-radius: 0;
        -webkit-border-top-left-radius: 3px;
        -webkit-border-bottom-right-radius: 0;
        -webkit-border-bottom-left-radius: 3px;
        -webkit-border-top-right-radius: 0;
        -webkit-border-top-left-radius: 3px;
        -webkit-border-bottom-right-radius: 0;
        -webkit-border-bottom-left-radius: 3px;
-       -khtml-border-top-right-radius: 0;
-       -khtml-border-top-left-radius: 3px;
-       -khtml-border-bottom-right-radius: 0;
-       -khtml-border-bottom-left-radius: 3px;
        border-top-right-radius: 0;
        border-top-left-radius: 3px;
        border-bottom-right-radius: 0;
        border-top-right-radius: 0;
        border-top-left-radius: 3px;
        border-bottom-right-radius: 0;
@@ -306,34 +297,6 @@ form.upgrade .hint {
 /*------------------------------------------------------------------------------
   6.0 - Admin Header
 ------------------------------------------------------------------------------*/
 /*------------------------------------------------------------------------------
   6.0 - Admin Header
 ------------------------------------------------------------------------------*/
-#wphead-info {
-       margin: 0 15px 0 0;
-}
-
-#user_info {
-       float: left;
-       padding: 0 6px 0 2px;
-}
-
-#user_info.active {
-       margin-right: 0;
-       margin-left: -1px;
-}
-
-#user_info .hide-if-no-js p {
-       margin: 0 0 0 20px;
-}
-
-#user_info_arrow {
-       right: auto;
-       left: 3px;
-}
-
-#user_info_links_wrap {
-       right: auto;
-       left: 0;
-}
-
 #wphead {
        height: 32px;
        margin-left: 15px;
 #wphead {
        height: 32px;
        margin-left: 15px;
@@ -345,155 +308,252 @@ form.upgrade .hint {
 }
 
 #wphead h1 {
 }
 
 #wphead h1 {
-       font: Tahoma, Arial, sans-serif;
        float: right;
 }
 
 /*------------------------------------------------------------------------------
        float: right;
 }
 
 /*------------------------------------------------------------------------------
-  6.1 - Favorites Menu
+  6.1 - Screen Options Tabs
 ------------------------------------------------------------------------------*/
 
 ------------------------------------------------------------------------------*/
 
-#favorite-actions {
-       margin: 0 15px 0 12px;
+#screen-meta-links {
+       margin-right: 0;
+       margin-left: 24px;
+}
+
+#screen-meta {
+       margin-right: 5px;
+       margin-left: 15px;
 }
 
 }
 
-#favorite-first a {
-       padding: 2px 12px 2px 0;
+#screen-options-link-wrap,
+#contextual-help-link-wrap {
+       float: left;
+       margin-left: 0;
+       margin-right: 6px;
 }
 
 }
 
-#favorite-inside a {
-       padding: 3px 10px 3px 5px;
+#screen-meta-links a.show-settings {
+       padding-right: 6px;
+       padding-left: 16px;
 }
 
 }
 
-#favorite-toggle {
-       right: auto;
-       left: 0;
+.toggle-arrow {
+       background-position: top right;
+}
+.toggle-arrow-active {
+       background-position: bottom right;
+}
+
+.metabox-prefs label {
+       padding-right: 0;
+       padding-left: 15px;
 }
 
 }
 
+.metabox-prefs label input {
+       margin-right: 2px;
+       margin-left: 5px;
+}
 
 /*------------------------------------------------------------------------------
 
 /*------------------------------------------------------------------------------
-  6.2 - Screen Options Tabs
+  6.2 - Help Menu
 ------------------------------------------------------------------------------*/
 
 ------------------------------------------------------------------------------*/
 
-#screen-meta-links {
-       margin: 0 0 0 19px;
+#contextual-help-wrap {
+       margin-left: 0;
+       margin-right: -4px;
 }
 
 }
 
-#screen-meta .screen-reader-text {
-       visibility: hidden;
+#contextual-help-back {
+       left: 170px;
+       right: 150px;
 }
 
 }
 
-#screen-options-link-wrap,
-#contextual-help-link-wrap {
-       float: left;
-       margin: 0 6px 0 0;
-       font-family: Tahoma, Arial, sans-serif;
+#contextual-help-wrap.no-sidebar #contextual-help-back {
+       left: 0;
+       right: 150px;
+
+       border-right-width: 1px;
+       border-left-width: 0;
+       -webkit-border-bottom-right-radius: 0;
+       border-bottom-right-radius: 0;
+       -webkit-border-bottom-left-radius: 2px;
+       border-bottom-left-radius: 2px;
 }
 
 }
 
-#contextual-help-wrap li {
-       list-style-type: disc;
-       margin-left: auto;
-       margin-right: 18px;
+.contextual-help-tabs {
+       float: right;
 }
 }
-.toggle-arrow {
-       background-position: top right;
+
+.contextual-help-tabs a {
+       padding-left: 5px;
+       padding-right: 12px;
 }
 }
-.toggle-arrow-active {
-       background-position: bottom right;
+
+.contextual-help-tabs .active {
+       margin-right: 0;
+       margin-left: -1px;
 }
 }
-#screen-meta a.show-settings {
-       padding: 0 6px 0 16px;
+
+.contextual-help-tabs .active,
+.contextual-help-tabs-wrap {
+       border-left: 0;
+       border-right-width: 1px;
 }
 
 }
 
-#screen-options-wrap,
-#contextual-help-wrap {
-       margin: 0 0 0 15px;
+.help-tab-content {
+       margin-right: 0;
+       margin-left: 22px;
 }
 
 }
 
-.metabox-prefs label {
-       padding-right: auto;
-       padding-left: 15px;
+.help-tab-content li {
+       margin-left: 0;
+       margin-right: 18px;
 }
 
 }
 
-.metabox-prefs label input {
-       margin: 0 2px 0 5px;
+.contextual-help-sidebar {
+       float: left;
+       padding-right: 12px;
+       padding-left: 8px;
 }
 
 /*------------------------------------------------------------------------------
   7.0 - Main Navigation (Right Menu) (RTL: Left Menu)
 ------------------------------------------------------------------------------*/
 
 }
 
 /*------------------------------------------------------------------------------
   7.0 - Main Navigation (Right Menu) (RTL: Left Menu)
 ------------------------------------------------------------------------------*/
 
+#adminmenuback,
+#adminmenuwrap {
+       border-width: 0 0 0 1px;
+}
+
 #adminmenushadow {
        right: auto;
        left: 0;
 }
 
 #adminmenushadow {
        right: auto;
        left: 0;
 }
 
+#adminmenu li .wp-submenu,
+.folded #adminmenu .wp-has-current-submenu .wp-submenu {
+       left: auto;
+       right: 146px;
+}
+
+.folded #adminmenu .wp-submenu,
+.folded #adminmenu .wp-has-current-submenu .wp-submenu {
+       left: auto;
+       right: 26px;
+}
+
+#adminmenu .wp-submenu.sub-open,
+#adminmenu li.focused.wp-not-current-submenu .wp-submenu,
+.folded #adminmenu li.focused.wp-has-current-submenu .wp-submenu,
+.folded #adminmenu .wp-has-current-submenu .wp-submenu.sub-open,
+.no-js #adminmenu .wp-has-submenu:hover .wp-submenu,
+.no-js.folded #adminmenu .wp-has-current-submenu:hover .wp-submenu {
+       padding: 0 0 8px 8px;
+}
+
 #adminmenu div.wp-menu-image {
        float: right;
 }
 
 #adminmenu div.wp-menu-image {
        float: right;
 }
 
-#adminmenu .wp-submenu a {
+#adminmenu li li {
+       margin-left: 0;
+       margin-right: 8px
+}
+
+#adminmenu .wp-submenu a,
+#adminmenu li li a,
+.folded #adminmenu .wp-not-current-submenu li a {
        padding-left: 0;
        padding-right: 12px;
 }
 
        padding-left: 0;
        padding-right: 12px;
 }
 
-#adminmenu li.wp-has-current-submenu .wp-menu-arrow,
-#adminmenu li.menu-top.current .wp-menu-arrow {
-       right: auto;
-       left: -9px;
+#adminmenu .wp-not-current-submenu li a {
+       padding-left: 0;
+       padding-right: 18px;
+}
+
+.folded #adminmenu li li {
+       margin-left: inherit;
+       margin-right: 0
+}
+
+.folded #adminmenu li li a {
+       padding-left: inherit;
+       padding-right: 0
 }
 }
+
+.wp-menu-arrow {
+       right: 0;
+
+       -moz-transform:    translate( -139px );
+       -webkit-transform: translate( -139px );
+       -o-transform:      translate( -139px );
+       -ms-transform:     translate( -139px );
+       transform:         translate( -139px );
+}
+
+.ie8 .wp-menu-arrow {
+       right: -20px;
+}
+
 #adminmenu .wp-menu-arrow div {
 #adminmenu .wp-menu-arrow div {
-       background: url(../images/menu-arrow-frame-rtl.png) top left no-repeat;
+       left: -8px;
+       width: 16px;
 }
 
 }
 
-#adminmenu .wp-menu-image img {
-       float: right;
+#adminmenu li.wp-not-current-submenu .wp-menu-arrow {
+       -moz-transform:    translate( -138px );
+       -webkit-transform: translate( -138px );
+       -o-transform:      translate( -138px );
+       -ms-transform:     translate( -138px );
+       transform:         translate( -138px );
 }
 
 }
 
-.js.folded #adminmenu .wp-submenu {
-       display: block;
-       left: auto;
-       right: 26px;
+.folded .wp-menu-arrow {
+       -moz-transform:    translate( -27px );
+       -webkit-transform: translate( -27px );
+       -o-transform:      translate( -27px );
+       -ms-transform:     translate( -27px );
+       transform:         translate( -27px );
 }
 
 }
 
-.js.folded #adminmenu .wp-submenu.sub-open {
-       padding: 0 0 8px 8px;
+#adminmenu .wp-not-current-submenu .wp-menu-arrow div {
+    border-style: solid solid none none;
+    border-width: 1px 1px 0 0;
+}
+
+#adminmenu .wp-menu-image img {
+       float: right;
+       padding: 5px 2px 0 0;
 }
 
 #adminmenu .wp-submenu .wp-submenu-head {
        padding: 6px 10px 5px 4px;
 }
 
 }
 
 #adminmenu .wp-submenu .wp-submenu-head {
        padding: 6px 10px 5px 4px;
 }
 
-.js.folded #adminmenu .wp-submenu-wrap {
+#adminmenu li .wp-submenu-wrap {
+       border-width: 1px 0 1px 1px;
+       border-style: solid none solid solid;
        -webkit-border-bottom-right-radius: 0;
        -webkit-border-bottom-left-radius: 3px;
        -webkit-border-top-right-radius: 0;
        -webkit-border-top-left-radius: 3px;
        -webkit-border-bottom-right-radius: 0;
        -webkit-border-bottom-left-radius: 3px;
        -webkit-border-top-right-radius: 0;
        -webkit-border-top-left-radius: 3px;
-       -khtml-border-bottom-right-radius: 0;
-       -khtml-border-bottom-left-radius: 3px;
-       -khtml-border-top-left-radius: 0;
-       -khtml-border-top-left-radius: 3px;
-       -moz-border-radius-bottomright: 0;
-       -moz-border-radius-bottomleft: 3px;
-       -moz-border-radius-topright: 0;
-       -moz-border-radius-topleft: 3px;
        border-bottom-right-radius: 0;
        border-bottom-left-radius: 3px;
        border-top-right-radius: 0;
        border-top-left-radius: 3px;
        border-bottom-right-radius: 0;
        border-bottom-left-radius: 3px;
        border-top-right-radius: 0;
        border-top-left-radius: 3px;
-       border-width: 0 0 1px 1px;
 }
 
 }
 
-.js.folded #adminmenu .wp-submenu ul {
+.folded #adminmenu .wp-submenu ul {
        border-width: 0 1px 0 0;
 }
 
        border-width: 0 1px 0 0;
 }
 
-.js.folded #adminmenu .wp-submenu a {
+.folded #adminmenu .wp-submenu a {
        padding-left: 0;
        padding-right: 10px;
 }
 
        padding-left: 0;
        padding-right: 10px;
 }
 
-.js.folded #adminmenu a.wp-has-submenu {
+.folded #adminmenu a.wp-has-submenu {
        margin-left: 0;
        margin-right: 40px;
 }
        margin-left: 0;
        margin-right: 40px;
 }
@@ -504,10 +564,6 @@ form.upgrade .hint {
        padding: 1px 0 0 2px;
 }
 
        padding: 1px 0 0 2px;
 }
 
-#adminmenu .wp-menu-image img {
-       padding: 6px 1px 0 0;
-}
-
 #adminmenu .awaiting-mod,
 #adminmenu span.update-plugins,
 #sidemenu li a span.update-plugins {
 #adminmenu .awaiting-mod,
 #adminmenu span.update-plugins,
 #sidemenu li a span.update-plugins {
@@ -516,6 +572,12 @@ form.upgrade .hint {
        margin-right: 7px;
 }
 
        margin-right: 7px;
 }
 
+#collapse-button {
+       float: right;
+}
+
+
+/* List table styles */
 .post-com-count-wrapper {
        font-family: Tahoma, Arial, sans-serif;
 }
 .post-com-count-wrapper {
        font-family: Tahoma, Arial, sans-serif;
 }
@@ -530,9 +592,6 @@ form.upgrade .hint {
        float: right;
 }
 
        float: right;
 }
 
-#collapse-button {
-       float: right;
-}
 
 /*------------------------------------------------------------------------------
   8.0 - Layout Blocks
 
 /*------------------------------------------------------------------------------
   8.0 - Layout Blocks
@@ -548,8 +607,6 @@ form.upgrade .hint {
 
 .postbox-container {
        float: right;
 
 .postbox-container {
        float: right;
-       padding-right: 0;
-       padding-left: 0.5%;
 }
 
 .postbox .handlediv {
 }
 
 .postbox .handlediv {
@@ -566,6 +623,62 @@ form.upgrade .hint {
        margin-left: 8px;
 }
 
        margin-left: 8px;
 }
 
+/* Browser Nag */
+#dashboard_browser_nag p.browser-update-nag.has-browser-icon {
+       padding-right: 0;
+       padding-left: 125px;
+}
+
+.welcome-panel .welcome-panel-close {
+       right: auto;
+       left: 10px;
+}
+
+.welcome-panel .welcome-panel-close:before {
+       left: auto;
+       right: -12px;
+}
+
+.welcome-panel .wp-badge {
+       float: right;
+}
+
+.welcome-panel-content .about-description, .welcome-panel h3 {
+       margin-left: 0;
+       margin-right: 190px;
+}
+
+.welcome-panel .welcome-panel-column {
+       margin: 0 -25px 0 5%;
+       padding-left: 0;
+       padding-right: 25px;
+       float: right;
+}
+
+.welcome-panel .welcome-panel-column.welcome-panel-last {
+       margin-right: auto;
+       padding-right: 0;
+       margin-left: 0;
+}
+
+.welcome-panel h4 .icon16 {
+       margin-left: 0;
+       margin-right: -32px;
+}
+
+.welcome-panel .welcome-panel-column-container {
+       padding: 0 25px 0 0;
+}
+
+.welcome-panel .welcome-panel-column ul {
+       margin: 1.6em 1.3em 1em 1em;
+}
+
+.welcome-panel .welcome-panel-column li {
+       padding-left: 0;
+       padding-right: 2px;
+}
+
 /*------------------------------------------------------------------------------
   10.0 - List Posts (/Pages/etc)
 ------------------------------------------------------------------------------*/
 /*------------------------------------------------------------------------------
   10.0 - List Posts (/Pages/etc)
 ------------------------------------------------------------------------------*/
@@ -738,28 +851,6 @@ th.sorted a span {
        float: right;
 }
 
        float: right;
 }
 
-.postarea #add-media-button {
-       float: left;
-       right: auto;
-       left: 10px;
-}
-
-
-#edButtonPreview,
-#edButtonHTML {
-       margin: 5px 0 0 5px;
-       float: left;
-}
-
-#poststuff #edButtonHTML {
-       margin-right: 0;
-       margin-left: 15px;
-}
-
-#media-buttons a {
-       padding: 0 10px 5px 0;
-}
-
 .submitbox .submit {
        text-align: right;
 }
 .submitbox .submit {
        text-align: right;
 }
@@ -789,15 +880,10 @@ th.sorted a span {
 
 #post-body ul.category-tabs li.tabs,
 #post-body ul.add-menu-item-tabs li.tabs {
 
 #post-body ul.category-tabs li.tabs,
 #post-body ul.add-menu-item-tabs li.tabs {
-       -moz-border-radius: 3px 3px 0 0;
        -webkit-border-top-left-radius: 0;
        -webkit-border-top-right-radius: 3px;
        -webkit-border-bottom-left-radius: 0;
        -webkit-border-bottom-right-radius: 3px;
        -webkit-border-top-left-radius: 0;
        -webkit-border-top-right-radius: 3px;
        -webkit-border-bottom-left-radius: 0;
        -webkit-border-bottom-right-radius: 3px;
-       -khtml-border-top-left-radius: 0;
-       -khtml-border-top-right-radius: 3px;
-       -khtml-border-bottom-left-radius: 0;
-       -khtml-border-bottom-right-radius: 3px;
        border-top-left-radius: 0;
        border-top-right-radius: 3px;
        border-bottom-left-radius: 0;
        border-top-left-radius: 0;
        border-top-right-radius: 3px;
        border-bottom-left-radius: 0;
@@ -899,15 +985,10 @@ table.diff td, table.diff th {
 
 #post-body ul.category-tabs li.tabs,
 #post-body ul.add-menu-item-tabs li.tabs {
 
 #post-body ul.category-tabs li.tabs,
 #post-body ul.add-menu-item-tabs li.tabs {
-       -moz-border-radius: 3px 3px 0 0;
        -webkit-border-top-left-radius: 0;
        -webkit-border-top-right-radius: 3px;
        -webkit-border-bottom-left-radius: 0;
        -webkit-border-bottom-right-radius: 3px;
        -webkit-border-top-left-radius: 0;
        -webkit-border-top-right-radius: 3px;
        -webkit-border-bottom-left-radius: 0;
        -webkit-border-bottom-right-radius: 3px;
-       -khtml-border-top-left-radius: 0;
-       -khtml-border-top-right-radius: 3px;
-       -khtml-border-bottom-left-radius: 0;
-       -khtml-border-bottom-right-radius: 3px;
        border-top-left-radius: 0;
        border-top-right-radius: 3px;
        border-bottom-left-radius: 0;
        border-top-left-radius: 0;
        border-top-right-radius: 3px;
        border-bottom-left-radius: 0;
@@ -978,12 +1059,12 @@ span.description,
 }
 
 .media-upload-form .align .field label {
 }
 
 .media-upload-form .align .field label {
-       padding: 0 22px 0 0;
-       margin: 0 0 0 1em;
+       padding: 0 23px 0 0;
+       margin: 0 3px 0 1em;
 }
 
 .media-upload-form tr.image-size label {
 }
 
 .media-upload-form tr.image-size label {
-       margin: 0 3px 0 0;
+       margin: 0 5px 0 0;
 }
 
 #wpbody-content .describe p.help {
 }
 
 #wpbody-content .describe p.help {
@@ -995,7 +1076,11 @@ span.description,
 .describe-toggle-off {
        float: left;
        margin-right: 0;
 .describe-toggle-off {
        float: left;
        margin-right: 0;
-       margin-left: 20px;
+       margin-left: 15px;
+}
+
+.media-item .error-div a.dismiss {
+       padding: 0 15px 0 0;
 }
 
 .media-item .error-div {
 }
 
 .media-item .error-div {
@@ -1007,17 +1092,13 @@ span.description,
        float: right;
 }
 
        float: right;
 }
 
-.crunching {
-       text-align: left;
-       margin-right: 0;
-       margin-left: 5px;
+.media-item .describe td {
+       padding: 0 0 8px 8px;
 }
 
 }
 
-.bar {
-       border-right-width: 0;
-       border-left-width: 3px;
-       border-right-style: none;
-       border-left-style: solid;
+.media-item .progress {
+       float: left;
+    margin: 6px 0 0 10px;
 }
 
 /*------------------------------------------------------------------------------
 }
 
 /*------------------------------------------------------------------------------
@@ -1205,7 +1286,26 @@ h2 .nav-tab {
   19.0 - Tools
 ------------------------------------------------------------------------------*/
 
   19.0 - Tools
 ------------------------------------------------------------------------------*/
 
-/* Intentionally didn't RTLized the new press-this button;
+.pressthis a span {
+       background-position: -20px 5px ;
+       padding: 8px 32px 8px 0;
+}
+
+.pressthis a:after {
+       right: auto;
+       left: 10px;
+       background: transparent;
+       transform: skew(-20deg) rotate(-6deg);
+       -webkit-transform: skew(-20deg) rotate(-6deg);
+       -moz-transform: skew(-20deg) rotate(-6deg);
+}
+
+
+.pressthis a:hover:after {
+       transform: skew(-20deg) rotate(-9deg);
+       -webkit-transform: skew(-20deg) rotate(-9deg);
+       -moz-transform: skew(-20deg) rotate(-9deg);
+}
 
 /*------------------------------------------------------------------------------
   20.0 - Settings
 
 /*------------------------------------------------------------------------------
   20.0 - Settings
@@ -1223,63 +1323,190 @@ h2 .nav-tab {
 ------------------------------------------------------------------------------*/
 
 #footer {
 ------------------------------------------------------------------------------*/
 
 #footer {
-       margin-right: 0;
-       margin-left: 15px;
+       margin-left: 20px;
+}
+
+#wpcontent,
+#footer {
+       margin-right: 165px;
 }
 
 /*------------------------------------------------------------------------------
 }
 
 /*------------------------------------------------------------------------------
-  22.0 - Misc
+  22.0 - About Pages
 ------------------------------------------------------------------------------*/
 
 ------------------------------------------------------------------------------*/
 
-#template div {
-       margin-right: 0;
-       margin-left: 190px;
+.wrap.about-wrap {
+       margin-left: 40px;
+       margin-right: 20px;
 }
 
 }
 
-.column-author img, .column-username img {
-       float: right;
+.about-wrap h1,
+.about-text {
        margin-right: 0;
        margin-right: 0;
-       margin-left: 10px;
+       margin-left: 200px;
 }
 
 }
 
-.tagchecklist {
-       margin-left: 0;
-       margin-right: 14px;
+.about-wrap h2.nav-tab-wrapper {
+       padding-left: 0px;
+       padding-right: 6px;
 }
 
 }
 
-.tagchecklist strong {
-       margin-left: 0;
-       margin-right: -8px;
+.about-wrap .wp-badge {
+       right: auto;
+       left: 0;
 }
 
 }
 
-.tagchecklist span {
+.about-wrap h2 .nav-tab {
        margin-right: 0;
        margin-right: 0;
-       margin-left: 25px;
-       float: right;
+       margin-left: 3px;
+}
 
 
+.about-wrap .changelog li {
+       margin-left: 0;
+       margin-right: 3em;
 }
 }
-.tagchecklist span a {
-       margin: 6px -9px 0pt 0pt;
+
+.about-wrap .feature-section .left-feature,
+.about-wrap .feature-section img,
+.about-wrap .feature-section .right-feature {
        float: right;
 }
 
        float: right;
 }
 
-#poststuff h2 {
-       clear: right;
+.about-wrap .feature-section .left-feature {
+       margin-right: 0;
+       margin-left: 0;
 }
 
 }
 
-#poststuff h3,
-.metabox-holder h3 {
-       font-family: Tahoma, Arial, sans-serif;
+.about-wrap .feature-section .right-feature {
+       margin-left: 0;
+       margin-right: 0;
 }
 
 }
 
-.tool-box .title {
-       font-family: Tahoma, Arial, sans-serif;
+.about-wrap .feature-section.text-features {
+       float: right;
 }
 }
-
-#sidemenu {
-       margin: -30px 315px 0 15px;
+.about-wrap .feature-section.screenshot-features {
        float: left;
        float: left;
-       padding-left: 0;
+}
+.about-wrap .feature-section.screenshot-features .angled-right {
+       margin-left: 0;
+       margin-right: 2.5em;
+}
+.about-wrap .feature-section.screenshot-features .angled-right p {
+       margin-left: 0;
+       margin-right: 290px;
+}
+
+.about-wrap .feature-section .angled-right img,
+.about-wrap .feature-section .angled-left img {
+       margin-right: 0;
+       margin-left: 30px;
+}
+
+.about-wrap .feature-section.three-col div {
+       margin-right: 0;
+       margin-left: 4.999999999%;
+       float: right;
+}
+.about-wrap .feature-section.three-col h4 {
+       text-align: right;
+}
+.about-wrap .feature-section.three-col img {
+       margin-right: 5px;
+       margin-left: 0;
+}
+.about-wrap .feature-section.three-col .last-feature {
+       margin-left: 0;
+}
+
+.about-wrap .feature-section .feature-images img {
+       margin-right: auto;
+       margin-left: 5px;
+}
+.about-wrap .feature-section.images-stagger-left .angled-left {
+       margin-left: auto;
+       margin-right: 5px;
+}
+.about-wrap .feature-section .angled-right {
+       float: left;
+}
+.about-wrap .feature-section.images-stagger-right .feature-images {
+       right: auto;
+       left: 0;
+}
+.about-wrap .feature-section.images-stagger-left .feature-images {
+       left: auto;
+       right: 0;
+}
+.about-wrap .feature-section.images-stagger-right .left-feature {
+       margin-right: 0;
+       margin-left: 350px;
+}
+.about-wrap .feature-section.images-stagger-left .right-feature {
+       margin-left: 0;
+       margin-right: 350px;
+}
+
+.about-wrap li.wp-person,
+.about-wrap li.wp-person img.gravatar {
+       float: right;
+       margin-right: 0;
+       margin-left: 10px;
+}
+
+/*------------------------------------------------------------------------------
+  23.0 - Misc
+------------------------------------------------------------------------------*/
+
+#template div {
+       margin-right: 0;
+       margin-left: 190px;
+}
+
+.column-author img, .column-username img {
+       float: right;
+       margin-right: 0;
+       margin-left: 10px;
+}
+
+.tagchecklist {
+       margin-left: 0;
+       margin-right: 14px;
+}
+
+.tagchecklist strong {
+       margin-left: 0;
+       margin-right: -8px;
+}
+
+.tagchecklist span {
+       margin-right: 0;
+       margin-left: 25px;
+       float: right;
+
+}
+.tagchecklist span a {
+       margin: 6px -9px 0pt 0pt;
+       float: right;
+}
+
+#poststuff h2 {
+       clear: right;
+}
+
+#poststuff h3,
+.metabox-holder h3 {
+       font-family: Tahoma, Arial, sans-serif;
+}
+
+.tool-box .title {
+       font-family: Tahoma, Arial, sans-serif;
+}
+
+#sidemenu {
+       margin: -30px 315px 0 15px;
+       float: left;
+       padding-left: 0;
        padding-right: 10px;
 }
 #sidemenu a {
        padding-right: 10px;
 }
 #sidemenu a {
@@ -1292,9 +1519,13 @@ table .column-rating {
        text-align: right;
 }
 
        text-align: right;
 }
 
+.screen-meta-toggle {
+       right: auto;
+       left: 15px;
+}
 
 /*------------------------------------------------------------------------------
 
 /*------------------------------------------------------------------------------
-  23.0  - Dead
+  24.0  - Dead
 ------------------------------------------------------------------------------*/
 
 /* - Not used anywhere in WordPress - verify and then deprecate
 ------------------------------------------------------------------------------*/
 
 /* - Not used anywhere in WordPress - verify and then deprecate
@@ -1320,7 +1551,7 @@ table .column-rating {
 
 
 /*------------------------------------------------------------------------------
 
 
 /*------------------------------------------------------------------------------
- 24.0 - TinyMCE tweaks
+ 25.0 - TinyMCE tweaks
                Small tweaks for until tinymce css files are proprely RTLized
 ------------------------------------------------------------------------------*/
 #editorcontainer .wp_themeSkin .mceStatusbar {
                Small tweaks for until tinymce css files are proprely RTLized
 ------------------------------------------------------------------------------*/
 #editorcontainer .wp_themeSkin .mceStatusbar {
@@ -1334,3 +1565,854 @@ table .column-rating {
 #editorcontainer .wp_themeSkin .mceStatusbar a.mceResize {
        float: left;
 }
 #editorcontainer .wp_themeSkin .mceStatusbar a.mceResize {
        float: left;
 }
+
+
+/* MERGED */
+
+/* global */
+
+/* 2 column liquid layout */
+
+#wpcontent {
+       margin-left: 0;
+       margin-right: 165px;
+}
+
+.folded #wpcontent {
+       margin-left: 0;
+       margin-right: 52px;
+}
+
+.folded.wp-admin #footer {
+       margin-left: 15px;
+       margin-right: 52px;
+}
+
+#wpbody-content {
+       float: right;
+}
+
+#adminmenuwrap {
+       float: right;
+}
+
+#adminmenu {
+       clear: right;
+}
+
+/* inner 2 column liquid layout */
+.inner-sidebar {
+       float: left;
+       clear: left;
+}
+
+.has-right-sidebar #post-body {
+       float: right;
+       clear: right;
+       margin-right: 0;
+       margin-left: -340px;
+}
+
+.has-right-sidebar #post-body-content {
+       margin-right: 0;
+       margin-left: 300px;
+}
+
+/* 2 columns main area */
+
+#col-right {
+       float: left;
+       clear: left;
+}
+
+/* utility classes*/
+.alignleft {
+       float: right;
+}
+
+.alignright {
+       float: left;
+}
+
+.textleft {
+       text-align: right;
+}
+
+.textright {
+       text-align: left;
+}
+
+/* Hide visually but not from screen readers */
+.screen-reader-text, .screen-reader-text span {
+       left: auto;
+       right: -1000em;
+}
+
+/* styles for use by people extending the WordPress interface */
+
+body,
+td,
+textarea,
+input,
+select {
+       font-family: Tahoma, Arial, sans-serif;
+}
+
+ul.ul-disc,
+ul.ul-square,
+ol.ol-decimal {
+       margin-left: 0;
+       margin-right: 1.8em;
+}
+
+.subsubsub {
+       float: right;
+}
+
+.widefat thead th:first-of-type {
+       -webkit-border-top-left-radius: 0;
+       -webkit-border-top-right-radius: 3px;
+       border-top-left-radius: 0;
+       border-top-right-radius: 3px;
+}
+
+.widefat thead th:last-of-type {
+       -webkit-border-top-right-radius: 0;
+       -webkit-border-top-left-radius: 3px;
+       border-top-right-radius: 0;
+       border-top-left-radius: 3px;
+}
+.widefat tfoot th:first-of-type {
+       -webkit-border-bottom-left-radius: 0;
+       -webkit-border-bottom-right-radius: 3px;
+       border-bottom-left-radius: 0;
+       border-bottom-right-radius: 3px;
+}
+.widefat tfoot th:last-of-type {
+       -webkit-border-bottom-right-radius: 0;
+       -webkit-border-bottom-left-radius: 3px;
+       border-bottom-right-radius: 0;
+       border-bottom-left-radius: 3px;
+}
+
+.widefat th {
+       text-align: right;
+}
+
+.widefat th input {
+       margin: 0 8px 0 0;
+}
+
+.wrap {
+       margin-right: 0;
+       margin-left: 15px;
+}
+
+
+.wrap h2,
+.subtitle {
+       font-family: Tahoma, Arial, sans-serif;
+}
+.wrap h2 {
+       padding-right: 0;
+       padding-left: 15px;
+}
+
+.subtitle {
+       padding-left: 0;
+       padding-right: 25px;
+}
+
+.wrap .add-new-h2 {
+       font-family: Tahoma, Arial, sans-serif;
+       margin-left: 0;
+       margin-right: 4px;
+}
+
+.wrap h2.long-header {
+       padding-left: 0;
+}
+
+
+/* dashboard */
+#dashboard-widgets-wrap .has-sidebar {
+       margin-right: 0;
+       margin-left: -51%;
+}
+
+#dashboard-widgets-wrap .has-sidebar .has-sidebar-content {
+       margin-right: 0;
+       margin-left: 51%;
+}
+
+.view-all {
+       right: auto;
+       left: 0;
+}
+
+#dashboard_right_now p.sub,
+#dashboard-widgets h4,
+a.rsswidget,
+#dashboard_plugins h4,
+#dashboard_plugins h5,
+#dashboard_recent_comments .comment-meta .approve {
+       font-family: Tahoma, Arial;
+}
+
+#dashboard_right_now p.sub  {
+       left:auto;
+       right:15px;
+}
+
+#dashboard_right_now td.b {
+       padding-right: 0;
+       padding-left: 6px;
+       text-align: left;
+       font-family: Tahoma, Arial;
+}
+
+#dashboard_right_now .t {
+       padding-right: 0;
+       padding-left: 12px;
+}
+
+#dashboard_right_now .table_content {
+       float:right;
+}
+
+#dashboard_right_now .table_discussion {
+       float:left;
+}
+
+#dashboard_right_now .versions a {
+       font-family: Tahoma, Arial;
+}
+
+#dashboard_right_now a.button {
+       float: left;
+       clear: left;
+}
+
+#dashboard_plugins .inside span {
+        padding-left: 0;
+        padding-right: 5px;
+}
+
+#dashboard-widgets h3 .postbox-title-action {
+       right: auto;
+       left: 30px;
+}
+
+#the-comment-list .pingback {
+       padding-left: 0 !important;
+       padding-right: 9px !important;
+}
+
+/* Recent Comments */
+#the-comment-list .comment-item {
+       padding: 1em 70px 1em 10px;
+}
+
+#the-comment-list .comment-item .avatar {
+       float: right;
+       margin-left: 0;
+       margin-right: -60px;
+}
+
+/* Feeds */
+.rss-widget cite {
+       text-align: left;
+}
+
+.rss-widget span.rss-date {
+       font-family: Tahoma, Arial;
+       margin-left: 0;
+       margin-right: 3px;
+}
+
+/* QuickPress */
+#dashboard_quick_press h4 {
+       float: right;
+       text-align: left;
+}
+
+#dashboard_quick_press .wp-media-buttons {
+       margin: 0 5em 0.5em 0;
+}
+
+#dashboard_quick_press h4 label {
+       margin-right: 0;
+       margin-left: 10px;
+}
+
+#dashboard_quick_press .input-text-wrap,
+#dashboard_quick_press .textarea-wrap {
+       margin: 0 5em 1em 0;
+}
+
+#dashboard_quick_press #media-buttons {
+       margin: 0 5em .5em 0;
+       padding: 0;
+}
+
+#dashboard-widgets #dashboard_quick_press form p.submit {
+       margin-left: 0;
+       margin-right: 4.6em;
+}
+
+#dashboard-widgets #dashboard_quick_press form p.submit input {
+       float: right;
+}
+
+#dashboard-widgets #dashboard_quick_press form p.submit #save-post {
+       margin: 0 10px 0 1em;
+}
+
+#dashboard-widgets #dashboard_quick_press form p.submit #publish {
+       float: left;
+}
+
+#dashboard-widgets #dashboard_quick_press form p.submit img.waiting {
+       margin: 4px 0 0 6px;
+}
+
+/* Recent Drafts */
+#dashboard_recent_drafts h4 abbr {
+       font-family: Tahoma, Arial;
+       margin-left:0;
+       margin-right: 3px;
+}
+
+/* login */
+body.login {
+       font-family: Tahoma, arial;
+}
+
+.login form {
+       margin-right: 8px;
+       margin-left: 0;
+}
+
+.login form .forgetmenot {
+       float: right;
+}
+
+.login form .submit {
+       float: left;
+}
+
+#login form .submit input {
+       font-family: Tahoma, arial;
+}
+
+.login #nav,
+.login #backtoblog {
+       margin: 0 16px 0 0;
+}
+
+#login_error,
+.login .message {
+       margin: 0 8px 16px 0;
+}
+
+.login #user_pass,
+.login #user_login,
+.login #user_email {
+       margin-left: 6px;
+       margin-right: 0;
+       direction:ltr;
+}
+
+.login h1 a {
+       text-decoration: none;
+}
+
+.login .button-primary {
+       float: left;
+}
+
+
+/* nav-menu */
+#nav-menus-frame {
+       margin-right: 300px;
+       margin-left: 0;
+}
+
+#wpbody-content #menu-settings-column {
+       margin-right: -300px;
+       margin-left: 0;
+       float: right;
+}
+
+/* Menu Container */
+#menu-management-liquid {
+       float: right;
+}
+
+#menu-management {
+       margin-left: 20px;
+       margin-right: 0;
+}
+
+.post-body-plain {
+       padding: 10px 0 0 10px;
+}
+
+/* Menu Tabs */
+
+#menu-management .nav-tabs-arrow-left {
+       right: 0;
+       left:auto;
+}
+
+#menu-management .nav-tabs-arrow-right {
+       left: 0;
+       right:auto;
+       text-align: left;
+       font-family: Tahoma, Arial, sans-serif;
+}
+
+#menu-management .nav-tabs {
+       padding-right: 20px;
+       padding-left: 10px;
+}
+
+.js #menu-management .nav-tabs {
+       float: right;
+       margin-right: 0px;
+       margin-left: -400px;
+}
+
+#select-nav-menu-container {
+       text-align: left;
+}
+
+#wpbody .open-label {
+       float:right;
+}
+
+#wpbody .open-label span {
+       padding-left: 10px;
+       padding-right:0;
+}
+
+.js .input-with-default-title {
+       font-style: normal;
+       font-weight: bold;
+}
+
+/* Add Menu Item Boxes */
+.postbox .howto input {
+       float: left;
+}
+#nav-menu-theme-locations .button-controls {
+       text-align: left;
+}
+
+/* Button Primary Actions */
+
+.meta-sep,
+.submitcancel {
+       float: right;
+}
+
+#cancel-save {
+       margin-left: 0;
+       margin-right: 20px;
+}
+
+/* Button Secondary Actions */
+.list-controls {
+        float: right;
+}
+.add-to-menu {
+       float: left;
+}
+
+/* Custom Links */
+#add-custom-link label span { float: right; padding-left: 5px; padding-right:0;}
+.howto span { float: right; }
+
+.list li .menu-item-title input { margin-left: 3px; margin-right: 0 }
+
+/* Nav Menu */
+.menu-item-handle {
+       padding-right: 10px;
+       padding-left: 0;
+}
+.menu-item-edit-active .menu-item-handle {
+       -webkit-border-bottom-left-radius: 0;
+       -webkit-border-bottom-right-radius: 0;
+       border-bottom-left-radius: 0;
+       border-bottom-right-radius: 0;
+}
+.menu-item-handle .item-title {
+       margin-left:13em;
+       margin-right:0;
+}
+
+
+/* WARNING: The factor of 30px is hardcoded into the nav-menus javascript. */
+.menu-item-depth-0 { margin-right: 0px; margin-left:0;}
+.menu-item-depth-1 { margin-right: 30px; margin-left:0;}
+.menu-item-depth-2 { margin-right: 60px; margin-left:0;}
+.menu-item-depth-3 { margin-right: 90px; margin-left:0;}
+.menu-item-depth-4 { margin-right: 120px; margin-left:0;}
+.menu-item-depth-5 { margin-right: 150px; margin-left:0;}
+.menu-item-depth-6 { margin-right: 180px; margin-left:0;}
+.menu-item-depth-7 { margin-right: 210px; margin-left:0;}
+.menu-item-depth-8 { margin-right: 240px; margin-left:0;}
+.menu-item-depth-9 { margin-right: 270px; margin-left:0;}
+.menu-item-depth-10 { margin-right: 300px; margin-left:0;}
+.menu-item-depth-11 { margin-right: 330px; margin-left:0;}
+
+.menu-item-depth-0 .menu-item-transport { margin-right: 0px; margin-left:0;}
+.menu-item-depth-1 .menu-item-transport { margin-right: -30px; margin-left:0;}
+.menu-item-depth-2 .menu-item-transport { margin-right: -60px; margin-left:0;}
+.menu-item-depth-3 .menu-item-transport { margin-right: -90px; margin-left:0;}
+.menu-item-depth-4 .menu-item-transport { margin-right: -120px; margin-left:0;}
+.menu-item-depth-5 .menu-item-transport { margin-right: -150px; margin-left:0;}
+.menu-item-depth-6 .menu-item-transport { margin-right: -180px; margin-left:0;}
+.menu-item-depth-7 .menu-item-transport { margin-right: -210px; margin-left:0;}
+.menu-item-depth-8 .menu-item-transport { margin-right: -240px; margin-left:0;}
+.menu-item-depth-9 .menu-item-transport { margin-right: -270px; margin-left:0;}
+.menu-item-depth-10 .menu-item-transport { margin-right: -300px; margin-left:0;}
+.menu-item-depth-11 .menu-item-transport { margin-right: -330px; margin-left:0;}
+
+/* Menu item controls */
+.item-type {
+       padding-left: 10px;
+       padding-right:0;
+}
+
+.item-controls {
+       left: 20px;
+       right: auto;
+}
+
+.item-controls .item-order {
+       padding-left: 10px;
+       padding-right: 0;
+}
+
+.item-edit {
+       left: -20px;
+       right:auto;
+       -webkit-border-bottom-right-radius: 3px;
+       -webkit-border-bottom-left-radius: 0;
+       border-bottom-right-radius: 3px;
+       border-bottom-left-radius: 0;
+}
+
+/* Menu editing */
+.menu-item-settings {
+       padding: 10px 10px 10px 0;
+       border-width: 0 1px 1px 1px;
+}
+
+.link-to-original {
+       font-style: normal;
+       font-weight: bold;
+}
+       .link-to-original a {
+               padding-right: 4px;
+               padding-left:0;
+       }
+
+.menu-item-settings .description-thin,
+.menu-item-settings .description-wide {
+       margin-left: 10px;
+       margin-right:0;
+       float: right;
+}
+
+/* Major/minor publishing actions (classes) */
+.major-publishing-actions .publishing-action {
+       text-align: left;
+       float: left;
+}
+
+.major-publishing-actions .delete-action {
+       text-align: right;
+       float: right;
+       padding-left: 15px;
+       padding-right:0;
+}
+
+.menu-name-label {
+       margin-left: 15px;
+       margin-right:0;
+}
+
+.auto-add-pages {
+       float: right;
+}
+
+
+/* plugin-install */
+div.star {
+       left: auto;
+       right: 0;
+       letter-spacing: 0;
+}
+
+.star img, div.star a, div.star a:hover, div.star a:visited {
+       right: auto;
+       left: 0;
+}
+
+#plugin-information ul#sidemenu {
+       left: auto;
+       right: 0;
+}
+
+#plugin-information h2 {
+       margin-right: 0;
+       margin-left: 200px;
+}
+
+#plugin-information .fyi {
+       margin-left: 5px;
+       margin-right: 20px;
+}
+
+#plugin-information .fyi h2 {
+       margin-left: 0;
+}
+
+#plugin-information .fyi ul {
+       padding: 10px 7px 10px 5px;
+}
+
+#plugin-information #section-screenshots li p {
+       padding-left: 0;
+       padding-right: 20px;
+}
+
+#plugin-information .updated,
+#plugin-information pre {
+       margin-right: 0;
+       margin-left: 215px;
+}
+
+#plugin-information .updated,
+#plugin-information .error {
+       clear: none;
+       direction: rtl;
+}
+
+#section-description {
+       direction: ltr;
+}
+
+/* Editor/Main Column */
+.posting {
+       margin-left: 212px;
+       margin-right: 0;
+       position: relative;
+}
+
+#side-info-column {
+       float: left;
+       right: auto;
+       left: 0;
+}
+
+h3.tb {
+       margin-left: 0;
+       margin-right: 5px;
+}
+
+#publish {
+       float: left;
+}
+
+.postbox .handlediv {
+       float: left;
+}
+
+.actions li {
+       float: right;
+       margin-right: 0;
+       margin-left: 10px;
+}
+
+#extra-fields .actions {
+    margin: -23px 0 0 -7px;
+}
+
+/* Photo Styles */
+#img_container a {
+       float: right;
+}
+
+#category-add input,
+#category-add select {
+       font-family: Tahoma, Arial;
+}
+
+.inline-editor ul.cat-checklist ul,
+.categorydiv ul.categorychecklist ul,
+#linkcategorydiv ul.categorychecklist ul {
+       margin-left: 0;
+       margin-right: 18px;
+}
+
+/* Categories */
+.category-tabs li {
+       padding-left: 0;
+       padding-right: 8px;
+}
+
+/* Tags */
+#tagsdiv #newtag {
+       margin-right: 0;
+       margin-left: 5px;
+}
+
+#tagadd {
+       margin-left: 0;
+       margin-right: 3px;
+}
+
+#tagchecklist span {
+       margin-left: .5em;
+       margin-right: 10px;
+       float: right;
+}
+#tagchecklist span a {
+       margin: 6px -9px 0 0;
+       float: right;
+}
+
+.submit input,
+.button,
+.button-primary,
+.button-secondary,
+.button-highlighted,
+#postcustomstuff .submit input {
+       font-family: Tahoma, Arial, sans-serif;
+}
+
+.ac_results li {
+       text-align: right;
+}
+
+#TB_ajaxContent #options {
+       right: auto;
+       left: 25px;
+}
+
+#post_status {
+       margin-left: 0;
+       margin-right: 10px;
+}
+
+/* theme-editor */
+#templateside {
+       float: left;
+}
+
+#template textarea {
+       direction: ltr;
+}
+
+/* theme-install */
+div.star {
+       left:auto;
+       right: 0;
+}
+
+.star img,
+div.star a,
+div.star a:hover,
+div.star a:visited {
+       right: auto;
+       left: 0;
+}
+
+.theme-listing .theme-item h3 {
+       font-style: normal;
+}
+
+#theme-information .theme-preview-img {
+       float: right;
+       margin: 5px 15px 10px 25px;
+}
+
+#theme-information .action-button #cancel {
+       float: right;
+}
+
+#theme-information .action-button #install {
+       float: left;
+}
+
+.feature-filter .feature-group {
+       float: right;
+}
+
+.feature-filter .feature-name {
+       float: right;
+       text-align: left;
+}
+
+.feature-filter .feature-group li {
+       float: right;
+       padding-right: 0;
+       padding-left: 25px;
+}
+
+/* widgets */
+/* 2 column liquid layout */
+div.widget-liquid-left {
+       float: right;
+       clear: right;
+       margin-right: 0;
+       margin-left: -325px;
+}
+
+div#widgets-left {
+       margin-right: 5px;
+       margin-left: 325px;
+}
+
+div.widget-liquid-right {
+       float: left;
+       clear: left;
+}
+
+.inactive-sidebar .widget {
+       float: right;
+}
+
+div.sidebar-name h3 {
+       font-family: Tahoma, Arial, sans-serif;
+}
+
+#widget-list .widget {
+       float: right;
+}
+
+.inactive-sidebar .widget-placeholder {
+       float: right;
+}
+
+.widget-top .widget-title-action {
+       float: left;
+}
+
+.widget-control-edit {
+       padding: 0 0 0 8px;
+}
+
+.sidebar-name-arrow {
+       float: left;
+}
+
+/* Press This */
+.press-this-sidebar {
+       float: left;
+}
+
+
index 3468a62f4a97a0e1cb87317e523bf366df832018..006b1971c93d8ffe9bc4279791ca67d46f867398 100644 (file)
@@ -1 +1 @@
-p,ul,ol,blockquote,input,select{font-size:12px;}ol{list-style-type:decimal;margin-left:2em;}.code,code{font-family:Consolas,Monaco,monospace;}kbd,code{padding:1px 3px;margin:0 1px;font-size:11px;}.quicktags,.search{font:12px Georgia,"Times New Roman","Bitstream Charter",Times,serif;}.icon32{float:left;height:34px;margin:7px 8px 0 0;width:36px;}.key-labels label{line-height:24px;}.pre{white-space:pre-wrap;white-space:-moz-pre-wrap!important;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word;}.howto{font-style:italic;display:block;font-family:sans-serif;}p.install-help{margin:8px 0;font-style:italic;}textarea,input[type="text"],input[type="password"],input[type="file"],input[type="button"],input[type="submit"],input[type="reset"],select{border-width:1px;border-style:solid;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;}select option{padding:2px;}.submit{padding:1.5em 0;margin:5px 0;-moz-border-radius:0 0 3px 3px;-webkit-border-bottom-left-radius:3px;-webkit-border-bottom-right-radius:3px;-khtml-border-bottom-left-radius:3px;-khtml-border-bottom-right-radius:3px;border-bottom-left-radius:3px;border-bottom-right-radius:3px;}form p.submit a.cancel:hover{text-decoration:none;}.submit input,.button,input.button,.button-primary,input.button-primary,.button-secondary,input.button-secondary,.button-highlighted,input.button-highlighted,#postcustomstuff .submit input{text-decoration:none;font-size:12px!important;line-height:13px;padding:3px 8px;cursor:pointer;border-width:1px;border-style:solid;-moz-border-radius:11px;-khtml-border-radius:11px;-webkit-border-radius:11px;border-radius:11px;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;-khtml-box-sizing:content-box;box-sizing:content-box;}#minor-publishing-actions input,#major-publishing-actions input,#minor-publishing-actions .preview{min-width:80px;text-align:center;}textarea.all-options,input.all-options{width:250px;}input.large-text,textarea.large-text{width:99%;}input.regular-text,#adduser .form-field input{width:25em;}input.small-text{width:50px;}#doaction,#doaction2,#post-query-submit{margin-right:8px;}.tablenav select[name="action"],.tablenav select[name="action2"]{width:130px;}.tablenav select[name="m"]{width:155px;}.tablenav select#cat{width:170px;}#wpcontent select{padding:2px;height:2em;font-size:12px;}#wpcontent option{padding:2px;}#timezone_string option{margin-left:1em;}label,#your-profile label+a{vertical-align:middle;}#misc-publishing-actions label{vertical-align:baseline;}#pass-strength-result{border-style:solid;border-width:1px;float:left;margin:13px 5px 5px 1px;padding:3px 5px;text-align:center;width:200px;display:none;}.indicator-hint{padding-top:8px;}p.search-box{float:right;margin:0;}#major-publishing-actions{padding:10px 10px 8px;clear:both;border-top:none;}#delete-action{line-height:25px;vertical-align:middle;text-align:left;float:left;}#publishing-action{text-align:right;float:right;line-height:23px;}#post-body #minor-publishing{padding-bottom:10px;}#post-body #misc-publishing-actions{padding:0;}#post-body .misc-pub-section{border-right-width:1px;border-right-style:solid;border-bottom:0 none;min-height:30px;float:left;max-width:32%;}#post-body .misc-pub-section-last{border-right:0;}#misc-publishing-actions{padding:6px 0 16px 0;}.misc-pub-section{padding:6px 10px;border-width:1px 0;border-style:solid;}.misc-pub-section:first-child{border-top-width:0;}.misc-pub-section-last{border-bottom-width:0;}#minor-publishing-actions{padding:10px 10px 2px 8px;text-align:right;}#minor-publishing{border-bottom-width:1px;border-bottom-style:solid;-webkit-box-shadow:0 1px 0 #fff;-moz-box-shadow:0 1px 0 #fff;box-shadow:0 1px 0 #fff;}#save-post{float:left;}#minor-publishing .ajax-loading{padding:3px 0 0 4px;float:left;}.preview{float:right;}#sticky-span{margin-left:18px;}#post-status-display,#post-visibility-display{font-weight:bold;}.side-info{margin:0;padding:4px;font-size:11px;}.side-info h5{padding-bottom:7px;font-size:14px;margin:12px 2px 5px;border-bottom-width:1px;border-bottom-style:solid;}.side-info ul{margin:0;padding-left:18px;list-style:square;}a.button,a.button-primary,a.button-secondary{line-height:15px;padding:3px 10px;white-space:nowrap;-webkit-border-radius:10px;}.approve{display:none;}.unapproved .approve,.spam .approve,.trash .approve{display:inline;}.unapproved .unapprove{display:none;}td.action-links,th.action-links{text-align:right;}.describe .del-link{padding-left:5px;}#update-nag,.update-nag{line-height:19px;padding:5px 0;font-size:12px;text-align:center;margin:0 15px;border-width:1px;border-style:solid;border-top-width:0;border-top-style:none;-moz-border-radius:0 0 3px 3px;-webkit-border-bottom-right-radius:3px;-webkit-border-bottom-left-radius:3px;-khtml-border-bottom-right-radius:3px;-khtml-border-bottom-left-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;}.plugins .plugin-update{padding:0;}.plugin-update .update-message{margin:0 10px 8px 31px;font-weight:bold;}ul#dismissed-updates{display:none;}form.upgrade{margin-top:8px;}form.upgrade .hint{font-style:italic;font-size:85%;margin:-0.5em 0 2em 0;}.ajax-feedback{visibility:hidden;vertical-align:bottom;}#ajax-response.alignleft{margin-left:2em;}#editorcontainer #content{font-family:Consolas,Monaco,monospace;padding:6px;line-height:150%;border:0 none;outline:none;resize:vertical;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-khtml-box-sizing:border-box;box-sizing:border-box;}#editorcontainer,#quicktags{border-style:solid;border-width:1px;border-collapse:separate;-moz-border-radius:3px 3px 0 0;-webkit-border-top-right-radius:3px;-webkit-border-top-left-radius:3px;-khtml-border-top-right-radius:3px;-khtml-border-top-left-radius:3px;border-top-right-radius:3px;border-top-left-radius:3px;}#quicktags{padding:0;margin-bottom:-3px;border-bottom-width:3px;background-image:url("../images/ed-bg.gif");background-position:left top;background-repeat:repeat-x;}#quicktags #ed_toolbar{padding:2px 4px 0;}#ed_toolbar input,#ed_reply_toolbar input{margin:3px 1px 4px;line-height:18px;display:inline-block;min-width:26px;padding:2px 4px;font-size:12px;}#ed_reply_toolbar input{margin:1px 2px 1px 1px;}#quicktags #ed_link,#ed_reply_toolbar #ed_reply_link{text-decoration:underline;}#quicktags #ed_del,#ed_reply_toolbar #ed_reply_del{text-decoration:line-through;}#quicktags #ed_em,#ed_reply_toolbar #ed_reply_em{font-style:italic;}#wp_editbtns,#wp_gallerybtns{padding:2px;position:absolute;display:none;z-index:999998;}#wp_editimgbtn,#wp_delimgbtn,#wp_editgallery,#wp_delgallery{margin:2px;padding:2px;border-width:1px;border-style:solid;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;}.fullscreen-overlay{z-index:149999;display:none;position:fixed;top:0;bottom:0;left:0;right:0;filter:inherit;}.fullscreen-active .fullscreen-overlay,.fullscreen-active #wp-fullscreen-body{display:block;}.fullscreen-fader{z-index:200000;}.fullscreen-active .fullscreen-fader{display:none;}#wp-fullscreen-body{width:100%;z-index:150005;display:none;position:absolute;top:0;left:0;}#wp-fullscreen-wrap{margin:0 auto 50px;position:relative;padding-top:60px;}#wp-fullscreen-title{font-size:1.7em;line-height:100%;outline:medium none;padding:6px 7px;width:100%;margin-bottom:30px;}#wp-fullscreen-container{padding:4px 10px 50px;}#wp-fullscreen-title,#wp-fullscreen-container{-moz-border-radius:0;-khtml-border-radius:0;-webkit-border-radius:0;border-radius:0;border:1px dashed transparent;background:transparent;-moz-transition-property:border-color;-moz-transition-duration:.6s;-webkit-transition-property:border-color;-webkit-transition-duration:.6s;-o-transition-property:border-color;-o-transition-duration:.6s;transition-property:border-color;transition-duration:.6s;}#wp_mce_fullscreen{width:100%;min-height:300px;border:0;background:transparent;font-family:Consolas,Monaco,monospace;line-height:1.6em;padding:0;overflow-y:hidden;outline:none;resize:none;}#wp-fullscreen-tagline{color:#BBB;font-size:18px;float:right;padding-top:5px;}#fullscreen-topbar{position:fixed;top:0;left:0;z-index:150050;border-bottom-style:solid;border-bottom-width:1px;min-width:800px;width:100%;height:40px;}#wp-fullscreen-toolbar{padding:6px 10px 0;clear:both;max-width:1100px;min-width:820px;margin:0 auto;}#wp-fullscreen-mode-bar,#wp-fullscreen-button-bar,#wp-fullscreen-close,#wp-fullscreen-count{float:left;}#wp-fullscreen-save{float:right;}#wp-fullscreen-save{padding:2px 2px 0 5px;}#wp-fullscreen-count,#wp-fullscreen-close{padding-top:5px;}#wp-fullscreen-central-toolbar{margin:auto;padding:0;}#wp-fullscreen-buttons>div{float:left;}#wp-fullscreen-mode-bar{padding:1px 14px 0 0;}#wp-fullscreen-modes a{display:block;font-size:11px;text-decoration:none;float:left;margin:1px 0 0 0;padding:2px 6px 2px;border-width:1px 1px 1px 0;border-style:solid;border-color:#bbb;color:#777;text-shadow:0 1px 0 #fff;background-color:#f4f4f4;background-image:-moz-linear-gradient(bottom,#e4e4e4,#f9f9f9);background-image:-webkit-gradient(linear,left bottom,left top,from(#e4e4e4),to(#f9f9f9));}#wp-fullscreen-modes a:hover,.wp-html-mode #wp-fullscreen-modes a:last-child,.wp-tmce-mode #wp-fullscreen-modes a:first-child{color:#333;border-color:#999;background-color:#eee;background-image:-moz-linear-gradient(bottom,#f9f9f9,#e0e0e0);background-image:-webkit-gradient(linear,left bottom,left top,from(#f9f9f9),to(#e0e0e0));}#wp-fullscreen-modes a:first-child{border-width:1px;-moz-border-radius:3px 0 0 3px;-webkit-border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;-khtml-border-top-left-radius:3px;-khtml-border-bottom-left-radius:3px;border-top-left-radius:3px;border-bottom-left-radius:3px;}#wp-fullscreen-modes a:last-child{-moz-border-radius:0 3px 3px 0;-webkit-border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;-khtml-border-top-right-radius:3px;-khtml-border-bottom-right-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;}#wp-fullscreen-buttons .active a{background:inherit;}#wp-fullscreen-buttons .hidden{display:none;}#wp-fullscreen-buttons .disabled{opacity:.5;}.wp-html-mode #wp-fullscreen-buttons div{display:none;}.wp-html-mode #wp-fullscreen-buttons div.wp-fullscreen-both{display:block;}#fullscreen-topbar.fullscreen-make-sticky{display:block!important;}#wp-fullscreen-save img{vertical-align:middle;}#wp-fullscreen-save img,#wp-fullscreen-save span{padding-right:4px;display:none;}#wp-fullscreen-buttons .mce_image .mce_image{background-image:url("../images/menu.png?ver=20100531");background-position:-124px -38px;}#wp-fullscreen-buttons .mce_image .mce_image:hover{background-position:-124px -6px;}.fullscreen-active #TB_overlay{z-index:150100;}.fullscreen-active #TB_window{z-index:150102;}#wp_mce_fullscreen_ifr{background:transparent;}#wp_mce_fullscreen_parent #wp_mce_fullscreen_tbl tr.mceFirst{display:none;}#wp-fullscreen-container .wp_themeSkin table td{vertical-align:top;}#wphead-info{margin:0 0 0 15px;}#user_info{float:right;font-size:12px;line-height:26px;height:25px;position:relative;z-index:49;border-style:solid;border-width:0;margin-top:3px;padding:0 2px 0 6px;}#user_info.active{border-width:1px;margin-right:-1px;margin-top:2px;-moz-border-radius:3px 3px 0 0;-webkit-border-top-right-radius:3px;-webkit-border-top-left-radius:3px;-khtml-border-top-right-radius:3px;-khtml-border-top-left-radius:3px;border-top-right-radius:3px;border-top-left-radius:3px;}#user_info p{margin:0;padding:0;line-height:25px;cursor:pointer;}#user_info .hide-if-no-js p{margin:0 20px 0 0;}#user_info:hover .hide-if-no-js p{text-decoration:underline;}#user_info.active .hide-if-no-js p{text-decoration:none;}#user_info_arrow{height:22px;width:22px;position:absolute;right:3px;top:0;cursor:pointer;}#user_info_links_wrap{min-width:100px;width:100%;position:absolute;top:25px;right:0;padding:0;text-shadow:rgba(255,255,255,0.7) 0 1px 0;}#user_info_links{position:absolute;left:-1px;right:-1px;overflow:hidden;}#user_info.active #user_info_links ul{margin-top:0;-moz-transition:margin-top 200ms;-webkit-transition:margin-top 200ms;-o-transition:margin-top 200ms;transition:margin-top 200ms;}#user_info_links ul{border-width:1px;border-style:solid;margin-top:-1000px;-moz-transition:margin-top 500ms ease-in;-webkit-transition:margin-top 500ms ease-in;-o-transition:margin-top 500ms ease-in;transition:margin-top 500ms ease-in;}#user_info_links,#user_info_links ul,#user_info_links li:last-child{-moz-border-radius:0 0 3px 3px;-webkit-border-bottom-right-radius:3px;-webkit-border-bottom-left-radius:3px;-khtml-border-bottom-right-radius:3px;-khtml-border-bottom-left-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;}#user_info_links li{display:block;margin:0;}#user_info_links a{display:block;padding:6px 8px;}#wphead{height:32px;margin-right:20px;margin-left:2px;}#wphead a,#adminmenu a,#sidemenu a,#taglist a,#catlist a,#show-settings a{text-decoration:none;}#header-logo{float:left;margin:7px 0;-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none;user-select:none;}#wphead h1{font:normal 16px Georgia,"Times New Roman","Bitstream Charter",Times,serif;padding:6px 8px 5px;margin:0;float:left;}#wphead h1 a:hover{text-decoration:none;}#wphead h1 a:hover #site-title{text-decoration:underline;}#favorite-actions{margin:0 12px 0 15px;min-width:130px;position:relative;display:inline-block;top:-1px;}#favorite-first{-moz-border-radius:12px;-khtml-border-radius:12px;-webkit-border-radius:12px;border-radius:12px;line-height:15px;padding:0 30px 0 0;border-width:1px;border-style:solid;}#favorite-inside{margin:0;padding:2px 1px;border-width:1px;border-style:solid;position:absolute;z-index:11;display:none;-moz-border-radius:0 0 12px 12px;-webkit-border-bottom-right-radius:12px;-webkit-border-bottom-left-radius:12px;-khtml-border-bottom-right-radius:12px;-khtml-border-bottom-left-radius:12px;border-bottom-right-radius:12px;border-bottom-left-radius:12px;}#favorite-first a{padding:2px 0 2px 12px;}#favorite-actions a{display:block;text-decoration:none;font-size:11px;}#favorite-inside a{padding:3px 5px 3px 10px;line-height:20px;}#favorite-toggle{height:18px;position:absolute;right:0;top:1px;width:28px;border-width:0 0 0 1px;border-style:solid;}#favorite-actions .slide-down{-moz-border-radius:12px 12px 0 0;-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;-khtml-border-bottom-right-radius:0;-khtml-border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom-left-radius:0;border-bottom:none;}#screen-meta{position:relative;clear:both;}#screen-meta-links{margin:0 24px 0 0;}#screen-meta .screen-reader-text{visibility:hidden;}#screen-options-link-wrap,#contextual-help-link-wrap{float:right;height:22px;padding:0;margin:0 0 0 6px;font-family:sans-serif;-moz-border-radius-bottomleft:3px;-moz-border-radius-bottomright:3px;-webkit-border-bottom-left-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-left-radius:3px;border-bottom-right-radius:3px;}#contextual-help-wrap li{list-style-type:disc;margin-left:18px;}.toggle-arrow{background-repeat:no-repeat;background-position:top left;background-color:transparent;height:22px;line-height:22px;display:block;}.toggle-arrow-active{background-position:bottom left;}#screen-meta a.show-settings{text-decoration:none;z-index:1;padding:0 16px 0 6px;height:22px;line-height:22px;font-size:12px;display:block;text-shadow:rgba(255,255,255,0.7) 0 1px 0;}#screen-meta a.show-settings:hover{text-decoration:none;}#screen-options-wrap h5,#contextual-help-wrap h5{margin:8px 0;font-size:13px;}#screen-options-wrap,#contextual-help-wrap{border-style:none solid solid;border-top:0 none;border-width:0 1px 1px;margin:0 20px 0 0;padding:8px 12px 12px;}.metabox-prefs label{display:inline-block;padding-right:15px;white-space:nowrap;line-height:30px;}.metabox-prefs label input{margin:0 5px 0 2px;}.metabox-prefs label a{display:none;}#adminmenuback,#adminmenuwrap{border-width:0 1px 0 0;border-style:solid;}#adminmenuwrap{position:relative;}#adminmenushadow{position:absolute;top:0;right:0;bottom:0;width:6px;z-index:20;}#adminmenu *{-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none;user-select:none;}#adminmenu .wp-submenu{display:none;list-style:none;padding:0;margin:0;position:relative;z-index:2;}#adminmenu .wp-submenu a{font-size:12px;line-height:18px;}#adminmenu .wp-submenu li.current,#adminmenu .wp-submenu li.current a,#adminmenu .wp-submenu li.current a:hover{font-weight:bold;}#adminmenu a.menu-top,#adminmenu .wp-submenu-head{font-size:13px;line-height:18px;}#adminmenu div.wp-submenu-head{display:none;}.js.folded #adminmenu div.wp-submenu-head{display:block;}.js.folded #adminmenu a.menu-top,body.no-js #adminmenu .wp-menu-toggle,.js.folded #adminmenu div.wp-menu-toggle{display:none;}body.js #adminmenu li.wp-menu-open .wp-submenu,body.no-js #adminmenu .open-if-no-js .wp-submenu,body.no-js #adminmenu li.wp-has-current-submenu .wp-submenu{display:block;}#adminmenu div.wp-menu-image{float:left;width:28px;height:28px;}.js.folded #adminmenu div.wp-menu-image{width:32px;}#adminmenu li{margin:0;padding:0;cursor:pointer;}#adminmenu a{display:block;line-height:18px;padding:2px 5px;}#adminmenu li.menu-top{min-height:26px;position:relative;}#adminmenu a.menu-top{font-weight:bold;line-height:18px;min-width:10em;padding:5px 5px;border-width:1px 0 1px;border-style:solid;}#adminmenu li.wp-menu-open{border-width:0 0 1px;border-style:solid;}#adminmenu .wp-submenu a{margin:0;padding-left:12px;}.wp-menu-arrow{display:none;}#adminmenu li.wp-has-current-submenu .wp-menu-arrow,#adminmenu li.menu-top.current .wp-menu-arrow{display:block;position:absolute;right:-9px;top:0;cursor:auto;z-index:25;}#adminmenu .wp-menu-arrow div{width:15px;height:30px;background:url(../images/menu-arrow-frame.png) top right no-repeat;}#adminmenu .wp-submenu li{padding:0;margin:0;}.js.folded #adminmenu li.menu-top{width:32px;height:29px;border-width:1px 0;border-style:solid;}#adminmenu .wp-menu-image img{float:left;padding:8px 6px 0;opacity:.6;filter:alpha(opacity=60);}#adminmenu li.menu-top:hover .wp-menu-image img,#adminmenu li.wp-has-current-submenu .wp-menu-image img{opacity:1;filter:alpha(opacity=100);}#adminmenu li.wp-menu-separator{height:3px;padding:0;margin:0;border-width:1px 0;border-style:solid;cursor:inherit;}#adminmenu div.separator{height:1px;padding:0;border-width:1px 0 0 0;border-style:solid;}.js.folded #adminmenu .wp-submenu{display:block;position:absolute;top:-5px;left:26px;z-index:999;width:0;padding:0;overflow:hidden;-moz-transition:width 200ms ease-out;-webkit-transition:width 200ms ease-out;-o-transition:width 200ms ease-out;transition:width 200ms ease-out;}.js.folded #adminmenu .wp-submenu.sub-open{padding:0 8px 8px 0;}#adminmenu .wp-submenu .wp-submenu-head{padding:6px 4px 5px 10px;cursor:default;border-width:1px 0;border-style:solid;}.js.folded #adminmenu .wp-submenu-wrap{margin-top:4px;border-width:0 1px 1px 0;border-style:solid;position:relative;-webkit-border-bottom-right-radius:3px;-webkit-border-top-right-radius:3px;-khtml-border-bottom-right-radius:3px;-khtml-border-top-right-radius:3px;-moz-border-radius-bottomright:3px;-moz-border-radius-topright:3px;border-bottom-right-radius:3px;border-top-right-radius:3px;}.js.folded #adminmenu .wp-submenu ul{border-width:0 0 0 1px;border-style:solid;}.js.folded #adminmenu .wp-submenu a{padding-left:10px;}.js.folded #adminmenu a.wp-has-submenu{margin-left:40px;}#adminmenu .wp-menu-toggle{width:18px;clear:right;float:right;margin:1px 0 0;height:27px;padding:1px 2px 0 0;cursor:pointer;}#adminmenu .wp-menu-image a{height:24px;}#adminmenu .wp-menu-image img{padding:6px 0 0 1px;}#adminmenu .awaiting-mod,#adminmenu span.update-plugins,#sidemenu li a span.update-plugins{position:absolute;font-family:sans-serif;font-size:9px;line-height:17px;font-weight:bold;margin-top:1px;margin-left:7px;-moz-border-radius:10px;-khtml-border-radius:10px;-webkit-border-radius:10px;border-radius:10px;}#adminmenu li .awaiting-mod span,#adminmenu li span.update-plugins span,#sidemenu li a span.update-plugins span{display:block;padding:0 6px;}#adminmenu li span.count-0,#sidemenu li a .count-0{display:none;}.post-com-count-wrapper{min-width:22px;font-family:sans-serif;}.post-com-count{height:1.3em;line-height:1.1em;display:block;text-decoration:none;padding:0 0 6px;cursor:pointer;background-position:center -80px;background-repeat:no-repeat;}.post-com-count span{font-size:11px;font-weight:bold;height:1.4em;line-height:1.4em;min-width:.7em;padding:0 6px;display:inline-block;cursor:pointer;-moz-border-radius:5px;-khtml-border-radius:5px;-webkit-border-radius:5px;border-radius:5px;}strong .post-com-count{background-position:center -55px;}.post-com-count:hover{background-position:center -3px;}.column-response .post-com-count{float:left;margin-right:5px;text-align:center;}.response-links{float:left;}#the-comment-list .attachment-80x60{padding:4px 8px;}#collapse-menu{font-size:12px;line-height:34px;}.js.folded #collapse-menu span{display:none;}#collapse-button,#collapse-button div{width:15px;height:15px;}#collapse-button{float:left;margin:8px 6px;border-width:1px;border-style:solid;-moz-border-radius:10px;-khtml-border-radius:10px;-webkit-border-radius:10px;border-radius:10px;}body.wp-admin{min-width:785px;}body.admin-bar #wphead,body.admin-bar #adminmenu{padding-top:28px;}.narrow{width:70%;margin-bottom:40px;}.narrow p{line-height:150%;}.widefat th,.widefat td{overflow:hidden;}.widefat th{font-family:Georgia,"Times New Roman","Bitstream Charter",Times,serif;font-weight:normal;}.widefat td p{margin:2px 0 .8em;}.widefat .column-comment p{margin:.6em 0;}.postbox-container{float:left;padding-right:.5%;}.postbox-container .meta-box-sortables{min-height:300px;}.postbox .hndle{cursor:move;}.hndle a{font-size:11px;font-weight:normal;}.postbox .handlediv{float:right;width:27px;height:30px;cursor:pointer;}.sortable-placeholder{border-width:1px;border-style:dashed;margin-bottom:20px;}.widget,.postbox,.stuffbox{margin-bottom:20px;padding:0;border-width:1px;border-style:solid;line-height:1;}.widget .widget-top,.postbox h3,.stuffbox h3{margin-top:1px;border-bottom-width:1px;border-style:solid;cursor:move;-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none;user-select:none;}.postbox .inside,.stuffbox .inside{padding:0 10px;}.postbox.closed h3{border:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;}.postbox table.form-table{margin-bottom:0;}.postbox input[type="text"],.postbox textarea,.stuffbox input[type="text"],.stuffbox textarea{border-width:1px;border-style:solid;}.temp-border{border:1px dotted #ccc;}.columns-prefs label{padding:0 5px;}#wpbody-content .metabox-holder{padding-top:10px;}#dashboard-widgets .meta-box-sortables{margin:0 5px;}#dashboard_recent_comments div.undo{border-top-style:solid;border-top-width:1px;margin:0 -10px;padding:3px 8px;font-size:11px;}#the-comment-list td.comment p.comment-author{margin-top:0;margin-left:0;}#the-comment-list p.comment-author img{float:left;margin-right:8px;}#the-comment-list p.comment-author strong a{border:none;}#the-comment-list td{vertical-align:top;}#the-comment-list td.comment{word-wrap:break-word;}table.fixed{table-layout:fixed;}.fixed .column-rating,.fixed .column-visible{width:8%;}.fixed .column-date,.fixed .column-parent,.fixed .column-links{width:10%;}.fixed .column-response,.fixed .column-author,.fixed .column-categories,.fixed .column-tags,.fixed .column-rel,.fixed .column-role{width:15%;}.fixed .column-comments{width:4em;padding:8px 0;text-align:left;}.fixed .column-comments .vers{padding-left:3px;}.fixed .column-comments a{float:left;}.fixed .column-slug{width:25%;}.fixed .column-posts{width:10%;}.fixed .column-icon{width:80px;}#commentsdiv .fixed .column-author,#comments-form .fixed .column-author{width:20%;}#commentsdiv.postbox .inside{line-height:1.4em;margin:0;padding:0;}#commentsdiv.postbox .inside .row-actions{line-height:18px;}#commentsdiv.postbox .inside td{padding:1em 10px;}#commentsdiv.postbox .inside .column-author{width:33%;}#commentsdiv.postbox .inside p{margin:6px 10px 8px;}#commentsdiv.postbox .column-comment p{margin:.6em 0;}#commentsdiv.postbox #replyrow td{padding:0;}.sorting-indicator{display:none;width:7px;height:4px;margin-top:8px;margin-left:7px;background-image:url(../images/sort.gif);background-repeat:no-repeat;}.fixed .column-comments .sorting-indicator{margin-top:3px;}.widefat th.sortable,.widefat th.sorted{padding:0;}th.sortable a,th.sorted a{display:block;overflow:hidden;padding:7px 7px 8px;}.fixed .column-comments.sortable a,.fixed .column-comments.sorted a{padding:8px 0;}th.sortable a span,th.sorted a span{float:left;cursor:pointer;}th.sorted.asc .sorting-indicator,th.desc:hover span.sorting-indicator{display:block;background-position:0 0;}th.sorted.desc .sorting-indicator,th.asc:hover span.sorting-indicator{display:block;background-position:-7px 0;}.tablenav-pages a{border-bottom-style:solid;border-bottom-width:2px;font-weight:bold;margin-right:1px;padding:0 2px;}.tablenav-pages .current-page{text-align:center;}.tablenav-pages .next-page{margin-left:2px;}.tablenav a.button-secondary{display:block;margin:3px 8px 0 0;}.tablenav{clear:both;height:30px;margin:6px 0 4px;vertical-align:middle;}.tablenav .tablenav-pages{float:right;display:block;cursor:default;height:30px;line-height:30px;font-size:12px;}.tablenav .no-pages,.tablenav .one-page .pagination-links{display:none;}.tablenav .tablenav-pages a,.tablenav-pages span.current{text-decoration:none;border:none;padding:3px 6px;border-width:1px;border-style:solid;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;}.tablenav .tablenav-pages a.disabled:hover{cursor:default;}.tablenav .tablenav-pages a.disabled:active{cursor:default;}.tablenav .displaying-num{margin-right:10px;font-size:12px;font-family:Georgia,"Times New Roman","Bitstream Charter",Times,serif;font-style:italic;}.tablenav .actions{padding:2px 8px 0 0;}.tablenav .delete{margin-right:20px;}.view-switch{float:right;margin:6px 8px 0;}.view-switch a{text-decoration:none;}.filter{float:left;margin:-5px 0 0 10px;}.filter .subsubsub{margin-left:-10px;margin-top:13px;}.screen-per-page{width:3em;}#posts-filter fieldset{float:left;margin:0 1.5ex 1em 0;padding:0;}#posts-filter fieldset legend{padding:0 0 .2em 1px;}span.post-state-format{font-weight:normal;}tr.inline-edit-row td{padding:0 .5em;}#wpbody-content .inline-edit-row fieldset{font-size:12px;float:left;margin:0;padding:0;width:100%;}#wpbody-content .inline-edit-row fieldset .inline-edit-col{padding:0 .5em;}#wpbody-content .quick-edit-row-page fieldset.inline-edit-col-right .inline-edit-col{border-width:0 0 0 1px;border-style:none none none solid;}#wpbody-content .quick-edit-row-post .inline-edit-col-left{width:40%;}#wpbody-content .quick-edit-row-post .inline-edit-col-right{width:39%;}#wpbody-content .inline-edit-row-post .inline-edit-col-center{width:20%;}#wpbody-content .quick-edit-row-page .inline-edit-col-left{width:50%;}#wpbody-content .quick-edit-row-page .inline-edit-col-right,#wpbody-content .bulk-edit-row-post .inline-edit-col-right{width:49%;}#wpbody-content .bulk-edit-row .inline-edit-col-left{width:30%;}#wpbody-content .bulk-edit-row-page .inline-edit-col-right{width:69%;}#wpbody-content .bulk-edit-row .inline-edit-col-bottom{float:right;width:69%;}#wpbody-content .inline-edit-row-page .inline-edit-col-right{margin-top:27px;}.inline-edit-row fieldset .inline-edit-group{clear:both;}.inline-edit-row fieldset .inline-edit-group:after{content:".";display:block;height:0;clear:both;visibility:hidden;}.inline-edit-row p.submit{clear:both;padding:.5em;margin:.5em 0 0;}.inline-edit-row span.error{line-height:22px;margin:0 15px;padding:3px 5px;}.inline-edit-row h4{margin:.2em 0;padding:0;line-height:23px;}.inline-edit-row fieldset span.title,.inline-edit-row fieldset span.checkbox-title{margin:0;padding:0;line-height:27px;}.inline-edit-row fieldset label,.inline-edit-row fieldset span.inline-edit-categories-label{display:block;margin:.2em 0;}.inline-edit-row fieldset label.inline-edit-tags{margin-top:0;}.inline-edit-row fieldset label.inline-edit-tags span.title{margin:.2em 0;}.inline-edit-row fieldset label span.title{display:block;float:left;width:5em;}.inline-edit-row fieldset label span.input-text-wrap{display:block;margin-left:5em;}.quick-edit-row-post fieldset.inline-edit-col-right label span.title{width:auto;padding-right:.5em;}.inline-edit-row .input-text-wrap input[type=text]{width:100%;}.inline-edit-row fieldset label input[type=checkbox]{vertical-align:text-bottom;}.inline-edit-row fieldset label textarea{width:100%;height:4em;}#wpbody-content .bulk-edit-row fieldset .inline-edit-group label{max-width:50%;}#wpbody-content .quick-edit-row fieldset .inline-edit-group label.alignleft:first-child{margin-right:.5em;}.inline-edit-col-right .input-text-wrap input.inline-edit-menu-order-input{width:6em;}.inline-edit-row h4{text-transform:uppercase;}.inline-edit-row fieldset span.title,.inline-edit-row fieldset span.checkbox-title{font-family:Georgia,"Times New Roman","Bitstream Charter",Times,serif;font-style:italic;line-height:1.8em;}.inline-edit-row fieldset input[type="text"],.inline-edit-row fieldset textarea{border-style:solid;border-width:1px;}.inline-edit-row fieldset .inline-edit-date{float:left;}.inline-edit-row fieldset input[name=jj],.inline-edit-row fieldset input[name=hh],.inline-edit-row fieldset input[name=mn]{font-size:12px;width:2.1em;}.inline-edit-row fieldset input[name=aa]{font-size:12px;width:3.5em;}.inline-edit-row fieldset label input.inline-edit-password-input{width:8em;}.inline-edit-row .catshow,.inline-edit-row .cathide{cursor:pointer;}ul.cat-checklist{height:12em;border-style:solid;border-width:1px;overflow-y:scroll;padding:0 5px;margin:0;}#bulk-titles{display:block;height:12em;border-style:solid;border-width:1px;overflow-y:scroll;padding:0 5px;margin:0 0 5px;}.inline-edit-row fieldset ul.cat-checklist li,.inline-edit-row fieldset ul.cat-checklist input{margin:0;}.inline-edit-row fieldset ul.cat-checklist label,.inline-edit-row .catshow,.inline-edit-row .cathide,.inline-edit-row #bulk-titles div{font-family:sans-serif;font-style:normal;font-size:11px;}table .inline-edit-row fieldset ul.cat-hover{height:auto;max-height:30em;overflow-y:auto;position:absolute;}.inline-edit-row fieldset label input.inline-edit-menu-order-input{width:3em;}.inline-edit-row fieldset label input.inline-edit-slug-input{width:75%;}.quick-edit-row-post fieldset label.inline-edit-status{float:left;}#bulk-titles{line-height:140%;}#bulk-titles div{margin:.2em .3em;}#bulk-titles div a{cursor:pointer;display:block;float:left;height:10px;margin:3px 3px 0 -2px;overflow:hidden;position:relative;text-indent:-9999px;width:10px;}#titlediv{position:relative;margin-bottom:20px;}#titlediv label{cursor:text;}#titlediv div.inside{margin:0;}#poststuff #titlewrap{border:0;padding:0;}#titlediv #title{padding:3px 4px;border-width:1px;border-style:solid;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;font-size:1.7em;line-height:100%;width:100%;outline:none;}#titlediv #title-prompt-text,#wp-fullscreen-title-prompt-text{color:#bbb;position:absolute;font-size:1.7em;padding:8px;}#wp-fullscreen-title-prompt-text{left:0;padding:11px;}#poststuff .inside-submitbox,#side-sortables .inside-submitbox{margin:0 3px;font-size:11px;}input#link_description,input#link_url{width:98%;}#pending{background:0 none;border:0 none;padding:0;font-size:11px;margin-top:-1px;}#edit-slug-box{height:1em;margin-top:8px;padding:0 7px;}#editable-post-name-full{display:none;}#editable-post-name input{width:16em;}.postarea h3 label{float:left;}.postarea #add-media-button{float:right;margin:7px 0 0;position:relative;right:10px;}#poststuff #editor-toolbar{height:30px;}.wp_themeSkin tr.mceFirst td.mceToolbar{border-width:0 0 1px;border-style:none none solid;}#edButtonPreview,#edButtonHTML{height:18px;margin:5px 5px 0 0;padding:4px 5px 2px;float:right;cursor:pointer;border-width:1px;border-style:solid;-moz-border-radius:3px 3px 0 0;-webkit-border-top-right-radius:3px;-webkit-border-top-left-radius:3px;-khtml-border-top-right-radius:3px;-khtml-border-top-left-radius:3px;border-top-right-radius:3px;border-top-left-radius:3px;}.js .theEditor{color:white;}#poststuff #edButtonHTML{margin-right:15px;}#media-buttons{cursor:default;padding:8px 8px 0;}#media-buttons a{cursor:pointer;padding:0 0 5px 10px;}#media-buttons img,#submitpost #ajax-loading,#submitpost .ajax-loading{vertical-align:middle;}#wpcontent .ajax-loading{visibility:hidden;}.submitbox .submit{text-align:left;padding:12px 10px 10px;font-size:11px;}.submitbox .submitdelete{border-bottom-width:1px;border-bottom-style:solid;text-decoration:none;padding:1px 2px;}.inside-submitbox #post_status{margin:2px 0 2px -2px;}.submitbox .submit a:hover{border-bottom-width:1px;border-bottom-style:solid;}.submitbox .submit input{margin-bottom:8px;margin-right:4px;padding:6px;}#post-status-select,#post-format{line-height:2.5em;margin-top:3px;}#post-body #normal-sortables{min-height:50px;}#post-body #advanced-sortables{min-height:20px;}.postbox{-moz-border-radius:3px;-webkit-border-radius:3px;-khtml-border-radius:3px;border-radius:3px;position:relative;min-width:255px;}#trackback_url{width:99%;}#normal-sortables .postbox .submit{background:transparent none;border:0 none;float:right;padding:0 12px;margin:0;}#side-sortables .category-add input{width:94%;}#side-sortables .category-add select{width:100%;}#side-sortables .category-add input.category-add-sumbit,#post-body .category-add input.category-add input.category-add-sumbit{width:auto;}#post-body ul.category-tabs,#post-body ul.add-menu-item-tabs{float:left;width:120px;text-align:right;margin:0 -120px 0 5px;padding:0;}#post-body ul.category-tabs li,#post-body ul.add-menu-item-tabs li{padding:8px;}#post-body ul.category-tabs li.tabs,#post-body ul.add-menu-item-tabs li.tabs{-moz-border-radius:3px 0 0 3px;-webkit-border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;-khtml-border-top-left-radius:3px;-khtml-border-bottom-left-radius:3px;border-top-left-radius:3px;border-bottom-left-radius:3px;}#post-body ul.category-tabs li.tabs a,#post-body ul.add-menu-item-tabs li.tabs a{font-weight:bold;text-decoration:none;}.wp-tab-panel,.categorydiv div.tabs-panel,.customlinkdiv div.tabs-panel,.posttypediv div.tabs-panel,.taxonomydiv div.tabs-panel,#linkcategorydiv div.tabs-panel{height:200px;overflow:auto;padding:.5em .9em;border-style:solid;border-width:1px;}.nav-menus-php .customlinkdiv div.tabs-panel,.nav-menus-php .posttypediv div.tabs-panel,.nav-menus-php .taxonomydiv div.tabs-panel{height:auto;max-height:205px;}div.tabs-panel-active{display:block;}div.tabs-panel-inactive{display:none;}#post-body .categorydiv div.tabs-panel,.taxonomy div.tabs-panel,#post-body #linkcategorydiv div.tabs-panel{margin:0 5px 0 125px;}#side-sortables .category-tabs li,#side-sortables .add-menu-item-tabs li,.wp-tab-bar li{display:inline;line-height:1.35em;}#side-sortables .category-tabs a,#side-sortables .add-menu-item-tabs a,.wp-tab-bar a{text-decoration:none;}#side-sortables .category-tabs,#side-sortables .add-menu-item-tabs,.wp-tab-bar{margin-bottom:3px;}.categorydiv ul,.customlinkdiv ul,.posttypediv ul,.taxonomydiv ul,#linkcategorydiv ul{list-style:none;padding:0;margin:0;}#normal-sortables .postbox #replyrow .submit{float:none;margin:0;padding:3px 7px;}#side-sortables .submitbox .submit input,#side-sortables .submitbox .submit .preview,#side-sortables .submitbox .submit a.preview:hover{border:0 none;}#side-sortables .inside-submitbox .insidebox,.stuffbox .insidebox{margin:11px 0;}#side-sortables .comments-box,#normal-sortables .comments-box{border:0 none;}ul.category-tabs,ul.add-menu-item-tabs,ul.wp-tab-bar{margin-top:12px;}#side-sortables .comments-box thead th,#normal-sortables .comments-box thead th{background:transparent;padding:0 7px 4px;font-style:italic;}ul.category-tabs li.tabs,ul.add-menu-item-tabs li.tabs,.wp-tab-active{border-style:solid solid none;border-width:1px 1px 0;}#commentsdiv img.waiting{padding-left:5px;}#post-body .category-tabs li.tabs,#post-body .add-menu-item-tabs li.tabs{border-style:solid none solid solid;border-width:1px 0 1px 1px;margin-right:-1px;}ul.category-tabs li,ul.add-menu-item-tabs li,ul.wp-tab-bar li{padding:5px;-moz-border-radius:3px 3px 0 0;-webkit-border-top-left-radius:3px;-webkit-border-top-right-radius:3px;-khtml-border-top-left-radius:3px;-khtml-border-top-right-radius:3px;border-top-left-radius:3px;border-top-right-radius:3px;}form#tags-filter{position:relative;}.screen-per-page{width:3em;}#posts-filter fieldset{float:left;margin:0 1.5ex 1em 0;padding:0;}#posts-filter fieldset legend{padding:0 0 .2em 1px;}td.post-title strong,td.plugin-title strong{display:block;margin-bottom:.2em;}td.post-title p,td.plugin-title p{margin:6px 0;}.wp-hidden-children .wp-hidden-child,.ui-tabs-hide{display:none;}.commentlist .avatar{vertical-align:text-top;}#post-body .tagsdiv #newtag{margin-right:5px;width:16em;}#side-sortables input#post_password{width:94%;}#side-sortables .tagsdiv #newtag{width:68%;}#post-status-info{border-width:0 1px 1px;border-style:none solid solid;width:100%;-moz-border-radius:0 0 3px 3px;-webkit-border-bottom-left-radius:3px;-webkit-border-bottom-right-radius:3px;-khtml-border-bottom-left-radius:3px;-khtml-border-bottom-right-radius:3px;border-bottom-left-radius:3px;border-bottom-right-radius:3px;}#post-status-info td{font-size:12px;}.autosave-info{padding:2px 15px 2px 2px;text-align:right;}#editorcontent #post-status-info{border:none;}#post-body .wp_themeSkin .mceStatusbar a.mceResize{display:block;background:transparent url(../images/resize.gif) no-repeat scroll right bottom;width:12px;cursor:se-resize;margin:0 2px;position:relative;top:22px;}#wp-word-count{display:block;padding:2px 7px;}#timestampdiv select{height:20px;line-height:14px;padding:0;vertical-align:top;}#jj,#hh,#mn{width:2em;padding:1px;font-size:12px;}#aa{width:3.4em;padding:1px;font-size:12px;}.curtime #timestamp{background-repeat:no-repeat;background-position:left top;padding-left:18px;}#timestampdiv{padding-top:5px;line-height:23px;}#timestampdiv p{margin:8px 0 6px;}#timestampdiv input{border-width:1px;border-style:solid;}#postcustomstuff table,#postcustomstuff input,#postcustomstuff textarea{border-width:1px;border-style:solid;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;}#postcustomstuff .updatemeta,#postcustomstuff .deletemeta{margin:auto;}#postcustomstuff thead th{padding:5px 8px 8px;}#postcustom #postcustomstuff .submit{border:0 none;float:none;padding:5px 8px;}#side-sortables #postcustom #postcustomstuff .submit{padding:0 5px;}#side-sortables #postcustom #postcustomstuff td.left input{margin:3px 3px 0;}#side-sortables #postcustom #postcustomstuff #the-list textarea{height:85px;margin:3px;}#postcustomstuff table{margin:0;width:100%;border-width:1px;border-style:solid;border-spacing:0;}#postcustomstuff table input,#postcustomstuff table select,#postcustomstuff table textarea{width:95%;margin:8px 0 8px 8px;}#postcustomstuff th.left,#postcustomstuff td.left{width:38%;}#postcustomstuff .submit input{width:auto;}#postcustomstuff #newmeta .submit{padding:0 8px;}#postcustomstuff table #addmetasub{width:auto;}#postcustomstuff #newmetaleft{vertical-align:top;}#postcustomstuff #newmetaleft a{padding:0 10px;text-decoration:none;}table.diff{width:100%;}table.diff col.content{width:50%;}table.diff tr{background-color:transparent;}table.diff td,table.diff th{padding:.5em;font-family:Consolas,Monaco,monospace;border:none;}table.diff .diff-deletedline del,table.diff .diff-addedline ins{text-decoration:none;}.category-adder{margin-left:120px;padding:4px 0;}.category-adder h4{margin:0 0 8px;}#side-sortables .category-adder{margin:0;}#post-body .category-add input,.category-add select{width:30%;}#side-sortables .category-add select{width:100%;}#side-sortables .category-add input.category-add-sumbit,#post-body .category-add input.category-add input.category-add-sumbit{width:auto;}#post-body ul.category-tabs,#post-body ul.add-menu-item-tabs{float:left;width:120px;text-align:right;margin:0 -120px 0 5px;padding:0;}#post-body ul.category-tabs li,#post-body ul.add-menu-item-tabs li{padding:8px;}#post-body ul.category-tabs li.tabs,#post-body ul.add-menu-item-tabs li.tabs{-moz-border-radius:3px 0 0 3px;-webkit-border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;-khtml-border-top-left-radius:3px;-khtml-border-bottom-left-radius:3px;border-top-left-radius:3px;border-bottom-left-radius:3px;}#post-body ul.category-tabs li.tabs a,#post-body ul.add-menu-item-tabs li.tabs a{font-weight:bold;text-decoration:none;}.categorydiv div.tabs-panel,.customlinkdiv div.tabs-panel,.posttypediv div.tabs-panel,.taxonomydiv div.tabs-panel,#linkcategorydiv div.tabs-panel{height:200px;overflow:auto;padding:.5em .9em;border-style:solid;border-width:1px;}.nav-menus-php .customlinkdiv div.tabs-panel,.nav-menus-php .posttypediv div.tabs-panel,.nav-menus-php .taxonomydiv div.tabs-panel{height:auto;max-height:205px;}div.tabs-panel-active{display:block;}div.tabs-panel-inactive{display:none;}#post-body .categorydiv div.tabs-panel,.taxonomy div.tabs-panel,#post-body #linkcategorydiv div.tabs-panel{margin:0 5px 0 125px;}.categorydiv ul,.customlinkdiv ul,.posttypediv ul,.taxonomydiv ul,#linkcategorydiv ul{list-style:none;padding:0;margin:0;}#front-page-warning,#front-static-pages ul,ul.export-filters,.inline-editor ul.cat-checklist ul,.categorydiv ul.categorychecklist ul,.customlinkdiv ul.categorychecklist ul,.posttypediv ul.categorychecklist ul,.taxonomydiv ul.categorychecklist ul,#linkcategorydiv ul.categorychecklist ul{margin-left:18px;}ul.categorychecklist li{margin:0;padding:0;line-height:19px;word-wrap:break-word;}.categorydiv .tabs-panel,.customlinkdiv .tabs-panel,.posttypediv .tabs-panel,.taxonomydiv .tabs-panel{border-width:3px;border-style:solid;}ul.category-tabs,ul.add-menu-item-tabs{margin-top:12px;}ul.category-tabs li.tabs,ul.add-menu-item-tabs li.tabs{border-style:solid solid none;border-width:1px 1px 0;}#post-body .category-tabs li.tabs,#post-body .add-menu-item-tabs li.tabs{border-style:solid none solid solid;border-width:1px 0 1px 1px;margin-right:-1px;}ul.category-tabs li,ul.add-menu-item-tabs li{padding:5px;-moz-border-radius:3px 3px 0 0;-webkit-border-top-left-radius:3px;-webkit-border-top-right-radius:3px;-khtml-border-top-left-radius:3px;-khtml-border-top-right-radius:3px;border-top-left-radius:3px;border-top-right-radius:3px;}.form-wrap{margin:10px 0;width:97%;}.form-wrap p,.form-wrap label{font-size:11px;}.form-wrap label{display:block;padding:2px;font-size:12px;}.form-field input,.form-field textarea{border-style:solid;border-width:1px;width:95%;}p.description,.form-wrap p{margin:2px 0 5px;}p.help,p.description,span.description,.form-wrap p{font-size:12px;font-style:italic;font-family:sans-serif;}.form-wrap .form-field{margin:0 0 10px;padding:8px;}.col-wrap h3{margin:12px 0;font-size:1.1em;}.col-wrap p.submit{margin-top:-10px;}.taghint{color:#aaa;margin:15px 0 -24px 12px;}#poststuff .tagsdiv .howto{margin:0 0 6px 8px;}.ajaxtag .newtag{position:relative;}.tagsdiv .newtag{width:180px;}.tagsdiv .the-tags{display:block;height:60px;margin:0 auto;overflow:auto;width:260px;}#post-body-content .tagsdiv .the-tags{margin:0 5px;}p.popular-tags{-moz-border-radius:8px;-khtml-border-radius:8px;-webkit-border-radius:8px;border-radius:8px;border-width:1px;border-style:solid;line-height:2em;padding:8px 12px 12px;text-align:justify;}p.popular-tags a{padding:0 3px;}.tagcloud{width:97%;margin:0 0 40px;text-align:justify;}.tagcloud h3{margin:2px 0 12px;}.ac_results{padding:0;margin:0;list-style:none;position:absolute;z-index:10000;display:none;border-width:1px;border-style:solid;}.ac_results li{padding:2px 5px;white-space:nowrap;text-align:left;}.ac_over{cursor:pointer;}.ac_match{text-decoration:underline;}#wpbody-content #media-items .describe{border-collapse:collapse;width:100%;border-top-style:solid;border-top-width:1px;clear:both;cursor:default;padding:5px;}#wpbody-content .describe th{vertical-align:top;text-align:left;padding:10px;width:140px;}#wpbody-content .describe .media-item-info tr{background-color:transparent;}#wpbody-content .describe .media-item-info td{padding:4px 10px 0;}.describe .media-item-info .A1B1{padding:0 0 0 10px;}#wpbody-content .filename{padding:0 10px;}#wpbody-content .media-item .thumbnail{max-height:128px;max-width:128px;}#wpbody-content #async-upload-wrap a{display:none;}.media-upload-form td label{margin-right:6px;margin-left:2px;}.media-upload-form .align .field label{display:inline;padding:0 0 0 22px;margin:0 1em 0 0;font-weight:bold;}.media-upload-form tr.image-size label{margin:0 0 0 3px;font-weight:bold;}.media-upload-form th.label label{font-weight:bold;margin:.5em;font-size:13px;}.media-upload-form th.label label span{padding:0 5px;}abbr.required{border:medium none;text-decoration:none;}#wpbody-content .describe input[type="text"],#wpbody-content .describe textarea{width:460px;}#wpbody-content .describe p.help{margin:0;padding:0 0 0 5px;}.media-item .error-div a.dismiss,.describe-toggle-on,.describe-toggle-off{display:block;line-height:36px;float:right;margin-right:20px;}.describe-toggle-off{display:none;}#wpbody-content .media-item{border-bottom-style:solid;border-bottom-width:1px;min-height:36px;position:relative;width:100%;}#wpbody-content .media-single .media-item{border-bottom-style:none;border-bottom-width:0;}#wpbody-content #media-items{border-style:solid solid none;border-width:1px;width:670px;}#wpbody-content #media-items .filename{line-height:36px;overflow:hidden;}.media-item .error-div{padding-left:10px;}.media-item .pinkynail{float:left;margin:2px;max-width:40px;max-height:32px;}.media-item .startopen,.media-item .startclosed{display:none;}.media-item .original{position:relative;height:34px;width:503px;}.media-item .percent{font-weight:bold;}.crunching{display:block;line-height:32px;text-align:right;margin-right:5px;}.progress{position:relative;margin-bottom:-36px;height:36px;}.bar{width:0;height:100%;border-right-width:3px;border-right-style:solid;}.upload-php .fixed .column-parent{width:25%;}.find-box{width:500px;height:300px;overflow:hidden;padding:33px 5px 40px;position:absolute;z-index:1000;}.find-box-head{cursor:move;font-weight:bold;height:2em;line-height:2em;padding:1px 12px;position:absolute;top:5px;width:100%;}.find-box-inside{overflow:auto;width:100%;height:100%;}.find-box-search{padding:12px;border-width:1px;border-style:none none solid;}#find-posts-response{margin:8px 0;padding:0 1px;}#find-posts-response table{width:100%;}#find-posts-response .found-radio{padding:5px 0 0 8px;width:15px;}.find-box-buttons{width:480px;margin:8px;}.find-box-search label{padding-right:6px;}.find-box #resize-se{position:absolute;right:1px;bottom:1px;}ul#dismissed-updates{display:none;}form.upgrade{margin-top:8px;}form.upgrade .hint{font-style:italic;font-size:85%;margin:-0.5em 0 2em 0;}#poststuff .inside .the-tagcloud{margin:5px 0 10px;padding:8px;border-width:1px;border-style:solid;line-height:1.8em;word-spacing:3px;-moz-border-radius:6px;-khtml-border-radius:6px;-webkit-border-radius:6px;border-radius:6px;}br.clear{height:2px;line-height:2px;}.swfupload{margin:5px 10px;vertical-align:middle;}.describe .image-editor{vertical-align:top;}.imgedit-wrap{position:relative;}.imgedit-settings p{margin:8px 0;}.describe .imgedit-wrap table td{vertical-align:top;padding-top:0;}.imgedit-wrap p,.describe .imgedit-wrap table td{font-size:11px;line-height:18px;}.describe .imgedit-wrap table td.imgedit-settings{padding:0 5px;}td.imgedit-settings input{vertical-align:middle;}.imgedit-wait{position:absolute;top:0;background:#FFF url(../images/wpspin_light.gif) no-repeat scroll 22px 10px;opacity:.7;filter:alpha(opacity=70);width:100%;height:500px;display:none;}.media-disabled,.imgedit-settings .disabled{color:grey;}.imgedit-wait-spin{padding:0 4px 4px;vertical-align:bottom;visibility:hidden;}.imgedit-menu{margin:0 0 12px;min-width:300px;}.imgedit-menu div{float:left;width:32px;height:32px;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;border-width:1px;border-style:solid;}.imgedit-crop-wrap{position:relative;}.imgedit-crop{background:transparent url(../images/imgedit-icons.png) no-repeat scroll -9px -31px;margin:0 8px 0 0;}.imgedit-crop.disabled:hover{background-position:-9px -31px;}.imgedit-crop:hover{background-position:-9px -1px;}.imgedit-rleft{background:transparent url(../images/imgedit-icons.png) no-repeat scroll -46px -31px;margin:0 3px;}.imgedit-rleft.disabled:hover{background-position:-46px -31px;}.imgedit-rleft:hover{background-position:-46px -1px;}.imgedit-rright{background:transparent url(../images/imgedit-icons.png) no-repeat scroll -77px -31px;margin:0 8px 0 3px;}.imgedit-rright.disabled:hover{background-position:-77px -31px;}.imgedit-rright:hover{background-position:-77px -1px;}.imgedit-flipv{background:transparent url(../images/imgedit-icons.png) no-repeat scroll -115px -31px;margin:0 3px;}.imgedit-flipv.disabled:hover{background-position:-115px -31px;}.imgedit-flipv:hover{background-position:-115px -1px;}.imgedit-fliph{background:transparent url(../images/imgedit-icons.png) no-repeat scroll -147px -31px;margin:0 8px 0 3px;}.imgedit-fliph.disabled:hover{background-position:-147px -31px;}.imgedit-fliph:hover{background-position:-147px -1px;}.imgedit-undo{background:transparent url(../images/imgedit-icons.png) no-repeat scroll -184px -31px;margin:0 3px;}.imgedit-undo.disabled:hover{background-position:-184px -31px;}.imgedit-undo:hover{background-position:-184px -1px;}.imgedit-redo{background:transparent url(../images/imgedit-icons.png) no-repeat scroll -215px -31px;margin:0 8px 0 3px;}.imgedit-redo.disabled:hover{background-position:-215px -31px;}.imgedit-redo:hover{background-position:-215px -1px;}.imgedit-applyto img{margin:0 8px 0 0;}.imgedit-group-top{margin:5px 0;}.imgedit-applyto .imgedit-label{padding:2px 0 0;display:block;}.imgedit-help{display:none;font-style:italic;margin-bottom:8px;}.imgedit-help ul li{font-size:11px;}a.imgedit-help-toggle{text-decoration:none;}#wpbody-content .imgedit-response div{width:600px;margin:8px;}.form-table td.imgedit-response{padding:0;}.imgedit-submit{margin:8px 0;}.imgedit-submit-btn{margin-left:20px;}.imgedit-wrap .nowrap{white-space:nowrap;}span.imgedit-scale-warn{color:red;font-size:20px;font-style:normal;visibility:hidden;vertical-align:middle;}.imgedit-group{border-width:1px;border-style:solid;-moz-border-radius:8px;-khtml-border-radius:8px;-webkit-border-radius:8px;border-radius:8px;margin-bottom:8px;padding:2px 10px;}.form-table{border-collapse:collapse;margin-top:.5em;width:100%;margin-bottom:-8px;clear:both;}.form-table td{margin-bottom:9px;padding:8px 10px;line-height:20px;font-size:12px;}.form-table th,.form-wrap label{font-weight:normal;text-shadow:rgba(255,255,255,1) 0 1px 0;}.form-table th{vertical-align:top;text-align:left;padding:10px;width:200px;}.form-table th.th-full{width:auto;}.form-table div.color-option{display:block;clear:both;margin-top:12px;}.form-table input.tog{margin-top:2px;margin-right:2px;float:left;}.form-table td p{margin-top:4px;}.form-table table.color-palette{vertical-align:bottom;float:left;margin:-12px 3px 11px;}.form-table .color-palette td{border-width:1px 1px 0;border-style:solid solid none;height:10px;line-height:20px;width:10px;}.commentlist li{padding:1em 1em .2em;margin:0;border-bottom-width:1px;border-bottom-style:solid;}.commentlist li li{border-bottom:0;padding:0;}.commentlist p{padding:0;margin:0 0 .8em;}#replyrow{font-size:11px;}#replyrow input{border-width:1px;border-style:solid;}#replyrow td{padding:2px;}#replyrow #editorcontainer{border:0 none;}#replysubmit{margin:0;padding:3px 7px;text-align:center;}#replysubmit img.waiting,.inline-edit-save img.waiting{padding:4px 10px 0;vertical-align:top;float:right;}#replysubmit .button{margin-right:5px;}#replysubmit .error{color:red;line-height:21px;text-align:center;vertical-align:center;}#replyrow #editor-toolbar{display:none;}#replyhead{font-size:12px;font-weight:bold;padding:2px 10px 4px;}#edithead .inside{float:left;padding:3px 0 2px 5px;margin:0;text-align:center;font-size:11px;}#edithead .inside input{width:180px;font-size:11px;}#edithead label{padding:2px 0;}#replycontainer{padding:5px;border:0 none;height:120px;overflow:hidden;position:relative;}#replycontent{resize:none;margin:0;width:100%;height:100%;padding:0;line-height:150%;border:0 none;outline:none;font-size:12px;}#replyrow #ed_reply_toolbar{margin:0;padding:2px 3px;}.comment-ays{margin-bottom:0;border-style:solid;border-width:1px;}.comment-ays th{border-right-style:solid;border-right-width:1px;}.trash-undo-inside,.spam-undo-inside{margin:1px 8px 1px 0;line-height:16px;}.spam-undo-inside .avatar,.trash-undo-inside .avatar{height:20px;width:20px;margin-right:8px;vertical-align:middle;}.stuffbox .editcomment{clear:none;}#comment-status-radio p{margin:3px 0 5px;}#comment-status-radio input{margin:2px 3px 5px 0;vertical-align:middle;}#comment-status-radio label{padding:5px 0;}.commentlist .avatar{vertical-align:text-top;}.theme-install-php .tablenav{height:auto;}table#availablethemes{border-spacing:0;border-width:1px 0;border-style:solid none;margin:10px auto;width:100%;}table#availablethemes .no-items td{border-width:0;padding:5px;}td.available-theme{vertical-align:top;width:240px;margin:0;padding:20px;text-align:left;}table#availablethemes td{border-width:0 1px 1px;border-style:none solid solid;}table#availablethemes td.right,table#availablethemes td.left{border-right:0 none;border-left:0 none;}table#availablethemes td.bottom{border-bottom:0 none;}.available-theme a.screenshot{width:240px;height:180px;display:block;border-width:1px;border-style:solid;margin-bottom:10px;overflow:hidden;}.available-theme img{width:240px;}.available-theme h3{margin:15px 0 5px;}#current-theme{margin:1em 0 1.5em;}#current-theme a{border-bottom:none;}#current-theme h3{font-size:17px;font-weight:normal;margin:0;}#current-theme .theme-description{margin-top:5px;}#current-theme img{float:left;border-width:1px;border-style:solid;margin-right:1em;margin-bottom:1.5em;width:150px;}.theme-options span{text-transform:uppercase;font-size:13px;}.theme-options a{font-size:15px;}#TB_window #TB_title a.tb-theme-preview-link,#TB_window #TB_title a.tb-theme-preview-link:visited{font-weight:bold;text-decoration:none;}#TB_window #TB_title{background-color:#222;color:#cfcfcf;}#broken-themes{text-align:left;width:50%;border-spacing:3px;padding:3px;}.theme-install-php h4{margin:2.5em 0 8px;}.appearance_page_custom-header #headimg{border:1px solid #DFDFDF;min-height:100px;width:100%;}.appearance_page_custom-header #upload-form p label{font-size:12px;}.appearance_page_custom-header .available-headers .default-header{float:left;margin:0 20px 20px 0;}.appearance_page_custom-header .random-header{clear:both;margin:0 20px 20px 0;vertical-align:middle;}.appearance_page_custom-header .available-headers label input,.appearance_page_custom-header .random-header label input{margin-right:10px;}.appearance_page_custom-header .available-headers label img{vertical-align:middle;}div#custom-background-image{min-height:100px;border:1px solid #dfdfdf;}div#custom-background-image img{max-width:400px;max-height:300px;}.nav-tab{border-style:solid;border-color:#dfdfdf #dfdfdf #fff;border-width:1px 1px 0;color:#aaa;text-shadow:rgba(255,255,255,1) 0 1px 0;font-size:12px;line-height:16px;display:inline-block;padding:4px 14px 6px;text-decoration:none;margin:0 6px -1px 0;-moz-border-radius:3px 3px 0 0;-webkit-border-top-left-radius:3px;-webkit-border-top-right-radius:3px;-khtml-border-top-left-radius:3px;-khtml-border-top-right-radius:3px;border-top-left-radius:3px;border-top-right-radius:3px;}.nav-tab-active{border-width:1px;color:#464646;}.nav-tab:hover,.nav-tab-active{border-color:#ccc #ccc #fff;}h2.nav-tab-wrapper,h3.nav-tab-wrapper{border-bottom:1px solid #ccc;padding-bottom:0;}h2 .nav-tab{padding:4px 10px 6px;font-family:"HelveticaNeue-Light","Helvetica Neue Light","Helvetica Neue",sans-serif;font-weight:200;font-size:20px;line-height:24px;}.plugins .name,#pass-strength-result.strong,#pass-strength-result.short,.button-highlighted,input.button-highlighted,#quicktags #ed_strong,#ed_reply_toolbar #ed_reply_strong{font-weight:bold;}.plugins p{margin:0 4px;padding:0;}.plugins .desc p{margin:0 0 8px;}.plugins td.desc{line-height:1.5em;}.plugins .desc ul,.plugins .desc ol{margin:0 0 0 2em;}.plugins .desc ul{list-style-type:disc;}.plugins .row-actions-visible{padding:0;}.plugins tbody th.check-column{padding:7px 0;}.plugins .inactive td,.plugins .inactive th,.plugins .active td,.plugins .active th{border-top-style:solid;border-top-width:1px;padding:5px 7px 0;}#wpbody-content .plugins .plugin-title,#wpbody-content .plugins .theme-title{padding-right:12px;white-space:nowrap;}.plugins .second,.plugins .row-actions-visible{padding:0 0 5px;}.plugins-php .widefat tfoot th,.plugins-php .widefat tfoot td{border-top-style:solid;border-top-width:1px;}.plugin-update-tr .update-message{margin:5px;padding:3px 5px;border-width:1px;border-style:solid;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;}.plugin-install-php h4{margin:2.5em 0 8px;}#profile-page .form-table textarea{width:500px;margin-bottom:6px;}#profile-page .form-table #rich_editing{margin-right:5px;}#your-profile legend{font-family:Georgia,"Times New Roman","Bitstream Charter",Times,serif;font-size:22px;}#your-profile #rich_editing{border:none;}#display_name{width:15em;}#createuser .form-field input{width:25em;}.pressthis{margin:20px 0;}.pressthis a{display:inline-block;width:113px;position:relative;cursor:move;color:#333;background:#dfdfdf;-webkit-gradient(linear,left bottom,left top,color-stop(0.07,#e6e6e6),color-stop(0.77,#d8d8d8));-moz-linear-gradient(center bottom,#e6e6e6 7%,#d8d8d8 77%);background-repeat:no-repeat;background-image-position:10px 8px;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px;-o-border-radius:5px;border:1px #b4b4b4 solid;font:normal normal normal 14px/16px Georgia,"Times New Roman","Bitstream Charter",Times,serif;text-decoration:none;text-shadow:#fff 0 1px 0;-webkit-text-shadow:#fff 0 1px 0;-moz-text-shadow:#fff 0 1px 0;-o-text-shadow:#fff 0 1px 0;}.pressthis a:hover,.pressthis a:active{color:#333;}.pressthis a:hover:after{transform:skew(20deg) rotate(9deg);-webkit-transform:skew(20deg) rotate(9deg);-moz-transform:skew(20deg) rotate(9deg);box-shadow:0 10px 8px rgba(0,0,0,0.7);-webkit-box-shadow:0 10px 8px rgba(0,0,0,0.7);-moz-box-shadow:0 10px 8px rgba(0,0,0,0.7);}.pressthis a span{background:url(../images/press-this.png) no-repeat -45px 5px;padding:8px 0 8px 32px;display:inline-block;}.pressthis a:after{content:'';width:70%;height:55%;z-index:-1;position:absolute;right:10px;bottom:9px;background:transparent;transform:skew(20deg) rotate(6deg);-webkit-transform:skew(20deg) rotate(6deg);-moz-transform:skew(20deg) rotate(6deg);box-shadow:0 10px 8px rgba(0,0,0,0.6);-webkit-box-shadow:0 10px 8px rgba(0,0,0,0.6);-moz-box-shadow:0 10px 8px rgba(0,0,0,0.6);}#utc-time,#local-time{padding-left:25px;font-style:italic;font-family:sans-serif;}.defaultavatarpicker .avatar{margin:2px 0;vertical-align:middle;}#footer{position:absolute;bottom:0;left:0;right:0;padding:10px 0;margin-right:20px;border-top:1px;border-style:solid;}#footer,#footer a{font-size:12px;}#footer p{margin:0;line-height:20px;}#footer a{text-decoration:none;}#footer a:hover{text-decoration:underline;}#excerpt,.attachmentlinks{margin:0;height:4em;width:98%;}#template div{margin-right:190px;}p.pagenav{margin:0;display:inline;}.pagenav span{font-weight:bold;margin:0 6px;}.row-title{font-size:13px!important;font-weight:bold;}.column-author img,.column-username img{float:left;margin-right:10px;margin-top:1px;}.row-actions{visibility:hidden;padding:2px 0 0;}tr:hover .row-actions,div.comment-item:hover .row-actions{visibility:visible;}.row-actions-visible{padding:2px 0 0;}.form-table .pre{padding:8px;margin:0;}table.form-table td .updated{font-size:13px;}.tagchecklist{margin-left:14px;font-size:12px;overflow:auto;}.tagchecklist strong{margin-left:-8px;position:absolute;}.tagchecklist span{margin-right:25px;display:block;float:left;font-size:11px;line-height:1.8em;white-space:nowrap;cursor:default;}.tagchecklist span a{margin:6px 0 0 -9px;cursor:pointer;width:10px;height:10px;display:block;float:left;text-indent:-9999px;overflow:hidden;position:absolute;}#poststuff h2{margin-top:20px;font-size:1.5em;margin-bottom:15px;padding:0 0 3px;clear:left;}#poststuff h3,.metabox-holder h3{font-size:15px;font-family:Georgia,"Times New Roman","Bitstream Charter",Times,serif;font-weight:normal;padding:7px 10px;margin:0;line-height:1;}#poststuff .inside,#poststuff .inside p{font-size:12px;margin:6px 0 8px;}#poststuff .inside .submitbox p{margin:1em 0;}#post-visibility-select,#post-formats-select{line-height:1.5em;margin-top:3px;}#poststuff #submitdiv .inside{margin:0;padding:0;}#titlediv,#poststuff .postarea{margin-bottom:20px;}td.post-title strong,td.plugin-title strong{display:block;margin-bottom:.2em;}td.post-title p,td.plugin-title p{margin:6px 0;}.wp-hidden-children .wp-hidden-child,.ui-tabs-hide{display:none;}#templateside ul li a{text-decoration:none;}.tool-box{margin:15px 0 35px;}.tool-box .buttons{margin:15px 0;}.tool-box .title{margin:8px 0;font:18px/24px Georgia,"Times New Roman","Bitstream Charter",Times,serif;}.pressthis a{font-size:1.2em;}#sidemenu{margin:-30px 15px 0 315px;list-style:none;position:relative;float:right;padding-left:10px;font-size:12px;}#sidemenu a{padding:0 7px;display:block;float:left;line-height:28px;border-top-width:1px;border-top-style:solid;border-bottom-width:1px;border-bottom-style:solid;}#sidemenu li{display:inline;line-height:200%;list-style:none;text-align:center;white-space:nowrap;margin:0;padding:0;}#sidemenu a.current{font-weight:normal;padding-left:6px;padding-right:6px;-moz-border-radius:3px 3px 0 0;-webkit-border-top-left-radius:3px;-webkit-border-top-right-radius:3px;-khtml-border-top-left-radius:3px;-khtml-border-top-right-radius:3px;border-top-left-radius:3px;border-top-right-radius:3px;border-width:1px;border-style:solid;}#sidemenu li a .count-0{display:none;}#poststuff .inside .the-tagcloud{margin:5px 0 10px;padding:8px;border-width:1px;border-style:solid;line-height:1.8em;word-spacing:3px;-moz-border-radius:3px;-khtml-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;}.plugin-install #description,.plugin-install-network #description{width:60%;}table .vers,table .column-visible,table .column-rating{text-align:left;}body.iframe{height:98%;}.anchors{margin:10px 20px 10px 20px;}div.nav{height:2em;padding:7px 10px;vertical-align:text-top;margin:5px 0;}.nav .button-secondary{padding:2px 4px;}.settings-toggle{text-align:right;margin:5px 7px 15px 0;font-size:12px;}.settings-toggle h3{margin:0;}form#tags-filter{position:relative;}td.media-icon{text-align:center;width:80px;padding-top:8px;padding-bottom:8px;}td.media-icon img{max-width:80px;max-height:60px;}.screen-per-page{width:3em;}.list-ajax-loading{float:right;margin-right:9px;margin-top:-1px;}.tablenav .list-ajax-loading{margin-top:7px;}#howto{font-size:11px;margin:0 5px;display:block;}.import-system{font-size:16px;}#namediv table{width:100%;}#namediv td.first{width:10px;white-space:nowrap;}#namediv input{width:98%;}#namediv p{margin:10px 0;}#submitdiv h3{margin-bottom:0!important;}.zerosize{height:0;width:0;margin:0;border:0;padding:0;overflow:hidden;position:absolute;}br.clear{height:2px;line-height:2px;}.checkbox{border:none;margin:0;padding:0;}#content{margin:0;width:100%;}fieldset{border:0;padding:0;margin:0;}.post-categories{display:inline;margin:0;padding:0;}.post-categories li{display:inline;}
\ No newline at end of file
+#wpwrap{height:auto;min-height:100%;width:100%;position:relative;}#wpcontent{height:100%;}#wpcontent,#footer{margin-left:165px;}.folded #wpcontent,.folded #footer{margin-left:52px;}#wpbody-content{padding-bottom:65px;float:left;width:100%;}#adminmenuback,#adminmenuwrap,#adminmenu,#adminmenu .wp-submenu,#adminmenu .wp-submenu-wrap,.folded #adminmenu .wp-has-current-submenu .wp-submenu{width:145px;}#adminmenuback{position:absolute;top:0;bottom:0;z-index:-1;}#adminmenu{clear:left;margin:0;padding:0;list-style:none;}.folded #adminmenuback,.folded #adminmenuwrap,.folded #adminmenu,.folded #adminmenu li.menu-top{width:32px;}.inner-sidebar{float:right;clear:right;display:none;width:281px;position:relative;}.columns-2 .inner-sidebar{margin-right:auto;width:286px;display:block;}.inner-sidebar #side-sortables,.columns-2 .inner-sidebar #side-sortables{min-height:300px;width:280px;padding:0;}.has-right-sidebar .inner-sidebar{display:block;}.has-right-sidebar #post-body{float:left;clear:left;width:100%;margin-right:-2000px;}.has-right-sidebar #post-body-content{margin-right:300px;}#post-body-content #side-sortables.empty-container{border:0 none;height:0;}#col-container,#col-left,#col-right{overflow:hidden;padding:0;margin:0;}#col-left{width:35%;}#col-right{float:right;clear:right;width:65%;}.col-wrap{padding:0 7px;}.alignleft{float:left;}.alignright{float:right;}.textleft{text-align:left;}.textright{text-align:right;}.clear{clear:both;}.screen-reader-text,.screen-reader-text span{position:absolute;left:-1000em;height:1px;width:1px;overflow:hidden;}.hidden,.js .closed .inside,.js .hide-if-js,.no-js .hide-if-no-js{display:none;}input[type="text"],input[type="password"],textarea{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;}input[type="checkbox"],input[type="radio"]{vertical-align:text-bottom;}html,body{height:100%;margin:0;padding:0;}body{font-family:sans-serif;font-size:12px;line-height:1.4em;min-width:600px;}body.iframe{min-width:0;}body.login{background:#fbfbfb;min-width:0;}iframe,img{border:0;}td,textarea,input,select{font-family:inherit;font-size:inherit;font-weight:inherit;}td,textarea{line-height:inherit;}input,select{line-height:15px;}a,input,select{outline:0;}blockquote,q{quotes:none;}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;}p{margin:1em 0;}blockquote{margin:1em;}label{cursor:pointer;}li,dd{margin-bottom:6px;}textarea,input,select{margin:1px;padding:3px;}h1,h2,h3,h4,h5,h6{display:block;font-weight:bold;}h1{font-size:2em;margin:.67em 0;}h2{font-size:1.5em;margin:.83em 0;}h3{font-size:1.17em;margin:1em 0;}h4{font-size:1em;margin:1.33em 0;}h5{font-size:.83em;margin:1.67em 0;}h6{font-size:.67em;margin:2.33em 0;}ul,ol{padding:0;}ul{list-style:none;}ol{list-style-type:decimal;margin-left:2em;}ul.ul-disc{list-style:disc outside;}ul.ul-square{list-style:square outside;}ol.ol-decimal{list-style:decimal outside;}ul.ul-disc,ul.ul-square,ol.ol-decimal{margin-left:1.8em;}ul.ul-disc>li,ul.ul-square>li,ol.ol-decimal>li{margin:0 0 .5em;}.code,code{font-family:Consolas,Monaco,monospace;}kbd,code{padding:1px 3px;margin:0 1px;font-size:11px;}.subsubsub{list-style:none;margin:8px 0 5px;padding:0;white-space:nowrap;font-size:12px;float:left;}.subsubsub a{line-height:2;padding:.2em;text-decoration:none;}.subsubsub a .count,.subsubsub a.current .count{color:#999;font-weight:normal;}.subsubsub a.current{font-weight:bold;background:none;border:none;}.subsubsub li{display:inline;margin:0;padding:0;}.widefat,div.updated,div.error,.wrap .add-new-h2,textarea,input[type="text"],input[type="password"],input[type="file"],input[type="button"],input[type="submit"],input[type="reset"],input[type="email"],input[type="number"],input[type="search"],input[type="tel"],input[type="url"],select,.tablenav .tablenav-pages a,.tablenav-pages span.current,#titlediv #title,.postbox,#postcustomstuff table,#postcustomstuff input,#postcustomstuff textarea,.imgedit-menu div,.plugin-update-tr .update-message,#poststuff .inside .the-tagcloud,.login form,#login_error,.login .message,#menu-management .menu-edit,.nav-menus-php .list-container,.menu-item-handle,.link-to-original,.nav-menus-php .major-publishing-actions .form-invalid,.press-this #message,#TB_window,.tbtitle,.highlight,.feature-filter,#widget-list .widget-top,.editwidget .widget-inside{-webkit-border-radius:3px;border-radius:3px;border-width:1px;border-style:solid;}.widefat{border-spacing:0;width:100%;clear:both;margin:0;}.widefat *{word-wrap:break-word;}.widefat a{text-decoration:none;}.widefat thead th:first-of-type{-webkit-border-top-left-radius:3px;border-top-left-radius:3px;}.widefat thead th:last-of-type{-webkit-border-top-right-radius:3px;border-top-right-radius:3px;}.widefat tfoot th:first-of-type{-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;}.widefat tfoot th:last-of-type{-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px;}.widefat td,.widefat th{border-width:1px 0;border-style:solid;}.widefat tfoot th{border-bottom:none;}.widefat .no-items td{border-bottom-width:0;}.widefat td{font-size:12px;padding:4px 7px 2px;vertical-align:top;}.widefat td p,.widefat td ol,.widefat td ul{font-size:12px;}.widefat th{padding:7px 7px 8px;text-align:left;line-height:1.3em;font-size:14px;}.widefat th input{margin:0 0 0 8px;padding:0;vertical-align:text-top;}.widefat .check-column{width:2.2em;padding:11px 0 0;vertical-align:top;}.widefat tbody th.check-column{padding:9px 0 22px;}.widefat .num,.column-comments,.column-links,.column-posts{text-align:center;}.widefat th#comments{vertical-align:middle;}.wrap{margin:4px 15px 0 0;}div.updated,div.error{padding:0 .6em;margin:5px 15px 2px;}div.updated p,div.error p{margin:.5em 0;padding:2px;}.wrap div.updated,.wrap div.error,.media-upload-form div.error{margin:5px 0 15px;}.wrap h2,.subtitle{font-weight:normal;margin:0;text-shadow:#fff 0 1px 0;}.wrap h2{font-size:23px;padding:9px 15px 4px 0;line-height:29px;}.subtitle{font-size:14px;padding-left:25px;}.wrap .add-new-h2{font-family:sans-serif;margin-left:4px;padding:3px 8px;position:relative;top:-3px;text-decoration:none;font-size:12px;border:0 none;}.wrap h2.long-header{padding-right:0;}.fade-1000,.fade-600,.fade-400,.fade-300{opacity:0;-moz-transition-property:opacity;-webkit-transition-property:opacity;-o-transition-property:opacity;transition-property:opacity;}.fade-1000{-moz-transition-duration:1s;-webkit-transition-duration:1s;-o-transition-duration:1s;transition-duration:1s;}.fade-600{-moz-transition-duration:.6s;-webkit-transition-duration:.6s;-o-transition-duration:.6s;transition-duration:.6s;}.fade-400{-moz-transition-duration:.4s;-webkit-transition-duration:.4s;-o-transition-duration:.4s;transition-duration:.4s;}.fade-300{-moz-transition-duration:.3s;-webkit-transition-duration:.3s;-o-transition-duration:.3s;transition-duration:.3s;}.fade-trigger{opacity:1;}div.sidebar-name h3,#menu-management .nav-tab,#dashboard_plugins h5,a.rsswidget,#dashboard_right_now td.b,#dashboard-widgets h4,.tool-box .title,#poststuff h3,.metabox-holder h3,.pressthis a,#your-profile legend,.inline-edit-row fieldset span.title,.inline-edit-row fieldset span.checkbox-title,.tablenav .displaying-num,.widefat th,.quicktags,.search{font-family:Georgia,"Times New Roman","Bitstream Charter",Times,serif;}h2 .nav-tab,.wrap h2,.subtitle,.login form .input{font-family:"HelveticaNeue-Light","Helvetica Neue Light","Helvetica Neue",sans-serif;}.quicktags,.search{font-size:12px;}.icon32{float:left;height:34px;margin:7px 8px 0 0;width:36px;}.icon16{height:18px;width:18px;padding:6px 6px;margin:-6px 0 0 -8px;float:left;}.key-labels label{line-height:24px;}.pre{white-space:pre-wrap;white-space:-moz-pre-wrap!important;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word;}.howto{font-style:italic;display:block;font-family:sans-serif;}p.install-help{margin:8px 0;font-style:italic;}.no-break{white-space:nowrap;}.wp-admin select{padding:2px;height:2em;}.wp-admin select[multiple]{height:auto;}select option{padding:2px;}.submit{padding:1.5em 0;margin:5px 0;-webkit-border-bottom-left-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-left-radius:3px;border-bottom-right-radius:3px;}form p.submit a.cancel:hover{text-decoration:none;}.submit input,.button,input.button,.button-primary,input.button-primary,.button-secondary,input.button-secondary,.button-highlighted,input.button-highlighted,#postcustomstuff .submit input{text-decoration:none;font-size:12px!important;line-height:13px;padding:3px 8px;cursor:pointer;border-width:1px;border-style:solid;-webkit-border-radius:11px;border-radius:11px;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box;}#minor-publishing-actions input,#major-publishing-actions input,#minor-publishing-actions .preview{min-width:80px;text-align:center;}textarea.all-options,input.all-options{width:250px;}input.large-text,textarea.large-text{width:99%;}input.regular-text,#adduser .form-field input{width:25em;}input.small-text{width:50px;}#doaction,#doaction2,#post-query-submit{margin-right:8px;}.tablenav select[name="action"],.tablenav select[name="action2"]{width:130px;}.tablenav select[name="m"]{width:155px;}.tablenav select#cat{width:170px;}#wpcontent option{padding:2px;}#timezone_string option{margin-left:1em;}label,#your-profile label+a{vertical-align:middle;}#misc-publishing-actions label{vertical-align:baseline;}#pass-strength-result{border-style:solid;border-width:1px;float:left;margin:13px 5px 5px 1px;padding:3px 5px;text-align:center;width:200px;display:none;}.indicator-hint{padding-top:8px;}p.search-box{float:right;margin:0;}#major-publishing-actions{padding:10px 10px 8px;clear:both;border-top:none;}#delete-action{line-height:25px;vertical-align:middle;text-align:left;float:left;}#publishing-action{text-align:right;float:right;line-height:23px;}#post-body #minor-publishing{padding-bottom:10px;}#post-body #misc-publishing-actions{padding:0;}#post-body .misc-pub-section{border-right-width:1px;border-right-style:solid;border-top:0;border-bottom:0;min-height:30px;float:left;max-width:32%;}#post-body .misc-pub-section-last{border-right:0;}#misc-publishing-actions{padding:6px 0 0;}.misc-pub-section{padding:6px 10px 8px;border-width:1px 0;border-style:solid;}.misc-pub-section:first-child{border-top-width:0;}.misc-pub-section-last{border-bottom-width:0;}#minor-publishing-actions{padding:10px 10px 2px 8px;text-align:right;}#minor-publishing{border-bottom-width:1px;border-bottom-style:solid;-webkit-box-shadow:0 1px 0 #fff;-moz-box-shadow:0 1px 0 #fff;box-shadow:0 1px 0 #fff;}#save-post{float:left;}#minor-publishing .ajax-loading{padding:3px 0 0 4px;float:left;}.preview{float:right;}#sticky-span{margin-left:18px;}.side-info{margin:0;padding:4px;font-size:11px;}.side-info h5{padding-bottom:7px;font-size:14px;margin:12px 2px 5px;border-bottom-width:1px;border-bottom-style:solid;}.side-info ul{margin:0;padding-left:18px;list-style:square;}a.button,a.button-primary,a.button-secondary{line-height:15px;padding:3px 10px;white-space:nowrap;-webkit-border-radius:10px;}.approve,.unapproved .unapprove{display:none;}.unapproved .approve,.spam .approve,.trash .approve{display:inline;}td.action-links,th.action-links{text-align:right;}.describe .del-link{padding-left:5px;}#update-nag,.update-nag{line-height:19px;padding:5px 0;font-size:12px;text-align:center;margin:-1px 15px 0 5px;border-width:1px;border-style:solid;-webkit-border-bottom-right-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;}.plugins .plugin-update{padding:0;}.plugin-update .update-message{margin:0 10px 8px 31px;font-weight:bold;}ul#dismissed-updates{display:none;}form.upgrade{margin-top:8px;}form.upgrade .hint{font-style:italic;font-size:85%;margin:-0.5em 0 2em 0;}.ajax-feedback{visibility:hidden;vertical-align:bottom;}#ajax-response.alignleft{margin-left:2em;}.fullscreen-overlay{z-index:149999;display:none;position:fixed;top:0;bottom:0;left:0;right:0;filter:inherit;}.fullscreen-active .fullscreen-overlay,.fullscreen-active #wp-fullscreen-body{display:block;}.fullscreen-fader{z-index:200000;}.fullscreen-active .fullscreen-fader{display:none;}#wp-fullscreen-body{width:100%;z-index:150005;display:none;position:absolute;top:0;left:0;}#wp-fullscreen-wrap{margin:0 auto 50px;position:relative;padding-top:60px;}#wp-fullscreen-title{font-size:1.7em;line-height:100%;outline:medium none;padding:6px 7px;width:100%;margin-bottom:30px;}#wp-fullscreen-container{padding:4px 10px 50px;}#wp-fullscreen-title,#wp-fullscreen-container{-webkit-border-radius:0;border-radius:0;border:1px dashed transparent;background:transparent;-moz-transition-property:border-color;-moz-transition-duration:.6s;-webkit-transition-property:border-color;-webkit-transition-duration:.6s;-o-transition-property:border-color;-o-transition-duration:.6s;transition-property:border-color;transition-duration:.6s;}#wp_mce_fullscreen{width:100%;min-height:300px;border:0;background:transparent;font-family:Consolas,Monaco,monospace;line-height:1.6em;padding:0;overflow-y:hidden;outline:none;resize:none;}#wp-fullscreen-tagline{color:#BBB;font-size:18px;float:right;padding-top:5px;}#fullscreen-topbar{position:fixed;top:0;left:0;z-index:150050;border-bottom-style:solid;border-bottom-width:1px;min-width:800px;width:100%;height:40px;}#wp-fullscreen-toolbar{padding:6px 10px 0;clear:both;max-width:1100px;min-width:820px;margin:0 auto;}#wp-fullscreen-mode-bar,#wp-fullscreen-button-bar,#wp-fullscreen-close,#wp-fullscreen-count{float:left;}#wp-fullscreen-save{float:right;padding:2px 2px 0 5px;}#wp-fullscreen-count,#wp-fullscreen-close{padding-top:5px;}#wp-fullscreen-central-toolbar{margin:auto;padding:0;}#wp-fullscreen-buttons>div{float:left;}#wp-fullscreen-mode-bar{padding:1px 14px 0 0;}#wp-fullscreen-modes a{display:block;font-size:11px;text-decoration:none;float:left;margin:1px 0 0 0;padding:2px 6px 2px;border-width:1px 1px 1px 0;border-style:solid;border-color:#bbb;color:#777;text-shadow:0 1px 0 #fff;background-color:#f4f4f4;background-image:-moz-linear-gradient(bottom,#e4e4e4,#f9f9f9);background-image:-webkit-gradient(linear,left bottom,left top,from(#e4e4e4),to(#f9f9f9));}#wp-fullscreen-modes a:hover,.wp-html-mode #wp-fullscreen-modes a:last-child,.wp-tmce-mode #wp-fullscreen-modes a:first-child{color:#333;border-color:#999;background-color:#eee;background-image:-moz-linear-gradient(bottom,#f9f9f9,#e0e0e0);background-image:-webkit-gradient(linear,left bottom,left top,from(#f9f9f9),to(#e0e0e0));}#wp-fullscreen-modes a:first-child{border-width:1px;-webkit-border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;border-top-left-radius:3px;border-bottom-left-radius:3px;}#wp-fullscreen-modes a:last-child{-webkit-border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;}#wp-fullscreen-buttons .active a{background:inherit;}#wp-fullscreen-buttons .hidden{display:none;}#wp-fullscreen-buttons .disabled{opacity:.5;}.wp-html-mode #wp-fullscreen-buttons div{display:none;}.wp-html-mode #wp-fullscreen-buttons div.wp-fullscreen-both{display:block;}#fullscreen-topbar.fullscreen-make-sticky{display:block!important;}#wp-fullscreen-save img{vertical-align:middle;}#wp-fullscreen-save img,#wp-fullscreen-save span{padding-right:4px;display:none;}#wp-fullscreen-buttons .mce_image .mce_image{background-image:url('../images/menu.png?ver=20111128');background-position:-124px -38px;}#wp-fullscreen-buttons .mce_image .mce_image:hover{background-position:-124px -6px;}.fullscreen-active #TB_overlay{z-index:150100;}.fullscreen-active #TB_window{z-index:150102;}#wp_mce_fullscreen_ifr{background:transparent;}#wp_mce_fullscreen_parent #wp_mce_fullscreen_tbl tr.mceFirst{display:none;}#wp-fullscreen-container .wp_themeSkin table td{vertical-align:top;}#adminmenu a,#sidemenu a,#taglist a,#catlist a{text-decoration:none;}#screen-options-wrap,#contextual-help-wrap{margin:0;padding:8px 20px 12px;position:relative;overflow:auto;}#screen-meta .screen-reader-text{visibility:hidden;}#screen-meta-links{margin:0 24px 0 0;}#screen-meta{display:none;position:relative;margin:0 15px 0 5px;border-width:0 1px 1px;border-style:none solid solid;}#screen-options-link-wrap,#contextual-help-link-wrap{float:right;height:22px;padding:0;margin:0 0 0 6px;font-family:sans-serif;}#screen-options-link-wrap,#contextual-help-link-wrap,#screen-meta{-webkit-border-bottom-left-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-left-radius:3px;border-bottom-right-radius:3px;}#screen-meta-links a.show-settings{text-decoration:none;z-index:1;padding:0 16px 0 6px;height:22px;line-height:22px;font-size:12px;display:block;text-shadow:rgba(255,255,255,0.7) 0 1px 0;}#screen-meta-links a.show-settings:hover{text-decoration:none;}.toggle-arrow{background-repeat:no-repeat;background-position:top left;background-color:transparent;height:22px;line-height:22px;display:block;}.toggle-arrow-active{background-position:bottom left;}#screen-options-wrap h5,#contextual-help-wrap h5{margin:8px 0;font-size:13px;}.metabox-prefs label{display:inline-block;padding-right:15px;white-space:nowrap;line-height:30px;}.metabox-prefs label input{margin:0 5px 0 2px;}.metabox-prefs label a{display:none;}#contextual-help-wrap{padding:0;margin-left:-4px;}#contextual-help-columns{position:relative;}#contextual-help-back{position:absolute;top:0;bottom:0;left:150px;right:170px;border-width:0 1px;border-style:solid;}#contextual-help-wrap.no-sidebar #contextual-help-back{right:0;border-right-width:0;-webkit-border-bottom-right-radius:2px;border-bottom-right-radius:2px;}.contextual-help-tabs{float:left;width:150px;margin:0;}.contextual-help-tabs ul{margin:1em 0;}.contextual-help-tabs li{margin-bottom:0;list-style-type:none;border-style:solid;border-width:1px 0;border-color:transparent;}.contextual-help-tabs a{display:block;padding:5px 5px 5px 12px;line-height:18px;text-decoration:none;}.contextual-help-tabs .active{padding:0;margin:0 -1px 0 0;border-width:1px 0 1px 1px;border-style:solid;}.contextual-help-tabs-wrap{padding:0 20px;overflow:auto;}.help-tab-content{display:none;margin:0 22px 12px 0;line-height:1.6em;}.help-tab-content.active{display:block;}.help-tab-content li{list-style-type:disc;margin-left:18px;}.contextual-help-sidebar{width:150px;float:right;padding:0 8px 0 12px;overflow:auto;}#adminmenuback,#adminmenuwrap{border-width:0 1px 0 0;border-style:solid;}#adminmenuwrap{position:relative;float:left;}#adminmenushadow{position:absolute;top:0;right:0;bottom:0;width:6px;z-index:20;}#adminmenu *{-webkit-user-select:none;-moz-user-select:none;user-select:none;}#adminmenu .wp-submenu{list-style:none;padding:0;margin:0;overflow:hidden;}#adminmenu li .wp-submenu,.folded #adminmenu .wp-has-current-submenu .wp-submenu{display:none;position:absolute;top:-1px;left:146px;z-index:999;overflow:hidden;}.js #adminmenu .wp-submenu.sub-open,.folded #adminmenu .wp-has-current-submenu .wp-submenu.sub-open,.no-js #adminmenu .wp-has-submenu:hover .wp-submenu,#adminmenu .wp-has-current-submenu .wp-submenu,#adminmenu li.focused .wp-submenu{display:block;}#adminmenu .wp-has-current-submenu .wp-submenu{position:relative;z-index:2;top:auto;left:auto;right:auto;bottom:auto;padding:0;}#adminmenu .wp-has-current-submenu .wp-submenu-wrap{-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;}.folded #adminmenu .wp-submenu,.folded #adminmenu .wp-has-current-submenu .wp-submenu{top:-5px;left:26px;}#adminmenu .wp-submenu.sub-open,#adminmenu li.focused.wp-not-current-submenu .wp-submenu,.folded #adminmenu li.focused.wp-has-current-submenu .wp-submenu,.folded #adminmenu .wp-has-current-submenu .wp-submenu.sub-open,.no-js #adminmenu .wp-has-submenu:hover .wp-submenu,.no-js.folded #adminmenu .wp-has-current-submenu:hover .wp-submenu{padding:0 8px 8px 0;}.no-js #adminmenu .wp-has-current-submenu:hover .wp-submenu,#adminmenu .wp-has-current-submenu .wp-submenu{padding:0;}#adminmenu .wp-submenu a{font-size:12px;line-height:18px;}#adminmenu a.menu-top,#adminmenu .wp-submenu-head{font-size:13px;line-height:18px;}#adminmenu div.wp-submenu-head{display:none;}.folded #adminmenu div.wp-submenu-head{display:block;}.folded #adminmenu a.menu-top,body.no-js #adminmenu .wp-menu-toggle,.folded #adminmenu div.wp-menu-toggle{display:none;}#adminmenu div.wp-menu-image{float:left;width:28px;height:28px;}.folded #adminmenu div.wp-menu-image{width:32px;}#adminmenu li{margin:0;padding:0;cursor:pointer;}#adminmenu a{display:block;line-height:18px;padding:2px 5px;}#adminmenu li.menu-top{min-height:29px;position:relative;}#adminmenu a.menu-top{font-weight:bold;line-height:18px;min-width:10em;padding:5px 5px;border-width:1px 0 1px;border-style:solid;}#adminmenu li.wp-menu-open{border-width:0 0 1px;border-style:solid;}#adminmenu .wp-submenu ul{padding:4px 0;}#adminmenu .wp-submenu a{margin:0;}#adminmenu li li{margin-left:8px;}#adminmenu .wp-submenu a,#adminmenu li li a,.folded #adminmenu .wp-not-current-submenu li a{padding-left:12px;}#adminmenu .wp-not-current-submenu li a{padding-left:18px;}.folded #adminmenu li li{margin-left:0;}.folded #adminmenu li li a{padding-left:0;}.wp-menu-arrow{display:none;cursor:auto;z-index:25;position:absolute;right:100%;margin:0;height:30px;width:6px;-moz-transform:translate(146px);-webkit-transform:translate(146px);-o-transform:translate(146px);-ms-transform:translate(146px);transform:translate(146px);}#adminmenu li.wp-has-current-submenu .wp-menu-arrow,#adminmenu li.menu-top:hover .wp-menu-arrow,#adminmenu li.current .wp-menu-arrow,#adminmenu li.focused .wp-menu-arrow,#adminmenu li.menu-top.wp-has-submenu:hover .wp-menu-arrow div{display:block;}#adminmenu li.wp-not-current-submenu:hover .wp-menu-arrow div{display:none;}#adminmenu li.menu-top:hover .wp-menu-arrow,#adminmenu li.menu-top.focused .wp-menu-arrow{z-index:1001;}#adminmenu .wp-menu-arrow div{position:absolute;top:7px;left:-1px;width:14px;height:15px;-moz-transform:matrix(-0.6,1,0.6,1,0,0);-webkit-transform:matrix(-0.6,1,0.6,1,0,0);-o-transform:matrix(-0.6,1,0.6,1,0,0);-ms-transform:matrix(-0.6,1,0.6,1,0,0);transform:matrix(-0.6,1,0.6,1,0,0);}#adminmenu li.wp-not-current-submenu .wp-menu-arrow{-moz-transform:translate(145px);-webkit-transform:translate(145px);-o-transform:translate(145px);-ms-transform:translate(145px);transform:translate(145px);height:28px;border-width:1px 0;border-style:solid;}.folded .wp-menu-arrow{-moz-transform:translate(33px);-webkit-transform:translate(33px);-o-transform:translate(33px);-ms-transform:translate(33px);transform:translate(33px);}#adminmenu .wp-not-current-submenu .wp-menu-arrow div{width:15px;top:6px;border-width:0 0 1px 1px;border-style:solid;}.wp-menu-arrow,.folded #adminmenu li.menu-top:hover .wp-menu-arrow{display:none;}.folded #adminmenu li.current:hover .wp-menu-arrow,.folded #adminmenu li.menu-top.wp-menu-open:hover .wp-menu-arrow{display:block;z-index:125;}#adminmenu .wp-submenu li{padding:0;margin:0;}.folded #adminmenu li.menu-top{border-width:1px 0;border-style:solid none;}#adminmenu .wp-menu-image img{float:left;padding:5px 0 0 2px;opacity:.6;filter:alpha(opacity=60);}#adminmenu li.menu-top:hover .wp-menu-image img,#adminmenu li.wp-has-current-submenu .wp-menu-image img{opacity:1;filter:alpha(opacity=100);}#adminmenu li.wp-menu-separator{height:3px;padding:0;margin:0;border-width:1px 0;border-style:solid;cursor:inherit;}#adminmenu div.separator{height:1px;padding:0;border-width:1px 0 0 0;border-style:solid;}#adminmenu .wp-submenu .wp-submenu-head{padding:6px 4px 5px 10px;cursor:default;border-width:1px 0;border-style:solid;}#adminmenu li .wp-submenu-wrap{border-width:1px 1px 1px 0;border-style:solid solid solid none;position:relative;-webkit-border-bottom-right-radius:3px;-webkit-border-top-right-radius:3px;border-bottom-right-radius:3px;border-top-right-radius:3px;}#adminmenu li.wp-menu-open .wp-submenu-wrap{border:0 none;}.folded #adminmenu .wp-submenu .wp-submenu-wrap{margin-top:3px;}.folded #adminmenu .wp-has-current-submenu{margin-bottom:1px;}.folded #adminmenu .wp-has-current-submenu.menu-top-last{margin-bottom:0;}.folded #adminmenu .wp-has-current-submenu .wp-submenu-wrap{margin-top:4px;}.folded #adminmenu .wp-submenu ul{border-width:0 0 0 1px;border-style:solid;}.folded #adminmenu .wp-submenu a{padding-left:10px;}.folded #adminmenu a.wp-has-submenu{margin-left:40px;}#adminmenu .wp-menu-toggle{width:18px;clear:right;float:right;margin:1px 0 0;height:27px;padding:1px 2px 0 0;cursor:pointer;}#adminmenu .wp-menu-image a{height:24px;}#adminmenu .awaiting-mod,#adminmenu span.update-plugins,#sidemenu li a span.update-plugins{position:absolute;font-family:sans-serif;font-size:9px;line-height:17px;font-weight:bold;margin-top:1px;margin-left:7px;-webkit-border-radius:10px;border-radius:10px;}#adminmenu li .awaiting-mod span,#adminmenu li span.update-plugins span,#sidemenu li a span.update-plugins span{display:block;padding:0 6px;}#adminmenu li span.count-0,#sidemenu li a .count-0{display:none;}#collapse-menu{font-size:12px;line-height:34px;}.folded #collapse-menu span{display:none;}#collapse-button,#collapse-button div{width:15px;height:15px;}#collapse-button{float:left;margin:8px 6px;border-width:1px;border-style:solid;-webkit-border-radius:10px;border-radius:10px;}.post-com-count-wrapper{min-width:22px;font-family:sans-serif;}.post-com-count{height:1.3em;line-height:1.1em;display:block;text-decoration:none;padding:0 0 6px;cursor:pointer;background-position:center -80px;background-repeat:no-repeat;}.post-com-count span{font-size:11px;font-weight:bold;height:1.4em;line-height:1.4em;min-width:.7em;padding:0 6px;display:inline-block;-webkit-border-radius:5px;border-radius:5px;}strong .post-com-count{background-position:center -55px;}.post-com-count:hover{background-position:center -3px;}.column-response .post-com-count{float:left;margin-right:5px;text-align:center;}.response-links{float:left;}#the-comment-list .attachment-80x60{padding:4px 8px;}body.admin-bar #wpcontent,body.admin-bar #adminmenu{padding-top:28px;}.narrow{width:70%;margin-bottom:40px;}.narrow p{line-height:150%;}.widefat th,.widefat td{overflow:hidden;}.widefat th{font-weight:normal;}.widefat td p{margin:2px 0 .8em;}.widefat .column-comment p{margin:.6em 0;}.postbox-container{float:left;}.postbox-container .meta-box-sortables{min-height:350px;}.postbox-container .meta-box-sortables.empty-container,#side-sortables.empty-container{border:3px dashed #CCC;height:350px;}.postbox .hndle{cursor:move;-webkit-border-top-left-radius:3px;-webkit-border-top-right-radius:3px;border-top-left-radius:3px;border-top-right-radius:3px;}.postbox.closed .hndle{-webkit-border-radius:3px;border-radius:3px;}.hndle a{font-size:11px;font-weight:normal;}.postbox .handlediv{float:right;width:27px;height:30px;cursor:pointer;}.sortable-placeholder{border-width:1px;border-style:dashed;margin-bottom:20px;}.widget,.postbox,.stuffbox{margin-bottom:20px;padding:0;border-width:1px;border-style:solid;line-height:1;}.widget .widget-top,.postbox h3,.stuffbox h3{margin-top:1px;border-bottom-width:1px;border-bottom-style:solid;cursor:move;-webkit-user-select:none;-moz-user-select:none;user-select:none;}.postbox .inside,.stuffbox .inside{padding:0 10px;line-height:1.4em;}.postbox .inside{margin:10px 0;position:relative;}.postbox.closed h3{border:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;}.postbox table.form-table{margin-bottom:0;}.temp-border{border:1px dotted #ccc;}.columns-prefs label{padding:0 5px;}#wpbody-content .metabox-holder{padding-top:10px;}#dashboard-widgets .meta-box-sortables{margin:0 8px;}#dashboard_recent_comments div.undo{border-top-style:solid;border-top-width:1px;margin:0 -10px;padding:3px 8px;font-size:11px;}#the-comment-list td.comment p.comment-author{margin-top:0;margin-left:0;}#the-comment-list p.comment-author img{float:left;margin-right:8px;}#the-comment-list p.comment-author strong a{border:none;}#the-comment-list td{vertical-align:top;}#the-comment-list td.comment{word-wrap:break-word;}.welcome-panel{margin:20px 8px;padding:30px 10px 20px;border-width:1px 0;border-style:solid;position:relative;line-height:1.6em;overflow:auto;}.welcome-panel h3{font-family:"HelveticaNeue-Light","Helvetica Neue Light","Helvetica Neue",sans-serif;font-size:32px;font-weight:normal;line-height:1.2;margin:.1em 0 .8em;}.welcome-panel h4{font-size:14px;}.welcome-panel .welcome-panel-close{position:absolute;top:0;right:10px;padding:8px 3px;font-size:13px;text-decoration:none;}.welcome-panel .welcome-panel-close:before{background:url('../images/xit.gif') 0 17% no-repeat;content:' ';height:100%;width:10px;left:-12px;position:absolute;}.welcome-panel .welcome-panel-close:hover:before{background-position:100% 17%;}.welcome-panel .wp-badge{float:left;margin-bottom:20px;}.welcome-panel-content{max-width:1500px;}.welcome-panel-content .about-description,.welcome-panel h3{margin-left:190px;}.welcome-panel p.welcome-panel-dismiss{clear:both;padding:1em 0 0 0;}.welcome-panel .welcome-panel-column-container{clear:both;overflow:hidden;position:relative;padding-left:25px;}.welcome-panel .welcome-panel-column{margin:0 5% 0 -25px;padding-left:25px;width:30%;min-width:200px;float:left;}.welcome-panel .welcome-panel-column.welcome-panel-last{margin-right:0;}.welcome-panel h4 .icon16{margin-left:-32px;}.welcome-panel .welcome-panel-column ul{margin:1.6em 1em 1em 1.3em;}.welcome-panel .welcome-panel-column li{list-style-type:disc;padding-left:2px;}table.fixed{table-layout:fixed;}.fixed .column-rating,.fixed .column-visible{width:8%;}.fixed .column-date,.fixed .column-parent,.fixed .column-links{width:10%;}.fixed .column-response,.fixed .column-author,.fixed .column-categories,.fixed .column-tags,.fixed .column-rel,.fixed .column-role{width:15%;}.fixed .column-comments{width:4em;padding:8px 0;text-align:left;}.fixed .column-comments .vers{padding-left:3px;}.fixed .column-comments a{float:left;}.fixed .column-slug{width:25%;}.fixed .column-posts{width:10%;}.fixed .column-icon{width:80px;}#commentsdiv .fixed .column-author,#comments-form .fixed .column-author{width:20%;}#commentsdiv.postbox .inside{margin:0;padding:0;}#commentsdiv.postbox .inside .row-actions{line-height:18px;}#commentsdiv.postbox .inside td{padding:1em 10px;}#commentsdiv.postbox .inside .column-author{width:33%;}#commentsdiv.postbox .inside p{margin:6px 10px 8px;}#commentsdiv.postbox .column-comment p{margin:.6em 0;}#commentsdiv.postbox #replyrow td{padding:0;}.sorting-indicator{display:none;width:7px;height:4px;margin-top:8px;margin-left:7px;background-image:url(../images/sort.gif);background-repeat:no-repeat;}.fixed .column-comments .sorting-indicator{margin-top:3px;}.widefat th.sortable,.widefat th.sorted{padding:0;}th.sortable a,th.sorted a{display:block;overflow:hidden;padding:7px 7px 8px;}.fixed .column-comments.sortable a,.fixed .column-comments.sorted a{padding:8px 0;}th.sortable a span,th.sorted a span{float:left;cursor:pointer;}th.sorted.asc .sorting-indicator,th.desc:hover span.sorting-indicator{display:block;background-position:0 0;}th.sorted.desc .sorting-indicator,th.asc:hover span.sorting-indicator{display:block;background-position:-7px 0;}.tablenav-pages a{border-bottom-style:solid;border-bottom-width:2px;font-weight:bold;margin-right:1px;padding:0 2px;}.tablenav-pages .current-page{text-align:center;}.tablenav-pages .next-page{margin-left:2px;}.tablenav a.button-secondary{display:block;margin:3px 8px 0 0;}.tablenav{clear:both;height:30px;margin:6px 0 4px;vertical-align:middle;}.tablenav.themes{max-width:98%;}.tablenav .tablenav-pages{float:right;display:block;cursor:default;height:30px;line-height:30px;font-size:12px;}.tablenav .no-pages,.tablenav .one-page .pagination-links{display:none;}.tablenav .tablenav-pages a,.tablenav-pages span.current{text-decoration:none;padding:3px 6px;}.tablenav .tablenav-pages a.disabled:hover,.tablenav .tablenav-pages a.disabled:active{cursor:default;}.tablenav .displaying-num{margin-right:10px;font-size:12px;font-style:italic;}.tablenav .actions{padding:2px 8px 0 0;}.tablenav .delete{margin-right:20px;}.view-switch{float:right;margin:6px 8px 0;}.view-switch a{text-decoration:none;}.filter{float:left;margin:-5px 0 0 10px;}.filter .subsubsub{margin-left:-10px;margin-top:13px;}.screen-per-page{width:3em;}#posts-filter fieldset{float:left;margin:0 1.5ex 1em 0;padding:0;}#posts-filter fieldset legend{padding:0 0 .2em 1px;}span.post-state-format{font-weight:normal;}#wpbody-content .inline-edit-row fieldset{font-size:12px;float:left;margin:0;padding:0;width:100%;}tr.inline-edit-row td,#wpbody-content .inline-edit-row fieldset .inline-edit-col{padding:0 .5em;}#wpbody-content .quick-edit-row-page fieldset.inline-edit-col-right .inline-edit-col{border-width:0 0 0 1px;border-style:none none none solid;}#wpbody-content .quick-edit-row-post .inline-edit-col-left{width:40%;}#wpbody-content .quick-edit-row-post .inline-edit-col-right{width:39%;}#wpbody-content .inline-edit-row-post .inline-edit-col-center{width:20%;}#wpbody-content .quick-edit-row-page .inline-edit-col-left{width:50%;}#wpbody-content .quick-edit-row-page .inline-edit-col-right,#wpbody-content .bulk-edit-row-post .inline-edit-col-right{width:49%;}#wpbody-content .bulk-edit-row .inline-edit-col-left{width:30%;}#wpbody-content .bulk-edit-row-page .inline-edit-col-right{width:69%;}#wpbody-content .bulk-edit-row .inline-edit-col-bottom{float:right;width:69%;}#wpbody-content .inline-edit-row-page .inline-edit-col-right{margin-top:27px;}.inline-edit-row fieldset .inline-edit-group{clear:both;}.inline-edit-row fieldset .inline-edit-group:after{content:".";display:block;height:0;clear:both;visibility:hidden;}.inline-edit-row p.submit{clear:both;padding:.5em;margin:.5em 0 0;}.inline-edit-row span.error{line-height:22px;margin:0 15px;padding:3px 5px;}.inline-edit-row h4{margin:.2em 0;padding:0;line-height:23px;}.inline-edit-row fieldset span.title,.inline-edit-row fieldset span.checkbox-title{margin:0;padding:0;line-height:27px;}.inline-edit-row fieldset label,.inline-edit-row fieldset span.inline-edit-categories-label{display:block;margin:.2em 0;}.inline-edit-row fieldset label.inline-edit-tags{margin-top:0;}.inline-edit-row fieldset label.inline-edit-tags span.title{margin:.2em 0;}.inline-edit-row fieldset label span.title{display:block;float:left;width:5em;}.inline-edit-row fieldset label span.input-text-wrap{display:block;margin-left:5em;}.quick-edit-row-post fieldset.inline-edit-col-right label span.title{width:auto;padding-right:.5em;}.inline-edit-row .input-text-wrap input[type=text]{width:100%;}.inline-edit-row fieldset label input[type=checkbox]{vertical-align:text-bottom;}.inline-edit-row fieldset label textarea{width:100%;height:4em;}#wpbody-content .bulk-edit-row fieldset .inline-edit-group label{max-width:50%;}#wpbody-content .quick-edit-row fieldset .inline-edit-group label.alignleft:first-child{margin-right:.5em;}.inline-edit-col-right .input-text-wrap input.inline-edit-menu-order-input{width:6em;}.inline-edit-row h4{text-transform:uppercase;}.inline-edit-row fieldset span.title,.inline-edit-row fieldset span.checkbox-title{font-style:italic;line-height:1.8em;}.inline-edit-row fieldset input[type="text"],.inline-edit-row fieldset textarea{border-style:solid;border-width:1px;}.inline-edit-row fieldset .inline-edit-date{float:left;}.inline-edit-row fieldset input[name=jj],.inline-edit-row fieldset input[name=hh],.inline-edit-row fieldset input[name=mn]{font-size:12px;width:2.1em;}.inline-edit-row fieldset input[name=aa]{font-size:12px;width:3.5em;}.inline-edit-row fieldset label input.inline-edit-password-input{width:8em;}.inline-edit-row .catshow,.inline-edit-row .cathide{cursor:pointer;}ul.cat-checklist{height:12em;border-style:solid;border-width:1px;overflow-y:scroll;padding:0 5px;margin:0;}#bulk-titles{display:block;height:12em;border-style:solid;border-width:1px;overflow-y:scroll;padding:0 5px;margin:0 0 5px;}.inline-edit-row fieldset ul.cat-checklist li,.inline-edit-row fieldset ul.cat-checklist input{margin:0;}.inline-edit-row fieldset ul.cat-checklist label,.inline-edit-row .catshow,.inline-edit-row .cathide,.inline-edit-row #bulk-titles div{font-family:sans-serif;font-style:normal;font-size:11px;}table .inline-edit-row fieldset ul.cat-hover{height:auto;max-height:30em;overflow-y:auto;position:absolute;}.inline-edit-row fieldset label input.inline-edit-menu-order-input{width:3em;}.inline-edit-row fieldset label input.inline-edit-slug-input{width:75%;}.quick-edit-row-post fieldset label.inline-edit-status{float:left;}#bulk-titles{line-height:140%;}#bulk-titles div{margin:.2em .3em;}#bulk-titles div a{cursor:pointer;display:block;float:left;height:10px;margin:3px 3px 0 -2px;overflow:hidden;position:relative;text-indent:-9999px;width:10px;}#titlediv{position:relative;margin-bottom:20px;}#titlediv label{cursor:text;}#titlediv div.inside{margin:0;}#poststuff #titlewrap{border:0;padding:0;}#titlediv #title{padding:3px 8px;font-size:1.7em;line-height:100%;width:100%;outline:none;}#titlediv #title-prompt-text,#wp-fullscreen-title-prompt-text{color:#bbb;position:absolute;font-size:1.7em;padding:8px 10px;}#wp-fullscreen-title-prompt-text{left:0;padding:11px;}#poststuff .inside-submitbox,#side-sortables .inside-submitbox{margin:0 3px;font-size:11px;}input#link_description,input#link_url{width:98%;}#pending{background:0 none;border:0 none;padding:0;font-size:11px;margin-top:-1px;}#edit-slug-box{height:1em;margin-top:8px;padding:0 10px;}#editable-post-name-full{display:none;}#editable-post-name input{width:16em;}.postarea h3 label{float:left;}#submitpost #ajax-loading,#submitpost .ajax-loading{vertical-align:middle;}#wpcontent .ajax-loading{visibility:hidden;}.submitbox .submit{text-align:left;padding:12px 10px 10px;font-size:11px;}.submitbox .submitdelete{text-decoration:none;padding:1px 2px;}.submitbox .submitdelete,.submitbox .submit a:hover{border-bottom-width:1px;border-bottom-style:solid;}.submitbox .submit input{margin-bottom:8px;margin-right:4px;padding:6px;}.inside-submitbox #post_status{margin:2px 0 2px -2px;}#post-status-select,#post-format{line-height:2.5em;margin-top:3px;}#post-body #normal-sortables{min-height:50px;}.postbox{position:relative;min-width:255px;}#trackback_url{width:99%;}#normal-sortables .postbox .submit{background:transparent none;border:0 none;float:right;padding:0 12px;margin:0;}.category-add input[type="text"],.category-add select{width:100%;max-width:260px;}#post-body ul.category-tabs,#post-body ul.add-menu-item-tabs{float:left;width:120px;text-align:right;margin:0 -120px 0 5px;padding:0;}#post-body ul.category-tabs li,#post-body ul.add-menu-item-tabs li{padding:8px;}#post-body ul.category-tabs li.tabs,#post-body ul.add-menu-item-tabs li.tabs{-webkit-border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;border-top-left-radius:3px;border-bottom-left-radius:3px;}.wp-tab-panel,.categorydiv div.tabs-panel,.customlinkdiv div.tabs-panel,.posttypediv div.tabs-panel,.taxonomydiv div.tabs-panel,#linkcategorydiv div.tabs-panel{height:200px;overflow:auto;padding:.5em .9em;border-style:solid;border-width:1px;}.nav-menus-php .customlinkdiv div.tabs-panel,.nav-menus-php .posttypediv div.tabs-panel,.nav-menus-php .taxonomydiv div.tabs-panel{height:auto;max-height:205px;}div.tabs-panel-active{display:block;}div.tabs-panel-inactive{display:none;}#post-body .categorydiv div.tabs-panel,.taxonomy div.tabs-panel,#post-body #linkcategorydiv div.tabs-panel{margin:0 5px 0 125px;}.press-this #side-sortables .category-tabs li,.has-right-sidebar #side-sortables .category-tabs li,#side-sortables .add-menu-item-tabs li,.wp-tab-bar li{display:inline;line-height:1.35em;}.no-js #side-sortables .category-tabs li.hide-if-no-js{display:none;}#side-sortables .category-tabs a,#side-sortables .add-menu-item-tabs a,.wp-tab-bar a{text-decoration:none;}#side-sortables .category-tabs{margin:8px 0 3px;}#category-adder h4{margin:10px 0;}#side-sortables .add-menu-item-tabs,.wp-tab-bar{margin-bottom:3px;}.categorydiv ul,.customlinkdiv ul,.posttypediv ul,.taxonomydiv ul,#linkcategorydiv ul{list-style:none;padding:0;margin:0;}#normal-sortables .postbox #replyrow .submit{float:none;margin:0;padding:3px 7px;}#side-sortables .submitbox .submit input,#side-sortables .submitbox .submit .preview,#side-sortables .submitbox .submit a.preview:hover{border:0 none;}#side-sortables .inside-submitbox .insidebox,.stuffbox .insidebox{margin:11px 0;}#side-sortables .comments-box,#normal-sortables .comments-box{border:0 none;}ul.category-tabs,ul.add-menu-item-tabs,ul.wp-tab-bar{margin-top:12px;}#side-sortables .comments-box thead th,#normal-sortables .comments-box thead th{background:transparent;padding:0 7px 4px;font-style:italic;}ul.category-tabs li.tabs,ul.add-menu-item-tabs li.tabs,.wp-tab-active{border-style:solid solid none;border-width:1px 1px 0;}#commentsdiv img.waiting{padding-left:5px;}#post-body .category-tabs li.tabs,#post-body .add-menu-item-tabs li.tabs{border-style:solid none solid solid;border-width:1px 0 1px 1px;margin-right:-1px;}ul.category-tabs li,ul.add-menu-item-tabs li,ul.wp-tab-bar li{padding:3px 5px 5px;-webkit-border-top-left-radius:3px;-webkit-border-top-right-radius:3px;border-top-left-radius:3px;border-top-right-radius:3px;}form#tags-filter{position:relative;}.screen-per-page{width:3em;}#posts-filter fieldset{float:left;margin:0 1.5ex 1em 0;padding:0;}#posts-filter fieldset legend{padding:0 0 .2em 1px;}td.post-title strong,td.plugin-title strong{display:block;margin-bottom:.2em;}td.post-title p,td.plugin-title p{margin:6px 0;}.wp-hidden-children .wp-hidden-child,.ui-tabs-hide{display:none;}.commentlist .avatar{vertical-align:text-top;}#post-body .tagsdiv #newtag{margin-right:5px;width:16em;}#side-sortables input#post_password{width:94%;}#side-sortables .tagsdiv #newtag{width:68%;}#post-status-info{border-width:0 1px 1px;border-style:none solid solid;width:100%;-webkit-border-bottom-left-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-left-radius:3px;border-bottom-right-radius:3px;}#post-status-info td{font-size:12px;}.autosave-info{padding:2px 15px;text-align:right;}#editorcontent #post-status-info{border:none;}#post-body .wp_themeSkin .mceStatusbar a.mceResize{display:block;background:transparent url(../images/resize.gif) no-repeat scroll right bottom;width:12px;cursor:se-resize;margin:0 2px;position:relative;top:-2px;}#post-body .postarea .wp_themeSkin .mceStatusbar a.mceResize{top:20px;}#wp-word-count{display:block;padding:2px 10px;}#timestampdiv select{height:20px;line-height:14px;padding:0;vertical-align:top;}#aa,#jj,#hh,#mn{padding:1px;font-size:12px;}#jj,#hh,#mn{width:2em;}#aa{width:3.4em;}.curtime #timestamp{background-repeat:no-repeat;background-position:left top;padding-left:18px;}#timestampdiv{padding-top:5px;line-height:23px;}#timestampdiv p{margin:8px 0 6px;}#timestampdiv input{border-width:1px;border-style:solid;}#postcustomstuff .updatemeta,#postcustomstuff .deletemeta{margin:auto;}#postcustomstuff thead th{padding:5px 8px 8px;}#postcustom #postcustomstuff .submit{border:0 none;float:none;padding:5px 8px;}#side-sortables #postcustom #postcustomstuff .submit{padding:0 5px;}#side-sortables #postcustom #postcustomstuff td.left input{margin:3px 3px 0;}#side-sortables #postcustom #postcustomstuff #the-list textarea{height:85px;margin:3px;}#postcustomstuff table{margin:0;width:100%;border-width:1px;border-style:solid;border-spacing:0;}#postcustomstuff table input,#postcustomstuff table select,#postcustomstuff table textarea{width:95%;margin:8px 0 8px 8px;}#postcustomstuff th.left,#postcustomstuff td.left{width:38%;}#postcustomstuff #newmeta .submit{padding:0 8px;}#postcustomstuff .submit input,#postcustomstuff table #addmetasub{width:auto;}#postcustomstuff #newmetaleft{vertical-align:top;}#postcustomstuff #newmetaleft a{padding:0 10px;text-decoration:none;}table.diff{width:100%;}table.diff col.content{width:50%;}table.diff tr{background-color:transparent;}table.diff td,table.diff th{padding:.5em;font-family:Consolas,Monaco,monospace;border:none;}table.diff .diff-deletedline del,table.diff .diff-addedline ins{text-decoration:none;}.category-adder{margin-left:120px;padding:4px 0;}.category-adder h4{margin:0 0 8px;}#side-sortables .category-adder{margin:0;}#post-body ul.category-tabs,#post-body ul.add-menu-item-tabs{float:left;width:120px;text-align:right;margin:0 -120px 0 5px;padding:0;}#post-body ul.category-tabs li,#post-body ul.add-menu-item-tabs li{padding:8px;}#post-body ul.category-tabs li.tabs,#post-body ul.add-menu-item-tabs li.tabs{-webkit-border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;border-top-left-radius:3px;border-bottom-left-radius:3px;}.categorydiv div.tabs-panel,.customlinkdiv div.tabs-panel,.posttypediv div.tabs-panel,.taxonomydiv div.tabs-panel,#linkcategorydiv div.tabs-panel{height:200px;overflow:auto;padding:.5em .9em;border-style:solid;border-width:1px;}.nav-menus-php .customlinkdiv div.tabs-panel,.nav-menus-php .posttypediv div.tabs-panel,.nav-menus-php .taxonomydiv div.tabs-panel{height:auto;max-height:205px;}div.tabs-panel-active{display:block;}div.tabs-panel-inactive{display:none;}#post-body .categorydiv div.tabs-panel,.taxonomy div.tabs-panel,#post-body #linkcategorydiv div.tabs-panel{margin:0 5px 0 125px;}.categorydiv ul,.customlinkdiv ul,.posttypediv ul,.taxonomydiv ul,#linkcategorydiv ul{list-style:none;padding:0;margin:0;}#front-page-warning,#front-static-pages ul,ul.export-filters,.inline-editor ul.cat-checklist ul,.categorydiv ul.categorychecklist ul,.customlinkdiv ul.categorychecklist ul,.posttypediv ul.categorychecklist ul,.taxonomydiv ul.categorychecklist ul,#linkcategorydiv ul.categorychecklist ul{margin-left:18px;}ul.categorychecklist li{margin:0;padding:0;line-height:19px;word-wrap:break-word;}.categorydiv .tabs-panel,.customlinkdiv .tabs-panel,.posttypediv .tabs-panel,.taxonomydiv .tabs-panel{border-width:3px;border-style:solid;}.form-wrap p,.form-wrap label{font-size:11px;}.form-wrap label{display:block;padding:2px;font-size:12px;}.form-field input,.form-field textarea{border-style:solid;border-width:1px;width:95%;}p.description,.form-wrap p{margin:2px 0 5px;}p.help,p.description,span.description,.form-wrap p{font-size:12px;font-style:italic;font-family:sans-serif;}.form-wrap .form-field{margin:0 0 10px;padding:8px;}.col-wrap h3{margin:12px 0;font-size:1.1em;}.col-wrap p.submit{margin-top:-10px;}#poststuff .taghint{color:#aaa;margin:15px 0 -24px 12px;}#poststuff .tagsdiv .howto{margin:0 0 6px 8px;}.ajaxtag .newtag{position:relative;}.tagsdiv .newtag{width:180px;}.tagsdiv .the-tags{display:block;height:60px;margin:0 auto;overflow:auto;width:260px;}#post-body-content .tagsdiv .the-tags{margin:0 5px;}p.popular-tags{-webkit-border-radius:8px;border-radius:8px;border-width:1px;border-style:solid;line-height:2em;max-width:1000px;padding:8px 12px 12px;text-align:justify;}p.popular-tags a{padding:0 3px;}.tagcloud{width:97%;margin:0 0 40px;text-align:justify;}.tagcloud h3{margin:2px 0 12px;}.ac_results{padding:0;margin:0;list-style:none;position:absolute;z-index:10000;display:none;border-width:1px;border-style:solid;}.ac_results li{padding:2px 5px;white-space:nowrap;text-align:left;}.ac_over{cursor:pointer;}.ac_match{text-decoration:underline;}.media-item .describe{border-collapse:collapse;width:100%;border-top-style:solid;border-top-width:1px;clear:both;cursor:default;}.media-item.media-blank .describe{border:0;}.media-item .describe th{vertical-align:top;text-align:left;padding:5px 10px 10px;width:140px;}.media-item .describe .align th{padding-top:0;}.media-item .media-item-info tr{background-color:transparent;}.media-item .describe td{padding:0 8px 8px 0;vertical-align:top;}.media-item thead.media-item-info td{padding:4px 10px 0;}.media-item .media-item-info .A1B1{padding:0 0 0 10px;}.media-item td.savesend{padding-bottom:15px;}.media-item .thumbnail{max-height:128px;max-width:128px;}#wpbody-content #async-upload-wrap a{display:none;}.media-upload-form{margin-top:20px;}.media-upload-form td label{margin-right:6px;margin-left:2px;}.media-upload-form .align .field label{display:inline;padding:0 0 0 23px;margin:0 1em 0 3px;font-weight:bold;}.media-upload-form tr.image-size label{margin:0 0 0 5px;font-weight:bold;}.media-upload-form th.label label{font-weight:bold;margin:.5em;font-size:13px;}.media-upload-form th.label label span{padding:0 5px;}abbr.required{border:medium none;text-decoration:none;}.media-item .describe input[type="text"],.media-item .describe textarea{width:460px;}.media-item .describe p.help{margin:0;padding:0 0 0 5px;}.describe-toggle-on,.describe-toggle-off{display:block;line-height:36px;float:right;margin-right:15px;}.media-item .describe-toggle-off,.media-item.open .describe-toggle-on,.media-item.open img.pinkynail{display:none;}.media-item.open .describe-toggle-off{display:block;}#media-items .media-item{border-style:solid;border-width:1px;min-height:36px;position:relative;margin-top:-1px;width:100%;}#media-items{width:623px;}#media-items:empty{border:0 none;}.media-item .filename{line-height:36px;overflow:hidden;padding:0 10px;}.media-item .error-div{padding-left:10px;}.media-item .pinkynail{float:left;margin:2px 2px 0;max-width:40px;max-height:32px;}.media-item .startopen,.media-item .startclosed{display:none;}.media-item .original{position:relative;height:34px;}.media-item .progress{float:right;height:22px;margin:6px 10px 0 0;width:200px;line-height:2em;padding:0;overflow:hidden;margin-bottom:2px;border:1px solid #d1d1d1;background:#fff;background-image:linear-gradient(bottom,#fff 0,#f7f7f7 100%);background-image:-o-linear-gradient(bottom,#fff 0,#f7f7f7 100%);background-image:-moz-linear-gradient(bottom,#fff 0,#f7f7f7 100%);background-image:-webkit-linear-gradient(bottom,#fff 0,#f7f7f7 100%);background-image:-ms-linear-gradient(bottom,#fff 0,#f7f7f7 100%);-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:inset 0 0 3px rgba(0,0,0,0.1);box-shadow:inset 0 0 3px rgba(0,0,0,0.1);}.media-item .bar{z-index:9;width:0;height:100%;margin-top:-24px;background-color:#83B4D8;background-image:linear-gradient(bottom,#72a7cf 0,#90c5ee 100%);background-image:-o-linear-gradient(bottom,#72a7cf 0,#90c5ee 100%);background-image:-moz-linear-gradient(bottom,#72a7cf 0,#90c5ee 100%);background-image:-webkit-linear-gradient(bottom,#72a7cf 0,#90c5ee 100%);background-image:-ms-linear-gradient(bottom,#72a7cf 0,#90c5ee 100%);-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 0 3px rgba(0,0,0,0.3);box-shadow:0 0 3px rgba(0,0,0,0.3);}.media-item .progress .percent{z-index:10;position:relative;width:200px;padding:0 8px;text-shadow:0 1px 0 rgba(255,255,255,0.4);color:rgba(0,0,0,0.6);}.upload-php .fixed .column-parent{width:25%;}.js .html-uploader #plupload-upload-ui{display:none;}.js .html-uploader #html-upload-ui{display:block;}.media-upload-form .media-item.error{margin:0;padding:0;}.media-upload-form .media-item.error p,.media-item .error-div{line-height:16px;font-size:12px;margin:10px;padding:0;}.media-item .error-div a.dismiss{float:right;padding-left:15px;}.find-box{width:500px;height:300px;overflow:hidden;padding:33px 5px 40px;position:absolute;z-index:1000;}.find-box-head{cursor:move;font-weight:bold;height:2em;line-height:2em;padding:1px 12px;position:absolute;top:5px;width:100%;}.find-box-inside{overflow:auto;width:100%;height:100%;}.find-box-search{padding:12px;border-width:1px;border-style:none none solid;}#find-posts-response{margin:8px 0;padding:0 1px;}#find-posts-response table{width:100%;}#find-posts-response .found-radio{padding:5px 0 0 8px;width:15px;}.find-box-buttons{width:480px;margin:8px;}.find-box-search label{padding-right:6px;}.find-box #resize-se{position:absolute;right:1px;bottom:1px;}ul#dismissed-updates{display:none;}form.upgrade{margin-top:8px;}form.upgrade .hint{font-style:italic;font-size:85%;margin:-0.5em 0 2em 0;}#poststuff .inside .the-tagcloud{margin:5px 0 10px;padding:8px;border-width:1px;border-style:solid;line-height:1.8em;word-spacing:3px;-webkit-border-radius:6px;border-radius:6px;}.drag-drop #drag-drop-area{border:4px dashed #DDD;height:200px;}.drag-drop .drag-drop-inside{margin:70px auto 0;width:250px;}.drag-drop-inside p{color:#aaa;font-size:14px;margin:5px 0;display:none;}.drag-drop .drag-drop-inside p{text-align:center;}.drag-drop-inside p.drag-drop-info{font-size:20px;}.drag-drop .drag-drop-inside p,.drag-drop-inside p.drag-drop-buttons{display:block;}.drag-drop.drag-over #drag-drop-area{border-color:#83b4d8;}#plupload-upload-ui{position:relative;}.describe .image-editor{vertical-align:top;}.imgedit-wrap{position:relative;}.imgedit-settings p{margin:8px 0;}.describe .imgedit-wrap table td{vertical-align:top;padding-top:0;}.imgedit-wrap p,.describe .imgedit-wrap table td{font-size:11px;line-height:18px;}.describe .imgedit-wrap table td.imgedit-settings{padding:0 5px;}td.imgedit-settings input{vertical-align:middle;}.imgedit-wait{position:absolute;top:0;background:#FFF url(../images/wpspin_light.gif) no-repeat scroll 22px 10px;opacity:.7;filter:alpha(opacity=70);width:100%;height:500px;display:none;}.media-disabled,.imgedit-settings .disabled{color:grey;}.imgedit-wait-spin{padding:0 4px 4px;vertical-align:bottom;visibility:hidden;}.imgedit-menu{margin:0 0 12px;min-width:300px;}.imgedit-menu div{float:left;width:32px;height:32px;}.imgedit-crop-wrap{position:relative;}.imgedit-crop{background:transparent url(../images/imgedit-icons.png) no-repeat scroll -9px -31px;margin:0 8px 0 0;}.imgedit-crop.disabled:hover{background-position:-9px -31px;}.imgedit-crop:hover{background-position:-9px -1px;}.imgedit-rleft{background:transparent url(../images/imgedit-icons.png) no-repeat scroll -46px -31px;margin:0 3px;}.imgedit-rleft.disabled:hover{background-position:-46px -31px;}.imgedit-rleft:hover{background-position:-46px -1px;}.imgedit-rright{background:transparent url(../images/imgedit-icons.png) no-repeat scroll -77px -31px;margin:0 8px 0 3px;}.imgedit-rright.disabled:hover{background-position:-77px -31px;}.imgedit-rright:hover{background-position:-77px -1px;}.imgedit-flipv{background:transparent url(../images/imgedit-icons.png) no-repeat scroll -115px -31px;margin:0 3px;}.imgedit-flipv.disabled:hover{background-position:-115px -31px;}.imgedit-flipv:hover{background-position:-115px -1px;}.imgedit-fliph{background:transparent url(../images/imgedit-icons.png) no-repeat scroll -147px -31px;margin:0 8px 0 3px;}.imgedit-fliph.disabled:hover{background-position:-147px -31px;}.imgedit-fliph:hover{background-position:-147px -1px;}.imgedit-undo{background:transparent url(../images/imgedit-icons.png) no-repeat scroll -184px -31px;margin:0 3px;}.imgedit-undo.disabled:hover{background-position:-184px -31px;}.imgedit-undo:hover{background-position:-184px -1px;}.imgedit-redo{background:transparent url(../images/imgedit-icons.png) no-repeat scroll -215px -31px;margin:0 8px 0 3px;}.imgedit-redo.disabled:hover{background-position:-215px -31px;}.imgedit-redo:hover{background-position:-215px -1px;}.imgedit-applyto img{margin:0 8px 0 0;}.imgedit-group-top{margin:5px 0;}.imgedit-applyto .imgedit-label{padding:2px 0 0;display:block;}.imgedit-help{display:none;font-style:italic;margin-bottom:8px;}.imgedit-help ul li{font-size:11px;}a.imgedit-help-toggle{text-decoration:none;}#wpbody-content .imgedit-response div{width:600px;margin:8px;}.form-table td.imgedit-response{padding:0;}.imgedit-submit{margin:8px 0;}.imgedit-submit-btn{margin-left:20px;}.imgedit-wrap .nowrap{white-space:nowrap;}span.imgedit-scale-warn{color:red;font-size:20px;font-style:normal;visibility:hidden;vertical-align:middle;}.imgedit-group{border-width:1px;border-style:solid;-webkit-border-radius:8px;border-radius:8px;margin-bottom:8px;padding:2px 10px;}.form-table{border-collapse:collapse;margin-top:.5em;width:100%;margin-bottom:-8px;clear:both;}.form-table td{margin-bottom:9px;padding:8px 10px;line-height:20px;font-size:12px;}.form-table th,.form-wrap label{font-weight:normal;text-shadow:#fff 0 1px 0;}.form-table th{vertical-align:top;text-align:left;padding:10px;width:200px;}.form-table th.th-full{width:auto;}.form-table div.color-option{display:block;clear:both;margin-top:12px;}.form-table input.tog{margin-top:2px;margin-right:2px;float:left;}.form-table td p{margin-top:4px;}.form-table table.color-palette{vertical-align:bottom;float:left;margin:-12px 3px 11px;}.form-table .color-palette td{border-width:1px 1px 0;border-style:solid solid none;height:10px;line-height:20px;width:10px;}.commentlist li{padding:1em 1em .2em;margin:0;border-bottom-width:1px;border-bottom-style:solid;}.commentlist li li{border-bottom:0;padding:0;}.commentlist p{padding:0;margin:0 0 .8em;}#replyrow input{border-width:1px;border-style:solid;}#replyrow td{padding:2px;}#replysubmit{margin:0;padding:0 7px 3px;text-align:center;}#replysubmit img.waiting,.inline-edit-save img.waiting{padding:4px 10px 0;vertical-align:top;float:right;}#replysubmit .button{margin-right:5px;}#replysubmit .error{color:red;line-height:21px;text-align:center;vertical-align:center;}#replyrow h5{margin:.2em 0 0;padding:0 5px;line-height:1.4em;font-size:1em;}#edithead .inside{float:left;padding:3px 0 2px 5px;margin:0;text-align:center;}#edithead .inside input{width:180px;}#edithead label{padding:2px 0;}#replycontainer{padding:5px;}#replycontent{height:120px;}.comment-ays{margin-bottom:0;border-style:solid;border-width:1px;}.comment-ays th{border-right-style:solid;border-right-width:1px;}.trash-undo-inside,.spam-undo-inside{margin:1px 8px 1px 0;line-height:16px;}.spam-undo-inside .avatar,.trash-undo-inside .avatar{height:20px;width:20px;margin-right:8px;vertical-align:middle;}.stuffbox .editcomment{clear:none;}#comment-status-radio p{margin:3px 0 5px;}#comment-status-radio input{margin:2px 3px 5px 0;vertical-align:middle;}#comment-status-radio label{padding:5px 0;}.commentlist .avatar{vertical-align:text-top;}.theme-install-php .tablenav{height:auto;}.available-theme{display:inline-block;margin-bottom:10px;margin-right:25px;overflow:hidden;padding:20px;vertical-align:top;width:240px;}.available-theme a.screenshot{width:240px;height:180px;display:block;border-width:1px;border-style:solid;margin-bottom:10px;overflow:hidden;}.available-theme img{width:240px;}.available-theme h3{margin:15px 0 5px;}#current-theme{margin:1em 0 1.5em;}#current-theme a{border-bottom:none;}#current-theme h3{font-size:17px;font-weight:normal;margin:0;}#current-theme .theme-description{margin-top:5px;}#current-theme img{float:left;border-width:1px;border-style:solid;margin-right:1em;margin-bottom:1.5em;width:150px;}.theme-options span{text-transform:uppercase;font-size:13px;}.theme-options a{font-size:15px;}#post-body ul.category-tabs li.tabs a,#post-body ul.add-menu-item-tabs li.tabs a,#TB_window #TB_title a.tb-theme-preview-link,#TB_window #TB_title a.tb-theme-preview-link:visited{font-weight:bold;text-decoration:none;}#TB_window #TB_title{background-color:#222;color:#cfcfcf;}#broken-themes{text-align:left;width:50%;border-spacing:3px;padding:3px;}.theme-install-php h4{margin:2.5em 0 8px;}.appearance_page_custom-header #headimg{border:1px solid #DFDFDF;min-height:100px;width:100%;}.appearance_page_custom-header #upload-form p label{font-size:12px;}.appearance_page_custom-header .available-headers .default-header{float:left;margin:0 20px 20px 0;}.appearance_page_custom-header .random-header{clear:both;margin:0 20px 20px 0;vertical-align:middle;}.appearance_page_custom-header .available-headers label input,.appearance_page_custom-header .random-header label input{margin-right:10px;}.appearance_page_custom-header .available-headers label img{vertical-align:middle;}div#custom-background-image{min-height:100px;border:1px solid #dfdfdf;}div#custom-background-image img{max-width:400px;max-height:300px;}.nav-tab{border-style:solid;border-color:#dfdfdf #dfdfdf #fff;border-width:1px 1px 0;color:#aaa;text-shadow:#fff 0 1px 0;font-size:12px;line-height:16px;display:inline-block;padding:4px 14px 6px;text-decoration:none;margin:0 6px -1px 0;-webkit-border-top-left-radius:3px;-webkit-border-top-right-radius:3px;border-top-left-radius:3px;border-top-right-radius:3px;}.nav-tab-active{border-width:1px;color:#464646;}.nav-tab:hover,.nav-tab-active{border-color:#ccc #ccc #fff;}h2.nav-tab-wrapper,h3.nav-tab-wrapper{border-bottom:1px solid #ccc;padding-bottom:0;}h2 .nav-tab{padding:4px 10px 6px;font-weight:200;font-size:20px;line-height:24px;}#dashboard_right_now .versions .b,#post-status-display,#post-visibility-display,#adminmenu .wp-submenu li.current,#adminmenu .wp-submenu li.current a,#adminmenu .wp-submenu li.current a:hover,.media-item .percent,.plugins .name,#pass-strength-result.strong,#pass-strength-result.short,.button-highlighted,input.button-highlighted,#quicktags #ed_strong,#ed_reply_toolbar #ed_reply_strong,.item-controls .item-order a,.feature-filter .feature-name{font-weight:bold;}.plugins p{margin:0 4px;padding:0;}.plugins .desc p{margin:0 0 8px;}.plugins td.desc{line-height:1.5em;}.plugins .desc ul,.plugins .desc ol{margin:0 0 0 2em;}.plugins .desc ul{list-style-type:disc;}.plugins .row-actions-visible{padding:0;}.plugins tbody th.check-column{padding:7px 0;}.plugins .inactive td,.plugins .inactive th,.plugins .active td,.plugins .active th{border-top-style:solid;border-top-width:1px;padding:5px 7px 0;}#wpbody-content .plugins .plugin-title,#wpbody-content .plugins .theme-title{padding-right:12px;white-space:nowrap;}.plugins .second,.plugins .row-actions-visible{padding:0 0 5px;}.plugins-php .widefat tfoot th,.plugins-php .widefat tfoot td{border-top-style:solid;border-top-width:1px;}.plugin-update-tr .update-message{margin:5px;padding:3px 5px;}.plugin-install-php h4{margin:2.5em 0 8px;}#profile-page .form-table textarea{width:500px;margin-bottom:6px;}#profile-page .form-table #rich_editing{margin-right:5px;}#your-profile legend{font-size:22px;}#your-profile #rich_editing{border:none;}#display_name{width:15em;}#createuser .form-field input{width:25em;}.pressthis{margin:20px 0;}.pressthis a{display:inline-block;width:113px;position:relative;cursor:move;color:#333;background:#dfdfdf;background-image:-webkit-gradient(linear,left bottom,left top,color-stop(0.07,#e6e6e6),color-stop(0.77,#d8d8d8));background-image:-moz-linear-gradient(center bottom,#e6e6e6 7%,#d8d8d8 77%);background-repeat:no-repeat;background-image-position:10px 8px;-webkit-border-radius:5px;border-radius:5px;border:1px #b4b4b4 solid;font-style:normal;line-height:16px;font-size:14px;text-decoration:none;text-shadow:#fff 0 1px 0;}.pressthis a:hover,.pressthis a:active{color:#333;}.pressthis a:hover:after{transform:skew(20deg) rotate(9deg);-webkit-transform:skew(20deg) rotate(9deg);-moz-transform:skew(20deg) rotate(9deg);box-shadow:0 10px 8px rgba(0,0,0,0.7);-webkit-box-shadow:0 10px 8px rgba(0,0,0,0.7);-moz-box-shadow:0 10px 8px rgba(0,0,0,0.7);}.pressthis a span{background:url(../images/press-this.png) no-repeat -45px 5px;padding:8px 0 8px 32px;display:inline-block;}.pressthis a:after{content:'';width:70%;height:55%;z-index:-1;position:absolute;right:10px;bottom:9px;background:transparent;transform:skew(20deg) rotate(6deg);-webkit-transform:skew(20deg) rotate(6deg);-moz-transform:skew(20deg) rotate(6deg);box-shadow:0 10px 8px rgba(0,0,0,0.6);-webkit-box-shadow:0 10px 8px rgba(0,0,0,0.6);-moz-box-shadow:0 10px 8px rgba(0,0,0,0.6);}#utc-time,#local-time{padding-left:25px;font-style:italic;font-family:sans-serif;}.defaultavatarpicker .avatar{margin:2px 0;vertical-align:middle;}#footer{position:absolute;bottom:0;left:0;right:0;padding:10px 0;margin-right:20px;border-top-width:1px;border-top-style:solid;}#footer p{margin:0;line-height:20px;}#footer a{text-decoration:none;}#footer a:hover{text-decoration:underline;}.about-wrap{position:relative;margin:25px 40px 0 20px;min-width:770px;max-width:1050px;font-size:15px;}.about-wrap div.updated,.about-wrap div.error{display:none!important;}.about-wrap p{line-height:1.6em;}.about-wrap h1{margin:.2em 200px 0 0;line-height:1.2em;font-size:2.8em;font-weight:200;}.about-text,.about-description,.about-wrap li.wp-person a.web{font-family:"HelveticaNeue-Light","Helvetica Neue Light","Helvetica Neue",sans-serif;font-weight:normal;line-height:1.6em;font-size:20px;}.about-description{margin-top:1.4em;}.about-text{margin:1em 200px 1.4em 0;min-height:60px;font-size:24px;}.about-wrap h3{font-size:24px;margin-bottom:1em;padding-top:20px;}.about-wrap .changelog{padding-bottom:10px;overflow:hidden;}.about-wrap .changelog li{list-style-type:disc;margin-left:3em;}.about-wrap .feature-section h4{margin-bottom:.6em;}.about-wrap .feature-section p{margin-top:.6em;}.about-wrap code{font-size:14px;}html.ie8 .about-wrap img.element-screenshot{padding:2px;}.about-wrap .point-releases{margin-top:5px;}.about-wrap .changelog.point-releases h3{padding-top:35px;}.about-wrap .changelog.point-releases h3:first-child{padding-top:7px;}.wp-badge{padding-top:142px;height:50px;width:173px;font-weight:bold;font-size:14px;text-align:center;margin:0 -5px;background:url('../images/wp-badge.png?ver=20111120') no-repeat;}.about-wrap .wp-badge{position:absolute;top:0;right:0;}.about-wrap h2.nav-tab-wrapper{padding-left:6px;}.about-wrap h2 .nav-tab{padding:4px 10px 6px;margin:0 3px -1px 0;font-size:18px;vertical-align:top;}.about-wrap h2 .nav-tab-active{font-weight:bold;padding-top:3px;}.about-wrap .feature-section .left-feature,.about-wrap .feature-section img,.about-wrap .feature-section .right-feature{float:left;}.about-wrap .feature-section{min-height:100px;overflow:hidden;clear:both;}.about-wrap .feature-section img{margin:5px auto;border:none;-webkit-border-radius:3px;border-radius:3px;}html.ie8 .about-wrap .feature-section img,html.ie8 .about-wrap .feature-section .image-mask{border-width:1px;border-style:solid;}.about-wrap .feature-section.text-features{width:31%;float:left;overflow:visible;}.about-wrap .feature-section.text-features div{width:112%;}.about-wrap .feature-section.screenshot-features{width:67%;margin-top:1.33em;float:right;clear:none;overflow:visible;}.about-wrap .feature-section.screenshot-features .angled-right{margin-top:-1em;margin-left:2.5em;}.about-wrap .feature-section.screenshot-features .angled-right p{margin-left:290px;}.about-wrap .feature-section .angled-right h4,.about-wrap .feature-section .angled-left h4{margin-top:0;}.about-wrap .feature-section .angled-right img,.about-wrap .feature-section .angled-left img{margin-top:.1em;margin-right:30px;}.about-wrap .feature-section.three-col{padding-top:15px;margin-bottom:0;}.about-wrap .feature-section.three-col div{width:30%;margin-right:4.999999999%;float:left;}.about-wrap .feature-section.three-col h4{margin:0 0 .6em 0;}.about-wrap .feature-section.three-col img{margin:.5em 0 .5em 5px;max-width:100%;float:none;}html.ie8 .about-wrap .feature-section.three-col img{margin-left:0;}.about-wrap .feature-section.three-col .last-feature{margin-right:0;}.about-wrap .feature-section .feature-images{width:300px;position:absolute;margin-top:1.1em;}.about-wrap .feature-section .feature-images img{width:250px;height:150px;margin-right:5px;}.about-wrap .feature-section.images-stagger-left,.about-wrap .feature-section.images-stagger-right{min-height:265px;}.about-wrap .feature-section.images-stagger-right .angled-right,.about-wrap .feature-section.images-stagger-left .angled-left{margin-bottom:-30px;}.about-wrap .feature-section.images-stagger-left .angled-left{margin-left:5px;}.about-wrap .feature-section .angled-right{float:right;}.about-wrap .feature-section.images-stagger-right .feature-images{right:0;}.about-wrap .feature-section.images-stagger-left .feature-images{left:0;}.about-wrap .feature-section.images-stagger-right .left-feature{margin-right:350px;}.about-wrap .feature-section.images-stagger-left .right-feature{margin-left:350px;}.about-wrap .return-to-dashboard{margin:30px 0 0 -5px;font-size:14px;font-weight:bold;}.about-wrap .return-to-dashboard a{text-decoration:none;padding:0 5px;}.about-wrap h4.wp-people-group{margin-top:2.6em;font-size:16px;}.about-wrap ul.wp-people-group{overflow:hidden;padding:5px;margin:0 -15px 0 -5px;}.about-wrap ul.compact{margin-bottom:0;}.about-wrap li.wp-person{float:left;margin-right:10px;}.about-wrap li.wp-person img.gravatar{float:left;margin:0 10px 10px 0;padding:2px;width:60px;height:60px;}.about-wrap ul.compact li.wp-person img.gravatar{width:30px;height:30px;}.about-wrap li.wp-person{height:70px;width:280px;padding-bottom:15px;}.about-wrap ul.compact li.wp-person{height:auto;width:180px;padding-bottom:0;margin-bottom:0;}.about-wrap #wp-people-group-validators+p.wp-credits-list{margin-top:0;}.about-wrap li.wp-person a.web{display:block;margin:6px 0 2px;font-size:16px;text-decoration:none;}.about-wrap p.wp-credits-list a{white-space:nowrap;}.freedoms-php .about-wrap ol{margin:40px 60px;}.freedoms-php .about-wrap ol li{list-style-type:decimal;font-weight:bold;}.freedoms-php .about-wrap ol p{font-weight:normal;margin:.6em 0;}#excerpt,.attachmentlinks{margin:0;height:4em;width:98%;}.wp-editor-container textarea.wp-editor-area{width:99.9%;}#template div{margin-right:190px;}p.pagenav{margin:0;display:inline;}.pagenav span{font-weight:bold;margin:0 6px;}.row-title{font-size:13px!important;font-weight:bold;}.column-author img,.column-username img{float:left;margin-right:10px;margin-top:1px;}.row-actions{visibility:hidden;padding:2px 0 0;}tr:hover .row-actions,div.comment-item:hover .row-actions{visibility:visible;}.row-actions-visible{padding:2px 0 0;}.form-table .pre{padding:8px;margin:0;}table.form-table td .updated{font-size:13px;}.tagchecklist{margin-left:14px;font-size:12px;overflow:auto;}.tagchecklist strong{margin-left:-8px;position:absolute;}.tagchecklist span{margin-right:25px;display:block;float:left;font-size:11px;line-height:1.8em;white-space:nowrap;cursor:default;}.tagchecklist span a{margin:6px 0 0 -9px;cursor:pointer;width:10px;height:10px;display:block;float:left;text-indent:-9999px;overflow:hidden;position:absolute;}#poststuff h2{margin-top:20px;font-size:1.5em;margin-bottom:15px;padding:0 0 3px;clear:left;}#poststuff h3,.metabox-holder h3{font-size:15px;font-weight:normal;padding:7px 10px;margin:0;line-height:1;}#poststuff .inside{margin:6px 0 8px;}#post-visibility-select,#post-formats-select{line-height:1.5em;margin-top:3px;}#poststuff #submitdiv .inside{margin:0;padding:0;}#titlediv,#poststuff .postarea{margin-bottom:20px;}td.post-title strong,td.plugin-title strong{display:block;margin-bottom:.2em;}td.post-title p,td.plugin-title p{margin:6px 0;}#templateside ul li a{text-decoration:none;}.tool-box .title{margin:8px 0;font-size:18px;font-weight:normal;line-height:24px;}#sidemenu{margin:-30px 15px 0 315px;list-style:none;position:relative;float:right;padding-left:10px;font-size:12px;}#sidemenu a{padding:0 7px;display:block;float:left;line-height:28px;border-top-width:1px;border-top-style:solid;border-bottom-width:1px;border-bottom-style:solid;}#sidemenu li{display:inline;line-height:200%;list-style:none;text-align:center;white-space:nowrap;margin:0;padding:0;}#sidemenu a.current{font-weight:normal;padding-left:6px;padding-right:6px;-webkit-border-top-left-radius:3px;-webkit-border-top-right-radius:3px;border-top-left-radius:3px;border-top-right-radius:3px;border-width:1px;border-style:solid;}#sidemenu li a .count-0{display:none;}.plugin-install #description,.plugin-install-network #description{width:60%;}table .vers,table .column-visible,table .column-rating{text-align:left;}.error-message{color:red;font-weight:bold;}body.iframe{height:98%;}td.media-icon{text-align:center;width:80px;padding-top:8px;padding-bottom:8px;}td.media-icon img{max-width:80px;max-height:60px;}.screen-per-page{width:3em;}.list-ajax-loading{float:right;margin-right:9px;margin-top:-1px;}.tablenav .list-ajax-loading{margin-top:7px;}#howto{font-size:11px;margin:0 5px;display:block;}.importers td{padding-right:14px;}.importers{font-size:16px;width:auto;}#namediv table{width:100%;}#namediv td.first{width:10px;white-space:nowrap;}#namediv input{width:98%;}#namediv p{margin:10px 0;}#submitdiv h3{margin-bottom:0!important;}.zerosize{height:0;width:0;margin:0;border:0;padding:0;overflow:hidden;position:absolute;}br.clear{height:2px;line-height:2px;}.checkbox{border:none;margin:0;padding:0;}fieldset{border:0;padding:0;margin:0;}.post-categories{display:inline;margin:0;padding:0;}.post-categories li{display:inline;}.edit-box{display:none;}h3:hover .edit-box{display:inline;}.index-php form .input-text-wrap{background:#fff;border-style:solid;border-width:1px;padding:2px 3px;border-color:#ccc;}#dashboard-widgets form .input-text-wrap input{border:0 none;outline:none;margin:0;padding:0;width:99%;color:#333;}form .textarea-wrap{background:#fff;border-style:solid;border-width:1px;padding:2px;border-color:#ccc;}#dashboard-widgets form .textarea-wrap textarea{border:0 none;padding:0;outline:none;width:99%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;}#dashboard-widgets .postbox form .submit{float:none;margin:.5em 0 0;padding:0;border:none;}#dashboard-widgets-wrap #dashboard-widgets .postbox form .submit input{margin:0;}#dashboard-widgets-wrap #dashboard-widgets .postbox form .submit #publish{min-width:0;}#dashboard-widgets a{text-decoration:none;}#dashboard-widgets h3 a{text-decoration:underline;}#dashboard-widgets h3 .postbox-title-action{position:absolute;right:30px;padding:0;top:5px;}#dashboard-widgets h4{font-weight:normal;font-size:13px;margin:0 0 .2em;padding:0;}#dashboard_right_now p.sub,#dashboard_right_now .table,#dashboard_right_now .versions{margin:-12px;}#dashboard_right_now .inside{font-size:12px;padding-top:20px;}#dashboard_right_now p.sub{padding:5px 0 15px;color:#8f8f8f;font-size:14px;position:absolute;top:-17px;left:15px;}#dashboard_right_now .table{margin:0;padding:0;position:relative;}#dashboard_right_now .table_content{float:left;border-top:#ececec 1px solid;width:45%;}#dashboard_right_now .table_discussion{float:right;border-top:#ececec 1px solid;width:45%;}#dashboard_right_now table td{padding:3px 0;white-space:nowrap;}#dashboard_right_now table tr.first td{border-top:none;}#dashboard_right_now td.b{padding-right:6px;text-align:right;font-size:14px;width:1%;}#dashboard_right_now td.b a{font-size:18px;}#dashboard_right_now td.b a:hover{color:#d54e21;}#dashboard_right_now .t{font-size:12px;padding-right:12px;padding-top:6px;color:#777;}#dashboard_right_now .t a{white-space:nowrap;}#dashboard_right_now .spam{color:red;}#dashboard_right_now .waiting{color:#e66f00;}#dashboard_right_now .approved{color:green;}#dashboard_right_now .versions{padding:6px 10px 12px;clear:both;}#dashboard_right_now a.button{float:right;clear:right;position:relative;top:-5px;}#dashboard_recent_comments h3{margin-bottom:0;}#dashboard_recent_comments .inside{margin-top:0;}#dashboard_recent_comments .comment-meta .approve{font-style:italic;font-family:sans-serif;font-size:10px;}#dashboard_recent_comments .subsubsub{float:none;white-space:normal;}#the-comment-list{position:relative;}#the-comment-list .comment-item{padding:1em 10px;border-top:1px solid;}#the-comment-list .pingback{padding-left:9px!important;}#the-comment-list .comment-item,#the-comment-list #replyrow{margin:0 -10px;}#the-comment-list .comment-item:first-child{border-top:none;}#the-comment-list .comment-item .avatar{float:left;margin:0 10px 5px 0;}#the-comment-list .comment-item h4{line-height:1.7em;margin-top:-0.4em;color:#777;}#the-comment-list .comment-item h4 cite{font-style:normal;font-weight:normal;}#the-comment-list .comment-item blockquote,#the-comment-list .comment-item blockquote p{margin:0;padding:0;display:inline;}#dashboard_recent_comments #the-comment-list .trackback blockquote,#dashboard_recent_comments #the-comment-list .pingback blockquote{display:block;}#the-comment-list .comment-item p.row-actions{margin:3px 0 0;padding:0;font-size:12px;}#dashboard_quick_press h4{font-family:sans-serif;float:left;width:5em;clear:both;font-weight:normal;text-align:right;font-size:12px;}#dashboard_quick_press h4 label{margin-right:10px;}#dashboard_quick_press .input-text-wrap,#dashboard_quick_press .textarea-wrap{margin:0 0 1em 5em;}#dashboard_quick_press .wp-media-buttons{margin:0 0 .5em 5em;padding:0;}#dashboard_quick_press .wp-media-buttons a{color:#777;}#dashboard-widgets #dashboard_quick_press form p.submit{margin-left:4.6em;}#dashboard-widgets #dashboard_quick_press form p.submit input{float:left;}#dashboard-widgets #dashboard_quick_press form p.submit #save-post{margin:0 1em 0 10px;}#dashboard-widgets #dashboard_quick_press form p.submit #publish{float:right;}#dashboard-widgets #dashboard_quick_press form p.submit img.waiting{vertical-align:middle;visibility:hidden;margin:4px 6px 0 0;}#dashboard_recent_drafts ul,#dashboard_recent_drafts p{margin:0;padding:0;}#dashboard_recent_drafts ul{list-style:none;}#dashboard_recent_drafts ul li{margin-bottom:1em;}#dashboard_recent_drafts h4{line-height:1.7em;}#dashboard_recent_drafts h4 abbr{font-weight:normal;font-family:sans-serif;font-size:12px;color:#999;margin-left:3px;}.rss-widget ul{margin:0;padding:0;list-style:none;}a.rsswidget{font-size:13px;line-height:1.7em;}.rss-widget ul li{line-height:1.5em;margin-bottom:12px;}.rss-widget span.rss-date{color:#999;font-size:12px;margin-left:3px;}.rss-widget cite{display:block;text-align:right;margin:0 0 1em;padding:0;}.rss-widget cite:before{content:'\2014';}#dashboard_plugins h4{line-height:1.7em;}#dashboard_plugins h5{font-weight:normal;font-size:13px;margin:0;display:inline;line-height:1.4em;}#dashboard_plugins h5 a{line-height:1.4em;}#dashboard_plugins .inside span{font-size:12px;padding-left:5px;}#dashboard_plugins p{margin:.3em 0 1.4em;line-height:1.4em;}.dashboard-comment-wrap{overflow:hidden;word-wrap:break-word;}#dashboard_browser_nag a.update-browser-link{font-size:1.2em;font-weight:bold;}#dashboard_browser_nag a{text-decoration:underline;}#dashboard_browser_nag p.browser-update-nag.has-browser-icon{padding-right:125px;}#dashboard_browser_nag .browser-icon{margin-top:-35px;}#dashboard_browser_nag.postbox.browser-insecure{background-color:#ac1b1b;border-color:#ac1b1b;}#dashboard_browser_nag.postbox{background-color:#e29808;background-image:none;border-color:#edc048;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;color:#fff;}#dashboard_browser_nag.postbox.browser-insecure h3{border-bottom-color:#cd5a5a;color:#fff;}#dashboard_browser_nag.postbox h3{border-bottom-color:#f6e2ac;text-shadow:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;background:transparent none;color:#fff;}#dashboard_browser_nag a{color:#fff;}#dashboard_browser_nag.browser-insecure a.browse-happy-link,#dashboard_browser_nag.browser-insecure a.update-browser-link{text-shadow:#871b15 0 1px 0;}#dashboard_browser_nag a.browse-happy-link,#dashboard_browser_nag a.update-browser-link{text-shadow:#d29a04 0 1px 0;}.login *{margin:0;padding:0;}.login form{margin-left:8px;padding:26px 24px 46px;font-weight:normal;background:#fff;border:1px solid #e5e5e5;-moz-box-shadow:rgba(200,200,200,0.7) 0 4px 10px -1px;-webkit-box-shadow:rgba(200,200,200,0.7) 0 4px 10px -1px;box-shadow:rgba(200,200,200,0.7) 0 4px 10px -1px;}.login form .forgetmenot{font-weight:normal;float:left;margin-bottom:0;}.login .button-primary{font-size:13px!important;line-height:16px;padding:3px 10px;float:right;}#login form p{margin-bottom:0;}#login form p.submit{padding:0;}.login label{color:#777;font-size:14px;}.login form .forgetmenot label{font-size:12px;line-height:19px;}.login form p{margin-bottom:24px;}.login h1 a{background:url(../images/logo-login.png) no-repeat top center;width:326px;height:67px;text-indent:-9999px;overflow:hidden;padding-bottom:15px;display:block;}#login{width:320px;padding:114px 0 0;margin:auto;}#login_error,.login .message{margin:0 0 16px 8px;padding:12px;}.login #nav,.login #backtoblog{text-shadow:#fff 0 1px 0;margin:0 0 0 16px;padding:16px 16px 0;}#backtoblog{padding:12px 16px 0;}.login form .input{font-weight:200;font-size:24px;line-height:1;width:100%;padding:3px;margin-top:2px;margin-right:6px;margin-bottom:16px;border:1px solid #e5e5e5;background:#fbfbfb;outline:none;-moz-box-shadow:inset 1px 1px 2px rgba(200,200,200,0.2);-webkit-box-shadow:inset 1px 1px 2px rgba(200,200,200,0.2);box-shadow:inset 1px 1px 2px rgba(200,200,200,0.2);}.login input{color:#555;}.login #pass-strength-result{width:250px;font-weight:bold;border-style:solid;border-width:1px;margin:12px 0 6px;padding:6px 5px;text-align:center;}#dashboard_right_now p.musub{margin-top:12px;border-top:1px solid #ececec;padding-left:16px;position:static;}.rtl #dashboard_right_now p.musub{padding-left:0;padding-right:16px;}#dashboard_right_now td.b a.musublink{font-size:16px;}#dashboard_right_now div.musubtable{border-top:none;}#dashboard_right_now div.musubtable .t{white-space:normal;}.wp-list-table .site-deleted{background:#ff8573;}.wp-list-table .site-spammed{background:#faafaa;}.wp-list-table .site-archived{background:#ffebe8;}.wp-list-table .site-mature{background:#fecac2;}#nav-menus-frame{margin-left:300px;}#wpbody-content #menu-settings-column{display:inline;width:281px;margin-left:-300px;clear:both;float:left;padding-top:24px;}.no-js #wpbody-content #menu-settings-column{padding-top:31px;}#menu-settings-column .inside{clear:both;}.metabox-holder-disabled .postbox{opacity:.5;filter:alpha(opacity=50);}.metabox-holder-disabled .button-controls .select-all{display:none;}#wpbody{position:relative;}#menu-management-liquid{float:left;min-width:100%;}#menu-management{position:relative;margin-right:20px;margin-top:-3px;width:100%;}#menu-management .menu-edit{margin-bottom:20px;}.nav-menus-php #post-body{padding:10px;border-width:1px 0;border-style:solid;}#nav-menu-header,#nav-menu-footer{padding:0 10px;}#nav-menu-header{border-bottom:1px solid;}#nav-menu-footer{border-top:1px solid;}.nav-menus-php #post-body div.updated,.nav-menus-php #post-body div.error{margin:0;}.nav-menus-php #post-body-content{position:relative;}#menu-management .menu-add-new abbr{font-weight:bold;}#menu-management .nav-tabs-nav{margin:0 20px;}#menu-management .nav-tabs-arrow{width:10px;padding:0 5px 4px;cursor:pointer;position:absolute;top:0;line-height:22px;font-size:18px;text-shadow:0 1px 0 #fff;}#menu-management .nav-tabs-arrow-left{left:0;}#menu-management .nav-tabs-arrow-right{right:0;text-align:right;}#menu-management .nav-tabs-wrapper{width:100%;height:28px;margin-bottom:-1px;overflow:hidden;}#menu-management .nav-tabs{padding-left:20px;padding-right:10px;}.js #menu-management .nav-tabs{float:left;margin-left:0;margin-right:-400px;}#menu-management .nav-tab{margin-bottom:0;font-size:14px;}#select-nav-menu-container{text-align:right;padding:0 10px 3px 10px;margin-bottom:5px;}#select-nav-menu{width:100px;display:inline;}#menu-name-label{margin-top:-2px;}#wpbody .open-label{display:block;float:left;}#wpbody .open-label span{padding-right:10px;}.js .input-with-default-title{font-style:italic;}#menu-management .inside{padding:0 10px;}.postbox .howto input{width:180px;float:right;}.customlinkdiv .howto input{width:200px;}#nav-menu-theme-locations .howto select{width:100%;}#nav-menu-theme-locations .button-controls{text-align:right;}.add-menu-item-view-all{height:400px;}#menu-container .submit{margin:0 0 10px;padding:0;}.nav-menus-php .meta-sep,.nav-menus-php .submitdelete,.nav-menus-php .submitcancel{display:block;float:left;margin:4px 0;line-height:15px;}.meta-sep{padding:0 2px;}#cancel-save{text-decoration:underline;font-size:12px;margin-left:20px;margin-top:5px;}.list-controls{float:left;margin-top:5px;}.add-to-menu{float:right;}.postbox img.waiting{display:none;vertical-align:middle;}.button-controls{clear:both;margin:10px 0;}.show-all,.hide-all{cursor:pointer;}.hide-all{display:none;}#menu-name{width:270px;}#manage-menu .inside{padding:0;}#available-links dt{display:block;}#add-custom-link .howto{font-size:12px;}#add-custom-link label span{display:block;float:left;margin-top:5px;padding-right:5px;}.menu-item-textbox{width:180px;}.nav-menus-php .howto span{margin-top:4px;display:block;float:left;}.quick-search{width:190px;}.nav-menus-php .list-wrap{display:none;clear:both;margin-bottom:10px;}.nav-menus-php .list-container{max-height:200px;overflow-y:auto;padding:10px 10px 5px;}.nav-menus-php .postbox p.submit{margin-bottom:0;}.nav-menus-php .list li{display:none;margin:0;margin-bottom:5px;}.nav-menus-php .list li .menu-item-title{cursor:pointer;display:block;}.nav-menus-php .list li .menu-item-title input{margin-right:3px;margin-top:-3px;}#menu-container .inside{padding-bottom:10px;}.menu{padding-top:1em;}#menu-to-edit{padding:1em 0;}.menu ul{width:100%;}.menu li{margin-bottom:0;position:relative;}.menu-item-bar{clear:both;line-height:1.5em;position:relative;margin:13px 0 0 0;}.menu-item-handle{border:1px solid #dfdfdf;position:relative;padding-left:10px;height:auto;width:400px;line-height:35px;text-shadow:0 1px 0 #FFF;overflow:hidden;word-wrap:break-word;}#menu-to-edit .menu-item-invalid .menu-item-handle{background-color:#f6c9cc;background-image:-ms-linear-gradient(bottom,#f6c9cc,#fdf8ff);background-image:-moz-linear-gradient(bottom,#f6c9cc,#fdf8ff);background-image:-o-linear-gradient(bottom,#f6c9cc,#fdf8ff);background-image:-webkit-gradient(linear,left bottom,left top,from(#f6c9cc),to(#fdf8ff));background-image:-webkit-linear-gradient(bottom,#f6c9cc,#fdf8ff);background-image:linear-gradient(bottom,#f6c9cc,#fdf8ff);}.menu-item-edit-active .menu-item-handle{-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom-left-radius:0;}.no-js .menu-item-edit-active .item-edit{display:none;}.js .menu-item-handle{cursor:move;}.menu li.deleting .menu-item-handle{background-image:none;text-shadow:0;}.menu-item-handle .item-title{font-size:12px;font-weight:bold;padding:7px 0;line-height:20px;display:block;margin-right:13em;}li.menu-item.ui-sortable-helper dl{margin-top:0;}li.menu-item.ui-sortable-helper .menu-item-transport dl{margin-top:13px;}.menu .sortable-placeholder{height:35px;width:410px;margin-top:13px;}.menu-item-depth-0{margin-left:0;}.menu-item-depth-1{margin-left:30px;}.menu-item-depth-2{margin-left:60px;}.menu-item-depth-3{margin-left:90px;}.menu-item-depth-4{margin-left:120px;}.menu-item-depth-5{margin-left:150px;}.menu-item-depth-6{margin-left:180px;}.menu-item-depth-7{margin-left:210px;}.menu-item-depth-8{margin-left:240px;}.menu-item-depth-9{margin-left:270px;}.menu-item-depth-10{margin-left:300px;}.menu-item-depth-11{margin-left:330px;}.menu-item-depth-0 .menu-item-transport{margin-left:0;}.menu-item-depth-1 .menu-item-transport{margin-left:-30px;}.menu-item-depth-2 .menu-item-transport{margin-left:-60px;}.menu-item-depth-3 .menu-item-transport{margin-left:-90px;}.menu-item-depth-4 .menu-item-transport{margin-left:-120px;}.menu-item-depth-5 .menu-item-transport{margin-left:-150px;}.menu-item-depth-6 .menu-item-transport{margin-left:-180px;}.menu-item-depth-7 .menu-item-transport{margin-left:-210px;}.menu-item-depth-8 .menu-item-transport{margin-left:-240px;}.menu-item-depth-9 .menu-item-transport{margin-left:-270px;}.menu-item-depth-10 .menu-item-transport{margin-left:-300px;}.menu-item-depth-11 .menu-item-transport{margin-left:-330px;}body.menu-max-depth-0{min-width:950px!important;}body.menu-max-depth-1{min-width:980px!important;}body.menu-max-depth-2{min-width:1010px!important;}body.menu-max-depth-3{min-width:1040px!important;}body.menu-max-depth-4{min-width:1070px!important;}body.menu-max-depth-5{min-width:1100px!important;}body.menu-max-depth-6{min-width:1130px!important;}body.menu-max-depth-7{min-width:1160px!important;}body.menu-max-depth-8{min-width:1190px!important;}body.menu-max-depth-9{min-width:1220px!important;}body.menu-max-depth-10{min-width:1250px!important;}body.menu-max-depth-11{min-width:1280px!important;}.item-type{font-size:12px;padding-right:10px;}.item-controls{font-size:12px;position:absolute;right:20px;top:-1px;}.item-controls a{text-decoration:none;}.item-controls a:hover{cursor:pointer;}.item-controls .item-order{padding-right:10px;}.nav-menus-php .item-edit{position:absolute;right:-20px;top:0;display:block;width:30px;height:36px;overflow:hidden;text-indent:-999em;border-bottom:1px solid;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;}.menu-instructions-inactive{display:none;}.menu-item-settings{display:block;width:400px;padding:10px 0 10px 10px;border:solid;border-width:0 1px 1px 1px;-webkit-border-bottom-right-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;border-bottom-right-radius:3px;}.menu-item-edit-active .menu-item-settings{display:block;}.menu-item-edit-inactive .menu-item-settings{display:none;}.add-menu-item-pagelinks{margin:.5em auto;text-align:center;}.link-to-original{display:block;margin:0 0 10px;padding:3px 5px 5px;font-size:12px;font-style:italic;}.link-to-original a{padding-left:4px;font-style:normal;}.hidden-field{display:none;}.menu-item-settings .description-thin,.menu-item-settings .description-wide{margin-right:10px;float:left;}.description-thin{width:190px;height:40px;}.description-wide{width:390px;}.menu-item-actions{padding-top:15px;}#cancel-save{cursor:pointer;}.nav-menus-php .major-publishing-actions{clear:both;padding:3px 0 5px;}.nav-menus-php .major-publishing-actions .publishing-action{text-align:right;float:right;line-height:23px;margin:5px 0 1px;}.nav-menus-php .major-publishing-actions .delete-action{vertical-align:middle;text-align:left;float:left;padding-right:15px;margin-top:5px;}.menu-name-label span,.auto-add-pages label{font-size:12px;font-style:normal;}.menu-name-label{margin-right:15px;}.auto-add-pages input{margin-top:0;}.auto-add-pages{margin-top:4px;float:left;}.nav-menus-php .submitbox .submitcancel{border-bottom:1px solid;padding:1px 2px;text-decoration:none;}.nav-menus-php .major-publishing-actions .form-invalid{padding-left:4px;margin-left:-4px;border:0 none;}#menu-item-name-wrap:after,#menu-item-url-wrap:after,#menu-name-label:after,#menu-settings-column .inside:after,#nav-menus-frame:after,.nav-menus-php #post-body-content:after,.nav-menus-php .button-controls:after,.nav-menus-php .major-publishing-actions:after,.nav-menus-php .menu-item-settings:after{clear:both;content:".";display:block;height:0;visibility:hidden;}#nav-menus-frame,.button-controls,#menu-item-url-wrap,#menu-item-name-wrap{display:block;}div.star-holder{position:relative;height:19px;width:100px;font-size:19px;}div.action-links{font-weight:normal;margin:6px 0 0;}div.star{height:100%;position:absolute;top:0;left:0;background-color:transparent;letter-spacing:1ex;border:none;}.star1{width:20%;}.star2{width:40%;}.star3{width:60%;}.star4{width:80%;}.star5{width:100%;}.star img,div.star a,div.star a:hover,div.star a:visited{display:block;position:absolute;right:0;border:none;text-decoration:none;}div.star img{width:19px;height:19px;}#plugin-information-header{margin:0;padding:0 5px;font-weight:bold;position:relative;border-bottom-width:1px;border-bottom-style:solid;height:2.5em;}#plugin-information ul#sidemenu{font-weight:normal;margin:0 5px;position:absolute;left:0;bottom:-1px;}#plugin-information p.action-button{width:100%;padding-bottom:0;margin-bottom:0;margin-top:10px;-webkit-border-top-left-radius:3px;-webkit-border-bottom-left-radius:3px;border-top-left-radius:3px;border-bottom-left-radius:3px;}#plugin-information .action-button a{text-align:center;font-weight:bold;text-decoration:none;display:block;line-height:2em;}#plugin-information h2{clear:none!important;margin-right:200px;}#plugin-information .fyi{margin:0 10px 50px;width:210px;}#plugin-information .fyi h2{font-size:.9em;margin-bottom:0;margin-right:0;}#plugin-information .fyi h2.mainheader{padding:5px;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;}#plugin-information .fyi ul{padding:10px 5px 10px 7px;margin:0;list-style:none;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;}#plugin-information .fyi li{margin-right:0;}#plugin-information #section-holder{padding:10px;}#plugin-information .section ul,#plugin-information .section ol{margin-left:16px;list-style-type:square;list-style-image:none;}#plugin-information #section-screenshots li img{vertical-align:text-top;}#plugin-information #section-screenshots li p{font-style:italic;padding-left:20px;padding-bottom:2em;}#plugin-information .updated,#plugin-information pre{margin-right:215px;}#plugin-information pre{padding:7px;overflow:auto;}body.press-this{color:#333;margin:0;padding:0;min-width:675px;min-height:400px;}img{border:none;}.press-this #wphead{height:32px;margin-right:5px;margin-bottom:5px;}.press-this #header-logo{float:left;margin:7px 7px 0;-webkit-user-select:none;-moz-user-select:none;user-select:none;}.press-this #wphead h1{font-weight:normal;font-size:16px;line-height:32px;margin:0;float:left;}.press-this #wphead h1 a{text-decoration:none;}.press-this #wphead h1 a:hover{text-decoration:underline;}.press-this-sidebar{float:right;width:200px;padding-top:10px;}.press-this #title{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;}.press-this .tagchecklist span a{background:transparent url(../images/xit.gif) no-repeat 0 0;}.press-this #titlediv{margin:0;}.press-this .wp-media-buttons{cursor:default;padding:8px 8px 0;}.press-this .howto{margin-top:2px;margin-bottom:3px;font-size:12px;font-style:italic;display:block;}.press-this #poststuff{margin:0 10px 10px;}#poststuff #editor-toolbar{height:30px;}div.zerosize{border:0 none;height:0;margin:0;overflow:hidden;padding:0;width:0;}.posting{margin-right:212px;position:relative;}.press-this .inner-sidebar{width:200px;}.press-this .inner-sidebar .sleeve{padding-top:5px;}.press-this #submitdiv p{margin:0;padding:6px;}.press-this #submitdiv #publishing-actions{border-bottom:1px solid #dfdfdf;}.press-this #publish{float:right;}.press-this #poststuff h2,.press-this #poststuff h3{font-size:14px;line-height:1;}.press-this #tagsdiv-post_tag h3,.press-this #categorydiv h3{cursor:pointer;}.press-this #submitdiv h3{cursor:default;}h3.tb{text-shadow:0 1px 0 #fff;font-weight:bold;font-size:12px;margin-left:5px;}#TB_window{border:1px solid #333;}.press-this .postbox,.press-this .stuffbox{margin-bottom:10px;min-width:0;}.postbox:hover .handlediv,.stuffbox:hover .handlediv{background:transparent url(../images/arrows.png) no-repeat 6px 7px;}.press-this #submitdiv:hover .handlediv{background:none;}.tbtitle{font-size:1.7em;outline:none;padding:3px 4px;border-color:#dfdfdf;}.press-this .actions{float:right;margin:-19px 0 0;}.press-this #extra-fields .actions{margin:-25px -7px 0 0;}.press-this .actions li{float:left;list-style:none;margin-right:10px;}#extra-fields .button{margin-right:5px;}#photo_saving{margin:0 8px 8px;vertical-align:middle;}#img_container_container{overflow:auto;}#extra-fields{margin-top:10px;position:relative;}#extra-fields h2{margin:12px;}#waiting{margin-top:10px;}#extra-fields .postbox{margin-bottom:5px;}#extra-fields .titlewrap{padding:0;overflow:auto;height:100px;}#img_container a{display:block;float:left;overflow:hidden;vertical-align:center;}#img_container img,#img_container a{width:68px;height:68px;}#img_container img{border:none;background-color:#f4f4f4;cursor:pointer;}#img_container a,#img_container a:link,#img_container a:visited{border:1px solid #ccc;display:block;position:relative;}#img_container a:hover,#img_container a:active{border-color:#000;z-index:1000;border-width:2px;margin:-1px;}#embed-code{width:100%;height:98px;}.press-this .categorydiv div.tabs-panel{height:100px;}.press-this .tagsdiv .newtag{width:130px;}.press-this #content{margin:5px 0;padding:0 5px;border:0 none;height:357px;font-family:Consolas,Monaco,monospace;font-size:13px;line-height:19px;background:transparent;}#saving{display:inline;vertical-align:middle;}#TB_ajaxContent #options{position:absolute;top:20px;right:25px;padding:5px;}#TB_ajaxContent h3{margin-bottom:.25em;}.error a{text-decoration:underline;}.updated a{text-decoration:none;padding-bottom:2px;}.taghint{color:#aaa;margin:-17px 0 0 7px;visibility:hidden;}input.newtag ~ div.taghint{visibility:visible;}input.newtag:focus ~ div.taghint{visibility:hidden;}#mce_fullscreen_container{background:#fff;}#photo-add-url-div input[type="text"]{width:300px;}.alignleft h3{margin:0;}h3 span{font-weight:normal;}#template textarea{font-family:Consolas,Monaco,monospace;font-size:12px;width:97%;background:#f9f9f9;outline:none;}#template p{width:97%;}#templateside{float:right;width:190px;word-wrap:break-word;}#templateside h3,#postcustomstuff p.submit{margin:0;}#templateside h4{margin:1em 0 0;}#templateside ol,#templateside ul{margin:.5em;padding:0;}#templateside li{margin:4px 0;}#templateside ul li a span.highlight{display:block;}.nonessential{font-size:11px;font-style:italic;padding-left:12px;}.highlight{padding:3px 3px 3px 12px;margin-left:-12px;font-weight:bold;border:0 none;}#documentation{margin-top:10px;}#documentation label{line-height:22px;vertical-align:top;font-weight:bold;}.fileedit-sub{padding:10px 0 8px;line-height:180%;}.theme-listing .theme-item{display:inline-block;width:200px;border:thin solid #ccc;vertical-align:top;}.theme-listing .theme-item h3{text-align:center;font-size:14px;font-style:italic;margin:0;padding:0;}.theme-listing .theme-item img{max-width:150px;max-height:150px;}.theme-listing .theme-item-info span,.theme-listing .theme-item:hover .theme-item-info span.dots{display:none;}.theme-listing .theme-item:hover .theme-item-info span{display:inline;}.theme-listing .theme-item-info span.action-links{font-weight:bold;text-align:center;}.theme-listing br.line{border-bottom-width:1px;border-bottom-style:solid;margin-bottom:3px;}#theme-information .available-theme,.available-theme{padding:20px 15px;}#theme-information .available-theme{overflow:visible;width:440px;}#theme-information .theme-preview-img{float:left;margin:5px 25px 10px 15px;width:300px;}#theme-information .action-button{border-top-width:1px;border-top-style:solid;margin:10px 5px 0;}#theme-information .action-button #cancel,#theme-information .action-button #install{margin:10px 5px;}#theme-information .action-button #cancel{float:left;}#theme-information .action-button #install{float:right;}#theme-information .available-theme h3{margin:1em 0;}body#theme-information{height:auto;}.feature-filter{padding:8px 12px 0;}.feature-filter .feature-group{float:left;margin:5px 10px 10px;}.feature-filter .feature-group li{display:inline;float:left;list-style-type:none;padding-right:25px;min-width:150px;}.feature-container{width:100%;overflow:auto;margin-bottom:10px;}div.widget-liquid-left{float:left;clear:left;width:100%;margin-right:-325px;}div#widgets-left{margin-left:5px;margin-right:325px;}div#widgets-right{width:285px;margin:0 auto;}div.widget-liquid-right{float:right;clear:right;width:300px;}.widget-liquid-right .widget,.inactive-sidebar .widget,.widget-liquid-right .sidebar-description{width:250px;margin:0 auto 20px;overflow:hidden;}.widget-liquid-right .sidebar-description{margin-bottom:10px;}.inactive-sidebar .widget{margin:0 10px 20px;float:left;}div.sidebar-name h3{font-weight:normal;font-size:15px;margin:0;padding:8px 10px;overflow:hidden;white-space:nowrap;}div.sidebar-name{cursor:pointer;font-size:13px;border-width:1px;border-style:solid;-webkit-border-top-right-radius:3px;-webkit-border-top-left-radius:3px;border-top-right-radius:3px;border-top-left-radius:3px;}.js .closed .sidebar-name{-webkit-border-bottom-right-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;}.widget-liquid-right .widgets-sortables,#widgets-left .widget-holder{border-width:0 1px 1px;border-style:none solid solid;-webkit-border-bottom-right-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px;}.js .closed .widgets-sortables,.js .closed .widget-holder{display:none;}.widget-liquid-right .widgets-sortables{padding:15px 0 0;}#available-widgets .widget-holder{padding:7px 5px 0;}#available-widgets .widget{-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;}.inactive-sidebar{padding:5px 5px 0;}#widget-list .widget{width:250px;margin:0 10px 15px;border:0 none;background:transparent;float:left;}#widget-list .widget-description{padding:5px 8px;}.widget-placeholder{border-width:1px;border-style:dashed;margin:0 auto 20px;height:26px;width:250px;}.inactive-sidebar .widget-placeholder{margin:0 10px 20px;float:left;}div.widgets-holder-wrap{padding:0;margin:10px 0 20px;}#widgets-left #available-widgets{background-color:transparent;border:0 none;}ul#widget-list{list-style:none;margin:0;padding:0;min-height:100px;}.widget .widget-top{margin-bottom:-1px;font-size:12px;font-weight:bold;height:26px;overflow:hidden;}.widget-top .widget-title{padding:7px 9px;}.widget-top .widget-title-action{float:right;}a.widget-action{display:block;width:24px;height:26px;}#available-widgets a.widget-action{display:none;}.widget-top a.widget-action{background:transparent url(../images/arrows.png) no-repeat 4px 6px;}.widget-top a.widget-action:hover{background:transparent url(../images/arrows-dark.png) no-repeat 4px 6px;}.widget .widget-inside,.widget .widget-description{padding:12px 12px 10px;font-size:12px;line-height:16px;}.widget-inside,.widget-description{display:none;}#available-widgets .widget-description{display:block;}.widget .widget-inside p{margin:0 0 1em;padding:0;}.widget-title h4{margin:0;line-height:1;overflow:hidden;white-space:nowrap;}.widgets-sortables{min-height:90px;}.widget-control-actions{margin-top:8px;}.widget-control-actions a{text-decoration:none;}.widget-control-actions a:hover{text-decoration:underline;}.widget-control-actions .ajax-feedback{padding-bottom:3px;}.widget-control-actions div.alignleft{margin-top:6px;}div#sidebar-info{padding:0 1em;margin-bottom:1em;font-size:12px;}.widget-title a,.widget-title a:hover{text-decoration:none;border-bottom:none;}.widget-control-edit{display:block;font-size:12px;font-weight:normal;line-height:26px;padding:0 8px 0 0;}a.widget-control-edit{text-decoration:none;}.widget-control-edit .add,.widget-control-edit .edit{display:none;}#available-widgets .widget-control-edit .add,#widgets-right .widget-control-edit .edit,.inactive-sidebar .widget-control-edit .edit{display:inline;}.editwidget{margin:0 auto 15px;}.editwidget .widget-inside{display:block;padding:10px;}.inactive p.description{margin:5px 15px 10px;}#available-widgets p.description{margin:0 12px 12px;}.widget-position{margin-top:8px;}.inactive{padding-top:2px;}.sidebar-name-arrow{float:right;height:29px;width:26px;}.widget-title .in-widget-title{font-size:12px;white-space:nowrap;}#removing-widget{display:none;font-weight:normal;padding-left:15px;font-size:12px;line-height:1;}.widget-control-noform,#access-off,.widgets_access .widget-action,.widgets_access .sidebar-name-arrow,.widgets_access #access-on,.widgets_access .widget-holder .description{display:none;}.widgets_access .widget-holder,.widgets_access #widget-list{padding-top:10px;}.widgets_access #access-off{display:inline;}.widgets_access #wpbody-content .widget-title-action,.widgets_access #wpbody-content .widget-control-edit,.widgets_access .closed .widgets-sortables,.widgets_access .closed .widget-holder{display:block;}.widgets_access .closed .sidebar-name{-webkit-border-bottom-right-radius:0;-webkit-border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom-left-radius:0;}.widgets_access .sidebar-name,.widgets_access .widget .widget-top{cursor:default;}@media only screen and(max-width:768px){#col-left{width:100%;}#col-right{width:100%;}}@media only screen and(min-width:769px){#col-left{width:35%;}#col-right{width:65%;}}@media only screen and(max-width:860px){#col-left{width:35%;}#col-right{width:65%;}}@media only screen and(min-width:980px){#col-left{width:35%;}#col-right{width:65%;}}@media only screen and(max-width:768px){#col-left{width:100%;}#col-right{width:100%;}.form-field input,.form-field textarea{width:99%;}.form-wrap .form-field{padding:0;}#profile-page .form-table textarea{max-width:400px;width:auto;}}
\ No newline at end of file
index 82a0c68f2c2bd01be0770b0d383b0493f6d1880b..9051f836273ada6459136e83a0e7b0196a54affb 100644 (file)
@@ -13,8 +13,8 @@ TABLE OF CONTENTS:
  4.0 - Notifications
  5.0 - TinyMCE
  6.0 - Admin Header
  4.0 - Notifications
  5.0 - TinyMCE
  6.0 - Admin Header
-       6.1 - Favorites Menu
-       6.2 - Screen Options Tabs
+       6.1 - Screen Options Tabs
+       6.2 - Help Menu
  7.0 - Main Navigation
  8.0 - Layout Blocks
  9.0 - Dashboard
  7.0 - Main Navigation
  8.0 - Layout Blocks
  9.0 - Dashboard
@@ -26,7 +26,7 @@ TABLE OF CONTENTS:
 12.0 - Categories
 13.0 - Tags
 14.0 - Media Screen
 12.0 - Categories
 13.0 - Tags
 14.0 - Media Screen
-       14.1 - Media Uploader
+       14.1 - Media Library
        14.2 - Image Editor
 15.0 - Comments Screen
 16.0 - Themes
        14.2 - Image Editor
 15.0 - Comments Screen
 16.0 - Themes
@@ -38,4672 +38,7790 @@ TABLE OF CONTENTS:
 19.0 - Tools
 20.0 - Settings
 21.0 - Admin Footer
 19.0 - Tools
 20.0 - Settings
 21.0 - Admin Footer
-22.0 - Misc
-23.0 - Dead
+22.0 - About Pages
+23.0 - Misc
 
 
+------------------------------------------------------------------------*/
 
 
-------------------------------------------------------------------------------*/
-
+/* 2 column liquid layout */
+#wpwrap {
+       height: auto;
+       min-height: 100%;
+       width: 100%;
+       position: relative;
+}
 
 
+#wpcontent {
+       height: 100%;
+}
 
 
+#wpcontent,
+#footer {
+       margin-left: 165px;
+}
 
 
-/*------------------------------------------------------------------------------
-  1.0 - Text Styles
-------------------------------------------------------------------------------*/
+.folded #wpcontent,
+.folded #footer {
+       margin-left: 52px;
+}
 
 
-p,
-ul,
-ol,
-blockquote,
-input,
-select {
-       font-size: 12px;
+#wpbody-content {
+       padding-bottom: 65px;
+       float: left;
+       width: 100%;
 }
 
 }
 
-ol {
-       list-style-type: decimal;
-       margin-left: 2em;
+#adminmenuback,
+#adminmenuwrap,
+#adminmenu,
+#adminmenu .wp-submenu,
+#adminmenu .wp-submenu-wrap,
+.folded #adminmenu .wp-has-current-submenu .wp-submenu {
+       width: 145px;
 }
 
 }
 
-.code, code {
-       font-family: Consolas, Monaco, monospace;
+#adminmenuback {
+       position: absolute;
+       top: 0;
+       bottom: 0;
+       z-index: -1;
 }
 
 }
 
-kbd, code {
-       padding: 1px 3px;
-       margin: 0 1px;
-       font-size: 11px;
+#adminmenu {
+       clear: left;
+       margin: 0;
+       padding: 0;
+       list-style: none;
 }
 
 }
 
-.quicktags, .search {
-       font: 12px Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
+.folded #adminmenuback,
+.folded #adminmenuwrap,
+.folded #adminmenu,
+.folded #adminmenu li.menu-top {
+       width: 32px;
 }
 
 }
 
-.icon32 {
-       float: left;
-       height: 34px;
-       margin: 7px 8px 0 0;
-       width: 36px;
+/* inner 2 column liquid layout */
+.inner-sidebar {
+       float: right;
+       clear: right;
+       display: none;
+       width: 281px;
+       position: relative;
 }
 
 }
 
-.key-labels label {
-       line-height: 24px;
+.columns-2 .inner-sidebar {
+       margin-right: auto;
+       width: 286px;
+       display: block;
 }
 
 }
 
-.pre {
-       /* http://www.longren.org/2006/09/27/wrapping-text-inside-pre-tags/ */
-       white-space: pre-wrap; /* css-3 */
-       white-space: -moz-pre-wrap !important; /* Mozilla, since 1999 */
-       white-space: -pre-wrap; /* Opera 4-6 */
-       white-space: -o-pre-wrap; /* Opera 7 */
-       word-wrap: break-word; /* Internet Explorer 5.5+ */
+.inner-sidebar #side-sortables,
+.columns-2 .inner-sidebar #side-sortables {
+       min-height: 300px;
+       width: 280px;
+       padding: 0;
 }
 
 }
 
-.howto {
-       font-style: italic;
+.has-right-sidebar .inner-sidebar {
        display: block;
        display: block;
-       font-family: sans-serif;
 }
 
 }
 
-p.install-help {
-       margin: 8px 0;
-       font-style: italic;
+.has-right-sidebar #post-body {
+       float: left;
+       clear: left;
+       width: 100%;
+       margin-right: -2000px;
 }
 
 }
 
+.has-right-sidebar #post-body-content {
+       margin-right: 300px;
+}
 
 
-/*------------------------------------------------------------------------------
-  2.0 - Forms
-------------------------------------------------------------------------------*/
+#post-body-content #side-sortables.empty-container {
+       border: 0 none;
+       height: 0;
+}
 
 
-textarea,
-input[type="text"],
-input[type="password"],
-input[type="file"],
-input[type="button"],
-input[type="submit"],
-input[type="reset"],
-select {
-       border-width: 1px;
-       border-style: solid;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;
+/* 2 columns main area */
+
+#col-container,
+#col-left,
+#col-right {
+       overflow: hidden;
+       padding: 0;
+       margin: 0;
 }
 
 }
 
-select option {
-       padding: 2px;
+#col-left {
+       width: 35%;
 }
 
 }
 
-.submit {
-       padding: 1.5em 0;
-       margin: 5px 0;
-       -moz-border-radius: 0 0 3px 3px;
-       -webkit-border-bottom-left-radius: 3px;
-       -webkit-border-bottom-right-radius: 3px;
-       -khtml-border-bottom-left-radius: 3px;
-       -khtml-border-bottom-right-radius: 3px;
-       border-bottom-left-radius: 3px;
-       border-bottom-right-radius: 3px;
+#col-right {
+       float: right;
+       clear: right;
+       width: 65%;
 }
 
 }
 
-form p.submit a.cancel:hover {
-       text-decoration: none;
+.col-wrap {
+       padding: 0 7px;
 }
 
 }
 
-.submit input,
-.button,
-input.button,
-.button-primary,
-input.button-primary,
-.button-secondary,
-input.button-secondary,
-.button-highlighted,
-input.button-highlighted,
-#postcustomstuff .submit input {
-       text-decoration: none;
-       font-size: 12px !important;
-       line-height: 13px;
-       padding: 3px 8px;
-       cursor: pointer;
-       border-width: 1px;
-       border-style: solid;
-       -moz-border-radius: 11px;
-       -khtml-border-radius: 11px;
-       -webkit-border-radius: 11px;
-       border-radius: 11px;
-       -moz-box-sizing: content-box;
-       -webkit-box-sizing: content-box;
-       -khtml-box-sizing: content-box;
-       box-sizing: content-box;
+/* utility classes */
+.alignleft {
+       float: left;
 }
 
 }
 
-#minor-publishing-actions input,
-#major-publishing-actions input,
-#minor-publishing-actions .preview {
-       min-width: 80px;
-       text-align: center;
+.alignright {
+       float: right;
 }
 
 }
 
-textarea.all-options, input.all-options {
-       width: 250px;
+.textleft {
+       text-align: left;
 }
 
 }
 
-input.large-text,
-textarea.large-text {
-       width: 99%;
+.textright {
+       text-align: right;
 }
 
 }
 
-input.regular-text,
-#adduser .form-field input {
-       width: 25em;
+.clear {
+       clear: both;
 }
 
 }
 
-input.small-text {
-       width: 50px;
+/* Hide visually but not from screen readers */
+.screen-reader-text,
+.screen-reader-text span {
+       position: absolute;
+       left: -1000em;
+       height: 1px;
+       width: 1px;
+       overflow: hidden;
 }
 
 }
 
-#doaction,
-#doaction2,
-#post-query-submit {
-       margin-right: 8px;
+.hidden,
+.js .closed .inside,
+.js .hide-if-js,
+.no-js .hide-if-no-js {
+       display: none;
 }
 
 }
 
-.tablenav select[name="action"],
-.tablenav select[name="action2"] {
-       width: 130px;
+/* include margin and padding in the width calculation of input and textarea */
+input[type="text"],
+input[type="password"],
+textarea {
+       -moz-box-sizing: border-box;
+       -webkit-box-sizing: border-box;
+       -ms-box-sizing: border-box; /* ie8 only */
+       box-sizing: border-box;
 }
 
 }
 
-.tablenav select[name="m"] {
-       width: 155px;
+input[type="checkbox"],
+input[type="radio"] {
+       vertical-align: text-bottom;
 }
 
 }
 
-.tablenav select#cat {
-       width: 170px;
+/* general */
+html,
+body {
+       height: 100%;
+       margin: 0;
+       padding: 0;
 }
 
 }
 
-#wpcontent select {
-       padding: 2px;
-       height: 2em;
+body {
+       font-family: sans-serif;
        font-size: 12px;
        font-size: 12px;
+       line-height: 1.4em;
+       min-width: 600px;
 }
 
 }
 
-#wpcontent option {
-       padding: 2px;
+body.iframe {
+       min-width: 0;
 }
 
 }
 
-#timezone_string option {
-       margin-left: 1em;
+body.login {
+       background: #fbfbfb;
+       min-width: 0;
 }
 
 }
 
-label,
-#your-profile label + a {
-       vertical-align: middle;
+iframe,
+img {
+       border: 0;
 }
 
 }
 
-#misc-publishing-actions label {
-       vertical-align: baseline;
+td,
+textarea,
+input,
+select {
+       font-family: inherit;
+       font-size: inherit;
+       font-weight: inherit;
 }
 
 }
 
-#pass-strength-result {
-       border-style: solid;
-       border-width: 1px;
-       float: left;
-       margin: 13px 5px 5px 1px;
-       padding: 3px 5px;
-       text-align: center;
-       width: 200px;
-       display: none;
+td,
+textarea {
+       line-height: inherit;
 }
 }
-.indicator-hint {
-       padding-top: 8px;
+
+input,
+select {
+       line-height: 15px;
 }
 
 }
 
-p.search-box {
-       float: right;
-       margin: 0;
+a,
+input,
+select {
+       outline: 0;
 }
 
 }
 
+blockquote,
+q {
+       quotes: none;
+}
 
 
-/*------------------------------------------------------------------------------
-  3.0 - Actions
-------------------------------------------------------------------------------*/
+blockquote:before,
+blockquote:after,
+q:before,
+q:after {
+       content: '';
+       content: none;
+}
 
 
-#major-publishing-actions {
-       padding: 10px 10px 8px;
-       clear: both;
-       border-top: none;
+p {
+       margin: 1em 0;
 }
 
 }
 
-#delete-action {
-       line-height: 25px;
-       vertical-align: middle;
-       text-align: left;
-       float: left;
+blockquote {
+       margin: 1em;
 }
 
 }
 
-#publishing-action {
-       text-align: right;
-       float: right;
-       line-height: 23px;
+label {
+       cursor: pointer;
 }
 
 }
 
-#post-body #minor-publishing {
-       padding-bottom: 10px;
+li,
+dd {
+       margin-bottom: 6px;
 }
 
 }
 
-#post-body #misc-publishing-actions {
-       padding: 0;
+textarea,
+input,
+select {
+       margin: 1px;
+       padding: 3px;
 }
 
 }
 
-#post-body .misc-pub-section {
-       border-right-width: 1px;
-       border-right-style: solid;
-       border-bottom: 0 none;
-       min-height: 30px;
-       float: left;
-       max-width: 32%;
+h1,
+h2,
+h3,
+h4,
+h5,
+h6 {
+       display: block;
+       font-weight: bold;
 }
 
 }
 
-#post-body .misc-pub-section-last {
-       border-right: 0;
+h1 {
+       font-size: 2em;
+       margin: .67em 0;
 }
 
 }
 
-#misc-publishing-actions {
-       padding: 6px 0 16px 0;
+h2 {
+       font-size: 1.5em;
+       margin: .83em 0;
 }
 
 }
 
-.misc-pub-section {
-       padding: 6px 10px;
-       border-width: 1px 0;
-       border-style: solid;
+h3 {
+       font-size: 1.17em;
+       margin: 1em 0;
 }
 
 }
 
-.misc-pub-section:first-child {
-       border-top-width: 0;
+h4 {
+       font-size: 1em;
+       margin: 1.33em 0;
 }
 }
-.misc-pub-section-last {
-       border-bottom-width: 0;
+
+h5 {
+       font-size: 0.83em;
+       margin: 1.67em 0;
 }
 
 }
 
-#minor-publishing-actions {
-       padding: 10px 10px 2px 8px;
-       text-align: right;
+h6 {
+       font-size: 0.67em;
+       margin: 2.33em 0;
 }
 
 }
 
-#minor-publishing {
-       border-bottom-width: 1px;
-       border-bottom-style: solid;
-       -webkit-box-shadow: 0 1px 0 #fff;
-       -moz-box-shadow: 0 1px 0 #fff;
-       box-shadow: 0 1px 0 #fff;
+ul,
+ol {
+       padding: 0;
 }
 
 }
 
-#save-post {
-       float: left;
+ul {
+       list-style: none;
 }
 
 }
 
-#minor-publishing .ajax-loading {
-       padding: 3px 0 0 4px;
-       float: left;
+ol {
+       list-style-type: decimal;
+       margin-left: 2em;
 }
 
 }
 
-.preview {
-       float: right;
+ul.ul-disc {
+       list-style: disc outside;
 }
 
 }
 
+ul.ul-square {
+       list-style: square outside;
+}
 
 
+ol.ol-decimal {
+       list-style: decimal outside;
+}
 
 
-#sticky-span {
-       margin-left: 18px;
+ul.ul-disc,
+ul.ul-square,
+ol.ol-decimal {
+       margin-left: 1.8em;
 }
 
 }
 
-#post-status-display,
-#post-visibility-display {
-       font-weight: bold;
+ul.ul-disc > li,
+ul.ul-square > li,
+ol.ol-decimal > li {
+       margin: 0 0 0.5em;
 }
 
 }
 
-.side-info {
-       margin: 0;
-       padding: 4px;
+.code,
+code {
+       font-family: Consolas, Monaco, monospace;
+}
+
+kbd,
+code {
+       padding: 1px 3px;
+       margin: 0 1px;
        font-size: 11px;
 }
 
        font-size: 11px;
 }
 
-.side-info h5 {
-       padding-bottom: 7px;
-       font-size: 14px;
-       margin: 12px 2px 5px;
-       border-bottom-width: 1px;
-       border-bottom-style: solid;
+.subsubsub {
+       list-style: none;
+       margin: 8px 0 5px;
+       padding: 0;
+       white-space: nowrap;
+       font-size: 12px;
+       float: left;
 }
 
 }
 
-.side-info ul {
-       margin: 0;
-       padding-left: 18px;
-       list-style: square;
+.subsubsub a {
+       line-height: 2;
+       padding: .2em;
+       text-decoration: none;
 }
 
 }
 
-a.button,
-a.button-primary,
-a.button-secondary {
-       line-height: 15px;
-       padding: 3px 10px;
-       white-space: nowrap;
-       -webkit-border-radius: 10px;
+.subsubsub a .count,
+.subsubsub a.current .count {
+       color: #999;
+       font-weight: normal;
 }
 
 }
 
-.approve {
-       display: none;
+.subsubsub a.current {
+       font-weight: bold;
+       background: none;
+       border: none;
 }
 
 }
 
-.unapproved .approve,
-.spam .approve,
-.trash .approve {
+.subsubsub li {
        display: inline;
        display: inline;
+       margin: 0;
+       padding: 0;
 }
 
 }
 
-.unapproved .unapprove {
-       display: none;
+.widefat,
+div.updated,
+div.error,
+.wrap .add-new-h2,
+textarea,
+input[type="text"],
+input[type="password"],
+input[type="file"],
+input[type="button"],
+input[type="submit"],
+input[type="reset"],
+input[type="email"],
+input[type="number"],
+input[type="search"],
+input[type="tel"],
+input[type="url"],
+select,
+.tablenav .tablenav-pages a,
+.tablenav-pages span.current,
+#titlediv #title,
+.postbox,
+#postcustomstuff table,
+#postcustomstuff input,
+#postcustomstuff textarea,
+.imgedit-menu div,
+.plugin-update-tr .update-message,
+#poststuff .inside .the-tagcloud,
+.login form,
+#login_error,
+.login .message,
+#menu-management .menu-edit,
+.nav-menus-php .list-container,
+.menu-item-handle,
+.link-to-original,
+.nav-menus-php .major-publishing-actions .form-invalid,
+.press-this #message,
+#TB_window,
+.tbtitle,
+.highlight,
+.feature-filter,
+#widget-list .widget-top,
+.editwidget .widget-inside {
+       -webkit-border-radius: 3px;
+       border-radius: 3px;
+       border-width: 1px;
+       border-style: solid;
 }
 
 }
 
-td.action-links,
-th.action-links {
-       text-align: right;
+/* .widefat - main style for tables */
+.widefat {
+       border-spacing: 0;
+       width: 100%;
+       clear: both;
+       margin: 0;
 }
 
 }
 
-.describe .del-link {
-       padding-left: 5px;
+.widefat * {
+       word-wrap: break-word;
 }
 
 }
 
+.widefat a {
+       text-decoration: none;
+}
 
 
-/*------------------------------------------------------------------------------
-  4.0 - Notifications
-------------------------------------------------------------------------------*/
-
-#update-nag, .update-nag {
-       line-height: 19px;
-       padding: 5px 0;
-       font-size: 12px;
-       text-align: center;
-       margin: 0 15px;
-       border-width: 1px;
-       border-style: solid;
-       border-top-width: 0;
-       border-top-style: none;
-       -moz-border-radius: 0 0 3px 3px;
-       -webkit-border-bottom-right-radius: 3px;
+.widefat thead th:first-of-type {
+       -webkit-border-top-left-radius: 3px;
+       border-top-left-radius: 3px;
+}
+.widefat thead th:last-of-type {
+       -webkit-border-top-right-radius: 3px;
+       border-top-right-radius: 3px;
+}
+.widefat tfoot th:first-of-type {
        -webkit-border-bottom-left-radius: 3px;
        -webkit-border-bottom-left-radius: 3px;
-       -khtml-border-bottom-right-radius: 3px;
-       -khtml-border-bottom-left-radius: 3px;
-       border-bottom-right-radius: 3px;
        border-bottom-left-radius: 3px;
 }
        border-bottom-left-radius: 3px;
 }
-
-.plugins .plugin-update {
-       padding: 0;
+.widefat tfoot th:last-of-type {
+       -webkit-border-bottom-right-radius: 3px;
+       border-bottom-right-radius: 3px;
 }
 
 }
 
-.plugin-update .update-message {
-       margin: 0 10px 8px 31px;
-       font-weight: bold;
+.widefat td,
+.widefat th {
+       border-width: 1px 0;
+       border-style: solid;
+}
+.widefat tfoot th {
+       border-bottom: none;
 }
 
 }
 
-ul#dismissed-updates {
-       display: none;
+.widefat .no-items td {
+       border-bottom-width: 0;
 }
 }
-form.upgrade {
-       margin-top: 8px;
+
+.widefat td {
+       font-size: 12px;
+       padding: 4px 7px 2px;
+       vertical-align: top;
 }
 
 }
 
-form.upgrade .hint {
-       font-style: italic;
-       font-size: 85%;
-       margin: -0.5em 0 2em 0;
+.widefat td p,
+.widefat td ol,
+.widefat td ul {
+       font-size: 12px;
 }
 
 }
 
-.ajax-feedback {
-       visibility: hidden;
-       vertical-align: bottom;
+.widefat th {
+       padding: 7px 7px 8px;
+       text-align: left;
+       line-height: 1.3em;
+       font-size: 14px;
 }
 
 }
 
-#ajax-response.alignleft {
-       margin-left: 2em;
+.widefat th input {
+       margin: 0 0 0 8px;
+       padding: 0;
+       vertical-align: text-top;
 }
 
 }
 
+.widefat .check-column {
+       width: 2.2em;
+       padding: 11px 0 0;
+       vertical-align: top;
+}
 
 
-/*------------------------------------------------------------------------------
-  5.0 - TinyMCE
-------------------------------------------------------------------------------*/
+.widefat tbody th.check-column {
+       padding: 9px 0 22px;
+}
 
 
-#editorcontainer #content {
-       font-family: Consolas, Monaco, monospace;
-       padding: 6px;
-       line-height: 150%;
-       border: 0 none;
-       outline: none;
-       resize: vertical;
-       -moz-box-sizing: border-box;
-       -webkit-box-sizing: border-box;
-       -khtml-box-sizing: border-box;
-       box-sizing: border-box;
+.widefat .num,
+.column-comments,
+.column-links,
+.column-posts {
+       text-align: center;
 }
 
 }
 
-#editorcontainer,
-#quicktags {
-       border-style: solid;
-       border-width: 1px;
-       border-collapse: separate;
-       -moz-border-radius: 3px 3px 0 0;
-       -webkit-border-top-right-radius: 3px;
-       -webkit-border-top-left-radius: 3px;
-       -khtml-border-top-right-radius: 3px;
-       -khtml-border-top-left-radius: 3px;
-       border-top-right-radius: 3px;
-       border-top-left-radius: 3px;
+.widefat th#comments {
+       vertical-align: middle;
 }
 
 }
 
-#quicktags {
-       padding: 0;
-       margin-bottom: -3px;
-       border-bottom-width: 3px;
-       background-image: url("../images/ed-bg.gif");
-       background-position: left top;
-       background-repeat: repeat-x;
+.wrap {
+       margin: 4px 15px 0 0;
 }
 
 }
 
-#quicktags #ed_toolbar {
-       padding: 2px 4px 0;
+div.updated,
+div.error {
+       padding: 0 0.6em;
+       margin: 5px 15px 2px;
 }
 
 }
 
-#ed_toolbar input,
-#ed_reply_toolbar input {
-       margin: 3px 1px 4px;
-       line-height: 18px;
-       display: inline-block;
-       min-width: 26px;
-       padding: 2px 4px;
-       font-size: 12px;
+div.updated p,
+div.error p {
+       margin: 0.5em 0;
+       padding: 2px;
 }
 
 }
 
-#ed_reply_toolbar input {
-       margin: 1px 2px 1px 1px;
+.wrap div.updated,
+.wrap div.error,
+.media-upload-form div.error {
+       margin: 5px 0 15px;
 }
 
 }
 
-#quicktags #ed_link,
-#ed_reply_toolbar #ed_reply_link {
-       text-decoration: underline;
+.wrap h2,
+.subtitle {
+       font-weight: normal;
+       margin: 0;
+       text-shadow: #fff 0 1px 0;
 }
 
 }
 
-#quicktags #ed_del,
-#ed_reply_toolbar #ed_reply_del {
-       text-decoration: line-through;
+.wrap h2 {
+       font-size: 23px;
+       padding: 9px 15px 4px 0;
+       line-height: 29px;
 }
 
 }
 
-#quicktags #ed_em,
-#ed_reply_toolbar #ed_reply_em {
-       font-style: italic;
+.subtitle {
+       font-size: 14px;
+       padding-left: 25px;
 }
 
 }
 
-#wp_editbtns,
-#wp_gallerybtns {
-       padding: 2px;
-       position: absolute;
-       display: none;
-       z-index: 999998;
+.wrap .add-new-h2 {
+       font-family: sans-serif;
+       margin-left: 4px;
+       padding: 3px 8px;
+       position: relative;
+       top: -3px;
+       text-decoration: none;
+       font-size: 12px;
+       border: 0 none;
 }
 
 }
 
-#wp_editimgbtn,
-#wp_delimgbtn,
-#wp_editgallery,
-#wp_delgallery {
-       margin: 2px;
-       padding: 2px;
-       border-width: 1px;
-       border-style: solid;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;
+.wrap h2.long-header {
+       padding-right: 0;
 }
 
 }
 
-/* Distraction Free Writing mode
- * =Overlay Styles
+
+/* =CSS 3 transitions
 -------------------------------------------------------------- */
 -------------------------------------------------------------- */
-.fullscreen-overlay {
-       z-index: 149999;
-       display: none;
-       position: fixed;
-       top: 0;
-       bottom: 0;
-       left: 0;
-       right: 0;
-       filter: inherit;
-}
 
 
-.fullscreen-active .fullscreen-overlay,
-.fullscreen-active #wp-fullscreen-body {
-       display: block;
+.fade-1000,
+.fade-600,
+.fade-400,
+.fade-300 {
+       opacity: 0;
+       -moz-transition-property: opacity;
+       -webkit-transition-property: opacity;
+       -o-transition-property: opacity;
+       transition-property: opacity;
 }
 
 }
 
-.fullscreen-fader {
-       z-index: 200000;
+.fade-1000 {
+       -moz-transition-duration: 1s;
+       -webkit-transition-duration: 1s;
+       -o-transition-duration: 1s;
+       transition-duration: 1s;
 }
 
 }
 
-.fullscreen-active .fullscreen-fader {
-       display: none;
+.fade-600 {
+       -moz-transition-duration: 0.6s;
+       -webkit-transition-duration: 0.6s;
+       -o-transition-duration: 0.6s;
+       transition-duration: 0.6s;
 }
 
 }
 
-/* =Overlay Body
--------------------------------------------------------------- */
-#wp-fullscreen-body {
-       width: 100%;
-       z-index: 150005;
-       display: none;
-       position: absolute;
-       top: 0;
-       left: 0;
+.fade-400 {
+       -moz-transition-duration: 0.4s;
+       -webkit-transition-duration: 0.4s;
+       -o-transition-duration: 0.4s;
+       transition-duration: 0.4s;
 }
 
 }
 
-#wp-fullscreen-wrap {
-       margin: 0 auto 50px;
-       position: relative;
-       padding-top: 60px;
+.fade-300 {
+       -moz-transition-duration: 0.3s;
+       -webkit-transition-duration: 0.3s;
+       -o-transition-duration: 0.3s;
+       transition-duration: 0.3s;
 }
 
 }
 
-#wp-fullscreen-title {
-    font-size: 1.7em;
-    line-height: 100%;
-    outline: medium none;
-    padding: 6px 7px;
-    width: 100%;
-    margin-bottom: 30px;
+.fade-trigger {
+       opacity: 1;
 }
 
 }
 
-#wp-fullscreen-container {
-       padding: 4px 10px 50px;
-}
-
-#wp-fullscreen-title,
-#wp-fullscreen-container {
-       -moz-border-radius: 0;
-       -khtml-border-radius: 0;
-       -webkit-border-radius: 0;
-       border-radius: 0;
-       border: 1px dashed transparent;
-       background: transparent;
-       -moz-transition-property: border-color;
-       -moz-transition-duration: 0.6s;
-       -webkit-transition-property: border-color;
-       -webkit-transition-duration: 0.6s;
-       -o-transition-property: border-color;
-       -o-transition-duration: 0.6s;
-       transition-property: border-color;
-       transition-duration: 0.6s;
-}
 
 
+/*------------------------------------------------------------------------------
+  1.0 - Text Styles
+------------------------------------------------------------------------------*/
 
 
-#wp_mce_fullscreen {
-       width: 100%;
-       min-height: 300px;
-       border: 0;
-       background: transparent;
-       font-family: Consolas, Monaco, monospace;
-       line-height: 1.6em;
-       padding: 0;
-       overflow-y: hidden;
-       outline: none;
-       resize: none;
+div.sidebar-name h3,
+#menu-management .nav-tab,
+#dashboard_plugins h5,
+a.rsswidget,
+#dashboard_right_now td.b,
+#dashboard-widgets h4,
+.tool-box .title,
+#poststuff h3,
+.metabox-holder h3,
+.pressthis a,
+#your-profile legend,
+.inline-edit-row fieldset span.title,
+.inline-edit-row fieldset span.checkbox-title,
+.tablenav .displaying-num,
+.widefat th,
+.quicktags,
+.search {
+       font-family: Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
 }
 
 }
 
-#wp-fullscreen-tagline {
-       color: #BBBBBB;
-       font-size: 18px;
-       float: right;
-       padding-top: 5px;
+h2 .nav-tab,
+.wrap h2,
+.subtitle,
+.login form .input {
+       font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", sans-serif;
 }
 
 }
 
-/* =Top bar
--------------------------------------------------------------- */
-#fullscreen-topbar {
-       position: fixed;
-       top: 0;
-       left: 0;
-       z-index: 150050;
-       border-bottom-style: solid;
-    border-bottom-width: 1px;
-       min-width: 800px;
-       width: 100%;
-       height: 40px;
+.quicktags,
+.search {
+       font-size: 12px;
 }
 
 }
 
-#wp-fullscreen-toolbar {
-       padding: 6px 10px 0;
-       clear: both;
-       max-width: 1100px;
-       min-width: 820px;
-       margin: 0 auto;
+.icon32 {
+       float: left;
+       height: 34px;
+       margin: 7px 8px 0 0;
+       width: 36px;
 }
 
 }
 
-#wp-fullscreen-mode-bar,
-#wp-fullscreen-button-bar,
-#wp-fullscreen-close,
-#wp-fullscreen-count {
+.icon16 {
+       height: 18px;
+       width: 18px;
+       padding: 6px 6px;
+       margin: -6px 0 0 -8px;
        float: left;
 }
 
        float: left;
 }
 
-#wp-fullscreen-save {
-       float: right;
+.key-labels label {
+       line-height: 24px;
 }
 
 }
 
-#wp-fullscreen-save {
-       padding: 2px 2px 0 5px;
+.pre {
+       /* http://www.longren.org/2006/09/27/wrapping-text-inside-pre-tags/ */
+       white-space: pre-wrap; /* css-3 */
+       white-space: -moz-pre-wrap !important; /* Mozilla, since 1999 */
+       white-space: -pre-wrap; /* Opera 4-6 */
+       white-space: -o-pre-wrap; /* Opera 7 */
+       word-wrap: break-word; /* Internet Explorer 5.5+ */
 }
 
 }
 
-#wp-fullscreen-count,
-#wp-fullscreen-close {
-       padding-top: 5px;
+.howto {
+       font-style: italic;
+       display: block;
+       font-family: sans-serif;
 }
 
 }
 
-#wp-fullscreen-central-toolbar {
-       margin: auto;
-       padding: 0;
+p.install-help {
+       margin: 8px 0;
+       font-style: italic;
 }
 
 }
 
-#wp-fullscreen-buttons > div {
-       float: left;
+.no-break {
+       white-space: nowrap;
 }
 
 }
 
-#wp-fullscreen-mode-bar {
-       padding: 1px 14px 0 0;
-}
+/*------------------------------------------------------------------------------
+  2.0 - Forms
+------------------------------------------------------------------------------*/
 
 
-#wp-fullscreen-modes a {
-       display: block;
-       font-size: 11px;
-       text-decoration: none;
-       float: left;
-       margin: 1px 0 0 0;
-       padding: 2px 6px 2px;
-       border-width: 1px 1px 1px 0;
-       border-style: solid;
-       border-color: #bbb;
-       color: #777;
-       text-shadow: 0 1px 0 #fff;
-       background-color: #f4f4f4;
-       background-image: -moz-linear-gradient(bottom,  #e4e4e4,  #f9f9f9);
-       background-image: -webkit-gradient(linear, left bottom, left top, from(#e4e4e4), to(#f9f9f9));
+
+.wp-admin select {
+       padding: 2px;
+       height: 2em;
 }
 
 }
 
-#wp-fullscreen-modes a:hover,
-.wp-html-mode #wp-fullscreen-modes a:last-child,
-.wp-tmce-mode #wp-fullscreen-modes a:first-child {
-       color: #333;
-       border-color: #999;
-       background-color: #eee;
-       background-image: -moz-linear-gradient(bottom,  #f9f9f9,  #e0e0e0);
-       background-image: -webkit-gradient(linear, left bottom, left top, from(#f9f9f9), to(#e0e0e0));
+.wp-admin select[multiple] {
+       height: auto;
 }
 
 }
 
-#wp-fullscreen-modes a:first-child {
-       border-width: 1px;
-       -moz-border-radius: 3px 0 0 3px;
-       -webkit-border-top-left-radius: 3px;
-       -webkit-border-bottom-left-radius: 3px;
-       -khtml-border-top-left-radius: 3px;
-       -khtml-border-bottom-left-radius: 3px;
-       border-top-left-radius: 3px;
-       border-bottom-left-radius: 3px;
+select option {
+       padding: 2px;
 }
 
 }
 
-#wp-fullscreen-modes a:last-child {
-       -moz-border-radius: 0 3px 3px 0;
-       -webkit-border-top-right-radius: 3px;
+.submit {
+       padding: 1.5em 0;
+       margin: 5px 0;
+       -webkit-border-bottom-left-radius: 3px;
        -webkit-border-bottom-right-radius: 3px;
        -webkit-border-bottom-right-radius: 3px;
-       -khtml-border-top-right-radius: 3px;
-       -khtml-border-bottom-right-radius: 3px;
-       border-top-right-radius: 3px;
+       border-bottom-left-radius: 3px;
        border-bottom-right-radius: 3px;
 }
 
        border-bottom-right-radius: 3px;
 }
 
-#wp-fullscreen-buttons .active a {
-       background: inherit;
-}
-
-#wp-fullscreen-buttons .hidden {
-       display: none;
+form p.submit a.cancel:hover {
+       text-decoration: none;
 }
 
 }
 
-#wp-fullscreen-buttons .disabled {
-       opacity: 0.5;
+.submit input,
+.button,
+input.button,
+.button-primary,
+input.button-primary,
+.button-secondary,
+input.button-secondary,
+.button-highlighted,
+input.button-highlighted,
+#postcustomstuff .submit input {
+       text-decoration: none;
+       font-size: 12px !important;
+       line-height: 13px;
+       padding: 3px 8px;
+       cursor: pointer;
+       border-width: 1px;
+       border-style: solid;
+       -webkit-border-radius: 11px;
+       border-radius: 11px;
+       -moz-box-sizing: content-box;
+       -webkit-box-sizing: content-box;
+       box-sizing: content-box;
 }
 
 }
 
-.wp-html-mode #wp-fullscreen-buttons div {
-       display: none;
+#minor-publishing-actions input,
+#major-publishing-actions input,
+#minor-publishing-actions .preview {
+       min-width: 80px;
+       text-align: center;
 }
 
 }
 
-.wp-html-mode #wp-fullscreen-buttons div.wp-fullscreen-both {
-       display: block;
+textarea.all-options,
+input.all-options {
+       width: 250px;
 }
 
 }
 
-#fullscreen-topbar.fullscreen-make-sticky {
-       display: block !important;
+input.large-text,
+textarea.large-text {
+       width: 99%;
 }
 
 }
 
-#wp-fullscreen-save img {
-       vertical-align: middle;
+input.regular-text,
+#adduser .form-field input {
+       width: 25em;
 }
 
 }
 
-#wp-fullscreen-save img,
-#wp-fullscreen-save span {
-       padding-right: 4px;
-       display: none;
+input.small-text {
+       width: 50px;
 }
 
 }
 
-#wp-fullscreen-buttons .mce_image .mce_image {
-       background-image: url("../images/menu.png?ver=20100531");
-       background-position: -124px -38px;
+#doaction,
+#doaction2,
+#post-query-submit {
+       margin-right: 8px;
 }
 
 }
 
-#wp-fullscreen-buttons .mce_image .mce_image:hover {
-       background-position: -124px -6px;
+.tablenav select[name="action"],
+.tablenav select[name="action2"] {
+       width: 130px;
 }
 
 }
 
-/* =Thickbox Adjustments
--------------------------------------------------------------- */
-.fullscreen-active #TB_overlay {
-       z-index: 150100;
+.tablenav select[name="m"] {
+       width: 155px;
 }
 
 }
 
-.fullscreen-active #TB_window {
-       z-index: 150102;
+.tablenav select#cat {
+       width: 170px;
 }
 
 }
 
-/* =TinyMCE Adjustments
--------------------------------------------------------------- */
-#wp_mce_fullscreen_ifr {
-       background: transparent;
+#wpcontent option {
+       padding: 2px;
 }
 
 }
 
-#wp_mce_fullscreen_parent #wp_mce_fullscreen_tbl tr.mceFirst {
-       display : none;
+#timezone_string option {
+       margin-left: 1em;
 }
 
 }
 
-#wp-fullscreen-container .wp_themeSkin table td {
-       vertical-align: top;
+label,
+#your-profile label + a {
+       vertical-align: middle;
 }
 
 }
 
-
-/*------------------------------------------------------------------------------
-  6.0 - Admin Header
-------------------------------------------------------------------------------*/
-#wphead-info {
-       margin: 0 0 0 15px;
+#misc-publishing-actions label {
+       vertical-align: baseline;
 }
 
 }
 
-#user_info {
-       float: right;
-       font-size: 12px;
-       line-height: 26px;
-       height: 25px;
-       position: relative;
-       z-index: 49;
+#pass-strength-result {
        border-style: solid;
        border-style: solid;
-       border-width: 0;
-       margin-top: 3px;
-       padding: 0 2px 0 6px;
-}
-
-#user_info.active {
        border-width: 1px;
        border-width: 1px;
-       margin-right: -1px;
-       margin-top: 2px;
-       -moz-border-radius: 3px 3px 0 0;
-       -webkit-border-top-right-radius: 3px;
-       -webkit-border-top-left-radius: 3px;
-       -khtml-border-top-right-radius: 3px;
-       -khtml-border-top-left-radius: 3px;
-       border-top-right-radius: 3px;
-       border-top-left-radius: 3px;
+       float: left;
+       margin: 13px 5px 5px 1px;
+       padding: 3px 5px;
+       text-align: center;
+       width: 200px;
+       display: none;
+}
+.indicator-hint {
+       padding-top: 8px;
 }
 
 }
 
-#user_info p {
+p.search-box {
+       float: right;
        margin: 0;
        margin: 0;
-       padding: 0;
-       line-height: 25px;
-       cursor: pointer;
 }
 
 }
 
-#user_info .hide-if-no-js p {
-       margin: 0 20px 0 0;
+
+/*------------------------------------------------------------------------------
+  3.0 - Actions
+------------------------------------------------------------------------------*/
+
+#major-publishing-actions {
+       padding: 10px 10px 8px;
+       clear: both;
+       border-top: none;
 }
 
 }
 
-#user_info:hover .hide-if-no-js p {
-       text-decoration: underline;
+#delete-action {
+       line-height: 25px;
+       vertical-align: middle;
+       text-align: left;
+       float: left;
 }
 }
-#user_info.active .hide-if-no-js p {
-       text-decoration: none;
+
+#publishing-action {
+       text-align: right;
+       float: right;
+       line-height: 23px;
 }
 
 }
 
-#user_info_arrow {
-       height: 22px;
-       width: 22px;
-       position: absolute;
-       right: 3px;
-       top: 0;
-       cursor: pointer;
+#post-body #minor-publishing {
+       padding-bottom: 10px;
 }
 
 }
 
-#user_info_links_wrap {
-       min-width: 100px;
-       width: 100%;
-       position: absolute;
-       top: 25px;
-       right: 0;
+#post-body #misc-publishing-actions {
        padding: 0;
        padding: 0;
-       text-shadow: rgba(255,255,255,0.7) 0 1px 0;
 }
 
 }
 
-#user_info_links {
-       position: absolute;
-       left: -1px;
-       right: -1px;
-       overflow: hidden;
+#post-body .misc-pub-section {
+       border-right-width: 1px;
+       border-right-style: solid;
+       border-top: 0;
+       border-bottom: 0;
+       min-height: 30px;
+       float: left;
+       max-width: 32%;
 }
 
 }
 
-#user_info.active #user_info_links ul {
-       margin-top: 0;
-       -moz-transition: margin-top 200ms;
-       -webkit-transition: margin-top 200ms;
-       -o-transition: margin-top 200ms;
-       transition: margin-top 200ms;
+#post-body .misc-pub-section-last {
+       border-right: 0;
 }
 
 }
 
-#user_info_links ul {
-       border-width: 1px;
-       border-style: solid;
-       margin-top: -1000px;
-       -moz-transition: margin-top 500ms ease-in;
-       -webkit-transition: margin-top 500ms ease-in;
-       -o-transition: margin-top 500ms ease-in;
-       transition: margin-top 500ms ease-in;
+#misc-publishing-actions {
+       padding: 6px 0 0;
 }
 
 }
 
-#user_info_links,
-#user_info_links ul,
-#user_info_links li:last-child {
-       -moz-border-radius: 0 0 3px 3px;
-       -webkit-border-bottom-right-radius: 3px;
-       -webkit-border-bottom-left-radius: 3px;
-       -khtml-border-bottom-right-radius: 3px;
-       -khtml-border-bottom-left-radius: 3px;
-       border-bottom-right-radius: 3px;
-       border-bottom-left-radius: 3px;
+.misc-pub-section {
+       padding: 6px 10px 8px;
+       border-width: 1px 0;
+       border-style: solid;
 }
 
 }
 
-#user_info_links li {
-       display: block;
-       margin: 0;
+.misc-pub-section:first-child {
+       border-top-width: 0;
 }
 }
-
-#user_info_links a {
-       display: block;
-       padding: 6px 8px;
+.misc-pub-section-last {
+       border-bottom-width: 0;
 }
 
 }
 
-#wphead {
-       height: 32px;
-       margin-right: 20px;
-       margin-left: 2px;
+#minor-publishing-actions {
+       padding: 10px 10px 2px 8px;
+       text-align: right;
 }
 
 }
 
-#wphead a,
-#adminmenu a,
-#sidemenu a,
-#taglist a,
-#catlist a,
-#show-settings a {
-       text-decoration: none;
+#minor-publishing {
+       border-bottom-width: 1px;
+       border-bottom-style: solid;
+       -webkit-box-shadow: 0 1px 0 #fff;
+       -moz-box-shadow: 0 1px 0 #fff;
+       box-shadow: 0 1px 0 #fff;
 }
 
 }
 
-#header-logo {
+#save-post {
        float: left;
        float: left;
-       margin: 7px 0;
-       -webkit-user-select: none;
-       -moz-user-select: none;
-       -khtml-user-select: none;
-       user-select: none;
 }
 
 }
 
-#wphead h1 {
-       font: normal 16px Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
-       padding: 6px 8px 5px;
-       margin: 0;
+#minor-publishing .ajax-loading {
+       padding: 3px 0 0 4px;
        float: left;
 }
 
        float: left;
 }
 
-#wphead h1 a:hover {
-       text-decoration:none;
-}
-#wphead h1 a:hover #site-title {
-       text-decoration:underline;
+.preview {
+       float: right;
 }
 
 }
 
+#sticky-span {
+       margin-left: 18px;
+}
 
 
-/*------------------------------------------------------------------------------
-  6.1 - Favorites Menu
-------------------------------------------------------------------------------*/
-
-#favorite-actions {
-       margin: 0 12px 0 15px;
-       min-width: 130px;
-       position: relative;
-       display: inline-block;
-       top: -1px;
+.side-info {
+       margin: 0;
+       padding: 4px;
+       font-size: 11px;
 }
 
 }
 
-#favorite-first {
-       -moz-border-radius: 12px;
-       -khtml-border-radius: 12px;
-       -webkit-border-radius: 12px;
-       border-radius: 12px;
-       line-height: 15px;
-       padding: 0 30px 0 0;
-       border-width: 1px;
-       border-style: solid;
+.side-info h5 {
+       padding-bottom: 7px;
+       font-size: 14px;
+       margin: 12px 2px 5px;
+       border-bottom-width: 1px;
+       border-bottom-style: solid;
 }
 
 }
 
-#favorite-inside {
+.side-info ul {
        margin: 0;
        margin: 0;
-       padding: 2px 1px;
-       border-width: 1px;
-       border-style: solid;
-       position: absolute;
-       z-index: 11;
-       display: none;
-       -moz-border-radius: 0 0 12px 12px;
-       -webkit-border-bottom-right-radius: 12px;
-       -webkit-border-bottom-left-radius: 12px;
-       -khtml-border-bottom-right-radius: 12px;
-       -khtml-border-bottom-left-radius: 12px;
-       border-bottom-right-radius: 12px;
-       border-bottom-left-radius: 12px;
+       padding-left: 18px;
+       list-style: square;
 }
 
 }
 
-#favorite-first a {
-       padding: 2px 0 2px 12px;
+a.button,
+a.button-primary,
+a.button-secondary {
+       line-height: 15px;
+       padding: 3px 10px;
+       white-space: nowrap;
+       -webkit-border-radius: 10px;
 }
 
 }
 
-#favorite-actions a {
-       display: block;
-       text-decoration: none;
-       font-size: 11px;
+.approve,
+.unapproved .unapprove {
+       display: none;
 }
 
 }
 
-#favorite-inside a {
-       padding: 3px 5px 3px 10px;
-       line-height: 20px;
+.unapproved .approve,
+.spam .approve,
+.trash .approve {
+       display: inline;
 }
 
 }
 
-#favorite-toggle {
-       height: 18px;
-       position: absolute;
-       right: 0;
-       top: 1px;
-       width: 28px;
-       border-width: 0 0 0 1px;
-       border-style: solid;
+td.action-links,
+th.action-links {
+       text-align: right;
 }
 
 }
 
-#favorite-actions .slide-down {
-       -moz-border-radius: 12px 12px 0 0;
-       -webkit-border-bottom-right-radius: 0;
-       -webkit-border-bottom-left-radius: 0;
-       -khtml-border-bottom-right-radius: 0;
-       -khtml-border-bottom-left-radius: 0;
-       border-bottom-right-radius: 0;
-       border-bottom-left-radius: 0;
-       border-bottom: none;
+.describe .del-link {
+       padding-left: 5px;
 }
 
 
 /*------------------------------------------------------------------------------
 }
 
 
 /*------------------------------------------------------------------------------
-  6.2 - Screen Options Tabs
+  4.0 - Notifications
 ------------------------------------------------------------------------------*/
 
 ------------------------------------------------------------------------------*/
 
-#screen-meta {
-       position: relative;
-       clear: both;
+#update-nag,
+.update-nag {
+       line-height: 19px;
+       padding: 5px 0;
+       font-size: 12px;
+       text-align: center;
+       margin: -1px 15px 0 5px;
+       border-width: 1px;
+       border-style: solid;
+       -webkit-border-bottom-right-radius: 3px;
+       -webkit-border-bottom-left-radius: 3px;
+       border-bottom-right-radius: 3px;
+       border-bottom-left-radius: 3px;
 }
 
 }
 
-#screen-meta-links {
-       margin: 0 24px 0 0;
+.plugins .plugin-update {
+       padding: 0;
 }
 
 }
 
-#screen-meta .screen-reader-text {
-       visibility: hidden;
+.plugin-update .update-message {
+       margin: 0 10px 8px 31px;
+       font-weight: bold;
 }
 
 }
 
-#screen-options-link-wrap,
-#contextual-help-link-wrap {
-       float: right;
-       height: 22px;
-       padding: 0;
-       margin: 0 0 0 6px;
-       font-family: sans-serif;
-       -moz-border-radius-bottomleft: 3px;
-       -moz-border-radius-bottomright: 3px;
-       -webkit-border-bottom-left-radius: 3px;
-       -webkit-border-bottom-right-radius: 3px;
-       border-bottom-left-radius: 3px;
-       border-bottom-right-radius: 3px;
+ul#dismissed-updates {
+       display: none;
 }
 
 }
 
-#contextual-help-wrap li {
-       list-style-type: disc;
-       margin-left: 18px;
-}
-.toggle-arrow {
-       background-repeat: no-repeat;
-       background-position: top left;
-       background-color: transparent;
-       height: 22px;
-       line-height: 22px;
-       display: block;
-}
-.toggle-arrow-active {
-       background-position: bottom left;
-}
-#screen-meta a.show-settings {
-       text-decoration: none;
-       z-index: 1;
-       padding: 0 16px 0 6px;
-       height: 22px;
-       line-height: 22px;
-       font-size: 12px;
-       display: block;
-       text-shadow: rgba(255,255,255,0.7) 0 1px 0;
+form.upgrade {
+       margin-top: 8px;
 }
 
 }
 
-#screen-meta a.show-settings:hover {
-       text-decoration: none;
+form.upgrade .hint {
+       font-style: italic;
+       font-size: 85%;
+       margin: -0.5em 0 2em 0;
 }
 
 }
 
-#screen-options-wrap h5,
-#contextual-help-wrap h5 {
-       margin: 8px 0;
-       font-size: 13px;
+.ajax-feedback {
+       visibility: hidden;
+       vertical-align: bottom;
 }
 
 }
 
-#screen-options-wrap,
-#contextual-help-wrap {
-       border-style: none solid solid;
-       border-top: 0 none;
-       border-width: 0 1px 1px;
-       margin: 0 20px 0 0;
-       padding: 8px 12px 12px;
+#ajax-response.alignleft {
+       margin-left: 2em;
 }
 
 }
 
-.metabox-prefs label {
-       display: inline-block;
-       padding-right: 15px;
-       white-space: nowrap;
-       line-height: 30px;
-}
 
 
-.metabox-prefs label input {
-       margin: 0 5px 0 2px;
+/* Distraction Free Writing mode
+ * =Overlay Styles
+-------------------------------------------------------------- */
+.fullscreen-overlay {
+       z-index: 149999;
+       display: none;
+       position: fixed;
+       top: 0;
+       bottom: 0;
+       left: 0;
+       right: 0;
+       filter: inherit;
 }
 
 }
 
-.metabox-prefs label a {
-       display: none;
+.fullscreen-active .fullscreen-overlay,
+.fullscreen-active #wp-fullscreen-body {
+       display: block;
 }
 
 }
 
+.fullscreen-fader {
+       z-index: 200000;
+}
 
 
-/*------------------------------------------------------------------------------
-  7.0 - Main Navigation (Left Menu)
-------------------------------------------------------------------------------*/
+.fullscreen-active .fullscreen-fader {
+       display: none;
+}
 
 
-#adminmenuback,
-#adminmenuwrap {
-       border-width: 0 1px 0 0;
-       border-style: solid;
+/* =Overlay Body
+-------------------------------------------------------------- */
+#wp-fullscreen-body {
+       width: 100%;
+       z-index: 150005;
+       display: none;
+       position: absolute;
+       top: 0;
+       left: 0;
 }
 }
-#adminmenuwrap {
+
+#wp-fullscreen-wrap {
+       margin: 0 auto 50px;
        position: relative;
        position: relative;
+       padding-top: 60px;
 }
 
 }
 
-#adminmenushadow {
-       position: absolute;
-       top: 0;
-       right: 0;
-       bottom: 0;
-       width: 6px;
-       z-index: 20;
+#wp-fullscreen-title {
+    font-size: 1.7em;
+    line-height: 100%;
+    outline: medium none;
+    padding: 6px 7px;
+    width: 100%;
+    margin-bottom: 30px;
 }
 
 }
 
-/* side admin menu */
-#adminmenu * {
-       -webkit-user-select: none;
-       -moz-user-select: none;
-       -khtml-user-select: none;
-       user-select: none;
+#wp-fullscreen-container {
+       padding: 4px 10px 50px;
 }
 
 }
 
-#adminmenu .wp-submenu {
-       display: none;
-       list-style: none;
+#wp-fullscreen-title,
+#wp-fullscreen-container {
+       -webkit-border-radius: 0;
+       border-radius: 0;
+       border: 1px dashed transparent;
+       background: transparent;
+       -moz-transition-property: border-color;
+       -moz-transition-duration: 0.6s;
+       -webkit-transition-property: border-color;
+       -webkit-transition-duration: 0.6s;
+       -o-transition-property: border-color;
+       -o-transition-duration: 0.6s;
+       transition-property: border-color;
+       transition-duration: 0.6s;
+}
+
+#wp_mce_fullscreen {
+       width: 100%;
+       min-height: 300px;
+       border: 0;
+       background: transparent;
+       font-family: Consolas, Monaco, monospace;
+       line-height: 1.6em;
        padding: 0;
        padding: 0;
-       margin: 0;
-       position: relative;
-       z-index: 2;
+       overflow-y: hidden;
+       outline: none;
+       resize: none;
 }
 
 }
 
-#adminmenu .wp-submenu a {
-       font-size: 12px;
-       line-height: 18px;
+#wp-fullscreen-tagline {
+       color: #BBBBBB;
+       font-size: 18px;
+       float: right;
+       padding-top: 5px;
 }
 
 }
 
-#adminmenu .wp-submenu li.current,
-#adminmenu .wp-submenu li.current a,
-#adminmenu .wp-submenu li.current a:hover {
-       font-weight: bold;
+/* =Top bar
+-------------------------------------------------------------- */
+#fullscreen-topbar {
+       position: fixed;
+       top: 0;
+       left: 0;
+       z-index: 150050;
+       border-bottom-style: solid;
+       border-bottom-width: 1px;
+       min-width: 800px;
+       width: 100%;
+       height: 40px;
 }
 
 }
 
-#adminmenu a.menu-top,
-#adminmenu .wp-submenu-head {
-       font-size: 13px;
-       line-height: 18px;
+#wp-fullscreen-toolbar {
+       padding: 6px 10px 0;
+       clear: both;
+       max-width: 1100px;
+       min-width: 820px;
+       margin: 0 auto;
 }
 
 }
 
-#adminmenu div.wp-submenu-head {
-       display: none;
+#wp-fullscreen-mode-bar,
+#wp-fullscreen-button-bar,
+#wp-fullscreen-close,
+#wp-fullscreen-count {
+       float: left;
 }
 
 }
 
-.js.folded #adminmenu div.wp-submenu-head {
-       display: block;
+#wp-fullscreen-save {
+       float: right;
+       padding: 2px 2px 0 5px;
 }
 
 }
 
-.js.folded #adminmenu a.menu-top,
-body.no-js #adminmenu .wp-menu-toggle,
-.js.folded #adminmenu div.wp-menu-toggle {
-       display: none;
+#wp-fullscreen-count,
+#wp-fullscreen-close {
+       padding-top: 5px;
 }
 
 }
 
-body.js #adminmenu li.wp-menu-open .wp-submenu,
-body.no-js #adminmenu .open-if-no-js .wp-submenu,
-body.no-js #adminmenu li.wp-has-current-submenu .wp-submenu {
-       display: block;
+#wp-fullscreen-central-toolbar {
+       margin: auto;
+       padding: 0;
 }
 
 }
 
-#adminmenu div.wp-menu-image {
+#wp-fullscreen-buttons > div {
        float: left;
        float: left;
-       width: 28px;
-       height: 28px;
-}
-.js.folded #adminmenu div.wp-menu-image {
-       width: 32px;
 }
 
 }
 
-#adminmenu li {
-       margin: 0;
-       padding: 0;
-       cursor: pointer;
+#wp-fullscreen-mode-bar {
+       padding: 1px 14px 0 0;
 }
 
 }
 
-#adminmenu a {
+#wp-fullscreen-modes a {
        display: block;
        display: block;
-       line-height: 18px;
-       padding: 2px 5px;
+       font-size: 11px;
+       text-decoration: none;
+       float: left;
+       margin: 1px 0 0 0;
+       padding: 2px 6px 2px;
+       border-width: 1px 1px 1px 0;
+       border-style: solid;
+       border-color: #bbb;
+       color: #777;
+       text-shadow: 0 1px 0 #fff;
+       background-color: #f4f4f4;
+       background-image: -moz-linear-gradient(bottom,  #e4e4e4,  #f9f9f9);
+       background-image: -webkit-gradient(linear, left bottom, left top, from(#e4e4e4), to(#f9f9f9));
 }
 
 }
 
-#adminmenu li.menu-top {
-       min-height: 26px;
-       position: relative;
+#wp-fullscreen-modes a:hover,
+.wp-html-mode #wp-fullscreen-modes a:last-child,
+.wp-tmce-mode #wp-fullscreen-modes a:first-child {
+       color: #333;
+       border-color: #999;
+       background-color: #eee;
+       background-image: -moz-linear-gradient(bottom,  #f9f9f9,  #e0e0e0);
+       background-image: -webkit-gradient(linear, left bottom, left top, from(#f9f9f9), to(#e0e0e0));
 }
 
 }
 
-#adminmenu a.menu-top {
-       font-weight: bold;
-       line-height: 18px;
-       min-width: 10em;
-       padding: 5px 5px;
-       border-width: 1px 0 1px;
-       border-style: solid;
+#wp-fullscreen-modes a:first-child {
+       border-width: 1px;
+       -webkit-border-top-left-radius: 3px;
+       -webkit-border-bottom-left-radius: 3px;
+       border-top-left-radius: 3px;
+       border-bottom-left-radius: 3px;
 }
 
 }
 
-#adminmenu li.wp-menu-open {
-       border-width: 0 0 1px;
-       border-style: solid;
+#wp-fullscreen-modes a:last-child {
+       -webkit-border-top-right-radius: 3px;
+       -webkit-border-bottom-right-radius: 3px;
+       border-top-right-radius: 3px;
+       border-bottom-right-radius: 3px;
 }
 
 }
 
-#adminmenu .wp-submenu a {
-       margin: 0;
-       padding-left: 12px;
+#wp-fullscreen-buttons .active a {
+       background: inherit;
 }
 
 }
 
-.wp-menu-arrow {
+#wp-fullscreen-buttons .hidden {
        display: none;
 }
        display: none;
 }
-#adminmenu li.wp-has-current-submenu .wp-menu-arrow,
-#adminmenu li.menu-top.current .wp-menu-arrow {
-       display: block;
-       position: absolute;
-       right: -9px;
-       top: 0;
-       cursor: auto;
-       z-index: 25;
-}
-#adminmenu .wp-menu-arrow div {
-       width: 15px;
-       height: 30px;
-       background: url(../images/menu-arrow-frame.png) top right no-repeat;
+
+#wp-fullscreen-buttons .disabled {
+       opacity: 0.5;
 }
 
 }
 
-#adminmenu .wp-submenu li {
-       padding: 0;
-       margin: 0;
+.wp-html-mode #wp-fullscreen-buttons div {
+       display: none;
 }
 
 }
 
-.js.folded #adminmenu li.menu-top {
-       width: 32px;
-       height: 29px;
-       border-width: 1px 0;
-       border-style: solid;
+.wp-html-mode #wp-fullscreen-buttons div.wp-fullscreen-both {
+       display: block;
 }
 
 }
 
-#adminmenu .wp-menu-image img {
-       float: left;
-       padding: 8px 6px 0;
-       opacity: 0.6;
-       filter: alpha(opacity=60);
+#fullscreen-topbar.fullscreen-make-sticky {
+       display: block !important;
 }
 
 }
 
-#adminmenu li.menu-top:hover .wp-menu-image img,
-#adminmenu li.wp-has-current-submenu .wp-menu-image img {
-       opacity: 1;
-       filter: alpha(opacity=100);
+#wp-fullscreen-save img {
+       vertical-align: middle;
 }
 
 }
 
-#adminmenu li.wp-menu-separator {
-       height: 3px;
-       padding: 0;
-       margin: 0;
-       border-width: 1px 0;
-       border-style: solid;
-       cursor: inherit;
+#wp-fullscreen-save img,
+#wp-fullscreen-save span {
+       padding-right: 4px;
+       display: none;
 }
 
 }
 
-#adminmenu div.separator {
-       height: 1px;
-       padding: 0;
-       border-width: 1px 0 0 0;
-       border-style: solid;
+#wp-fullscreen-buttons .mce_image .mce_image {
+       background-image: url('../images/menu.png?ver=20111128');
+       background-position: -124px -38px;
 }
 
 }
 
-.js.folded #adminmenu .wp-submenu {
-       display: block;
-       position: absolute;
-       top: -5px;
-       left: 26px;
-       z-index: 999;
-       width: 0;
-       padding: 0;
-       overflow: hidden;
-       -moz-transition: width 200ms ease-out;
-       -webkit-transition: width 200ms ease-out;
-       -o-transition: width 200ms ease-out;
-       transition: width 200ms ease-out;
-}
-.js.folded #adminmenu .wp-submenu.sub-open {
-       padding: 0 8px 8px 0;
+#wp-fullscreen-buttons .mce_image .mce_image:hover {
+       background-position: -124px -6px;
 }
 
 }
 
-#adminmenu .wp-submenu .wp-submenu-head {
-       padding: 6px 4px 5px 10px;
-       cursor: default;
-       border-width: 1px 0;
-       border-style: solid;
+/* =Thickbox Adjustments
+-------------------------------------------------------------- */
+.fullscreen-active #TB_overlay {
+       z-index: 150100;
 }
 
 }
 
-.js.folded #adminmenu .wp-submenu-wrap {
-       margin-top: 4px;
-       border-width: 0 1px 1px 0;
-       border-style: solid;
-       position: relative;
-       -webkit-border-bottom-right-radius: 3px;
-       -webkit-border-top-right-radius: 3px;
-       -khtml-border-bottom-right-radius: 3px;
-       -khtml-border-top-right-radius: 3px;
-       -moz-border-radius-bottomright: 3px;
-       -moz-border-radius-topright: 3px;
-       border-bottom-right-radius: 3px;
-       border-top-right-radius: 3px;
+.fullscreen-active #TB_window {
+       z-index: 150102;
 }
 
 }
 
-.js.folded #adminmenu .wp-submenu ul {
-       border-width: 0 0 0 1px;
-       border-style: solid;
+/* =TinyMCE Adjustments
+-------------------------------------------------------------- */
+#wp_mce_fullscreen_ifr {
+       background: transparent;
 }
 
 }
 
-.js.folded #adminmenu .wp-submenu a {
-       padding-left: 10px;
+#wp_mce_fullscreen_parent #wp_mce_fullscreen_tbl tr.mceFirst {
+       display : none;
 }
 
 }
 
-.js.folded #adminmenu a.wp-has-submenu {
-       margin-left: 40px;
+#wp-fullscreen-container .wp_themeSkin table td {
+       vertical-align: top;
 }
 
 }
 
-#adminmenu .wp-menu-toggle {
-       width: 18px;
-       clear: right;
-       float: right;
-       margin: 1px 0 0;
-       height: 27px;
-       padding: 1px 2px 0 0;
-       cursor: pointer;
-}
 
 
-#adminmenu .wp-menu-image a {
-       height: 24px;
+/*------------------------------------------------------------------------------
+  6.0 - Admin Header
+------------------------------------------------------------------------------*/
+#adminmenu a,
+#sidemenu a,
+#taglist a,
+#catlist a {
+       text-decoration: none;
 }
 
 }
 
-#adminmenu .wp-menu-image img {
-       padding: 6px 0 0 1px;
+/*------------------------------------------------------------------------------
+  6.1 - Screen Options Tabs
+------------------------------------------------------------------------------*/
+
+#screen-options-wrap,
+#contextual-help-wrap {
+       margin: 0;
+       padding: 8px 20px 12px;
+       position: relative;
+       overflow: auto;
 }
 
 }
 
-#adminmenu .awaiting-mod,
-#adminmenu span.update-plugins,
-#sidemenu li a span.update-plugins {
-       position: absolute;
-       font-family: sans-serif;
-       font-size: 9px;
-       line-height: 17px;
-       font-weight: bold;
-       margin-top: 1px;
-       margin-left: 7px;
-       -moz-border-radius: 10px;
-       -khtml-border-radius: 10px;
-       -webkit-border-radius: 10px;
-       border-radius: 10px;
+#screen-meta .screen-reader-text {
+       visibility: hidden;
 }
 
 }
 
-#adminmenu li .awaiting-mod span,
-#adminmenu li span.update-plugins span,
-#sidemenu li a span.update-plugins span {
-       display: block;
-       padding: 0 6px;
+#screen-meta-links {
+       margin: 0 24px 0 0;
 }
 
 }
 
-#adminmenu li span.count-0,
-#sidemenu li a .count-0 {
+/* screen options and help tabs revert */
+#screen-meta {
        display: none;
        display: none;
+       position: relative;
+       margin: 0 15px 0 5px;
+       border-width: 0 1px 1px;
+       border-style: none solid solid;
 }
 
 }
 
-.post-com-count-wrapper {
-       min-width: 22px;
+#screen-options-link-wrap,
+#contextual-help-link-wrap {
+       float: right;
+       height: 22px;
+       padding: 0;
+       margin: 0 0 0 6px;
        font-family: sans-serif;
 }
 
        font-family: sans-serif;
 }
 
-.post-com-count {
-       height: 1.3em;
-       line-height: 1.1em;
-       display: block;
-       text-decoration: none;
-       padding: 0 0 6px;
-       cursor: pointer;
-       background-position: center -80px;
-       background-repeat: no-repeat;
+#screen-options-link-wrap,
+#contextual-help-link-wrap,
+#screen-meta {
+       -webkit-border-bottom-left-radius: 3px;
+       -webkit-border-bottom-right-radius: 3px;
+       border-bottom-left-radius: 3px;
+       border-bottom-right-radius: 3px;
 }
 
 }
 
-.post-com-count span {
-       font-size: 11px;
-       font-weight: bold;
-       height: 1.4em;
-       line-height: 1.4em;
-       min-width: 0.7em;
-       padding: 0 6px;
-       display: inline-block;
-       cursor: pointer;
-       -moz-border-radius: 5px;
-       -khtml-border-radius: 5px;
-       -webkit-border-radius: 5px;
-       border-radius: 5px;
+#screen-meta-links a.show-settings {
+       text-decoration: none;
+       z-index: 1;
+       padding: 0 16px 0 6px;
+       height: 22px;
+       line-height: 22px;
+       font-size: 12px;
+       display: block;
+       text-shadow: rgba(255,255,255,0.7) 0 1px 0;
 }
 
 }
 
-strong .post-com-count {
-       background-position: center -55px;
+#screen-meta-links a.show-settings:hover {
+       text-decoration: none;
 }
 }
+/* end screen options and help tabs */
 
 
-.post-com-count:hover {
-       background-position: center -3px;
+.toggle-arrow {
+       background-repeat: no-repeat;
+       background-position: top left;
+       background-color: transparent;
+       height: 22px;
+       line-height: 22px;
+       display: block;
 }
 
 }
 
-.column-response .post-com-count {
-       float: left;
-       margin-right: 5px;
-       text-align: center;
+.toggle-arrow-active {
+       background-position: bottom left;
 }
 
 }
 
-.response-links {
-       float: left;
+#screen-options-wrap h5,
+#contextual-help-wrap h5 {
+       margin: 8px 0;
+       font-size: 13px;
 }
 
 }
 
-#the-comment-list .attachment-80x60 {
-       padding: 4px 8px;
+.metabox-prefs label {
+       display: inline-block;
+       padding-right: 15px;
+       white-space: nowrap;
+       line-height: 30px;
 }
 
 }
 
-#collapse-menu {
-       font-size: 12px;
-       line-height: 34px;
+.metabox-prefs label input {
+       margin: 0 5px 0 2px;
 }
 
 }
 
-.js.folded #collapse-menu span {
+.metabox-prefs label a {
        display: none;
 }
 
        display: none;
 }
 
-#collapse-button,
-#collapse-button div {
-       width: 15px;
-       height: 15px;
+/*------------------------------------------------------------------------------
+  6.2 - Help Menu
+------------------------------------------------------------------------------*/
+
+#contextual-help-wrap {
+       padding: 0;
+       margin-left: -4px;
 }
 
 }
 
-#collapse-button {
-       float: left;
-       margin: 8px 6px;
-       border-width: 1px;
-       border-style: solid;
-       -moz-border-radius: 10px;
-       -khtml-border-radius: 10px;
-       -webkit-border-radius: 10px;
-       border-radius: 10px;
+#contextual-help-columns {
+       position: relative;
 }
 
 }
 
+#contextual-help-back {
+       position: absolute;
+       top: 0;
+       bottom: 0;
+       left: 150px;
+       right: 170px;
+       border-width: 0 1px;
+       border-style: solid;
+}
 
 
-/*------------------------------------------------------------------------------
-  8.0 - Layout Blocks
-------------------------------------------------------------------------------*/
+#contextual-help-wrap.no-sidebar #contextual-help-back {
+       right: 0;
 
 
-body.wp-admin {
-       min-width: 785px;
+       border-right-width: 0;
+       -webkit-border-bottom-right-radius: 2px;
+       border-bottom-right-radius: 2px;
 }
 
 }
 
-body.admin-bar #wphead,
-body.admin-bar #adminmenu {
-       padding-top: 28px;
+.contextual-help-tabs {
+       float: left;
+       width: 150px;
+       margin: 0;
 }
 
 }
 
-.narrow {
-       width: 70%;
-       margin-bottom: 40px;
+.contextual-help-tabs ul {
+       margin: 1em 0;
 }
 
 }
 
-.narrow p {
-       line-height: 150%;
+.contextual-help-tabs li {
+       margin-bottom: 0;
+       list-style-type: none;
+       border-style: solid;
+       border-width: 1px 0;
+       border-color: transparent;
 }
 
 }
 
-.widefat th,
-.widefat td {
-       overflow: hidden;
+.contextual-help-tabs a {
+       display: block;
+       padding: 5px 5px 5px 12px;
+       line-height: 18px;
+       text-decoration: none;
 }
 
 }
 
-.widefat th {
-       font-family: Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
-       font-weight: normal;
+.contextual-help-tabs .active {
+       padding: 0;
+       margin: 0 -1px 0 0;
+       border-width: 1px 0 1px 1px;
+       border-style: solid;
 }
 
 }
 
-.widefat td p {
-       margin: 2px 0 0.8em;
+.contextual-help-tabs-wrap {
+       padding: 0 20px;
+       overflow: auto;
 }
 
 }
 
-.widefat .column-comment p {
-       margin: 0.6em 0;
+.help-tab-content {
+       display: none;
+       margin: 0 22px 12px 0;
+       line-height: 1.6em;
 }
 
 }
 
-.postbox-container {
-       float: left;
-       padding-right: 0.5%;
+.help-tab-content.active {
+       display: block;
 }
 
 }
 
-.postbox-container .meta-box-sortables {
-       min-height: 300px;
+.help-tab-content li {
+       list-style-type: disc;
+       margin-left: 18px;
 }
 
 }
 
-.postbox .hndle {
-       cursor: move;
+.contextual-help-sidebar {
+       width: 150px;
+       float: right;
+       padding: 0 8px 0 12px;
+       overflow: auto;
 }
 
 }
 
-.hndle a {
-       font-size: 11px;
-       font-weight: normal;
-}
 
 
-.postbox .handlediv {
-       float: right;
-       width: 27px;
-       height: 30px;
-       cursor: pointer;
+/*------------------------------------------------------------------------------
+  7.0 - Main Navigation (Left Menu)
+------------------------------------------------------------------------------*/
+
+#adminmenuback,
+#adminmenuwrap {
+       border-width: 0 1px 0 0;
+       border-style: solid;
 }
 
 }
 
-.sortable-placeholder {
-       border-width: 1px;
-       border-style: dashed;
-       margin-bottom: 20px;
+#adminmenuwrap {
+       position: relative;
+       float: left;
 }
 
 }
 
-.widget,
-.postbox,
-.stuffbox {
-       margin-bottom: 20px;
-       padding: 0;
-       border-width: 1px;
-       border-style: solid;
-       line-height: 1;
+#adminmenushadow {
+       position: absolute;
+       top: 0;
+       right: 0;
+       bottom: 0;
+       width: 6px;
+       z-index: 20;
 }
 
 }
 
-.widget .widget-top,
-.postbox h3,
-.stuffbox h3 {
-       margin-top: 1px;
-       border-bottom-width: 1px;
-       border-style: solid;
-       cursor: move;
+/* side admin menu */
+#adminmenu * {
        -webkit-user-select: none;
        -moz-user-select: none;
        -webkit-user-select: none;
        -moz-user-select: none;
-       -khtml-user-select: none;
        user-select: none;
 }
 
        user-select: none;
 }
 
-.postbox .inside,
-.stuffbox .inside {
-       padding: 0 10px;
+#adminmenu .wp-submenu {
+       list-style: none;
+       padding: 0;
+       margin: 0;
+       overflow: hidden;
 }
 
 }
 
-.postbox.closed h3 {
-       border: none;
+#adminmenu li .wp-submenu,
+.folded #adminmenu .wp-has-current-submenu .wp-submenu {
+       display: none;
+       position: absolute;
+       top: -1px;
+       left: 146px;
+       z-index: 999;
+       overflow: hidden;
+}
+
+.js #adminmenu .wp-submenu.sub-open,
+.folded #adminmenu .wp-has-current-submenu .wp-submenu.sub-open,
+.no-js #adminmenu .wp-has-submenu:hover .wp-submenu,
+#adminmenu .wp-has-current-submenu .wp-submenu,
+#adminmenu li.focused .wp-submenu {
+       display: block;
+}
+
+#adminmenu .wp-has-current-submenu .wp-submenu {
+       position: relative;
+       z-index: 2;
+       top: auto;
+       left: auto;
+       right: auto;
+       bottom: auto;
+       padding: 0;
+}
+
+#adminmenu .wp-has-current-submenu .wp-submenu-wrap {
        -moz-box-shadow: none;
        -webkit-box-shadow: none;
        box-shadow: none;
 }
 
        -moz-box-shadow: none;
        -webkit-box-shadow: none;
        box-shadow: none;
 }
 
-.postbox table.form-table {
-       margin-bottom: 0;
+.folded #adminmenu .wp-submenu,
+.folded #adminmenu .wp-has-current-submenu .wp-submenu {
+       top: -5px;
+       left: 26px;
 }
 
 }
 
-.postbox input[type="text"],
-.postbox textarea,
-.stuffbox input[type="text"],
-.stuffbox textarea {
-       border-width: 1px;
-       border-style: solid;
+#adminmenu .wp-submenu.sub-open,
+#adminmenu li.focused.wp-not-current-submenu .wp-submenu,
+.folded #adminmenu li.focused.wp-has-current-submenu .wp-submenu,
+.folded #adminmenu .wp-has-current-submenu .wp-submenu.sub-open,
+.no-js #adminmenu .wp-has-submenu:hover .wp-submenu,
+.no-js.folded #adminmenu .wp-has-current-submenu:hover .wp-submenu {
+       padding: 0 8px 8px 0;
 }
 
 }
 
-.temp-border {
-       border: 1px dotted #ccc;
+.no-js #adminmenu .wp-has-current-submenu:hover .wp-submenu,
+#adminmenu .wp-has-current-submenu .wp-submenu {
+       padding: 0;
 }
 
 }
 
-.columns-prefs label {
-       padding: 0 5px;
+#adminmenu .wp-submenu a {
+       font-size: 12px;
+       line-height: 18px;
 }
 
 }
 
-
-/*------------------------------------------------------------------------------
-  9.0 - Dashboard
-------------------------------------------------------------------------------*/
-
-#wpbody-content .metabox-holder {
-       padding-top: 10px;
+#adminmenu a.menu-top,
+#adminmenu .wp-submenu-head {
+       font-size: 13px;
+       line-height: 18px;
 }
 
 }
 
-#dashboard-widgets .meta-box-sortables {
-       margin: 0 5px;
+#adminmenu div.wp-submenu-head {
+       display: none;
 }
 
 }
 
-#dashboard_recent_comments div.undo {
-       border-top-style: solid;
-       border-top-width: 1px;
-       margin: 0 -10px;
-       padding: 3px 8px;
-       font-size: 11px;
+.folded #adminmenu div.wp-submenu-head {
+       display: block;
 }
 
 }
 
-#the-comment-list td.comment p.comment-author {
-       margin-top: 0;
-       margin-left: 0;
+.folded #adminmenu a.menu-top,
+body.no-js #adminmenu .wp-menu-toggle,
+.folded #adminmenu div.wp-menu-toggle {
+       display: none;
 }
 
 }
 
-#the-comment-list p.comment-author img {
+#adminmenu div.wp-menu-image {
        float: left;
        float: left;
-       margin-right: 8px;
+       width: 28px;
+       height: 28px;
 }
 
 }
 
-#the-comment-list p.comment-author strong a {
-       border: none;
+.folded #adminmenu div.wp-menu-image {
+       width: 32px;
 }
 
 }
 
-#the-comment-list td {
-       vertical-align: top;
+#adminmenu li {
+       margin: 0;
+       padding: 0;
+       cursor: pointer;
 }
 
 }
 
-#the-comment-list td.comment {
-       word-wrap: break-word;
+#adminmenu a {
+       display: block;
+       line-height: 18px;
+       padding: 2px 5px;
 }
 
 }
 
-
-/*------------------------------------------------------------------------------
-  10.0 - List Posts (/Pages/etc)
-------------------------------------------------------------------------------*/
-
-table.fixed {
-       table-layout: fixed;
-}
-.fixed .column-rating,
-.fixed .column-visible {
-       width: 8%;
+#adminmenu li.menu-top {
+       min-height: 29px;
+       position: relative;
 }
 }
-.fixed .column-date,
-.fixed .column-parent,
-.fixed .column-links {
-       width: 10%;
+
+#adminmenu a.menu-top {
+       font-weight: bold;
+       line-height: 18px;
+       min-width: 10em;
+       padding: 5px 5px;
+       border-width: 1px 0 1px;
+       border-style: solid;
 }
 }
-.fixed .column-response,
-.fixed .column-author,
-.fixed .column-categories,
-.fixed .column-tags,
-.fixed .column-rel,
-.fixed .column-role {
-       width: 15%;
+
+#adminmenu li.wp-menu-open {
+       border-width: 0 0 1px;
+       border-style: solid;
 }
 }
-.fixed .column-comments {
-       width: 4em;
-       padding: 8px 0;
-       text-align: left;
+
+#adminmenu .wp-submenu ul {
+       padding: 4px 0;
 }
 }
-.fixed .column-comments .vers {
-       padding-left: 3px;
+
+#adminmenu .wp-submenu a {
+       margin: 0;
 }
 }
-.fixed .column-comments a {
-       float: left;
+
+#adminmenu li li {
+       margin-left: 8px;
 }
 }
-.fixed .column-slug {
-       width: 25%;
+
+#adminmenu .wp-submenu a,
+#adminmenu li li a,
+.folded #adminmenu .wp-not-current-submenu li a {
+       padding-left: 12px;
 }
 }
-.fixed .column-posts {
-       width: 10%;
+
+#adminmenu .wp-not-current-submenu li a {
+       padding-left: 18px;
 }
 }
-.fixed .column-icon {
-       width: 80px;
+
+.folded #adminmenu li li {
+       margin-left: 0;
 }
 }
-#commentsdiv .fixed .column-author,
-#comments-form .fixed .column-author {
-       width: 20%;
+
+.folded #adminmenu li li a {
+       padding-left: 0;
 }
 }
-#commentsdiv.postbox .inside {
-       line-height: 1.4em;
+
+.wp-menu-arrow {
+       display: none;
+       cursor: auto;
+       z-index: 25;
+       position: absolute;
+       right: 100%;
        margin: 0;
        margin: 0;
-       padding: 0;
+       height: 30px;
+       width: 6px;
+
+       -moz-transform:    translate( 146px );
+       -webkit-transform: translate( 146px );
+       -o-transform:      translate( 146px );
+       -ms-transform:     translate( 146px );
+       transform:         translate( 146px );
 }
 }
-#commentsdiv.postbox .inside .row-actions {
-       line-height:18px;
+
+#adminmenu li.wp-has-current-submenu .wp-menu-arrow,
+#adminmenu li.menu-top:hover .wp-menu-arrow,
+#adminmenu li.current .wp-menu-arrow,
+#adminmenu li.focused .wp-menu-arrow,
+#adminmenu li.menu-top.wp-has-submenu:hover .wp-menu-arrow div {
+       display: block;
 }
 }
-#commentsdiv.postbox .inside td {
-       padding:1em 10px;
+
+#adminmenu li.wp-not-current-submenu:hover .wp-menu-arrow div {
+       display: none;
 }
 }
-#commentsdiv.postbox .inside .column-comment p {
+
+#adminmenu li.menu-top:hover .wp-menu-arrow,
+#adminmenu li.menu-top.focused .wp-menu-arrow {
+       z-index: 1001;
 }
 }
-#commentsdiv.postbox .inside .column-author {
-       width:33%;
+
+#adminmenu .wp-menu-arrow div {
+       position: absolute;
+       top: 7px;
+       left: -1px;
+       width: 14px;
+       height: 15px;
+
+       -moz-transform:    matrix( -0.6, 1, 0.6, 1, 0, 0 );
+       -webkit-transform: matrix( -0.6, 1, 0.6, 1, 0, 0 );
+       -o-transform:      matrix( -0.6, 1, 0.6, 1, 0, 0 );
+       -ms-transform:     matrix( -0.6, 1, 0.6, 1, 0, 0 );
+       transform:         matrix( -0.6, 1, 0.6, 1, 0, 0 );
 }
 }
-#commentsdiv.postbox .inside p {
-       margin:6px 10px 8px;
+
+#adminmenu li.wp-not-current-submenu .wp-menu-arrow {
+       -moz-transform:    translate( 145px );
+       -webkit-transform: translate( 145px );
+       -o-transform:      translate( 145px );
+       -ms-transform:     translate( 145px );
+       transform:         translate( 145px );
+       height: 28px;
+       border-width: 1px 0;
+       border-style: solid;
 }
 }
-#commentsdiv.postbox .column-comment p {
-       margin:0.6em 0;
+
+.folded .wp-menu-arrow {
+       -moz-transform:    translate( 33px );
+       -webkit-transform: translate( 33px );
+       -o-transform:      translate( 33px );
+       -ms-transform:     translate( 33px );
+       transform:         translate( 33px );
 }
 }
-#commentsdiv.postbox #replyrow td {
-       padding:0;
+
+#adminmenu .wp-not-current-submenu .wp-menu-arrow div {
+       width: 15px;
+       top: 6px;
+       border-width: 0 0 1px 1px;
+       border-style: solid;
 }
 }
-.sorting-indicator {
+
+.wp-menu-arrow,
+.folded #adminmenu li.menu-top:hover .wp-menu-arrow {
        display: none;
        display: none;
-       width: 7px;
-       height: 4px;
-       margin-top: 8px;
-       margin-left: 7px;
-       background-image: url(../images/sort.gif);
-       background-repeat: no-repeat;
 }
 }
-.fixed .column-comments .sorting-indicator {
-       margin-top: 3px;
+
+.folded #adminmenu li.current:hover .wp-menu-arrow,
+.folded #adminmenu li.menu-top.wp-menu-open:hover .wp-menu-arrow {
+       display: block;
+       z-index: 125;
 }
 }
-.widefat th.sortable,
-.widefat th.sorted {
+
+#adminmenu .wp-submenu li {
        padding: 0;
        padding: 0;
+       margin: 0;
 }
 }
-th.sortable a,
-th.sorted a {
-       display: block;
-       overflow: hidden;
-       padding: 7px 7px 8px;
-}
-.fixed .column-comments.sortable a,
-.fixed .column-comments.sorted a {
-       padding: 8px 0;
+
+.folded #adminmenu li.menu-top {
+       border-width: 1px 0;
+       border-style: solid none;
 }
 }
-th.sortable a span,
-th.sorted a span {
+
+#adminmenu .wp-menu-image img {
        float: left;
        float: left;
-       cursor: pointer;
+       padding: 5px 0 0 2px;
+       opacity: 0.6;
+       filter: alpha(opacity=60);
 }
 }
-th.sorted.asc .sorting-indicator,
-th.desc:hover span.sorting-indicator {
-       display: block;
-       background-position: 0 0;
+
+#adminmenu li.menu-top:hover .wp-menu-image img,
+#adminmenu li.wp-has-current-submenu .wp-menu-image img {
+       opacity: 1;
+       filter: alpha(opacity=100);
 }
 }
-th.sorted.desc .sorting-indicator,
-th.asc:hover span.sorting-indicator {
-       display: block;
-       background-position: -7px 0;
+
+#adminmenu li.wp-menu-separator {
+       height: 3px;
+       padding: 0;
+       margin: 0;
+       border-width: 1px 0;
+       border-style: solid;
+       cursor: inherit;
 }
 
 }
 
-/* Bulk Actions */
+#adminmenu div.separator {
+       height: 1px;
+       padding: 0;
+       border-width: 1px 0 0 0;
+       border-style: solid;
+}
 
 
-.tablenav-pages a {
-       border-bottom-style: solid;
-       border-bottom-width: 2px;
-       font-weight: bold;
-       margin-right: 1px;
-       padding: 0 2px;
+#adminmenu .wp-submenu .wp-submenu-head {
+       padding: 6px 4px 5px 10px;
+       cursor: default;
+       border-width: 1px 0;
+       border-style: solid;
 }
 }
-.tablenav-pages .current-page {
-       text-align: center;
+
+#adminmenu li .wp-submenu-wrap {
+       border-width: 1px 1px 1px 0;
+       border-style: solid solid solid none;
+       position: relative;
+       -webkit-border-bottom-right-radius: 3px;
+       -webkit-border-top-right-radius: 3px;
+       border-bottom-right-radius: 3px;
+       border-top-right-radius: 3px;
 }
 }
-.tablenav-pages .next-page {
-       margin-left: 2px;
+
+#adminmenu li.wp-menu-open .wp-submenu-wrap {
+       border: 0 none;
 }
 
 }
 
-.tablenav a.button-secondary {
-       display: block;
-       margin: 3px 8px 0 0;
+.folded #adminmenu .wp-submenu .wp-submenu-wrap {
+       margin-top: 3px;
 }
 
 }
 
-.tablenav {
-       clear: both;
-       height: 30px;
-       margin: 6px 0 4px;
-       vertical-align: middle;
+.folded #adminmenu .wp-has-current-submenu {
+       margin-bottom: 1px;
 }
 
 }
 
-.tablenav .tablenav-pages {
-       float: right;
-       display: block;
-       cursor: default;
-       height: 30px;
-       line-height: 30px;
-       font-size: 12px;
+.folded #adminmenu .wp-has-current-submenu.menu-top-last {
+       margin-bottom: 0;
 }
 
 }
 
-.tablenav .no-pages,
-.tablenav .one-page .pagination-links {
-       display: none;
+.folded #adminmenu .wp-has-current-submenu .wp-submenu-wrap {
+       margin-top: 4px;
 }
 
 }
 
-.tablenav .tablenav-pages a,
-.tablenav-pages span.current  {
-       text-decoration: none;
-       border: none;
-       padding: 3px 6px;
-       border-width: 1px;
+.folded #adminmenu .wp-submenu ul {
+       border-width: 0 0 0 1px;
        border-style: solid;
        border-style: solid;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;
 }
 
 }
 
-.tablenav .tablenav-pages a.disabled:hover {
-       cursor: default;
+.folded #adminmenu .wp-submenu a {
+       padding-left: 10px;
 }
 
 }
 
-.tablenav .tablenav-pages a.disabled:active {
-       cursor: default;
+.folded #adminmenu a.wp-has-submenu {
+       margin-left: 40px;
 }
 
 }
 
-.tablenav .displaying-num {
-       margin-right: 10px;
+#adminmenu .wp-menu-toggle {
+       width: 18px;
+       clear: right;
+       float: right;
+       margin: 1px 0 0;
+       height: 27px;
+       padding: 1px 2px 0 0;
+       cursor: pointer;
+}
+
+#adminmenu .wp-menu-image a {
+       height: 24px;
+}
+
+#adminmenu .awaiting-mod,
+#adminmenu span.update-plugins,
+#sidemenu li a span.update-plugins {
+       position: absolute;
+       font-family: sans-serif;
+       font-size: 9px;
+       line-height: 17px;
+       font-weight: bold;
+       margin-top: 1px;
+       margin-left: 7px;
+       -webkit-border-radius: 10px;
+       border-radius: 10px;
+}
+
+#adminmenu li .awaiting-mod span,
+#adminmenu li span.update-plugins span,
+#sidemenu li a span.update-plugins span {
+       display: block;
+       padding: 0 6px;
+}
+
+#adminmenu li span.count-0,
+#sidemenu li a .count-0 {
+       display: none;
+}
+
+#collapse-menu {
        font-size: 12px;
        font-size: 12px;
-       font-family: Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
-       font-style: italic;
+       line-height: 34px;
 }
 
 }
 
-.tablenav .actions {
-       padding: 2px 8px 0 0;
+.folded #collapse-menu span {
+       display: none;
 }
 
 }
 
-.tablenav .delete {
-       margin-right: 20px;
+#collapse-button,
+#collapse-button div {
+       width: 15px;
+       height: 15px;
 }
 
 }
 
-.view-switch {
-       float: right;
-       margin: 6px 8px 0;
+#collapse-button {
+       float: left;
+       margin: 8px 6px;
+       border-width: 1px;
+       border-style: solid;
+       -webkit-border-radius: 10px;
+       border-radius: 10px;
 }
 
 }
 
-.view-switch a {
+
+/* List table styles */
+.post-com-count-wrapper {
+       min-width: 22px;
+       font-family: sans-serif;
+}
+
+.post-com-count {
+       height: 1.3em;
+       line-height: 1.1em;
+       display: block;
        text-decoration: none;
        text-decoration: none;
+       padding: 0 0 6px;
+       cursor: pointer;
+       background-position: center -80px;
+       background-repeat: no-repeat;
 }
 
 }
 
-.filter {
-       float: left;
-       margin: -5px 0 0 10px;
+.post-com-count span {
+       font-size: 11px;
+       font-weight: bold;
+       height: 1.4em;
+       line-height: 1.4em;
+       min-width: 0.7em;
+       padding: 0 6px;
+       display: inline-block;
+       -webkit-border-radius: 5px;
+       border-radius: 5px;
 }
 
 }
 
-.filter .subsubsub {
-       margin-left: -10px;
-       margin-top: 13px;
+strong .post-com-count {
+       background-position: center -55px;
 }
 }
-.screen-per-page {
-       width: 3em;
+
+.post-com-count:hover {
+       background-position: center -3px;
 }
 
 }
 
-#posts-filter fieldset {
+.column-response .post-com-count {
        float: left;
        float: left;
-       margin: 0 1.5ex 1em 0;
-       padding: 0;
+       margin-right: 5px;
+       text-align: center;
 }
 
 }
 
-#posts-filter fieldset legend {
-       padding: 0 0 .2em 1px;
+.response-links {
+       float: left;
 }
 
 }
 
-span.post-state-format {
-       font-weight: normal;
+#the-comment-list .attachment-80x60 {
+       padding: 4px 8px;
 }
 
 
 /*------------------------------------------------------------------------------
 }
 
 
 /*------------------------------------------------------------------------------
-  10.1 - Inline Editing
+  8.0 - Layout Blocks
 ------------------------------------------------------------------------------*/
 
 ------------------------------------------------------------------------------*/
 
-/*
-.quick-edit* is for Quick Edit
-.bulk-edit* is for Bulk Edit
-.inline-edit* is for everything
-*/
+body.admin-bar #wpcontent,
+body.admin-bar #adminmenu {
+       padding-top: 28px;
+}
 
 
-/*     Layout */
-tr.inline-edit-row td {
-       padding: 0 0.5em;
+.narrow {
+       width: 70%;
+       margin-bottom: 40px;
 }
 
 }
 
-#wpbody-content .inline-edit-row fieldset {
-       font-size: 12px;
-       float: left;
-       margin: 0;
-       padding: 0;
-       width: 100%;
+.narrow p {
+       line-height: 150%;
+}
+
+.widefat th,
+.widefat td {
+       overflow: hidden;
+}
+
+.widefat th {
+       font-weight: normal;
+}
+
+.widefat td p {
+       margin: 2px 0 0.8em;
+}
+
+.widefat .column-comment p {
+       margin: 0.6em 0;
+}
+
+.postbox-container {
+       float: left;
+}
+
+.postbox-container .meta-box-sortables {
+       min-height: 350px;
+}
+
+.postbox-container .meta-box-sortables.empty-container,
+#side-sortables.empty-container {
+       border: 3px dashed #CCCCCC;
+       height: 350px;
+}
+
+.postbox .hndle {
+       cursor: move;
+       -webkit-border-top-left-radius: 3px;
+       -webkit-border-top-right-radius: 3px;
+       border-top-left-radius: 3px;
+       border-top-right-radius: 3px;
+}
+
+.postbox.closed .hndle {
+       -webkit-border-radius: 3px;
+       border-radius: 3px;
+}
+
+.hndle a {
+       font-size: 11px;
+       font-weight: normal;
+}
+
+.postbox .handlediv {
+       float: right;
+       width: 27px;
+       height: 30px;
+       cursor: pointer;
+}
+
+.sortable-placeholder {
+       border-width: 1px;
+       border-style: dashed;
+       margin-bottom: 20px;
+}
+
+.widget,
+.postbox,
+.stuffbox {
+       margin-bottom: 20px;
+       padding: 0;
+       border-width: 1px;
+       border-style: solid;
+       line-height: 1;
+}
+
+.widget .widget-top,
+.postbox h3,
+.stuffbox h3 {
+       margin-top: 1px;
+       border-bottom-width: 1px;
+       border-bottom-style: solid;
+       cursor: move;
+       -webkit-user-select: none;
+       -moz-user-select: none;
+       user-select: none;
+}
+
+.postbox .inside,
+.stuffbox .inside {
+       padding: 0 10px;
+       line-height: 1.4em;
+}
+
+.postbox .inside {
+       margin: 10px 0;
+       position: relative;
+}
+
+.postbox.closed h3 {
+       border: none;
+       -moz-box-shadow: none;
+       -webkit-box-shadow: none;
+       box-shadow: none;
+}
+
+.postbox table.form-table {
+       margin-bottom: 0;
+}
+
+.temp-border {
+       border: 1px dotted #ccc;
+}
+
+.columns-prefs label {
+       padding: 0 5px;
+}
+
+
+/*------------------------------------------------------------------------------
+  9.0 - Dashboard
+------------------------------------------------------------------------------*/
+
+#wpbody-content .metabox-holder {
+       padding-top: 10px;
+}
+
+#dashboard-widgets .meta-box-sortables {
+       margin: 0 8px;
+}
+
+#dashboard_recent_comments div.undo {
+       border-top-style: solid;
+       border-top-width: 1px;
+       margin: 0 -10px;
+       padding: 3px 8px;
+       font-size: 11px;
+}
+
+#the-comment-list td.comment p.comment-author {
+       margin-top: 0;
+       margin-left: 0;
+}
+
+#the-comment-list p.comment-author img {
+       float: left;
+       margin-right: 8px;
+}
+
+#the-comment-list p.comment-author strong a {
+       border: none;
+}
+
+#the-comment-list td {
+       vertical-align: top;
+}
+
+#the-comment-list td.comment {
+       word-wrap: break-word;
+}
+
+/* Welcome Panel */
+.welcome-panel {
+       margin: 20px 8px;
+       padding: 30px 10px 20px;
+       border-width: 1px 0;
+       border-style: solid;
+       position: relative;
+       line-height: 1.6em;
+       overflow: auto;
+}
+
+.welcome-panel h3 {
+       font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", sans-serif;
+       font-size: 32px;
+       font-weight: normal;
+       line-height: 1.2;
+       margin: 0.1em 0 0.8em;
+}
+.welcome-panel h4 {
+       font-size: 14px;
+}
+
+.welcome-panel .welcome-panel-close {
+       position: absolute;
+       top: 0;
+       right: 10px;
+       padding: 8px 3px;
+       font-size: 13px;
+       text-decoration: none;
+}
+
+.welcome-panel .welcome-panel-close:before {
+    background: url('../images/xit.gif') 0 17% no-repeat;
+    content: ' ';
+    height: 100%;
+    width: 10px;
+    left: -12px;
+    position: absolute;
+}
+
+.welcome-panel .welcome-panel-close:hover:before {
+    background-position: 100% 17%;
+}
+
+.welcome-panel .wp-badge {
+       float: left;
+       margin-bottom: 20px;
+}
+
+.welcome-panel-content {
+       max-width: 1500px;
+}
+
+.welcome-panel-content .about-description,
+.welcome-panel h3 {
+       margin-left: 190px;
+}
+
+.welcome-panel p.welcome-panel-dismiss {
+       clear: both;
+       padding: 1em 0 0 0;
+}
+
+.welcome-panel .welcome-panel-column-container {
+       clear: both;
+       overflow: hidden;
+       position: relative;
+       padding-left: 25px;
+}
+
+.welcome-panel .welcome-panel-column {
+       margin: 0 5% 0 -25px;
+       padding-left: 25px;
+       width: 30%;
+       min-width: 200px;
+       float: left;
+}
+
+.welcome-panel .welcome-panel-column.welcome-panel-last {
+       margin-right: 0;
+}
+
+.welcome-panel h4 .icon16 {
+       margin-left: -32px;
+}
+
+.welcome-panel .welcome-panel-column ul {
+       margin: 1.6em 1em 1em 1.3em;
+}
+
+.welcome-panel .welcome-panel-column li {
+       list-style-type: disc;
+       padding-left: 2px;
+}
+
+
+/*------------------------------------------------------------------------------
+  10.0 - List Posts (/Pages/etc)
+------------------------------------------------------------------------------*/
+
+table.fixed {
+       table-layout: fixed;
+}
+
+.fixed .column-rating,
+.fixed .column-visible {
+       width: 8%;
+}
+
+.fixed .column-date,
+.fixed .column-parent,
+.fixed .column-links {
+       width: 10%;
+}
+
+.fixed .column-response,
+.fixed .column-author,
+.fixed .column-categories,
+.fixed .column-tags,
+.fixed .column-rel,
+.fixed .column-role {
+       width: 15%;
+}
+
+.fixed .column-comments {
+       width: 4em;
+       padding: 8px 0;
+       text-align: left;
+}
+
+.fixed .column-comments .vers {
+       padding-left: 3px;
+}
+
+.fixed .column-comments a {
+       float: left;
+}
+
+.fixed .column-slug {
+       width: 25%;
+}
+
+.fixed .column-posts {
+       width: 10%;
+}
+
+.fixed .column-icon {
+       width: 80px;
+}
+
+#commentsdiv .fixed .column-author,
+#comments-form .fixed .column-author {
+       width: 20%;
+}
+
+#commentsdiv.postbox .inside {
+       margin: 0;
+       padding: 0;
+}
+
+#commentsdiv.postbox .inside .row-actions {
+       line-height:18px;
+}
+
+#commentsdiv.postbox .inside td {
+       padding:1em 10px;
+}
+
+#commentsdiv.postbox .inside .column-author {
+       width:33%;
+}
+
+#commentsdiv.postbox .inside p {
+       margin:6px 10px 8px;
+}
+
+#commentsdiv.postbox .column-comment p {
+       margin:0.6em 0;
+}
+
+#commentsdiv.postbox #replyrow td {
+       padding:0;
+}
+
+.sorting-indicator {
+       display: none;
+       width: 7px;
+       height: 4px;
+       margin-top: 8px;
+       margin-left: 7px;
+       background-image: url(../images/sort.gif);
+       background-repeat: no-repeat;
+}
+
+.fixed .column-comments .sorting-indicator {
+       margin-top: 3px;
+}
+
+.widefat th.sortable,
+.widefat th.sorted {
+       padding: 0;
+}
+
+th.sortable a,
+th.sorted a {
+       display: block;
+       overflow: hidden;
+       padding: 7px 7px 8px;
+}
+
+.fixed .column-comments.sortable a,
+.fixed .column-comments.sorted a {
+       padding: 8px 0;
+}
+
+th.sortable a span,
+th.sorted a span {
+       float: left;
+       cursor: pointer;
+}
+
+th.sorted.asc .sorting-indicator,
+th.desc:hover span.sorting-indicator {
+       display: block;
+       background-position: 0 0;
+}
+
+th.sorted.desc .sorting-indicator,
+th.asc:hover span.sorting-indicator {
+       display: block;
+       background-position: -7px 0;
+}
+
+/* Bulk Actions */
+.tablenav-pages a {
+       border-bottom-style: solid;
+       border-bottom-width: 2px;
+       font-weight: bold;
+       margin-right: 1px;
+       padding: 0 2px;
+}
+.tablenav-pages .current-page {
+       text-align: center;
+}
+.tablenav-pages .next-page {
+       margin-left: 2px;
+}
+
+.tablenav a.button-secondary {
+       display: block;
+       margin: 3px 8px 0 0;
+}
+
+.tablenav {
+       clear: both;
+       height: 30px;
+       margin: 6px 0 4px;
+       vertical-align: middle;
+}
+
+.tablenav.themes {
+       max-width: 98%;
+}
+
+.tablenav .tablenav-pages {
+       float: right;
+       display: block;
+       cursor: default;
+       height: 30px;
+       line-height: 30px;
+       font-size: 12px;
+}
+
+.tablenav .no-pages,
+.tablenav .one-page .pagination-links {
+       display: none;
+}
+
+.tablenav .tablenav-pages a,
+.tablenav-pages span.current  {
+       text-decoration: none;
+       padding: 3px 6px;
+}
+
+.tablenav .tablenav-pages a.disabled:hover ,
+.tablenav .tablenav-pages a.disabled:active {
+       cursor: default;
+}
+
+.tablenav .displaying-num {
+       margin-right: 10px;
+       font-size: 12px;
+       font-style: italic;
+}
+
+.tablenav .actions {
+       padding: 2px 8px 0 0;
+}
+
+.tablenav .delete {
+       margin-right: 20px;
+}
+
+.view-switch {
+       float: right;
+       margin: 6px 8px 0;
+}
+
+.view-switch a {
+       text-decoration: none;
+}
+
+.filter {
+       float: left;
+       margin: -5px 0 0 10px;
+}
+
+.filter .subsubsub {
+       margin-left: -10px;
+       margin-top: 13px;
+}
+.screen-per-page {
+       width: 3em;
+}
+
+#posts-filter fieldset {
+       float: left;
+       margin: 0 1.5ex 1em 0;
+       padding: 0;
+}
+
+#posts-filter fieldset legend {
+       padding: 0 0 .2em 1px;
+}
+
+span.post-state-format {
+       font-weight: normal;
+}
+
+
+/*------------------------------------------------------------------------------
+  10.1 - Inline Editing
+------------------------------------------------------------------------------*/
+
+/*
+.quick-edit* is for Quick Edit
+.bulk-edit* is for Bulk Edit
+.inline-edit* is for everything
+*/
+
+/*     Layout */
+
+#wpbody-content .inline-edit-row fieldset {
+       font-size: 12px;
+       float: left;
+       margin: 0;
+       padding: 0;
+       width: 100%;
+}
+
+tr.inline-edit-row td,
+#wpbody-content .inline-edit-row fieldset .inline-edit-col {
+       padding: 0 0.5em;
+}
+
+#wpbody-content .quick-edit-row-page fieldset.inline-edit-col-right .inline-edit-col {
+       border-width: 0 0 0 1px;
+       border-style: none none none solid;
+}
+
+#wpbody-content .quick-edit-row-post .inline-edit-col-left {
+       width: 40%;
+}
+
+#wpbody-content .quick-edit-row-post .inline-edit-col-right {
+       width: 39%;
+}
+
+#wpbody-content .inline-edit-row-post .inline-edit-col-center {
+       width: 20%;
+}
+
+#wpbody-content .quick-edit-row-page .inline-edit-col-left {
+       width: 50%;
+}
+
+#wpbody-content .quick-edit-row-page .inline-edit-col-right,
+#wpbody-content .bulk-edit-row-post .inline-edit-col-right {
+       width: 49%;
+}
+
+#wpbody-content .bulk-edit-row .inline-edit-col-left {
+       width: 30%;
+}
+
+#wpbody-content .bulk-edit-row-page .inline-edit-col-right {
+       width: 69%;
+}
+
+#wpbody-content .bulk-edit-row .inline-edit-col-bottom {
+       float: right;
+       width: 69%;
+}
+
+#wpbody-content .inline-edit-row-page .inline-edit-col-right {
+       margin-top: 27px;
+}
+
+.inline-edit-row fieldset .inline-edit-group {
+       clear: both;
+}
+
+.inline-edit-row fieldset .inline-edit-group:after {
+       content: ".";
+       display: block;
+       height: 0;
+       clear: both;
+       visibility: hidden;
+}
+
+.inline-edit-row p.submit {
+       clear: both;
+       padding: 0.5em;
+       margin: 0.5em 0 0;
+}
+
+.inline-edit-row span.error {
+       line-height: 22px;
+       margin: 0 15px;
+       padding: 3px 5px;
+}
+
+/*     Positioning */
+.inline-edit-row h4 {
+       margin: .2em 0;
+       padding: 0;
+       line-height: 23px;
+}
+.inline-edit-row fieldset span.title,
+.inline-edit-row fieldset span.checkbox-title {
+       margin: 0;
+       padding: 0;
+       line-height: 27px;
+}
+
+.inline-edit-row fieldset label,
+.inline-edit-row fieldset span.inline-edit-categories-label {
+       display: block;
+       margin: .2em 0;
+}
+
+.inline-edit-row fieldset label.inline-edit-tags {
+       margin-top: 0;
+}
+
+.inline-edit-row fieldset label.inline-edit-tags span.title {
+       margin: .2em 0;
+}
+
+.inline-edit-row fieldset label span.title {
+       display: block;
+       float: left;
+       width: 5em;
+}
+
+.inline-edit-row fieldset label span.input-text-wrap {
+       display: block;
+       margin-left: 5em;
+}
+
+.quick-edit-row-post fieldset.inline-edit-col-right label span.title {
+       width: auto;
+       padding-right: 0.5em;
+}
+
+.inline-edit-row .input-text-wrap input[type=text] {
+       width: 100%;
+}
+
+.inline-edit-row fieldset label input[type=checkbox] {
+       vertical-align: text-bottom;
+}
+
+.inline-edit-row fieldset label textarea {
+       width: 100%;
+       height: 4em;
+}
+
+#wpbody-content .bulk-edit-row fieldset .inline-edit-group label {
+       max-width: 50%;
+}
+
+#wpbody-content .quick-edit-row fieldset .inline-edit-group label.alignleft:first-child {
+       margin-right: 0.5em
+}
+
+.inline-edit-col-right .input-text-wrap input.inline-edit-menu-order-input {
+       width: 6em;
+}
+
+/*     Styling */
+.inline-edit-row h4 {
+       text-transform: uppercase;
+}
+
+.inline-edit-row fieldset span.title,
+.inline-edit-row fieldset span.checkbox-title {
+       font-style: italic;
+       line-height: 1.8em;
+}
+
+/*     Specific Elements */
+.inline-edit-row fieldset input[type="text"],
+.inline-edit-row fieldset textarea {
+       border-style: solid;
+       border-width: 1px;
+}
+
+.inline-edit-row fieldset .inline-edit-date {
+       float: left;
+}
+
+.inline-edit-row fieldset input[name=jj],
+.inline-edit-row fieldset input[name=hh],
+.inline-edit-row fieldset input[name=mn] {
+       font-size: 12px;
+       width: 2.1em;
+}
+
+.inline-edit-row fieldset input[name=aa] {
+       font-size: 12px;
+       width: 3.5em;
+}
+
+.inline-edit-row fieldset label input.inline-edit-password-input {
+       width: 8em;
+}
+
+.inline-edit-row .catshow,
+.inline-edit-row .cathide {
+       cursor: pointer;
+}
+
+ul.cat-checklist {
+       height: 12em;
+       border-style: solid;
+       border-width: 1px;
+       overflow-y: scroll;
+       padding: 0 5px;
+       margin: 0;
+}
+
+#bulk-titles {
+       display: block;
+       height: 12em;
+       border-style: solid;
+       border-width: 1px;
+       overflow-y: scroll;
+       padding: 0 5px;
+       margin: 0 0 5px;
+}
+
+.inline-edit-row fieldset ul.cat-checklist li,
+.inline-edit-row fieldset ul.cat-checklist input {
+       margin: 0;
+}
+
+.inline-edit-row fieldset ul.cat-checklist label,
+.inline-edit-row .catshow,
+.inline-edit-row .cathide,
+.inline-edit-row #bulk-titles div {
+       font-family: sans-serif;
+       font-style: normal;
+       font-size: 11px;
+}
+
+table .inline-edit-row fieldset ul.cat-hover {
+       height: auto;
+       max-height: 30em;
+       overflow-y: auto;
+       position: absolute;
+}
+
+.inline-edit-row fieldset label input.inline-edit-menu-order-input {
+       width: 3em;
+}
+
+.inline-edit-row fieldset label input.inline-edit-slug-input {
+       width: 75%;
+}
+
+.quick-edit-row-post fieldset label.inline-edit-status {
+       float: left;
+}
+
+#bulk-titles {
+       line-height: 140%;
+}
+#bulk-titles div {
+       margin: 0.2em 0.3em;
+}
+
+#bulk-titles div a {
+       cursor: pointer;
+       display: block;
+       float: left;
+       height: 10px;
+       margin: 3px 3px 0 -2px;
+       overflow: hidden;
+       position: relative;
+       text-indent: -9999px;
+       width: 10px;
+}
+
+
+/*------------------------------------------------------------------------------
+  11.0 - Write/Edit Post Screen
+------------------------------------------------------------------------------*/
+
+#titlediv {
+       position: relative;
+       margin-bottom: 20px;
+}
+#titlediv label { cursor: text; }
+
+#titlediv div.inside {
+       margin: 0;
+}
+
+#poststuff #titlewrap {
+       border: 0;
+       padding: 0;
+}
+
+#titlediv #title {
+       padding: 3px 8px;
+       font-size: 1.7em;
+       line-height: 100%;
+       width: 100%;
+       outline: none;
+}
+
+#titlediv #title-prompt-text,
+#wp-fullscreen-title-prompt-text {
+       color: #bbb;
+       position: absolute;
+       font-size: 1.7em;
+       padding: 8px 10px;
+}
+
+#wp-fullscreen-title-prompt-text {
+       left: 0;
+       padding: 11px;
+}
+
+#poststuff .inside-submitbox,
+#side-sortables .inside-submitbox {
+       margin: 0 3px;
+       font-size: 11px;
+}
+
+input#link_description,
+input#link_url {
+       width: 98%;
+}
+
+#pending {
+       background: 0 none;
+       border: 0 none;
+       padding: 0;
+       font-size: 11px;
+       margin-top: -1px;
+}
+
+#edit-slug-box {
+       height: 1em;
+       margin-top: 8px;
+       padding: 0 10px;
+}
+
+#editable-post-name-full {
+       display: none;
+}
+
+#editable-post-name input {
+       width: 16em;
+}
+
+.postarea h3 label {
+       float: left;
+}
+
+#submitpost #ajax-loading,
+#submitpost .ajax-loading {
+       vertical-align: middle;
+}
+
+#wpcontent .ajax-loading {
+       visibility: hidden;
+}
+
+.submitbox .submit {
+       text-align: left;
+       padding: 12px 10px 10px;
+       font-size: 11px;
+}
+
+.submitbox .submitdelete {
+       text-decoration: none;
+       padding: 1px 2px;
+}
+
+.submitbox .submitdelete,
+.submitbox .submit a:hover {
+       border-bottom-width: 1px;
+       border-bottom-style: solid;
+}
+
+.submitbox .submit input {
+       margin-bottom: 8px;
+       margin-right: 4px;
+       padding: 6px;
+}
+
+.inside-submitbox #post_status {
+       margin: 2px 0 2px -2px;
+}
+
+#post-status-select, #post-format {
+       line-height: 2.5em;
+       margin-top: 3px;
+}
+
+/* Post Screen */
+#post-body #normal-sortables {
+       min-height: 50px;
+}
+
+.postbox {
+       position: relative;
+       min-width: 255px;
+}
+
+#trackback_url {
+       width: 99%;
+}
+
+#normal-sortables .postbox .submit {
+       background: transparent none;
+       border: 0 none;
+       float: right;
+       padding: 0 12px;
+       margin:0;
+}
+
+.category-add input[type="text"],
+.category-add select {
+       width: 100%;
+       max-width: 260px;
+}
+
+#post-body ul.category-tabs,
+#post-body ul.add-menu-item-tabs {
+       float: left;
+       width: 120px;
+       text-align: right;
+       /* Negative margin for the sake of those without JS: all tabs display */
+       margin: 0 -120px 0 5px;
+       padding: 0;
+}
+
+#post-body ul.category-tabs li,
+#post-body ul.add-menu-item-tabs li {
+       padding: 8px;
+}
+
+#post-body ul.category-tabs li.tabs,
+#post-body ul.add-menu-item-tabs li.tabs {
+       -webkit-border-top-left-radius: 3px;
+       -webkit-border-bottom-left-radius: 3px;
+       border-top-left-radius: 3px;
+       border-bottom-left-radius: 3px;
+}
+
+.wp-tab-panel,
+.categorydiv div.tabs-panel,
+.customlinkdiv div.tabs-panel,
+.posttypediv div.tabs-panel,
+.taxonomydiv div.tabs-panel,
+#linkcategorydiv div.tabs-panel {
+       height: 200px;
+       overflow: auto;
+       padding: 0.5em 0.9em;
+       border-style: solid;
+       border-width: 1px;
+}
+
+.nav-menus-php .customlinkdiv div.tabs-panel,
+.nav-menus-php .posttypediv div.tabs-panel,
+.nav-menus-php .taxonomydiv div.tabs-panel {
+       height: auto;
+       max-height: 205px;
+}
+
+div.tabs-panel-active {
+       display:block;
+}
+
+div.tabs-panel-inactive {
+       display:none;
+}
+
+#post-body .categorydiv div.tabs-panel,
+.taxonomy div.tabs-panel,
+#post-body #linkcategorydiv div.tabs-panel {
+       margin: 0 5px 0 125px;
+}
+
+.press-this #side-sortables .category-tabs li,
+.has-right-sidebar #side-sortables .category-tabs li,
+#side-sortables .add-menu-item-tabs li,
+.wp-tab-bar li {
+       display: inline;
+       line-height: 1.35em;
+}
+
+.no-js #side-sortables .category-tabs li.hide-if-no-js {
+       display: none;
+}
+
+#side-sortables .category-tabs a,
+#side-sortables .add-menu-item-tabs a,
+.wp-tab-bar a {
+       text-decoration: none;
+}
+
+#side-sortables .category-tabs {
+       margin: 8px 0 3px;
+}
+
+#category-adder h4 {
+       margin: 10px 0;
+}
+
+#side-sortables .add-menu-item-tabs,
+.wp-tab-bar {
+       margin-bottom: 3px;
+}
+
+.categorydiv ul,
+.customlinkdiv ul,
+.posttypediv ul,
+.taxonomydiv ul,
+#linkcategorydiv ul {
+       list-style: none;
+       padding: 0;
+       margin: 0;
+}
+
+#normal-sortables .postbox #replyrow .submit {
+       float: none;
+       margin: 0;
+       padding: 3px 7px;
+}
+
+#side-sortables .submitbox .submit input,
+#side-sortables .submitbox .submit .preview,
+#side-sortables .submitbox .submit a.preview:hover {
+       border: 0 none;
+}
+
+#side-sortables .inside-submitbox .insidebox,
+.stuffbox .insidebox {
+       margin: 11px 0;
+}
+
+#side-sortables .comments-box,
+#normal-sortables .comments-box {
+       border: 0 none;
+}
+
+ul.category-tabs,
+ul.add-menu-item-tabs,
+ul.wp-tab-bar {
+       margin-top: 12px;
+}
+
+#side-sortables .comments-box thead th,
+#normal-sortables .comments-box thead th {
+       background: transparent;
+       padding: 0 7px 4px;
+       font-style: italic;
+}
+
+ul.category-tabs li.tabs,
+ul.add-menu-item-tabs li.tabs,
+.wp-tab-active {
+       border-style: solid solid none;
+       border-width: 1px 1px 0;
+}
+
+#commentsdiv img.waiting {
+       padding-left: 5px;
+}
+
+#post-body .category-tabs li.tabs,
+#post-body .add-menu-item-tabs li.tabs {
+       border-style: solid none solid solid;
+       border-width: 1px 0 1px 1px;
+       margin-right: -1px;
+}
+
+ul.category-tabs li,
+ul.add-menu-item-tabs li,
+ul.wp-tab-bar li {
+       padding: 3px 5px 5px;
+       -webkit-border-top-left-radius: 3px;
+       -webkit-border-top-right-radius: 3px;
+       border-top-left-radius: 3px;
+       border-top-right-radius: 3px;
+}
+
+/* positioning etc. */
+form#tags-filter {
+       position: relative;
+}
+
+.screen-per-page {
+       width: 3em;
+}
+
+#posts-filter fieldset {
+       float: left;
+       margin: 0 1.5ex 1em 0;
+       padding: 0;
+}
+
+#posts-filter fieldset legend {
+       padding: 0 0 .2em 1px;
+}
+
+/* Edit posts */
+td.post-title strong, td.plugin-title strong {
+       display: block;
+       margin-bottom: .2em;
+}
+
+td.post-title p, td.plugin-title p {
+       margin: 6px 0;
+}
+
+/* Global classes */
+.wp-hidden-children .wp-hidden-child,
+.ui-tabs-hide {
+       display: none;
+}
+
+.commentlist .avatar {
+       vertical-align: text-top;
+}
+
+#post-body .tagsdiv #newtag {
+       margin-right: 5px;
+       width: 16em;
+}
+
+#side-sortables input#post_password {
+       width: 94%
+}
+
+#side-sortables .tagsdiv #newtag {
+       width: 68%;
+}
+
+#post-status-info {
+       border-width: 0 1px 1px;
+       border-style: none solid solid;
+       width: 100%;
+       -webkit-border-bottom-left-radius: 3px;
+       -webkit-border-bottom-right-radius: 3px;
+       border-bottom-left-radius: 3px;
+       border-bottom-right-radius: 3px;
+}
+
+#post-status-info td {
+       font-size: 12px;
+}
+
+.autosave-info {
+       padding: 2px 15px;
+       text-align: right;
+}
+
+#editorcontent #post-status-info {
+       border: none;
+}
+
+#post-body .wp_themeSkin .mceStatusbar a.mceResize {
+       display: block;
+       background: transparent url(../images/resize.gif) no-repeat scroll right bottom;
+       width: 12px;
+       cursor: se-resize;
+       margin: 0 2px;
+       position: relative;
+       top: -2px;
+}
+
+#post-body .postarea .wp_themeSkin .mceStatusbar a.mceResize {
+       top: 20px;
+}
+
+#wp-word-count {
+       display: block;
+       padding: 2px 10px;
+}
+
+#timestampdiv select {
+       height: 20px;
+       line-height: 14px;
+       padding: 0;
+       vertical-align: top;
+}
+
+#aa, #jj, #hh, #mn {
+       padding: 1px;
+       font-size: 12px;
+}
+
+#jj, #hh, #mn {
+       width: 2em;
+}
+
+#aa {
+       width: 3.4em;
+}
+
+.curtime #timestamp {
+       background-repeat: no-repeat;
+       background-position: left top;
+       padding-left: 18px;
+}
+
+#timestampdiv {
+       padding-top: 5px;
+       line-height: 23px;
+}
+
+#timestampdiv p {
+       margin: 8px 0 6px;
+}
+
+#timestampdiv input {
+       border-width: 1px;
+       border-style: solid;
+}
+
+
+/*------------------------------------------------------------------------------
+  11.1 - Custom Fields
+------------------------------------------------------------------------------*/
+
+#postcustomstuff .updatemeta,
+#postcustomstuff .deletemeta {
+       margin: auto;
+}
+
+#postcustomstuff thead th {
+       padding: 5px 8px 8px;
+}
+
+#postcustom #postcustomstuff .submit {
+       border: 0 none;
+       float: none;
+       padding: 5px 8px;
+}
+
+#side-sortables #postcustom #postcustomstuff .submit {
+       padding: 0 5px;
+}
+
+#side-sortables #postcustom #postcustomstuff td.left input {
+       margin: 3px 3px 0;
+}
+
+#side-sortables #postcustom #postcustomstuff #the-list textarea {
+       height: 85px;
+       margin: 3px;
+}
+
+#postcustomstuff table {
+       margin: 0;
+       width: 100%;
+       border-width: 1px;
+       border-style: solid;
+       border-spacing: 0;
+}
+
+#postcustomstuff table input,
+#postcustomstuff table select,
+#postcustomstuff table textarea {
+       width: 95%;
+       margin: 8px 0 8px 8px;
+}
+
+#postcustomstuff th.left,
+#postcustomstuff td.left {
+       width: 38%;
+}
+
+#postcustomstuff #newmeta .submit {
+       padding: 0 8px;
+}
+
+#postcustomstuff .submit input,
+#postcustomstuff table #addmetasub {
+       width: auto;
+}
+
+#postcustomstuff #newmetaleft {
+       vertical-align: top;
+}
+
+#postcustomstuff #newmetaleft a {
+       padding: 0 10px;
+       text-decoration: none;
+}
+
+
+/*------------------------------------------------------------------------------
+  11.2 - Post Revisions
+------------------------------------------------------------------------------*/
+
+table.diff {
+       width: 100%;
+}
+
+table.diff col.content {
+       width: 50%;
+}
+
+table.diff tr {
+       background-color: transparent;
+}
+
+table.diff td, table.diff th {
+       padding: .5em;
+       font-family: Consolas, Monaco, monospace;
+       border: none;
+}
+
+table.diff .diff-deletedline del, table.diff .diff-addedline ins {
+       text-decoration: none;
+}
+
+
+/*------------------------------------------------------------------------------
+  12.0 - Categories
+------------------------------------------------------------------------------*/
+
+.category-adder {
+       margin-left: 120px;
+       padding: 4px 0;
+}
+
+.category-adder h4 {
+       margin: 0 0 8px;
+}
+
+#side-sortables .category-adder {
+       margin: 0;
+}
+
+#post-body ul.category-tabs,
+#post-body ul.add-menu-item-tabs {
+       float: left;
+       width: 120px;
+       text-align: right;
+       /* Negative margin for the sake of those without JS: all tabs display */
+       margin: 0 -120px 0 5px;
+       padding: 0;
+}
+
+#post-body ul.category-tabs li,
+#post-body ul.add-menu-item-tabs li {
+       padding: 8px;
+}
+
+#post-body ul.category-tabs li.tabs,
+#post-body ul.add-menu-item-tabs li.tabs {
+       -webkit-border-top-left-radius: 3px;
+       -webkit-border-bottom-left-radius: 3px;
+       border-top-left-radius: 3px;
+       border-bottom-left-radius: 3px;
+}
+
+.categorydiv div.tabs-panel,
+.customlinkdiv div.tabs-panel,
+.posttypediv div.tabs-panel,
+.taxonomydiv div.tabs-panel,
+#linkcategorydiv div.tabs-panel {
+       height: 200px;
+       overflow: auto;
+       padding: 0.5em 0.9em;
+       border-style: solid;
+       border-width: 1px;
+}
+
+.nav-menus-php .customlinkdiv div.tabs-panel,
+.nav-menus-php .posttypediv div.tabs-panel,
+.nav-menus-php .taxonomydiv div.tabs-panel {
+       height: auto;
+       max-height: 205px;
+}
+
+div.tabs-panel-active {
+       display:block;
+}
+
+div.tabs-panel-inactive {
+       display:none;
+}
+
+#post-body .categorydiv div.tabs-panel,
+.taxonomy div.tabs-panel,
+#post-body #linkcategorydiv div.tabs-panel {
+       margin: 0 5px 0 125px;
+}
+
+.categorydiv ul,
+.customlinkdiv ul,
+.posttypediv ul,
+.taxonomydiv ul,
+#linkcategorydiv ul {
+       list-style: none;
+       padding: 0;
+       margin: 0;
+}
+
+#front-page-warning,
+#front-static-pages ul,
+ul.export-filters,
+.inline-editor ul.cat-checklist ul,
+.categorydiv ul.categorychecklist ul,
+.customlinkdiv ul.categorychecklist ul,
+.posttypediv ul.categorychecklist ul,
+.taxonomydiv ul.categorychecklist ul,
+#linkcategorydiv ul.categorychecklist ul {
+       margin-left: 18px;
+}
+
+ul.categorychecklist li {
+       margin: 0;
+       padding: 0;
+       line-height: 19px;
+       word-wrap: break-word;
+}
+
+.categorydiv .tabs-panel,
+.customlinkdiv .tabs-panel,
+.posttypediv .tabs-panel,
+.taxonomydiv .tabs-panel {
+       border-width: 3px;
+       border-style: solid;
+}
+
+.form-wrap p,
+.form-wrap label {
+       font-size: 11px;
+}
+
+.form-wrap label {
+       display: block;
+       padding: 2px;
+       font-size: 12px;
+}
+
+.form-field input,
+.form-field textarea {
+       border-style: solid;
+       border-width: 1px;
+       width: 95%;
+}
+
+p.description,
+.form-wrap p {
+       margin: 2px 0 5px;
+}
+
+p.help,
+p.description,
+span.description,
+.form-wrap p {
+       font-size: 12px;
+       font-style: italic;
+       font-family: sans-serif;
+}
+
+.form-wrap .form-field {
+       margin: 0 0 10px;
+       padding: 8px;
+}
+
+.col-wrap h3 {
+       margin: 12px 0;
+       font-size: 1.1em;
+}
+
+.col-wrap p.submit {
+       margin-top: -10px;
+}
+
+
+/*------------------------------------------------------------------------------
+  13.0 - Tags
+------------------------------------------------------------------------------*/
+
+#poststuff .taghint {
+       color: #aaa;
+       margin: 15px 0 -24px 12px;
+}
+
+#poststuff .tagsdiv .howto {
+       margin: 0 0 6px 8px;
+}
+
+.ajaxtag .newtag {
+       position: relative;
+}
+
+.tagsdiv .newtag {
+       width: 180px;
+}
+
+.tagsdiv .the-tags {
+       display: block;
+       height: 60px;
+       margin: 0 auto;
+       overflow: auto;
+       width: 260px;
+}
+
+#post-body-content .tagsdiv .the-tags {
+       margin: 0 5px;
+}
+
+p.popular-tags {
+       -webkit-border-radius: 8px;
+       border-radius: 8px;
+       border-width: 1px;
+       border-style: solid;
+       line-height: 2em;
+       max-width: 1000px;
+       padding: 8px 12px 12px;
+       text-align: justify;
+}
+
+p.popular-tags a {
+       padding: 0 3px;
+}
+
+.tagcloud {
+       width: 97%;
+       margin: 0 0 40px;
+       text-align: justify;
+}
+
+.tagcloud h3 {
+       margin: 2px 0 12px;
+}
+
+.ac_results {
+       padding: 0;
+       margin: 0;
+       list-style: none;
+       position: absolute;
+       z-index: 10000;
+       display: none;
+       border-width: 1px;
+       border-style: solid;
+}
+
+.ac_results li {
+       padding: 2px 5px;
+       white-space: nowrap;
+       text-align: left;
+}
+
+.ac_over {
+       cursor: pointer;
+}
+
+.ac_match {
+       text-decoration: underline;
+}
+
+
+/*------------------------------------------------------------------------------
+  14.0 - Media Screen
+------------------------------------------------------------------------------*/
+
+.media-item .describe {
+       border-collapse: collapse;
+       width: 100%;
+       border-top-style: solid;
+       border-top-width: 1px;
+       clear: both;
+       cursor: default;
+}
+
+.media-item.media-blank .describe {
+       border: 0;
+}
+
+.media-item .describe th {
+       vertical-align: top;
+       text-align: left;
+       padding: 5px 10px 10px;
+       width: 140px;
+}
+
+.media-item .describe .align th {
+       padding-top: 0;
+}
+
+.media-item .media-item-info tr {
+       background-color: transparent;
+}
+
+.media-item .describe td {
+       padding: 0 8px 8px 0;
+       vertical-align: top;
+}
+
+.media-item thead.media-item-info td {
+       padding: 4px 10px 0;
+}
+
+.media-item .media-item-info .A1B1 {
+       padding: 0 0 0 10px;
+}
+
+.media-item td.savesend {
+       padding-bottom: 15px;
+}
+
+.media-item .thumbnail {
+       max-height: 128px;
+       max-width: 128px;
+}
+
+#wpbody-content #async-upload-wrap a {
+       display: none;
+}
+
+.media-upload-form {
+       margin-top: 20px;
+}
+
+.media-upload-form td label {
+       margin-right: 6px;
+       margin-left: 2px;
+}
+
+.media-upload-form .align .field label {
+       display: inline;
+       padding: 0 0 0 23px;
+       margin: 0 1em 0 3px;
+       font-weight: bold;
+}
+
+.media-upload-form tr.image-size label {
+       margin: 0 0 0 5px;
+       font-weight: bold;
+}
+
+.media-upload-form th.label label {
+       font-weight: bold;
+       margin: 0.5em;
+       font-size: 13px;
+}
+
+.media-upload-form th.label label span {
+       padding: 0 5px;
+}
+
+abbr.required {
+       border: medium none;
+       text-decoration: none;
+}
+
+.media-item .describe input[type="text"],
+.media-item .describe textarea {
+       width: 460px;
+}
+
+.media-item .describe p.help {
+       margin: 0;
+       padding: 0 0 0 5px;
+}
+
+.describe-toggle-on,
+.describe-toggle-off {
+       display: block;
+       line-height: 36px;
+       float: right;
+       margin-right: 15px;
+}
+
+.media-item .describe-toggle-off,
+.media-item.open .describe-toggle-on,
+.media-item.open img.pinkynail {
+       display: none;
+}
+
+.media-item.open .describe-toggle-off {
+       display: block;
+}
+
+#media-items .media-item {
+       border-style: solid;
+       border-width: 1px;
+       min-height: 36px;
+       position: relative;
+       margin-top: -1px;
+       width: 100%;
+}
+
+#media-items {
+       width: 623px;
+}
+
+#media-items:empty {
+       border: 0 none;
+}
+
+.media-item .filename {
+       line-height: 36px;
+       overflow: hidden;
+       padding: 0 10px;
+}
+
+.media-item .error-div {
+       padding-left: 10px;
+}
+
+.media-item .pinkynail {
+       float: left;
+       margin: 2px 2px 0;
+       max-width: 40px;
+       max-height: 32px;
+}
+
+.media-item .startopen,
+.media-item .startclosed {
+       display: none;
+}
+
+.media-item .original {
+       position: relative;
+       height: 34px;
+}
+
+.media-item .progress {
+       float: right;
+    height: 22px;
+    margin: 6px 10px 0 0;
+    width: 200px;
+       line-height: 2em;
+       padding: 0;
+       overflow: hidden;
+       margin-bottom: 2px;
+       border: 1px solid #d1d1d1;
+       background: #fff;
+       background-image: linear-gradient(bottom, rgb(255,255,255) 0%, rgb(247,247,247) 100%);
+       background-image: -o-linear-gradient(bottom, rgb(255,255,255) 0%, rgb(247,247,247) 100%);
+       background-image: -moz-linear-gradient(bottom, rgb(255,255,255) 0%, rgb(247,247,247) 100%);
+       background-image: -webkit-linear-gradient(bottom, rgb(255,255,255) 0%, rgb(247,247,247) 100%);
+       background-image: -ms-linear-gradient(bottom, rgb(255,255,255) 0%, rgb(247,247,247) 100%);
+       -webkit-border-radius: 3px;
+       border-radius: 3px;
+       -webkit-box-shadow: inset 0 0 3px rgba(0,0,0,0.1);
+       box-shadow: inset 0 0 3px rgba(0,0,0,0.1);
+}
+
+.media-item .bar {
+       z-index: 9;
+       width: 0;
+       height: 100%;
+       margin-top: -24px;
+       background-color: #83B4D8;
+       background-image: linear-gradient(bottom, rgb(114,167,207) 0%, rgb(144,197,238) 100%);
+       background-image: -o-linear-gradient(bottom, rgb(114,167,207) 0%, rgb(144,197,238) 100%);
+       background-image: -moz-linear-gradient(bottom, rgb(114,167,207) 0%, rgb(144,197,238) 100%);
+       background-image: -webkit-linear-gradient(bottom, rgb(114,167,207) 0%, rgb(144,197,238) 100%);
+       background-image: -ms-linear-gradient(bottom, rgb(114,167,207) 0%, rgb(144,197,238) 100%);
+       -webkit-border-radius: 3px;
+       border-radius: 3px;
+       -webkit-box-shadow: 0 0 3px rgba(0,0,0,0.3);
+       box-shadow: 0 0 3px rgba(0,0,0,0.3);
+}
+
+.media-item .progress .percent {
+       z-index: 10;
+       position: relative;
+       width: 200px;
+       padding: 0 8px;
+       text-shadow: 0 1px 0 rgba(255,255,255,0.4);
+       color: rgba(0,0,0,0.6);
+}
+
+.upload-php .fixed .column-parent {
+       width: 25%;
+}
+
+.js .html-uploader #plupload-upload-ui {
+       display: none;
+}
+
+.js .html-uploader #html-upload-ui {
+       display: block;
+}
+
+.media-upload-form .media-item.error {
+       margin: 0;
+       padding: 0;
+}
+
+.media-upload-form .media-item.error p,
+.media-item .error-div {
+       line-height: 16px;
+       font-size: 12px;
+       margin: 10px;
+       padding: 0;
+}
+
+.media-item .error-div a.dismiss {
+       float: right;
+       padding-left: 15px;
+}
+
+/*------------------------------------------------------------------------------
+  14.1 - Media Library
+------------------------------------------------------------------------------*/
+
+.find-box {
+       width: 500px;
+       height: 300px;
+       overflow: hidden;
+       padding: 33px 5px 40px;
+       position: absolute;
+       z-index: 1000;
+}
+
+.find-box-head {
+       cursor: move;
+       font-weight: bold;
+       height: 2em;
+       line-height: 2em;
+       padding: 1px 12px;
+       position: absolute;
+       top: 5px;
+       width: 100%;
+}
+
+.find-box-inside {
+       overflow: auto;
+       width: 100%;
+       height: 100%;
+}
+
+.find-box-search {
+       padding: 12px;
+       border-width: 1px;
+       border-style: none none solid;
+}
+
+#find-posts-response {
+       margin: 8px 0;
+       padding: 0 1px;
+}
+
+#find-posts-response table {
+       width: 100%;
+}
+
+#find-posts-response .found-radio {
+       padding: 5px 0 0 8px;
+       width: 15px;
+}
+
+.find-box-buttons {
+       width: 480px;
+       margin: 8px;
+}
+
+.find-box-search label {
+       padding-right: 6px;
+}
+
+.find-box #resize-se {
+       position: absolute;
+       right: 1px;
+       bottom: 1px;
+}
+
+ul#dismissed-updates {
+       display: none;
+}
+
+form.upgrade {
+       margin-top: 8px;
+}
+
+form.upgrade .hint {
+       font-style: italic;
+       font-size: 85%;
+       margin: -0.5em 0 2em 0;
+}
+
+#poststuff .inside .the-tagcloud {
+       margin: 5px 0 10px;
+       padding: 8px;
+       border-width: 1px;
+       border-style: solid;
+       line-height: 1.8em;
+       word-spacing: 3px;
+       -webkit-border-radius: 6px;
+       border-radius: 6px;
+}
+
+.drag-drop #drag-drop-area {
+       border: 4px dashed #DDDDDD;
+       height: 200px;
+}
+
+.drag-drop .drag-drop-inside {
+       margin: 70px auto 0;
+       width: 250px;
+}
+
+.drag-drop-inside p {
+       color: #aaa;
+       font-size: 14px;
+       margin: 5px 0;
+       display: none;
+}
+
+.drag-drop .drag-drop-inside p {
+       text-align: center;
+}
+
+.drag-drop-inside p.drag-drop-info {
+       font-size: 20px;
+}
+
+.drag-drop .drag-drop-inside p,
+.drag-drop-inside p.drag-drop-buttons {
+       display: block;
+}
+
+/*
+#drag-drop-area:-moz-drag-over {
+       border-color: #83b4d8;
+}
+borger color while dragging a file over the uploader drop area */
+.drag-drop.drag-over #drag-drop-area {
+       border-color: #83b4d8;
+}
+
+#plupload-upload-ui {
+       position: relative;
+}
+
+
+/*------------------------------------------------------------------------------
+  14.2 - Image Editor
+------------------------------------------------------------------------------*/
+
+.describe .image-editor {
+       vertical-align: top;
+}
+
+.imgedit-wrap {
+       position: relative;
+}
+
+.imgedit-settings p {
+       margin: 8px 0;
+}
+
+.describe .imgedit-wrap table td {
+       vertical-align: top;
+       padding-top: 0;
+}
+
+.imgedit-wrap p,
+.describe .imgedit-wrap table td {
+       font-size: 11px;
+       line-height: 18px;
+}
+
+.describe .imgedit-wrap table td.imgedit-settings {
+       padding: 0 5px;
+}
+
+td.imgedit-settings input {
+       vertical-align: middle;
+}
+
+.imgedit-wait {
+       position: absolute;
+       top: 0;
+       background: #FFFFFF url(../images/wpspin_light.gif) no-repeat scroll 22px 10px;
+       opacity: 0.7;
+       filter: alpha(opacity=70);
+       width: 100%;
+       height: 500px;
+       display: none;
+}
+
+.media-disabled,
+.imgedit-settings .disabled  {
+       color: grey;
+}
+
+.imgedit-wait-spin {
+       padding: 0 4px 4px;
+       vertical-align: bottom;
+       visibility: hidden;
+}
+
+.imgedit-menu {
+       margin: 0 0 12px;
+       min-width: 300px;
+}
+
+.imgedit-menu div {
+       float: left;
+       width: 32px;
+       height: 32px;
+}
+
+.imgedit-crop-wrap {
+       position: relative;
+}
+
+.imgedit-crop {
+       background: transparent url(../images/imgedit-icons.png) no-repeat scroll -9px -31px;
+       margin: 0 8px 0 0;
+}
+
+.imgedit-crop.disabled:hover {
+       background-position: -9px -31px;
+}
+
+.imgedit-crop:hover {
+       background-position: -9px -1px;
+}
+
+.imgedit-rleft {
+       background: transparent url(../images/imgedit-icons.png) no-repeat scroll -46px -31px;
+       margin: 0 3px;
+}
+
+.imgedit-rleft.disabled:hover {
+       background-position: -46px -31px;
+}
+
+.imgedit-rleft:hover {
+       background-position: -46px -1px;
+}
+
+.imgedit-rright {
+       background: transparent url(../images/imgedit-icons.png) no-repeat scroll -77px -31px;
+       margin: 0 8px 0 3px;
+}
+
+.imgedit-rright.disabled:hover {
+       background-position: -77px -31px;
+}
+
+.imgedit-rright:hover {
+       background-position: -77px -1px;
+}
+
+.imgedit-flipv {
+       background: transparent url(../images/imgedit-icons.png) no-repeat scroll -115px -31px;
+       margin: 0 3px;
+}
+
+.imgedit-flipv.disabled:hover {
+       background-position: -115px -31px;
+}
+
+.imgedit-flipv:hover {
+       background-position: -115px -1px;
+}
+
+.imgedit-fliph {
+       background: transparent url(../images/imgedit-icons.png) no-repeat scroll -147px -31px;
+       margin: 0 8px 0 3px;
+}
+
+.imgedit-fliph.disabled:hover {
+       background-position: -147px -31px;
+}
+
+.imgedit-fliph:hover {
+       background-position: -147px -1px;
+}
+
+.imgedit-undo {
+       background: transparent url(../images/imgedit-icons.png) no-repeat scroll -184px -31px;
+       margin: 0 3px;
+}
+
+.imgedit-undo.disabled:hover {
+       background-position: -184px -31px;
+}
+
+.imgedit-undo:hover {
+       background-position: -184px -1px;
+}
+
+.imgedit-redo {
+       background: transparent url(../images/imgedit-icons.png) no-repeat scroll -215px -31px;
+       margin: 0 8px 0 3px;
+}
+
+.imgedit-redo.disabled:hover {
+       background-position: -215px -31px;
+}
+
+.imgedit-redo:hover {
+       background-position: -215px -1px;
+}
+
+.imgedit-applyto img {
+       margin: 0 8px 0 0;
+}
+
+.imgedit-group-top {
+       margin: 5px 0;
+}
+
+.imgedit-applyto .imgedit-label {
+       padding: 2px 0 0;
+       display: block;
+}
+
+.imgedit-help {
+       display: none;
+       font-style: italic;
+       margin-bottom: 8px;
+}
+
+.imgedit-help ul li {
+       font-size: 11px;
+}
+
+a.imgedit-help-toggle {
+       text-decoration: none;
+}
+
+#wpbody-content .imgedit-response div {
+       width: 600px;
+       margin: 8px;
+}
+
+.form-table td.imgedit-response {
+       padding: 0;
+}
+
+.imgedit-submit {
+       margin: 8px 0;
+}
+
+.imgedit-submit-btn {
+       margin-left: 20px;
+}
+
+.imgedit-wrap .nowrap {
+       white-space: nowrap;
+}
+
+span.imgedit-scale-warn {
+       color: red;
+       font-size: 20px;
+       font-style: normal;
+       visibility: hidden;
+       vertical-align: middle;
+}
+
+.imgedit-group {
+       border-width: 1px;
+       border-style: solid;
+       -webkit-border-radius: 8px;
+       border-radius: 8px;
+       margin-bottom: 8px;
+       padding: 2px 10px;
+}
+
+
+/*------------------------------------------------------------------------------
+  15.0 - Comments Screen
+------------------------------------------------------------------------------*/
+
+.form-table {
+       border-collapse: collapse;
+       margin-top: 0.5em;
+       width: 100%;
+       margin-bottom: -8px;
+       clear: both;
+}
+
+.form-table td {
+       margin-bottom: 9px;
+       padding: 8px 10px;
+       line-height: 20px;
+       font-size: 12px;
+}
+
+.form-table th,
+.form-wrap label {
+       font-weight: normal;
+       text-shadow: #fff 0 1px 0;
+}
+
+.form-table th {
+       vertical-align: top;
+       text-align: left;
+       padding: 10px;
+       width: 200px;
+}
+
+.form-table th.th-full {
+       width: auto;
+}
+
+.form-table div.color-option {
+       display: block;
+       clear: both;
+       margin-top: 12px;
+}
+
+.form-table input.tog {
+       margin-top: 2px;
+       margin-right: 2px;
+       float: left;
+}
+
+.form-table td p {
+       margin-top: 4px;
+}
+
+.form-table table.color-palette {
+       vertical-align: bottom;
+       float: left;
+       margin: -12px 3px 11px;
+}
+
+.form-table .color-palette td {
+       border-width: 1px 1px 0;
+       border-style: solid solid none;
+       height: 10px;
+       line-height: 20px;
+       width: 10px;
+}
+
+.commentlist li {
+       padding: 1em 1em .2em;
+       margin: 0;
+       border-bottom-width: 1px;
+       border-bottom-style: solid;
+}
+
+.commentlist li li {
+       border-bottom: 0;
+       padding: 0;
+}
+
+.commentlist p {
+       padding: 0;
+       margin: 0 0 .8em;
+}
+
+/* reply to comments */
+#replyrow input {
+       border-width: 1px;
+       border-style: solid;
+}
+
+#replyrow td {
+       padding: 2px;
+}
+
+#replysubmit {
+       margin: 0;
+       padding: 0 7px 3px;
+       text-align: center;
+}
+
+#replysubmit img.waiting,
+.inline-edit-save img.waiting {
+       padding: 4px 10px 0;
+       vertical-align: top;
+       float: right;
+}
+
+#replysubmit .button {
+       margin-right: 5px;
+}
+
+#replysubmit .error {
+       color: red;
+       line-height: 21px;
+       text-align: center;
+       vertical-align: center;
+}
+
+#replyrow h5 {
+       margin: .2em 0 0;
+       padding: 0 5px;
+       line-height: 1.4em;
+       font-size: 1em;
+}
+
+#edithead .inside {
+       float: left;
+       padding: 3px 0 2px 5px;
+       margin: 0;
+       text-align: center;
+}
+
+#edithead .inside input {
+       width: 180px;
+}
+
+#edithead label {
+       padding: 2px 0;
+}
+
+#replycontainer {
+       padding: 5px;
+}
+
+#replycontent {
+       height: 120px;
+}
+
+.comment-ays {
+       margin-bottom: 0;
+       border-style: solid;
+       border-width: 1px;
+}
+
+.comment-ays th {
+       border-right-style: solid;
+       border-right-width: 1px;
+}
+
+.trash-undo-inside,
+.spam-undo-inside {
+       margin: 1px 8px 1px 0;
+       line-height: 16px;
+}
+
+.spam-undo-inside .avatar,
+.trash-undo-inside .avatar {
+       height: 20px;
+       width: 20px;
+       margin-right: 8px;
+       vertical-align: middle;
+}
+
+.stuffbox .editcomment {
+       clear: none;
+}
+
+#comment-status-radio p {
+       margin: 3px 0 5px;
+}
+
+#comment-status-radio input {
+       margin: 2px 3px 5px 0;
+       vertical-align: middle;
+}
+
+#comment-status-radio label {
+       padding: 5px 0;
+}
+
+.commentlist .avatar {
+       vertical-align: text-top;
+}
+
+
+/*------------------------------------------------------------------------------
+  16.0 - Themes
+------------------------------------------------------------------------------*/
+
+.theme-install-php .tablenav {
+       height:auto;
+}
+
+.available-theme {
+       display: inline-block;
+       margin-bottom: 10px;
+       margin-right: 25px;
+       overflow: hidden;
+       padding: 20px;
+       vertical-align: top;
+       width: 240px;
+}
+
+.available-theme a.screenshot {
+       width: 240px;
+       height: 180px;
+       display: block;
+       border-width: 1px;
+       border-style: solid;
+       margin-bottom: 10px;
+       overflow: hidden;
+}
+
+.available-theme img {
+       width: 240px;
+}
+
+.available-theme h3 {
+       margin: 15px 0 5px;
+}
+
+#current-theme {
+       margin: 1em 0 1.5em;
+}
+
+#current-theme a {
+       border-bottom: none;
+}
+
+#current-theme h3 {
+       font-size: 17px;
+       font-weight: normal;
+       margin: 0;
+}
+
+#current-theme .theme-description {
+       margin-top: 5px;
+}
+
+#current-theme img {
+       float: left;
+       border-width: 1px;
+       border-style: solid;
+       margin-right: 1em;
+       margin-bottom: 1.5em;
+       width: 150px;
+}
+
+.theme-options span {
+       text-transform: uppercase;
+       font-size: 13px;
+}
+
+.theme-options a {
+       font-size: 15px;
+}
+
+#post-body ul.category-tabs li.tabs a,
+#post-body ul.add-menu-item-tabs li.tabs a,
+#TB_window #TB_title a.tb-theme-preview-link,
+#TB_window #TB_title a.tb-theme-preview-link:visited {
+       font-weight: bold;
+       text-decoration: none;
+}
+
+#TB_window #TB_title {
+       background-color: #222;
+       color: #cfcfcf;
+}
+
+#broken-themes {
+       text-align: left;
+       width: 50%;
+       border-spacing: 3px;
+       padding: 3px;
+}
+
+.theme-install-php h4 {
+       margin: 2.5em 0 8px;
+}
+
+
+/*------------------------------------------------------------------------------
+  16.1 - Custom Header Screen
+------------------------------------------------------------------------------*/
+
+.appearance_page_custom-header #headimg {
+       border: 1px solid #DFDFDF;
+       min-height: 100px;
+       width: 100%;
+}
+
+.appearance_page_custom-header #upload-form p label {
+       font-size: 12px;
+}
+
+.appearance_page_custom-header .available-headers .default-header {
+       float: left;
+       margin: 0 20px 20px 0;
+}
+
+.appearance_page_custom-header .random-header {
+       clear: both;
+       margin: 0 20px 20px 0;
+       vertical-align: middle;
+}
+
+.appearance_page_custom-header .available-headers label input,
+.appearance_page_custom-header .random-header label input {
+       margin-right: 10px;
+}
+
+.appearance_page_custom-header .available-headers label img {
+       vertical-align: middle;
+}
+
+
+/*------------------------------------------------------------------------------
+  16.2 - Custom Background Screen
+------------------------------------------------------------------------------*/
+
+div#custom-background-image {
+       min-height: 100px;
+       border: 1px solid #dfdfdf;
+}
+
+div#custom-background-image img {
+       max-width: 400px;
+       max-height: 300px;
+}
+
+
+/*------------------------------------------------------------------------------
+  16.3 - Tabbed Admin Screen Interface (Experimental)
+------------------------------------------------------------------------------*/
+
+.nav-tab {
+       border-style: solid;
+       border-color: #dfdfdf #dfdfdf #fff;
+       border-width: 1px 1px 0;
+       color: #aaa;
+       text-shadow: #fff 0 1px 0;
+       font-size: 12px;
+       line-height: 16px;
+       display: inline-block;
+       padding: 4px 14px 6px;
+       text-decoration: none;
+       margin: 0 6px -1px 0;
+       -webkit-border-top-left-radius: 3px;
+       -webkit-border-top-right-radius: 3px;
+       border-top-left-radius: 3px;
+       border-top-right-radius: 3px;
+}
+
+.nav-tab-active {
+       border-width: 1px;
+       color: #464646;
+}
+
+.nav-tab:hover,
+.nav-tab-active {
+       border-color: #ccc #ccc #fff;
+}
+
+h2.nav-tab-wrapper, h3.nav-tab-wrapper {
+       border-bottom: 1px solid #ccc;
+       padding-bottom: 0;
+}
+
+h2 .nav-tab {
+       padding: 4px 10px 6px;
+       font-weight: 200;
+       font-size: 20px;
+       line-height: 24px;
+
+}
+
+
+/*------------------------------------------------------------------------------
+  17.0 - Plugins
+------------------------------------------------------------------------------*/
+
+#dashboard_right_now .versions .b,
+#post-status-display,
+#post-visibility-display,
+#adminmenu .wp-submenu li.current,
+#adminmenu .wp-submenu li.current a,
+#adminmenu .wp-submenu li.current a:hover,
+.media-item .percent,
+.plugins .name,
+#pass-strength-result.strong,
+#pass-strength-result.short,
+.button-highlighted,
+input.button-highlighted,
+#quicktags #ed_strong,
+#ed_reply_toolbar #ed_reply_strong,
+.item-controls .item-order a,
+.feature-filter .feature-name {
+       font-weight: bold;
+}
+
+.plugins p {
+       margin: 0 4px;
+       padding: 0;
+}
+
+.plugins .desc p {
+       margin: 0 0 8px;
+}
+
+.plugins td.desc {
+       line-height: 1.5em;
+}
+
+.plugins .desc ul,
+.plugins .desc ol {
+       margin: 0 0 0 2em;
+}
+
+.plugins .desc ul {
+       list-style-type: disc;
+}
+
+.plugins .row-actions-visible {
+       padding: 0;
+}
+
+.plugins tbody th.check-column {
+       padding: 7px 0;
+}
+
+.plugins .inactive td,
+.plugins .inactive th,
+.plugins .active td,
+.plugins .active th {
+       border-top-style: solid;
+       border-top-width: 1px;
+       padding: 5px 7px 0;
+}
+
+#wpbody-content .plugins .plugin-title, #wpbody-content .plugins .theme-title {
+       padding-right: 12px;
+       white-space:nowrap;
+}
+
+.plugins .second, .plugins .row-actions-visible {
+       padding: 0 0 5px;
+}
+
+.plugins-php .widefat tfoot th,
+.plugins-php .widefat tfoot td {
+       border-top-style: solid;
+       border-top-width: 1px;
+}
+
+.plugin-update-tr .update-message {
+       margin: 5px;
+       padding: 3px 5px;
+}
+
+.plugin-install-php h4 {
+       margin: 2.5em 0 8px;
+}
+
+
+/*------------------------------------------------------------------------------
+  18.0 - Users
+------------------------------------------------------------------------------*/
+
+#profile-page .form-table textarea {
+       width: 500px;
+       margin-bottom: 6px;
+}
+
+#profile-page .form-table #rich_editing {
+       margin-right: 5px
+}
+
+#your-profile legend {
+       font-size: 22px;
+}
+
+#your-profile #rich_editing {
+       border: none;
+}
+
+#display_name {
+       width: 15em;
+}
+
+#createuser .form-field input {
+       width: 25em;
+}
+
+/*------------------------------------------------------------------------------
+  19.0 - Tools
+------------------------------------------------------------------------------*/
+
+.pressthis {
+       margin: 20px 0;
+}
+
+.pressthis a {
+       display: inline-block;
+       width: 113px;
+       position: relative;
+       cursor: move;
+       color: #333;
+       background: #dfdfdf;
+       background-image: -webkit-gradient(
+               linear,
+               left bottom,
+               left top,
+               color-stop(0.07, rgb(230,230,230)),
+               color-stop(0.77, rgb(216,216,216))
+       );
+       background-image: -moz-linear-gradient(
+               center bottom,
+               rgb(230,230,230) 7%,
+               rgb(216,216,216) 77%
+       );
+       background-repeat: no-repeat;
+       background-image-position: 10px 8px;
+       -webkit-border-radius: 5px;
+       border-radius: 5px;
+       border: 1px #b4b4b4 solid;
+       font-style: normal;
+       line-height: 16px;
+       font-size: 14px;
+       text-decoration: none;
+       text-shadow: #fff 0 1px 0px;
+}
+
+.pressthis a:hover,
+.pressthis a:active {
+       color: #333
+}
+
+.pressthis a:hover:after {
+       transform: skew(20deg) rotate(9deg);
+       -webkit-transform: skew(20deg) rotate(9deg);
+       -moz-transform: skew(20deg) rotate(9deg);
+       box-shadow: 0 10px 8px rgba(0, 0, 0, 0.7);
+       -webkit-box-shadow: 0 10px 8px rgba(0, 0, 0, 0.7);
+       -moz-box-shadow: 0 10px 8px rgba(0, 0, 0, 0.7);
+}
+
+.pressthis a span {
+       background: url(../images/press-this.png) no-repeat -45px 5px ;
+       padding: 8px 0 8px 32px;
+       display: inline-block;
+}
+
+.pressthis a:after {
+       content: '';
+       width: 70%;
+       height: 55%;
+       z-index: -1;
+       position: absolute;
+       right: 10px;
+       bottom: 9px;
+       background: transparent;
+       transform: skew(20deg) rotate(6deg);
+       -webkit-transform: skew(20deg) rotate(6deg);
+       -moz-transform: skew(20deg) rotate(6deg);
+       box-shadow: 0 10px 8px rgba(0, 0, 0, 0.6);
+       -webkit-box-shadow: 0 10px 8px rgba(0, 0, 0, 0.6);
+       -moz-box-shadow: 0 10px 8px rgba(0, 0, 0, 0.6);
+}
+
+
+/*------------------------------------------------------------------------------
+  20.0 - Settings
+------------------------------------------------------------------------------*/
+
+#utc-time, #local-time {
+       padding-left: 25px;
+       font-style: italic;
+       font-family: sans-serif;
+}
+
+.defaultavatarpicker .avatar {
+       margin: 2px 0;
+       vertical-align: middle;
+}
+
+
+/*------------------------------------------------------------------------------
+  21.0 - Admin Footer
+------------------------------------------------------------------------------*/
+
+#footer {
+       position: absolute;
+       bottom: 0;
+       left: 0;
+       right: 0;
+       padding: 10px 0;
+       margin-right: 20px;
+       border-top-width: 1px;
+       border-top-style: solid;
+}
+
+#footer p {
+       margin: 0;
+       line-height: 20px;
+}
+
+#footer a {
+       text-decoration: none;
+}
+
+#footer a:hover {
+       text-decoration: underline;
+}
+
+/*------------------------------------------------------------------------------
+  22.0 - About Pages
+------------------------------------------------------------------------------*/
+
+.about-wrap {
+       position: relative;
+       margin: 25px 40px 0 20px;
+       min-width: 770px;
+       max-width: 1050px; /* readability */
+
+       font-size: 15px;
+}
+.about-wrap div.updated,
+.about-wrap div.error {
+    display: none !important;
+}
+
+/* Typography */
+
+.about-wrap p {
+       line-height: 1.6em;
+}
+.about-wrap h1 {
+       margin: 0.2em 200px 0 0;
+       line-height: 1.2em;
+       font-size: 2.8em;
+       font-weight: 200;
+}
+.about-text,
+.about-description,
+.about-wrap li.wp-person a.web {
+       font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", sans-serif;
+       font-weight: normal;
+       line-height: 1.6em;
+       font-size: 20px;
+}
+.about-description {
+       margin-top: 1.4em;
+}
+.about-text {
+       margin: 1em 200px 1.4em 0;
+       min-height: 60px;
+       font-size: 24px;
+}
+.about-wrap h3 {
+       font-size: 24px;
+       margin-bottom: 1em;
+       padding-top: 20px;
+}
+
+.about-wrap .changelog {
+       padding-bottom: 10px;
+       overflow: hidden;
+}
+.about-wrap .changelog li {
+       list-style-type: disc;
+       margin-left: 3em;
+}
+.about-wrap .feature-section h4 {
+       margin-bottom: 0.6em;
+}
+.about-wrap .feature-section p {
+       margin-top: 0.6em;
+}
+.about-wrap code {
+       font-size: 14px;
+}
+html.ie8 .about-wrap img.element-screenshot {
+       padding: 2px;
 }
 
 }
 
-#wpbody-content .inline-edit-row fieldset .inline-edit-col {
-       padding: 0 0.5em;
-}
+/* Point Releases */
 
 
-#wpbody-content .quick-edit-row-page fieldset.inline-edit-col-right .inline-edit-col {
-       border-width: 0 0 0 1px;
-       border-style: none none none solid;
+.about-wrap .point-releases {
+       margin-top: 5px;
 }
 }
-
-#wpbody-content .quick-edit-row-post .inline-edit-col-left {
-       width: 40%;
+.about-wrap .changelog.point-releases h3 {
+       padding-top: 35px;
 }
 }
-
-#wpbody-content .quick-edit-row-post .inline-edit-col-right {
-       width: 39%;
+.about-wrap .changelog.point-releases h3:first-child {
+       padding-top: 7px;
 }
 
 }
 
-#wpbody-content .inline-edit-row-post .inline-edit-col-center {
-       width: 20%;
-}
+/* WordPress Version Badge */
 
 
-#wpbody-content .quick-edit-row-page .inline-edit-col-left {
-       width: 50%;
-}
+.wp-badge {
+       padding-top: 142px;
+       height: 50px;
+       width: 173px;
 
 
-#wpbody-content .quick-edit-row-page .inline-edit-col-right,
-#wpbody-content .bulk-edit-row-post .inline-edit-col-right {
-       width: 49%;
-}
+       font-weight: bold;
+       font-size: 14px;
+       text-align: center;
 
 
-#wpbody-content .bulk-edit-row .inline-edit-col-left {
-       width: 30%;
-}
+       margin: 0 -5px;
 
 
-#wpbody-content .bulk-edit-row-page .inline-edit-col-right {
-       width: 69%;
+       background: url('../images/wp-badge.png?ver=20111120') no-repeat;
 }
 }
-
-#wpbody-content .bulk-edit-row .inline-edit-col-bottom {
-       float: right;
-       width: 69%;
+.about-wrap .wp-badge {
+       position: absolute;
+       top: 0;
+       right: 0;
 }
 
 }
 
-#wpbody-content .inline-edit-row-page .inline-edit-col-right {
-       margin-top: 27px;
-}
+/* Tabs */
 
 
-.inline-edit-row fieldset .inline-edit-group {
-       clear: both;
+.about-wrap h2.nav-tab-wrapper {
+       padding-left: 6px;
+}
+.about-wrap h2 .nav-tab {
+       padding: 4px 10px 6px;
+       margin: 0 3px -1px 0;
+       font-size: 18px;
+       vertical-align: top;
+}
+.about-wrap h2 .nav-tab-active {
+       font-weight: bold;
+       padding-top: 3px;
 }
 
 }
 
-.inline-edit-row fieldset .inline-edit-group:after {
-       content: ".";
-       display: block;
-       height: 0;
-       clear: both;
-       visibility: hidden;
+/* Changelog / Update screen */
+
+.about-wrap .feature-section .left-feature,
+.about-wrap .feature-section img,
+.about-wrap .feature-section .right-feature {
+       float: left;
 }
 
 }
 
-.inline-edit-row p.submit {
+.about-wrap .feature-section {
+       min-height: 100px;
+       overflow: hidden;
        clear: both;
        clear: both;
-       padding: 0.5em;
-       margin: 0.5em 0 0;
 }
 }
+.about-wrap .feature-section img {
+       margin: 5px auto;
 
 
-.inline-edit-row span.error {
-       line-height: 22px;
-       margin: 0 15px;
-       padding: 3px 5px;
-}
+       border: none;
 
 
-/*     Positioning */
-.inline-edit-row h4 {
-       margin: .2em 0;
-       padding: 0;
-       line-height: 23px;
+       -webkit-border-radius: 3px;
+       border-radius: 3px;
 }
 }
-.inline-edit-row fieldset span.title,
-.inline-edit-row fieldset span.checkbox-title {
-       margin: 0;
-       padding: 0;
-       line-height: 27px;
+html.ie8 .about-wrap .feature-section img,
+html.ie8 .about-wrap .feature-section .image-mask {
+       border-width: 1px;
+       border-style: solid;
 }
 
 }
 
-.inline-edit-row fieldset label,
-.inline-edit-row fieldset span.inline-edit-categories-label {
-       display: block;
-       margin: .2em 0;
-}
+.about-wrap .feature-section.text-features {
+       width: 31%;
 
 
-.inline-edit-row fieldset label.inline-edit-tags {
-       margin-top: 0;
+       float: left;
+       overflow: visible;
 }
 }
-
-.inline-edit-row fieldset label.inline-edit-tags span.title {
-       margin: .2em 0;
+.about-wrap .feature-section.text-features div {
+       width: 112%;
 }
 }
+.about-wrap .feature-section.screenshot-features {
+       width: 67%;
+       margin-top: 1.33em;
 
 
-.inline-edit-row fieldset label span.title {
-       display: block;
-       float: left;
-       width: 5em;
+       float: right;
+       clear: none;
+       overflow: visible;
 }
 
 }
 
-.inline-edit-row fieldset label span.input-text-wrap {
-       display: block;
-       margin-left: 5em;
+.about-wrap .feature-section.screenshot-features .angled-right {
+       margin-top: -1em;
+       margin-left: 2.5em;
 }
 }
-
-.quick-edit-row-post fieldset.inline-edit-col-right label span.title {
-       width: auto;
-       padding-right: 0.5em;
+.about-wrap .feature-section.screenshot-features .angled-right p {
+       margin-left: 290px;
 }
 
 }
 
-.inline-edit-row .input-text-wrap input[type=text] {
-       width: 100%;
+.about-wrap .feature-section .angled-right h4,
+.about-wrap .feature-section .angled-left h4 {
+       margin-top: 0;
 }
 }
-
-.inline-edit-row fieldset label input[type=checkbox] {
-       vertical-align: text-bottom;
+.about-wrap .feature-section .angled-right img,
+.about-wrap .feature-section .angled-left img {
+       margin-top: .1em;
+       margin-right: 30px;
 }
 
 }
 
-.inline-edit-row fieldset label textarea {
-       width: 100%;
-       height: 4em;
+.about-wrap .feature-section.three-col {
+       padding-top: 15px;
+       margin-bottom: 0;
 }
 }
+.about-wrap .feature-section.three-col div {
+       width: 30%;
+       margin-right: 4.999999999%;
 
 
-#wpbody-content .bulk-edit-row fieldset .inline-edit-group label {
-       max-width: 50%;
+       float: left;
 }
 }
-
-#wpbody-content .quick-edit-row fieldset .inline-edit-group label.alignleft:first-child {
-       margin-right: 0.5em
+.about-wrap .feature-section.three-col h4 {
+       margin:  0 0 0.6em 0;
 }
 }
+.about-wrap .feature-section.three-col img {
+       margin: 0.5em 0 0.5em 5px;
+       max-width: 100%;
 
 
-.inline-edit-col-right .input-text-wrap input.inline-edit-menu-order-input {
-       width: 6em;
+       float: none;
 }
 }
-
-
-/*     Styling */
-.inline-edit-row h4 {
-       text-transform: uppercase;
+html.ie8 .about-wrap .feature-section.three-col img {
+       margin-left: 0;
 }
 }
-
-.inline-edit-row fieldset span.title,
-.inline-edit-row fieldset span.checkbox-title {
-       font-family: Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
-       font-style: italic;
-       line-height: 1.8em;
+.about-wrap .feature-section.three-col .last-feature {
+       margin-right: 0;
 }
 
 }
 
-/*     Specific Elements */
-.inline-edit-row fieldset input[type="text"],
-.inline-edit-row fieldset textarea {
-       border-style: solid;
-       border-width: 1px;
+.about-wrap .feature-section .feature-images {
+       width: 300px;
+       position: absolute;
+       margin-top: 1.1em;
 }
 }
-
-.inline-edit-row fieldset .inline-edit-date {
-       float: left;
+.about-wrap .feature-section .feature-images img {
+       width: 250px;
+       height: 150px;
+       margin-right: 5px;
 }
 }
-
-.inline-edit-row fieldset input[name=jj],
-.inline-edit-row fieldset input[name=hh],
-.inline-edit-row fieldset input[name=mn] {
-       font-size: 12px;
-       width: 2.1em;
+.about-wrap .feature-section.images-stagger-left,
+.about-wrap .feature-section.images-stagger-right {
+       min-height: 265px;
 }
 }
-
-.inline-edit-row fieldset input[name=aa] {
-       font-size: 12px;
-       width: 3.5em;
+.about-wrap .feature-section.images-stagger-right .angled-right,
+.about-wrap .feature-section.images-stagger-left .angled-left {
+       margin-bottom: -30px;
 }
 }
-
-.inline-edit-row fieldset label input.inline-edit-password-input {
-       width: 8em;
+.about-wrap .feature-section.images-stagger-left .angled-left {
+       margin-left: 5px;
 }
 }
-
-.inline-edit-row .catshow,
-.inline-edit-row .cathide {
-       cursor: pointer;
+.about-wrap .feature-section .angled-right {
+       float: right;
 }
 }
-
-ul.cat-checklist {
-       height: 12em;
-       border-style: solid;
-       border-width: 1px;
-       overflow-y: scroll;
-       padding: 0 5px;
-       margin: 0;
+.about-wrap .feature-section.images-stagger-right .feature-images {
+       right: 0;
+}
+.about-wrap .feature-section.images-stagger-left .feature-images {
+       left: 0;
+}
+.about-wrap .feature-section.images-stagger-right .left-feature {
+       margin-right: 350px;
+}
+.about-wrap .feature-section.images-stagger-left .right-feature {
+       margin-left: 350px;
 }
 
 }
 
-#bulk-titles {
-       display: block;
-       height: 12em;
-       border-style: solid;
-       border-width: 1px;
-       overflow-y: scroll;
+/* Return to Dashboard Home link */
+
+.about-wrap .return-to-dashboard {
+       margin: 30px 0 0 -5px;
+       font-size: 14px;
+       font-weight: bold;
+}
+.about-wrap .return-to-dashboard a {
+       text-decoration: none;
        padding: 0 5px;
        padding: 0 5px;
-       margin: 0 0 5px;
 }
 
 }
 
-.inline-edit-row fieldset ul.cat-checklist li,
-.inline-edit-row fieldset ul.cat-checklist input {
-       margin: 0;
-}
+/* Credits */
 
 
-.inline-edit-row fieldset ul.cat-checklist label,
-.inline-edit-row .catshow,
-.inline-edit-row .cathide,
-.inline-edit-row #bulk-titles div {
-       font-family: sans-serif;
-       font-style: normal;
-       font-size: 11px;
+.about-wrap h4.wp-people-group {
+       margin-top: 2.6em;
+       font-size: 16px;
 }
 }
-
-table .inline-edit-row fieldset ul.cat-hover {
-       height: auto;
-       max-height: 30em;
-       overflow-y: auto;
-       position: absolute;
+.about-wrap ul.wp-people-group {
+       overflow: hidden;
+       padding: 5px;
+       margin: 0 -15px 0 -5px;
 }
 }
-
-.inline-edit-row fieldset label input.inline-edit-menu-order-input {
-       width: 3em;
+.about-wrap ul.compact {
+       margin-bottom: 0
 }
 }
-
-.inline-edit-row fieldset label input.inline-edit-slug-input {
-       width: 75%;
+.about-wrap li.wp-person {
+       float: left;
+       margin-right: 10px;
 }
 }
-
-.quick-edit-row-post fieldset label.inline-edit-status {
+.about-wrap li.wp-person img.gravatar {
        float: left;
        float: left;
+       margin: 0 10px 10px 0;
+       padding: 2px;
+       width: 60px;
+       height: 60px;
 }
 }
-
-#bulk-titles {
-       line-height: 140%;
+.about-wrap ul.compact li.wp-person img.gravatar {
+       width: 30px;
+       height: 30px;
 }
 }
-#bulk-titles div {
-       margin: 0.2em 0.3em;
+.about-wrap li.wp-person {
+       height: 70px;
+       width: 280px;
+       padding-bottom: 15px;
 }
 }
-
-#bulk-titles div a {
-       cursor: pointer;
+.about-wrap ul.compact li.wp-person {
+       height: auto;
+       width: 180px;
+       padding-bottom: 0;
+       margin-bottom: 0;
+}
+.about-wrap #wp-people-group-validators + p.wp-credits-list {
+       margin-top: 0;
+}
+.about-wrap li.wp-person a.web {
        display: block;
        display: block;
-       float: left;
-       height: 10px;
-       margin: 3px 3px 0 -2px;
-       overflow: hidden;
-       position: relative;
-       text-indent: -9999px;
-       width: 10px;
+       margin: 6px 0 2px;
+       font-size: 16px;
+       text-decoration: none;
+}
+.about-wrap p.wp-credits-list a {
+       white-space: nowrap;
+}
+
+/* Freedoms */
+
+.freedoms-php .about-wrap ol {
+       margin: 40px 60px;
+}
+.freedoms-php .about-wrap ol li {
+       list-style-type: decimal;
+       font-weight: bold;
+}
+.freedoms-php .about-wrap ol p {
+       font-weight: normal;
+       margin: 0.6em 0;
 }
 }
-
 
 /*------------------------------------------------------------------------------
 
 /*------------------------------------------------------------------------------
-  11.0 - Write/Edit Post Screen
+  23.0 - Misc
 ------------------------------------------------------------------------------*/
 
 ------------------------------------------------------------------------------*/
 
-#titlediv {
-       position: relative;
-       margin-bottom: 20px;
-}
-#titlediv label { cursor: text; }
-
-#titlediv div.inside {
+#excerpt,
+.attachmentlinks {
        margin: 0;
        margin: 0;
+       height: 4em;
+       width: 98%;
 }
 
 }
 
-#poststuff #titlewrap {
-       border: 0;
-       padding: 0;
+.wp-editor-container textarea.wp-editor-area {
+       width: 99.9%;
+}
 
 
+#template div {
+       margin-right: 190px;
 }
 
 }
 
-#titlediv #title {
-       padding: 3px 4px;
-       border-width: 1px;
-       border-style: solid;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;
-       font-size: 1.7em;
-       line-height: 100%;
-       width: 100%;
-       outline: none;
+p.pagenav {
+       margin: 0;
+       display: inline;
 }
 
 }
 
-#titlediv #title-prompt-text,
-#wp-fullscreen-title-prompt-text {
-       color: #bbb;
-       position: absolute;
-       font-size: 1.7em;
-       padding: 8px;
+.pagenav span {
+       font-weight: bold;
+       margin: 0 6px;
 }
 
 }
 
-#wp-fullscreen-title-prompt-text {
-       left: 0;
-       padding: 11px;
+.row-title {
+       font-size: 13px !important;
+       font-weight: bold;
 }
 
 }
 
-#poststuff .inside-submitbox,
-#side-sortables .inside-submitbox {
-       margin: 0 3px;
-       font-size: 11px;
+.column-author img, .column-username img {
+       float: left;
+       margin-right: 10px;
+       margin-top: 1px;
 }
 
 }
 
-input#link_description,
-input#link_url {
-       width: 98%;
+.row-actions {
+       visibility: hidden;
+       padding: 2px 0 0;
 }
 
 }
 
-#pending {
-       background: 0 none;
-       border: 0 none;
-       padding: 0;
-       font-size: 11px;
-       margin-top: -1px;
+tr:hover .row-actions,
+div.comment-item:hover .row-actions {
+       visibility: visible;
 }
 
 }
 
-#edit-slug-box {
-       height: 1em;
-       margin-top: 8px;
-       padding: 0 7px;
+.row-actions-visible {
+       padding: 2px 0 0;
 }
 
 }
 
-#editable-post-name-full {
-       display: none;
+.form-table .pre {
+       padding: 8px;
+       margin: 0;
 }
 
 }
 
-#editable-post-name input {
-       width: 16em;
+table.form-table td .updated {
+       font-size: 13px;
 }
 
 }
 
-.postarea h3 label {
+.tagchecklist {
+       margin-left: 14px;
+       font-size: 12px;
+       overflow: auto;
+}
+.tagchecklist strong {
+       margin-left: -8px;
+       position: absolute;
+}
+.tagchecklist span {
+       margin-right: 25px;
+       display: block;
+       float: left;
+       font-size: 11px;
+       line-height: 1.8em;
+       white-space: nowrap;
+       cursor: default;
+}
+.tagchecklist span a {
+       margin: 6px 0pt 0pt -9px;
+       cursor: pointer;
+       width: 10px;
+       height: 10px;
+       display: block;
        float: left;
        float: left;
+       text-indent: -9999px;
+       overflow: hidden;
+       position: absolute;
 }
 
 }
 
-.postarea #add-media-button {
-       float: right;
-       margin: 7px 0pt 0pt;
-       position: relative;
-       right: 10px;
+#poststuff h2 {
+       margin-top: 20px;
+       font-size: 1.5em;
+       margin-bottom: 15px;
+       padding: 0 0 3px;
+       clear: left;
 }
 
 }
 
-#poststuff #editor-toolbar {
-       height: 30px;
+#poststuff h3,
+.metabox-holder h3 {
+       font-size: 15px;
+       font-weight: normal;
+       padding: 7px 10px;
+       margin: 0;
+       line-height: 1;
 }
 
 }
 
-.wp_themeSkin tr.mceFirst td.mceToolbar {
-       border-width: 0 0 1px;
-       border-style: none none solid;
+#poststuff .inside {
+       margin: 6px 0 8px;
 }
 
 }
 
-#edButtonPreview,
-#edButtonHTML {
-       height: 18px;
-       margin: 5px 5px 0 0;
-       padding: 4px 5px 2px;
-       float: right;
-       cursor: pointer;
-       border-width: 1px;
-       border-style: solid;
-       -moz-border-radius: 3px 3px 0 0;
-       -webkit-border-top-right-radius: 3px;
-       -webkit-border-top-left-radius: 3px;
-       -khtml-border-top-right-radius: 3px;
-       -khtml-border-top-left-radius: 3px;
-       border-top-right-radius: 3px;
-       border-top-left-radius: 3px;
+#post-visibility-select,
+#post-formats-select {
+       line-height: 1.5em;
+       margin-top: 3px;
 }
 
 }
 
-.js .theEditor {
-       color: white;
+#poststuff #submitdiv .inside {
+       margin: 0;
+       padding: 0;
 }
 
 }
 
-#poststuff #edButtonHTML {
-       margin-right: 15px;
+#titlediv,
+#poststuff .postarea {
+       margin-bottom: 20px;
 }
 
 }
 
-#media-buttons {
-       cursor: default;
-       padding: 8px 8px 0;
+td.post-title strong,
+td.plugin-title strong {
+       display: block;
+       margin-bottom: .2em;
 }
 
 }
 
-#media-buttons a {
-       cursor: pointer;
-       padding: 0 0 5px 10px;
+td.post-title p,
+td.plugin-title p {
+       margin: 6px 0;
 }
 
 }
 
-#media-buttons img,
-#submitpost #ajax-loading,
-#submitpost .ajax-loading {
-       vertical-align: middle;
+#templateside ul li a {
+       text-decoration: none;
 }
 
 }
 
-#wpcontent .ajax-loading {
-       visibility: hidden;
+.tool-box .title {
+       margin: 8px 0;
+       font-size: 18px;
+       font-weight: normal;
+       line-height: 24px;
 }
 
 }
 
-.submitbox .submit {
-       text-align: left;
-       padding: 12px 10px 10px;
-       font-size: 11px;
+#sidemenu {
+       margin: -30px 15px 0 315px;
+       list-style: none;
+       position: relative;
+       float: right;
+       padding-left: 10px;
+       font-size: 12px;
 }
 
 }
 
-.submitbox .submitdelete {
+#sidemenu a {
+       padding: 0 7px;
+       display: block;
+       float: left;
+       line-height: 28px;
+       border-top-width: 1px;
+       border-top-style: solid;
        border-bottom-width: 1px;
        border-bottom-style: solid;
        border-bottom-width: 1px;
        border-bottom-style: solid;
-       text-decoration: none;
-       padding: 1px 2px;
 }
 
 }
 
-.inside-submitbox #post_status {
-       margin: 2px 0 2px -2px;
+#sidemenu li {
+       display: inline;
+       line-height: 200%;
+       list-style: none;
+       text-align: center;
+       white-space: nowrap;
+       margin: 0;
+       padding: 0;
 }
 
 }
 
-.submitbox .submit a:hover {
-       border-bottom-width: 1px;
-       border-bottom-style: solid;
+#sidemenu a.current {
+       font-weight: normal;
+       padding-left: 6px;
+       padding-right: 6px;
+       -webkit-border-top-left-radius: 3px;
+       -webkit-border-top-right-radius: 3px;
+       border-top-left-radius: 3px;
+       border-top-right-radius: 3px;
+       border-width: 1px;
+       border-style: solid;
 }
 
 }
 
-.submitbox .submit input {
-       margin-bottom: 8px;
-       margin-right: 4px;
-       padding: 6px;
+#sidemenu li a .count-0 {
+       display: none;
 }
 
 }
 
-#post-status-select, #post-format {
-       line-height: 2.5em;
-       margin-top: 3px;
+.plugin-install #description,
+.plugin-install-network #description {
+       width: 60%;
 }
 
 }
 
-/* Post Screen */
-#post-body #normal-sortables {
-       min-height: 50px;
+table .vers,
+table .column-visible,
+table .column-rating {
+       text-align: left;
 }
 
 }
 
-#post-body #advanced-sortables {
-       min-height: 20px;
+.error-message {
+       color: red;
+       font-weight: bold;
 }
 
 }
 
-.postbox {
-       -moz-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       border-radius: 3px;
-       position: relative;
-       min-width: 255px;
+/* Scrollbar fix for bulk upgrade iframe */
+body.iframe {
+       height: 98%;
 }
 
 }
 
-#trackback_url {
-       width: 99%;
-}
 
 
-#normal-sortables .postbox .submit {
-       background: transparent none;
-       border: 0 none;
-       float: right;
-       padding: 0 12px;
-       margin:0;
+/* - Only used once or twice in all of WP - deprecate for global style
+------------------------------------------------------------------------------*/
+td.media-icon {
+       text-align: center;
+       width: 80px;
+       padding-top: 8px;
+       padding-bottom: 8px;
 }
 
 }
 
-#side-sortables .category-add input {
-       width: 94%;
+td.media-icon img {
+       max-width: 80px;
+       max-height: 60px;
 }
 
 }
 
-#side-sortables .category-add select {
-       width: 100%;
+.screen-per-page {
+       width: 3em;
 }
 
 }
 
-#side-sortables .category-add input.category-add-sumbit,
-#post-body .category-add input.category-add input.category-add-sumbit {
-       width: auto;
+.list-ajax-loading {
+       float: right;
+       margin-right: 9px;
+       margin-top: -1px;
 }
 
 }
 
-#post-body ul.category-tabs,
-#post-body ul.add-menu-item-tabs {
-       float: left;
-       width: 120px;
-       text-align: right;
-       /* Negative margin for the sake of those without JS: all tabs display */
-       margin: 0 -120px 0 5px;
-       padding: 0;
+.tablenav .list-ajax-loading {
+       margin-top: 7px;
 }
 
 }
 
-#post-body ul.category-tabs li,
-#post-body ul.add-menu-item-tabs li {
-       padding: 8px;
+#howto {
+       font-size: 11px;
+       margin: 0 5px;
+       display: block;
 }
 
 }
 
-#post-body ul.category-tabs li.tabs,
-#post-body ul.add-menu-item-tabs li.tabs {
-       -moz-border-radius: 3px 0 0 3px;
-       -webkit-border-top-left-radius: 3px;
-       -webkit-border-bottom-left-radius: 3px;
-       -khtml-border-top-left-radius: 3px;
-       -khtml-border-bottom-left-radius: 3px;
-       border-top-left-radius: 3px;
-       border-bottom-left-radius: 3px;
+.importers td {
+       padding-right: 14px;
 }
 
 }
 
-#post-body ul.category-tabs li.tabs a,
-#post-body ul.add-menu-item-tabs li.tabs a {
-       font-weight: bold;
-       text-decoration: none;
+.importers {
+       font-size: 16px;
+       width: auto;
 }
 
 }
 
-.wp-tab-panel,
-.categorydiv div.tabs-panel,
-.customlinkdiv div.tabs-panel,
-.posttypediv div.tabs-panel,
-.taxonomydiv div.tabs-panel,
-#linkcategorydiv div.tabs-panel {
-       height: 200px;
-       overflow: auto;
-       padding: 0.5em 0.9em;
-       border-style: solid;
-       border-width: 1px;
+#namediv table {
+       width: 100%;
 }
 
 }
 
-.nav-menus-php .customlinkdiv div.tabs-panel,
-.nav-menus-php .posttypediv div.tabs-panel,
-.nav-menus-php .taxonomydiv div.tabs-panel {
-       height: auto;
-       max-height: 205px;
+#namediv td.first {
+       width: 10px;
+       white-space: nowrap;
 }
 
 }
 
-div.tabs-panel-active {
-       display:block;
+#namediv input {
+       width: 98%;
 }
 
 }
 
-div.tabs-panel-inactive {
-       display:none;
+#namediv p {
+       margin: 10px 0;
 }
 
 }
 
-#post-body .categorydiv div.tabs-panel,
-.taxonomy div.tabs-panel,
-#post-body #linkcategorydiv div.tabs-panel {
-       margin: 0 5px 0 125px;
+#submitdiv h3 {
+       margin-bottom: 0 !important;
 }
 
 }
 
-#side-sortables .category-tabs li,
-#side-sortables .add-menu-item-tabs li,
-.wp-tab-bar li {
-       display: inline;
-       line-height: 1.35em;
+/* - Used - but could/should be deprecated with a CSS reset
+------------------------------------------------------------------------------*/
+.zerosize {
+       height: 0;
+       width: 0;
+       margin: 0;
+       border: 0;
+       padding: 0;
+       overflow: hidden;
+       position: absolute;
 }
 
 }
 
-#side-sortables .category-tabs a,
-#side-sortables .add-menu-item-tabs a,
-.wp-tab-bar a {
-       text-decoration: none;
+br.clear {
+       height: 2px;
+       line-height: 2px;
 }
 
 }
 
-#side-sortables .category-tabs,
-#side-sortables .add-menu-item-tabs,
-.wp-tab-bar {
-       margin-bottom: 3px;
+.checkbox {
+       border: none;
+       margin: 0;
+       padding: 0;
 }
 
 }
 
-.categorydiv ul,
-.customlinkdiv ul,
-.posttypediv ul,
-.taxonomydiv ul,
-#linkcategorydiv ul {
-       list-style: none;
+fieldset {
+       border: 0;
        padding: 0;
        margin: 0;
 }
 
        padding: 0;
        margin: 0;
 }
 
-#normal-sortables .postbox #replyrow .submit {
-       float: none;
+.post-categories {
+       display: inline;
        margin: 0;
        margin: 0;
-       padding: 3px 7px;
+       padding: 0;
 }
 
 }
 
-#side-sortables .submitbox .submit input,
-#side-sortables .submitbox .submit .preview,
-#side-sortables .submitbox .submit a.preview:hover {
-       border: 0 none;
+.post-categories li {
+       display: inline;
 }
 
 }
 
-#side-sortables .inside-submitbox .insidebox,
-.stuffbox .insidebox {
-       margin: 11px 0;
+
+
+
+
+/*-----------------------------------------------------------------------------
+ MERGED
+-------------------------------------------------------------------------------*/
+
+/* dashboard */
+.edit-box {
+       display: none;
 }
 
 }
 
-#side-sortables .comments-box,
-#normal-sortables .comments-box {
-       border: 0 none;
+h3:hover .edit-box {
+       display: inline;
 }
 }
-ul.category-tabs,
-ul.add-menu-item-tabs,
-ul.wp-tab-bar {
-       margin-top: 12px;
+
+.index-php form .input-text-wrap {
+       background: #fff;
+       border-style: solid;
+       border-width: 1px;
+       padding: 2px 3px;
+       border-color: #ccc;
 }
 
 }
 
-#side-sortables .comments-box thead th,
-#normal-sortables .comments-box thead th {
-       background: transparent;
-       padding: 0 7px 4px;
-       font-style: italic;
+#dashboard-widgets form .input-text-wrap input {
+       border: 0 none;
+       outline: none;
+       margin: 0;
+       padding: 0;
+       width: 99%;
+       color: #333;
 }
 
 }
 
-ul.category-tabs li.tabs,
-ul.add-menu-item-tabs li.tabs,
-.wp-tab-active {
-       border-style: solid solid none;
-       border-width: 1px 1px 0;
+form .textarea-wrap {
+       background: #fff;
+       border-style: solid;
+       border-width: 1px;
+       padding: 2px;
+       border-color: #ccc;
 }
 
 }
 
-#commentsdiv img.waiting {
-       padding-left: 5px;
+#dashboard-widgets form .textarea-wrap textarea {
+       border: 0 none;
+       padding: 0;
+       outline: none;
+       width: 99%;
+       -moz-box-sizing: border-box;
+       -webkit-box-sizing: border-box;
+       box-sizing: border-box;
 }
 
 }
 
-#post-body .category-tabs li.tabs,
-#post-body .add-menu-item-tabs li.tabs {
-       border-style: solid none solid solid;
-       border-width: 1px 0 1px 1px;
-       margin-right: -1px;
+#dashboard-widgets .postbox form .submit {
+       float: none;
+       margin: .5em 0 0;
+       padding: 0;
+       border: none;
 }
 
 }
 
-ul.category-tabs li,
-ul.add-menu-item-tabs li,
-ul.wp-tab-bar li {
-       padding: 5px;
-       -moz-border-radius: 3px 3px 0 0;
-       -webkit-border-top-left-radius: 3px;
-       -webkit-border-top-right-radius: 3px;
-       -khtml-border-top-left-radius: 3px;
-       -khtml-border-top-right-radius: 3px;
-       border-top-left-radius: 3px;
-       border-top-right-radius: 3px;
+#dashboard-widgets-wrap #dashboard-widgets .postbox form .submit input {
+       margin: 0;
 }
 
 }
 
-/* positioning etc. */
+#dashboard-widgets-wrap #dashboard-widgets .postbox form .submit #publish {
+       min-width: 0;
+}
 
 
-form#tags-filter {
-       position: relative;
+#dashboard-widgets a {
+       text-decoration: none;
 }
 
 }
 
-.screen-per-page {
-       width: 3em;
+#dashboard-widgets h3 a {
+       text-decoration: underline;
 }
 
 }
 
-#posts-filter fieldset {
-       float: left;
-       margin: 0 1.5ex 1em 0;
+#dashboard-widgets h3 .postbox-title-action {
+       position: absolute;
+       right: 30px;
        padding: 0;
        padding: 0;
+       top: 5px;
 }
 
 }
 
-#posts-filter fieldset legend {
-       padding: 0 0 .2em 1px;
+#dashboard-widgets h4 {
+       font-weight: normal;
+       font-size: 13px;
+       margin: 0 0 .2em;
+       padding: 0;
 }
 
 }
 
-/* Edit posts */
-
-td.post-title strong, td.plugin-title strong {
-       display: block;
-       margin-bottom: .2em;
+/* Right Now */
+#dashboard_right_now p.sub,
+#dashboard_right_now .table, #dashboard_right_now .versions {
+       margin: -12px;
 }
 
 }
 
-td.post-title p, td.plugin-title p {
-       margin: 6px 0;
+#dashboard_right_now .inside {
+       font-size: 12px;
+       padding-top: 20px;
 }
 
 }
 
-/* Global classes */
+#dashboard_right_now p.sub {
+       padding: 5px 0 15px;
+       color: #8f8f8f;
+       font-size: 14px;
+       position: absolute;
+       top: -17px;
+       left: 15px;
+}
 
 
-.wp-hidden-children .wp-hidden-child,
-.ui-tabs-hide {
-       display: none;
+#dashboard_right_now .table {
+       margin: 0;
+       padding: 0;
+       position: relative;
 }
 
 }
 
-.commentlist .avatar {
-       vertical-align: text-top;
+#dashboard_right_now .table_content {
+       float: left;
+       border-top: #ececec 1px solid;
+       width: 45%;
 }
 
 }
 
-#post-body .tagsdiv #newtag {
-       margin-right: 5px;
-       width: 16em;
+#dashboard_right_now .table_discussion {
+       float: right;
+       border-top: #ececec 1px solid;
+       width: 45%;
 }
 
 }
 
-#side-sortables input#post_password {
-       width: 94%
+#dashboard_right_now table td {
+       padding: 3px 0;
+       white-space: nowrap;
 }
 
 }
 
-#side-sortables .tagsdiv #newtag {
-       width: 68%;
+#dashboard_right_now table tr.first td {
+       border-top: none;
 }
 
 }
 
-#post-status-info {
-       border-width: 0 1px 1px;
-       border-style: none solid solid;
-       width: 100%;
-       -moz-border-radius: 0 0 3px 3px;
-       -webkit-border-bottom-left-radius: 3px;
-       -webkit-border-bottom-right-radius: 3px;
-       -khtml-border-bottom-left-radius: 3px;
-       -khtml-border-bottom-right-radius: 3px;
-       border-bottom-left-radius: 3px;
-       border-bottom-right-radius: 3px;
+#dashboard_right_now td.b {
+       padding-right: 6px;
+       text-align: right;
+       font-size: 14px;
+       width: 1%;
 }
 
 }
 
-#post-status-info td {
-       font-size: 12px;
+#dashboard_right_now td.b a {
+       font-size: 18px;
 }
 
 }
 
-.autosave-info {
-       padding: 2px 15px 2px 2px;
-       text-align: right;
+#dashboard_right_now td.b a:hover {
+       color: #d54e21;
 }
 
 }
 
-#editorcontent #post-status-info {
-       border: none;
+#dashboard_right_now .t {
+       font-size: 12px;
+       padding-right: 12px;
+       padding-top: 6px;
+       color: #777;
 }
 
 }
 
-#post-body .wp_themeSkin .mceStatusbar a.mceResize {
-       display: block;
-       background: transparent url(../images/resize.gif) no-repeat scroll right bottom;
-       width: 12px;
-       cursor: se-resize;
-       margin: 0 2px;
-       position: relative;
-       top: 22px;
+#dashboard_right_now .t a {
+       white-space: nowrap;
 }
 
 }
 
-#wp-word-count {
-       display: block;
-       padding: 2px 7px;
+#dashboard_right_now .spam {
+       color: red;
 }
 
 }
 
-#timestampdiv select {
-       height: 20px;
-       line-height: 14px;
-       padding: 0;
-       vertical-align: top;
+#dashboard_right_now .waiting {
+       color: #e66f00;
 }
 
 }
 
-#jj, #hh, #mn {
-       width: 2em;
-       padding: 1px;
-       font-size: 12px;
+#dashboard_right_now .approved {
+       color: green;
 }
 
 }
 
-#aa {
-       width: 3.4em;
-       padding: 1px;
-       font-size: 12px;
+#dashboard_right_now .versions {
+       padding: 6px 10px 12px;
+       clear: both;
 }
 
 }
 
-.curtime #timestamp {
-       background-repeat: no-repeat;
-       background-position: left top;
-       padding-left: 18px;
+#dashboard_right_now a.button {
+       float: right;
+       clear: right;
+       position: relative;
+       top: -5px;
 }
 
 }
 
-#timestampdiv {
-       padding-top: 5px;
-       line-height: 23px;
+/* Recent Comments */
+#dashboard_recent_comments h3 {
+       margin-bottom: 0;
 }
 
 }
 
-#timestampdiv p {
-       margin: 8px 0 6px;
+#dashboard_recent_comments .inside {
+       margin-top: 0;
 }
 
 }
 
-#timestampdiv input {
-       border-width: 1px;
-       border-style: solid;
+#dashboard_recent_comments .comment-meta .approve {
+       font-style: italic;
+       font-family: sans-serif;
+       font-size: 10px;
 }
 
 }
 
+#dashboard_recent_comments .subsubsub {
+       float: none;
+       white-space: normal;
+}
 
 
-/*------------------------------------------------------------------------------
-  11.1 - Custom Fields
-------------------------------------------------------------------------------*/
+#the-comment-list {
+       position: relative;
+}
 
 
-#postcustomstuff table,
-#postcustomstuff input,
-#postcustomstuff textarea {
-       border-width: 1px;
-       border-style: solid;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;
+#the-comment-list .comment-item {
+       padding: 1em 10px;
+       border-top: 1px solid;
 }
 
 }
 
-#postcustomstuff .updatemeta,
-#postcustomstuff .deletemeta {
-       margin: auto;
+#the-comment-list .pingback {
+       padding-left: 9px !important;
 }
 
 }
 
-#postcustomstuff thead th {
-       padding: 5px 8px 8px;
+#the-comment-list .comment-item,
+#the-comment-list #replyrow {
+       margin: 0 -10px;
 }
 
 }
 
-#postcustom #postcustomstuff .submit {
-       border: 0 none;
-       float: none;
-       padding: 5px 8px;
+#the-comment-list .comment-item:first-child {
+       border-top: none;
 }
 
 }
 
-#side-sortables #postcustom #postcustomstuff .submit {
-       padding: 0 5px;
+#the-comment-list .comment-item .avatar {
+       float: left;
+       margin: 0 10px 5px 0;
 }
 
 }
 
-#side-sortables #postcustom #postcustomstuff td.left input {
-       margin: 3px 3px 0;
+#the-comment-list .comment-item h4 {
+       line-height: 1.7em;
+       margin-top: -0.4em;
+       color: #777;
 }
 
 }
 
-#side-sortables #postcustom #postcustomstuff #the-list textarea {
-       height: 85px;
-       margin: 3px;
+#the-comment-list .comment-item h4 cite {
+       font-style: normal;
+       font-weight: normal;
 }
 
 }
 
-#postcustomstuff table {
+#the-comment-list .comment-item blockquote,
+#the-comment-list .comment-item blockquote p {
        margin: 0;
        margin: 0;
-       width: 100%;
-       border-width: 1px;
-       border-style: solid;
-       border-spacing: 0;
+       padding: 0;
+       display: inline;
 }
 
 }
 
-#postcustomstuff table input,
-#postcustomstuff table select,
-#postcustomstuff table textarea {
-       width: 95%;
-       margin: 8px 0 8px 8px;
+#dashboard_recent_comments #the-comment-list .trackback blockquote,
+#dashboard_recent_comments #the-comment-list .pingback blockquote {
+       display: block;
 }
 
 }
 
-#postcustomstuff th.left,
-#postcustomstuff td.left {
-       width: 38%;
+#the-comment-list .comment-item p.row-actions {
+       margin: 3px 0 0;
+       padding: 0;
+       font-size: 12px;
 }
 
 }
 
-#postcustomstuff .submit input {
-       width: auto;
+/* QuickPress */
+#dashboard_quick_press h4 {
+       font-family: sans-serif;
+       float: left;
+       width: 5em;
+       clear: both;
+       font-weight: normal;
+       text-align: right;
+       font-size: 12px;
 }
 
 }
 
-#postcustomstuff #newmeta .submit {
-       padding: 0 8px;
+#dashboard_quick_press h4 label {
+       margin-right: 10px;
 }
 
 }
 
-#postcustomstuff table #addmetasub {
-       width: auto;
+#dashboard_quick_press .input-text-wrap,
+#dashboard_quick_press .textarea-wrap {
+       margin: 0 0 1em 5em;
 }
 
 }
 
-#postcustomstuff #newmetaleft {
-       vertical-align: top;
+#dashboard_quick_press .wp-media-buttons {
+       margin: 0 0 .5em 5em;
+       padding: 0;
 }
 
 }
 
-#postcustomstuff #newmetaleft a {
-       padding: 0 10px;
-       text-decoration: none;
+#dashboard_quick_press .wp-media-buttons a {
+       color: #777;
 }
 
 }
 
+#dashboard-widgets #dashboard_quick_press form p.submit {
+       margin-left: 4.6em;
+}
 
 
-/*------------------------------------------------------------------------------
-  11.2 - Post Revisions
-------------------------------------------------------------------------------*/
-
-table.diff {
-       width: 100%;
+#dashboard-widgets #dashboard_quick_press form p.submit input {
+       float: left;
 }
 
 }
 
-table.diff col.content {
-       width: 50%;
+#dashboard-widgets #dashboard_quick_press form p.submit #save-post {
+       margin: 0 1em 0 10px;
 }
 
 }
 
-table.diff tr {
-       background-color: transparent;
+#dashboard-widgets #dashboard_quick_press form p.submit #publish {
+       float: right;
 }
 
 }
 
-table.diff td, table.diff th {
-       padding: .5em;
-       font-family: Consolas, Monaco, monospace;
-       border: none;
+#dashboard-widgets #dashboard_quick_press form p.submit img.waiting {
+       vertical-align: middle;
+       visibility: hidden;
+       margin: 4px 6px 0 0;
 }
 
 }
 
-table.diff .diff-deletedline del, table.diff .diff-addedline ins {
-       text-decoration: none;
+/* Recent Drafts */
+#dashboard_recent_drafts ul,
+#dashboard_recent_drafts p {
+       margin: 0;
+       padding: 0;
 }
 
 }
 
+#dashboard_recent_drafts ul {
+       list-style: none;
+}
 
 
-/*------------------------------------------------------------------------------
-  12.0 - Categories
-------------------------------------------------------------------------------*/
+#dashboard_recent_drafts ul li {
+       margin-bottom: 1em;
+}
 
 
-.category-adder {
-       margin-left: 120px;
-       padding: 4px 0;
+#dashboard_recent_drafts h4 {
+       line-height: 1.7em;
 }
 
 }
 
-.category-adder h4 {
-       margin: 0 0 8px;
+#dashboard_recent_drafts h4 abbr {
+       font-weight: normal;
+       font-family: sans-serif;
+       font-size: 12px;
+       color: #999;
+       margin-left: 3px;
 }
 
 }
 
-#side-sortables .category-adder {
+/* Feeds */
+.rss-widget ul {
        margin: 0;
        margin: 0;
+       padding: 0;
+       list-style: none;
 }
 
 }
 
-#post-body .category-add input, .category-add select {
-       width: 30%;
+a.rsswidget {
+       font-size: 13px;
+       line-height: 1.7em;
 }
 
 }
 
-#side-sortables .category-add select {
-       width: 100%;
+.rss-widget ul li {
+       line-height: 1.5em;
+       margin-bottom: 12px;
 }
 
 }
 
-#side-sortables .category-add input.category-add-sumbit, #post-body .category-add input.category-add input.category-add-sumbit {
-       width: auto;
+.rss-widget span.rss-date {
+       color: #999;
+       font-size: 12px;
+       margin-left: 3px;
 }
 
 }
 
-#post-body ul.category-tabs,
-#post-body ul.add-menu-item-tabs {
-       float: left;
-       width: 120px;
+.rss-widget cite {
+       display: block;
        text-align: right;
        text-align: right;
-       /* Negative margin for the sake of those without JS: all tabs display */
-       margin: 0 -120px 0 5px;
+       margin: 0 0 1em;
        padding: 0;
 }
 
        padding: 0;
 }
 
-#post-body ul.category-tabs li,
-#post-body ul.add-menu-item-tabs li {
-       padding: 8px;
+.rss-widget cite:before {
+       content: '\2014';
 }
 
 }
 
-#post-body ul.category-tabs li.tabs,
-#post-body ul.add-menu-item-tabs li.tabs {
-       -moz-border-radius: 3px 0 0 3px;
-       -webkit-border-top-left-radius: 3px;
-       -webkit-border-bottom-left-radius: 3px;
-       -khtml-border-top-left-radius: 3px;
-       -khtml-border-bottom-left-radius: 3px;
-       border-top-left-radius: 3px;
-       border-bottom-left-radius: 3px;
+/* Plugins */
+#dashboard_plugins h4 {
+       line-height: 1.7em;
 }
 
 }
 
-#post-body ul.category-tabs li.tabs a,
-#post-body ul.add-menu-item-tabs li.tabs a {
-       font-weight: bold;
-       text-decoration: none;
+#dashboard_plugins h5 {
+       font-weight: normal;
+       font-size: 13px;
+       margin: 0;
+       display: inline;
+       line-height: 1.4em;
 }
 
 }
 
-.categorydiv div.tabs-panel,
-.customlinkdiv div.tabs-panel,
-.posttypediv div.tabs-panel,
-.taxonomydiv div.tabs-panel,
-#linkcategorydiv div.tabs-panel {
-       height: 200px;
-       overflow: auto;
-       padding: 0.5em 0.9em;
-       border-style: solid;
-       border-width: 1px;
+#dashboard_plugins h5 a {
+       line-height: 1.4em;
 }
 
 }
 
-.nav-menus-php .customlinkdiv div.tabs-panel,
-.nav-menus-php .posttypediv div.tabs-panel,
-.nav-menus-php .taxonomydiv div.tabs-panel {
-       height: auto;
-       max-height: 205px;
+#dashboard_plugins .inside span {
+       font-size: 12px;
+       padding-left: 5px;
 }
 
 }
 
-div.tabs-panel-active {
-       display:block;
+#dashboard_plugins p {
+       margin: 0.3em 0 1.4em;
+       line-height: 1.4em;
 }
 
 }
 
-div.tabs-panel-inactive {
-       display:none;
+.dashboard-comment-wrap {
+       overflow: hidden;
+       word-wrap: break-word;
 }
 
 }
 
-#post-body .categorydiv div.tabs-panel,
-.taxonomy div.tabs-panel,
-#post-body #linkcategorydiv div.tabs-panel {
-       margin: 0 5px 0 125px;
+/* Browser Nag */
+#dashboard_browser_nag a.update-browser-link {
+       font-size: 1.2em;
+       font-weight: bold;
 }
 
 }
 
-.categorydiv ul,
-.customlinkdiv ul,
-.posttypediv ul,
-.taxonomydiv ul,
-#linkcategorydiv ul {
-       list-style: none;
-       padding: 0;
-       margin: 0;
+#dashboard_browser_nag a {
+       text-decoration: underline;
 }
 
 }
 
-#front-page-warning,
-#front-static-pages ul,
-ul.export-filters,
-.inline-editor ul.cat-checklist ul,
-.categorydiv ul.categorychecklist ul,
-.customlinkdiv ul.categorychecklist ul,
-.posttypediv ul.categorychecklist ul,
-.taxonomydiv ul.categorychecklist ul,
-#linkcategorydiv ul.categorychecklist ul {
-       margin-left: 18px;
+#dashboard_browser_nag p.browser-update-nag.has-browser-icon {
+       padding-right: 125px;
 }
 
 }
 
-ul.categorychecklist li {
-       margin: 0;
-       padding: 0;
-       line-height: 19px;
-       word-wrap: break-word;
+#dashboard_browser_nag .browser-icon {
+       margin-top: -35px;
 }
 
 }
 
-.categorydiv .tabs-panel,
-.customlinkdiv .tabs-panel,
-.posttypediv .tabs-panel,
-.taxonomydiv .tabs-panel {
-       border-width: 3px;
-       border-style: solid;
+#dashboard_browser_nag.postbox.browser-insecure {
+       background-color: #ac1b1b;
+       border-color: #ac1b1b;
+}
+
+#dashboard_browser_nag.postbox {
+       background-color: #e29808;
+       background-image: none;
+       border-color: #edc048;
+       -moz-box-shadow: none;
+       -webkit-box-shadow: none;
+       box-shadow: none;
+       color: #fff;
 }
 
 }
 
-ul.category-tabs,
-ul.add-menu-item-tabs {
-       margin-top: 12px;
+#dashboard_browser_nag.postbox.browser-insecure h3 {
+       border-bottom-color: #cd5a5a;
+       color: #fff;
 }
 
 }
 
-ul.category-tabs li.tabs,
-ul.add-menu-item-tabs li.tabs {
-       border-style: solid solid none;
-       border-width: 1px 1px 0;
+#dashboard_browser_nag.postbox h3 {
+       border-bottom-color: #f6e2ac;
+       text-shadow: none;
+       -moz-box-shadow: none;
+       -webkit-box-shadow: none;
+       box-shadow: none;
+       background: transparent none;
+       color: #fff;
 }
 
 }
 
-#post-body .category-tabs li.tabs,
-#post-body .add-menu-item-tabs li.tabs {
-       border-style: solid none solid solid;
-       border-width: 1px 0 1px 1px;
-       margin-right: -1px;
+#dashboard_browser_nag a {
+       color: #fff;
 }
 
 }
 
-ul.category-tabs li,
-ul.add-menu-item-tabs li {
-       padding: 5px;
-       -moz-border-radius: 3px 3px 0 0;
-       -webkit-border-top-left-radius: 3px;
-       -webkit-border-top-right-radius: 3px;
-       -khtml-border-top-left-radius: 3px;
-       -khtml-border-top-right-radius: 3px;
-       border-top-left-radius: 3px;
-       border-top-right-radius: 3px;
+#dashboard_browser_nag.browser-insecure a.browse-happy-link,
+#dashboard_browser_nag.browser-insecure a.update-browser-link {
+       text-shadow: #871b15 0 1px 0;
 }
 
 }
 
-.form-wrap {
-       margin: 10px 0;
-       width: 97%;
+#dashboard_browser_nag a.browse-happy-link,
+#dashboard_browser_nag a.update-browser-link {
+       text-shadow: #d29a04 0 1px 0;
 }
 
 }
 
-.form-wrap p,
-.form-wrap label {
-       font-size: 11px;
+
+/* login */
+
+.login * {
+       margin: 0;
+       padding: 0;
 }
 
 }
 
-.form-wrap label {
-       display: block;
-       padding: 2px;
-       font-size: 12px;
+.login form {
+       margin-left: 8px;
+       padding: 26px 24px 46px;
+       font-weight: normal;
+       background: #fff;
+       border: 1px solid #e5e5e5;
+       -moz-box-shadow: rgba(200, 200, 200, 0.7) 0px 4px 10px -1px;
+       -webkit-box-shadow: rgba(200, 200, 200, 0.7) 0px 4px 10px -1px;
+       box-shadow: rgba(200, 200, 200, 0.7) 0px 4px 10px -1px;
 }
 
 }
 
-.form-field input,
-.form-field textarea {
-       border-style: solid;
-       border-width: 1px;
-       width: 95%;
+.login form .forgetmenot {
+       font-weight: normal;
+       float: left;
+       margin-bottom: 0;
 }
 
 }
 
-p.description,
-.form-wrap p {
-       margin: 2px 0 5px;
+.login .button-primary {
+       font-size: 13px !important;
+       line-height: 16px;
+       padding: 3px 10px;
+       float: right;
 }
 
 }
 
-p.help,
-p.description,
-span.description,
-.form-wrap p {
-       font-size: 12px;
-       font-style: italic;
-       font-family: sans-serif;
+#login form p {
+       margin-bottom: 0;
 }
 
 }
 
-.form-wrap .form-field {
-       margin: 0 0 10px;
-       padding: 8px;
+#login form p.submit {
+       padding: 0;
 }
 
 }
 
-.col-wrap h3 {
-       margin: 12px 0;
-       font-size: 1.1em;
+.login label {
+       color: #777;
+       font-size: 14px;
 }
 
 }
 
-.col-wrap p.submit {
-       margin-top: -10px;
+.login form .forgetmenot label {
+       font-size: 12px;
+       line-height: 19px;
 }
 
 }
 
+.login form p {
+       margin-bottom: 24px;
+}
 
 
-/*------------------------------------------------------------------------------
-  13.0 - Tags
-------------------------------------------------------------------------------*/
+.login h1 a {
+       background: url(../images/logo-login.png) no-repeat top center;
+       width: 326px;
+       height: 67px;
+       text-indent: -9999px;
+       overflow: hidden;
+       padding-bottom: 15px;
+       display: block;
+}
 
 
-.taghint {
-       color: #aaa;
-       margin: 15px 0 -24px 12px;
+#login {
+       width: 320px;
+       padding: 114px 0 0;
+       margin: auto;
 }
 
 }
 
-#poststuff .tagsdiv .howto {
-       margin: 0 0 6px 8px;
+#login_error,
+.login .message {
+       margin: 0 0 16px 8px;
+       padding: 12px;
 }
 
 }
 
-.ajaxtag .newtag {
-       position: relative;
+.login #nav,
+.login #backtoblog {
+       text-shadow: #fff 0 1px 0;
+       margin: 0 0 0 16px;
+       padding: 16px 16px 0;
 }
 
 }
 
-.tagsdiv .newtag {
-       width: 180px;
+#backtoblog {
+       padding: 12px 16px 0;
 }
 
 }
 
-.tagsdiv .the-tags {
-       display: block;
-       height: 60px;
-       margin: 0 auto;
-       overflow: auto;
-       width: 260px;
+.login form .input {
+       font-weight: 200;
+       font-size: 24px;
+       line-height: 1;
+       width: 100%;
+       padding: 3px;
+       margin-top: 2px;
+       margin-right: 6px;
+       margin-bottom: 16px;
+       border: 1px solid #e5e5e5;
+       background: #fbfbfb;
+       outline: none;
+       -moz-box-shadow: inset 1px 1px 2px rgba(200, 200, 200, 0.2);
+       -webkit-box-shadow: inset 1px 1px 2px rgba(200, 200, 200, 0.2);
+       box-shadow: inset 1px 1px 2px rgba(200, 200, 200, 0.2);
 }
 
 }
 
-#post-body-content .tagsdiv .the-tags {
-       margin: 0 5px;
+.login input {
+       color: #555;
 }
 
 }
 
-p.popular-tags {
-       -moz-border-radius: 8px;
-       -khtml-border-radius: 8px;
-       -webkit-border-radius: 8px;
-       border-radius: 8px;
-       border-width: 1px;
+.login #pass-strength-result {
+       width: 250px;
+       font-weight: bold;
        border-style: solid;
        border-style: solid;
-       line-height: 2em;
-       padding: 8px 12px 12px;
-       text-align: justify;
+       border-width: 1px;
+       margin: 12px 0 6px;
+       padding: 6px 5px;
+       text-align: center;
 }
 
 }
 
-p.popular-tags a {
-       padding: 0 3px;
-}
 
 
-.tagcloud {
-       width: 97%;
-       margin: 0 0 40px;
-       text-align: justify;
+/* ms */
+/* Dashboard: MS Specific Data */
+#dashboard_right_now p.musub {
+       margin-top: 12px;
+       border-top: 1px solid #ececec;
+       padding-left: 16px;
+       position: static;
 }
 
 }
 
-.tagcloud h3 {
-       margin: 2px 0 12px;
+.rtl #dashboard_right_now p.musub {
+       padding-left: 0;
+       padding-right: 16px;
 }
 
 }
 
-.ac_results {
-       padding: 0;
-       margin: 0;
-       list-style: none;
-       position: absolute;
-       z-index: 10000;
-       display: none;
-       border-width: 1px;
-       border-style: solid;
+#dashboard_right_now td.b a.musublink {
+       font-size: 16px;
 }
 
 }
 
-.ac_results li {
-       padding: 2px 5px;
-       white-space: nowrap;
-       text-align: left;
+#dashboard_right_now div.musubtable {
+       border-top: none;
 }
 
 }
 
-.ac_over {
-       cursor: pointer;
+#dashboard_right_now div.musubtable .t {
+       white-space: normal;
 }
 
 }
 
-.ac_match {
-       text-decoration: underline;
+/* Background Color for Site Status */
+.wp-list-table .site-deleted {
+       background: #ff8573;
+}
+.wp-list-table .site-spammed {
+       background: #faafaa;
+}
+.wp-list-table .site-archived {
+       background: #ffebe8;
+}
+.wp-list-table .site-mature {
+       background: #fecac2;
 }
 
 
 }
 
 
-/*------------------------------------------------------------------------------
-  14.0 - Media Screen
-------------------------------------------------------------------------------*/
+/* nav-menu */
 
 
-#wpbody-content #media-items .describe {
-       border-collapse: collapse;
-       width: 100%;
-       border-top-style: solid;
-       border-top-width: 1px;
-       clear: both;
-       cursor: default;
-       padding: 5px;
+#nav-menus-frame {
+       margin-left: 300px;
 }
 
 }
 
-#wpbody-content .describe th {
-       vertical-align: top;
-       text-align: left;
-       padding: 10px;
-       width: 140px;
+#wpbody-content #menu-settings-column {
+       display:inline;
+       width:281px;
+       margin-left: -300px;
+       clear: both;
+       float: left;
+       padding-top: 24px;
 }
 
 }
 
-#wpbody-content .describe .media-item-info tr {
-       background-color: transparent;
+.no-js #wpbody-content #menu-settings-column {
+       padding-top: 31px;
 }
 
 }
 
-#wpbody-content .describe .media-item-info td {
-       padding: 4px 10px 0;
+#menu-settings-column .inside {
+       clear: both;
 }
 
 }
 
-.describe .media-item-info .A1B1 {
-       padding: 0 0 0 10px;
+.metabox-holder-disabled .postbox {
+       opacity: 0.5;
+       filter: alpha(opacity=50);
 }
 
 }
 
-#wpbody-content .filename {
-       padding: 0 10px;
+.metabox-holder-disabled .button-controls .select-all {
+       display: none;
 }
 
 }
 
-#wpbody-content .media-item .thumbnail {
-       max-height: 128px;
-       max-width: 128px;
+#wpbody {
+       position: relative;
 }
 
 }
 
-#wpbody-content #async-upload-wrap a {
-       display: none;
+/* Menu Container */
+#menu-management-liquid {
+       float: left;
+       min-width: 100%;
 }
 
 }
 
-.media-upload-form td label {
-       margin-right: 6px;
-       margin-left: 2px;
+#menu-management {
+       position: relative;
+       margin-right: 20px;
+       margin-top: -3px;
+       width: 100%;
 }
 
 }
 
-.media-upload-form .align .field label {
-       display: inline;
-       padding: 0 0 0 22px;
-       margin: 0 1em 0 0;
-       font-weight: bold;
+#menu-management .menu-edit {
+       margin-bottom: 20px;
 }
 
 }
 
-.media-upload-form tr.image-size label {
-       margin: 0 0 0 3px;
-       font-weight: bold;
+.nav-menus-php #post-body {
+       padding: 10px;
+       border-width: 1px 0;
+       border-style: solid;
 }
 
 }
 
-.media-upload-form th.label label {
-       font-weight: bold;
-       margin: 0.5em;
-       font-size: 13px;
+#nav-menu-header,
+#nav-menu-footer {
+       padding: 0 10px;
 }
 
 }
 
-.media-upload-form th.label label span {
-       padding: 0 5px;
+#nav-menu-header {
+       border-bottom: 1px solid;
 }
 
 }
 
-abbr.required {
-       border: medium none;
-       text-decoration: none;
+#nav-menu-footer {
+       border-top: 1px solid;
 }
 
 }
 
-#wpbody-content .describe input[type="text"],
-#wpbody-content .describe textarea {
-       width: 460px;
+.nav-menus-php #post-body div.updated,
+.nav-menus-php #post-body div.error {
+       margin: 0;
 }
 
 }
 
-#wpbody-content .describe p.help {
-       margin: 0;
-       padding: 0 0 0 5px;
+.nav-menus-php #post-body-content {
+       position: relative;
 }
 
 }
 
-.media-item .error-div a.dismiss,
-.describe-toggle-on,
-.describe-toggle-off {
-       display: block;
-       line-height: 36px;
-       float: right;
-       margin-right: 20px;
+#menu-management .menu-add-new abbr {
+       font-weight:bold;
 }
 
 }
 
-.describe-toggle-off {
-       display: none;
+/* Menu Tabs */
+
+#menu-management .nav-tabs-nav {
+       margin: 0 20px;
 }
 
 }
 
-#wpbody-content .media-item {
-       border-bottom-style: solid;
-       border-bottom-width: 1px;
-       min-height: 36px;
-       position: relative;
-       width: 100%;
+#menu-management .nav-tabs-arrow {
+       width: 10px;
+       padding: 0 5px 4px;
+       cursor: pointer;
+       position: absolute;
+       top: 0;
+       line-height: 22px;
+       font-size: 18px;
+       text-shadow: 0 1px 0 #fff;
 }
 
 }
 
-#wpbody-content .media-single .media-item {
-       border-bottom-style: none;
-       border-bottom-width: 0;
+#menu-management .nav-tabs-arrow-left {
+       left: 0;
 }
 
 }
 
-#wpbody-content #media-items {
-       border-style: solid solid none;
-       border-width: 1px;
-       width: 670px;
+#menu-management .nav-tabs-arrow-right {
+       right: 0;
+       text-align: right;
 }
 
 }
 
-#wpbody-content #media-items .filename {
-       line-height: 36px;
+#menu-management .nav-tabs-wrapper {
+       width: 100%;
+       height: 28px;
+       margin-bottom: -1px;
        overflow: hidden;
 }
 
        overflow: hidden;
 }
 
-.media-item .error-div {
-       padding-left: 10px;
+#menu-management .nav-tabs {
+       padding-left: 20px;
+       padding-right: 10px;
 }
 
 }
 
-.media-item .pinkynail {
+.js #menu-management .nav-tabs {
        float: left;
        float: left;
-       margin: 2px;
-       max-width: 40px;
-       max-height: 32px;
+       margin-left: 0px;
+       margin-right: -400px;
 }
 
 }
 
-.media-item .startopen,
-.media-item .startclosed {
-       display: none;
+#menu-management .nav-tab {
+       margin-bottom: 0;
+       font-size: 14px;
 }
 
 }
 
-.media-item .original {
-       position: relative;
-       height: 34px;
-       width: 503px;
+#select-nav-menu-container {
+       text-align: right;
+       padding: 0 10px 3px 10px;
+       margin-bottom: 5px;
 }
 
 }
 
-.media-item .percent {
-       font-weight: bold;
+#select-nav-menu {
+       width: 100px;
+       display: inline;
+}
+
+#menu-name-label {
+       margin-top: -2px;
 }
 
 }
 
-.crunching {
+#wpbody .open-label {
        display: block;
        display: block;
-       line-height: 32px;
-       text-align: right;
-       margin-right: 5px;
+       float:left;
 }
 
 }
 
-.progress {
-       position: relative;
-       margin-bottom: -36px;
-       height: 36px;
+#wpbody .open-label span {
+       padding-right: 10px;
 }
 
 }
 
-.bar {
-       width: 0;
-       height: 100%;
-       border-right-width: 3px;
-       border-right-style: solid;
+.js .input-with-default-title {
+       font-style: italic;
 }
 
 }
 
-.upload-php .fixed .column-parent {
-       width: 25%;
+#menu-management .inside {
+       padding: 0 10px;
 }
 
 }
 
+/* Add Menu Item Boxes */
+.postbox .howto input {
+       width: 180px;
+       float: right;
+}
 
 
-/*------------------------------------------------------------------------------
-  14.1 - Media Uploader
-------------------------------------------------------------------------------*/
-
-.find-box {
-       width: 500px;
-       height: 300px;
-       overflow: hidden;
-       padding: 33px 5px 40px;
-       position: absolute;
-       z-index: 1000;
+.customlinkdiv .howto input {
+       width: 200px;
 }
 
 }
 
-.find-box-head {
-       cursor: move;
-       font-weight: bold;
-       height: 2em;
-       line-height: 2em;
-       padding: 1px 12px;
-       position: absolute;
-       top: 5px;
+#nav-menu-theme-locations .howto select {
        width: 100%;
 }
 
        width: 100%;
 }
 
-.find-box-inside {
-       overflow: auto;
-       width: 100%;
-       height: 100%;
+#nav-menu-theme-locations .button-controls {
+       text-align: right;
 }
 
 }
 
-.find-box-search {
-       padding: 12px;
-       border-width: 1px;
-       border-style: none none solid;
+.add-menu-item-view-all {
+       height: 400px;
 }
 
 }
 
-#find-posts-response {
-       margin: 8px 0;
-       padding: 0 1px;
+/* Button Primary Actions */
+#menu-container .submit {
+       margin: 0px 0px 10px;
+       padding: 0px;
 }
 
 }
 
-#find-posts-response table {
-       width: 100%;
+.nav-menus-php .meta-sep,
+.nav-menus-php .submitdelete,
+.nav-menus-php .submitcancel {
+       display: block;
+       float: left;
+       margin: 4px 0;
+       line-height: 15px;
 }
 
 }
 
-#find-posts-response .found-radio {
-       padding: 5px 0 0 8px;
-       width: 15px;
+.meta-sep {
+       padding: 0 2px;
 }
 
 }
 
-.find-box-buttons {
-       width: 480px;
-       margin: 8px;
+#cancel-save {
+       text-decoration: underline;
+       font-size: 12px;
+       margin-left: 20px;
+       margin-top: 5px;
 }
 
 }
 
-.find-box-search label {
-       padding-right: 6px;
+/* Button Secondary Actions */
+.list-controls {
+       float: left;
+       margin-top: 5px;
 }
 
 }
 
-.find-box #resize-se {
-       position: absolute;
-       right: 1px;
-       bottom: 1px;
+.add-to-menu {
+       float: right;
 }
 
 }
 
-ul#dismissed-updates {
+.postbox img.waiting {
        display: none;
        display: none;
+       vertical-align: middle;
 }
 
 }
 
-form.upgrade {
-       margin-top: 8px;
+.button-controls {
+       clear:both;
+       margin: 10px 0;
 }
 
 }
 
-form.upgrade .hint {
-       font-style: italic;
-       font-size: 85%;
-       margin: -0.5em 0 2em 0;
+.show-all,
+.hide-all {
+       cursor: pointer;
 }
 
 }
 
-#poststuff .inside .the-tagcloud {
-       margin: 5px 0 10px;
-       padding: 8px;
-       border-width: 1px;
-       border-style: solid;
-       line-height: 1.8em;
-       word-spacing: 3px;
-       -moz-border-radius: 6px;
-       -khtml-border-radius: 6px;
-       -webkit-border-radius: 6px;
-       border-radius: 6px;
+.hide-all {
+       display: none;
 }
 
 }
 
-br.clear {
-       height: 2px;
-       line-height: 2px;
+/* Create Menu */
+#menu-name {
+       width: 270px;
 }
 
 }
 
-.swfupload {
-       margin: 5px 10px;
-       vertical-align: middle;
+#manage-menu .inside {
+       padding: 0px 0px;
 }
 
 }
 
+/* Custom Links */
+#available-links dt {
+       display: block;
+}
 
 
-/*------------------------------------------------------------------------------
-  14.2 - Image Editor
-------------------------------------------------------------------------------*/
+#add-custom-link .howto {
+       font-size: 12px;
+}
 
 
-.describe .image-editor {
-       vertical-align: top;
+#add-custom-link label span {
+       display: block;
+       float: left;
+       margin-top: 5px;
+       padding-right: 5px;
 }
 
 }
 
-.imgedit-wrap {
-       position: relative;
+.menu-item-textbox {
+       width: 180px;
 }
 
 }
 
-.imgedit-settings p {
-       margin: 8px 0;
+.nav-menus-php .howto span {
+       margin-top: 4px;
+       display: block;
+       float: left;
 }
 
 }
 
-.describe .imgedit-wrap table td {
-       vertical-align: top;
-       padding-top: 0;
+/* Menu item types */
+.quick-search {
+       width: 190px;
 }
 
 }
 
-.imgedit-wrap p,
-.describe .imgedit-wrap table td {
-       font-size: 11px;
-       line-height: 18px;
+.nav-menus-php .list-wrap {
+       display: none;
+       clear: both;
+       margin-bottom: 10px;
 }
 
 }
 
-.describe .imgedit-wrap table td.imgedit-settings {
-       padding: 0 5px;
+.nav-menus-php .list-container {
+       max-height: 200px;
+       overflow-y: auto;
+       padding: 10px 10px 5px;
 }
 
 }
 
-td.imgedit-settings input {
-       vertical-align: middle;
+.nav-menus-php .postbox p.submit {
+       margin-bottom: 0;
 }
 
 }
 
-.imgedit-wait {
-       position: absolute;
-       top: 0;
-       background: #FFFFFF url(../images/wpspin_light.gif) no-repeat scroll 22px 10px;
-       opacity: 0.7;
-       filter: alpha(opacity=70);
-       width: 100%;
-       height: 500px;
+/* Listings */
+.nav-menus-php .list li {
        display: none;
        display: none;
+       margin: 0;
+       margin-bottom: 5px;
 }
 
 }
 
-.media-disabled,
-.imgedit-settings .disabled  {
-       color: grey;
+.nav-menus-php .list li .menu-item-title {
+       cursor: pointer;
+       display: block;
 }
 
 }
 
-.imgedit-wait-spin {
-       padding: 0 4px 4px;
-       vertical-align: bottom;
-       visibility: hidden;
+.nav-menus-php .list li .menu-item-title input {
+       margin-right: 3px;
+       margin-top: -3px;
 }
 
 }
 
-.imgedit-menu {
-       margin: 0 0 12px;
-       min-width: 300px;
+/* Nav Menu */
+#menu-container .inside {
+       padding-bottom: 10px;
 }
 
 }
 
-.imgedit-menu div {
-       float: left;
-       width: 32px;
-       height: 32px;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;
-       border-width: 1px;
-       border-style: solid;
+.menu {
+       padding-top:1em;
 }
 
 }
 
-.imgedit-crop-wrap {
-       position: relative;
+#menu-to-edit {
+       padding: 1em 0;
 }
 
 }
 
-.imgedit-crop {
-       background: transparent url(../images/imgedit-icons.png) no-repeat scroll -9px -31px;
-       margin: 0 8px 0 0;
+.menu ul {
+       width: 100%;
 }
 
 }
 
-.imgedit-crop.disabled:hover {
-       background-position: -9px -31px;
+.menu li {
+       margin-bottom: 0;
+       position:relative;
 }
 
 }
 
-.imgedit-crop:hover {
-       background-position: -9px -1px;
+.menu-item-bar {
+       clear:both;
+       line-height:1.5em;
+       position:relative;
+       margin: 13px 0 0 0;
 }
 
 }
 
-.imgedit-rleft {
-       background: transparent url(../images/imgedit-icons.png) no-repeat scroll -46px -31px;
-       margin: 0 3px;
+.menu-item-handle {
+       border: 1px solid #dfdfdf;
+       position: relative;
+       padding-left: 10px;
+       height: auto;
+       width: 400px;
+       line-height: 35px;
+       text-shadow: 0 1px 0 #FFFFFF;
+       overflow: hidden;
+       word-wrap: break-word;
 }
 
 }
 
-.imgedit-rleft.disabled:hover {
-       background-position: -46px -31px;
+#menu-to-edit .menu-item-invalid .menu-item-handle {
+       background-color: #f6c9cc; /* Fallback */
+       background-image: -ms-linear-gradient(bottom, #f6c9cc, #fdf8ff); /* IE10 */
+       background-image: -moz-linear-gradient(bottom, #f6c9cc, #fdf8ff); /* Firefox */
+       background-image: -o-linear-gradient(bottom, #f6c9cc, #fdf8ff); /* Opera */
+       background-image: -webkit-gradient(linear, left bottom, left top, from(#f6c9cc), to(#fdf8ff)); /* old Webkit  */
+       background-image: -webkit-linear-gradient(bottom, #f6c9cc, #fdf8ff); /* new Webkit */
+       background-image: linear-gradient(bottom, #f6c9cc, #fdf8ff); /* proposed W3C Markup */
 }
 
 }
 
-.imgedit-rleft:hover {
-       background-position: -46px -1px;
+.menu-item-edit-active .menu-item-handle {
+       -webkit-border-bottom-right-radius: 0;
+       -webkit-border-bottom-left-radius: 0;
+       border-bottom-right-radius: 0;
+       border-bottom-left-radius: 0;
 }
 
 }
 
-.imgedit-rright {
-       background: transparent url(../images/imgedit-icons.png) no-repeat scroll -77px -31px;
-       margin: 0 8px 0 3px;
+.no-js .menu-item-edit-active .item-edit {
+       display: none;
 }
 
 }
 
-.imgedit-rright.disabled:hover {
-       background-position: -77px -31px;
+.js .menu-item-handle {
+       cursor: move;
 }
 
 }
 
-.imgedit-rright:hover {
-       background-position: -77px -1px;
+.menu li.deleting .menu-item-handle {
+       background-image: none;
+       text-shadow: 0 0 0;
 }
 
 }
 
-.imgedit-flipv {
-       background: transparent url(../images/imgedit-icons.png) no-repeat scroll -115px -31px;
-       margin: 0 3px;
+.menu-item-handle .item-title {
+       font-size: 12px;
+       font-weight: bold;
+       padding: 7px 0;
+       line-height: 20px;
+       display:block;
+       margin-right:13em;
 }
 
 }
 
-.imgedit-flipv.disabled:hover {
-       background-position: -115px -31px;
+/* Sortables */
+li.menu-item.ui-sortable-helper dl {
+       margin-top: 0;
 }
 
 }
 
-.imgedit-flipv:hover {
-       background-position: -115px -1px;
+li.menu-item.ui-sortable-helper .menu-item-transport dl {
+       margin-top: 13px;
 }
 
 }
 
-.imgedit-fliph {
-       background: transparent url(../images/imgedit-icons.png) no-repeat scroll -147px -31px;
-       margin: 0 8px 0 3px;
+.menu .sortable-placeholder {
+       height: 35px;
+       width: 410px;
+       margin-top: 13px;
 }
 
 }
 
-.imgedit-fliph.disabled:hover {
-       background-position: -147px -31px;
+/* WARNING: The factor of 30px is hardcoded into the nav-menus javascript. */
+.menu-item-depth-0 { margin-left: 0px; }
+.menu-item-depth-1 { margin-left: 30px; }
+.menu-item-depth-2 { margin-left: 60px; }
+.menu-item-depth-3 { margin-left: 90px; }
+.menu-item-depth-4 { margin-left: 120px; }
+.menu-item-depth-5 { margin-left: 150px; }
+.menu-item-depth-6 { margin-left: 180px; }
+.menu-item-depth-7 { margin-left: 210px; }
+.menu-item-depth-8 { margin-left: 240px; }
+.menu-item-depth-9 { margin-left: 270px; }
+.menu-item-depth-10 { margin-left: 300px; }
+.menu-item-depth-11 { margin-left: 330px; }
+
+.menu-item-depth-0 .menu-item-transport { margin-left: 0px; }
+.menu-item-depth-1 .menu-item-transport { margin-left: -30px; }
+.menu-item-depth-2 .menu-item-transport { margin-left: -60px; }
+.menu-item-depth-3 .menu-item-transport { margin-left: -90px; }
+.menu-item-depth-4 .menu-item-transport { margin-left: -120px; }
+.menu-item-depth-5 .menu-item-transport { margin-left: -150px; }
+.menu-item-depth-6 .menu-item-transport { margin-left: -180px; }
+.menu-item-depth-7 .menu-item-transport { margin-left: -210px; }
+.menu-item-depth-8 .menu-item-transport { margin-left: -240px; }
+.menu-item-depth-9 .menu-item-transport { margin-left: -270px; }
+.menu-item-depth-10 .menu-item-transport { margin-left: -300px; }
+.menu-item-depth-11 .menu-item-transport { margin-left: -330px; }
+
+body.menu-max-depth-0 { min-width: 950px !important; }
+body.menu-max-depth-1 { min-width: 980px !important; }
+body.menu-max-depth-2 { min-width: 1010px !important; }
+body.menu-max-depth-3 { min-width: 1040px !important; }
+body.menu-max-depth-4 { min-width: 1070px !important; }
+body.menu-max-depth-5 { min-width: 1100px !important; }
+body.menu-max-depth-6 { min-width: 1130px !important; }
+body.menu-max-depth-7 { min-width: 1160px !important; }
+body.menu-max-depth-8 { min-width: 1190px !important; }
+body.menu-max-depth-9 { min-width: 1220px !important; }
+body.menu-max-depth-10 { min-width: 1250px !important; }
+body.menu-max-depth-11 { min-width: 1280px !important; }
+
+/* Menu item controls */
+.item-type {
+       font-size: 12px;
+       padding-right: 10px;
 }
 
 }
 
-.imgedit-fliph:hover {
-       background-position: -147px -1px;
+.item-controls {
+       font-size: 12px;
+       position: absolute;
+       right: 20px;
+       top: -1px;
 }
 
 }
 
-.imgedit-undo {
-       background: transparent url(../images/imgedit-icons.png) no-repeat scroll -184px -31px;
-       margin: 0 3px;
+.item-controls a {
+       text-decoration: none;
 }
 
 }
 
-.imgedit-undo.disabled:hover {
-       background-position: -184px -31px;
+.item-controls a:hover {
+       cursor: pointer;
 }
 
 }
 
-.imgedit-undo:hover {
-       background-position: -184px -1px;
+.item-controls .item-order {
+       padding-right: 10px;
 }
 
 }
 
-.imgedit-redo {
-       background: transparent url(../images/imgedit-icons.png) no-repeat scroll -215px -31px;
-       margin: 0 8px 0 3px;
+.nav-menus-php .item-edit {
+       position: absolute;
+       right: -20px;
+       top: 0;
+       display: block;
+       width: 30px;
+       height: 36px;
+       overflow: hidden;
+       text-indent:-999em;
+       border-bottom: 1px solid;
+       -webkit-border-bottom-left-radius: 3px;
+       border-bottom-left-radius: 3px;
 }
 
 }
 
-.imgedit-redo.disabled:hover {
-       background-position: -215px -31px;
+/* Menu editing */
+.menu-instructions-inactive {
+       display: none;
 }
 
 }
 
-.imgedit-redo:hover {
-       background-position: -215px -1px;
+.menu-item-settings {
+       display: block;
+       width: 400px;
+       padding: 10px 0 10px 10px;
+       border: solid;
+       border-width: 0 1px 1px 1px;
+       -webkit-border-bottom-right-radius: 3px;
+       -webkit-border-bottom-left-radius: 3px;
+       border-bottom-left-radius: 3px;
+       border-bottom-right-radius: 3px;
+}
+
+.menu-item-edit-active .menu-item-settings {
+       display: block;
+}
+
+.menu-item-edit-inactive .menu-item-settings {
+       display: none;
 }
 
 }
 
-.imgedit-applyto img {
-       margin: 0 8px 0 0;
+.add-menu-item-pagelinks {
+       margin: .5em auto;
+       text-align: center;
 }
 
 }
 
-.imgedit-group-top {
-       margin: 5px 0;
+.link-to-original {
+       display: block;
+       margin: 0 0 10px;
+       padding: 3px 5px 5px;
+       font-size: 12px;
+       font-style: italic;
 }
 
 }
 
-.imgedit-applyto .imgedit-label {
-       padding: 2px 0 0;
-       display: block;
+.link-to-original a {
+       padding-left: 4px;
+       font-style: normal;
 }
 
 }
 
-.imgedit-help {
+.hidden-field {
        display: none;
        display: none;
-       font-style: italic;
-       margin-bottom: 8px;
 }
 
 }
 
-.imgedit-help ul li {
-       font-size: 11px;
+.menu-item-settings .description-thin,
+.menu-item-settings .description-wide {
+       margin-right: 10px;
+       float: left;
 }
 
 }
 
-a.imgedit-help-toggle {
-       text-decoration: none;
+.description-thin {
+       width: 190px;
+       height: 40px;
 }
 
 }
 
-#wpbody-content .imgedit-response div {
-       width: 600px;
-       margin: 8px;
+.description-wide {
+       width: 390px;
 }
 
 }
 
-.form-table td.imgedit-response {
-       padding: 0;
+.menu-item-actions {
+       padding-top: 15px;
 }
 
 }
 
-.imgedit-submit {
-       margin: 8px 0;
+#cancel-save {
+       cursor: pointer;
 }
 
 }
 
-.imgedit-submit-btn {
-       margin-left: 20px;
+/* Major/minor publishing actions (classes) */
+.nav-menus-php .major-publishing-actions {
+       clear: both;
+       padding: 3px 0 5px;
 }
 
 }
 
-.imgedit-wrap .nowrap {
-       white-space: nowrap;
+.nav-menus-php .major-publishing-actions .publishing-action {
+       text-align: right;
+       float: right;
+       line-height: 23px;
+       margin: 5px 0 1px;
 }
 
 }
 
-span.imgedit-scale-warn {
-       color: red;
-       font-size: 20px;
-       font-style: normal;
-       visibility: hidden;
+.nav-menus-php .major-publishing-actions .delete-action {
        vertical-align: middle;
        vertical-align: middle;
+       text-align: left;
+       float: left;
+       padding-right: 15px;
+       margin-top: 5px;
 }
 
 }
 
-.imgedit-group {
-       border-width: 1px;
-       border-style: solid;
-       -moz-border-radius: 8px;
-       -khtml-border-radius: 8px;
-       -webkit-border-radius: 8px;
-       border-radius: 8px;
-       margin-bottom: 8px;
-       padding: 2px 10px;
+.menu-name-label span,
+.auto-add-pages label {
+       font-size: 12px;
+       font-style: normal;
 }
 
 }
 
+.menu-name-label {
+       margin-right: 15px;
+}
 
 
-/*------------------------------------------------------------------------------
-  15.0 - Comments Screen
-------------------------------------------------------------------------------*/
-
-.form-table {
-       border-collapse: collapse;
-       margin-top: 0.5em;
-       width: 100%;
-       margin-bottom: -8px;
-       clear: both;
+.auto-add-pages input {
+       margin-top: 0;
 }
 
 }
 
-.form-table td {
-       margin-bottom: 9px;
-       padding: 8px 10px;
-       line-height: 20px;
-       font-size: 12px;
+.auto-add-pages {
+       margin-top: 4px;
+       float: left;
 }
 
 }
 
-.form-table th,
-.form-wrap label {
-       font-weight: normal;
-       text-shadow: rgba(255,255,255,1) 0 1px 0;
+.nav-menus-php .submitbox .submitcancel {
+       border-bottom: 1px solid;
+       padding: 1px 2px;
+       text-decoration: none;
 }
 
 }
 
-.form-table th {
-       vertical-align: top;
-       text-align: left;
-       padding: 10px;
-       width: 200px;
+.nav-menus-php .major-publishing-actions .form-invalid {
+       padding-left: 4px;
+       margin-left: -4px;
+       border: 0 none;
 }
 
 }
 
-.form-table th.th-full {
-       width: auto;
+/* Clearfix */
+#menu-item-name-wrap:after,
+#menu-item-url-wrap:after,
+#menu-name-label:after,
+#menu-settings-column .inside:after,
+#nav-menus-frame:after,
+.nav-menus-php #post-body-content:after,
+.nav-menus-php .button-controls:after,
+.nav-menus-php .major-publishing-actions:after,
+.nav-menus-php .menu-item-settings:after {
+       clear: both;
+       content: ".";
+       display: block;
+       height: 0;
+       visibility: hidden;
 }
 
 }
 
-.form-table div.color-option {
+#nav-menus-frame,
+.button-controls,
+#menu-item-url-wrap,
+#menu-item-name-wrap {
        display: block;
        display: block;
-       clear: both;
-       margin-top: 12px;
 }
 
 }
 
-.form-table input.tog {
-       margin-top: 2px;
-       margin-right: 2px;
-       float: left;
+
+/* plugin-install */
+/* NOTE: the following CSS rules(.star*) are taken more or less straight from the bbPress rating plugin. */
+div.star-holder {
+       position: relative;
+       height: 19px;
+       width: 100px;
+       font-size: 19px;
 }
 
 }
 
-.form-table td p {
-       margin-top: 4px;
+div.action-links {
+       font-weight: normal;
+       margin: 6px 0 0;
 }
 
 }
 
-.form-table table.color-palette {
-       vertical-align: bottom;
-       float: left;
-       margin: -12px 3px 11px;
+div.star {
+       height: 100%;
+       position: absolute;
+       top: 0;
+       left: 0;
+       background-color: transparent;
+       letter-spacing: 1ex;
+       border: none;
 }
 
 }
 
-.form-table .color-palette td {
-       border-width: 1px 1px 0;
-       border-style: solid solid none;
-       height: 10px;
-       line-height: 20px;
-       width: 10px;
+.star1 { width: 20%; }
+.star2 { width: 40%; }
+.star3 { width: 60%; }
+.star4 { width: 80%; }
+.star5 { width: 100%; }
+
+.star img,
+div.star a,
+div.star a:hover,
+div.star a:visited {
+       display: block;
+       position: absolute;
+       right: 0;
+       border: none;
+       text-decoration: none;
 }
 
 }
 
-.commentlist li {
-       padding: 1em 1em .2em;
+div.star img {
+       width: 19px;
+       height: 19px;
+}
+
+/* Header on thickbox */
+#plugin-information-header {
        margin: 0;
        margin: 0;
+       padding: 0 5px;
+       font-weight: bold;
+       position: relative;
        border-bottom-width: 1px;
        border-bottom-style: solid;
        border-bottom-width: 1px;
        border-bottom-style: solid;
+       height: 2.5em;
+}
+#plugin-information ul#sidemenu {
+       font-weight: normal;
+       margin: 0 5px;
+       position: absolute;
+       left: 0;
+       bottom: -1px;
 }
 
 }
 
-.commentlist li li {
-       border-bottom: 0;
-       padding: 0;
+/* Install sidemenu */
+#plugin-information p.action-button {
+       width: 100%;
+       padding-bottom: 0;
+       margin-bottom: 0;
+       margin-top: 10px;
+       -webkit-border-top-left-radius: 3px;
+       -webkit-border-bottom-left-radius: 3px;
+       border-top-left-radius: 3px;
+       border-bottom-left-radius: 3px;
 }
 
 }
 
-.commentlist p {
-       padding: 0;
-       margin: 0 0 .8em;
+#plugin-information .action-button a {
+       text-align: center;
+       font-weight: bold;
+       text-decoration: none;
+       display: block;
+       line-height: 2em;
 }
 
 }
 
-/* reply to comments */
-#replyrow {
-       font-size: 11px;
+#plugin-information h2 {
+       clear: none !important;
+       margin-right: 200px;
 }
 
 }
 
-#replyrow input {
-       border-width: 1px;
-       border-style: solid;
+#plugin-information .fyi {
+       margin: 0 10px 50px;
+       width: 210px;
 }
 
 }
 
-#replyrow td {
-       padding: 2px;
+#plugin-information .fyi h2 {
+       font-size: 0.9em;
+       margin-bottom: 0;
+       margin-right: 0;
 }
 
 }
 
-#replyrow #editorcontainer {
-       border: 0 none;
+#plugin-information .fyi h2.mainheader {
+       padding: 5px;
+       -webkit-border-top-left-radius: 3px;
+       border-top-left-radius: 3px;
 }
 
 }
 
-#replysubmit {
+#plugin-information .fyi ul {
+       padding: 10px 5px 10px 7px;
        margin: 0;
        margin: 0;
-       padding: 3px 7px;
-       text-align:center;
+       list-style: none;
+       -webkit-border-bottom-left-radius: 3px;
+       border-bottom-left-radius: 3px;
 }
 
 }
 
-#replysubmit img.waiting,
-.inline-edit-save img.waiting {
-       padding: 4px 10px 0;
-       vertical-align: top;
-       float: right;
+#plugin-information .fyi li {
+       margin-right: 0;
 }
 
 }
 
-#replysubmit .button {
-       margin-right: 5px;
+#plugin-information #section-holder {
+       padding: 10px;
 }
 
 }
 
-#replysubmit .error {
-       color:red;
-       line-height:21px;
-       text-align:center;
-       vertical-align:center;
+#plugin-information .section ul,
+#plugin-information .section ol {
+       margin-left: 16px;
+       list-style-type: square;
+       list-style-image: none;
 }
 
 }
 
-#replyrow #editor-toolbar {
-       display: none;
+#plugin-information #section-screenshots li img {
+       vertical-align: text-top;
 }
 
 }
 
-#replyhead {
-       font-size: 12px;
-       font-weight: bold;
-       padding: 2px 10px 4px;
+#plugin-information #section-screenshots li p {
+       font-style: italic;
+       padding-left: 20px;
+       padding-bottom: 2em;
 }
 
 }
 
-#edithead .inside {
-       float: left;
-       padding: 3px 0 2px 5px;
+#plugin-information .updated,
+#plugin-information pre {
+       margin-right: 215px;
+}
+
+#plugin-information pre {
+       padding: 7px;
+       overflow: auto;
+}
+
+/* press-this */
+body.press-this {
+       color: #333;
        margin: 0;
        margin: 0;
-       text-align: center;
-       font-size: 11px;
+       padding: 0;
+       min-width: 675px;
+       min-height: 400px;
 }
 
 }
 
-#edithead .inside input {
-       width: 180px;
-       font-size: 11px;
+img {
+       border: none;
 }
 
 }
 
-#edithead label {
-       padding: 2px 0;
+/* Header */
+.press-this #wphead {
+       height: 32px;
+       margin-right: 5px;
+       margin-bottom: 5px;
 }
 
 }
 
-#replycontainer {
-       padding: 5px;
-       border: 0 none;
-       height: 120px;
-       overflow: hidden;
-       position: relative;
+.press-this #header-logo {
+       float: left;
+       margin: 7px 7px 0;
+       -webkit-user-select: none;
+       -moz-user-select: none;
+       user-select: none;
 }
 
 }
 
-#replycontent {
-       resize: none;
+.press-this #wphead h1 {
+       font-weight: normal;
+       font-size: 16px;
+       line-height: 32px;
        margin: 0;
        margin: 0;
-       width: 100%;
-       height: 100%;
-       padding: 0;
-       line-height: 150%;
-       border: 0 none;
-       outline: none;
-       font-size: 12px;
+       float: left;
 }
 
 }
 
-#replyrow #ed_reply_toolbar {
-       margin: 0;
-       padding: 2px 3px;
+.press-this #wphead h1 a {
+       text-decoration: none;
 }
 
 }
 
-.comment-ays {
-       margin-bottom: 0;
-       border-style: solid;
-       border-width: 1px;
+.press-this #wphead h1 a:hover {
+       text-decoration: underline;
 }
 
 }
 
-.comment-ays th {
-       border-right-style: solid;
-       border-right-width: 1px;
+.press-this-sidebar {
+       float: right;
+       width: 200px;
+       padding-top: 10px;
+}
+
+.press-this #title {
+       -moz-box-sizing: border-box;
+       -webkit-box-sizing: border-box;
+       -ms-box-sizing: border-box;
+       box-sizing: border-box;
+}
+
+.press-this .tagchecklist span a {
+       background: transparent url(../images/xit.gif) no-repeat 0 0;
+}
+
+.press-this #titlediv {
+       margin: 0;
 }
 
 }
 
-.trash-undo-inside,
-.spam-undo-inside {
-       margin: 1px 8px 1px 0;
-       line-height: 16px;
+.press-this .wp-media-buttons {
+       cursor: default;
+       padding: 8px 8px 0;
 }
 
 }
 
-.spam-undo-inside .avatar,
-.trash-undo-inside .avatar {
-       height: 20px;
-       width: 20px;
-       margin-right: 8px;
-       vertical-align: middle;
+.press-this .howto {
+       margin-top: 2px;
+       margin-bottom: 3px;
+       font-size: 12px;
+       font-style: italic;
+       display: block;
 }
 
 }
 
-.stuffbox .editcomment {
-       clear: none;
+/* Editor/Main Column */
+.press-this #poststuff {
+       margin: 0 10px 10px;
 }
 
 }
 
-#comment-status-radio p {
-       margin: 3px 0 5px;
+#poststuff #editor-toolbar {
+       height: 30px;
 }
 
 }
 
-#comment-status-radio input {
-       margin: 2px 3px 5px 0;
-       vertical-align: middle;
+div.zerosize {
+       border: 0 none;
+       height: 0;
+       margin: 0;
+       overflow: hidden;
+       padding: 0;
+       width: 0;
 }
 
 }
 
-#comment-status-radio label {
-       padding: 5px 0;
+.posting {
+       margin-right: 212px;
+       position: relative;
 }
 
 }
 
-.commentlist .avatar {
-       vertical-align: text-top;
+.press-this .inner-sidebar {
+       width: 200px;
 }
 
 }
 
+.press-this .inner-sidebar .sleeve {
+       padding-top: 5px;
+}
 
 
-/*------------------------------------------------------------------------------
-  16.0 - Themes
-------------------------------------------------------------------------------*/
+.press-this #submitdiv p {
+       margin: 0;
+       padding: 6px;
+}
 
 
-.theme-install-php .tablenav {
-       height:auto;
+.press-this #submitdiv #publishing-actions {
+       border-bottom: 1px solid #dfdfdf;
 }
 
 }
 
-table#availablethemes {
-       border-spacing: 0;
-       border-width: 1px 0;
-       border-style: solid none;
-       margin: 10px auto;
-       width: 100%;
+.press-this #publish {
+       float: right;
 }
 
 }
 
-table#availablethemes .no-items td{
-       border-width:0;
-       padding:5px;
+.press-this #poststuff h2,
+.press-this #poststuff h3 {
+       font-size: 14px;
+       line-height: 1;
 }
 
 }
 
-td.available-theme {
-       vertical-align: top;
-       width: 240px;
-       margin: 0;
-       padding: 20px;
-       text-align: left;
+.press-this #tagsdiv-post_tag h3,
+.press-this #categorydiv h3 {
+       cursor: pointer;
 }
 
 }
 
-table#availablethemes td {
-       border-width: 0 1px 1px;
-       border-style: none solid solid;
+.press-this #submitdiv h3 {
+       cursor: default;
 }
 
 }
 
-table#availablethemes td.right,
-table#availablethemes td.left  {
-       border-right: 0 none;
-       border-left: 0 none;
+h3.tb {
+       text-shadow: 0 1px 0 #fff;
+       font-weight: bold;
+       font-size: 12px;
+       margin-left: 5px;
 }
 
 }
 
-table#availablethemes td.bottom {
-       border-bottom: 0 none;
+#TB_window {
+       border: 1px solid #333;
 }
 
 }
 
-.available-theme a.screenshot {
-       width: 240px;
-       height: 180px;
-       display: block;
-       border-width: 1px;
-       border-style: solid;
+.press-this .postbox,
+.press-this .stuffbox {
        margin-bottom: 10px;
        margin-bottom: 10px;
-       overflow: hidden;
+       min-width: 0;
 }
 
 }
 
-.available-theme img {
-       width: 240px;
+.postbox:hover .handlediv,
+.stuffbox:hover .handlediv {
+       background: transparent url(../images/arrows.png) no-repeat 6px 7px;
 }
 
 }
 
-.available-theme h3 {
-       margin: 15px 0 5px;
+.press-this #submitdiv:hover .handlediv {
+       background: none;
 }
 
 }
 
-#current-theme {
-       margin: 1em 0 1.5em;
+.tbtitle {
+       font-size: 1.7em;
+       outline: none;
+       padding: 3px 4px;
+       border-color: #dfdfdf;
 }
 
 }
 
-#current-theme a {
-       border-bottom: none;
+.press-this .actions {
+       float: right;
+       margin: -19px 0 0;
 }
 
 }
 
-#current-theme h3 {
-       font-size: 17px;
-       font-weight: normal;
-       margin: 0;
+.press-this #extra-fields .actions {
+       margin: -25px -7px 0 0;
 }
 
 }
 
-#current-theme .theme-description {
-       margin-top: 5px;
+.press-this .actions li {
+       float: left;
+       list-style: none;
+       margin-right: 10px;
 }
 
 }
 
-#current-theme img {
-       float: left;
-       border-width: 1px;
-       border-style: solid;
-       margin-right: 1em;
-       margin-bottom: 1.5em;
-       width: 150px;
+#extra-fields .button {
+       margin-right: 5px;
 }
 
 }
 
-.theme-options span {
-       text-transform: uppercase;
-       font-size: 13px;
+/* Photo Styles */
+#photo_saving {
+       margin: 0 8px 8px;
+       vertical-align: middle;
 }
 
 }
 
-.theme-options a {
-       font-size: 15px;
+#img_container_container {
+       overflow: auto;
 }
 
 }
 
-#TB_window #TB_title a.tb-theme-preview-link,
-#TB_window #TB_title a.tb-theme-preview-link:visited {
-       font-weight: bold;
-       text-decoration: none;
+#extra-fields {
+       margin-top: 10px;
+       position: relative;
 }
 
 }
 
-#TB_window #TB_title {
-       background-color: #222;
-       color: #cfcfcf;
+#extra-fields h2 {
+       margin: 12px;
 }
 
 }
 
-#broken-themes {
-       text-align: left;
-       width: 50%;
-       border-spacing: 3px;
-       padding: 3px;
+#waiting {
+       margin-top: 10px;
 }
 
 }
 
-.theme-install-php h4 {
-       margin: 2.5em 0 8px;
+#extra-fields .postbox {
+       margin-bottom: 5px;
 }
 
 }
 
+#extra-fields .titlewrap {
+       padding: 0;
+       overflow: auto;
+       height: 100px;
+}
 
 
-/*------------------------------------------------------------------------------
-  16.1 - Custom Header Screen
-------------------------------------------------------------------------------*/
+#img_container a {
+       display: block;
+       float: left;
+       overflow: hidden;
+       vertical-align: center;
+}
 
 
-.appearance_page_custom-header #headimg {
-       border: 1px solid #DFDFDF;
-       min-height: 100px;
-       width: 100%;
+#img_container img,
+#img_container a {
+       width: 68px;
+       height: 68px;
 }
 
 }
 
-.appearance_page_custom-header #upload-form p label {
-       font-size: 12px;
+#img_container img {
+       border: none;
+       background-color: #f4f4f4;
+       cursor: pointer;
 }
 
 }
 
-.appearance_page_custom-header .available-headers .default-header {
-       float: left;
-       margin: 0 20px 20px 0;
+#img_container a,
+#img_container a:link,
+#img_container a:visited {
+       border: 1px solid #ccc;
+       display: block;
+       position: relative;
 }
 
 }
 
-.appearance_page_custom-header .random-header {
-       clear: both;
-       margin: 0 20px 20px 0;
-       vertical-align: middle;
+#img_container a:hover,
+#img_container a:active {
+       border-color: #000;
+       z-index: 1000;
+       border-width: 2px;
+       margin: -1px;
 }
 
 }
 
-.appearance_page_custom-header .available-headers label input,
-.appearance_page_custom-header .random-header label input {
-       margin-right: 10px;
+/* Video */
+#embed-code {
+       width: 100%;
+       height: 98px;
 }
 
 }
 
-.appearance_page_custom-header .available-headers label img {
-       vertical-align: middle;
+/* Categories */
+.press-this .categorydiv div.tabs-panel {
+       height: 100px;
 }
 
 }
 
+/* Tags */
+.press-this .tagsdiv .newtag {
+       width: 130px;
+}
 
 
-/*------------------------------------------------------------------------------
-  16.2 - Custom Background Screen
-------------------------------------------------------------------------------*/
+.press-this #content {
+       margin: 5px 0;
+       padding: 0 5px;
+       border: 0 none;
+       height: 357px;
+       font-family: Consolas, Monaco, monospace;
+       font-size: 13px;
+       line-height: 19px;
+       background: transparent;
+}
 
 
-div#custom-background-image {
-       min-height: 100px;
-       border: 1px solid #dfdfdf;
+/* Submit */
+#saving {
+       display: inline;
+       vertical-align: middle;
 }
 
 }
 
-div#custom-background-image img {
-       max-width: 400px;
-       max-height: 300px;
+#TB_ajaxContent #options {
+       position: absolute;
+       top: 20px;
+       right: 25px;
+       padding: 5px;
 }
 
 }
 
+#TB_ajaxContent h3 {
+       margin-bottom: .25em;
+}
 
 
-/*------------------------------------------------------------------------------
-  16.3 - Tabbed Admin Screen Interface (Experimental)
-------------------------------------------------------------------------------*/
+.error a {
+       text-decoration: underline;
+}
 
 
-.nav-tab {
-       border-style: solid;
-       border-color: #dfdfdf #dfdfdf #fff;
-       border-width: 1px 1px 0;
-       color: #aaa;
-       text-shadow: rgba(255,255,255,1) 0 1px 0;
-       font-size: 12px;
-       line-height: 16px;
-       display: inline-block;
-       padding: 4px 14px 6px;
+.updated a {
        text-decoration: none;
        text-decoration: none;
-       margin: 0 6px -1px 0;
-       -moz-border-radius: 3px 3px 0 0;
-       -webkit-border-top-left-radius: 3px;
-       -webkit-border-top-right-radius: 3px;
-       -khtml-border-top-left-radius: 3px;
-       -khtml-border-top-right-radius: 3px;
-       border-top-left-radius: 3px;
-       border-top-right-radius: 3px;
+       padding-bottom: 2px;
 }
 
 }
 
-.nav-tab-active {
-       border-width: 1px;
-       color: #464646;
+/* tag hints */
+.taghint {
+       color: #aaa;
+       margin: -17px 0 0 7px;
+       visibility: hidden;
 }
 
 }
 
-.nav-tab:hover,
-.nav-tab-active {
-       border-color: #ccc #ccc #fff;
+input.newtag ~ div.taghint {
+       visibility: visible;
 }
 
 }
 
-h2.nav-tab-wrapper, h3.nav-tab-wrapper {
-       border-bottom: 1px solid #ccc;
-       padding-bottom: 0;
+input.newtag:focus ~ div.taghint {
+       visibility: hidden;
 }
 
 }
 
-h2 .nav-tab {
-       padding: 4px 10px 6px;
-       font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", sans-serif;
-       font-weight: 200;
-       font-size: 20px;
-       line-height: 24px;
-
+/* TinyMCE */
+#mce_fullscreen_container {
+       background: #fff;
 }
 
 }
 
+#photo-add-url-div input[type="text"] {
+       width: 300px;
+}
 
 
-/*------------------------------------------------------------------------------
-  17.0 - Plugins
-------------------------------------------------------------------------------*/
-
-.plugins .name,
-#pass-strength-result.strong,
-#pass-strength-result.short,
-.button-highlighted,
-input.button-highlighted,
-#quicktags #ed_strong,
-#ed_reply_toolbar #ed_reply_strong {
-       font-weight: bold;
+/* theme-editor */
+.alignleft h3 {
+       margin: 0;
 }
 
 }
 
-.plugins p {
-       margin: 0 4px;
-       padding: 0;
+h3 span {
+       font-weight: normal;
 }
 
 }
 
-.plugins .desc p {
-       margin: 0 0 8px;
+#template textarea {
+       font-family: Consolas, Monaco, monospace;
+       font-size: 12px;
+       width: 97%;
+       background: #f9f9f9;
+       outline: none;
 }
 
 }
 
-.plugins td.desc {
-       line-height: 1.5em;
+#template p {
+       width: 97%;
 }
 
 }
 
-.plugins .desc ul,
-.plugins .desc ol {
-       margin: 0 0 0 2em;
+#templateside {
+       float: right;
+       width: 190px;
+       word-wrap: break-word;
+}
+
+#templateside h3,
+#postcustomstuff p.submit {
+       margin: 0;
 }
 
 }
 
-.plugins .desc ul {
-       list-style-type: disc;
+#templateside h4 {
+       margin: 1em 0 0;
 }
 
 }
 
-.plugins .row-actions-visible {
+#templateside ol,
+#templateside ul {
+       margin: .5em;
        padding: 0;
 }
 
        padding: 0;
 }
 
-.plugins tbody th.check-column {
-       padding: 7px 0;
+#templateside li {
+       margin: 4px 0;
 }
 
 }
 
-.plugins .inactive td,
-.plugins .inactive th,
-.plugins .active td,
-.plugins .active th {
-       border-top-style: solid;
-       border-top-width: 1px;
-       padding: 5px 7px 0;
+#templateside ul li a span.highlight {
+       display:block;
 }
 
 }
 
-#wpbody-content .plugins .plugin-title, #wpbody-content .plugins .theme-title {
-       padding-right: 12px;
-       white-space:nowrap;
+.nonessential {
+       font-size: 11px;
+       font-style: italic;
+       padding-left: 12px;
 }
 
 }
 
-.plugins .second, .plugins .row-actions-visible {
-       padding: 0 0 5px;
+.highlight {
+       padding: 3px 3px 3px 12px;
+       margin-left: -12px;
+       font-weight: bold;
+       border: 0 none;
 }
 
 }
 
-.plugins-php .widefat tfoot th,
-.plugins-php .widefat tfoot td {
-       border-top-style: solid;
-       border-top-width: 1px;
+#documentation {
+       margin-top: 10px;
 }
 }
-
-.plugin-update-tr .update-message {
-       margin: 5px;
-       padding: 3px 5px;
-       border-width: 1px;
-       border-style: solid;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;
+#documentation label {
+       line-height: 22px;
+       vertical-align: top;
+       font-weight: bold;
 }
 
 }
 
-.plugin-install-php h4 {
-       margin: 2.5em 0 8px;
+.fileedit-sub {
+       padding: 10px 0 8px;
+       line-height: 180%;
 }
 
 
 }
 
 
-/*------------------------------------------------------------------------------
-  18.0 - Users
-------------------------------------------------------------------------------*/
+/* theme-install */
+.theme-listing .theme-item {
+       display: inline-block;
+       width: 200px;
+       border: thin solid #ccc;
+       vertical-align: top;
+}
 
 
-#profile-page .form-table textarea {
-       width: 500px;
-       margin-bottom: 6px;
+.theme-listing .theme-item h3 {
+       text-align: center;
+       font-size: 14px;
+       font-style: italic;
+       margin: 0;
+       padding: 0;
 }
 
 }
 
-#profile-page .form-table #rich_editing {
-       margin-right: 5px
+.theme-listing .theme-item img {
+       max-width: 150px;
+       max-height: 150px;
 }
 
 }
 
-#your-profile legend {
-       font-family: Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
-       font-size: 22px;
+.theme-listing .theme-item-info span,
+.theme-listing .theme-item:hover .theme-item-info span.dots {
+       display: none;
 }
 
 }
 
-#your-profile #rich_editing {
-       border: none;
+.theme-listing .theme-item:hover .theme-item-info span {
+       display: inline;
 }
 
 }
 
-#display_name {
-       width: 15em;
+.theme-listing .theme-item-info span.action-links {
+       font-weight: bold;
+       text-align: center;
 }
 
 }
 
-#createuser .form-field input {
-       width: 25em;
+.theme-listing br.line {
+       border-bottom-width: 1px;
+       border-bottom-style: solid;
+       margin-bottom: 3px;
 }
 
 }
 
-/*------------------------------------------------------------------------------
-  19.0 - Tools
-------------------------------------------------------------------------------*/
 
 
-.pressthis {
-       margin: 20px 0;
+#theme-information .available-theme,
+.available-theme {
+       padding: 20px 15px;
 }
 
 }
 
-.pressthis a {
-       display: inline-block;
-       width: 113px;
-       position: relative;
-       cursor: move;
-       color: #333;
-       background: #dfdfdf;
-       -webkit-gradient(
-               linear,
-               left bottom,
-               left top,
-               color-stop(0.07, rgb(230,230,230)),
-               color-stop(0.77, rgb(216,216,216))
-       );
-       -moz-linear-gradient(
-               center bottom,
-               rgb(230,230,230) 7%,
-               rgb(216,216,216) 77%
-       );
-       background-repeat: no-repeat;
-       background-image-position: 10px 8px;
-       border-radius: 5px;
-       -webkit-border-radius: 5px;
-       -moz-border-radius: 5px;
-       -o-border-radius: 5px;
-       border: 1px #b4b4b4 solid;
-       font: normal normal normal 14px/16px Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
-       text-decoration: none;
-       text-shadow: #fff 0 1px 0px;
-       -webkit-text-shadow: #fff 0 1px 0px;
-       -moz-text-shadow: #fff 0 1px 0px;
-       -o-text-shadow: #fff 0 1px 0px;
+#theme-information .available-theme {
+       overflow: visible;
+       width: 440px;
 }
 
 }
 
-.pressthis a:hover,
-.pressthis a:active {
-       color: #333
+#theme-information .theme-preview-img {
+       float: left;
+       margin: 5px 25px 10px 15px;
+       width: 300px;
 }
 
 }
 
-.pressthis a:hover:after {
-       transform: skew(20deg) rotate(9deg);
-       -webkit-transform: skew(20deg) rotate(9deg);
-       -moz-transform: skew(20deg) rotate(9deg);
-       box-shadow: 0 10px 8px rgba(0, 0, 0, 0.7);
-       -webkit-box-shadow: 0 10px 8px rgba(0, 0, 0, 0.7);
-       -moz-box-shadow: 0 10px 8px rgba(0, 0, 0, 0.7);
+#theme-information .action-button {
+       border-top-width: 1px;
+       border-top-style: solid;
+       margin: 10px 5px 0;
 }
 
 }
 
-.pressthis a span {
-       background: url(../images/press-this.png) no-repeat -45px 5px ;
-       padding: 8px 0 8px 32px;
-       display: inline-block;
+#theme-information .action-button #cancel,
+#theme-information .action-button #install {
+       margin: 10px 5px;
 }
 
 }
 
-.pressthis a:after {
-       content: '';
-       width: 70%;
-       height: 55%;
-       z-index: -1;
-       position: absolute;
-       right: 10px;
-       bottom: 9px;
-       background: transparent;
-       transform: skew(20deg) rotate(6deg);
-       -webkit-transform: skew(20deg) rotate(6deg);
-       -moz-transform: skew(20deg) rotate(6deg);
-       box-shadow: 0 10px 8px rgba(0, 0, 0, 0.6);
-       -webkit-box-shadow: 0 10px 8px rgba(0, 0, 0, 0.6);
-       -moz-box-shadow: 0 10px 8px rgba(0, 0, 0, 0.6);
+#theme-information .action-button #cancel {
+       float: left;
 }
 
 }
 
-
-/*------------------------------------------------------------------------------
-  20.0 - Settings
-------------------------------------------------------------------------------*/
-
-#utc-time, #local-time {
-       padding-left: 25px;
-       font-style: italic;
-       font-family: sans-serif;
+#theme-information .action-button #install {
+       float: right;
 }
 
 }
 
-.defaultavatarpicker .avatar {
-       margin: 2px 0;
-       vertical-align: middle;
+#theme-information .available-theme h3 {
+       margin: 1em 0;
 }
 
 }
 
-
-/*------------------------------------------------------------------------------
-  21.0 - Admin Footer
-------------------------------------------------------------------------------*/
-
-#footer {
-       position: absolute;
-       bottom: 0;
-       left: 0;
-       right: 0;
-       padding: 10px 0;
-       margin-right: 20px;
-       border-top: 1px;
-       border-style: solid;
+body#theme-information {
+       height: auto;
 }
 
 }
 
-#footer,
-#footer a {
-       font-size: 12px;
+.feature-filter {
+       padding: 8px 12px 0;
 }
 
 }
 
-#footer p {
-       margin: 0;
-       line-height: 20px;
+.feature-filter .feature-group {
+       float: left;
+       margin: 5px 10px 10px;
 }
 
 }
 
-#footer a {
-       text-decoration: none;
+.feature-filter .feature-group li {
+       display: inline;
+       float: left;
+       list-style-type: none;
+       padding-right: 25px;
+       min-width: 150px;
 }
 
 }
 
-#footer a:hover {
-       text-decoration: underline;
+.feature-container {
+width: 100%;
+overflow: auto;
+margin-bottom: 10px;
 }
 
 
 }
 
 
-/*------------------------------------------------------------------------------
-  22.0 - Misc
-------------------------------------------------------------------------------*/
+/* widgets */
 
 
-#excerpt, .attachmentlinks {
-       margin: 0;
-       height: 4em;
-       width: 98%;
+/* 2 column liquid layout */
+div.widget-liquid-left {
+       float: left;
+       clear: left;
+       width: 100%;
+       margin-right: -325px;
 }
 
 }
 
-#template div {
-       margin-right: 190px;
+div#widgets-left {
+       margin-left: 5px;
+       margin-right: 325px;
 }
 
 }
 
-p.pagenav {
-       margin: 0;
-       display: inline;
+div#widgets-right {
+       width: 285px;
+       margin: 0 auto;
 }
 
 }
 
-.pagenav span {
-       font-weight: bold;
-       margin: 0 6px;
+div.widget-liquid-right {
+       float: right;
+       clear: right;
+       width: 300px;
 }
 
 }
 
-.row-title {
-       font-size: 13px !important;
-       font-weight: bold;
+.widget-liquid-right .widget,
+.inactive-sidebar .widget,
+.widget-liquid-right .sidebar-description {
+       width: 250px;
+       margin: 0 auto 20px;
+       overflow: hidden;
 }
 
 }
 
-.column-author img, .column-username img {
+.widget-liquid-right .sidebar-description {
+       margin-bottom: 10px;
+}
+
+.inactive-sidebar .widget {
+       margin: 0 10px 20px;
        float: left;
        float: left;
-       margin-right: 10px;
-       margin-top: 1px;
 }
 
 }
 
-.row-actions {
-       visibility: hidden;
-       padding: 2px 0 0;
+div.sidebar-name h3 {
+       font-weight: normal;
+       font-size: 15px;
+       margin: 0;
+       padding: 8px 10px;
+       overflow: hidden;
+       white-space: nowrap;
 }
 
 }
 
-tr:hover .row-actions,
-div.comment-item:hover .row-actions {
-       visibility: visible;
+div.sidebar-name {
+       cursor: pointer;
+       font-size: 13px;
+       border-width: 1px;
+       border-style: solid;
+       -webkit-border-top-right-radius: 3px;
+       -webkit-border-top-left-radius: 3px;
+       border-top-right-radius: 3px;
+       border-top-left-radius: 3px;
 }
 
 }
 
-.row-actions-visible {
-       padding: 2px 0 0;
+.js .closed .sidebar-name {
+       -webkit-border-bottom-right-radius: 3px;
+       -webkit-border-bottom-left-radius: 3px;
+       border-bottom-right-radius: 3px;
+       border-bottom-left-radius: 3px;
 }
 
 }
 
-.form-table .pre {
-       padding: 8px;
-       margin: 0;
+.widget-liquid-right .widgets-sortables,
+#widgets-left .widget-holder {
+       border-width: 0 1px 1px;
+       border-style: none solid solid;
+       -webkit-border-bottom-right-radius: 3px;
+       -webkit-border-bottom-left-radius: 3px;
+       border-bottom-right-radius: 3px;
+       border-bottom-left-radius: 3px;
 }
 
 }
 
-table.form-table td .updated {
-       font-size: 13px;
+.js .closed .widgets-sortables,
+.js .closed .widget-holder {
+       display: none;
 }
 
 }
 
+.widget-liquid-right .widgets-sortables {
+       padding: 15px 0 0;
+}
 
 
-.tagchecklist {
-       margin-left: 14px;
-       font-size: 12px;
-       overflow: auto;
+#available-widgets .widget-holder {
+       padding: 7px 5px 0;
 }
 }
-.tagchecklist strong {
-       margin-left: -8px;
-       position: absolute;
+
+#available-widgets .widget {
+       -moz-box-shadow: none;
+       -webkit-box-shadow: none;
+       box-shadow: none;
 }
 }
-.tagchecklist span {
-       margin-right: 25px;
-       display: block;
-       float: left;
-       font-size: 11px;
-       line-height: 1.8em;
-       white-space: nowrap;
-       cursor: default;
+
+.inactive-sidebar {
+       padding: 5px 5px 0;
 }
 }
-.tagchecklist span a {
-       margin: 6px 0pt 0pt -9px;
-       cursor: pointer;
-       width: 10px;
-       height: 10px;
-       display: block;
+
+#widget-list .widget {
+       width: 250px;
+       margin: 0 10px 15px;
+       border: 0 none;
+       background: transparent;
        float: left;
        float: left;
-       text-indent: -9999px;
-       overflow: hidden;
-       position: absolute;
 }
 
 }
 
-#poststuff h2 {
-       margin-top: 20px;
-       font-size: 1.5em;
-       margin-bottom: 15px;
-       padding: 0 0 3px;
-       clear: left;
+#widget-list .widget-description {
+       padding: 5px 8px;
 }
 
 }
 
-#poststuff h3,
-.metabox-holder h3 {
-       font-size: 15px;
-       font-family: Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
-       font-weight: normal;
-       padding: 7px 10px;
-       margin: 0;
-       line-height: 1;
+.widget-placeholder {
+       border-width: 1px;
+       border-style: dashed;
+       margin: 0 auto 20px;
+       height: 26px;
+       width: 250px;
 }
 
 }
 
-#poststuff .inside,
-#poststuff .inside p {
-       font-size: 12px;
-       margin: 6px 0 8px;
+.inactive-sidebar .widget-placeholder {
+       margin: 0 10px 20px;
+       float: left;
 }
 
 }
 
-#poststuff .inside .submitbox p {
-       margin: 1em 0;
+div.widgets-holder-wrap {
+       padding: 0;
+       margin: 10px 0 20px;
 }
 
 }
 
-#post-visibility-select, #post-formats-select {
-       line-height: 1.5em;
-       margin-top: 3px;
+#widgets-left #available-widgets {
+       background-color: transparent;
+       border: 0 none;
 }
 
 }
 
-#poststuff #submitdiv .inside {
+ul#widget-list {
+       list-style: none;
        margin: 0;
        padding: 0;
        margin: 0;
        padding: 0;
+       min-height: 100px;
 }
 
 }
 
-#titlediv, #poststuff .postarea {
-       margin-bottom: 20px;
+.widget .widget-top {
+       margin-bottom: -1px;
+       font-size: 12px;
+       font-weight: bold;
+       height: 26px;
+       overflow: hidden;
 }
 
 }
 
-td.post-title strong, td.plugin-title strong {
-       display: block;
-       margin-bottom: .2em;
+.widget-top .widget-title {
+       padding: 7px 9px;
 }
 
 }
 
-td.post-title p, td.plugin-title p {
-       margin: 6px 0;
+.widget-top .widget-title-action {
+       float: right;
 }
 
 }
 
-.wp-hidden-children .wp-hidden-child,
-.ui-tabs-hide {
-       display: none;
+a.widget-action {
+       display: block;
+       width: 24px;
+       height: 26px;
 }
 
 }
 
-#templateside ul li a {
-       text-decoration: none;
+#available-widgets a.widget-action {
+       display: none;
 }
 
 }
 
-.tool-box {
-       margin: 15px 0 35px;
-}
-.tool-box .buttons {
-       margin: 15px 0;
-}
-.tool-box .title {
-       margin: 8px 0;
-       font: 18px/24px Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
+.widget-top a.widget-action {
+       background: transparent url(../images/arrows.png) no-repeat 4px 6px;
 }
 
 }
 
-.pressthis a {
-       font-size: 1.2em;
+.widget-top a.widget-action:hover {
+       background: transparent url(../images/arrows-dark.png) no-repeat 4px 6px;
 }
 
 }
 
-#sidemenu {
-       margin: -30px 15px 0 315px;
-       list-style: none;
-       position: relative;
-       float: right;
-       padding-left: 10px;
+.widget .widget-inside,
+.widget .widget-description {
+       padding: 12px 12px 10px;
        font-size: 12px;
        font-size: 12px;
+       line-height: 16px;
 }
 
 }
 
-#sidemenu a {
-       padding: 0 7px;
+.widget-inside,
+.widget-description {
+       display: none;
+}
+
+#available-widgets .widget-description {
        display: block;
        display: block;
-       float: left;
-       line-height: 28px;
-       border-top-width: 1px;
-       border-top-style: solid;
-       border-bottom-width: 1px;
-       border-bottom-style: solid;
 }
 
 }
 
-#sidemenu li {
-       display: inline;
-       line-height: 200%;
-       list-style: none;
-       text-align: center;
-       white-space: nowrap;
-       margin: 0;
+.widget .widget-inside p {
+       margin: 0 0 1em;
        padding: 0;
 }
 
        padding: 0;
 }
 
-#sidemenu a.current {
-       font-weight: normal;
-       padding-left: 6px;
-       padding-right: 6px;
-       -moz-border-radius: 3px 3px 0 0;
-       -webkit-border-top-left-radius: 3px;
-       -webkit-border-top-right-radius: 3px;
-       -khtml-border-top-left-radius: 3px;
-       -khtml-border-top-right-radius: 3px;
-       border-top-left-radius: 3px;
-       border-top-right-radius: 3px;
-       border-width: 1px;
-       border-style: solid;
+.widget-title h4 {
+       margin: 0;
+       line-height: 1;
+       overflow: hidden;
+       white-space: nowrap;
 }
 
 }
 
-#sidemenu li a .count-0 {
-       display: none;
+.widgets-sortables {
+       min-height: 90px;
 }
 
 }
 
-#poststuff .inside .the-tagcloud {
-       margin: 5px 0 10px;
-       padding: 8px;
-       border-width: 1px;
-       border-style: solid;
-       line-height: 1.8em;
-       word-spacing: 3px;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
-       -webkit-border-radius: 3px;
-       border-radius: 3px;
+.widget-control-actions {
+       margin-top: 8px;
 }
 
 }
 
-.plugin-install #description, .plugin-install-network #description {
-       width: 60%;
+.widget-control-actions a {
+       text-decoration: none;
 }
 
 }
 
-table .vers,
-table .column-visible,
-table .column-rating {
-       text-align: left;
+.widget-control-actions a:hover {
+       text-decoration: underline;
 }
 
 }
 
+.widget-control-actions .ajax-feedback {
+       padding-bottom: 3px;
+}
 
 
-/* Scrollbar fix for bulk upgrade iframe */
-body.iframe {
-       height: 98%;
+.widget-control-actions div.alignleft {
+       margin-top: 6px;
 }
 
 }
 
+div#sidebar-info {
+       padding: 0 1em;
+       margin-bottom: 1em;
+       font-size: 12px;
+}
 
 
-/*------------------------------------------------------------------------------
-  23.0  - Dead
-------------------------------------------------------------------------------*/
+.widget-title a,
+.widget-title a:hover {
+       text-decoration: none;
+       border-bottom: none;
+}
 
 
-/* - Not used anywhere in WordPress - verify and then deprecate
-------------------------------------------------------------------------------*/
-.anchors {
-       margin: 10px 20px 10px 20px;
+.widget-control-edit {
+       display: block;
+       font-size: 12px;
+       font-weight: normal;
+       line-height: 26px;
+       padding: 0 8px 0 0;
 }
 
 }
 
-div.nav {
-       height: 2em;
-       padding: 7px 10px;
-       vertical-align: text-top;
-       margin: 5px 0;
+a.widget-control-edit {
+       text-decoration: none;
 }
 
 }
 
-.nav .button-secondary {
-       padding: 2px 4px;
+.widget-control-edit .add,
+.widget-control-edit .edit {
+       display: none;
 }
 
 }
 
-.settings-toggle {
-       text-align: right;
-       margin: 5px 7px 15px 0;
-       font-size: 12px;
+#available-widgets .widget-control-edit .add,
+#widgets-right .widget-control-edit .edit,
+.inactive-sidebar .widget-control-edit .edit {
+       display: inline;
 }
 
 }
 
-.settings-toggle h3 {
-       margin: 0;
+.editwidget {
+       margin: 0 auto 15px;
 }
 
 }
 
-form#tags-filter {
-       position: relative;
+.editwidget .widget-inside {
+       display: block;
+       padding: 10px;
 }
 
 }
 
-/* - Only used once or twice in all of WP - deprecate for global style
-------------------------------------------------------------------------------*/
-td.media-icon {
-       text-align: center;
-       width: 80px;
-       padding-top: 8px;
-       padding-bottom: 8px;
+.inactive p.description {
+       margin: 5px 15px 10px;
 }
 
 }
 
-td.media-icon img {
-       max-width: 80px;
-       max-height: 60px;
+#available-widgets p.description {
+       margin: 0 12px 12px;
 }
 
 }
 
-.screen-per-page {
-       width: 3em;
+.widget-position {
+       margin-top: 8px;
 }
 
 }
 
-.list-ajax-loading {
-       float: right;
-       margin-right: 9px;
-       margin-top: -1px;
+.inactive {
+       padding-top: 2px;
 }
 
 }
 
-.tablenav .list-ajax-loading {
-       margin-top: 7px;
+.sidebar-name-arrow {
+       float: right;
+       height: 29px;
+       width: 26px;
 }
 
 }
 
-#howto {
-       font-size: 11px;
-       margin: 0 5px;
-       display: block;
+.widget-title .in-widget-title {
+       font-size: 12px;
+       white-space: nowrap;
 }
 
 }
 
-.import-system {font-size: 16px;}
-#namediv table {
-       width: 100%;
+#removing-widget {
+       display: none;
+       font-weight: normal;
+       padding-left: 15px;
+       font-size: 12px;
+       line-height: 1;
 }
 
 }
 
-#namediv td.first {
-       width: 10px;
-       white-space: nowrap;
+.widget-control-noform,
+#access-off,
+.widgets_access .widget-action,
+.widgets_access .sidebar-name-arrow,
+.widgets_access #access-on,
+.widgets_access .widget-holder .description {
+       display: none;
 }
 
 }
 
-#namediv input {
-       width: 98%;
+.widgets_access .widget-holder,
+.widgets_access #widget-list {
+       padding-top: 10px;
 }
 
 }
 
-#namediv p {
-       margin: 10px 0;
+.widgets_access #access-off {
+       display: inline;
 }
 
 }
 
-#submitdiv h3 {
-       margin-bottom: 0 !important;
+.widgets_access #wpbody-content .widget-title-action,
+.widgets_access #wpbody-content .widget-control-edit,
+.widgets_access .closed .widgets-sortables,
+.widgets_access .closed .widget-holder {
+       display: block;
 }
 
 }
 
-/* - Used - but could/should be deprecated with a CSS reset
-------------------------------------------------------------------------------*/
-.zerosize {
-       height: 0;
-       width: 0;
-       margin: 0;
-       border: 0;
-       padding: 0;
-       overflow: hidden;
-       position: absolute;
+.widgets_access .closed .sidebar-name {
+       -webkit-border-bottom-right-radius: 0;
+       -webkit-border-bottom-left-radius: 0;
+       border-bottom-right-radius: 0;
+       border-bottom-left-radius: 0;
 }
 
 }
 
-br.clear {
-       height: 2px;
-       line-height: 2px;
+.widgets_access .sidebar-name,
+.widgets_access .widget .widget-top {
+       cursor: default;
 }
 
 }
 
-.checkbox {
-       border: none;
-       margin: 0;
-       padding: 0;
+/* =Media Queries
+-------------------------------------------------------------- */
+
+@media only screen and (max-width: 768px) {
+       /* categories */
+       #col-left {
+               width: 100%;
+       }
+
+       #col-right {
+               width: 100%;
+       }
 }
 
 }
 
-#content {
-       margin: 0;
-       width: 100%;
+@media only screen and (min-width: 769px) {
+       /* categories */
+       #col-left {
+               width: 35%;
+       }
+
+       #col-right {
+               width: 65%;
+       }
 }
 
 }
 
-fieldset {
-       border: 0;
-       padding: 0;
-       margin: 0;
+@media only screen and (max-width: 860px) {
+
+       /* categories */
+       #col-left {
+               width: 35%;
+       }
+
+       #col-right {
+               width: 65%;
+       }
 }
 
 }
 
-.post-categories {
-       display: inline;
-       margin: 0;
-       padding: 0;
+@media only screen and (min-width: 980px) {
+
+       /* categories */
+       #col-left {
+               width: 35%;
+       }
+
+       #col-right {
+               width: 65%;
+       }
 }
 
 }
 
-.post-categories li {
-       display: inline;
+@media only screen and (max-width: 768px) {
+       /* categories */
+       #col-left {
+               width: 100%;
+       }
+
+       #col-right {
+               width: 100%;
+       }
+
+       .form-field input,
+       .form-field textarea {
+               width: 99%;
+       }
+
+       .form-wrap .form-field {
+               padding:0;
+       }
+
+       /* users */
+       #profile-page .form-table textarea {
+               max-width: 400px;
+               width: auto;
+       }
 }
 }
index 62ebacf48f7ab86f40cb07bca0a05d5e91064b2e..168c65e33f5fe6c36978f937d3e5acf89eb7cb57 100644 (file)
@@ -80,13 +80,22 @@ class Custom_Background {
         * @since 3.0.0
         */
        function admin_load() {
         * @since 3.0.0
         */
        function admin_load() {
-               add_contextual_help( $this->page, '<p>' . __( 'You can customize the look of your site without touching any of your theme&#8217;s code by using a custom background. Your background can be an image or a color.' ) . '</p>' .
-               '<p>' . __( 'To use a background image, simply upload it, then choose your display options below. You can display a single instance of your image, or tile it to fill the screen. You can have your background fixed in place, so your site content moves on top of it, or you can have it scroll with your site.' ) . '</p>' .
-               '<p>' . __( 'You can also choose a background color. If you know the hexadecimal code for the color you want, enter it in the Color field. If not, click on the Select a Color link, and a color picker will allow you to choose the exact shade you want.' ) . '</p>' .
-               '<p>' . __( 'Don&#8217;t forget to click on the Save Changes button when you are finished.' ) . '</p>' .
-               '<p><strong>' . __( 'For more information:' ) . '</strong></p>' .
-               '<p>' . __( '<a href="http://codex.wordpress.org/Appearance_Background_Screen" target="_blank">Documentation on Custom Background</a>' ) . '</p>' .
-               '<p>' . __( '<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>' ) . '</p>' );
+               get_current_screen()->add_help_tab( array(
+                       'id'      => 'overview',
+                       'title'   => __('Overview'),
+                       'content' =>
+                               '<p>' . __( 'You can customize the look of your site without touching any of your theme&#8217;s code by using a custom background. Your background can be an image or a color.' ) . '</p>' .
+                               '<p>' . __( 'To use a background image, simply upload it, then choose your display options below. You can display a single instance of your image, or tile it to fill the screen. You can have your background fixed in place, so your site content moves on top of it, or you can have it scroll with your site.' ) . '</p>' .
+                               '<p>' . __( 'You can also choose a background color. If you know the hexadecimal code for the color you want, enter it in the Background Color field. If not, click on the Select a Color link, and a color picker will allow you to choose the exact shade you want.' ) . '</p>' .
+                               '<p>' . __( 'Don&#8217;t forget to click on the Save Changes button when you are finished.' ) . '</p>'
+               ) );
+
+               get_current_screen()->set_help_sidebar(
+                       '<p><strong>' . __( 'For more information:' ) . '</strong></p>' .
+                       '<p>' . __( '<a href="http://codex.wordpress.org/Appearance_Background_Screen" target="_blank">Documentation on Custom Background</a>' ) . '</p>' .
+                       '<p>' . __( '<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>' ) . '</p>'
+               );
+
                wp_enqueue_script('custom-background');
                wp_enqueue_style('farbtastic');
        }
                wp_enqueue_script('custom-background');
                wp_enqueue_style('farbtastic');
        }
@@ -291,11 +300,11 @@ if ( get_background_image() ) {
 </tr>
 <?php endif; // get_background_image() ?>
 <tr valign="top">
 </tr>
 <?php endif; // get_background_image() ?>
 <tr valign="top">
-<th scope="row"><?php _e( 'Color' ); ?></th>
+<th scope="row"><?php _e( 'Background Color' ); ?></th>
 <td><fieldset><legend class="screen-reader-text"><span><?php _e( 'Background Color' ); ?></span></legend>
 <?php $show_clear = get_background_color() ? '' : ' style="display:none"'; ?>
 <input type="text" name="background-color" id="background-color" value="#<?php echo esc_attr(get_background_color()) ?>" />
 <td><fieldset><legend class="screen-reader-text"><span><?php _e( 'Background Color' ); ?></span></legend>
 <?php $show_clear = get_background_color() ? '' : ' style="display:none"'; ?>
 <input type="text" name="background-color" id="background-color" value="#<?php echo esc_attr(get_background_color()) ?>" />
-<a class="hide-if-no-js" href="#" id="pickcolor"><?php _e('Select a Color'); ?></a> <span <?php echo $show_clear; ?>class="hide-if-no-js" id="clearcolor"> (<a href="#"><?php _e( 'Clear' ); ?></a>)</span>
+<a class="hide-if-no-js" href="#" id="pickcolor"><?php _e('Select a Color'); ?></a> <span<?php echo $show_clear; ?> class="hide-if-no-js" id="clearcolor"> (<a href="#"><?php _e( 'Clear' ); ?></a>)</span>
 <div id="colorPickerDiv" style="z-index: 100; background:#eee; border:1px solid #ccc; position:absolute; display:none;"></div>
 </fieldset></td>
 </tr>
 <div id="colorPickerDiv" style="z-index: 100; background:#eee; border:1px solid #ccc; position:absolute; display:none;"></div>
 </fieldset></td>
 </tr>
index 24ec9b8be976776490101b0f2ad22df828745f9c..ebeb2a5ad7815a4713608c113824cad0e1c4fc5b 100644 (file)
@@ -99,12 +99,20 @@ class Custom_Image_Header {
         * @since 3.0.0
         */
        function help() {
         * @since 3.0.0
         */
        function help() {
-               add_contextual_help( $this->page, '<p>' . __( 'You can set a custom image header for your site. Simply upload the image and crop it, and the new header will go live immediately.' ) . '</p>' .
-               '<p>' . __( 'If you want to discard your custom header and go back to the default included in your theme, click on the buttons to remove the custom image and restore the original header image.' ) . '</p>' .
-               '<p>' . __( 'Some themes come with additional header images bundled. If you see multiple images displayed, select the one you&#8217;d like and click the Save Changes button.' ) . '</p>' .
-               '<p><strong>' . __( 'For more information:' ) . '</strong></p>' .
-               '<p>' . __( '<a href="http://codex.wordpress.org/Appearance_Header_Screen" target="_blank">Documentation on Custom Header</a>' ) . '</p>' .
-               '<p>' . __( '<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>' ) . '</p>' );
+               get_current_screen()->add_help_tab( array(
+                       'id'      => 'overview',
+                       'title'   => __('Overview'),
+                       'content' =>
+                               '<p>' . __( 'You can set a custom image header for your site. Simply upload the image and crop it, and the new header will go live immediately.' ) . '</p>' .
+                               '<p>' . __( 'If you want to discard your custom header and go back to the default included in your theme, click on the buttons to remove the custom image and restore the original header image.' ) . '</p>' .
+                               '<p>' . __( 'Some themes come with additional header images bundled. If you see multiple images displayed, select the one you&#8217;d like and click the Save Changes button.' ) . '</p>'
+               ) );
+
+               get_current_screen()->set_help_sidebar(
+                       '<p><strong>' . __( 'For more information:' ) . '</strong></p>' .
+                       '<p>' . __( '<a href="http://codex.wordpress.org/Appearance_Header_Screen" target="_blank">Documentation on Custom Header</a>' ) . '</p>' .
+                       '<p>' . __( '<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>' ) . '</p>'
+               );
        }
 
        /**
        }
 
        /**
@@ -241,9 +249,11 @@ class Custom_Image_Header {
                        return;
 
                $this->default_headers = $_wp_default_headers;
                        return;
 
                $this->default_headers = $_wp_default_headers;
+               $template_directory_uri = get_template_directory_uri();
+               $stylesheet_directory_uri = get_stylesheet_directory_uri();
                foreach ( array_keys($this->default_headers) as $header ) {
                foreach ( array_keys($this->default_headers) as $header ) {
-                       $this->default_headers[$header]['url'] =  sprintf( $this->default_headers[$header]['url'], get_template_directory_uri(), get_stylesheet_directory_uri() );
-                       $this->default_headers[$header]['thumbnail_url'] =  sprintf( $this->default_headers[$header]['thumbnail_url'], get_template_directory_uri(), get_stylesheet_directory_uri() );
+                       $this->default_headers[$header]['url'] =  sprintf( $this->default_headers[$header]['url'], $template_directory_uri, $stylesheet_directory_uri );
+                       $this->default_headers[$header]['thumbnail_url'] =  sprintf( $this->default_headers[$header]['thumbnail_url'], $template_directory_uri, $stylesheet_directory_uri );
                }
 
        }
                }
 
        }
@@ -627,7 +637,7 @@ wp_nonce_field( 'custom-header-options', '_wpnonce-custom-header-options' ); ?>
        function step_2() {
                check_admin_referer('custom-header-upload', '_wpnonce-custom-header-upload');
                if ( ! current_theme_supports( 'custom-header-uploads' ) )
        function step_2() {
                check_admin_referer('custom-header-upload', '_wpnonce-custom-header-upload');
                if ( ! current_theme_supports( 'custom-header-uploads' ) )
-                       wp_die( 'Cheatin&#8217; uh?' );
+                       wp_die( __( 'Cheatin&#8217; uh?' ) );
 
                $overrides = array('test_form' => false);
                $file = wp_handle_upload($_FILES['import'], $overrides);
 
                $overrides = array('test_form' => false);
                $file = wp_handle_upload($_FILES['import'], $overrides);
@@ -713,7 +723,7 @@ wp_nonce_field( 'custom-header-options', '_wpnonce-custom-header-options' ); ?>
        function step_3() {
                check_admin_referer('custom-header-crop-image');
                if ( ! current_theme_supports( 'custom-header-uploads' ) )
        function step_3() {
                check_admin_referer('custom-header-crop-image');
                if ( ! current_theme_supports( 'custom-header-uploads' ) )
-                       wp_die( 'Cheatin&#8217; uh?' );
+                       wp_die( __( 'Cheatin&#8217; uh?' ) );
 
                if ( $_POST['oitar'] > 1 ) {
                        $_POST['x1'] = $_POST['x1'] * $_POST['oitar'];
 
                if ( $_POST['oitar'] > 1 ) {
                        $_POST['x1'] = $_POST['x1'] * $_POST['oitar'];
index cce196b789377eb9a765f2f4b919d29f63d35512..224d36741c8e67fb2c741fcb03c84603cb99cb32 100644 (file)
@@ -30,7 +30,7 @@ if ( $doaction ) {
        } elseif ( isset( $_REQUEST['ids'] ) ) {
                $comment_ids = array_map( 'absint', explode( ',', $_REQUEST['ids'] ) );
        } elseif ( wp_get_referer() ) {
        } elseif ( isset( $_REQUEST['ids'] ) ) {
                $comment_ids = array_map( 'absint', explode( ',', $_REQUEST['ids'] ) );
        } elseif ( wp_get_referer() ) {
-               wp_redirect( wp_get_referer() );
+               wp_safe_redirect( wp_get_referer() );
                exit;
        }
 
                exit;
        }
 
@@ -92,7 +92,7 @@ if ( $doaction ) {
        if ( $trashed || $spammed )
                $redirect_to = add_query_arg( 'ids', join( ',', $comment_ids ), $redirect_to );
 
        if ( $trashed || $spammed )
                $redirect_to = add_query_arg( 'ids', join( ',', $comment_ids ), $redirect_to );
 
-       wp_redirect( $redirect_to );
+       wp_safe_redirect( $redirect_to );
        exit;
 } elseif ( ! empty( $_GET['_wp_http_referer'] ) ) {
         wp_redirect( remove_query_arg( array( '_wp_http_referer', '_wpnonce' ), stripslashes( $_SERVER['REQUEST_URI'] ) ) );
        exit;
 } elseif ( ! empty( $_GET['_wp_http_referer'] ) ) {
         wp_redirect( remove_query_arg( array( '_wp_http_referer', '_wpnonce' ), stripslashes( $_SERVER['REQUEST_URI'] ) ) );
@@ -111,18 +111,33 @@ else
 
 add_screen_option( 'per_page', array('label' => _x( 'Comments', 'comments per page (screen options)' )) );
 
 
 add_screen_option( 'per_page', array('label' => _x( 'Comments', 'comments per page (screen options)' )) );
 
-add_contextual_help( $current_screen, '<p>' . __( 'You can manage comments made on your site similar to the way you manage Posts and other content. This screen is customizable in the same ways as other management screens, and you can act on comments using the on-hover action links or the Bulk Actions.' ) . '</p>' .
-       '<p>' . __( 'A yellow row means the comment is waiting for you to moderate it.' ) . '</p>' .
-       '<p>' . __( 'In the Author column, in addition to the author&#8217;s name, email address, and blog URL, the commenter&#8217;s IP address is shown. Clicking on this link will show you all the comments made from this IP address.' ) . '</p>' .
-       '<p>' . __( 'In the Comment column, above each comment it says &#8220;Submitted on,&#8221; followed by the date and time the comment was left on your site. Clicking on the date/time link will take you to that comment on your live site. Hovering over any comment gives you options to approve, reply (and approve), quick edit, edit, spam mark, or trash that comment.' ) . '</p>' .
-       '<p>' . __( 'In the In Response To column, there are three elements. The text is the name of the post that inspired the comment, and links to the post editor for that entry. The &#8220;#&#8221; permalink symbol below leads to that post on your live site. The small bubble with the number in it shows how many comments that post has received. If the bubble is gray, you have moderated all comments for that post. If it is blue, there are pending comments. Clicking the bubble will filter the comments screen to show only comments on that post.' ) . '</p>' .
-       '<p>' . __( 'Many people take advantage of keyboard shortcuts to moderate their comments more quickly. Use the link below to learn more.' ) . '</p>' .
+get_current_screen()->add_help_tab( array(
+'id'           => 'overview',
+'title'                => __('Overview'),
+'content'      =>
+       '<p>' . __( 'You can manage comments made on your site similar to the way you manage posts and other content. This screen is customizable in the same ways as other management screens, and you can act on comments using the on-hover action links or the Bulk Actions.' ) . '</p>'
+) );
+get_current_screen()->add_help_tab( array(
+'id'           => 'moderating-comments',
+'title'                => __('Moderating Comments'),
+'content'      =>
+       '<ul>' .
+               '<li>' . __( 'A yellow row means the comment is waiting for you to moderate it.' ) . '</li>' .
+               '<li>' . __( 'In the <strong>Author</strong> column, in addition to the author&#8217;s name, email address, and blog URL, the commenter&#8217;s IP address is shown. Clicking on this link will show you all the comments made from this IP address.' ) . '</li>' .
+               '<li>' . __( 'In the <strong>Comment</strong> column, above each comment it says &#8220;Submitted on,&#8221; followed by the date and time the comment was left on your site. Clicking on the date/time link will take you to that comment on your live site. Hovering over any comment gives you options to approve, reply (and approve), quick edit, edit, spam mark, or trash that comment.' ) . '</li>' .
+               '<li>' . __( 'In the <strong>In Response To</strong> column, there are three elements. The text is the name of the post that inspired the comment, and links to the post editor for that entry. The View Post link leads to that post on your live site. The small bubble with the number in it shows how many comments that post has received. If the bubble is gray, you have moderated all comments for that post. If it is blue, there are pending comments. Clicking the bubble will filter the comments screen to show only comments on that post.' ) . '</li>' .
+               '<li>' . __( 'Many people take advantage of keyboard shortcuts to moderate their comments more quickly. Use the link to the side to learn more.' ) . '</li>' .
+       '</ul>'
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __( 'For more information:' ) . '</strong></p>' .
        '<p>' . __( '<a href="http://codex.wordpress.org/Administration_Screens#Comments" target="_blank">Documentation on Comments</a>' ) . '</p>' .
        '<p>' . __( '<a href="http://codex.wordpress.org/Comment_Spam" target="_blank">Documentation on Comment Spam</a>' ) . '</p>' .
        '<p>' . __( '<a href="http://codex.wordpress.org/Keyboard_Shortcuts" target="_blank">Documentation on Keyboard Shortcuts</a>' ) . '</p>' .
        '<p>' . __( '<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>' ) . '</p>'
 );
        '<p><strong>' . __( 'For more information:' ) . '</strong></p>' .
        '<p>' . __( '<a href="http://codex.wordpress.org/Administration_Screens#Comments" target="_blank">Documentation on Comments</a>' ) . '</p>' .
        '<p>' . __( '<a href="http://codex.wordpress.org/Comment_Spam" target="_blank">Documentation on Comment Spam</a>' ) . '</p>' .
        '<p>' . __( '<a href="http://codex.wordpress.org/Keyboard_Shortcuts" target="_blank">Documentation on Keyboard Shortcuts</a>' ) . '</p>' .
        '<p>' . __( '<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>' ) . '</p>'
 );
+
 require_once('./admin-header.php');
 ?>
 
 require_once('./admin-header.php');
 ?>
 
index aed7b647d076d8af9ef170a0c56e21396ee8ddae..ec6f4ca38926eb7f4504310d558e95d23209ff26 100644 (file)
@@ -23,7 +23,6 @@ if ( post_type_supports($post_type, 'editor') || post_type_supports($post_type,
  * @var int
  */
 $post_ID = isset($post_ID) ? (int) $post_ID : 0;
  * @var int
  */
 $post_ID = isset($post_ID) ? (int) $post_ID : 0;
-$temp_ID = isset($temp_ID) ? (int) $temp_ID : 0;
 $user_ID = isset($user_ID) ? (int) $user_ID : 0;
 $action = isset($action) ? $action : '';
 
 $user_ID = isset($user_ID) ? (int) $user_ID : 0;
 $action = isset($action) ? $action : '';
 
@@ -100,10 +99,10 @@ $post_type_object = get_post_type_object($post_type);
 // All meta boxes should be defined and added before the first do_meta_boxes() call (or potentially during the do_meta_boxes action).
 require_once('./includes/meta-boxes.php');
 
 // All meta boxes should be defined and added before the first do_meta_boxes() call (or potentially during the do_meta_boxes action).
 require_once('./includes/meta-boxes.php');
 
-add_meta_box('submitdiv', __('Publish'), 'post_submit_meta_box', $post_type, 'side', 'core');
+add_meta_box('submitdiv', __('Publish'), 'post_submit_meta_box', null, 'side', 'core');
 
 if ( current_theme_supports( 'post-formats' ) && post_type_supports( $post_type, 'post-formats' ) )
 
 if ( current_theme_supports( 'post-formats' ) && post_type_supports( $post_type, 'post-formats' ) )
-       add_meta_box( 'formatdiv', _x( 'Format', 'post format' ), 'post_format_meta_box', $post_type, 'side', 'core' );
+       add_meta_box( 'formatdiv', _x( 'Format', 'post format' ), 'post_format_meta_box', null, 'side', 'core' );
 
 // all taxonomies
 foreach ( get_object_taxonomies($post_type) as $tax_name ) {
 
 // all taxonomies
 foreach ( get_object_taxonomies($post_type) as $tax_name ) {
@@ -114,44 +113,43 @@ foreach ( get_object_taxonomies($post_type) as $tax_name ) {
        $label = $taxonomy->labels->name;
 
        if ( !is_taxonomy_hierarchical($tax_name) )
        $label = $taxonomy->labels->name;
 
        if ( !is_taxonomy_hierarchical($tax_name) )
-               add_meta_box('tagsdiv-' . $tax_name, $label, 'post_tags_meta_box', $post_type, 'side', 'core', array( 'taxonomy' => $tax_name ));
+               add_meta_box('tagsdiv-' . $tax_name, $label, 'post_tags_meta_box', null, 'side', 'core', array( 'taxonomy' => $tax_name ));
        else
        else
-               add_meta_box($tax_name . 'div', $label, 'post_categories_meta_box', $post_type, 'side', 'core', array( 'taxonomy' => $tax_name ));
+               add_meta_box($tax_name . 'div', $label, 'post_categories_meta_box', null, 'side', 'core', array( 'taxonomy' => $tax_name ));
 }
 
 if ( post_type_supports($post_type, 'page-attributes') )
 }
 
 if ( post_type_supports($post_type, 'page-attributes') )
-       add_meta_box('pageparentdiv', 'page' == $post_type ? __('Page Attributes') : __('Attributes'), 'page_attributes_meta_box', $post_type, 'side', 'core');
+       add_meta_box('pageparentdiv', 'page' == $post_type ? __('Page Attributes') : __('Attributes'), 'page_attributes_meta_box', null, 'side', 'core');
 
 
-if ( current_theme_supports( 'post-thumbnails', $post_type ) && post_type_supports( $post_type, 'thumbnail' )
-       && ( ! is_multisite() || ( ( $mu_media_buttons = get_site_option( 'mu_media_buttons', array() ) ) && ! empty( $mu_media_buttons['image'] ) ) ) )
-               add_meta_box('postimagediv', __('Featured Image'), 'post_thumbnail_meta_box', $post_type, 'side', 'low');
+if ( current_theme_supports( 'post-thumbnails', $post_type ) && post_type_supports( $post_type, 'thumbnail' ) )
+               add_meta_box('postimagediv', __('Featured Image'), 'post_thumbnail_meta_box', null, 'side', 'low');
 
 if ( post_type_supports($post_type, 'excerpt') )
 
 if ( post_type_supports($post_type, 'excerpt') )
-       add_meta_box('postexcerpt', __('Excerpt'), 'post_excerpt_meta_box', $post_type, 'normal', 'core');
+       add_meta_box('postexcerpt', __('Excerpt'), 'post_excerpt_meta_box', null, 'normal', 'core');
 
 if ( post_type_supports($post_type, 'trackbacks') )
 
 if ( post_type_supports($post_type, 'trackbacks') )
-       add_meta_box('trackbacksdiv', __('Send Trackbacks'), 'post_trackback_meta_box', $post_type, 'normal', 'core');
+       add_meta_box('trackbacksdiv', __('Send Trackbacks'), 'post_trackback_meta_box', null, 'normal', 'core');
 
 if ( post_type_supports($post_type, 'custom-fields') )
 
 if ( post_type_supports($post_type, 'custom-fields') )
-       add_meta_box('postcustom', __('Custom Fields'), 'post_custom_meta_box', $post_type, 'normal', 'core');
+       add_meta_box('postcustom', __('Custom Fields'), 'post_custom_meta_box', null, 'normal', 'core');
 
 do_action('dbx_post_advanced');
 if ( post_type_supports($post_type, 'comments') )
 
 do_action('dbx_post_advanced');
 if ( post_type_supports($post_type, 'comments') )
-       add_meta_box('commentstatusdiv', __('Discussion'), 'post_comment_status_meta_box', $post_type, 'normal', 'core');
+       add_meta_box('commentstatusdiv', __('Discussion'), 'post_comment_status_meta_box', null, 'normal', 'core');
 
 if ( ('publish' == $post->post_status || 'private' == $post->post_status) && post_type_supports($post_type, 'comments') )
 
 if ( ('publish' == $post->post_status || 'private' == $post->post_status) && post_type_supports($post_type, 'comments') )
-       add_meta_box('commentsdiv', __('Comments'), 'post_comment_meta_box', $post_type, 'normal', 'core');
+       add_meta_box('commentsdiv', __('Comments'), 'post_comment_meta_box', null, 'normal', 'core');
 
 if ( !( 'pending' == $post->post_status && !current_user_can( $post_type_object->cap->publish_posts ) ) )
 
 if ( !( 'pending' == $post->post_status && !current_user_can( $post_type_object->cap->publish_posts ) ) )
-       add_meta_box('slugdiv', __('Slug'), 'post_slug_meta_box', $post_type, 'normal', 'core');
+       add_meta_box('slugdiv', __('Slug'), 'post_slug_meta_box', null, 'normal', 'core');
 
 if ( post_type_supports($post_type, 'author') ) {
        if ( is_super_admin() || current_user_can( $post_type_object->cap->edit_others_posts ) )
 
 if ( post_type_supports($post_type, 'author') ) {
        if ( is_super_admin() || current_user_can( $post_type_object->cap->edit_others_posts ) )
-               add_meta_box('authordiv', __('Author'), 'post_author_meta_box', $post_type, 'normal', 'core');
+               add_meta_box('authordiv', __('Author'), 'post_author_meta_box', null, 'normal', 'core');
 }
 
 if ( post_type_supports($post_type, 'revisions') && 0 < $post_ID && wp_get_post_revisions( $post_ID ) )
 }
 
 if ( post_type_supports($post_type, 'revisions') && 0 < $post_ID && wp_get_post_revisions( $post_ID ) )
-       add_meta_box('revisionsdiv', __('Revisions'), 'post_revisions_meta_box', $post_type, 'normal', 'core');
+       add_meta_box('revisionsdiv', __('Revisions'), 'post_revisions_meta_box', null, 'normal', 'core');
 
 do_action('add_meta_boxes', $post_type, $post);
 do_action('add_meta_boxes_' . $post_type, $post);
 
 do_action('add_meta_boxes', $post_type, $post);
 do_action('add_meta_boxes_' . $post_type, $post);
@@ -160,40 +158,89 @@ do_action('do_meta_boxes', $post_type, 'normal', $post);
 do_action('do_meta_boxes', $post_type, 'advanced', $post);
 do_action('do_meta_boxes', $post_type, 'side', $post);
 
 do_action('do_meta_boxes', $post_type, 'advanced', $post);
 do_action('do_meta_boxes', $post_type, 'side', $post);
 
-add_screen_option('layout_columns', array('max' => 2) );
+add_screen_option('layout_columns', array('max' => 2, 'default' => 2) );
 
 if ( 'post' == $post_type ) {
 
 if ( 'post' == $post_type ) {
-       add_contextual_help($current_screen,
-       '<p>' . __('The title field and the big Post Editing Area are fixed in place, but you can reposition all the other boxes using drag and drop, and can minimize or expand them by clicking the title bar of each box. Use the Screen Options tab to unhide more boxes (Excerpt, Send Trackbacks, Custom Fields, Discussion, Slug, Author) or to choose a 1- or 2-column layout for this screen.') . '</p>' .
-       '<p>' . __('<strong>Title</strong> - Enter a title for your post. After you enter a title, you&#8217;ll see the permalink below, which you can edit.') . '</p>' .
-       '<p>' . __('<strong>Post editor</strong> - Enter the text for your post. There are two modes of editing: Visual and HTML. Choose the mode by clicking on the appropriate tab. Visual mode gives you a WYSIWYG editor. Click the last icon in the row to get a second row of controls. The HTML mode allows you to enter raw HTML along with your post text. You can insert media files by clicking the icons above the post editor and following the directions. You can go the distraction-free writing screen, new in 3.2, via the Fullscreen icon in Visual mode (second to last in the top row) or the Fullscreen button in HTML mode (last in the row). Once there, you can make buttons visible by hovering over the top area. Exit Fullscreen back to the regular post editor.') . '</p>' .
-       '<p>' . __('<strong>Publish</strong> - You can set the terms of publishing your post in the Publish box. For Status, Visibility, and Publish (immediately), click on the Edit link to reveal more options. Visibility includes options for password-protecting a post or making it stay at the top of your blog indefinitely (sticky). Publish (immediately) allows you to set a future or past date and time, so you can schedule a post to be published in the future or backdate a post.') . '</p>' .
-       ( ( current_theme_supports( 'post-formats' ) && post_type_supports( 'post', 'post-formats' ) ) ? '<p>' . __( '<strong>Post Format</strong> - This designates how your theme will display a specific post. For example, you could have a <em>standard</em> blog post with a title and paragraphs, or a short <em>aside</em> that omits the title and contains a short text blurb. Please refer to the Codex for <a href="http://codex.wordpress.org/Post_Formats#Supported_Formats">descriptions of each post format</a>. Your theme could enable all or some of 10 possible formats.' ) . '</p>' : '' ) .
-       '<p>' . __('<strong>Featured Image</strong> - This allows you to associate an image with your post without inserting it. This is usually useful only if your theme makes use of the featured image as a post thumbnail on the home page, a custom header, etc.') . '</p>' .
-       '<p>' . __('<strong>Send Trackbacks</strong> - Trackbacks are a way to notify legacy blog systems that you&#8217;ve linked to them. Enter the URL(s) you want to send trackbacks. If you link to other WordPress sites they&#8217;ll be notified automatically using pingbacks, and this field is unnecessary.') . '</p>' .
-       '<p>' . __('<strong>Discussion</strong> - You can turn comments and pings on or off, and if there are comments on the post, you can see them here and moderate them.') . '</p>' .
-       '<p>' . sprintf(__('You can also create posts with the <a href="%s">Press This bookmarklet</a>.'), 'options-writing.php') . '</p>' .
-       '<p><strong>' . __('For more information:') . '</strong></p>' .
-       '<p>' . __('<a href="http://codex.wordpress.org/Posts_Add_New_Screen" target="_blank">Documentation on Writing and Editing Posts</a>') . '</p>' .
-       '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
+       $customize_display = '<p>' . __('The title field and the big Post Editing Area are fixed in place, but you can reposition all the other boxes using drag and drop, and can minimize or expand them by clicking the title bar of each box. Use the Screen Options tab to unhide more boxes (Excerpt, Send Trackbacks, Custom Fields, Discussion, Slug, Author) or to choose a 1- or 2-column layout for this screen.') . '</p>';
+
+       get_current_screen()->add_help_tab( array(
+               'id'      => 'customize-display',
+               'title'   => __('Customizing This Display'),
+               'content' => $customize_display,
+       ) );
+
+       $title_and_editor  = '<p>' . __('<strong>Title</strong> - Enter a title for your post. After you enter a title, you&#8217;ll see the permalink below, which you can edit.') . '</p>';
+       $title_and_editor .= '<p>' . __('<strong>Post editor</strong> - Enter the text for your post. There are two modes of editing: Visual and HTML. Choose the mode by clicking on the appropriate tab. Visual mode gives you a WYSIWYG editor. Click the last icon in the row to get a second row of controls. The HTML mode allows you to enter raw HTML along with your post text. You can insert media files by clicking the icons above the post editor and following the directions. You can go to the distraction-free writing screen via the Fullscreen icon in Visual mode (second to last in the top row) or the Fullscreen button in HTML mode (last in the row). Once there, you can make buttons visible by hovering over the top area. Exit Fullscreen back to the regular post editor.') . '</p>';
+
+       get_current_screen()->add_help_tab( array(
+               'id'      => 'title-post-editor',
+               'title'   => __('Title and Post Editor'),
+               'content' => $title_and_editor,
+       ) );
+
+       $publish_box = '<p>' . __('<strong>Publish</strong> - You can set the terms of publishing your post in the Publish box. For Status, Visibility, and Publish (immediately), click on the Edit link to reveal more options. Visibility includes options for password-protecting a post or making it stay at the top of your blog indefinitely (sticky). Publish (immediately) allows you to set a future or past date and time, so you can schedule a post to be published in the future or backdate a post.') . '</p>';
+
+       if ( current_theme_supports( 'post-formats' ) && post_type_supports( 'post', 'post-formats' ) ) {
+               $publish_box .= '<p>' . __( '<strong>Post Format</strong> - This designates how your theme will display a specific post. For example, you could have a <em>standard</em> blog post with a title and paragraphs, or a short <em>aside</em> that omits the title and contains a short text blurb. Please refer to the Codex for <a href="http://codex.wordpress.org/Post_Formats#Supported_Formats">descriptions of each post format</a>. Your theme could enable all or some of 10 possible formats.' ) . '</p>';
+       }
+
+       if ( current_theme_supports( 'post-thumbnails' ) && post_type_supports( 'post', 'thumbnail' ) ) {
+               $publish_box .= '<p>' . __('<strong>Featured Image</strong> - This allows you to associate an image with your post without inserting it. This is usually useful only if your theme makes use of the featured image as a post thumbnail on the home page, a custom header, etc.') . '</p>';
+       }
+
+       get_current_screen()->add_help_tab( array(
+               'id'      => 'publish-box',
+               'title'   => __('Publish Box'),
+               'content' => $publish_box,
+       ) );
+
+       $discussion_settings  = '<p>' . __('<strong>Send Trackbacks</strong> - Trackbacks are a way to notify legacy blog systems that you&#8217;ve linked to them. Enter the URL(s) you want to send trackbacks. If you link to other WordPress sites they&#8217;ll be notified automatically using pingbacks, and this field is unnecessary.') . '</p>';
+       $discussion_settings .= '<p>' . __('<strong>Discussion</strong> - You can turn comments and pings on or off, and if there are comments on the post, you can see them here and moderate them.') . '</p>';
+
+       get_current_screen()->add_help_tab( array(
+               'id'      => 'discussion-settings',
+               'title'   => __('Discussion Settings'),
+               'content' => $discussion_settings,
+       ) );
+
+       get_current_screen()->set_help_sidebar(
+                       '<p>' . sprintf(__('You can also create posts with the <a href="%s">Press This bookmarklet</a>.'), 'options-writing.php') . '</p>' .
+                       '<p><strong>' . __('For more information:') . '</strong></p>' .
+                       '<p>' . __('<a href="http://codex.wordpress.org/Posts_Add_New_Screen" target="_blank">Documentation on Writing and Editing Posts</a>') . '</p>' .
+                       '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        );
 } elseif ( 'page' == $post_type ) {
        );
 } elseif ( 'page' == $post_type ) {
-       add_contextual_help($current_screen, '<p>' . __('Pages are similar to Posts in that they have a title, body text, and associated metadata, but they are different in that they are not part of the chronological blog stream, kind of like permanent posts. Pages are not categorized or tagged, but can have a hierarchy. You can nest Pages under other Pages by making one the &#8220;Parent&#8221; of the other, creating a group of Pages.') . '</p>' .
-       '<p>' . __('Creating a Page is very similar to creating a Post, and the screens can be customized in the same way using drag and drop, the Screen Options tab, and expanding/collapsing boxes as you choose. This screen also has the new in 3.2 distraction-free writing space, available in both the Visual and HTML modes via the Fullscreen buttons. The Page editor mostly works the same as the Post editor, but there are some Page-specific features in the Page Attributes box:') . '</p>' .
-       '<p>' . __('<strong>Parent</strong> - You can arrange your pages in hierarchies. For example, you could have an &#8220;About&#8221; page that has &#8220;Life Story&#8221; and &#8220;My Dog&#8221; pages under it. There are no limits to how many levels you can nest pages.') . '</p>' .
-       '<p>' . __('<strong>Template</strong> - Some themes have custom templates you can use for certain pages that might have additional features or custom layouts. If so, you&#8217;ll see them in this dropdown menu.') . '</p>' .
-       '<p>' . __('<strong>Order</strong> - Pages are usually ordered alphabetically, but you can choose your own order by entering a number (1 for first, etc.) in this field.') . '</p>' .
-       '<p><strong>' . __('For more information:') . '</strong></p>' .
-       '<p>' . __('<a href="http://codex.wordpress.org/Pages_Add_New_Screen" target="_blank">Documentation on Adding New Pages</a>') . '</p>' .
-       '<p>' . __('<a href="http://codex.wordpress.org/Pages_Screen#Editing_Individual_Pages" target="_blank">Documentation on Editing Pages</a>') . '</p>' .
-       '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
+       $about_pages = '<p>' . __('Pages are similar to Posts in that they have a title, body text, and associated metadata, but they are different in that they are not part of the chronological blog stream, kind of like permanent posts. Pages are not categorized or tagged, but can have a hierarchy. You can nest Pages under other Pages by making one the &#8220;Parent&#8221; of the other, creating a group of Pages.') . '</p>' .
+               '<p>' . __('Creating a Page is very similar to creating a Post, and the screens can be customized in the same way using drag and drop, the Screen Options tab, and expanding/collapsing boxes as you choose. This screen also has the distraction-free writing space, available in both the Visual and HTML modes via the Fullscreen buttons. The Page editor mostly works the same as the Post editor, but there are some Page-specific features in the Page Attributes box:') . '</p>';
+
+       get_current_screen()->add_help_tab( array(
+               'id'      => 'about-pages',
+               'title'   => __('About Pages'),
+               'content' => $about_pages,
+       ) );
+
+       $page_attributes = '<p>' . __('<strong>Parent</strong> - You can arrange your pages in hierarchies. For example, you could have an &#8220;About&#8221; page that has &#8220;Life Story&#8221; and &#8220;My Dog&#8221; pages under it. There are no limits to how many levels you can nest pages.') . '</p>' .
+               '<p>' . __('<strong>Template</strong> - Some themes have custom templates you can use for certain pages that might have additional features or custom layouts. If so, you&#8217;ll see them in this dropdown menu.') . '</p>' .
+               '<p>' . __('<strong>Order</strong> - Pages are usually ordered alphabetically, but you can choose your own order by entering a number (1 for first, etc.) in this field.') . '</p>';
+
+       get_current_screen()->add_help_tab( array(
+               'id' => 'page-attributes',
+               'title' => __('Page Attributes'),
+               'content' => $page_attributes,
+       ) );
+
+       get_current_screen()->set_help_sidebar(
+                       '<p><strong>' . __('For more information:') . '</strong></p>' .
+                       '<p>' . __('<a href="http://codex.wordpress.org/Pages_Add_New_Screen" target="_blank">Documentation on Adding New Pages</a>') . '</p>' .
+                       '<p>' . __('<a href="http://codex.wordpress.org/Pages_Screen#Editing_Individual_Pages" target="_blank">Documentation on Editing Pages</a>') . '</p>' .
+                       '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        );
 }
 
 require_once('./admin-header.php');
 ?>
 
        );
 }
 
 require_once('./admin-header.php');
 ?>
 
-<div class="wrap">
+<div class="wrap columns-<?php echo (int) $screen_layout_columns ? (int) $screen_layout_columns : 'auto'; ?>">
 <?php screen_icon(); ?>
 <h2><?php echo esc_html( $title ); ?><?php if ( isset( $post_new_file ) ) : ?> <a href="<?php echo esc_url( $post_new_file ) ?>" class="add-new-h2"><?php echo esc_html($post_type_object->labels->add_new); ?></a><?php endif; ?></h2>
 <?php if ( $notice ) : ?>
 <?php screen_icon(); ?>
 <h2><?php echo esc_html( $title ); ?><?php if ( isset( $post_new_file ) ) : ?> <a href="<?php echo esc_url( $post_new_file ) ?>" class="add-new-h2"><?php echo esc_html($post_type_object->labels->add_new); ?></a><?php endif; ?></h2>
 <?php if ( $notice ) : ?>
@@ -211,7 +258,10 @@ require_once('./admin-header.php');
 <input type="hidden" id="post_type" name="post_type" value="<?php echo esc_attr( $post_type ) ?>" />
 <input type="hidden" id="original_post_status" name="original_post_status" value="<?php echo esc_attr( $post->post_status) ?>" />
 <input type="hidden" id="referredby" name="referredby" value="<?php echo esc_url(stripslashes(wp_get_referer())); ?>" />
 <input type="hidden" id="post_type" name="post_type" value="<?php echo esc_attr( $post_type ) ?>" />
 <input type="hidden" id="original_post_status" name="original_post_status" value="<?php echo esc_attr( $post->post_status) ?>" />
 <input type="hidden" id="referredby" name="referredby" value="<?php echo esc_url(stripslashes(wp_get_referer())); ?>" />
+<?php if ( ! empty( $active_post_lock ) ) { ?>
+<input type="hidden" id="active_post_lock" value="<?php echo esc_attr( implode( ':', $active_post_lock ) ); ?>" />
 <?php
 <?php
+}
 if ( 'draft' != $post->post_status )
        wp_original_referer_field(true, 'previous');
 
 if ( 'draft' != $post->post_status )
        wp_original_referer_field(true, 'previous');
 
@@ -222,12 +272,13 @@ wp_nonce_field( 'meta-box-order', 'meta-box-order-nonce', false );
 wp_nonce_field( 'closedpostboxes', 'closedpostboxesnonce', false );
 ?>
 
 wp_nonce_field( 'closedpostboxes', 'closedpostboxesnonce', false );
 ?>
 
-<div id="poststuff" class="metabox-holder<?php echo 2 == $screen_layout_columns ? ' has-right-sidebar' : ''; ?>">
+<div id="poststuff" class="metabox-holder<?php echo 1 != $screen_layout_columns ? ' has-right-sidebar' : ''; ?>">
 <div id="side-info-column" class="inner-sidebar">
 <div id="side-info-column" class="inner-sidebar">
-
 <?php
 <?php
-('page' == $post_type) ? do_action('submitpage_box') : do_action('submitpost_box');
-$side_meta_boxes = do_meta_boxes($post_type, 'side', $post);
+if ( 1 != $screen_layout_columns ) {
+       ('page' == $post_type) ? do_action('submitpage_box') : do_action('submitpost_box');
+       $side_meta_boxes = do_meta_boxes($post_type, 'side', $post);
+}
 ?>
 </div>
 
 ?>
 </div>
 
@@ -264,9 +315,9 @@ wp_nonce_field( 'samplepermalink', 'samplepermalinknonce', false );
 <?php } ?>
 
 <?php if ( post_type_supports($post_type, 'editor') ) { ?>
 <?php } ?>
 
 <?php if ( post_type_supports($post_type, 'editor') ) { ?>
-<div id="<?php echo user_can_richedit() ? 'postdivrich' : 'postdiv'; ?>" class="postarea">
+<div id="postdivrich" class="postarea">
 
 
-<?php the_editor($post->post_content); ?>
+<?php wp_editor($post->post_content, 'content', array('dfw' => true, 'tabindex' => 1) ); ?>
 
 <table id="post-status-info" cellspacing="0"><tbody><tr>
        <td id="wp-word-count"><?php printf( __( 'Word count: %s' ), '<span class="word-count">0</span>' ); ?></td>
 
 <table id="post-status-info" cellspacing="0"><tbody><tr>
        <td id="wp-word-count"><?php printf( __( 'Word count: %s' ), '<span class="word-count">0</span>' ); ?></td>
@@ -291,11 +342,16 @@ wp_nonce_field( 'samplepermalink', 'samplepermalinknonce', false );
 <?php
 }
 
 <?php
 }
 
-do_meta_boxes($post_type, 'normal', $post);
+if ( 1 == $screen_layout_columns ) {
+       ('page' == $post_type) ? do_action('submitpage_box') : do_action('submitpost_box');
+       $side_meta_boxes = do_meta_boxes($post_type, 'side', $post);
+}
+
+do_meta_boxes(null, 'normal', $post);
 
 ( 'page' == $post_type ) ? do_action('edit_page_form') : do_action('edit_form_advanced');
 
 
 ( 'page' == $post_type ) ? do_action('edit_page_form') : do_action('edit_form_advanced');
 
-do_meta_boxes($post_type, 'advanced', $post);
+do_meta_boxes(null, 'advanced', $post);
 
 do_action('dbx_post_sidebar'); ?>
 
 
 do_action('dbx_post_sidebar'); ?>
 
@@ -306,7 +362,10 @@ do_action('dbx_post_sidebar'); ?>
 </form>
 </div>
 
 </form>
 </div>
 
-<?php wp_comment_reply(); ?>
+<?php
+if ( post_type_supports( $post_type, 'comments' ) )
+       wp_comment_reply();
+?>
 
 <?php if ((isset($post->post_title) && '' == $post->post_title) || (isset($_GET['message']) && 2 > $_GET['message'])) : ?>
 <script type="text/javascript">
 
 <?php if ((isset($post->post_title) && '' == $post->post_title) || (isset($_GET['message']) && 2 > $_GET['message'])) : ?>
 <script type="text/javascript">
index 6767ffe4aed4fe485727b78787b6daf29c4716ca..37772e3ca7a6b64942ad4424f0c319f005d77dfb 100644 (file)
@@ -54,7 +54,7 @@ $comment->comment_author_email = esc_attr($comment->comment_author_email);
 
 <div class="misc-pub-section curtime misc-pub-section-last">
 <?php
 
 <div class="misc-pub-section curtime misc-pub-section-last">
 <?php
-// translators: Publish box date formt, see http://php.net/date
+// translators: Publish box date format, see http://php.net/date
 $datef = __( 'M j, Y @ G:i' );
 $stamp = __('Submitted on: <b>%1$s</b>');
 $date = date_i18n( $datef, strtotime( $comment->comment_date ) );
 $datef = __( 'M j, Y @ G:i' );
 $stamp = __('Submitted on: <b>%1$s</b>');
 $date = date_i18n( $datef, strtotime( $comment->comment_date ) );
@@ -71,7 +71,7 @@ $date = date_i18n( $datef, strtotime( $comment->comment_date ) );
 <?php echo "<a class='submitdelete deletion' href='" . wp_nonce_url("comment.php?action=" . ( !EMPTY_TRASH_DAYS ? 'deletecomment' : 'trashcomment' ) . "&amp;c=$comment->comment_ID&amp;_wp_original_http_referer=" . urlencode(wp_get_referer()), 'delete-comment_' . $comment->comment_ID) . "'>" . ( !EMPTY_TRASH_DAYS ? __('Delete Permanently') : __('Move to Trash') ) . "</a>\n"; ?>
 </div>
 <div id="publishing-action">
 <?php echo "<a class='submitdelete deletion' href='" . wp_nonce_url("comment.php?action=" . ( !EMPTY_TRASH_DAYS ? 'deletecomment' : 'trashcomment' ) . "&amp;c=$comment->comment_ID&amp;_wp_original_http_referer=" . urlencode(wp_get_referer()), 'delete-comment_' . $comment->comment_ID) . "'>" . ( !EMPTY_TRASH_DAYS ? __('Delete Permanently') : __('Move to Trash') ) . "</a>\n"; ?>
 </div>
 <div id="publishing-action">
-<?php submit_button( __( 'Update Comment' ), 'primary', 'save', false, array( 'tabindex' => '4' ) ); ?>
+<?php submit_button( __( 'Update' ), 'primary', 'save', false, array( 'tabindex' => '4' ) ); ?>
 </div>
 <div class="clear"></div>
 </div>
 </div>
 <div class="clear"></div>
 </div>
@@ -120,15 +120,17 @@ $date = date_i18n( $datef, strtotime( $comment->comment_date ) );
 </div>
 
 <div id="postdiv" class="postarea">
 </div>
 
 <div id="postdiv" class="postarea">
-<?php the_editor($comment->comment_content, 'content', 'newcomment_author_url', false, 4, false); ?>
-<?php wp_nonce_field( 'closedpostboxes', 'closedpostboxesnonce', false ); ?>
+<?php
+       $quicktags_settings = array( 'buttons' => 'strong,em,link,block,del,ins,img,ul,ol,li,code,spell,close' );
+       wp_editor( $comment->comment_content, 'content', array( 'media_buttons' => false, 'tinymce' => false, 'quicktags' => $quicktags_settings ) );
+       wp_nonce_field( 'closedpostboxes', 'closedpostboxesnonce', false ); ?>
 </div>
 
 <?php
 do_action('add_meta_boxes', 'comment', $comment);
 do_action('add_meta_boxes_comment', $comment);
 
 </div>
 
 <?php
 do_action('add_meta_boxes', 'comment', $comment);
 do_action('add_meta_boxes_comment', $comment);
 
-do_meta_boxes('comment', 'normal', $comment);
+do_meta_boxes(null, 'normal', $comment);
 ?>
 <input type="hidden" name="c" value="<?php echo esc_attr($comment->comment_ID) ?>" />
 <input type="hidden" name="p" value="<?php echo esc_attr($comment->comment_post_ID) ?>" />
 ?>
 <input type="hidden" name="c" value="<?php echo esc_attr($comment->comment_ID) ?>" />
 <input type="hidden" name="p" value="<?php echo esc_attr($comment->comment_post_ID) ?>" />
index 2835787c4f1e1b34e7629e880453868e5e1c8238..a6051ce142c2bcb6298e64dad0b6654e5ed51255 100644 (file)
@@ -24,11 +24,11 @@ if ( ! empty($link_id) ) {
 
 require_once('./includes/meta-boxes.php');
 
 
 require_once('./includes/meta-boxes.php');
 
-add_meta_box('linksubmitdiv', __('Save'), 'link_submit_meta_box', 'link', 'side', 'core');
-add_meta_box('linkcategorydiv', __('Categories'), 'link_categories_meta_box', 'link', 'normal', 'core');
-add_meta_box('linktargetdiv', __('Target'), 'link_target_meta_box', 'link', 'normal', 'core');
-add_meta_box('linkxfndiv', __('Link Relationship (XFN)'), 'link_xfn_meta_box', 'link', 'normal', 'core');
-add_meta_box('linkadvanceddiv', __('Advanced'), 'link_advanced_meta_box', 'link', 'normal', 'core');
+add_meta_box('linksubmitdiv', __('Save'), 'link_submit_meta_box', null, 'side', 'core');
+add_meta_box('linkcategorydiv', __('Categories'), 'link_categories_meta_box', null, 'normal', 'core');
+add_meta_box('linktargetdiv', __('Target'), 'link_target_meta_box', null, 'normal', 'core');
+add_meta_box('linkxfndiv', __('Link Relationship (XFN)'), 'link_xfn_meta_box', null, 'normal', 'core');
+add_meta_box('linkadvanceddiv', __('Advanced'), 'link_advanced_meta_box', null, 'normal', 'core');
 
 do_action('add_meta_boxes', 'link', $link);
 do_action('add_meta_boxes_link', $link);
 
 do_action('add_meta_boxes', 'link', $link);
 do_action('add_meta_boxes_link', $link);
@@ -37,21 +37,27 @@ do_action('do_meta_boxes', 'link', 'normal', $link);
 do_action('do_meta_boxes', 'link', 'advanced', $link);
 do_action('do_meta_boxes', 'link', 'side', $link);
 
 do_action('do_meta_boxes', 'link', 'advanced', $link);
 do_action('do_meta_boxes', 'link', 'side', $link);
 
-add_screen_option('layout_columns', array('max' => 2) );
+add_screen_option('layout_columns', array('max' => 2, 'default' => 2) );
 
 
-add_contextual_help($current_screen,
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' =>
        '<p>' . __( 'You can add or edit links on this screen by entering information in each of the boxes. Only the link&#8217;s web address and name (the text you want to display on your site as the link) are required fields.' ) . '</p>' .
        '<p>' . __( 'The boxes for link name, web address, and description have fixed positions, while the others may be repositioned using drag and drop. You can also hide boxes you don&#8217;t use in the Screen Options tab, or minimize boxes by clicking on the title bar of the box.' ) . '</p>' .
        '<p>' . __( 'You can add or edit links on this screen by entering information in each of the boxes. Only the link&#8217;s web address and name (the text you want to display on your site as the link) are required fields.' ) . '</p>' .
        '<p>' . __( 'The boxes for link name, web address, and description have fixed positions, while the others may be repositioned using drag and drop. You can also hide boxes you don&#8217;t use in the Screen Options tab, or minimize boxes by clicking on the title bar of the box.' ) . '</p>' .
-       '<p>' . __( 'XFN stands for <a href="http://gmpg.org/xfn/" target="_blank">XHTML Friends Network</a>, which is optional. WordPress allows the generation of XFN attributes to show how you are related to the authors/owners of the site to which you are linking.' ) . '</p>' .
+       '<p>' . __( 'XFN stands for <a href="http://gmpg.org/xfn/" target="_blank">XHTML Friends Network</a>, which is optional. WordPress allows the generation of XFN attributes to show how you are related to the authors/owners of the site to which you are linking.' ) . '</p>'
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __( 'For more information:' ) . '</strong></p>' .
        '<p>' . __( '<a href="http://codex.wordpress.org/Links_Add_New_Screen" target="_blank">Documentation on Creating Links</a>' ) . '</p>' .
        '<p>' . __( '<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>' ) . '</p>'
 );
 
 require_once ('admin-header.php');
        '<p><strong>' . __( 'For more information:' ) . '</strong></p>' .
        '<p>' . __( '<a href="http://codex.wordpress.org/Links_Add_New_Screen" target="_blank">Documentation on Creating Links</a>' ) . '</p>' .
        '<p>' . __( '<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>' ) . '</p>'
 );
 
 require_once ('admin-header.php');
-
 ?>
 ?>
-<div class="wrap">
+
+<div class="wrap columns-<?php echo (int) $screen_layout_columns ? (int) $screen_layout_columns : 'auto'; ?>">
 <?php screen_icon(); ?>
 <h2><?php echo esc_html( $title ); ?>  <a href="link-add.php" class="add-new-h2"><?php echo esc_html_x('Add New', 'link'); ?></a></h2>
 
 <?php screen_icon(); ?>
 <h2><?php echo esc_html( $title ); ?>  <a href="link-add.php" class="add-new-h2"><?php echo esc_html_x('Add New', 'link'); ?></a></h2>
 
@@ -69,14 +75,13 @@ wp_nonce_field( $nonce_action );
 wp_nonce_field( 'closedpostboxes', 'closedpostboxesnonce', false );
 wp_nonce_field( 'meta-box-order', 'meta-box-order-nonce', false ); ?>
 
 wp_nonce_field( 'closedpostboxes', 'closedpostboxesnonce', false );
 wp_nonce_field( 'meta-box-order', 'meta-box-order-nonce', false ); ?>
 
-<div id="poststuff" class="metabox-holder<?php echo 2 == $screen_layout_columns ? ' has-right-sidebar' : ''; ?>">
-
+<div id="poststuff" class="metabox-holder<?php echo 1 != $screen_layout_columns ? ' has-right-sidebar' : ''; ?>">
 <div id="side-info-column" class="inner-sidebar">
 <?php
 <div id="side-info-column" class="inner-sidebar">
 <?php
-
-do_action('submitlink_box');
-$side_meta_boxes = do_meta_boxes( 'link', 'side', $link );
-
+if ( 1 != $screen_layout_columns ) {
+       do_action('submitlink_box');
+       $side_meta_boxes = do_meta_boxes( 'link', 'side', $link );
+}
 ?>
 </div>
 
 ?>
 </div>
 
@@ -108,9 +113,14 @@ $side_meta_boxes = do_meta_boxes( 'link', 'side', $link );
 
 <?php
 
 
 <?php
 
-do_meta_boxes('link', 'normal', $link);
+if ( 1 == $screen_layout_columns ) {
+       do_action('submitlink_box');
+       $side_meta_boxes = do_meta_boxes( 'link', 'side', $link );
+}
+
+do_meta_boxes(null, 'normal', $link);
 
 
-do_meta_boxes('link', 'advanced', $link);
+do_meta_boxes(null, 'advanced', $link);
 
 if ( $link_id ) : ?>
 <input type="hidden" name="action" value="save" />
 
 if ( $link_id ) : ?>
 <input type="hidden" name="action" value="save" />
index 12867a280c3942f066f4c3aedd105fae038ae9f2..fdb64c2479fb230760bd74c11c42ef13578d2206 100644 (file)
@@ -8,8 +8,16 @@
 
 /** WordPress Administration Bootstrap */
 require_once('./admin.php');
 
 /** WordPress Administration Bootstrap */
 require_once('./admin.php');
+
+if ( ! $taxnow )
+       wp_die( __( 'Invalid taxonomy' ) );
+
 $tax = get_taxonomy( $taxnow );
 $tax = get_taxonomy( $taxnow );
-if ( !current_user_can( $tax->cap->manage_terms ) )
+
+if ( ! $tax )
+       wp_die( __( 'Invalid taxonomy' ) );
+
+if ( ! current_user_can( $tax->cap->manage_terms ) )
        wp_die( __( 'Cheatin&#8217; uh?' ) );
 
 $wp_list_table = _get_list_table('WP_Terms_List_Table');
        wp_die( __( 'Cheatin&#8217; uh?' ) );
 
 $wp_list_table = _get_list_table('WP_Terms_List_Table');
@@ -113,10 +121,12 @@ break;
 case 'edit':
        $title = $tax->labels->edit_item;
 
 case 'edit':
        $title = $tax->labels->edit_item;
 
-       require_once ( 'admin-header.php' );
        $tag_ID = (int) $_REQUEST['tag_ID'];
 
        $tag = get_term( $tag_ID, $taxonomy, OBJECT, 'edit' );
        $tag_ID = (int) $_REQUEST['tag_ID'];
 
        $tag = get_term( $tag_ID, $taxonomy, OBJECT, 'edit' );
+       if ( ! $tag )
+               wp_die( __( 'You attempted to edit an item that doesn&#8217;t exist. Perhaps it was deleted?' ) );
+       require_once ( 'admin-header.php' );
        include( './edit-tag-form.php' );
 
 break;
        include( './edit-tag-form.php' );
 
 break;
@@ -128,6 +138,10 @@ case 'editedtag':
        if ( !current_user_can( $tax->cap->edit_terms ) )
                wp_die( __( 'Cheatin&#8217; uh?' ) );
 
        if ( !current_user_can( $tax->cap->edit_terms ) )
                wp_die( __( 'Cheatin&#8217; uh?' ) );
 
+       $tag = get_term( $tag_ID, $taxonomy );
+       if ( ! $tag )
+               wp_die( __( 'You attempted to edit an item that doesn&#8217;t exist. Perhaps it was deleted?' ) );
+
        $ret = wp_update_term( $tag_ID, $taxonomy, $_POST );
 
        $location = 'edit-tags.php?taxonomy=' . $taxonomy;
        $ret = wp_update_term( $tag_ID, $taxonomy, $_POST );
 
        $location = 'edit-tags.php?taxonomy=' . $taxonomy;
@@ -176,49 +190,61 @@ if ( 'category' == $taxonomy || 'link_category' == $taxonomy || 'post_tag' == $t
        if ( 'category' == $taxonomy )
                $help = '<p>' . sprintf(__( 'You can use categories to define sections of your site and group related posts. The default category is &#8220;Uncategorized&#8221; until you change it in your <a href="%s">writing settings</a>.' ) , 'options-writing.php' ) . '</p>';
        elseif ( 'link_category' == $taxonomy )
        if ( 'category' == $taxonomy )
                $help = '<p>' . sprintf(__( 'You can use categories to define sections of your site and group related posts. The default category is &#8220;Uncategorized&#8221; until you change it in your <a href="%s">writing settings</a>.' ) , 'options-writing.php' ) . '</p>';
        elseif ( 'link_category' == $taxonomy )
-               $help = '<p>' . __( 'You can create groups of links by using link categories. Link category names must be unique and link categories are separate from the categories you use for posts.' ) . '</p>';
+               $help = '<p>' . __( 'You can create groups of links by using Link Categories. Link Category names must be unique and Link Categories are separate from the categories you use for posts.' ) . '</p>';
        else
        else
-               $help = '<p>' . __( 'You can assign keywords to your posts using Post Tags. Unlike categories, tags have no hierarchy, meaning there&#8217;s no relationship from one tag to another.' ) . '</p>';
+               $help = '<p>' . __( 'You can assign keywords to your posts using <strong>tags</strong>. Unlike categories, tags have no hierarchy, meaning there&#8217;s no relationship from one tag to another.' ) . '</p>';
 
        if ( 'link_category' == $taxonomy )
 
        if ( 'link_category' == $taxonomy )
-               $help .= '<p>' . __( 'You can delete link categories in the Bulk Action pulldown, but that action does not delete the links within the category. Instead, it moves them to the default link category.' ) . '</p>';
+               $help .= '<p>' . __( 'You can delete Link Categories in the Bulk Action pulldown, but that action does not delete the links within the category. Instead, it moves them to the default Link Category.' ) . '</p>';
        else
                $help .='<p>' . __( 'What&#8217;s the difference between categories and tags? Normally, tags are ad-hoc keywords that identify important information in your post (names, subjects, etc) that may or may not recur in other posts, while categories are pre-determined sections. If you think of your site like a book, the categories are like the Table of Contents and the tags are like the terms in the index.' ) . '</p>';
 
        else
                $help .='<p>' . __( 'What&#8217;s the difference between categories and tags? Normally, tags are ad-hoc keywords that identify important information in your post (names, subjects, etc) that may or may not recur in other posts, while categories are pre-determined sections. If you think of your site like a book, the categories are like the Table of Contents and the tags are like the terms in the index.' ) . '</p>';
 
-       if ( 'category' == $taxonomy )
-               $help .= '<p>' . __( 'When adding a new category on this screen, you&#8217;ll fill in the following fields:' ) . '</p>';
-       elseif ( 'post_tag' == $taxonomy )
-               $help .= '<p>' . __( 'When adding a new tag on this screen, you&#8217;ll fill in the following fields:' ) . '</p>';
+       get_current_screen()->add_help_tab( array(
+               'id'      => 'overview',
+               'title'   => __('Overview'),
+               'content' => $help,
+       ) );
 
 
-       if ( 'category' == $taxonomy || 'post_tag' == $taxonomy  )
+       if ( 'category' == $taxonomy || 'post_tag' == $taxonomy ) {
+               if ( 'category' == $taxonomy )
+                       $help = '<p>' . __( 'When adding a new category on this screen, you&#8217;ll fill in the following fields:' ) . '</p>';
+               else
+                       $help = '<p>' . __( 'When adding a new tag on this screen, you&#8217;ll fill in the following fields:' ) . '</p>';
 
                $help .= '<ul>' .
                '<li>' . __( '<strong>Name</strong> - The name is how it appears on your site.' ) . '</li>';
 
 
                $help .= '<ul>' .
                '<li>' . __( '<strong>Name</strong> - The name is how it appears on your site.' ) . '</li>';
 
-       if ( ! global_terms_enabled()  )
-       if ( 'category' == $taxonomy || 'post_tag' == $taxonomy  )
-               $help .= '<li>' . __( '<strong>Slug</strong> - The &#8220;slug&#8221; is the URL-friendly version of the name. It is usually all lowercase and contains only letters, numbers, and hyphens.' ) . '</li>';
+               if ( ! global_terms_enabled() )
+                       $help .= '<li>' . __( '<strong>Slug</strong> - The &#8220;slug&#8221; is the URL-friendly version of the name. It is usually all lowercase and contains only letters, numbers, and hyphens.' ) . '</li>';
 
 
-       if ( 'category' == $taxonomy )
-               $help .= '<li>' . __( '<strong>Parent</strong> - Categories, unlike tags, can have a hierarchy. You might have a Jazz category, and under that have children categories for Bebop and Big Band. Totally optional. To create a subcategory, just choose another category from the Parent dropdown.' ) . '</li>';
+               if ( 'category' == $taxonomy )
+                       $help .= '<li>' . __( '<strong>Parent</strong> - Categories, unlike tags, can have a hierarchy. You might have a Jazz category, and under that have children categories for Bebop and Big Band. Totally optional. To create a subcategory, just choose another category from the Parent dropdown.' ) . '</li>';
 
 
-       if ( 'category' == $taxonomy || 'post_tag' == $taxonomy  )
                $help .= '<li>' . __( '<strong>Description</strong> - The description is not prominent by default; however, some themes may display it.' ) . '</li>' .
                '</ul>' .
                $help .= '<li>' . __( '<strong>Description</strong> - The description is not prominent by default; however, some themes may display it.' ) . '</li>' .
                '</ul>' .
-               '<p>' . __( 'You can change the display of this screen using the Screen Options tab to set how many items are displayed per screen and to display/hide columns in the table.' ) . '</p>' .
-               '<p><strong>' . __( 'For more information:' ) . '</strong></p>';
+               '<p>' . __( 'You can change the display of this screen using the Screen Options tab to set how many items are displayed per screen and to display/hide columns in the table.' ) . '</p>';
+
+               get_current_screen()->add_help_tab( array(
+                       'id'      => 'adding-terms',
+                       'title'   => 'category' == $taxonomy ? __( 'Adding Categories' ) : __( 'Adding Tags' ),
+                       'content' => $help,
+               ) );
+       }
+
+       $help = '<p><strong>' . __( 'For more information:' ) . '</strong></p>';
 
        if ( 'category' == $taxonomy )
                $help .= '<p>' . __( '<a href="http://codex.wordpress.org/Posts_Categories_Screen" target="_blank">Documentation on Categories</a>' ) . '</p>';
        elseif ( 'link_category' == $taxonomy )
                $help .= '<p>' . __( '<a href="http://codex.wordpress.org/Links_Link_Categories_Screen" target="_blank">Documentation on Link Categories</a>' ) . '</p>';
        else
 
        if ( 'category' == $taxonomy )
                $help .= '<p>' . __( '<a href="http://codex.wordpress.org/Posts_Categories_Screen" target="_blank">Documentation on Categories</a>' ) . '</p>';
        elseif ( 'link_category' == $taxonomy )
                $help .= '<p>' . __( '<a href="http://codex.wordpress.org/Links_Link_Categories_Screen" target="_blank">Documentation on Link Categories</a>' ) . '</p>';
        else
-               $help .= '<p>' . __( '<a href="http://codex.wordpress.org/Posts_Post_Tags_Screen" target="_blank">Documentation on Post Tags</a>' ) . '</p>';
+               $help .= '<p>' . __( '<a href="http://codex.wordpress.org/Posts_Tags_Screen" target="_blank">Documentation on Tags</a>' ) . '</p>';
 
        $help .= '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>';
 
 
        $help .= '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>';
 
-       add_contextual_help($current_screen, $help);
-       unset($help);
+       get_current_screen()->set_help_sidebar( $help );
+
+       unset( $help );
 }
 
 require_once ('admin-header.php');
 }
 
 require_once ('admin-header.php');
index 933219ea6af93c09e375b971bdcdf6007caf092d..b3b6b2e859bd538c0e6195adc0dd1bd42826a170 100644 (file)
@@ -9,19 +9,17 @@
 /** WordPress Administration Bootstrap */
 require_once( './admin.php' );
 
 /** WordPress Administration Bootstrap */
 require_once( './admin.php' );
 
-if ( !isset($_GET['post_type']) )
-       $post_type = 'post';
-elseif ( in_array( $_GET['post_type'], get_post_types( array('show_ui' => true ) ) ) )
-       $post_type = $_GET['post_type'];
-else
-       wp_die( __('Invalid post type') );
-
-$_GET['post_type'] = $post_type;
+if ( ! $typenow )
+       wp_die( __( 'Invalid post type' ) );
 
 
+$post_type = $typenow;
 $post_type_object = get_post_type_object( $post_type );
 
 $post_type_object = get_post_type_object( $post_type );
 
-if ( !current_user_can($post_type_object->cap->edit_posts) )
-       wp_die(__('Cheatin&#8217; uh?'));
+if ( ! $post_type_object )
+       wp_die( __( 'Invalid post type' ) );
+
+if ( ! current_user_can( $post_type_object->cap->edit_posts ) )
+       wp_die( __( 'Cheatin&#8217; uh?' ) );
 
 $wp_list_table = _get_list_table('WP_Posts_List_Table');
 $pagenum = $wp_list_table->get_pagenum();
 
 $wp_list_table = _get_list_table('WP_Posts_List_Table');
 $pagenum = $wp_list_table->get_pagenum();
@@ -51,6 +49,8 @@ if ( $doaction ) {
        check_admin_referer('bulk-posts');
 
        $sendback = remove_query_arg( array('trashed', 'untrashed', 'deleted', 'ids'), wp_get_referer() );
        check_admin_referer('bulk-posts');
 
        $sendback = remove_query_arg( array('trashed', 'untrashed', 'deleted', 'ids'), wp_get_referer() );
+       if ( ! $sendback )
+               $sendback = admin_url( $parent_file );
        $sendback = add_query_arg( 'paged', $pagenum, $sendback );
        if ( strpos($sendback, 'post.php') !== false )
                $sendback = admin_url($post_new_file);
        $sendback = add_query_arg( 'paged', $pagenum, $sendback );
        if ( strpos($sendback, 'post.php') !== false )
                $sendback = admin_url($post_new_file);
@@ -149,31 +149,66 @@ wp_enqueue_script('inline-edit-post');
 $title = $post_type_object->labels->name;
 
 if ( 'post' == $post_type ) {
 $title = $post_type_object->labels->name;
 
 if ( 'post' == $post_type ) {
-       add_contextual_help($current_screen,
-       '<p>' . __('You can customize the display of this screen in a number of ways:') . '</p>' .
-       '<ul>' .
-       '<li>' . __('You can hide/display columns based on your needs and decide how many posts to list per screen using the Screen Options tab.') . '</li>' .
-       '<li>' . __('You can filter the list of posts by post status using the text links in the upper left to show All, Published, Draft, or Trashed posts. The default view is to show all posts.') . '</li>' .
-       '<li>' . __('You can view posts in a simple title list or with an excerpt. Choose the view you prefer by clicking on the icons at the top of the list on the right.') . '</li>' .
-       '<li>' . __('You can refine the list to show only posts in a specific category or from a specific month by using the dropdown menus above the posts list. Click the Filter button after making your selection. You also can refine the list by clicking on the post author, category or tag in the posts list.') . '</li>' .
-       '</ul>' .
-       '<p>' . __('Hovering over a row in the posts list will display action links that allow you to manage your post. You can perform the following actions:') . '</p>' .
-       '<ul>' .
-       '<li>' . __('Edit takes you to the editing screen for that post. You can also reach that screen by clicking on the post title.') . '</li>' .
-       '<li>' . __('Quick Edit provides inline access to the metadata of your post, allowing you to update post details without leaving this screen.') . '</li>' .
-       '<li>' . __('Trash removes your post from this list and places it in the trash, from which you can permanently delete it.') . '</li>' .
-       '<li>' . __('Preview will show you what your draft post will look like if you publish it. View will take you to your live site to view the post. Which link is available depends on your post&#8217;s status.') . '</li>' .
-       '</ul>' .
-       '<p>' . __('You can also edit multiple posts at once. Select the posts you want to edit using the checkboxes, select Edit from the Bulk Actions menu and click Apply. You will be able to change the metadata (categories, author, etc.) for all selected posts at once. To remove a post from the grouping, just click the x next to its name in the Bulk Edit area that appears.') . '</p>' .
+       get_current_screen()->add_help_tab( array(
+       'id'            => 'overview',
+       'title'         => __('Overview'),
+       'content'       =>
+               '<p>' . __('This screen provides access to all of your posts. You can customize the display of this screen to suit your workflow.') . '</p>'
+       ) );
+       get_current_screen()->add_help_tab( array(
+       'id'            => 'screen-content',
+       'title'         => __('Screen Content'),
+       'content'       =>
+               '<p>' . __('You can customize the display of this screen&#8217;s contents in a number of ways:') . '</p>' .
+               '<ul>' .
+                       '<li>' . __('You can hide/display columns based on your needs and decide how many posts to list per screen using the Screen Options tab.') . '</li>' .
+                       '<li>' . __('You can filter the list of posts by post status using the text links in the upper left to show All, Published, Draft, or Trashed posts. The default view is to show all posts.') . '</li>' .
+                       '<li>' . __('You can view posts in a simple title list or with an excerpt. Choose the view you prefer by clicking on the icons at the top of the list on the right.') . '</li>' .
+                       '<li>' . __('You can refine the list to show only posts in a specific category or from a specific month by using the dropdown menus above the posts list. Click the Filter button after making your selection. You also can refine the list by clicking on the post author, category or tag in the posts list.') . '</li>' .
+               '</ul>'
+       ) );
+       get_current_screen()->add_help_tab( array(
+       'id'            => 'action-links',
+       'title'         => __('Available Actions'),
+       'content'       =>
+               '<p>' . __('Hovering over a row in the posts list will display action links that allow you to manage your post. You can perform the following actions:') . '</p>' .
+               '<ul>' .
+                       '<li>' . __('<strong>Edit</strong> takes you to the editing screen for that post. You can also reach that screen by clicking on the post title.') . '</li>' .
+                       '<li>' . __('<strong>Quick Edit</strong> provides inline access to the metadata of your post, allowing you to update post details without leaving this screen.') . '</li>' .
+                       '<li>' . __('<strong>Trash</strong> removes your post from this list and places it in the trash, from which you can permanently delete it.') . '</li>' .
+                       '<li>' . __('<strong>Preview</strong> will show you what your draft post will look like if you publish it. View will take you to your live site to view the post. Which link is available depends on your post&#8217;s status.') . '</li>' .
+               '</ul>'
+       ) );
+       get_current_screen()->add_help_tab( array(
+       'id'            => 'bulk-actions',
+       'title'         => __('Bulk Actions'),
+       'content'       =>
+               '<p>' . __('You can also edit or move multiple posts to the trash at once. Select the posts you want to act on using the checkboxes, then select the action you want to take from the Bulk Actions menu and click Apply.') . '</p>' .
+                               '<p>' . __('When using Bulk Edit, you can change the metadata (categories, author, etc.) for all selected posts at once. To remove a post from the grouping, just click the x next to its name in the Bulk Edit area that appears.') . '</p>'
+       ) );
+
+       get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Posts_Screen" target="_blank">Documentation on Managing Posts</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        );
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Posts_Screen" target="_blank">Documentation on Managing Posts</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        );
+
 } elseif ( 'page' == $post_type ) {
 } elseif ( 'page' == $post_type ) {
-       add_contextual_help($current_screen,
-       '<p>' . __('Pages are similar to Posts in that they have a title, body text, and associated metadata, but they are different in that they are not part of the chronological blog stream, kind of like permanent posts. Pages are not categorized or tagged, but can have a hierarchy. You can nest Pages under other Pages by making one the &#8220;Parent&#8221; of the other, creating a group of Pages.') . '</p>' .
-       '<p>' . __('Managing Pages is very similar to managing Posts, and the screens can be customized in the same way.') . '</p>' .
-       '<p>' . __('You can also perform the same types of actions, including narrowing the list by using the filters, acting on a Page using the action links that appear when you hover over a row, or using the Bulk Actions menu to edit the metadata for multiple Pages at once.') . '</p>' .
+       get_current_screen()->add_help_tab( array(
+       'id'            => 'overview',
+       'title'         => __('Overview'),
+       'content'       =>
+               '<p>' . __('Pages are similar to posts in that they have a title, body text, and associated metadata, but they are different in that they are not part of the chronological blog stream, kind of like permanent posts. Pages are not categorized or tagged, but can have a hierarchy. You can nest pages under other pages by making one the &#8220;Parent&#8221; of the other, creating a group of pages.') . '</p>'
+       ) );
+       get_current_screen()->add_help_tab( array(
+       'id'            => 'managing-pages',
+       'title'         => __('Managing Pages'),
+       'content'       =>
+               '<p>' . __('Managing pages is very similar to managing posts, and the screens can be customized in the same way.') . '</p>' .
+               '<p>' . __('You can also perform the same types of actions, including narrowing the list by using the filters, acting on a page using the action links that appear when you hover over a row, or using the Bulk Actions menu to edit the metadata for multiple pages at once.') . '</p>'
+       ) );
+
+       get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Pages_Screen" target="_blank">Documentation on Managing Pages</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Pages_Screen" target="_blank">Documentation on Managing Pages</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
@@ -191,16 +226,12 @@ if ( isset($_REQUEST['s']) && $_REQUEST['s'] )
        printf( '<span class="subtitle">' . __('Search results for &#8220;%s&#8221;') . '</span>', get_search_query() ); ?>
 </h2>
 
        printf( '<span class="subtitle">' . __('Search results for &#8220;%s&#8221;') . '</span>', get_search_query() ); ?>
 </h2>
 
-<?php
-if ( isset($_REQUEST['posted']) && $_REQUEST['posted'] ) : $_REQUEST['posted'] = (int) $_REQUEST['posted']; ?>
-<div id="message" class="updated"><p><strong><?php _e('This has been saved.'); ?></strong> <a href="<?php echo get_permalink( $_REQUEST['posted'] ); ?>"><?php _e('View Post'); ?></a> | <a href="<?php echo get_edit_post_link( $_REQUEST['posted'] ); ?>"><?php _e('Edit Post'); ?></a></p></div>
-<?php $_SERVER['REQUEST_URI'] = remove_query_arg(array('posted'), $_SERVER['REQUEST_URI']);
-endif; ?>
-
-<?php if ( isset($_REQUEST['locked']) || isset($_REQUEST['skipped']) || isset($_REQUEST['updated']) || isset($_REQUEST['deleted']) || isset($_REQUEST['trashed']) || isset($_REQUEST['untrashed']) ) { ?>
+<?php if ( isset($_REQUEST['locked']) || isset($_REQUEST['skipped']) || isset($_REQUEST['updated']) || isset($_REQUEST['deleted']) || isset($_REQUEST['trashed']) || isset($_REQUEST['untrashed']) ) {
+       $messages = array();
+?>
 <div id="message" class="updated"><p>
 <?php if ( isset($_REQUEST['updated']) && (int) $_REQUEST['updated'] ) {
 <div id="message" class="updated"><p>
 <?php if ( isset($_REQUEST['updated']) && (int) $_REQUEST['updated'] ) {
-       printf( _n( '%s post updated.', '%s posts updated.', $_REQUEST['updated'] ), number_format_i18n( $_REQUEST['updated'] ) );
+       $messages[] = sprintf( _n( '%s post updated.', '%s posts updated.', $_REQUEST['updated'] ), number_format_i18n( $_REQUEST['updated'] ) );
        unset($_REQUEST['updated']);
 }
 
        unset($_REQUEST['updated']);
 }
 
@@ -208,27 +239,31 @@ if ( isset($_REQUEST['skipped']) && (int) $_REQUEST['skipped'] )
        unset($_REQUEST['skipped']);
 
 if ( isset($_REQUEST['locked']) && (int) $_REQUEST['locked'] ) {
        unset($_REQUEST['skipped']);
 
 if ( isset($_REQUEST['locked']) && (int) $_REQUEST['locked'] ) {
-       printf( _n( '%s item not updated, somebody is editing it.', '%s items not updated, somebody is editing them.', $_REQUEST['locked'] ), number_format_i18n( $_REQUEST['locked'] ) );
+       $messages[] = sprintf( _n( '%s item not updated, somebody is editing it.', '%s items not updated, somebody is editing them.', $_REQUEST['locked'] ), number_format_i18n( $_REQUEST['locked'] ) );
        unset($_REQUEST['locked']);
 }
 
 if ( isset($_REQUEST['deleted']) && (int) $_REQUEST['deleted'] ) {
        unset($_REQUEST['locked']);
 }
 
 if ( isset($_REQUEST['deleted']) && (int) $_REQUEST['deleted'] ) {
-       printf( _n( 'Item permanently deleted.', '%s items permanently deleted.', $_REQUEST['deleted'] ), number_format_i18n( $_REQUEST['deleted'] ) );
+       $messages[] = sprintf( _n( 'Item permanently deleted.', '%s items permanently deleted.', $_REQUEST['deleted'] ), number_format_i18n( $_REQUEST['deleted'] ) );
        unset($_REQUEST['deleted']);
 }
 
 if ( isset($_REQUEST['trashed']) && (int) $_REQUEST['trashed'] ) {
        unset($_REQUEST['deleted']);
 }
 
 if ( isset($_REQUEST['trashed']) && (int) $_REQUEST['trashed'] ) {
-       printf( _n( 'Item moved to the Trash.', '%s items moved to the Trash.', $_REQUEST['trashed'] ), number_format_i18n( $_REQUEST['trashed'] ) );
+       $messages[] = sprintf( _n( 'Item moved to the Trash.', '%s items moved to the Trash.', $_REQUEST['trashed'] ), number_format_i18n( $_REQUEST['trashed'] ) );
        $ids = isset($_REQUEST['ids']) ? $_REQUEST['ids'] : 0;
        $ids = isset($_REQUEST['ids']) ? $_REQUEST['ids'] : 0;
-       echo ' <a href="' . esc_url( wp_nonce_url( "edit.php?post_type=$post_type&doaction=undo&action=untrash&ids=$ids", "bulk-posts" ) ) . '">' . __('Undo') . '</a><br />';
+       $messages[] = '<a href="' . esc_url( wp_nonce_url( "edit.php?post_type=$post_type&doaction=undo&action=untrash&ids=$ids", "bulk-posts" ) ) . '">' . __('Undo') . '</a>';
        unset($_REQUEST['trashed']);
 }
 
 if ( isset($_REQUEST['untrashed']) && (int) $_REQUEST['untrashed'] ) {
        unset($_REQUEST['trashed']);
 }
 
 if ( isset($_REQUEST['untrashed']) && (int) $_REQUEST['untrashed'] ) {
-       printf( _n( 'Item restored from the Trash.', '%s items restored from the Trash.', $_REQUEST['untrashed'] ), number_format_i18n( $_REQUEST['untrashed'] ) );
+       $messages[] = sprintf( _n( 'Item restored from the Trash.', '%s items restored from the Trash.', $_REQUEST['untrashed'] ), number_format_i18n( $_REQUEST['untrashed'] ) );
        unset($_REQUEST['undeleted']);
 }
 
        unset($_REQUEST['undeleted']);
 }
 
+if ( $messages )
+       echo join( ' ', $messages );
+unset( $messages );
+
 $_SERVER['REQUEST_URI'] = remove_query_arg( array('locked', 'skipped', 'updated', 'deleted', 'trashed', 'untrashed'), $_SERVER['REQUEST_URI'] );
 ?>
 </p></div>
 $_SERVER['REQUEST_URI'] = remove_query_arg( array('locked', 'skipped', 'updated', 'deleted', 'trashed', 'untrashed'), $_SERVER['REQUEST_URI'] );
 ?>
 </p></div>
index 024ccf6cf237fdedb6df62dc82bc3a64d6918379..700655246b1c1e5ffa5558da6975f96da90dc903 100644 (file)
@@ -38,9 +38,14 @@ function add_js() {
 }
 add_action( 'admin_head', 'add_js' );
 
 }
 add_action( 'admin_head', 'add_js' );
 
-add_contextual_help( $current_screen,
-       '<p>' . __('You can export a file of your site&#8217;s content in order to import it into another installation or platform. The export file will be an XML file format called WXR. Posts, pages, comments, custom fields, categories, and tags can be included. You can choose for the WXR file to include only certain posts or pages by setting the dropdown filters to  limit the export by category, author, date range by month, or publishing status.') . '</p>' .
-       '<p>' . __('Once generated, your WXR file can be imported by another WordPress site or by another blogging platform able to access this format.') . '</p>' .
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' => '<p>' . __('You can export a file of your site&#8217;s content in order to import it into another installation or platform. The export file will be an XML file format called WXR. Posts, pages, comments, custom fields, categories, and tags can be included. You can choose for the WXR file to include only certain posts or pages by setting the dropdown filters to  limit the export by category, author, date range by month, or publishing status.') . '</p>' .
+               '<p>' . __('Once generated, your WXR file can be imported by another WordPress site or by another blogging platform able to access this format.') . '</p>',
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Tools_Export_Screen" target="_blank">Documentation on Export</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Tools_Export_Screen" target="_blank">Documentation on Export</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
@@ -120,7 +125,7 @@ function export_date_options() {
 
 <p><?php _e('When you click the button below WordPress will create an XML file for you to save to your computer.'); ?></p>
 <p><?php _e('This format, which we call WordPress eXtended RSS or WXR, will contain your posts, pages, comments, custom fields, categories, and tags.'); ?></p>
 
 <p><?php _e('When you click the button below WordPress will create an XML file for you to save to your computer.'); ?></p>
 <p><?php _e('This format, which we call WordPress eXtended RSS or WXR, will contain your posts, pages, comments, custom fields, categories, and tags.'); ?></p>
-<p><?php _e('Once you&#8217;ve saved the download file, you can use the Import function in another WordPress installation to import this site.'); ?></p>
+<p><?php _e('Once you&#8217;ve saved the download file, you can use the Import function in another WordPress installation to import the content from this site.'); ?></p>
 
 <h3><?php _e( 'Choose what to export' ); ?></h3>
 <form action="" method="get" id="export-filters">
 
 <h3><?php _e( 'Choose what to export' ); ?></h3>
 <form action="" method="get" id="export-filters">
index cf7309a27369812c486b99c24ace4472451d0bbd..fa7d4e508851354b51ce0ebe22ac4aadfb621fc6 100644 (file)
 require_once( './admin.php' );
 
 $title = __( 'Freedoms' );
 require_once( './admin.php' );
 
 $title = __( 'Freedoms' );
-$parent_file = 'index.php';
+
+list( $display_version ) = explode( '-', $wp_version );
 
 include( './admin-header.php' );
 ?>
 
 include( './admin-header.php' );
 ?>
-<div class="wrap">
-<?php screen_icon(); ?>
-<h2><?php _e( 'Freedoms' ); ?></h2>
+<div class="wrap about-wrap">
+
+<h1><?php printf( __( 'Welcome to WordPress %s' ), $display_version ); ?></h1>
+
+<div class="about-text"><?php printf( __( 'Thank you for updating to the latest version! Using WordPress %s will improve your looks, personality, and web publishing experience. Okay, just the last one, but still. :)' ), $display_version ); ?></div>
+
+<div class="wp-badge"><?php printf( __( 'Version %s' ), $display_version ); ?></div>
+
+<h2 class="nav-tab-wrapper">
+       <a href="about.php" class="nav-tab">
+               <?php _e( 'What&#8217;s New' ); ?>
+       </a><a href="credits.php" class="nav-tab">
+               <?php _e( 'Credits' ); ?>
+       </a><a href="freedoms.php" class="nav-tab nav-tab-active">
+               <?php _e( 'Freedoms' ); ?>
+       </a>
+</h2>
 
 
-<p><?php printf( __( 'WordPress is Free and open source software, built by a distributed community of mostly volunteer developers from around the world. WordPress comes with some awesome, worldview-changing rights courtesy of its <a href="%s">license</a>, the GPL.' ), 'http://wordpress.org/about/license/' ); ?></p>
+<p class="about-description"><?php printf( __( 'WordPress is Free and open source software, built by a distributed community of mostly volunteer developers from around the world. WordPress comes with some awesome, worldview-changing rights courtesy of its <a href="%s">license</a>, the GPL.' ), 'http://wordpress.org/about/license/' ); ?></p>
 
 <ol start="0">
 
 <ol start="0">
-       <li><?php _e( 'You have the freedom to run the program, for any purpose.' ); ?></li>
-       <li><?php _e( 'You have access to the source code, the freedom to study how the program works, and the freedom to change it to make it do what you wish.' ); ?></li>
-       <li><?php _e( 'You have the freedom to redistribute copies of the original program so you can help your neighbor.' ); ?></li>
-       <li><?php _e( 'You have the freedom to distribute copies of your modified versions to others. By doing this you can give the whole community a chance to benefit from your changes.' ); ?></li>
+       <li><p><?php _e( 'You have the freedom to run the program, for any purpose.' ); ?></p></li>
+       <li><p><?php _e( 'You have access to the source code, the freedom to study how the program works, and the freedom to change it to make it do what you wish.' ); ?></p></li>
+       <li><p><?php _e( 'You have the freedom to redistribute copies of the original program so you can help your neighbor.' ); ?></p></li>
+       <li><p><?php _e( 'You have the freedom to distribute copies of your modified versions to others. By doing this you can give the whole community a chance to benefit from your changes.' ); ?></p></li>
 </ol>
 
 <p><?php printf( __( 'WordPress grows when people like you tell their friends about it, and the thousands of businesses and services that are built on and around WordPress share that fact with their users. We&#8217;re flattered every time someone spreads the good word, just make sure to <a href="%s">check out our trademark guidelines</a> first.' ), 'http://wordpressfoundation.org/trademark-policy/' ); ?></p>
 </ol>
 
 <p><?php printf( __( 'WordPress grows when people like you tell their friends about it, and the thousands of businesses and services that are built on and around WordPress share that fact with their users. We&#8217;re flattered every time someone spreads the good word, just make sure to <a href="%s">check out our trademark guidelines</a> first.' ), 'http://wordpressfoundation.org/trademark-policy/' ); ?></p>
index d910bc1b499c0d05d9d8f70573a4ab88401e5ece..c99dff2206abeea0959179c0d13a1dec7912ed21 100644 (file)
Binary files a/wp-admin/images/icons32-vs.png and b/wp-admin/images/icons32-vs.png differ
index d94e38af1dcd961531b5f8cfc53b66c680f59469..4b26eb0f620c106090c855a8baa02c2764c57da0 100644 (file)
Binary files a/wp-admin/images/icons32.png and b/wp-admin/images/icons32.png differ
diff --git a/wp-admin/images/media-button.png b/wp-admin/images/media-button.png
new file mode 100644 (file)
index 0000000..8255073
Binary files /dev/null and b/wp-admin/images/media-button.png differ
index 76372bc3317d8e90d68838619c939a8584e1e5be..60272eeb248c4d2eaf3d3a4c2c01f933bc71037b 100644 (file)
Binary files a/wp-admin/images/menu-vs.png and b/wp-admin/images/menu-vs.png differ
index fa6ed84bf799a4c9772792f3ee7a7a8382d5522a..8da666e84512a001496704d510a6e022507abd90 100644 (file)
Binary files a/wp-admin/images/menu.png and b/wp-admin/images/menu.png differ
diff --git a/wp-admin/images/screenshots/admin-flyouts.png b/wp-admin/images/screenshots/admin-flyouts.png
new file mode 100644 (file)
index 0000000..92871e1
Binary files /dev/null and b/wp-admin/images/screenshots/admin-flyouts.png differ
diff --git a/wp-admin/images/screenshots/coediting.png b/wp-admin/images/screenshots/coediting.png
new file mode 100644 (file)
index 0000000..4f30c67
Binary files /dev/null and b/wp-admin/images/screenshots/coediting.png differ
diff --git a/wp-admin/images/screenshots/drag-and-drop.png b/wp-admin/images/screenshots/drag-and-drop.png
new file mode 100644 (file)
index 0000000..4f52758
Binary files /dev/null and b/wp-admin/images/screenshots/drag-and-drop.png differ
diff --git a/wp-admin/images/screenshots/help-screen.png b/wp-admin/images/screenshots/help-screen.png
new file mode 100644 (file)
index 0000000..02f0d9a
Binary files /dev/null and b/wp-admin/images/screenshots/help-screen.png differ
diff --git a/wp-admin/images/screenshots/media-icon.png b/wp-admin/images/screenshots/media-icon.png
new file mode 100644 (file)
index 0000000..9f97564
Binary files /dev/null and b/wp-admin/images/screenshots/media-icon.png differ
diff --git a/wp-admin/images/screenshots/new-feature-pointer.png b/wp-admin/images/screenshots/new-feature-pointer.png
new file mode 100644 (file)
index 0000000..fbcd5a6
Binary files /dev/null and b/wp-admin/images/screenshots/new-feature-pointer.png differ
diff --git a/wp-admin/images/screenshots/welcome-screen.png b/wp-admin/images/screenshots/welcome-screen.png
new file mode 100644 (file)
index 0000000..5f6d15f
Binary files /dev/null and b/wp-admin/images/screenshots/welcome-screen.png differ
diff --git a/wp-admin/images/wp-badge.png b/wp-admin/images/wp-badge.png
new file mode 100644 (file)
index 0000000..79cc1e1
Binary files /dev/null and b/wp-admin/images/wp-badge.png differ
index 6f1cc4f4eb88426e7a54d185c0fbd3772aeb0163..80c251fdd75c5a9a960b87e4120509a1100e131b 100644 (file)
Binary files a/wp-admin/images/xit.gif and b/wp-admin/images/xit.gif differ
index 0200e56136ead0b247724e859fb34ac692db9662..f9d813709c85c21b342df81050e46cf261143c84 100644 (file)
@@ -16,9 +16,15 @@ if ( !current_user_can('import') )
 
 $title = __('Import');
 
 
 $title = __('Import');
 
-add_contextual_help($current_screen,
-       '<p>' . __('This screen lists links to plugins to import data from blogging/content management platforms. Choose the platform you want to import from, and click Install Now when you are prompted in the popup window. If your platform is not listed, click the link to search the plugin directory for other importer plugins to see if there is one for your platform.') . '</p>' .
-       '<p>' . __('In previous versions of WordPress, all the importers were built-in, but they have been turned into plugins as of version 3.0 since most people only use them once or infrequently.') . '</p>' .
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' => '<p>' . __('This screen lists links to plugins to import data from blogging/content management platforms. Choose the platform you want to import from, and click Install Now when you are prompted in the popup window. If your platform is not listed, click the link to search the plugin directory for other importer plugins to see if there is one for your platform.') . '</p>' .
+               '<p>' . __('In previous versions of WordPress, all importers were built-in.  They have been turned into plugins since most people only use them once or infrequently.') . '</p>',
+) );
+
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Tools_Import_Screen" target="_blank">Documentation on Import</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Tools_Import_Screen" target="_blank">Documentation on Import</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
@@ -33,6 +39,7 @@ if ( current_user_can('install_plugins') )
                'movabletype' => array( __('Movable Type and TypePad'), __('Install the Movable Type importer to import posts and comments from a Movable Type or TypePad blog.'), 'install', 'mt' ),
                'opml' => array( __('Blogroll'), __('Install the blogroll importer to import links in OPML format.'), 'install' ),
                'rss' => array( __('RSS'), __('Install the RSS importer to import posts from an RSS feed.'), 'install' ),
                'movabletype' => array( __('Movable Type and TypePad'), __('Install the Movable Type importer to import posts and comments from a Movable Type or TypePad blog.'), 'install', 'mt' ),
                'opml' => array( __('Blogroll'), __('Install the blogroll importer to import links in OPML format.'), 'install' ),
                'rss' => array( __('RSS'), __('Install the RSS importer to import posts from an RSS feed.'), 'install' ),
+               'tumblr' => array( __('Tumblr'), __('Install the Tumblr importer to import posts &amp; media from Tumblr using their API.'), 'install' ),
                'wordpress' => array( 'WordPress', __('Install the WordPress importer to import posts, pages, comments, custom fields, categories, and tags from a WordPress export file.'), 'install' )
        );
 
                'wordpress' => array( 'WordPress', __('Install the WordPress importer to import posts, pages, comments, custom fields, categories, and tags from a WordPress export file.'), 'install' )
        );
 
@@ -43,7 +50,6 @@ if ( ! empty( $_GET['invalid'] ) && !empty($popular_importers[$_GET['invalid']][
 
 add_thickbox();
 wp_enqueue_script( 'plugin-install' );
 
 add_thickbox();
 wp_enqueue_script( 'plugin-install' );
-wp_admin_css( 'plugin-install' );
 
 require_once ('admin-header.php');
 $parent_file = 'tools.php';
 
 require_once ('admin-header.php');
 $parent_file = 'tools.php';
@@ -59,29 +65,11 @@ $parent_file = 'tools.php';
 
 <?php
 
 
 <?php
 
-// Load all importers so that they can register.
-$import_loc = 'wp-admin/import';
-$import_root = ABSPATH . $import_loc;
-
-if ( file_exists( $import_root ) ) {
-       $imports_dir = opendir($import_root);
-       if ($imports_dir) {
-               while (($file = readdir($imports_dir)) !== false) {
-                       if ($file[0] == '.') {
-                               continue;
-                       } elseif (substr($file, -4) == '.php') {
-                               require_once($import_root . '/' . $file);
-                       }
-               }
-       }
-       closedir( $imports_dir );
-}
-
 $importers = get_importers();
 
 // If a popular importer is not registered, create a dummy registration that links to the plugin installer.
 foreach ( $popular_importers as $pop_importer => $pop_data ) {
 $importers = get_importers();
 
 // If a popular importer is not registered, create a dummy registration that links to the plugin installer.
 foreach ( $popular_importers as $pop_importer => $pop_data ) {
-       if ( isset($importers[$pop_importer] ) )
+       if ( isset( $importers[$pop_importer] ) )
                continue;
        if ( isset( $pop_data[3] ) && isset( $importers[ $pop_data[3] ] ) )
                continue;
                continue;
        if ( isset( $pop_data[3] ) && isset( $importers[ $pop_data[3] ] ) )
                continue;
@@ -89,12 +77,12 @@ foreach ( $popular_importers as $pop_importer => $pop_data ) {
        $importers[$pop_importer] = $popular_importers[$pop_importer];
 }
 
        $importers[$pop_importer] = $popular_importers[$pop_importer];
 }
 
-if (empty ($importers)) {
+if ( empty($importers) ) {
        echo '<p>'.__('No importers are available.').'</p>'; // TODO: make more helpful
 } else {
        uasort($importers, create_function('$a, $b', 'return strcmp($a[0], $b[0]);'));
 ?>
        echo '<p>'.__('No importers are available.').'</p>'; // TODO: make more helpful
 } else {
        uasort($importers, create_function('$a, $b', 'return strcmp($a[0], $b[0]);'));
 ?>
-<table class="widefat" cellspacing="0">
+<table class="widefat importers" cellspacing="0">
 
 <?php
        $style = '';
 
 <?php
        $style = '';
@@ -113,10 +101,16 @@ if (empty ($importers)) {
                                                                                        '"title="' . esc_attr__('Activate importer') . '"">' . $data[0] . '</a>';
                                }
                        }
                                                                                        '"title="' . esc_attr__('Activate importer') . '"">' . $data[0] . '</a>';
                                }
                        }
-                       if ( empty($action) )
-                               $action = '<a href="' . esc_url( network_admin_url( 'plugin-install.php?tab=plugin-information&plugin=' . $plugin_slug .
+                       if ( empty($action) ) {
+                               if ( is_main_site() ) {
+                                       $action = '<a href="' . esc_url( network_admin_url( 'plugin-install.php?tab=plugin-information&plugin=' . $plugin_slug .
                                                                                '&from=import&TB_iframe=true&width=600&height=550' ) ) . '" class="thickbox" title="' .
                                                                                esc_attr__('Install importer') . '">' . $data[0] . '</a>';
                                                                                '&from=import&TB_iframe=true&width=600&height=550' ) ) . '" class="thickbox" title="' .
                                                                                esc_attr__('Install importer') . '">' . $data[0] . '</a>';
+                               } else {
+                                       $action = $data[0];
+                                       $data[1] = sprintf( __( 'This importer is not installed. Please install importers from <a href="%s">the main site</a>.' ), get_admin_url( $current_site->blog_id, 'import.php' ) );
+                               }
+                       }
                } else {
                        $action = "<a href='" . esc_url("admin.php?import=$id") . "' title='" . esc_attr( wptexturize(strip_tags($data[1])) ) ."'>{$data[0]}</a>";
                }
                } else {
                        $action = "<a href='" . esc_url("admin.php?import=$id") . "' title='" . esc_attr( wptexturize(strip_tags($data[1])) ) ."'>{$data[0]}</a>";
                }
@@ -136,7 +130,7 @@ if (empty ($importers)) {
 }
 
 if ( current_user_can('install_plugins') )
 }
 
 if ( current_user_can('install_plugins') )
-       echo '<p>' . sprintf( __('If the importer you need is not listed, <a href="%s">search the plugins directory</a> to see if an importer is available.'), esc_url( network_admin_url( 'plugin-install.php?tab=search&type=tag&s=importer' ) ) ) . '</p>';
+       echo '<p>' . sprintf( __('If the importer you need is not listed, <a href="%s">search the plugin directory</a> to see if an importer is available.'), esc_url( network_admin_url( 'plugin-install.php?tab=search&type=tag&s=importer' ) ) ) . '</p>';
 ?>
 
 </div>
 ?>
 
 </div>
index 37f5c8ec9d3814f578d36be5ac01fac14f96764a..5f5190d8d1bad115fddf18a0ff11c7a9003742a2 100644 (file)
@@ -33,6 +33,9 @@ require_once(ABSPATH . 'wp-admin/includes/plugin.php');
 /** WordPress Post Administration API */
 require_once(ABSPATH . 'wp-admin/includes/post.php');
 
 /** WordPress Post Administration API */
 require_once(ABSPATH . 'wp-admin/includes/post.php');
 
+/** WordPress Administration Screen API */
+require_once(ABSPATH . 'wp-admin/includes/screen.php');
+
 /** WordPress Taxonomy Administration API */
 require_once(ABSPATH . 'wp-admin/includes/taxonomy.php');
 
 /** WordPress Taxonomy Administration API */
 require_once(ABSPATH . 'wp-admin/includes/taxonomy.php');
 
@@ -55,7 +58,7 @@ require_once(ABSPATH . 'wp-admin/includes/update.php');
 /** WordPress Deprecated Administration API */
 require_once(ABSPATH . 'wp-admin/includes/deprecated.php');
 
 /** WordPress Deprecated Administration API */
 require_once(ABSPATH . 'wp-admin/includes/deprecated.php');
 
-/** WordPress Multi-Site support API */
+/** WordPress Multisite support API */
 if ( is_multisite() ) {
        require_once(ABSPATH . 'wp-admin/includes/ms.php');
        require_once(ABSPATH . 'wp-admin/includes/ms-deprecated.php');
 if ( is_multisite() ) {
        require_once(ABSPATH . 'wp-admin/includes/ms.php');
        require_once(ABSPATH . 'wp-admin/includes/ms-deprecated.php');
index fd25129b676f7b472b13aed27a60a8740c2c0817..e3dc4c48b777157a4f402ca6ed9a2140dfccdc53 100644 (file)
@@ -302,18 +302,18 @@ class WP_Comments_List_Table extends WP_List_Table {
        }
 
        function single_row( $a_comment ) {
        }
 
        function single_row( $a_comment ) {
-               global $post, $comment, $the_comment_status;
+               global $post, $comment;
 
                $comment = $a_comment;
 
                $comment = $a_comment;
-               $the_comment_status = wp_get_comment_status( $comment->comment_ID );
+               $the_comment_class = join( ' ', get_comment_class( wp_get_comment_status( $comment->comment_ID ) ) );
 
                $post = get_post( $comment->comment_post_ID );
 
                $this->user_can = current_user_can( 'edit_comment', $comment->comment_ID );
 
 
                $post = get_post( $comment->comment_post_ID );
 
                $this->user_can = current_user_can( 'edit_comment', $comment->comment_ID );
 
-               echo "<tr id='comment-$comment->comment_ID' class='$the_comment_status'>";
+               echo "<tr id='comment-$comment->comment_ID' class='$the_comment_class'>";
                echo $this->single_row_columns( $comment );
                echo $this->single_row_columns( $comment );
-               echo "</tr>";
+               echo "</tr>\n";
        }
 
        function column_cb( $comment ) {
        }
 
        function column_cb( $comment ) {
@@ -322,11 +322,12 @@ class WP_Comments_List_Table extends WP_List_Table {
        }
 
        function column_comment( $comment ) {
        }
 
        function column_comment( $comment ) {
-               global $post, $comment_status, $the_comment_status;
+               global $post, $comment_status;
 
                $user_can = $this->user_can;
 
                $comment_url = esc_url( get_comment_link( $comment->comment_ID ) );
 
                $user_can = $this->user_can;
 
                $comment_url = esc_url( get_comment_link( $comment->comment_ID ) );
+               $the_comment_status = wp_get_comment_status( $comment->comment_ID );
 
                $ptime = date( 'G', strtotime( $comment->comment_date ) );
                if ( ( abs( time() - $ptime ) ) < 86400 )
 
                $ptime = date( 'G', strtotime( $comment->comment_date ) );
                if ( ( abs( time() - $ptime ) ) < 86400 )
@@ -410,11 +411,10 @@ class WP_Comments_List_Table extends WP_List_Table {
                                $actions['trash'] = "<a href='$trash_url' class='delete:the-comment-list:comment-$comment->comment_ID::trash=1 delete vim-d vim-destructive' title='" . esc_attr__( 'Move this comment to the trash' ) . "'>" . _x( 'Trash', 'verb' ) . '</a>';
                        }
 
                                $actions['trash'] = "<a href='$trash_url' class='delete:the-comment-list:comment-$comment->comment_ID::trash=1 delete vim-d vim-destructive' title='" . esc_attr__( 'Move this comment to the trash' ) . "'>" . _x( 'Trash', 'verb' ) . '</a>';
                        }
 
-                       if ( 'trash' != $the_comment_status ) {
+                       if ( 'spam' != $the_comment_status && 'trash' != $the_comment_status ) {
                                $actions['edit'] = "<a href='comment.php?action=editcomment&amp;c={$comment->comment_ID}' title='" . esc_attr__( 'Edit comment' ) . "'>". __( 'Edit' ) . '</a>';
                                $actions['quickedit'] = '<a onclick="commentReply.open( \''.$comment->comment_ID.'\',\''.$post->ID.'\',\'edit\' );return false;" class="vim-q" title="'.esc_attr__( 'Quick Edit' ).'" href="#">' . __( 'Quick&nbsp;Edit' ) . '</a>';
                                $actions['edit'] = "<a href='comment.php?action=editcomment&amp;c={$comment->comment_ID}' title='" . esc_attr__( 'Edit comment' ) . "'>". __( 'Edit' ) . '</a>';
                                $actions['quickedit'] = '<a onclick="commentReply.open( \''.$comment->comment_ID.'\',\''.$post->ID.'\',\'edit\' );return false;" class="vim-q" title="'.esc_attr__( 'Quick Edit' ).'" href="#">' . __( 'Quick&nbsp;Edit' ) . '</a>';
-                               if ( 'spam' != $the_comment_status )
-                                       $actions['reply'] = '<a onclick="commentReply.open( \''.$comment->comment_ID.'\',\''.$post->ID.'\' );return false;" class="vim-r" title="'.esc_attr__( 'Reply to this comment' ).'" href="#">' . __( 'Reply' ) . '</a>';
+                               $actions['reply'] = '<a onclick="commentReply.open( \''.$comment->comment_ID.'\',\''.$post->ID.'\' );return false;" class="vim-r" title="'.esc_attr__( 'Reply to this comment' ).'" href="#">' . __( 'Reply' ) . '</a>';
                        }
 
                        $actions = apply_filters( 'comment_row_actions', array_filter( $actions ), $comment );
                        }
 
                        $actions = apply_filters( 'comment_row_actions', array_filter( $actions ), $comment );
@@ -496,7 +496,8 @@ class WP_Comments_List_Table extends WP_List_Table {
                echo $post_link . '<br />';
                $this->comments_bubble( $post->ID, $pending_comments );
                echo '</span> ';
                echo $post_link . '<br />';
                $this->comments_bubble( $post->ID, $pending_comments );
                echo '</span> ';
-               echo "<a href='" . get_permalink( $post->ID ) . "'>#</a>";
+               $post_type_object = get_post_type_object( $post->post_type );
+               echo "<a href='" . get_permalink( $post->ID ) . "'>" . $post_type_object->labels->view_item . '</a>';
                echo '</div>';
                if ( 'attachment' == $post->post_type && ( $thumb = wp_get_attachment_image( $post->ID, array( 80, 60 ), true ) ) )
                        echo $thumb;
                echo '</div>';
                if ( 'attachment' == $post->post_type && ( $thumb = wp_get_attachment_image( $post->ID, array( 80, 60 ), true ) ) )
                        echo $thumb;
index fd3fdc33b53cb9a3efc678899ec663eff8c70076..3d3016acd701d78bbdb966f0dea26003ea03c9f5 100644 (file)
@@ -153,12 +153,12 @@ class WP_Filesystem_Base {
                                if ( defined($constant) && $folder === $dir )
                                        return trailingslashit(constant($constant));
                } elseif ( 'direct' == $this->method ) {
                                if ( defined($constant) && $folder === $dir )
                                        return trailingslashit(constant($constant));
                } elseif ( 'direct' == $this->method ) {
-                       $folder = str_replace('\\', '/', $folder); //Windows path sanitiation
+                       $folder = str_replace('\\', '/', $folder); //Windows path sanitisation
                        return trailingslashit($folder);
                }
 
                        return trailingslashit($folder);
                }
 
-               $folder = preg_replace('|^([a-z]{1}):|i', '', $folder); //Strip out windows driveletter if its there.
-               $folder = str_replace('\\', '/', $folder); //Windows path sanitiation
+               $folder = preg_replace('|^([a-z]{1}):|i', '', $folder); //Strip out windows drive letter if it's there.
+               $folder = str_replace('\\', '/', $folder); //Windows path sanitisation
 
                if ( isset($this->cache[ $folder ] ) )
                        return $this->cache[ $folder ];
 
                if ( isset($this->cache[ $folder ] ) )
                        return $this->cache[ $folder ];
@@ -223,7 +223,7 @@ class WP_Filesystem_Base {
                }
                if ( $loop )
                        return false; //Prevent this function from looping again.
                }
                if ( $loop )
                        return false; //Prevent this function from looping again.
-               //As an extra last resort, Change back to / if the folder wasnt found. This comes into effect when the CWD is /home/user/ but WP is at /var/www/.... mainly dedicated setups.
+               //As an extra last resort, Change back to / if the folder wasn't found. This comes into effect when the CWD is /home/user/ but WP is at /var/www/.... mainly dedicated setups.
                return $this->search_for_folder($folder, '/', true);
 
        }
                return $this->search_for_folder($folder, '/', true);
 
        }
index 9703d73add70cfad524580f5314d9ebbb857bc07..ebd64b3e8236d61e95700c89d66c6624852e1a2f 100644 (file)
@@ -89,7 +89,7 @@ class WP_Filesystem_Direct extends WP_Filesystem_Base {
         *
         * @param string $file Path to the file.
         * @param mixed $group A group name or number.
         *
         * @param string $file Path to the file.
         * @param mixed $group A group name or number.
-        * @param bool $recursive (optional) If set True changes file group recursivly. Defaults to False.
+        * @param bool $recursive (optional) If set True changes file group recursively. Defaults to False.
         * @return bool Returns true on success or false on failure.
         */
        function chgrp($file, $group, $recursive = false) {
         * @return bool Returns true on success or false on failure.
         */
        function chgrp($file, $group, $recursive = false) {
@@ -112,7 +112,7 @@ class WP_Filesystem_Direct extends WP_Filesystem_Base {
         *
         * @param string $file Path to the file.
         * @param int $mode (optional) The permissions as octal number, usually 0644 for files, 0755 for dirs.
         *
         * @param string $file Path to the file.
         * @param int $mode (optional) The permissions as octal number, usually 0644 for files, 0755 for dirs.
-        * @param bool $recursive (optional) If set True changes file group recursivly. Defaults to False.
+        * @param bool $recursive (optional) If set True changes file group recursively. Defaults to False.
         * @return bool Returns true on success or false on failure.
         */
        function chmod($file, $mode = false, $recursive = false) {
         * @return bool Returns true on success or false on failure.
         */
        function chmod($file, $mode = false, $recursive = false) {
@@ -140,7 +140,7 @@ class WP_Filesystem_Direct extends WP_Filesystem_Base {
         *
         * @param string $file Path to the file.
         * @param mixed $owner A user name or number.
         *
         * @param string $file Path to the file.
         * @param mixed $owner A user name or number.
-        * @param bool $recursive (optional) If set True changes file owner recursivly. Defaults to False.
+        * @param bool $recursive (optional) If set True changes file owner recursively. Defaults to False.
         * @return bool Returns true on success or false on failure.
         */
        function chown($file, $owner, $recursive = false) {
         * @return bool Returns true on success or false on failure.
         */
        function chown($file, $owner, $recursive = false) {
@@ -287,7 +287,7 @@ class WP_Filesystem_Direct extends WP_Filesystem_Base {
                // safe mode fails with a trailing slash under certain PHP versions.
                $path = untrailingslashit($path);
                if ( empty($path) )
                // safe mode fails with a trailing slash under certain PHP versions.
                $path = untrailingslashit($path);
                if ( empty($path) )
-                       $path = '/';
+                       return false;
 
                if ( ! $chmod )
                        $chmod = FS_CHMOD_DIR;
 
                if ( ! $chmod )
                        $chmod = FS_CHMOD_DIR;
index ff65d4c354653c639835d86badd1dd7e5b063226..79bacfbaa4d719fde8030e157902394192aaa235 100644 (file)
@@ -247,6 +247,10 @@ class WP_Filesystem_FTPext extends WP_Filesystem_Base {
                return false;
        }
        function mkdir($path, $chmod = false, $chown = false, $chgrp = false) {
                return false;
        }
        function mkdir($path, $chmod = false, $chown = false, $chgrp = false) {
+               $path = untrailingslashit($path);
+               if ( empty($path) )
+                       return false;
+
                if ( !@ftp_mkdir($this->link, $path) )
                        return false;
                $this->chmod($path, $chmod);
                if ( !@ftp_mkdir($this->link, $path) )
                        return false;
                $this->chmod($path, $chmod);
@@ -338,7 +342,7 @@ class WP_Filesystem_FTPext extends WP_Filesystem_Base {
                }
 
                $pwd = @ftp_pwd($this->link);
                }
 
                $pwd = @ftp_pwd($this->link);
-               if ( ! @ftp_chdir($this->link, $path) ) // Cant change to folder = folder doesnt exist
+               if ( ! @ftp_chdir($this->link, $path) ) // Cant change to folder = folder doesn't exist
                        return false;
                $list = @ftp_rawlist($this->link, '-a', false);
                @ftp_chdir($this->link, $pwd);
                        return false;
                $list = @ftp_rawlist($this->link, '-a', false);
                @ftp_chdir($this->link, $pwd);
index 1dc170a93c540a665e20eb045506233effc3142a..7dae3b773724953f484d9e452b22a52f534a5fd6 100644 (file)
@@ -267,6 +267,10 @@ class WP_Filesystem_ftpsockets extends WP_Filesystem_Base {
        }
 
        function mkdir($path, $chmod = false, $chown = false, $chgrp = false ) {
        }
 
        function mkdir($path, $chmod = false, $chown = false, $chgrp = false ) {
+               $path = untrailingslashit($path);
+               if ( empty($path) )
+                       return false;
+
                if ( ! $this->ftp->mkdir($path) )
                        return false;
                if ( ! $chmod )
                if ( ! $this->ftp->mkdir($path) )
                        return false;
                if ( ! $chmod )
index b809f4554968eb88b80b1982c11ee1b9aca9886e..3114456e097d4da0331f93c02be86d8ca761dae7 100644 (file)
@@ -306,11 +306,14 @@ class WP_Filesystem_SSH2 extends WP_Filesystem_Base {
        }
 
        function touch($file, $time = 0, $atime = 0) {
        }
 
        function touch($file, $time = 0, $atime = 0) {
-               //Not implmented.
+               //Not implemented.
        }
 
        function mkdir($path, $chmod = false, $chown = false, $chgrp = false) {
                $path = untrailingslashit($path);
        }
 
        function mkdir($path, $chmod = false, $chown = false, $chgrp = false) {
                $path = untrailingslashit($path);
+               if ( empty($path) )
+                       return false;
+
                if ( ! $chmod )
                        $chmod = FS_CHMOD_DIR;
                if ( ! ssh2_sftp_mkdir($this->sftp_link, $path, $chmod, true) )
                if ( ! $chmod )
                        $chmod = FS_CHMOD_DIR;
                if ( ! ssh2_sftp_mkdir($this->sftp_link, $path, $chmod, true) )
index 6420ee781af322cb046f57ee0cc9f17efba0a66c..446174d4dea6409f8a2ef7381caa485b3f05732a 100644 (file)
@@ -91,6 +91,9 @@ class WP_List_Table {
                if ( !$args['plural'] )
                        $args['plural'] = $screen->base;
 
                if ( !$args['plural'] )
                        $args['plural'] = $screen->base;
 
+               $args['plural'] = sanitize_key( $args['plural'] );
+               $args['singular'] = sanitize_key( $args['singular'] );
+
                $this->_args = $args;
 
                if ( $args['ajax'] ) {
                $this->_args = $args;
 
                if ( $args['ajax'] ) {
@@ -229,7 +232,7 @@ class WP_List_Table {
        }
 
        /**
        }
 
        /**
-        * Display the bulk actions dropdown.
+        * Display the list of views available on this table.
         *
         * @since 3.1.0
         * @access public
         *
         * @since 3.1.0
         * @access public
@@ -326,7 +329,7 @@ class WP_List_Table {
         * @access protected
         *
         * @param array $actions The list of actions
         * @access protected
         *
         * @param array $actions The list of actions
-        * @param bool $always_visible Wether the actions should be always visible
+        * @param bool $always_visible Whether the actions should be always visible
         * @return string
         */
        function row_actions( $actions, $always_visible = false ) {
         * @return string
         */
        function row_actions( $actions, $always_visible = false ) {
@@ -897,9 +900,14 @@ class WP_List_Table {
         * @access private
         */
        function _js_vars() {
         * @access private
         */
        function _js_vars() {
+               $current_screen = get_current_screen();
+
                $args = array(
                $args = array(
-                       'class' => get_class( $this ),
-                       'screen' => get_current_screen()
+                       'class'  => get_class( $this ),
+                       'screen' => array(
+                               'id'   => $current_screen->id,
+                               'base' => $current_screen->base,
+                       )
                );
 
                printf( "<script type='text/javascript'>list_args = %s;</script>\n", json_encode( $args ) );
                );
 
                printf( "<script type='text/javascript'>list_args = %s;</script>\n", json_encode( $args ) );
index 531fe60fd78c174057bf6f841fdfa08af15a7112..9c63ca3267691dca7bbc5d156eeb00988ec0b07c 100644 (file)
@@ -84,13 +84,11 @@ class WP_Media_List_Table extends WP_List_Table {
        }
 
        function extra_tablenav( $which ) {
        }
 
        function extra_tablenav( $which ) {
-               global $post_type;
-               $post_type_obj = get_post_type_object( $post_type );
 ?>
                <div class="alignleft actions">
 <?php
                if ( 'top' == $which && !is_singular() && !$this->detached && !$this->is_trash ) {
 ?>
                <div class="alignleft actions">
 <?php
                if ( 'top' == $which && !is_singular() && !$this->detached && !$this->is_trash ) {
-                       $this->months_dropdown( $post_type );
+                       $this->months_dropdown( 'attachment' );
 
                        do_action( 'restrict_manage_posts' );
                        submit_button( __( 'Filter' ), 'secondary', false, false, array( 'id' => 'post-query-submit' ) );
 
                        do_action( 'restrict_manage_posts' );
                        submit_button( __( 'Filter' ), 'secondary', false, false, array( 'id' => 'post-query-submit' ) );
@@ -137,7 +135,8 @@ class WP_Media_List_Table extends WP_List_Table {
                /* translators: column name */
                if ( !$this->detached ) {
                        $posts_columns['parent'] = _x( 'Attached to', 'column name' );
                /* translators: column name */
                if ( !$this->detached ) {
                        $posts_columns['parent'] = _x( 'Attached to', 'column name' );
-                       $posts_columns['comments'] = '<span class="vers"><img alt="Comments" src="' . esc_url( admin_url( 'images/comment-grey-bubble.png' ) ) . '" /></span>';
+                       if ( post_type_supports( 'attachment', 'comments' ) )
+                               $posts_columns['comments'] = '<span class="vers"><img alt="' . esc_attr__( 'Comments' ) . '" src="' . esc_url( admin_url( 'images/comment-grey-bubble.png' ) ) . '" /></span>';
                }
                /* translators: column name */
                $posts_columns['date'] = _x( 'Date', 'column name' );
                }
                /* translators: column name */
                $posts_columns['date'] = _x( 'Date', 'column name' );
@@ -163,6 +162,7 @@ class WP_Media_List_Table extends WP_List_Table {
                $alt = '';
 
                while ( have_posts() ) : the_post();
                $alt = '';
 
                while ( have_posts() ) : the_post();
+                       $user_can_edit = current_user_can( 'edit_post', $post->ID );
 
                        if ( $this->is_trash && $post->post_status != 'trash'
                        ||  !$this->is_trash && $post->post_status == 'trash' )
 
                        if ( $this->is_trash && $post->post_status != 'trash'
                        ||  !$this->is_trash && $post->post_status == 'trash' )
@@ -189,7 +189,11 @@ foreach ( $columns as $column_name => $column_display_name ) {
 
        case 'cb':
 ?>
 
        case 'cb':
 ?>
-               <th scope="row" class="check-column"><?php if ( current_user_can( 'edit_post', $post->ID ) ) { ?><input type="checkbox" name="media[]" value="<?php the_ID(); ?>" /><?php } ?></th>
+               <th scope="row" class="check-column">
+                       <?php if ( $user_can_edit ) { ?>
+                               <input type="checkbox" name="media[]" value="<?php the_ID(); ?>" />
+                       <?php } ?>
+               </th>
 <?php
                break;
 
 <?php
                break;
 
@@ -198,7 +202,7 @@ foreach ( $columns as $column_name => $column_display_name ) {
 ?>
                <td <?php echo $attributes ?>><?php
                        if ( $thumb = wp_get_attachment_image( $post->ID, array( 80, 60 ), true ) ) {
 ?>
                <td <?php echo $attributes ?>><?php
                        if ( $thumb = wp_get_attachment_image( $post->ID, array( 80, 60 ), true ) ) {
-                               if ( $this->is_trash ) {
+                               if ( $this->is_trash || ! $user_can_edit ) {
                                        echo $thumb;
                                } else {
 ?>
                                        echo $thumb;
                                } else {
 ?>
@@ -215,7 +219,15 @@ foreach ( $columns as $column_name => $column_display_name ) {
 
        case 'title':
 ?>
 
        case 'title':
 ?>
-               <td <?php echo $attributes ?>><strong><?php if ( $this->is_trash ) echo $att_title; else { ?><a href="<?php echo get_edit_post_link( $post->ID, true ); ?>" title="<?php echo esc_attr( sprintf( __( 'Edit &#8220;%s&#8221;' ), $att_title ) ); ?>"><?php echo $att_title; ?></a><?php }; _media_states( $post ); ?></strong>
+               <td <?php echo $attributes ?>><strong>
+                       <?php if ( $this->is_trash || ! $user_can_edit ) {
+                               echo $att_title;
+                       } else { ?>
+                       <a href="<?php echo get_edit_post_link( $post->ID, true ); ?>"
+                               title="<?php echo esc_attr( sprintf( __( 'Edit &#8220;%s&#8221;' ), $att_title ) ); ?>">
+                               <?php echo $att_title; ?></a>
+                       <?php };
+                       _media_states( $post ); ?></strong>
                        <p>
 <?php
                        if ( preg_match( '/^.*?\.(\w+)$/', get_attached_file( $post->ID ), $matches ) )
                        <p>
 <?php
                        if ( preg_match( '/^.*?\.(\w+)$/', get_attached_file( $post->ID ), $matches ) )
@@ -287,15 +299,25 @@ foreach ( $columns as $column_name => $column_display_name ) {
                                $title =_draft_or_post_title( $post->post_parent );
                        }
 ?>
                                $title =_draft_or_post_title( $post->post_parent );
                        }
 ?>
-                       <td <?php echo $attributes ?>>
-                               <strong><a href="<?php echo get_edit_post_link( $post->post_parent ); ?>"><?php echo $title ?></a></strong>,
+                       <td <?php echo $attributes ?>><strong>
+                               <?php if( current_user_can( 'edit_post', $post->post_parent ) ) { ?>
+                                       <a href="<?php echo get_edit_post_link( $post->post_parent ); ?>">
+                                               <?php echo $title ?></a>
+                               <?php } else {
+                                       echo $title;
+                               } ?></strong>,
                                <?php echo get_the_time( __( 'Y/m/d' ) ); ?>
                        </td>
 <?php
                } else {
 ?>
                        <td <?php echo $attributes ?>><?php _e( '(Unattached)' ); ?><br />
                                <?php echo get_the_time( __( 'Y/m/d' ) ); ?>
                        </td>
 <?php
                } else {
 ?>
                        <td <?php echo $attributes ?>><?php _e( '(Unattached)' ); ?><br />
-                       <a class="hide-if-no-js" onclick="findPosts.open( 'media[]','<?php echo $post->ID ?>' );return false;" href="#the-list"><?php _e( 'Attach' ); ?></a></td>
+                       <?php if( $user_can_edit ) {?>
+                               <a class="hide-if-no-js"
+                                       onclick="findPosts.open( 'media[]','<?php echo $post->ID ?>' ); return false;"
+                                       href="#the-list">
+                                       <?php _e( 'Attach' ); ?></a>
+                       <?php } ?></td>
 <?php
                }
                break;
 <?php
                }
                break;
index baefc8276fa5b05605aebed3cbd6cf80e2dc43e6..73ce88989a37a6d93935e677313eb9632a4fd0c2 100644 (file)
@@ -37,23 +37,24 @@ class WP_MS_Sites_List_Table extends WP_List_Table {
 
                $like_s = esc_sql( like_escape( $s ) );
 
 
                $like_s = esc_sql( like_escape( $s ) );
 
-               $large_network = false;
                // If the network is large and a search is not being performed, show only the latest blogs with no paging in order
                // to avoid expensive count queries.
                // If the network is large and a search is not being performed, show only the latest blogs with no paging in order
                // to avoid expensive count queries.
-               if ( !$s && ( get_blog_count() >= 10000 ) ) {
+               if ( !$s && wp_is_large_network() ) {
                        if ( !isset($_REQUEST['orderby']) )
                                $_GET['orderby'] = $_REQUEST['orderby'] = '';
                        if ( !isset($_REQUEST['order']) )
                                $_GET['order'] = $_REQUEST['order'] = 'DESC';
                        if ( !isset($_REQUEST['orderby']) )
                                $_GET['orderby'] = $_REQUEST['orderby'] = '';
                        if ( !isset($_REQUEST['order']) )
                                $_GET['order'] = $_REQUEST['order'] = 'DESC';
-                       $large_network = true;
                }
 
                $query = "SELECT * FROM {$wpdb->blogs} WHERE site_id = '{$wpdb->siteid}' ";
 
                if ( empty($s) ) {
                        // Nothing to do.
                }
 
                $query = "SELECT * FROM {$wpdb->blogs} WHERE site_id = '{$wpdb->siteid}' ";
 
                if ( empty($s) ) {
                        // Nothing to do.
-               } elseif ( preg_match('/^[0-9]+\./', $s) ) {
-                       // IP address
+               } elseif ( preg_match( '/^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$/', $s ) ||
+                                       preg_match( '/^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.?$/', $s ) ||
+                                       preg_match( '/^[0-9]{1,3}\.[0-9]{1,3}\.?$/', $s ) ||
+                                       preg_match( '/^[0-9]{1,3}\.$/', $s ) ) {
+                       // IPv4 address
                        $reg_blog_ids = $wpdb->get_col( "SELECT blog_id FROM {$wpdb->registration_log} WHERE {$wpdb->registration_log}.IP LIKE ( '{$like_s}$wild' )" );
 
                        if ( !$reg_blog_ids )
                        $reg_blog_ids = $wpdb->get_col( "SELECT blog_id FROM {$wpdb->registration_log} WHERE {$wpdb->registration_log}.IP LIKE ( '{$like_s}$wild' )" );
 
                        if ( !$reg_blog_ids )
@@ -64,7 +65,7 @@ class WP_MS_Sites_List_Table extends WP_List_Table {
                                WHERE site_id = '{$wpdb->siteid}'
                                AND {$wpdb->blogs}.blog_id IN (" . implode( ', ', $reg_blog_ids ) . ")";
                } else {
                                WHERE site_id = '{$wpdb->siteid}'
                                AND {$wpdb->blogs}.blog_id IN (" . implode( ', ', $reg_blog_ids ) . ")";
                } else {
-                       if ( is_numeric($s) ) {
+                       if ( is_numeric($s) && empty( $wild ) ) {
                                $query .= " AND ( {$wpdb->blogs}.blog_id = '{$like_s}' )";
                        } elseif ( is_subdomain_install() ) {
                                $blog_s = str_replace( '.' . $current_site->domain, '', $like_s );
                                $query .= " AND ( {$wpdb->blogs}.blog_id = '{$like_s}' )";
                        } elseif ( is_subdomain_install() ) {
                                $blog_s = str_replace( '.' . $current_site->domain, '', $like_s );
@@ -101,13 +102,13 @@ class WP_MS_Sites_List_Table extends WP_List_Table {
                }
 
                // Don't do an unbounded count on large networks
                }
 
                // Don't do an unbounded count on large networks
-               if ( ! $large_network )
+               if ( ! wp_is_large_network() )
                        $total = $wpdb->get_var( str_replace( 'SELECT *', 'SELECT COUNT( blog_id )', $query ) );
 
                $query .= " LIMIT " . intval( ( $pagenum - 1 ) * $per_page ) . ", " . intval( $per_page );
                $this->items = $wpdb->get_results( $query, ARRAY_A );
 
                        $total = $wpdb->get_var( str_replace( 'SELECT *', 'SELECT COUNT( blog_id )', $query ) );
 
                $query .= " LIMIT " . intval( ( $pagenum - 1 ) * $per_page ) . ", " . intval( $per_page );
                $this->items = $wpdb->get_results( $query, ARRAY_A );
 
-               if ( $large_network )
+               if ( wp_is_large_network() )
                        $total = count($this->items);
 
                $this->set_pagination_args( array(
                        $total = count($this->items);
 
                $this->set_pagination_args( array(
@@ -245,22 +246,22 @@ class WP_MS_Sites_List_Table extends WP_List_Table {
                                                        $actions['backend']     = "<span class='backend'><a href='" . esc_url( get_admin_url( $blog['blog_id'] ) ) . "' class='edit'>" . __( 'Dashboard' ) . '</a></span>';
                                                        if ( $current_site->blog_id != $blog['blog_id'] ) {
                                                                if ( get_blog_status( $blog['blog_id'], 'deleted' ) == '1' )
                                                        $actions['backend']     = "<span class='backend'><a href='" . esc_url( get_admin_url( $blog['blog_id'] ) ) . "' class='edit'>" . __( 'Dashboard' ) . '</a></span>';
                                                        if ( $current_site->blog_id != $blog['blog_id'] ) {
                                                                if ( get_blog_status( $blog['blog_id'], 'deleted' ) == '1' )
-                                                                       $actions['activate']    = '<span class="activate"><a href="' . esc_url( wp_nonce_url( network_admin_url( 'edit.php?action=confirm&amp;action2=activateblog&amp;id=' . $blog['blog_id'] . '&amp;msg=' . urlencode( sprintf( __( 'You are about to activate the site %s' ), $blogname ) ) ), 'confirm' ) ) . '">' . __( 'Activate' ) . '</a></span>';
+                                                                       $actions['activate']    = '<span class="activate"><a href="' . esc_url( wp_nonce_url( network_admin_url( 'sites.php?action=confirm&amp;action2=activateblog&amp;id=' . $blog['blog_id'] . '&amp;msg=' . urlencode( sprintf( __( 'You are about to activate the site %s' ), $blogname ) ) ), 'confirm' ) ) . '">' . __( 'Activate' ) . '</a></span>';
                                                                else
                                                                else
-                                                                       $actions['deactivate']  = '<span class="activate"><a href="' . esc_url( wp_nonce_url( network_admin_url( 'edit.php?action=confirm&amp;action2=deactivateblog&amp;id=' . $blog['blog_id'] . '&amp;msg=' . urlencode( sprintf( __( 'You are about to deactivate the site %s' ), $blogname ) ) ), 'confirm') ) . '">' . __( 'Deactivate' ) . '</a></span>';
+                                                                       $actions['deactivate']  = '<span class="activate"><a href="' . esc_url( wp_nonce_url( network_admin_url( 'sites.php?action=confirm&amp;action2=deactivateblog&amp;id=' . $blog['blog_id'] . '&amp;msg=' . urlencode( sprintf( __( 'You are about to deactivate the site %s' ), $blogname ) ) ), 'confirm') ) . '">' . __( 'Deactivate' ) . '</a></span>';
 
                                                                if ( get_blog_status( $blog['blog_id'], 'archived' ) == '1' )
 
                                                                if ( get_blog_status( $blog['blog_id'], 'archived' ) == '1' )
-                                                                       $actions['unarchive']   = '<span class="archive"><a href="' . esc_url( wp_nonce_url( network_admin_url( 'edit.php?action=confirm&amp;action2=unarchiveblog&amp;id=' .  $blog['blog_id'] . '&amp;msg=' . urlencode( sprintf( __( 'You are about to unarchive the site %s.' ), $blogname ) ) ), 'confirm') ) . '">' . __( 'Unarchive' ) . '</a></span>';
+                                                                       $actions['unarchive']   = '<span class="archive"><a href="' . esc_url( wp_nonce_url( network_admin_url( 'sites.php?action=confirm&amp;action2=unarchiveblog&amp;id=' .  $blog['blog_id'] . '&amp;msg=' . urlencode( sprintf( __( 'You are about to unarchive the site %s.' ), $blogname ) ) ), 'confirm') ) . '">' . __( 'Unarchive' ) . '</a></span>';
                                                                else
                                                                else
-                                                                       $actions['archive']     = '<span class="archive"><a href="' . esc_url( wp_nonce_url( network_admin_url( 'edit.php?action=confirm&amp;action2=archiveblog&amp;id=' . $blog['blog_id'] . '&amp;msg=' . urlencode( sprintf( __( 'You are about to archive the site %s.' ), $blogname ) ) ), 'confirm') ) . '">' . _x( 'Archive', 'verb; site' ) . '</a></span>';
+                                                                       $actions['archive']     = '<span class="archive"><a href="' . esc_url( wp_nonce_url( network_admin_url( 'sites.php?action=confirm&amp;action2=archiveblog&amp;id=' . $blog['blog_id'] . '&amp;msg=' . urlencode( sprintf( __( 'You are about to archive the site %s.' ), $blogname ) ) ), 'confirm') ) . '">' . _x( 'Archive', 'verb; site' ) . '</a></span>';
 
                                                                if ( get_blog_status( $blog['blog_id'], 'spam' ) == '1' )
 
                                                                if ( get_blog_status( $blog['blog_id'], 'spam' ) == '1' )
-                                                                       $actions['unspam']      = '<span class="spam"><a href="' . esc_url( wp_nonce_url( network_admin_url( 'edit.php?action=confirm&amp;action2=unspamblog&amp;id=' . $blog['blog_id'] . '&amp;msg=' . urlencode( sprintf( __( 'You are about to unspam the site %s.' ), $blogname ) ) ), 'confirm') ) . '">' . _x( 'Not Spam', 'site' ) . '</a></span>';
+                                                                       $actions['unspam']      = '<span class="spam"><a href="' . esc_url( wp_nonce_url( network_admin_url( 'sites.php?action=confirm&amp;action2=unspamblog&amp;id=' . $blog['blog_id'] . '&amp;msg=' . urlencode( sprintf( __( 'You are about to unspam the site %s.' ), $blogname ) ) ), 'confirm') ) . '">' . _x( 'Not Spam', 'site' ) . '</a></span>';
                                                                else
                                                                else
-                                                                       $actions['spam']        = '<span class="spam"><a href="' . esc_url( wp_nonce_url( network_admin_url( 'edit.php?action=confirm&amp;action2=spamblog&amp;id=' . $blog['blog_id'] . '&amp;msg=' . urlencode( sprintf( __( 'You are about to mark the site %s as spam.' ), $blogname ) ) ), 'confirm') ) . '">' . _x( 'Spam', 'site' ) . '</a></span>';
+                                                                       $actions['spam']        = '<span class="spam"><a href="' . esc_url( wp_nonce_url( network_admin_url( 'sites.php?action=confirm&amp;action2=spamblog&amp;id=' . $blog['blog_id'] . '&amp;msg=' . urlencode( sprintf( __( 'You are about to mark the site %s as spam.' ), $blogname ) ) ), 'confirm') ) . '">' . _x( 'Spam', 'site' ) . '</a></span>';
 
                                                                if ( current_user_can( 'delete_site', $blog['blog_id'] ) )
 
                                                                if ( current_user_can( 'delete_site', $blog['blog_id'] ) )
-                                                                       $actions['delete']      = '<span class="delete"><a href="' . esc_url( wp_nonce_url( network_admin_url( 'edit.php?action=confirm&amp;action2=deleteblog&amp;id=' . $blog['blog_id'] . '&amp;msg=' . urlencode( sprintf( __( 'You are about to delete the site %s.' ), $blogname ) ) ), 'confirm') ) . '">' . __( 'Delete' ) . '</a></span>';
+                                                                       $actions['delete']      = '<span class="delete"><a href="' . esc_url( wp_nonce_url( network_admin_url( 'sites.php?action=confirm&amp;action2=deleteblog&amp;id=' . $blog['blog_id'] . '&amp;msg=' . urlencode( sprintf( __( 'You are about to delete the site %s.' ), $blogname ) ) ), 'confirm') ) . '">' . __( 'Delete' ) . '</a></span>';
                                                        }
 
                                                        $actions['visit']       = "<span class='view'><a href='" . esc_url( get_home_url( $blog['blog_id'] ) ) . "' rel='permalink'>" . __( 'Visit' ) . '</a></span>';
                                                        }
 
                                                        $actions['visit']       = "<span class='view'><a href='" . esc_url( get_home_url( $blog['blog_id'] ) ) . "' rel='permalink'>" . __( 'Visit' ) . '</a></span>';
index 66c41c4c6bcb92ba74a3c6476a9edecca6bdeb35..4ebec5e74b0f3619ce0b2c66b32987750873cb45 100644 (file)
@@ -32,7 +32,8 @@ class WP_MS_Users_List_Table extends WP_List_Table {
                        'fields' => 'all_with_meta'
                );
 
                        'fields' => 'all_with_meta'
                );
 
-               $args['search'] = ltrim($args['search'], '*');
+               if ( wp_is_large_network( 'users' ) )
+                       $args['search'] = ltrim( $args['search'], '*' );
 
                if ( $role == 'super' ) {
                        $logins = implode( "', '", get_super_admins() );
 
                if ( $role == 'super' ) {
                        $logins = implode( "', '", get_super_admins() );
@@ -41,7 +42,7 @@ class WP_MS_Users_List_Table extends WP_List_Table {
 
                // If the network is large and a search is not being performed, show only the latest users with no paging in order
                // to avoid expensive count queries.
 
                // If the network is large and a search is not being performed, show only the latest users with no paging in order
                // to avoid expensive count queries.
-               if ( !$usersearch && ( get_blog_count() >= 10000 ) ) {
+               if ( !$usersearch && wp_is_large_network( 'users' ) ) {
                        if ( !isset($_REQUEST['orderby']) )
                                $_GET['orderby'] = $_REQUEST['orderby'] = 'id';
                        if ( !isset($_REQUEST['order']) )
                        if ( !isset($_REQUEST['orderby']) )
                                $_GET['orderby'] = $_REQUEST['orderby'] = 'id';
                        if ( !isset($_REQUEST['order']) )
@@ -188,8 +189,8 @@ class WP_MS_Users_List_Table extends WP_List_Table {
                                                                $actions = array();
                                                                $actions['edit'] = '<a href="' . $edit_link . '">' . __( 'Edit' ) . '</a>';
 
                                                                $actions = array();
                                                                $actions['edit'] = '<a href="' . $edit_link . '">' . __( 'Edit' ) . '</a>';
 
-                                                               if ( current_user_can( 'delete_user', $user->ID) && ! in_array( $user->user_login, $super_admins ) ) {
-                                                                       $actions['delete'] = '<a href="' . $delete = esc_url( network_admin_url( add_query_arg( '_wp_http_referer', urlencode( stripslashes( $_SERVER['REQUEST_URI'] ) ), wp_nonce_url( 'edit.php', 'deleteuser' ) . '&amp;action=deleteuser&amp;id=' . $user->ID ) ) ) . '" class="delete">' . __( 'Delete' ) . '</a>';
+                                                               if ( current_user_can( 'delete_user', $user->ID ) && ! in_array( $user->user_login, $super_admins ) ) {
+                                                                       $actions['delete'] = '<a href="' . $delete = esc_url( network_admin_url( add_query_arg( '_wp_http_referer', urlencode( stripslashes( $_SERVER['REQUEST_URI'] ) ), wp_nonce_url( 'users.php', 'deleteuser' ) . '&amp;action=deleteuser&amp;id=' . $user->ID ) ) ) . '" class="delete">' . __( 'Delete' ) . '</a>';
                                                                }
 
                                                                $actions = apply_filters( 'ms_user_row_actions', $actions, $user );
                                                                }
 
                                                                $actions = apply_filters( 'ms_user_row_actions', $actions, $user );
index 1f809b37ab73a8e75dd5189f9d7380ea8c74c966..71337eb996a5546a968b24696497db596f841634 100644 (file)
@@ -227,11 +227,11 @@ class WP_Plugin_Install_List_Table extends WP_List_Table {
                                                else
                                                        $star_url = admin_url( 'images/star.png?v=20110615' ); // 'Classic' Blue star
                                        ?>
                                                else
                                                        $star_url = admin_url( 'images/star.png?v=20110615' ); // 'Classic' Blue star
                                        ?>
-                                       <div class="star star5"><img src="<?php echo $star_url; ?>" alt="<?php _e( '5 stars' ) ?>" /></div>
-                                       <div class="star star4"><img src="<?php echo $star_url; ?>" alt="<?php _e( '4 stars' ) ?>" /></div>
-                                       <div class="star star3"><img src="<?php echo $star_url; ?>" alt="<?php _e( '3 stars' ) ?>" /></div>
-                                       <div class="star star2"><img src="<?php echo $star_url; ?>" alt="<?php _e( '2 stars' ) ?>" /></div>
-                                       <div class="star star1"><img src="<?php echo $star_url; ?>" alt="<?php _e( '1 star' ) ?>" /></div>
+                                       <div class="star star5"><img src="<?php echo $star_url; ?>" alt="<?php esc_attr_e( '5 stars' ) ?>" /></div>
+                                       <div class="star star4"><img src="<?php echo $star_url; ?>" alt="<?php esc_attr_e( '4 stars' ) ?>" /></div>
+                                       <div class="star star3"><img src="<?php echo $star_url; ?>" alt="<?php esc_attr_e( '3 stars' ) ?>" /></div>
+                                       <div class="star star2"><img src="<?php echo $star_url; ?>" alt="<?php esc_attr_e( '2 stars' ) ?>" /></div>
+                                       <div class="star star1"><img src="<?php echo $star_url; ?>" alt="<?php esc_attr_e( '1 star' ) ?>" /></div>
                                </div>
                        </td>
                        <td class="desc column-description"<?php echo $style['description']; ?>><?php echo $description, $author; ?></td>
                                </div>
                        </td>
                        <td class="desc column-description"<?php echo $style['description']; ?>><?php echo $description, $author; ?></td>
index 99ce21278e8587500b3c4c19bf97e83ef3687968..577750c98e2f05207ddb280d90a08ff474592bd0 100644 (file)
@@ -12,15 +12,9 @@ class WP_Plugins_List_Table extends WP_List_Table {
        function __construct() {
                global $status, $page;
 
        function __construct() {
                global $status, $page;
 
-               $default_status = get_user_option( 'plugins_last_view' );
-               if ( empty( $default_status ) )
-                       $default_status = 'all';
-               $status = isset( $_REQUEST['plugin_status'] ) ? $_REQUEST['plugin_status'] : $default_status;
-               if ( !in_array( $status, array( 'all', 'active', 'inactive', 'recently_activated', 'upgrade', 'network', 'mustuse', 'dropins', 'search' ) ) )
-                       $status = 'all';
-               if ( $status != $default_status && 'search' != $status )
-                       update_user_meta( get_current_user_id(), 'plugins_last_view', $status );
-
+               $status = 'all';
+               if ( isset( $_REQUEST['plugin_status'] ) && in_array( $_REQUEST['plugin_status'], array( 'active', 'inactive', 'recently_activated', 'upgrade', 'network', 'mustuse', 'dropins', 'search' ) ) )
+                       $status = $_REQUEST['plugin_status'];
 
                if ( isset($_REQUEST['s']) )
                        $_SERVER['REQUEST_URI'] = add_query_arg('s', stripslashes($_REQUEST['s']) );
 
                if ( isset($_REQUEST['s']) )
                        $_SERVER['REQUEST_URI'] = add_query_arg('s', stripslashes($_REQUEST['s']) );
index bdd24a62ecd2aa8001f35132b5068089fa4448a5..290939c23f76b723b850218ffc7e3f44e17dd322 100644 (file)
@@ -46,16 +46,9 @@ class WP_Posts_List_Table extends WP_List_Table {
        var $sticky_posts_count = 0;
 
        function __construct() {
        var $sticky_posts_count = 0;
 
        function __construct() {
-               global $post_type_object, $post_type, $wpdb;
-
-               if ( !isset( $_REQUEST['post_type'] ) )
-                       $post_type = 'post';
-               elseif ( in_array( $_REQUEST['post_type'], get_post_types( array( 'show_ui' => true ) ) ) )
-                       $post_type = $_REQUEST['post_type'];
-               else
-                       wp_die( __( 'Invalid post type' ) );
-               $_REQUEST['post_type'] = $post_type;
+               global $post_type_object, $wpdb;
 
 
+               $post_type = get_current_screen()->post_type;
                $post_type_object = get_post_type_object( $post_type );
 
                if ( !current_user_can( $post_type_object->cap->edit_others_posts ) ) {
                $post_type_object = get_post_type_object( $post_type );
 
                if ( !current_user_can( $post_type_object->cap->edit_others_posts ) ) {
@@ -86,7 +79,7 @@ class WP_Posts_List_Table extends WP_List_Table {
        }
 
        function prepare_items() {
        }
 
        function prepare_items() {
-               global $post_type_object, $post_type, $avail_post_stati, $wp_query, $per_page, $mode;
+               global $post_type_object, $avail_post_stati, $wp_query, $per_page, $mode;
 
                $avail_post_stati = wp_edit_posts_query();
 
 
                $avail_post_stati = wp_edit_posts_query();
 
@@ -94,6 +87,7 @@ class WP_Posts_List_Table extends WP_List_Table {
 
                $total_items = $this->hierarchical_display ? $wp_query->post_count : $wp_query->found_posts;
 
 
                $total_items = $this->hierarchical_display ? $wp_query->post_count : $wp_query->found_posts;
 
+               $post_type = $post_type_object->name;
                $per_page = $this->get_items_per_page( 'edit_' . $post_type . '_per_page' );
                $per_page = apply_filters( 'edit_posts_per_page', $per_page, $post_type );
 
                $per_page = $this->get_items_per_page( 'edit_' . $post_type . '_per_page' );
                $per_page = apply_filters( 'edit_posts_per_page', $per_page, $post_type );
 
@@ -127,7 +121,9 @@ class WP_Posts_List_Table extends WP_List_Table {
        }
 
        function get_views() {
        }
 
        function get_views() {
-               global $post_type, $post_type_object, $locked_post_status, $avail_post_stati;
+               global $post_type_object, $locked_post_status, $avail_post_stati;
+
+               $post_type = $post_type_object->name;
 
                if ( !empty($locked_post_status) )
                        return array();
 
                if ( !empty($locked_post_status) )
                        return array();
@@ -202,15 +198,15 @@ class WP_Posts_List_Table extends WP_List_Table {
        }
 
        function extra_tablenav( $which ) {
        }
 
        function extra_tablenav( $which ) {
-               global $post_type, $post_type_object, $cat;
+               global $post_type_object, $cat;
 ?>
                <div class="alignleft actions">
 <?php
                if ( 'top' == $which && !is_singular() ) {
 
 ?>
                <div class="alignleft actions">
 <?php
                if ( 'top' == $which && !is_singular() ) {
 
-                       $this->months_dropdown( $post_type );
+                       $this->months_dropdown( $post_type_object->name );
 
 
-                       if ( is_object_in_taxonomy( $post_type, 'category' ) ) {
+                       if ( is_object_in_taxonomy( $post_type_object->name, 'category' ) ) {
                                $dropdown_options = array(
                                        'show_option_all' => __( 'View all categories' ),
                                        'hide_empty' => 0,
                                $dropdown_options = array(
                                        'show_option_all' => __( 'View all categories' ),
                                        'hide_empty' => 0,
@@ -463,23 +459,22 @@ class WP_Posts_List_Table extends WP_List_Table {
        }
 
        function single_row( $a_post, $level = 0 ) {
        }
 
        function single_row( $a_post, $level = 0 ) {
-               global $post, $current_screen, $mode;
-               static $rowclass;
+               global $post, $mode;
+               static $alternate;
 
                $global_post = $post;
                $post = $a_post;
                setup_postdata( $post );
 
 
                $global_post = $post;
                $post = $a_post;
                setup_postdata( $post );
 
-               $rowclass = 'alternate' == $rowclass ? '' : 'alternate';
-               $post_owner = ( get_current_user_id() == $post->post_author ? 'self' : 'other' );
                $edit_link = get_edit_post_link( $post->ID );
                $title = _draft_or_post_title();
                $post_type_object = get_post_type_object( $post->post_type );
                $can_edit_post = current_user_can( $post_type_object->cap->edit_post, $post->ID );
                $edit_link = get_edit_post_link( $post->ID );
                $title = _draft_or_post_title();
                $post_type_object = get_post_type_object( $post->post_type );
                $can_edit_post = current_user_can( $post_type_object->cap->edit_post, $post->ID );
-               $post_format = get_post_format( $post->ID );
-               $post_format_class = ( $post_format && !is_wp_error($post_format) ) ? 'format-' . sanitize_html_class( $post_format ) : 'format-default';
+
+               $alternate = 'alternate' == $alternate ? '' : 'alternate';
+               $classes = $alternate . ' iedit author-' . ( get_current_user_id() == $post->post_author ? 'self' : 'other' );
        ?>
        ?>
-               <tr id='post-<?php echo $post->ID; ?>' class='<?php echo trim( $rowclass . ' author-' . $post_owner . ' status-' . $post->post_status . ' ' . $post_format_class); ?> iedit' valign="top">
+               <tr id="post-<?php echo $post->ID; ?>" class="<?php echo implode( ' ', get_post_class( $classes, $post->ID ) ); ?>" valign="top">
        <?php
 
                list( $columns, $hidden ) = $this->get_column_info();
        <?php
 
                list( $columns, $hidden ) = $this->get_column_info();
@@ -551,7 +546,7 @@ class WP_Posts_List_Table extends WP_List_Table {
                                                $actions['delete'] = "<a class='submitdelete' title='" . esc_attr( __( 'Delete this item permanently' ) ) . "' href='" . get_delete_post_link( $post->ID, '', true ) . "'>" . __( 'Delete Permanently' ) . "</a>";
                                }
                                if ( $post_type_object->public ) {
                                                $actions['delete'] = "<a class='submitdelete' title='" . esc_attr( __( 'Delete this item permanently' ) ) . "' href='" . get_delete_post_link( $post->ID, '', true ) . "'>" . __( 'Delete Permanently' ) . "</a>";
                                }
                                if ( $post_type_object->public ) {
-                                       if ( in_array( $post->post_status, array( 'pending', 'draft' ) ) ) {
+                                       if ( in_array( $post->post_status, array( 'pending', 'draft', 'future' ) ) ) {
                                                if ( $can_edit_post )
                                                        $actions['view'] = '<a href="' . esc_url( add_query_arg( 'preview', 'true', get_permalink( $post->ID ) ) ) . '" title="' . esc_attr( sprintf( __( 'Preview &#8220;%s&#8221;' ), $title ) ) . '" rel="permalink">' . __( 'Preview' ) . '</a>';
                                        } elseif ( 'trash' != $post->post_status ) {
                                                if ( $can_edit_post )
                                                        $actions['view'] = '<a href="' . esc_url( add_query_arg( 'preview', 'true', get_permalink( $post->ID ) ) ) . '" title="' . esc_attr( sprintf( __( 'Preview &#8220;%s&#8221;' ), $title ) ) . '" rel="permalink">' . __( 'Preview' ) . '</a>';
                                        } elseif ( 'trash' != $post->post_status ) {
@@ -839,14 +834,23 @@ class WP_Posts_List_Table extends WP_List_Table {
        <?php
                if ( post_type_supports( $screen->post_type, 'author' ) && $bulk )
                        echo $authors_dropdown;
        <?php
                if ( post_type_supports( $screen->post_type, 'author' ) && $bulk )
                        echo $authors_dropdown;
-       ?>
 
 
-       <?php if ( $post_type_object->hierarchical ) : ?>
+               if ( post_type_supports( $screen->post_type, 'page-attributes' ) ) :
 
 
+                       if ( $post_type_object->hierarchical ) :
+               ?>
                        <label>
                                <span class="title"><?php _e( 'Parent' ); ?></span>
        <?php
                        <label>
                                <span class="title"><?php _e( 'Parent' ); ?></span>
        <?php
-               $dropdown_args = array( 'post_type' => $post_type_object->name, 'selected' => $post->post_parent, 'name' => 'post_parent', 'show_option_none' => __( 'Main Page (no parent)' ), 'option_none_value' => 0, 'sort_column'=> 'menu_order, post_title' );
+               $dropdown_args = array(
+                       'post_type'         => $post_type_object->name,
+                       'selected'          => $post->post_parent,
+                       'name'              => 'post_parent',
+                       'show_option_none'  => __( 'Main Page (no parent)' ),
+                       'option_none_value' => 0,
+                       'sort_column'       => 'menu_order, post_title',
+               );
+
                if ( $bulk )
                        $dropdown_args['show_option_no_change'] =  __( '&mdash; No Change &mdash;' );
                $dropdown_args = apply_filters( 'quick_edit_dropdown_pages_args', $dropdown_args );
                if ( $bulk )
                        $dropdown_args['show_option_no_change'] =  __( '&mdash; No Change &mdash;' );
                $dropdown_args = apply_filters( 'quick_edit_dropdown_pages_args', $dropdown_args );
@@ -854,7 +858,9 @@ class WP_Posts_List_Table extends WP_List_Table {
        ?>
                        </label>
 
        ?>
                        </label>
 
-       <?php if ( post_type_supports( $screen->post_type, 'page-attributes' ) ) :
+       <?php
+                       endif; // hierarchical
+
                        if ( !$bulk ) : ?>
 
                        <label>
                        if ( !$bulk ) : ?>
 
                        <label>
@@ -862,7 +868,10 @@ class WP_Posts_List_Table extends WP_List_Table {
                                <span class="input-text-wrap"><input type="text" name="menu_order" class="inline-edit-menu-order-input" value="<?php echo $post->menu_order ?>" /></span>
                        </label>
 
                                <span class="input-text-wrap"><input type="text" name="menu_order" class="inline-edit-menu-order-input" value="<?php echo $post->menu_order ?>" /></span>
                        </label>
 
-       <?php   endif; // !$bulk ?>
+       <?php   endif; // !$bulk
+
+                       if ( 'page' == $screen->post_type ) :
+       ?>
 
                        <label>
                                <span class="title"><?php _e( 'Template' ); ?></span>
 
                        <label>
                                <span class="title"><?php _e( 'Template' ); ?></span>
@@ -876,17 +885,19 @@ class WP_Posts_List_Table extends WP_List_Table {
                        </label>
 
        <?php
                        </label>
 
        <?php
-               endif; // post_type_supports page-attributes
-       endif; // $post_type_object->hierarchical ?>
+                       endif; // page post_type
+               endif; // page-attributes
+       ?>
 
        <?php if ( count( $flat_taxonomies ) && !$bulk ) : ?>
 
        <?php foreach ( $flat_taxonomies as $taxonomy ) : ?>
 
        <?php if ( count( $flat_taxonomies ) && !$bulk ) : ?>
 
        <?php foreach ( $flat_taxonomies as $taxonomy ) : ?>
-
+               <?php if ( current_user_can( $taxonomy->cap->assign_terms ) ) : ?>
                        <label class="inline-edit-tags">
                                <span class="title"><?php echo esc_html( $taxonomy->labels->name ) ?></span>
                                <textarea cols="22" rows="1" name="tax_input[<?php echo esc_attr( $taxonomy->name )?>]" class="tax_input_<?php echo esc_attr( $taxonomy->name )?>"></textarea>
                        </label>
                        <label class="inline-edit-tags">
                                <span class="title"><?php echo esc_html( $taxonomy->labels->name ) ?></span>
                                <textarea cols="22" rows="1" name="tax_input[<?php echo esc_attr( $taxonomy->name )?>]" class="tax_input_<?php echo esc_attr( $taxonomy->name )?>"></textarea>
                        </label>
+               <?php endif; ?>
 
        <?php endforeach; //$flat_taxonomies as $taxonomy ?>
 
 
        <?php endforeach; //$flat_taxonomies as $taxonomy ?>
 
@@ -981,6 +992,28 @@ class WP_Posts_List_Table extends WP_List_Table {
 
                        </div>
 
 
                        </div>
 
+       <?php if ( post_type_supports( $screen->post_type, 'post-formats' ) && current_theme_supports( 'post-formats' ) ) :
+               $post_formats = get_theme_support( 'post-formats' );
+               if ( isset( $post_formats[0] ) && is_array( $post_formats[0] ) ) :
+                       $all_post_formats = get_post_format_strings(); ?>
+                       <div class="inline-edit-group">
+                               <label class="alignleft" for="post_format">
+                               <span class="title"><?php _e( 'Post Format' ); ?></span>
+                               <select name="post_format">
+                               <?php if ( $bulk ) : ?>
+                                       <option value="-1"><?php _e( '&mdash; No Change &mdash;' ); ?></option>
+                               <?php endif; ?>
+                                       <option value="0"><?php _ex( 'Standard', 'Post format' ); ?></option>
+                               <?php foreach ( $all_post_formats as $slug => $format ):
+                                       if ( $slug != 'standard' ) : ?>
+                                       <option value="<?php echo esc_attr( $slug ); ?>"<?php if ( ! in_array( $slug, $post_formats[0] ) ) echo ' class="unsupported"'; ?>><?php echo esc_html( $format ); ?></option>
+                                       <?php endif;
+                               endforeach; ?>
+                               </select></label>
+                       </div>
+               <?php endif; ?>
+       <?php endif; // post-formats ?>
+
                </div></fieldset>
 
        <?php
                </div></fieldset>
 
        <?php
@@ -993,12 +1026,12 @@ class WP_Posts_List_Table extends WP_List_Table {
                }
        ?>
                <p class="submit inline-edit-save">
                }
        ?>
                <p class="submit inline-edit-save">
-                       <a accesskey="c" href="#inline-edit" title="<?php _e( 'Cancel' ); ?>" class="button-secondary cancel alignleft"><?php _e( 'Cancel' ); ?></a>
+                       <a accesskey="c" href="#inline-edit" title="<?php esc_attr_e( 'Cancel' ); ?>" class="button-secondary cancel alignleft"><?php _e( 'Cancel' ); ?></a>
                        <?php if ( ! $bulk ) {
                                wp_nonce_field( 'inlineeditnonce', '_inline_edit', false );
                                $update_text = __( 'Update' );
                                ?>
                        <?php if ( ! $bulk ) {
                                wp_nonce_field( 'inlineeditnonce', '_inline_edit', false );
                                $update_text = __( 'Update' );
                                ?>
-                               <a accesskey="s" href="#inline-edit" title="<?php _e( 'Update' ); ?>" class="button-primary save alignright"><?php echo esc_attr( $update_text ); ?></a>
+                               <a accesskey="s" href="#inline-edit" title="<?php esc_attr_e( 'Update' ); ?>" class="button-primary save alignright"><?php echo esc_attr( $update_text ); ?></a>
                                <img class="waiting" style="display:none;" src="<?php echo esc_url( admin_url( 'images/wpspin_light.gif' ) ); ?>" alt="" />
                        <?php } else {
                                submit_button( __( 'Update' ), 'button-primary alignright', 'bulk_edit', false, array( 'accesskey' => 's' ) );
                                <img class="waiting" style="display:none;" src="<?php echo esc_url( admin_url( 'images/wpspin_light.gif' ) ); ?>" alt="" />
                        <?php } else {
                                submit_button( __( 'Update' ), 'button-primary alignright', 'bulk_edit', false, array( 'accesskey' => 's' ) );
index 7778d8862c5a0c69c7ebac7d99823b3dcd1b4d53..d7cb5261fe303ed981bc9a7061d9a644e16b8321 100644 (file)
@@ -24,7 +24,7 @@ class WP_Terms_List_Table extends WP_List_Table {
 
                $tax = get_taxonomy( $taxonomy );
 
 
                $tax = get_taxonomy( $taxonomy );
 
-               if ( empty( $post_type ) || !in_array( $post_type, get_post_types( array( 'public' => true ) ) ) )
+               if ( empty( $post_type ) || !in_array( $post_type, get_post_types( array( 'show_ui' => true ) ) ) )
                        $post_type = 'post';
 
                parent::__construct( array(
                        $post_type = 'post';
 
                parent::__construct( array(
@@ -93,7 +93,7 @@ class WP_Terms_List_Table extends WP_List_Table {
        }
 
        function get_columns() {
        }
 
        function get_columns() {
-               global $taxonomy, $typenow;
+               global $taxonomy, $post_type;
 
                $columns = array(
                        'cb'          => '<input type="checkbox" />',
 
                $columns = array(
                        'cb'          => '<input type="checkbox" />',
@@ -105,7 +105,6 @@ class WP_Terms_List_Table extends WP_List_Table {
                if ( 'link_category' == $taxonomy ) {
                        $columns['links'] = __( 'Links' );
                } else {
                if ( 'link_category' == $taxonomy ) {
                        $columns['links'] = __( 'Links' );
                } else {
-                       $post_type = empty( $typenow ) ? 'post' : $typenow;
                        $post_type_object = get_post_type_object( $post_type );
                        $columns['posts'] = $post_type_object ? $post_type_object->labels->name : __( 'Posts' );
                }
                        $post_type_object = get_post_type_object( $post_type );
                        $columns['posts'] = $post_type_object ? $post_type_object->labels->name : __( 'Posts' );
                }
@@ -290,7 +289,8 @@ class WP_Terms_List_Table extends WP_List_Table {
 
                $tax = get_taxonomy( $taxonomy );
 
 
                $tax = get_taxonomy( $taxonomy );
 
-               if ( ! $tax->public )
+               $ptype_object = get_post_type_object( $post_type );
+               if ( ! $ptype_object->show_ui )
                        return $count;
 
                if ( $tax->query_var ) {
                        return $count;
 
                if ( $tax->query_var ) {
@@ -299,7 +299,8 @@ class WP_Terms_List_Table extends WP_List_Table {
                        $args = array( 'taxonomy' => $tax->name, 'term' => $tag->slug );
                }
 
                        $args = array( 'taxonomy' => $tax->name, 'term' => $tag->slug );
                }
 
-               $args['post_type'] = $post_type;
+               if ( 'post' != $post_type )
+                       $args['post_type'] = $post_type;
 
                return "<a href='" . esc_url ( add_query_arg( $args, 'edit.php' ) ) . "'>$count</a>";
        }
 
                return "<a href='" . esc_url ( add_query_arg( $args, 'edit.php' ) ) . "'>$count</a>";
        }
@@ -323,7 +324,7 @@ class WP_Terms_List_Table extends WP_List_Table {
         * @since 3.1.0
         */
        function inline_edit() {
         * @since 3.1.0
         */
        function inline_edit() {
-               global $tax;
+               global $post_type, $tax;
 
                if ( ! current_user_can( $tax->cap->edit_terms ) )
                        return;
 
                if ( ! current_user_can( $tax->cap->edit_terms ) )
                        return;
@@ -362,13 +363,14 @@ class WP_Terms_List_Table extends WP_List_Table {
        ?>
 
                <p class="inline-edit-save submit">
        ?>
 
                <p class="inline-edit-save submit">
-                       <a accesskey="c" href="#inline-edit" title="<?php _e( 'Cancel' ); ?>" class="cancel button-secondary alignleft"><?php _e( 'Cancel' ); ?></a>
+                       <a accesskey="c" href="#inline-edit" title="<?php esc_attr_e( 'Cancel' ); ?>" class="cancel button-secondary alignleft"><?php _e( 'Cancel' ); ?></a>
                        <?php $update_text = $tax->labels->update_item; ?>
                        <a accesskey="s" href="#inline-edit" title="<?php echo esc_attr( $update_text ); ?>" class="save button-primary alignright"><?php echo $update_text; ?></a>
                        <img class="waiting" style="display:none;" src="<?php echo esc_url( admin_url( 'images/wpspin_light.gif' ) ); ?>" alt="" />
                        <span class="error" style="display:none;"></span>
                        <?php wp_nonce_field( 'taxinlineeditnonce', '_inline_edit', false ); ?>
                        <input type="hidden" name="taxonomy" value="<?php echo esc_attr( $tax->name ); ?>" />
                        <?php $update_text = $tax->labels->update_item; ?>
                        <a accesskey="s" href="#inline-edit" title="<?php echo esc_attr( $update_text ); ?>" class="save button-primary alignright"><?php echo $update_text; ?></a>
                        <img class="waiting" style="display:none;" src="<?php echo esc_url( admin_url( 'images/wpspin_light.gif' ) ); ?>" alt="" />
                        <span class="error" style="display:none;"></span>
                        <?php wp_nonce_field( 'taxinlineeditnonce', '_inline_edit', false ); ?>
                        <input type="hidden" name="taxonomy" value="<?php echo esc_attr( $tax->name ); ?>" />
+                       <input type="hidden" name="post_type" value="<?php echo esc_attr( $post_type ); ?>" />
                        <br class="clear" />
                </p>
                </td></tr>
                        <br class="clear" />
                </p>
                </td></tr>
index 7e44267c8223927dfcdccc937e2a14d1ff5720b0..66f7797caaed9c758b069f09aa6de0675e717a48 100644 (file)
@@ -22,7 +22,7 @@ class WP_Theme_Install_List_Table extends WP_List_Table {
 
                $paged = $this->get_pagenum();
 
 
                $paged = $this->get_pagenum();
 
-               $per_page = 30;
+               $per_page = 36;
 
                // These are the tabs which are shown on the page,
                $tabs = array();
 
                // These are the tabs which are shown on the page,
                $tabs = array();
@@ -130,7 +130,7 @@ class WP_Theme_Install_List_Table extends WP_List_Table {
 
                // wp_nonce_field( "fetch-list-" . get_class( $this ), '_ajax_fetch_list_nonce' );
 ?>
 
                // wp_nonce_field( "fetch-list-" . get_class( $this ), '_ajax_fetch_list_nonce' );
 ?>
-               <div class="tablenav top">
+               <div class="tablenav top themes">
                        <div class="alignleft actions">
                                <?php do_action( 'install_themes_table_header' ); ?>
                        </div>
                        <div class="alignleft actions">
                                <?php do_action( 'install_themes_table_header' ); ?>
                        </div>
@@ -139,13 +139,11 @@ class WP_Theme_Install_List_Table extends WP_List_Table {
                        <br class="clear" />
                </div>
 
                        <br class="clear" />
                </div>
 
-               <table id="availablethemes" cellspacing="0" cellpadding="0">
-                       <tbody id="the-list" class="list:themes">
-                               <?php $this->display_rows_or_placeholder(); ?>
-                       </tbody>
-               </table>
+               <div id="availablethemes">
+                       <?php $this->display_rows_or_placeholder(); ?>
+               </div>
 
 
-               <div class="tablenav bottom">
+               <div class="tablenav bottom themes">
                        <?php $this->pagination( 'bottom' ); ?>
                        <img src="<?php echo esc_url( admin_url( 'images/wpspin_light.gif' ) ); ?>" class="ajax-loading list-ajax-loading" alt="" />
                        <br class="clear" />
                        <?php $this->pagination( 'bottom' ); ?>
                        <img src="<?php echo esc_url( admin_url( 'images/wpspin_light.gif' ) ); ?>" class="ajax-loading list-ajax-loading" alt="" />
                        <br class="clear" />
@@ -155,30 +153,16 @@ class WP_Theme_Install_List_Table extends WP_List_Table {
 
        function display_rows() {
                $themes = $this->items;
 
        function display_rows() {
                $themes = $this->items;
+               $theme_names = array_keys( $themes );
 
 
-               $rows = ceil( count( $themes ) / 3 );
-               $table = array();
-               $theme_keys = array_keys( $themes );
-               for ( $row = 1; $row <= $rows; $row++ )
-                       for ( $col = 1; $col <= 3; $col++ )
-                               $table[$row][$col] = array_shift( $theme_keys );
-
-               foreach ( $table as $row => $cols ) {
-                       echo "\t<tr>\n";
-                       foreach ( $cols as $col => $theme_index ) {
+               foreach ( $theme_names as $theme_name ) {
                                $class = array( 'available-theme' );
                                $class = array( 'available-theme' );
-                               if ( $row == 1 ) $class[] = 'top';
-                               if ( $col == 1 ) $class[] = 'left';
-                               if ( $row == $rows ) $class[] = 'bottom';
-                               if ( $col == 3 ) $class[] = 'right';
                                ?>
                                ?>
-                               <td class="<?php echo join( ' ', $class ); ?>"><?php
-                                       if ( isset( $themes[$theme_index] ) )
-                                               display_theme( $themes[$theme_index] );
-                               ?></td>
-                       <?php } // end foreach $cols
-                       echo "\t</tr>\n";
-               } // end foreach $table
+                               <div class="<?php echo join( ' ', $class ); ?>"><?php
+                                       if ( isset( $themes[$theme_name] ) )
+                                               display_theme( $themes[$theme_name] );
+                               ?></div>
+               <?php } // end foreach $theme_names
        }
 }
 
        }
 }
 
index 5cb7648e673a62001fed80dc3c7c2c5b63a2a206..4839b504e27938e4ec612d4c4727f9edfd6dbac7 100644 (file)
@@ -47,7 +47,7 @@ class WP_Themes_List_Table extends WP_List_Table {
                unset( $themes[$ct->name] );
                uksort( $themes, "strnatcasecmp" );
 
                unset( $themes[$ct->name] );
                uksort( $themes, "strnatcasecmp" );
 
-               $per_page = 15;
+               $per_page = 24;
                $page = $this->get_pagenum();
 
                $start = ( $page - 1 ) * $per_page;
                $page = $this->get_pagenum();
 
                $start = ( $page - 1 ) * $per_page;
@@ -92,7 +92,7 @@ class WP_Themes_List_Table extends WP_List_Table {
                if ( $this->get_pagination_arg( 'total_pages' ) <= 1 )
                        return;
                ?>
                if ( $this->get_pagination_arg( 'total_pages' ) <= 1 )
                        return;
                ?>
-               <div class="tablenav <?php echo $which; ?>">
+               <div class="tablenav themes <?php echo $which; ?>">
                        <?php $this->pagination( $which ); ?>
                   <img src="<?php echo esc_url( admin_url( 'images/wpspin_light.gif' ) ); ?>" class="ajax-loading list-ajax-loading" alt="" />
                  <br class="clear" />
                        <?php $this->pagination( $which ); ?>
                   <img src="<?php echo esc_url( admin_url( 'images/wpspin_light.gif' ) ); ?>" class="ajax-loading list-ajax-loading" alt="" />
                  <br class="clear" />
@@ -105,11 +105,9 @@ class WP_Themes_List_Table extends WP_List_Table {
 ?>
                <?php $this->tablenav( 'top' ); ?>
 
 ?>
                <?php $this->tablenav( 'top' ); ?>
 
-               <table id="availablethemes" cellspacing="0" cellpadding="0">
-                       <tbody id="the-list" class="list:themes">
-                               <?php $this->display_rows_or_placeholder(); ?>
-                       </tbody>
-               </table>
+               <div id="availablethemes">
+                       <?php $this->display_rows_or_placeholder(); ?>
+               </div>
 
                <?php $this->tablenav( 'bottom' ); ?>
 <?php
 
                <?php $this->tablenav( 'bottom' ); ?>
 <?php
@@ -124,25 +122,11 @@ class WP_Themes_List_Table extends WP_List_Table {
                $theme_names = array_keys( $themes );
                natcasesort( $theme_names );
 
                $theme_names = array_keys( $themes );
                natcasesort( $theme_names );
 
-               $table = array();
-               $rows = ceil( count( $theme_names ) / 3 );
-               for ( $row = 1; $row <= $rows; $row++ )
-                       for ( $col = 1; $col <= 3; $col++ )
-                               $table[$row][$col] = array_shift( $theme_names );
-
-               foreach ( $table as $row => $cols ) {
-?>
-<tr>
-<?php
-foreach ( $cols as $col => $theme_name ) {
-       $class = array( 'available-theme' );
-       if ( $row == 1 ) $class[] = 'top';
-       if ( $col == 1 ) $class[] = 'left';
-       if ( $row == $rows ) $class[] = 'bottom';
-       if ( $col == 3 ) $class[] = 'right';
-?>
-       <td class="<?php echo join( ' ', $class ); ?>">
-<?php if ( !empty( $theme_name ) ) :
+       foreach ( $theme_names as $theme_name ) {
+               $class = array( 'available-theme' );
+       ?>
+       <div class="<?php echo join( ' ', $class ); ?>">
+       <?php if ( !empty( $theme_name ) ) :
        $template = $themes[$theme_name]['Template'];
        $stylesheet = $themes[$theme_name]['Stylesheet'];
        $title = $themes[$theme_name]['Title'];
        $template = $themes[$theme_name]['Template'];
        $stylesheet = $themes[$theme_name]['Stylesheet'];
        $title = $themes[$theme_name]['Title'];
@@ -194,10 +178,8 @@ foreach ( $cols as $col => $theme_name ) {
 <?php endif; ?>
                <?php theme_update_available( $themes[$theme_name] ); ?>
 <?php endif; // end if not empty theme_name ?>
 <?php endif; ?>
                <?php theme_update_available( $themes[$theme_name] ); ?>
 <?php endif; // end if not empty theme_name ?>
-       </td>
-<?php } // end foreach $cols ?>
-</tr>
-<?php } // end foreach $table
+       </div>
+<?php } // end foreach $theme_names
        }
 
        function search_theme( $theme ) {
        }
 
        function search_theme( $theme ) {
index 1cf4c41c2332854ccc4760933998c0b6897de6e0..e61e0ef5e45d0d06eec18f81052578d0f4f24ea2 100644 (file)
@@ -52,7 +52,7 @@ class WP_Upgrader {
                $this->strings['installing_package'] = __('Installing the latest version&#8230;');
                $this->strings['folder_exists'] = __('Destination folder already exists.');
                $this->strings['mkdir_failed'] = __('Could not create directory.');
                $this->strings['installing_package'] = __('Installing the latest version&#8230;');
                $this->strings['folder_exists'] = __('Destination folder already exists.');
                $this->strings['mkdir_failed'] = __('Could not create directory.');
-               $this->strings['bad_package'] = __('Incompatible Archive.');
+               $this->strings['incompatible_archive'] = __('The package could not be installed.');
 
                $this->strings['maintenance_start'] = __('Enabling Maintenance mode&#8230;');
                $this->strings['maintenance_end'] = __('Disabling Maintenance mode&#8230;');
 
                $this->strings['maintenance_start'] = __('Enabling Maintenance mode&#8230;');
                $this->strings['maintenance_end'] = __('Disabling Maintenance mode&#8230;');
@@ -153,6 +153,9 @@ class WP_Upgrader {
 
                if ( is_wp_error($result) ) {
                        $wp_filesystem->delete($working_dir, true);
 
                if ( is_wp_error($result) ) {
                        $wp_filesystem->delete($working_dir, true);
+                       if ( 'incompatible_archive' == $result->get_error_code() ) {
+                               return new WP_Error( 'incompatible_archive', $this->strings['incompatible_archive'], $result->get_error_data() );
+                       }
                        return $result;
                }
 
                        return $result;
                }
 
@@ -190,8 +193,9 @@ class WP_Upgrader {
                if ( 1 == count($source_files) && $wp_filesystem->is_dir( trailingslashit($source) . $source_files[0] . '/') ) //Only one folder? Then we want its contents.
                        $source = trailingslashit($source) . trailingslashit($source_files[0]);
                elseif ( count($source_files) == 0 )
                if ( 1 == count($source_files) && $wp_filesystem->is_dir( trailingslashit($source) . $source_files[0] . '/') ) //Only one folder? Then we want its contents.
                        $source = trailingslashit($source) . trailingslashit($source_files[0]);
                elseif ( count($source_files) == 0 )
-                       return new WP_Error('bad_package', $this->strings['bad_package']); //There are no files?
-               //else //Its only a single file, The upgrader will use the foldername of this file as the destination folder. foldername is based on zip filename.
+                       return new WP_Error( 'incompatible_archive', $this->strings['incompatible_archive'], __( 'The plugin contains no files.' ) ); //There are no files?
+               else //Its only a single file, The upgrader will use the foldername of this file as the destination folder. foldername is based on zip filename.
+                       $source = trailingslashit($source);
 
                //Hook ability to change the source file location..
                $source = apply_filters('upgrader_source_selection', $source, $remote_source, $this);
 
                //Hook ability to change the source file location..
                $source = apply_filters('upgrader_source_selection', $source, $remote_source, $this);
@@ -209,7 +213,7 @@ class WP_Upgrader {
                }
 
                if ( $clear_destination ) {
                }
 
                if ( $clear_destination ) {
-                       //We're going to clear the destination if theres something there
+                       //We're going to clear the destination if there's something there
                        $this->skin->feedback('remove_old');
                        $removed = true;
                        if ( $wp_filesystem->exists($remote_destination) )
                        $this->skin->feedback('remove_old');
                        $removed = true;
                        if ( $wp_filesystem->exists($remote_destination) )
@@ -221,7 +225,7 @@ class WP_Upgrader {
                        else if ( ! $removed )
                                return new WP_Error('remove_old_failed', $this->strings['remove_old_failed']);
                } elseif ( $wp_filesystem->exists($remote_destination) ) {
                        else if ( ! $removed )
                                return new WP_Error('remove_old_failed', $this->strings['remove_old_failed']);
                } elseif ( $wp_filesystem->exists($remote_destination) ) {
-                       //If we're not clearing the destination folder and something exists there allready, Bail.
+                       //If we're not clearing the destination folder and something exists there already, Bail.
                        //But first check to see if there are actually any files in the folder.
                        $_files = $wp_filesystem->dirlist($remote_destination);
                        if ( ! empty($_files) ) {
                        //But first check to see if there are actually any files in the folder.
                        $_files = $wp_filesystem->dirlist($remote_destination);
                        if ( ! empty($_files) ) {
@@ -301,7 +305,7 @@ class WP_Upgrader {
 
                $delete_package = ($download != $package); // Do not delete a "local" file
 
 
                $delete_package = ($download != $package); // Do not delete a "local" file
 
-               //Unzip's the file into a temporary directory
+               //Unzips the file into a temporary directory
                $working_dir = $this->unpack_package( $download, $delete_package );
                if ( is_wp_error($working_dir) ) {
                        $this->skin->error($working_dir);
                $working_dir = $this->unpack_package( $download, $delete_package );
                if ( is_wp_error($working_dir) ) {
                        $this->skin->error($working_dir);
@@ -322,7 +326,7 @@ class WP_Upgrader {
                        $this->skin->error($result);
                        $this->skin->feedback('process_failed');
                } else {
                        $this->skin->error($result);
                        $this->skin->feedback('process_failed');
                } else {
-                       //Install Suceeded
+                       //Install Succeeded
                        $this->skin->feedback('process_success');
                }
                $this->skin->after();
                        $this->skin->feedback('process_success');
                }
                $this->skin->after();
@@ -391,6 +395,8 @@ class Plugin_Upgrader extends WP_Upgrader {
                $this->init();
                $this->install_strings();
 
                $this->init();
                $this->install_strings();
 
+               add_filter('upgrader_source_selection', array(&$this, 'check_package') );
+
                $this->run(array(
                                        'package' => $package,
                                        'destination' => WP_PLUGIN_DIR,
                $this->run(array(
                                        'package' => $package,
                                        'destination' => WP_PLUGIN_DIR,
@@ -399,9 +405,15 @@ class Plugin_Upgrader extends WP_Upgrader {
                                        'hook_extra' => array()
                                        ));
 
                                        'hook_extra' => array()
                                        ));
 
+               remove_filter('upgrader_source_selection', array(&$this, 'check_package') );
+
+               if ( ! $this->result || is_wp_error($this->result) )
+                       return $this->result;
+
                // Force refresh of plugin update information
                delete_site_transient('update_plugins');
 
                // Force refresh of plugin update information
                delete_site_transient('update_plugins');
 
+               return true;
        }
 
        function upgrade($plugin) {
        }
 
        function upgrade($plugin) {
@@ -423,7 +435,7 @@ class Plugin_Upgrader extends WP_Upgrader {
 
                add_filter('upgrader_pre_install', array(&$this, 'deactivate_plugin_before_upgrade'), 10, 2);
                add_filter('upgrader_clear_destination', array(&$this, 'delete_old_plugin'), 10, 4);
 
                add_filter('upgrader_pre_install', array(&$this, 'deactivate_plugin_before_upgrade'), 10, 2);
                add_filter('upgrader_clear_destination', array(&$this, 'delete_old_plugin'), 10, 4);
-               //'source_selection' => array(&$this, 'source_selection'), //theres a track ticket to move up the directory for zip's which are made a bit differently, useful for non-.org plugins.
+               //'source_selection' => array(&$this, 'source_selection'), //there's a trac ticket to move up the directory for zip's which are made a bit differently, useful for non-.org plugins.
 
                $this->run(array(
                                        'package' => $r->package,
 
                $this->run(array(
                                        'package' => $r->package,
@@ -435,7 +447,7 @@ class Plugin_Upgrader extends WP_Upgrader {
                                        )
                                ));
 
                                        )
                                ));
 
-               // Cleanup our hooks, incase something else does a upgrade on this connection.
+               // Cleanup our hooks, in case something else does a upgrade on this connection.
                remove_filter('upgrader_pre_install', array(&$this, 'deactivate_plugin_before_upgrade'));
                remove_filter('upgrader_clear_destination', array(&$this, 'delete_old_plugin'));
 
                remove_filter('upgrader_pre_install', array(&$this, 'deactivate_plugin_before_upgrade'));
                remove_filter('upgrader_clear_destination', array(&$this, 'delete_old_plugin'));
 
@@ -520,7 +532,7 @@ class Plugin_Upgrader extends WP_Upgrader {
 
                $this->skin->footer();
 
 
                $this->skin->footer();
 
-               // Cleanup our hooks, incase something else does a upgrade on this connection.
+               // Cleanup our hooks, in case something else does a upgrade on this connection.
                remove_filter('upgrader_clear_destination', array(&$this, 'delete_old_plugin'));
 
                // Force refresh of plugin update information
                remove_filter('upgrader_clear_destination', array(&$this, 'delete_old_plugin'));
 
                // Force refresh of plugin update information
@@ -529,6 +541,32 @@ class Plugin_Upgrader extends WP_Upgrader {
                return $results;
        }
 
                return $results;
        }
 
+       function check_package($source) {
+               global $wp_filesystem;
+
+               if ( is_wp_error($source) )
+                       return $source;
+
+               $working_directory = str_replace( $wp_filesystem->wp_content_dir(), trailingslashit(WP_CONTENT_DIR), $source);
+               if ( ! is_dir($working_directory) ) // Sanity check, if the above fails, lets not prevent installation.
+                       return $source;
+
+               // Check the folder contains at least 1 valid plugin.
+               $plugins_found = false;
+               foreach ( glob( $working_directory . '*.php' ) as $file ) {
+                       $info = get_plugin_data($file, false, false);
+                       if ( !empty( $info['Name'] ) ) {
+                               $plugins_found = true;
+                               break;
+                       }
+               }
+
+               if ( ! $plugins_found )
+                       return new WP_Error( 'incompatible_archive', $this->strings['incompatible_archive'], __('No valid plugins were found.') );
+
+               return $source;
+       }
+
        //return plugin info.
        function plugin_info() {
                if ( ! is_array($this->result) )
        //return plugin info.
        function plugin_info() {
                if ( ! is_array($this->result) )
@@ -604,6 +642,7 @@ class Plugin_Upgrader extends WP_Upgrader {
 class Theme_Upgrader extends WP_Upgrader {
 
        var $result;
 class Theme_Upgrader extends WP_Upgrader {
 
        var $result;
+       var $bulk = false;
 
        function upgrade_strings() {
                $this->strings['up_to_date'] = __('The theme is at the latest version.');
 
        function upgrade_strings() {
                $this->strings['up_to_date'] = __('The theme is at the latest version.');
@@ -630,6 +669,8 @@ class Theme_Upgrader extends WP_Upgrader {
                $this->init();
                $this->install_strings();
 
                $this->init();
                $this->install_strings();
 
+               add_filter('upgrader_source_selection', array(&$this, 'check_package') );
+
                $options = array(
                                                'package' => $package,
                                                'destination' => WP_CONTENT_DIR . '/themes',
                $options = array(
                                                'package' => $package,
                                                'destination' => WP_CONTENT_DIR . '/themes',
@@ -639,16 +680,15 @@ class Theme_Upgrader extends WP_Upgrader {
 
                $this->run($options);
 
 
                $this->run($options);
 
+               remove_filter('upgrader_source_selection', array(&$this, 'check_package') );
+
                if ( ! $this->result || is_wp_error($this->result) )
                        return $this->result;
 
                // Force refresh of theme update information
                delete_site_transient('update_themes');
 
                if ( ! $this->result || is_wp_error($this->result) )
                        return $this->result;
 
                // Force refresh of theme update information
                delete_site_transient('update_themes');
 
-               if ( empty($result['destination_name']) )
-                       return false;
-               else
-                       return $result['destination_name'];
+               return true;
        }
 
        function upgrade($theme) {
        }
 
        function upgrade($theme) {
@@ -684,6 +724,10 @@ class Theme_Upgrader extends WP_Upgrader {
 
                $this->run($options);
 
 
                $this->run($options);
 
+               remove_filter('upgrader_pre_install', array(&$this, 'current_before'), 10, 2);
+               remove_filter('upgrader_post_install', array(&$this, 'current_after'), 10, 2);
+               remove_filter('upgrader_clear_destination', array(&$this, 'delete_old_theme'), 10, 4);
+
                if ( ! $this->result || is_wp_error($this->result) )
                        return $this->result;
 
                if ( ! $this->result || is_wp_error($this->result) )
                        return $this->result;
 
@@ -769,7 +813,7 @@ class Theme_Upgrader extends WP_Upgrader {
 
                $this->skin->footer();
 
 
                $this->skin->footer();
 
-               // Cleanup our hooks, incase something else does a upgrade on this connection.
+               // Cleanup our hooks, in case something else does a upgrade on this connection.
                remove_filter('upgrader_pre_install', array(&$this, 'current_before'), 10, 2);
                remove_filter('upgrader_post_install', array(&$this, 'current_after'), 10, 2);
                remove_filter('upgrader_clear_destination', array(&$this, 'delete_old_theme'), 10, 4);
                remove_filter('upgrader_pre_install', array(&$this, 'current_before'), 10, 2);
                remove_filter('upgrader_post_install', array(&$this, 'current_after'), 10, 2);
                remove_filter('upgrader_clear_destination', array(&$this, 'delete_old_theme'), 10, 4);
@@ -780,6 +824,30 @@ class Theme_Upgrader extends WP_Upgrader {
                return $results;
        }
 
                return $results;
        }
 
+       function check_package($source) {
+               global $wp_filesystem;
+
+               if ( is_wp_error($source) )
+                       return $source;
+
+               // Check the folder contains a valid theme
+               $working_directory = str_replace( $wp_filesystem->wp_content_dir(), trailingslashit(WP_CONTENT_DIR), $source);
+               if ( ! is_dir($working_directory) ) // Sanity check, if the above fails, lets not prevent installation.
+                       return $source;
+
+               if ( ! file_exists( $working_directory . 'style.css' ) ) // A proper archive should have a style.css file in the single subdirectory
+                       return new WP_Error( 'incompatible_archive', $this->strings['incompatible_archive'], __('The theme is missing the <code>style.css</code> stylesheet.') );
+
+               $info = get_theme_data( $working_directory . 'style.css' );
+               if ( empty($info['Name']) )
+                       return new WP_Error( 'incompatible_archive', $this->strings['incompatible_archive'], __("The <code>style.css</code> stylesheet doesn't contain a valid theme header.") );
+
+               if ( empty($info['Template']) && ! file_exists( $working_directory . 'index.php' ) ) // If no template is set, it must have at least an index.php to be legit.
+                       return new WP_Error( 'incompatible_archive', $this->strings['incompatible_archive'], __('The theme is missing the <code>index.php</code> file.') );
+
+               return $source;
+       }
+
        function current_before($return, $theme) {
 
                if ( is_wp_error($return) )
        function current_before($return, $theme) {
 
                if ( is_wp_error($return) )
@@ -795,6 +863,7 @@ class Theme_Upgrader extends WP_Upgrader {
 
                return $return;
        }
 
                return $return;
        }
+
        function current_after($return, $theme) {
                if ( is_wp_error($return) )
                        return $return;
        function current_after($return, $theme) {
                if ( is_wp_error($return) )
                        return $return;
@@ -805,7 +874,7 @@ class Theme_Upgrader extends WP_Upgrader {
                        return $return;
 
                //Ensure stylesheet name hasnt changed after the upgrade:
                        return $return;
 
                //Ensure stylesheet name hasnt changed after the upgrade:
-               // @TODO: Note, This doesnt handle the Template changing, or the Template name changing.
+               // @TODO: Note, This doesn't handle the Template changing, or the Template name changing.
                if ( $theme == get_stylesheet() && $theme != $this->result['destination_name'] ) {
                        $theme_info = $this->theme_info();
                        $stylesheet = $this->result['destination_name'];
                if ( $theme == get_stylesheet() && $theme != $this->result['destination_name'] ) {
                        $theme_info = $this->theme_info();
                        $stylesheet = $this->result['destination_name'];
@@ -848,7 +917,7 @@ class Theme_Upgrader extends WP_Upgrader {
 }
 
 /**
 }
 
 /**
- * Core Upgrader class for WordPress. It allows for WordPress to upgrade itself in combiantion with the wp-admin/includes/update-core.php file
+ * Core Upgrader class for WordPress. It allows for WordPress to upgrade itself in combination with the wp-admin/includes/update-core.php file
  *
  * @TODO More Detailed docs, for methods as well.
  *
  *
  * @TODO More Detailed docs, for methods as well.
  *
@@ -1353,6 +1422,9 @@ class Theme_Installer_Skin extends WP_Upgrader_Skin {
                        'activate' => '<a href="' . $activate_link .  '" class="activatelink" title="' . esc_attr( sprintf( __('Activate &#8220;%s&#8221;'), $name ) ) . '">' . __('Activate') . '</a>'
                                                        );
 
                        'activate' => '<a href="' . $activate_link .  '" class="activatelink" title="' . esc_attr( sprintf( __('Activate &#8220;%s&#8221;'), $name ) ) . '">' . __('Activate') . '</a>'
                                                        );
 
+               if ( is_network_admin() && current_user_can( 'manage_network_themes' ) )
+                       $install_actions['network_enable'] = '<a href="' . esc_url( wp_nonce_url( 'themes.php?action=enable&amp;theme=' . $template, 'enable-theme_' . $template ) ) . '" title="' . esc_attr__( 'Enable this theme for all sites in this network' ) . '" target="_parent">' . __( 'Network Enable' ) . '</a>';
+
                if ( $this->type == 'web' )
                        $install_actions['themes_page'] = '<a href="' . self_admin_url('theme-install.php') . '" title="' . esc_attr__('Return to Theme Installer') . '" target="_parent">' . __('Return to Theme Installer') . '</a>';
                else
                if ( $this->type == 'web' )
                        $install_actions['themes_page'] = '<a href="' . self_admin_url('theme-install.php') . '" title="' . esc_attr__('Return to Theme Installer') . '" target="_parent">' . __('Return to Theme Installer') . '</a>';
                else
@@ -1429,29 +1501,66 @@ class Theme_Upgrader_Skin extends WP_Upgrader_Skin {
 class File_Upload_Upgrader {
        var $package;
        var $filename;
 class File_Upload_Upgrader {
        var $package;
        var $filename;
+       var $id = 0;
 
        function __construct($form, $urlholder) {
 
        function __construct($form, $urlholder) {
-               if ( ! ( ( $uploads = wp_upload_dir() ) && false === $uploads['error'] ) )
-                       wp_die($uploads['error']);
 
                if ( empty($_FILES[$form]['name']) && empty($_GET[$urlholder]) )
                        wp_die(__('Please select a file'));
 
 
                if ( empty($_FILES[$form]['name']) && empty($_GET[$urlholder]) )
                        wp_die(__('Please select a file'));
 
-               if ( !empty($_FILES) )
-                       $this->filename = $_FILES[$form]['name'];
-               else if ( isset($_GET[$urlholder]) )
-                       $this->filename = $_GET[$urlholder];
-
                //Handle a newly uploaded file, Else assume its already been uploaded
                //Handle a newly uploaded file, Else assume its already been uploaded
-               if ( !empty($_FILES) ) {
-                       $this->filename = wp_unique_filename( $uploads['basedir'], $this->filename );
-                       $this->package = $uploads['basedir'] . '/' . $this->filename;
+               if ( ! empty($_FILES) ) {
+                       $overrides = array( 'test_form' => false, 'test_type' => false );
+                       $file = wp_handle_upload( $_FILES[$form], $overrides );
 
 
-                       // Move the file to the uploads dir
-                       if ( false === @ move_uploaded_file( $_FILES[$form]['tmp_name'], $this->package) )
-                               wp_die( sprintf( __('The uploaded file could not be moved to %s.' ), $uploads['path']));
+                       if ( isset( $file['error'] ) )
+                               wp_die( $file['error'] );
+
+                       $this->filename = $_FILES[$form]['name'];
+                       $this->package = $file['file'];
+
+                       // Construct the object array
+                       $object = array(
+                               'post_title' => $this->filename,
+                               'post_content' => $file['url'],
+                               'post_mime_type' => $file['type'],
+                               'guid' => $file['url'],
+                               'context' => 'upgrader',
+                               'post_status' => 'private'
+                       );
+
+                       // Save the data
+                       $this->id = wp_insert_attachment( $object, $file['file'] );
+
+                       // schedule a cleanup for 2 hours from now in case of failed install
+                       wp_schedule_single_event( time() + 7200, 'upgrader_scheduled_cleanup', array( $this->id ) );
+
+               } elseif ( is_numeric( $_GET[$urlholder] ) ) {
+                       // Numeric Package = previously uploaded file, see above.
+                       $this->id = (int) $_GET[$urlholder];
+                       $attachment = get_post( $this->id );
+                       if ( empty($attachment) )
+                               wp_die(__('Please select a file'));
+
+                       $this->filename = $attachment->post_title;
+                       $this->package = get_attached_file( $attachment->ID );
                } else {
                } else {
+                       // Else, It's set to something, Back compat for plugins using the old (pre-3.3) File_Uploader handler.
+                       if ( ! ( ( $uploads = wp_upload_dir() ) && false === $uploads['error'] ) )
+                               wp_die( $uploads['error'] );
+
+                       $this->filename = $_GET[$urlholder];
                        $this->package = $uploads['basedir'] . '/' . $this->filename;
                }
        }
                        $this->package = $uploads['basedir'] . '/' . $this->filename;
                }
        }
-}
\ No newline at end of file
+
+       function cleanup() {
+               if ( $this->id )
+                       wp_delete_attachment( $this->id );
+
+               elseif ( file_exists( $this->package ) )
+                       return @unlink( $this->package );
+
+               return true;
+       }
+}
index de22748be82e4b33418ff87b5d0b1397ffefa381..09cb2156cc85bf455c698d7fcb9ec471cdb83bd8 100644 (file)
@@ -112,7 +112,7 @@ class WP_Users_List_Table extends WP_List_Table {
 
                        $name = translate_user_role( $name );
                        /* translators: User role name with count */
 
                        $name = translate_user_role( $name );
                        /* translators: User role name with count */
-                       $name = sprintf( __('%1$s <span class="count">(%2$s)</span>'), $name, $avail_roles[$this_role] );
+                       $name = sprintf( __('%1$s <span class="count">(%2$s)</span>'), $name, number_format_i18n( $avail_roles[$this_role] ) );
                        $role_links[$this_role] = "<a href='" . esc_url( add_query_arg( 'role', $this_role, $url ) ) . "'$class>$name</a>";
                }
 
                        $role_links[$this_role] = "<a href='" . esc_url( add_query_arg( 'role', $this_role, $url ) ) . "'$class>$name</a>";
                }
 
@@ -219,7 +219,7 @@ class WP_Users_List_Table extends WP_List_Table {
 
                if ( !( is_object( $user_object ) && is_a( $user_object, 'WP_User' ) ) )
                        $user_object = new WP_User( (int) $user_object );
 
                if ( !( is_object( $user_object ) && is_a( $user_object, 'WP_User' ) ) )
                        $user_object = new WP_User( (int) $user_object );
-               $user_object = sanitize_user_object( $user_object, 'display' );
+               $user_object->filter = 'display';
                $email = $user_object->user_email;
 
                if ( $this->is_site_users )
                $email = $user_object->user_email;
 
                if ( $this->is_site_users )
index 1d3f373f7e11dde7c5295154a60fccecd5f2ff87..80be66bd8e66e1175e99b32e61a9d9db5946b5aa 100644 (file)
@@ -176,7 +176,7 @@ function wp_add_dashboard_widget( $widget_id, $widget_name, $callback, $control_
        if ( 'dashboard_browser_nag' === $widget_id )
                $priority = 'high';
 
        if ( 'dashboard_browser_nag' === $widget_id )
                $priority = 'high';
 
-       add_meta_box( $widget_id, $widget_name, $callback, $screen->id, $location, $priority );
+       add_meta_box( $widget_id, $widget_name, $callback, $screen, $location, $priority );
 }
 
 function _wp_dashboard_control_callback( $dashboard, $meta_box ) {
 }
 
 function _wp_dashboard_control_callback( $dashboard, $meta_box ) {
@@ -200,33 +200,33 @@ function wp_dashboard() {
        $hide2 = $hide3 = $hide4 = '';
        switch ( $screen_layout_columns ) {
                case 4:
        $hide2 = $hide3 = $hide4 = '';
        switch ( $screen_layout_columns ) {
                case 4:
-                       $width = 'width:24.5%;';
+                       $width = 'width:25%;';
                        break;
                case 3:
                        break;
                case 3:
-                       $width = 'width:32.67%;';
+                       $width = 'width:33.333333%;';
                        $hide4 = 'display:none;';
                        break;
                case 2:
                        $hide4 = 'display:none;';
                        break;
                case 2:
-                       $width = 'width:49%;';
+                       $width = 'width:50%;';
                        $hide3 = $hide4 = 'display:none;';
                        break;
                default:
                        $hide3 = $hide4 = 'display:none;';
                        break;
                default:
-                       $width = 'width:98%;';
+                       $width = 'width:100%;';
                        $hide2 = $hide3 = $hide4 = 'display:none;';
        }
 ?>
 <div id="dashboard-widgets" class="metabox-holder">
 <?php
                        $hide2 = $hide3 = $hide4 = 'display:none;';
        }
 ?>
 <div id="dashboard-widgets" class="metabox-holder">
 <?php
-       echo "\t<div class='postbox-container' style='$width'>\n";
+       echo "\t<div id='postbox-container-1' class='postbox-container' style='$width'>\n";
        do_meta_boxes( $screen->id, 'normal', '' );
 
        do_meta_boxes( $screen->id, 'normal', '' );
 
-       echo "\t</div><div class='postbox-container' style='{$hide2}$width'>\n";
+       echo "\t</div><div id='postbox-container-2' class='postbox-container' style='{$hide2}$width'>\n";
        do_meta_boxes( $screen->id, 'side', '' );
 
        do_meta_boxes( $screen->id, 'side', '' );
 
-       echo "\t</div><div class='postbox-container' style='{$hide3}$width'>\n";
+       echo "\t</div><div id='postbox-container-3' class='postbox-container' style='{$hide3}$width'>\n";
        do_meta_boxes( $screen->id, 'column3', '' );
 
        do_meta_boxes( $screen->id, 'column3', '' );
 
-       echo "\t</div><div class='postbox-container' style='{$hide4}$width'>\n";
+       echo "\t</div><div id='postbox-container-4' class='postbox-container' style='{$hide4}$width'>\n";
        do_meta_boxes( $screen->id, 'column4', '' );
 ?>
 </div></div>
        do_meta_boxes( $screen->id, 'column4', '' );
 ?>
 </div></div>
@@ -387,7 +387,11 @@ function wp_dashboard_right_now() {
        $ct = current_theme_info();
 
        echo "\n\t<p>";
        $ct = current_theme_info();
 
        echo "\n\t<p>";
-       if ( !empty($wp_registered_sidebars) ) {
+
+       if ( empty( $ct->stylesheet_dir ) ) {
+               if ( ! is_multisite() || is_super_admin() )
+                       echo '<span class="error-message">' . __('ERROR: The themes directory is either empty or doesn&#8217;t exist. Please check your installation.') . '</span>';
+       } elseif ( ! empty($wp_registered_sidebars) ) {
                $sidebars_widgets = wp_get_sidebars_widgets();
                $num_widgets = 0;
                foreach ( (array) $sidebars_widgets as $k => $v ) {
                $sidebars_widgets = wp_get_sidebars_widgets();
                $num_widgets = 0;
                foreach ( (array) $sidebars_widgets as $k => $v ) {
@@ -531,8 +535,8 @@ function wp_dashboard_quick_press() {
                </div>
 
                <?php if ( current_user_can( 'upload_files' ) ) : ?>
                </div>
 
                <?php if ( current_user_can( 'upload_files' ) ) : ?>
-               <div id="media-buttons" class="hide-if-no-js">
-                       <?php do_action( 'media_buttons' ); ?>
+               <div id="wp-content-wrap" class="wp-editor-wrap hide-if-no-js wp-media-buttons">
+                       <?php do_action( 'media_buttons', 'content' ); ?>
                </div>
                <?php endif; ?>
 
                </div>
                <?php endif; ?>
 
@@ -550,7 +554,7 @@ function wp_dashboard_quick_press() {
 
                <p class="submit">
                        <input type="hidden" name="action" id="quickpost-action" value="post-quickpress-save" />
 
                <p class="submit">
                        <input type="hidden" name="action" id="quickpost-action" value="post-quickpress-save" />
-                       <input type="hidden" name="quickpress_post_ID" value="<?php echo $post_ID; ?>" />
+                       <input type="hidden" name="post_ID" value="<?php echo $post_ID; ?>" />
                        <input type="hidden" name="post_type" value="post" />
                        <?php wp_nonce_field('add-post'); ?>
                        <?php submit_button( __( 'Save Draft' ), 'button', 'save', false, array( 'id' => 'save-post', 'tabindex'=> 4 ) ); ?>
                        <input type="hidden" name="post_type" value="post" />
                        <?php wp_nonce_field('add-post'); ?>
                        <?php submit_button( __( 'Save Draft' ), 'button', 'save', false, array( 'id' => 'save-post', 'tabindex'=> 4 ) ); ?>
@@ -1023,7 +1027,7 @@ function wp_dashboard_plugins_output() {
  * Checks to see if all of the feed url in $check_urls are cached.
  *
  * If $check_urls is empty, look for the rss feed url found in the dashboard
  * Checks to see if all of the feed url in $check_urls are cached.
  *
  * If $check_urls is empty, look for the rss feed url found in the dashboard
- * widget optios of $widget_id. If cached, call $callback, a function that
+ * widget options of $widget_id. If cached, call $callback, a function that
  * echoes out output for this widget. If not cache, echo a "Loading..." stub
  * which is later replaced by AJAX call (see top of /wp-admin/index.php)
  *
  * echoes out output for this widget. If not cache, echo a "Loading..." stub
  * which is later replaced by AJAX call (see top of /wp-admin/index.php)
  *
@@ -1189,7 +1193,7 @@ function wp_dashboard_browser_nag() {
                        $browser_nag_class = ' has-browser-icon';
                }
                $notice .= "<p class='browser-update-nag{$browser_nag_class}'>{$msg}</p>";
                        $browser_nag_class = ' has-browser-icon';
                }
                $notice .= "<p class='browser-update-nag{$browser_nag_class}'>{$msg}</p>";
-               $notice .= sprintf( __( '<p><a href="%1$s" class="update-browser-link">Update %2$s</a> or learn how to <a href="%3$s" class="browse-happy-link">browse happy</a></p>' ), esc_attr( $response['update_url'] ), esc_html( $response['name'] ), 'http://browsehappy.com/' );
+               $notice .= '<p>' . sprintf( __( '<a href="%1$s" class="update-browser-link">Update %2$s</a> or learn how to <a href="%3$s" class="browse-happy-link">browse happy</a>' ), esc_attr( $response['update_url'] ), esc_html( $response['name'] ), 'http://browsehappy.com/' ) . '</p>';
                $notice .= '<p class="hide-if-no-js"><a href="" class="dismiss">' . __( 'Dismiss' ) . '</a></p>';
                $notice .= '<div class="clear"></div>';
        }
                $notice .= '<p class="hide-if-no-js"><a href="" class="dismiss">' . __( 'Dismiss' ) . '</a></p>';
                $notice .= '<div class="clear"></div>';
        }
@@ -1259,4 +1263,101 @@ function wp_check_browser_version() {
  */
 function wp_dashboard_empty() {}
 
  */
 function wp_dashboard_empty() {}
 
+/**
+ * Displays a welcome panel to introduce users to WordPress.
+ *
+ * @since 3.3
+ */
+function wp_welcome_panel() {
+       global $wp_version;
+
+       if ( ! current_user_can( 'edit_theme_options' ) )
+               return;
+
+       $classes = 'welcome-panel';
+
+       $option = get_user_meta( get_current_user_id(), 'show_welcome_panel', true );
+       // 0 = hide, 1 = toggled to show or single site creator, 2 = multisite site owner
+       $hide = 0 == $option || ( 2 == $option && wp_get_current_user()->user_email != get_option( 'admin_email' ) );
+       if ( $hide )
+               $classes .= ' hidden';
+
+       list( $display_version ) = explode( '-', $wp_version );
+       ?>
+       <div id="welcome-panel" class="<?php echo esc_attr( $classes ); ?>">
+       <?php wp_nonce_field( 'welcome-panel-nonce', 'welcomepanelnonce', false ); ?>
+       <a class="welcome-panel-close" href="<?php echo esc_url( admin_url( '?welcome=0' ) ); ?>"><?php _e('Dismiss'); ?></a>
+       <div class="wp-badge"><?php printf( __( 'Version %s' ), $display_version ); ?></div>
+
+       <div class="welcome-panel-content">
+       <h3><?php _e( 'Welcome to your new WordPress site! ' ); ?></h3>
+       <p class="about-description"><?php _e( 'If you need help getting started, check out our documentation on <a href="http://codex.wordpress.org/First_Steps_With_WordPress">First Steps with WordPress</a>. If you&#8217;d rather dive right in, here are a few things most people do first when they set up a new WordPress site. If you need help, use the Help tabs in the upper right corner to get information on how to use your current screen and where to go for more assistance.' ); ?></p>
+       <div class="welcome-panel-column-container">
+       <div class="welcome-panel-column">
+               <h4><span class="icon16 icon-settings"></span> <?php _e( 'Basic Settings' ); ?></h4>
+               <p><?php _e( 'Here are a few easy things you can do to get your feet wet. Make sure to click Save on each Settings screen.' ); ?></p>
+               <ul>
+               <li><?php echo sprintf( __( '<a href="%s">Choose your privacy setting</a>' ), esc_url( admin_url('options-privacy.php') ) ); ?></li>
+               <li><?php echo sprintf( __( '<a href="%s">Select your tagline and time zone</a>' ), esc_url( admin_url('options-general.php') ) ); ?></li>
+               <li><?php echo sprintf( __( '<a href="%s">Turn comments on or off</a>' ), esc_url( admin_url('options-discussion.php') ) ); ?></li>
+               <li><?php echo sprintf( __( '<a href="%s">Fill in your profile</a>' ), esc_url( admin_url('profile.php') ) ); ?></li>
+               </ul>
+       </div>
+       <div class="welcome-panel-column">
+               <h4><span class="icon16 icon-page"></span> <?php _e( 'Add Real Content' ); ?></h4>
+               <p><?php _e( 'Check out the sample page & post editors to see how it all works, then delete the default content and write your own!' ); ?></p>
+               <ul>
+               <li><?php echo sprintf( __( 'View the <a href="%1$s">sample page</a> and <a href="%2$s">post</a>' ), esc_url( get_permalink( 2 ) ), esc_url( get_permalink( 1 ) ) ); ?></li>
+               <li><?php echo sprintf( __( 'Delete the <a href="%1$s">sample page</a> and <a href="%2$s">post</a>' ), esc_url( admin_url('edit.php?post_type=page') ), esc_url( admin_url('edit.php') ) ); ?></li>
+               <li><?php echo sprintf( __( '<a href="%s">Create an About Me page</a>' ), esc_url( admin_url('edit.php?post_type=page') ) ); ?></li>
+               <li><?php echo sprintf( __( '<a href="%s">Write your first post</a>' ), esc_url( admin_url('post-new.php') ) ); ?></li>
+               </ul>
+       </div>
+       <div class="welcome-panel-column welcome-panel-last">
+               <h4><span class="icon16 icon-appearance"></span> <?php _e( 'Customize Your Site' ); ?></h4>
+               <?php
+               $ct = current_theme_info();
+               if ( empty ( $ct->stylesheet_dir ) ) :
+                       echo '<p>';
+                       printf( __( '<a href="%s">Install a theme</a> to get started customizing your site.' ), esc_url( admin_url( 'themes.php' ) ) );
+                       echo '</p>';
+               else:
+                       $customize_links = array();
+                       if ( 'twentyeleven' == $ct->stylesheet )
+                               $customize_links[] = sprintf( __( '<a href="%s">Choose light or dark</a>' ), esc_url( admin_url( 'themes.php?page=theme_options' ) ) );
+
+                       if ( current_theme_supports( 'custom-background' ) )
+                               $customize_links[] = sprintf( __( '<a href="%s">Set a background color</a>' ), esc_url( admin_url( 'themes.php?page=custom-background' ) ) );
+
+                       if ( current_theme_supports( 'custom-header' ) )
+                               $customize_links[] = sprintf( __( '<a href="%s">Select a new header image</a>' ), esc_url( admin_url( 'themes.php?page=custom-header' ) ) );
+
+                       if ( current_theme_supports( 'widgets' ) )
+                               $customize_links[] = sprintf( __( '<a href="%s">Add some widgets</a>' ), esc_url( admin_url( 'widgets.php' ) ) );
+
+                       if ( ! empty( $customize_links ) ) {
+                               echo '<p>';
+                               printf( __( 'Use the current theme &mdash; %1$s &mdash; or <a href="%2$s">choose a new one</a>. If you stick with %3$s, here are a few ways to make your site look unique.' ), $ct->title, esc_url( admin_url( 'themes.php' ) ), $ct->title );
+                               echo '</p>';
+                       ?>
+                       <ul>
+                               <?php foreach ( $customize_links as $customize_link ) : ?>
+                               <li><?php echo $customize_link ?></li>
+                               <?php endforeach; ?>
+                       </ul>
+                       <?php
+                       } else {
+                               echo '<p>';
+                               printf( __( 'Use the current theme &mdash; %1$s &mdash; or <a href="%2$s">choose a new one</a>.' ), $ct->title, esc_url( admin_url( 'themes.php' ) ) );
+                               echo '</p>';
+                       }
+               endif; ?>
+       </div>
+       </div>
+       <p class="welcome-panel-dismiss"><?php printf( __( 'Already know what you&#8217;re doing? <a href="%s">Dismiss this message</a>.' ), esc_url( admin_url( '?welcome=0' ) ) ); ?></p>
+       </div>
+       </div>
+       <?php
+}
+
 ?>
 ?>
index 3e02dbc2e9935899374bb2ef59bae87470cc46f0..f38bafc765b091efb3a9f610d275ff3225c1f74f 100644 (file)
 /**
  * @since 2.1
  * @deprecated 2.1
 /**
  * @since 2.1
  * @deprecated 2.1
- * @deprecated Use wp_tiny_mce().
- * @see wp_tiny_mce()
+ * @deprecated Use wp_editor().
+ * @see wp_editor()
  */
 function tinymce_include() {
  */
 function tinymce_include() {
-       _deprecated_function( __FUNCTION__, '2.1', 'wp_tiny_mce()' );
+       _deprecated_function( __FUNCTION__, '2.1', 'wp_editor()' );
 
        wp_tiny_mce();
 }
 
        wp_tiny_mce();
 }
@@ -37,7 +37,7 @@ function documentation_link() {
 }
 
 /**
 }
 
 /**
- * Calculates the new dimentions for a downsampled image.
+ * Calculates the new dimensions for a downsampled image.
  *
  * @since 2.0.0
  * @deprecated 3.0.0
  *
  * @since 2.0.0
  * @deprecated 3.0.0
@@ -255,7 +255,7 @@ function get_editable_user_ids( $user_id, $exclude_zeros = true, $post_type = 'p
 
        if ( ! $user->has_cap($post_type_obj->cap->edit_others_posts) ) {
                if ( $user->has_cap($post_type_obj->cap->edit_posts) || ! $exclude_zeros )
 
        if ( ! $user->has_cap($post_type_obj->cap->edit_others_posts) ) {
                if ( $user->has_cap($post_type_obj->cap->edit_posts) || ! $exclude_zeros )
-                       return array($user->id);
+                       return array($user->ID);
                else
                        return array();
        }
                else
                        return array();
        }
@@ -701,3 +701,183 @@ function wp_dashboard_quick_press_output() {
        _deprecated_function( __FUNCTION__, '3.2', 'wp_dashboard_quick_press()' );
        wp_dashboard_quick_press();
 }
        _deprecated_function( __FUNCTION__, '3.2', 'wp_dashboard_quick_press()' );
        wp_dashboard_quick_press();
 }
+
+/**
+ * @since 2.7.0
+ * @deprecated 3.3
+ * @deprecated Use wp_editor()
+ * @see wp_editor()
+ */
+function wp_tiny_mce( $teeny = false, $settings = false ) {
+       _deprecated_function( __FUNCTION__, '3.3', 'wp_editor()' );
+
+       static $num = 1;
+
+       if ( ! class_exists('_WP_Editors' ) )
+               require_once( ABSPATH . WPINC . '/class-wp-editor.php' );
+
+       $editor_id = 'content' . $num++;
+
+       $set = array(
+               'teeny' => $teeny,
+               'tinymce' => $settings ? $settings : true,
+               'quicktags' => false
+       );
+
+       $set = _WP_Editors::parse_settings($editor_id, $set);
+       _WP_Editors::editor_settings($editor_id, $set);
+}
+
+/**
+ * @deprecated 3.3.0
+ * @deprecated Use wp_editor()
+ * @see wp_editor()
+ */
+function wp_preload_dialogs() {
+       _deprecated_function( __FUNCTION__, '3.3', 'wp_editor()' );
+}
+
+/**
+ * @deprecated 3.3.0
+ * @deprecated Use wp_editor()
+ * @see wp_editor()
+ */
+function wp_print_editor_js() {
+       _deprecated_function( __FUNCTION__, '3.3', 'wp_editor()' );
+}
+
+/**
+ * @deprecated 3.3.0
+ * @deprecated Use wp_editor()
+ * @see wp_editor()
+ */
+function wp_quicktags() {
+       _deprecated_function( __FUNCTION__, '3.3', 'wp_editor()' );
+}
+
+/**
+ * Returns the screen layout options.
+ *
+ * @since 2.8.0
+ * @deprecated 3.3.0
+ * @deprecated Use $current_screen->render_screen_layout()
+ * @see WP_Screen::render_screen_layout()
+ */
+function screen_layout( $screen ) {
+       _deprecated_function( __FUNCTION__, '3.3', '$current_screen->render_screen_layout()' );
+
+       $current_screen = get_current_screen();
+
+       if ( ! $current_screen )
+               return '';
+
+       ob_start();
+       $current_screen->render_screen_layout();
+       return ob_get_clean();
+}
+
+/**
+ * Returns the screen's per-page options.
+ *
+ * @since 2.8.0
+ * @deprecated 3.3.0
+ * @deprecated Use $current_screen->render_per_page_options()
+ * @see WP_Screen::render_per_page_options()
+ */
+function screen_options( $screen ) {
+       _deprecated_function( __FUNCTION__, '3.3', '$current_screen->render_per_page_options()' );
+
+       $current_screen = get_current_screen();
+
+       if ( ! $current_screen )
+               return '';
+
+       ob_start();
+       $current_screen->render_per_page_options();
+       return ob_get_clean();
+}
+
+/**
+ * Renders the screen's help.
+ *
+ * @since 2.7.0
+ * @deprecated 3.3.0
+ * @deprecated Use $current_screen->render_screen_meta()
+ * @see WP_Screen::render_screen_meta()
+ */
+function screen_meta( $screen ) {
+       $current_screen = get_current_screen();
+       $current_screen->render_screen_meta();
+}
+
+/**
+ * Favorite actions were deprecated in version 3.2. Use the admin bar instead.
+ *
+ * @since 2.7.0
+ * @deprecated 3.2.0
+ */
+function favorite_actions() {
+       _deprecated_function( __FUNCTION__, '3.2', 'WP_Admin_Bar' );
+}
+
+function media_upload_image() {
+       __deprecated_function( __FUNCTION__, '3.3', 'wp_media_upload_handler()' );
+       return wp_media_upload_handler();
+}
+
+function media_upload_audio() {
+       __deprecated_function( __FUNCTION__, '3.3', 'wp_media_upload_handler()' );
+       return wp_media_upload_handler();
+}
+
+function media_upload_video() {
+       __deprecated_function( __FUNCTION__, '3.3', 'wp_media_upload_handler()' );
+       return wp_media_upload_handler();
+}
+
+function media_upload_file() {
+       __deprecated_function( __FUNCTION__, '3.3', 'wp_media_upload_handler()' );
+       return wp_media_upload_handler();
+}
+
+function type_url_form_image() {
+       __deprecated_function( __FUNCTION__, '3.3', "wp_media_insert_url_form('image')" );
+       return wp_media_insert_url_form( 'image' );
+}
+
+function type_url_form_audio() {
+       __deprecated_function( __FUNCTION__, '3.3', "wp_media_insert_url_form('audio')" );
+       return wp_media_insert_url_form( 'audio' );
+}
+
+function type_url_form_video() {
+       __deprecated_function( __FUNCTION__, '3.3', "wp_media_insert_url_form('video')" );
+       return wp_media_insert_url_form( 'video' );
+}
+
+function type_url_form_file() {
+       __deprecated_function( __FUNCTION__, '3.3', "wp_media_insert_url_form('file')" );
+       return wp_media_insert_url_form( 'file' );
+}
+
+/**
+ * Add contextual help text for a page.
+ *
+ * Creates an 'Overview' help tab.
+ *
+ * @since 2.7.0
+ * @deprecated 3.3.0
+ * @deprecated Use get_current_screen()->add_help_tab()
+ * @see WP_Screen
+ *
+ * @param string    $screen The handle for the screen to add help to.  This is usually the hook name returned by the add_*_page() functions.
+ * @param string    $help   The content of an 'Overview' help tab.
+ */
+function add_contextual_help( $screen, $help ) {
+       _deprecated_function( __FUNCTION__, '3.3', 'get_current_screen()->add_help_tab()' );
+
+       if ( is_string( $screen ) )
+               $screen = convert_to_screen( $screen );
+
+       WP_Screen::add_old_compat_help( $screen, $help );
+}
\ No newline at end of file
index cfdc3dded39952ef6e7e29d10ec15a87f5376013..6aa85a85a3dc89bcaf6041310493903553259c55 100644 (file)
@@ -243,7 +243,7 @@ function export_wp( $args = array() ) {
 
                $authors = array_filter( $authors );
 
 
                $authors = array_filter( $authors );
 
-               foreach( $authors as $author ) {
+               foreach ( $authors as $author ) {
                        echo "\t<wp:author>";
                        echo '<wp:author_id>' . $author->ID . '</wp:author_id>';
                        echo '<wp:author_login>' . $author->user_login . '</wp:author_login>';
                        echo "\t<wp:author>";
                        echo '<wp:author_id>' . $author->ID . '</wp:author_id>';
                        echo '<wp:author_login>' . $author->user_login . '</wp:author_login>';
@@ -290,6 +290,13 @@ function export_wp( $args = array() ) {
                }
        }
 
                }
        }
 
+       function wxr_filter_postmeta( $return_me, $meta_key ) {
+               if ( '_edit_lock' == $meta_key )
+                       $return_me = true;
+               return $return_me;
+       }
+       add_filter( 'wxr_export_skip_postmeta', 'wxr_filter_postmeta', 10, 2 );
+
        echo '<?xml version="1.0" encoding="' . get_bloginfo('charset') . "\" ?>\n";
 
        ?>
        echo '<?xml version="1.0" encoding="' . get_bloginfo('charset') . "\" ?>\n";
 
        ?>
@@ -384,12 +391,15 @@ function export_wp( $args = array() ) {
 <?php  endif; ?>
 <?php  wxr_post_taxonomy(); ?>
 <?php  $postmeta = $wpdb->get_results( $wpdb->prepare( "SELECT * FROM $wpdb->postmeta WHERE post_id = %d", $post->ID ) );
 <?php  endif; ?>
 <?php  wxr_post_taxonomy(); ?>
 <?php  $postmeta = $wpdb->get_results( $wpdb->prepare( "SELECT * FROM $wpdb->postmeta WHERE post_id = %d", $post->ID ) );
-               foreach( $postmeta as $meta ) : if ( $meta->meta_key != '_edit_lock' ) : ?>
+               foreach ( $postmeta as $meta ) :
+                       if ( apply_filters( 'wxr_export_skip_postmeta', false, $meta->meta_key, $meta ) )
+                               continue;
+               ?>
                <wp:postmeta>
                        <wp:meta_key><?php echo $meta->meta_key; ?></wp:meta_key>
                        <wp:meta_value><?php echo wxr_cdata( $meta->meta_value ); ?></wp:meta_value>
                </wp:postmeta>
                <wp:postmeta>
                        <wp:meta_key><?php echo $meta->meta_key; ?></wp:meta_key>
                        <wp:meta_value><?php echo wxr_cdata( $meta->meta_value ); ?></wp:meta_value>
                </wp:postmeta>
-<?php  endif; endforeach; ?>
+<?php  endforeach; ?>
 <?php  $comments = $wpdb->get_results( $wpdb->prepare( "SELECT * FROM $wpdb->comments WHERE comment_post_ID = %d AND comment_approved <> 'spam'", $post->ID ) );
                foreach ( $comments as $c ) : ?>
                <wp:comment>
 <?php  $comments = $wpdb->get_results( $wpdb->prepare( "SELECT * FROM $wpdb->comments WHERE comment_post_ID = %d AND comment_approved <> 'spam'", $post->ID ) );
                foreach ( $comments as $c ) : ?>
                <wp:comment>
index 04bb40392e05907c1b22f27d0e7454cf7e3766bc..bf4ac85dc62deeeeb6122f2cee9feb6ab25c620b 100644 (file)
@@ -261,7 +261,7 @@ function wp_handle_upload( &$file, $overrides = false, $time = null ) {
                __( "Failed to write file to disk." ),
                __( "File upload stopped by extension." ));
 
                __( "Failed to write file to disk." ),
                __( "File upload stopped by extension." ));
 
-       // All tests are on by default. Most can be turned off by $override[{test_name}] = false;
+       // All tests are on by default. Most can be turned off by $overrides[{test_name}] = false;
        $test_form = true;
        $test_size = true;
        $test_upload = true;
        $test_form = true;
        $test_size = true;
        $test_upload = true;
@@ -323,11 +323,31 @@ function wp_handle_upload( &$file, $overrides = false, $time = null ) {
 
        $filename = wp_unique_filename( $uploads['path'], $file['name'], $unique_filename_callback );
 
 
        $filename = wp_unique_filename( $uploads['path'], $file['name'], $unique_filename_callback );
 
+       $tmp_file = wp_tempnam($filename);
+
        // Move the file to the uploads dir
        // Move the file to the uploads dir
-       $new_file = $uploads['path'] . "/$filename";
-       if ( false === @ move_uploaded_file( $file['tmp_name'], $new_file ) )
+       if ( false === @ move_uploaded_file( $file['tmp_name'], $tmp_file ) )
                return $upload_error_handler( $file, sprintf( __('The uploaded file could not be moved to %s.' ), $uploads['path'] ) );
 
                return $upload_error_handler( $file, sprintf( __('The uploaded file could not be moved to %s.' ), $uploads['path'] ) );
 
+       // If a resize was requested, perform the resize.
+       $image_resize = isset( $_POST['image_resize'] ) && 'true' == $_POST['image_resize'];
+       $do_resize = apply_filters( 'wp_upload_resize', $image_resize );
+       $size = @getimagesize( $tmp_file );
+       if ( $do_resize && $size ) {
+               $old_temp = $tmp_file;
+               $tmp_file = image_resize( $tmp_file, (int) get_option('large_size_w'), (int) get_option('large_size_h'), 0, 'resized');
+               if ( ! is_wp_error($tmp_file) ) {
+                       unlink($old_temp);
+               } else {
+                       $tmp_file = $old_temp;
+               }
+       }
+
+       // Copy the temporary file into its destination
+       $new_file = $uploads['path'] . "/$filename";
+       copy( $tmp_file, $new_file );
+       unlink($tmp_file);
+
        // Set correct file permissions
        $stat = stat( dirname( $new_file ));
        $perms = $stat['mode'] & 0000666;
        // Set correct file permissions
        $stat = stat( dirname( $new_file ));
        $perms = $stat['mode'] & 0000666;
@@ -343,7 +363,7 @@ function wp_handle_upload( &$file, $overrides = false, $time = null ) {
 }
 
 /**
 }
 
 /**
- * Handle sideloads, which is the process of retriving a media item from another server instead of
+ * Handle sideloads, which is the process of retrieving a media item from another server instead of
  * a traditional media upload.  This process involves sanitizing the filename, checking extensions
  * for mime type, and moving the file to the appropriate directory within the uploads directory.
  *
  * a traditional media upload.  This process involves sanitizing the filename, checking extensions
  * for mime type, and moving the file to the appropriate directory within the uploads directory.
  *
@@ -387,7 +407,7 @@ function wp_handle_sideload( &$file, $overrides = false ) {
                __( "Failed to write file to disk." ),
                __( "File upload stopped by extension." ));
 
                __( "Failed to write file to disk." ),
                __( "File upload stopped by extension." ));
 
-       // All tests are on by default. Most can be turned off by $override[{test_name}] = false;
+       // All tests are on by default. Most can be turned off by $overrides[{test_name}] = false;
        $test_form = true;
        $test_size = true;
 
        $test_form = true;
        $test_size = true;
 
@@ -499,7 +519,7 @@ function download_url( $url, $timeout = 300 ) {
 }
 
 /**
 }
 
 /**
- * Unzip's a specified ZIP file to a location on the Filesystem via the WordPress Filesystem Abstraction.
+ * Unzips a specified ZIP file to a location on the Filesystem via the WordPress Filesystem Abstraction.
  * Assumes that WP_Filesystem() has already been called and set up. Does not extract a root-level __MACOSX directory, if present.
  *
  * Attempts to increase the PHP Memory limit to 256M before uncompressing,
  * Assumes that WP_Filesystem() has already been called and set up. Does not extract a root-level __MACOSX directory, if present.
  *
  * Attempts to increase the PHP Memory limit to 256M before uncompressing,
@@ -813,7 +833,7 @@ function WP_Filesystem( $args = false, $context = false ) {
                return false;
 
        if ( !$wp_filesystem->connect() )
                return false;
 
        if ( !$wp_filesystem->connect() )
-               return false; //There was an erorr connecting to the server.
+               return false; //There was an error connecting to the server.
 
        // Set the permission constants if not already set.
        if ( ! defined('FS_CHMOD_DIR') )
 
        // Set the permission constants if not already set.
        if ( ! defined('FS_CHMOD_DIR') )
@@ -826,7 +846,7 @@ function WP_Filesystem( $args = false, $context = false ) {
 
 /**
  * Determines which Filesystem Method to use.
 
 /**
  * Determines which Filesystem Method to use.
- * The priority of the Transports are: Direct, SSH2, FTP PHP Extension, FTP Sockets (Via Sockets class, or fsoxkopen())
+ * The priority of the Transports are: Direct, SSH2, FTP PHP Extension, FTP Sockets (Via Sockets class, or fsockopen())
  *
  * Note that the return value of this function can be overridden in 2 ways
  *  - By defining FS_METHOD in your <code>wp-config.php</code> file
  *
  * Note that the return value of this function can be overridden in 2 ways
  *  - By defining FS_METHOD in your <code>wp-config.php</code> file
@@ -945,7 +965,7 @@ function request_filesystem_credentials($form_post, $type = '', $error = false,
        if ( !empty($credentials) )
                extract($credentials, EXTR_OVERWRITE);
        if ( $error ) {
        if ( !empty($credentials) )
                extract($credentials, EXTR_OVERWRITE);
        if ( $error ) {
-               $error_string = __('<strong>Error:</strong> There was an error connecting to the server, Please verify the settings are correct.');
+               $error_string = __('<strong>ERROR:</strong> There was an error connecting to the server, Please verify the settings are correct.');
                if ( is_wp_error($error) )
                        $error_string = esc_html( $error->get_error_message() );
                echo '<div id="message" class="error"><p>' . $error_string . '</p></div>';
                if ( is_wp_error($error) )
                        $error_string = esc_html( $error->get_error_message() );
                echo '<div id="message" class="error"><p>' . $error_string . '</p></div>';
index 86cdfe20a9204afc39cd21e12850a729c45caee5..0e2027a1eac7106a566b3559116f41ab651599b8 100644 (file)
@@ -431,7 +431,7 @@ function wp_restore_image($post_id) {
 
        $parts = pathinfo($file);
        $suffix = time() . rand(100, 999);
 
        $parts = pathinfo($file);
        $suffix = time() . rand(100, 999);
-       $default_sizes = apply_filters( 'intermediate_image_sizes', array('large', 'medium', 'thumbnail') );
+       $default_sizes = get_intermediate_image_sizes();
 
        if ( isset($backup_sizes['full-orig']) && is_array($backup_sizes['full-orig']) ) {
                $data = $backup_sizes['full-orig'];
 
        if ( isset($backup_sizes['full-orig']) && is_array($backup_sizes['full-orig']) ) {
                $data = $backup_sizes['full-orig'];
@@ -603,7 +603,7 @@ function wp_save_image($post_id) {
                $meta['hwstring_small'] = "height='$uheight' width='$uwidth'";
 
                if ( $success && ('nothumb' == $target || 'all' == $target) ) {
                $meta['hwstring_small'] = "height='$uheight' width='$uwidth'";
 
                if ( $success && ('nothumb' == $target || 'all' == $target) ) {
-                       $sizes = apply_filters( 'intermediate_image_sizes', array('large', 'medium', 'thumbnail') );
+                       $sizes = get_intermediate_image_sizes();
                        if ( 'nothumb' == $target )
                                $sizes = array_diff( $sizes, array('thumbnail') );
                }
                        if ( 'nothumb' == $target )
                                $sizes = array_diff( $sizes, array('thumbnail') );
                }
index 44329c0131c6dd3aafaee35f387b153df99d40ff..98dd0ef5e20877abf189ef90b7575ca77a3ca68e 100644 (file)
@@ -138,7 +138,7 @@ function wp_generate_attachment_metadata( $attachment_id, $file ) {
 }
 
 /**
 }
 
 /**
- * Calculated the new dimentions for a downsampled image.
+ * Calculated the new dimensions for a downsampled image.
  *
  * @since 2.0.0
  * @see wp_constrain_dimensions()
  *
  * @since 2.0.0
  * @see wp_constrain_dimensions()
diff --git a/wp-admin/includes/internal-linking.php b/wp-admin/includes/internal-linking.php
deleted file mode 100644 (file)
index a95c01b..0000000
+++ /dev/null
@@ -1,124 +0,0 @@
-<?php
-/**
- * Internal linking functions.
- *
- * @package WordPress
- * @subpackage Administration
- * @since 3.1.0
- */
-
-/**
- * Performs post queries for internal linking.
- *
- * @since 3.1.0
- *
- * @param array $args Optional. Accepts 'pagenum' and 's' (search) arguments.
- * @return array Results.
- */
-function wp_link_query( $args = array() ) {
-       $pts = get_post_types( array( 'public' => true ), 'objects' );
-       $pt_names = array_keys( $pts );
-
-       $query = array(
-               'post_type' => $pt_names,
-               'suppress_filters' => true,
-               'update_post_term_cache' => false,
-               'update_post_meta_cache' => false,
-               'post_status' => 'publish',
-               'order' => 'DESC',
-               'orderby' => 'post_date',
-               'posts_per_page' => 20,
-       );
-
-       $args['pagenum'] = isset( $args['pagenum'] ) ? absint( $args['pagenum'] ) : 1;
-
-       if ( isset( $args['s'] ) )
-               $query['s'] = $args['s'];
-
-       $query['offset'] = $args['pagenum'] > 1 ? $query['posts_per_page'] * ( $args['pagenum'] - 1 ) : 0;
-
-       // Do main query.
-       $get_posts = new WP_Query;
-       $posts = $get_posts->query( $query );
-       // Check if any posts were found.
-       if ( ! $get_posts->post_count )
-               return false;
-
-       // Build results.
-       $results = array();
-       foreach ( $posts as $post ) {
-               if ( 'post' == $post->post_type )
-                       $info = mysql2date( __( 'Y/m/d' ), $post->post_date );
-               else
-                       $info = $pts[ $post->post_type ]->labels->singular_name;
-
-               $results[] = array(
-                       'ID' => $post->ID,
-                       'title' => trim( esc_html( strip_tags( get_the_title( $post ) ) ) ),
-                       'permalink' => get_permalink( $post->ID ),
-                       'info' => $info,
-               );
-       }
-
-       return $results;
-}
-
-/**
- * Dialog for internal linking.
- *
- * @since 3.1.0
- */
-function wp_link_dialog() {
-?>
-<form id="wp-link" tabindex="-1">
-<?php wp_nonce_field( 'internal-linking', '_ajax_linking_nonce', false ); ?>
-<div id="link-selector">
-       <div id="link-options">
-               <p class="howto"><?php _e( 'Enter the destination URL' ); ?></p>
-               <div>
-                       <label><span><?php _e( 'URL' ); ?></span><input id="url-field" type="text" tabindex="10" name="href" /></label>
-               </div>
-               <div>
-                       <label><span><?php _e( 'Title' ); ?></span><input id="link-title-field" type="text" tabindex="20" name="linktitle" /></label>
-               </div>
-               <div class="link-target">
-                       <label><input type="checkbox" id="link-target-checkbox" tabindex="30" /> <?php _e( 'Open link in a new window/tab' ); ?></label>
-               </div>
-       </div>
-       <?php $show_internal = '1' == get_user_setting( 'wplink', '0' ); ?>
-       <p class="howto toggle-arrow <?php if ( $show_internal ) echo 'toggle-arrow-active'; ?>" id="internal-toggle"><?php _e( 'Or link to existing content' ); ?></p>
-       <div id="search-panel"<?php if ( ! $show_internal ) echo ' style="display:none"'; ?>>
-               <div class="link-search-wrapper">
-                       <label>
-                               <span><?php _e( 'Search' ); ?></span>
-                               <input type="text" id="search-field" class="link-search-field" tabindex="60" autocomplete="off" />
-                               <img class="waiting" src="<?php echo esc_url( admin_url( 'images/wpspin_light.gif' ) ); ?>" alt="" />
-                       </label>
-               </div>
-               <div id="search-results" class="query-results">
-                       <ul></ul>
-                       <div class="river-waiting">
-                               <img class="waiting" src="<?php echo esc_url( admin_url( 'images/wpspin_light.gif' ) ); ?>" alt="" />
-                       </div>
-               </div>
-               <div id="most-recent-results" class="query-results">
-                       <div class="query-notice"><em><?php _e( 'No search term specified. Showing recent items.' ); ?></em></div>
-                       <ul></ul>
-                       <div class="river-waiting">
-                               <img class="waiting" src="<?php echo esc_url( admin_url( 'images/wpspin_light.gif' ) ); ?>" alt="" />
-                       </div>
-               </div>
-       </div>
-</div>
-<div class="submitbox">
-       <div id="wp-link-cancel">
-               <a class="submitdelete deletion" href="#"><?php _e( 'Cancel' ); ?></a>
-       </div>
-       <div id="wp-link-update">
-               <?php submit_button( __('Update'), 'primary', 'wp-link-submit', false, array('tabindex' => 100)); ?>
-       </div>
-</div>
-</form>
-<?php
-}
-?>
index 600b5dbd78f40cf8952987e3a14c0cb91827367e..6f050c6013c8d4ca7ec251e0587c7b5e9d6b47ac 100644 (file)
@@ -158,10 +158,9 @@ function &get_manifest() {
                array('../wp-includes/js/tinymce/themes/advanced/img/fm.gif'),
                array('../wp-includes/js/tinymce/themes/advanced/img/gotmoxie.png'),
                array('../wp-includes/js/tinymce/themes/advanced/img/sflogo.png'),
                array('../wp-includes/js/tinymce/themes/advanced/img/fm.gif'),
                array('../wp-includes/js/tinymce/themes/advanced/img/gotmoxie.png'),
                array('../wp-includes/js/tinymce/themes/advanced/img/sflogo.png'),
-               array('../wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/butt2.png'),
                array('../wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/fade-butt.png'),
                array('../wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/tabs.gif'),
                array('../wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/fade-butt.png'),
                array('../wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/tabs.gif'),
-               array('../wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/down_arrow.gif'),
+               array('../wp-includes/images/down_arrow.gif'),
                array('../wp-includes/js/tinymce/themes/advanced/skins/default/img/progress.gif'),
                array('../wp-includes/js/tinymce/themes/advanced/skins/default/img/menu_check.gif'),
                array('../wp-includes/js/tinymce/themes/advanced/skins/default/img/menu_arrow.gif'),
                array('../wp-includes/js/tinymce/themes/advanced/skins/default/img/progress.gif'),
                array('../wp-includes/js/tinymce/themes/advanced/skins/default/img/menu_check.gif'),
                array('../wp-includes/js/tinymce/themes/advanced/skins/default/img/menu_arrow.gif'),
index def2343300f684bbc5277548a30e711b772f72d1..ff77e6c0a611f96b70dfdca299ccacceef3d2f00 100644 (file)
@@ -62,9 +62,16 @@ add_filter('media_upload_tabs', 'update_gallery_tab');
  * @since 2.5.0
  */
 function the_media_upload_tabs() {
  * @since 2.5.0
  */
 function the_media_upload_tabs() {
-       global $redir_tab;
+       global $redir_tab, $is_iphone;
        $tabs = media_upload_tabs();
 
        $tabs = media_upload_tabs();
 
+       if ( $is_iphone ) {
+               unset($tabs['type']);
+               $default = 'type_url';
+       } else {
+               $default = 'type';
+       }
+
        if ( !empty($tabs) ) {
                echo "<ul id='sidemenu'>\n";
                if ( isset($redir_tab) && array_key_exists($redir_tab, $tabs) )
        if ( !empty($tabs) ) {
                echo "<ul id='sidemenu'>\n";
                if ( isset($redir_tab) && array_key_exists($redir_tab, $tabs) )
@@ -72,13 +79,15 @@ function the_media_upload_tabs() {
                elseif ( isset($_GET['tab']) && array_key_exists($_GET['tab'], $tabs) )
                        $current = $_GET['tab'];
                else
                elseif ( isset($_GET['tab']) && array_key_exists($_GET['tab'], $tabs) )
                        $current = $_GET['tab'];
                else
-                       $current = apply_filters('media_upload_default_tab', 'type');
+                       $current = apply_filters('media_upload_default_tab', $default);
 
                foreach ( $tabs as $callback => $text ) {
                        $class = '';
 
                foreach ( $tabs as $callback => $text ) {
                        $class = '';
+
                        if ( $current == $callback )
                                $class = " class='current'";
                        if ( $current == $callback )
                                $class = " class='current'";
-                       $href = add_query_arg(array('tab'=>$callback, 's'=>false, 'paged'=>false, 'post_mime_type'=>false, 'm'=>false));
+
+                       $href = add_query_arg(array('tab' => $callback, 's' => false, 'paged' => false, 'post_mime_type' => false, 'm' => false));
                        $link = "<a href='" . esc_url($href) . "'$class>$text</a>";
                        echo "\t<li id='" . esc_attr("tab-$callback") . "'>$link</li>\n";
                }
                        $link = "<a href='" . esc_url($href) . "'$class>$text</a>";
                        echo "\t<li id='" . esc_attr("tab-$callback") . "'>$link</li>\n";
                }
@@ -274,7 +283,8 @@ function media_handle_sideload($file_array, $post_id, $desc = null, $post_data =
                        $content = $image_meta['caption'];
        }
 
                        $content = $image_meta['caption'];
        }
 
-       $title = isset($desc) ? $desc : '';
+       if ( isset( $desc ) )
+               $title = $desc;
 
        // Construct the attachment array
        $attachment = array_merge( array(
 
        // Construct the attachment array
        $attachment = array_merge( array(
@@ -308,15 +318,11 @@ function media_handle_sideload($file_array, $post_id, $desc = null, $post_data =
  * @param unknown_type $content_func
  */
 function wp_iframe($content_func /* ... */) {
  * @param unknown_type $content_func
  */
 function wp_iframe($content_func /* ... */) {
+       _wp_admin_html_begin();
 ?>
 ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" <?php do_action('admin_xml_ns'); ?> <?php language_attributes(); ?>>
-<head>
-<meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php echo get_option('blog_charset'); ?>" />
 <title><?php bloginfo('name') ?> &rsaquo; <?php _e('Uploads'); ?> &#8212; <?php _e('WordPress'); ?></title>
 <?php
 <title><?php bloginfo('name') ?> &rsaquo; <?php _e('Uploads'); ?> &#8212; <?php _e('WordPress'); ?></title>
 <?php
-wp_enqueue_style( 'global' );
-wp_enqueue_style( 'wp-admin' );
+
 wp_enqueue_style( 'colors' );
 // Check callback name for 'media'
 if ( ( is_array( $content_func ) && ! empty( $content_func[1] ) && 0 === strpos( (string) $content_func[1], 'media' ) )
 wp_enqueue_style( 'colors' );
 // Check callback name for 'media'
 if ( ( is_array( $content_func ) && ! empty( $content_func[1] ) && 0 === strpos( (string) $content_func[1], 'media' ) )
@@ -347,13 +353,7 @@ if ( is_string($content_func) )
 </head>
 <body<?php if ( isset($GLOBALS['body_id']) ) echo ' id="' . $GLOBALS['body_id'] . '"'; ?> class="no-js">
 <script type="text/javascript">
 </head>
 <body<?php if ( isset($GLOBALS['body_id']) ) echo ' id="' . $GLOBALS['body_id'] . '"'; ?> class="no-js">
 <script type="text/javascript">
-//<![CDATA[
-(function(){
-var c = document.body.className;
-c = c.replace(/no-js/, 'js');
-document.body.className = c;
-})();
-//]]>
+document.body.className = document.body.className.replace('no-js', 'js');
 </script>
 <?php
        $args = func_get_args();
 </script>
 <?php
        $args = func_get_args();
@@ -373,45 +373,28 @@ document.body.className = c;
  *
  * @since 2.5.0
  */
  *
  * @since 2.5.0
  */
-function media_buttons() {
-       $do_image = $do_audio = $do_video = true;
-       if ( is_multisite() ) {
-               $media_buttons = get_site_option( 'mu_media_buttons' );
-               if ( empty($media_buttons['image']) )
-                       $do_image = false;
-               if ( empty($media_buttons['audio']) )
-                       $do_audio = false;
-               if ( empty($media_buttons['video']) )
-                       $do_video = false;
-       }
-       $out = '';
-
-       if ( $do_image )
-               $out .= _media_button(__('Add an Image'), 'images/media-button-image.gif?ver=20100531', 'image');
-       if ( $do_video )
-               $out .= _media_button(__('Add Video'), 'images/media-button-video.gif?ver=20100531', 'video');
-       if ( $do_audio )
-               $out .= _media_button(__('Add Audio'), 'images/media-button-music.gif?ver=20100531', 'audio');
-
-       $out .= _media_button(__('Add Media'), 'images/media-button-other.gif?ver=20100531', 'media');
-
+function media_buttons($editor_id = 'content') {
        $context = apply_filters('media_buttons_context', __('Upload/Insert %s'));
 
        $context = apply_filters('media_buttons_context', __('Upload/Insert %s'));
 
-       printf($context, $out);
+       $img = '<img src="' . esc_url( admin_url( 'images/media-button.png?ver=20111005' ) ) . '" width="15" height="15" />';
+
+       echo '<a href="' . esc_url( get_upload_iframe_src() ) . '" class="thickbox add_media" id="' . esc_attr( $editor_id ) . '-add_media" title="' . esc_attr__( 'Add Media' ) . '" onclick="return false;">' . sprintf( $context, $img ) . '</a>';
 }
 add_action( 'media_buttons', 'media_buttons' );
 
 }
 add_action( 'media_buttons', 'media_buttons' );
 
-function _media_button($title, $icon, $type) {
-       return "<a href='" . esc_url( get_upload_iframe_src($type) ) . "' id='add_$type' class='thickbox' title='$title'><img src='" . esc_url( admin_url( $icon ) ) . "' alt='$title' onclick='return false;' /></a>";
+function _media_button($title, $icon, $type, $id) {
+       return "<a href='" . esc_url( get_upload_iframe_src($type) ) . "' id='{$id}-add_{$type}' class='thickbox add_$type' title='" . esc_attr( $title ) . "'><img src='" . esc_url( admin_url( $icon ) ) . "' alt='$title' onclick='return false;' /></a>";
 }
 
 }
 
-function get_upload_iframe_src($type) {
-       global $post_ID, $temp_ID;
-       $uploading_iframe_ID = (int) (0 == $post_ID ? $temp_ID : $post_ID);
-       $upload_iframe_src = add_query_arg('post_id', $uploading_iframe_ID, 'media-upload.php');
+function get_upload_iframe_src( $type = null ) {
+       global $post_ID;
 
 
-       if ( 'media' != $type )
+       $uploading_iframe_ID = (int) $post_ID;
+       $upload_iframe_src = add_query_arg( 'post_id', $uploading_iframe_ID, admin_url('media-upload.php') );
+
+       if ( $type && 'media' != $type )
                $upload_iframe_src = add_query_arg('type', $type, $upload_iframe_src);
                $upload_iframe_src = add_query_arg('type', $type, $upload_iframe_src);
+
        $upload_iframe_src = apply_filters($type . '_upload_iframe_src', $upload_iframe_src);
 
        return add_query_arg('TB_iframe', true, $upload_iframe_src);
        $upload_iframe_src = apply_filters($type . '_upload_iframe_src', $upload_iframe_src);
 
        return add_query_arg('TB_iframe', true, $upload_iframe_src);
@@ -516,7 +499,9 @@ function media_upload_form_handler() {
  *
  * @return unknown
  */
  *
  * @return unknown
  */
-function media_upload_image() {
+function wp_media_upload_handler() {
+       global $is_iphone;
+
        $errors = array();
        $id = 0;
 
        $errors = array();
        $id = 0;
 
@@ -532,20 +517,37 @@ function media_upload_image() {
        }
 
        if ( !empty($_POST['insertonlybutton']) ) {
        }
 
        if ( !empty($_POST['insertonlybutton']) ) {
-               $alt = $align = '';
-
-               $src = $_POST['insertonly']['src'];
+               $src = $_POST['src'];
                if ( !empty($src) && !strpos($src, '://') )
                        $src = "http://$src";
                if ( !empty($src) && !strpos($src, '://') )
                        $src = "http://$src";
-               $alt = esc_attr($_POST['insertonly']['alt']);
-               if ( isset($_POST['insertonly']['align']) ) {
-                       $align = esc_attr($_POST['insertonly']['align']);
-                       $class = " class='align$align'";
+
+               if ( isset( $_POST['media_type'] ) && 'image' != $_POST['media_type'] ) {
+                       $title = esc_html( stripslashes( $_POST['title'] ) );
+                       if ( empty( $title ) )
+                               $title = esc_html( basename( $src ) );
+
+                       if ( $title && $src )
+                               $html = "<a href='" . esc_url($src) . "'>$title</a>";
+
+                       $type = 'file';
+                       if ( ( $ext = preg_replace( '/^.+?\.([^.]+)$/', '$1', $src ) ) && ( $ext_type = wp_ext2type( $ext ) )
+                               && ( 'audio' == $ext_type || 'video' == $ext_type ) )
+                                       $type = $ext_type;
+
+                       $html = apply_filters( $type . '_send_to_editor_url', $html, esc_url_raw( $src ), $title );
+               } else {
+                       $align = '';
+                       $alt = esc_attr( stripslashes( $_POST['alt'] ) );
+                       if ( isset($_POST['align']) ) {
+                               $align = esc_attr( stripslashes( $_POST['align'] ) );
+                               $class = " class='align$align'";
+                       }
+                       if ( !empty($src) )
+                               $html = "<img src='" . esc_url($src) . "' alt='$alt'$class />";
+
+                       $html = apply_filters( 'image_send_to_editor_url', $html, esc_url_raw( $src ), $alt, $align );
                }
                }
-               if ( !empty($src) )
-                       $html = "<img src='" . esc_url($src) . "' alt='$alt'$class />";
 
 
-               $html = apply_filters('image_send_to_editor_url', $html, esc_url_raw($src), $alt, $align);
                return media_send_to_editor($html);
        }
 
                return media_send_to_editor($html);
        }
 
@@ -563,10 +565,17 @@ function media_upload_image() {
                return media_upload_gallery();
        }
 
                return media_upload_gallery();
        }
 
-       if ( isset($_GET['tab']) && $_GET['tab'] == 'type_url' )
-               return wp_iframe( 'media_upload_type_url_form', 'image', $errors, $id );
+       if ( isset($_GET['tab']) && $_GET['tab'] == 'type_url' ) {
+               $type = 'image';
+               if ( isset( $_GET['type'] ) && in_array( $_GET['type'], array( 'video', 'audio', 'file' ) ) )
+                       $type = $_GET['type'];
+               return wp_iframe( 'media_upload_type_url_form', $type, $errors, $id );
+       }
 
 
-       return wp_iframe( 'media_upload_type_form', 'image', $errors, $id );
+       if ( $is_iphone )
+               return wp_iframe( 'media_upload_type_url_form', 'image', $errors, $id );
+       else
+               return wp_iframe( 'media_upload_type_form', 'image', $errors, $id );
 }
 
 /**
 }
 
 /**
@@ -615,180 +624,6 @@ function media_sideload_image($file, $post_id, $desc = null) {
        }
 }
 
        }
 }
 
-/**
- * {@internal Missing Short Description}}
- *
- * @since 2.5.0
- *
- * @return unknown
- */
-function media_upload_audio() {
-       $errors = array();
-       $id = 0;
-
-       if ( isset($_POST['html-upload']) && !empty($_FILES) ) {
-               check_admin_referer('media-form');
-               // Upload File button was clicked
-               $id = media_handle_upload('async-upload', $_REQUEST['post_id']);
-               unset($_FILES);
-               if ( is_wp_error($id) ) {
-                       $errors['upload_error'] = $id;
-                       $id = false;
-               }
-       }
-
-       if ( !empty($_POST['insertonlybutton']) ) {
-               $href = $_POST['insertonly']['href'];
-               if ( !empty($href) && !strpos($href, '://') )
-                       $href = "http://$href";
-
-               $title = esc_attr($_POST['insertonly']['title']);
-               if ( empty($title) )
-            $title = esc_attr( basename($href) );
-
-               if ( !empty($title) && !empty($href) )
-            $html = "<a href='" . esc_url($href) . "' >$title</a>";
-
-               $html = apply_filters('audio_send_to_editor_url', $html, $href, $title);
-
-               return media_send_to_editor($html);
-       }
-
-       if ( !empty($_POST) ) {
-               $return = media_upload_form_handler();
-
-               if ( is_string($return) )
-                       return $return;
-               if ( is_array($return) )
-                       $errors = $return;
-       }
-
-       if ( isset($_POST['save']) ) {
-               $errors['upload_notice'] = __('Saved.');
-               return media_upload_gallery();
-       }
-
-       if ( isset($_GET['tab']) && $_GET['tab'] == 'type_url' )
-               return wp_iframe( 'media_upload_type_url_form', 'audio', $errors, $id );
-
-       return wp_iframe( 'media_upload_type_form', 'audio', $errors, $id );
-}
-
-/**
- * {@internal Missing Short Description}}
- *
- * @since 2.5.0
- *
- * @return unknown
- */
-function media_upload_video() {
-       $errors = array();
-       $id = 0;
-
-       if ( isset($_POST['html-upload']) && !empty($_FILES) ) {
-               check_admin_referer('media-form');
-               // Upload File button was clicked
-               $id = media_handle_upload('async-upload', $_REQUEST['post_id']);
-               unset($_FILES);
-               if ( is_wp_error($id) ) {
-                       $errors['upload_error'] = $id;
-                       $id = false;
-               }
-       }
-
-       if ( !empty($_POST['insertonlybutton']) ) {
-               $href = $_POST['insertonly']['href'];
-               if ( !empty($href) && !strpos($href, '://') )
-                       $href = "http://$href";
-
-               $title = esc_attr($_POST['insertonly']['title']);
-        if ( empty($title) )
-            $title = esc_attr( basename($href) );
-
-               if ( !empty($title) && !empty($href) )
-            $html = "<a href='" . esc_url($href) . "' >$title</a>";
-
-               $html = apply_filters('video_send_to_editor_url', $html, $href, $title);
-
-               return media_send_to_editor($html);
-       }
-
-       if ( !empty($_POST) ) {
-               $return = media_upload_form_handler();
-
-               if ( is_string($return) )
-                       return $return;
-               if ( is_array($return) )
-                       $errors = $return;
-       }
-
-       if ( isset($_POST['save']) ) {
-               $errors['upload_notice'] = __('Saved.');
-               return media_upload_gallery();
-       }
-
-       if ( isset($_GET['tab']) && $_GET['tab'] == 'type_url' )
-               return wp_iframe( 'media_upload_type_url_form', 'video', $errors, $id );
-
-       return wp_iframe( 'media_upload_type_form', 'video', $errors, $id );
-}
-
-/**
- * {@internal Missing Short Description}}
- *
- * @since 2.5.0
- *
- * @return unknown
- */
-function media_upload_file() {
-       $errors = array();
-       $id = 0;
-
-       if ( isset($_POST['html-upload']) && !empty($_FILES) ) {
-               check_admin_referer('media-form');
-               // Upload File button was clicked
-               $id = media_handle_upload('async-upload', $_REQUEST['post_id']);
-               unset($_FILES);
-               if ( is_wp_error($id) ) {
-                       $errors['upload_error'] = $id;
-                       $id = false;
-               }
-       }
-
-       if ( !empty($_POST['insertonlybutton']) ) {
-               $href = $_POST['insertonly']['href'];
-               if ( !empty($href) && !strpos($href, '://') )
-                       $href = "http://$href";
-
-               $title = esc_attr($_POST['insertonly']['title']);
-               if ( empty($title) )
-                       $title = basename($href);
-               if ( !empty($title) && !empty($href) )
-                       $html = "<a href='" . esc_url($href) . "' >$title</a>";
-               $html = apply_filters('file_send_to_editor_url', $html, esc_url_raw($href), $title);
-               return media_send_to_editor($html);
-       }
-
-       if ( !empty($_POST) ) {
-               $return = media_upload_form_handler();
-
-               if ( is_string($return) )
-                       return $return;
-               if ( is_array($return) )
-                       $errors = $return;
-       }
-
-       if ( isset($_POST['save']) ) {
-               $errors['upload_notice'] = __('Saved.');
-               return media_upload_gallery();
-       }
-
-       if ( isset($_GET['tab']) && $_GET['tab'] == 'type_url' )
-               return wp_iframe( 'media_upload_type_url_form', 'file', $errors, $id );
-
-       return wp_iframe( 'media_upload_type_form', 'file', $errors, $id );
-}
-
 /**
  * {@internal Missing Short Description}}
  *
 /**
  * {@internal Missing Short Description}}
  *
@@ -873,7 +708,7 @@ function image_align_input_fields( $post, $checked = '' ) {
 function image_size_input_fields( $post, $check = '' ) {
 
                // get a list of the actual pixel dimensions of each possible intermediate version of this image
 function image_size_input_fields( $post, $check = '' ) {
 
                // get a list of the actual pixel dimensions of each possible intermediate version of this image
-               $size_names = array('thumbnail' => __('Thumbnail'), 'medium' => __('Medium'), 'large' => __('Large'), 'full' => __('Full Size'));
+               $size_names = apply_filters( 'image_size_names_choose', array('thumbnail' => __('Thumbnail'), 'medium' => __('Medium'), 'large' => __('Large'), 'full' => __('Full Size')) );
 
                if ( empty($check) )
                        $check = get_user_setting('imgsize', 'medium');
 
                if ( empty($check) )
                        $check = get_user_setting('imgsize', 'medium');
@@ -943,7 +778,7 @@ function image_link_input_fields($post, $url_type = '') {
        <input type='text' class='text urlfield' name='attachments[$post->ID][url]' value='" . esc_attr($url) . "' /><br />
        <button type='button' class='button urlnone' title=''>" . __('None') . "</button>
        <button type='button' class='button urlfile' title='" . esc_attr($file) . "'>" . __('File URL') . "</button>
        <input type='text' class='text urlfield' name='attachments[$post->ID][url]' value='" . esc_attr($url) . "' /><br />
        <button type='button' class='button urlnone' title=''>" . __('None') . "</button>
        <button type='button' class='button urlfile' title='" . esc_attr($file) . "'>" . __('File URL') . "</button>
-       <button type='button' class='button urlpost' title='" . esc_attr($link) . "'>" . __('Post URL') . "</button>
+       <button type='button' class='button urlpost' title='" . esc_attr($link) . "'>" . __('Attachment Post URL') . "</button>
 ";
 }
 
 ";
 }
 
@@ -1181,7 +1016,7 @@ function get_media_items( $post_id, $errors ) {
                if ( $attachment->post_status == 'trash' )
                        continue;
                if ( $item = get_media_item( $id, array( 'errors' => isset($errors[$id]) ? $errors[$id] : null) ) )
                if ( $attachment->post_status == 'trash' )
                        continue;
                if ( $item = get_media_item( $id, array( 'errors' => isset($errors[$id]) ? $errors[$id] : null) ) )
-                       $output .= "\n<div id='media-item-$id' class='media-item child-of-$attachment->post_parent preloaded'><div class='progress'><div class='bar'></div></div><div id='media-upload-error-$id'></div><div class='filename'></div>$item\n</div>";
+                       $output .= "\n<div id='media-item-$id' class='media-item child-of-$attachment->post_parent preloaded'><div class='progress hidden'><div class='bar'></div></div><div id='media-upload-error-$id' class='hidden'></div><div class='filename hidden'></div>$item\n</div>";
        }
 
        return $output;
        }
 
        return $output;
@@ -1205,8 +1040,9 @@ function get_media_item( $attachment_id, $args = null ) {
                $thumb_url = false;
 
        $post = get_post( $attachment_id );
                $thumb_url = false;
 
        $post = get_post( $attachment_id );
+       $current_post_id = !empty( $_GET['post_id'] ) ? (int) $_GET['post_id'] : 0;
 
 
-       $default_args = array( 'errors' => null, 'send' => $post->post_parent ? post_type_supports( get_post_type( $post->post_parent ), 'editor' ) : true, 'delete' => true, 'toggle' => true, 'show_title' => true );
+       $default_args = array( 'errors' => null, 'send' => $current_post_id ? post_type_supports( get_post_type( $current_post_id ), 'editor' ) : true, 'delete' => true, 'toggle' => true, 'show_title' => true );
        $args = wp_parse_args( $args, $default_args );
        $args = apply_filters( 'get_media_item_args', $args );
        extract( $args, EXTR_SKIP );
        $args = wp_parse_args( $args, $default_args );
        $args = apply_filters( 'get_media_item_args', $args );
        extract( $args, EXTR_SKIP );
@@ -1236,7 +1072,7 @@ function get_media_item( $attachment_id, $args = null ) {
        <a class='toggle describe-toggle-on' href='#'>$toggle_on</a>
        <a class='toggle describe-toggle-off' href='#'>$toggle_off</a>";
        } else {
        <a class='toggle describe-toggle-on' href='#'>$toggle_on</a>
        <a class='toggle describe-toggle-off' href='#'>$toggle_off</a>";
        } else {
-               $class = 'form-table';
+               $class = '';
                $toggle_links = '';
        }
 
                $toggle_links = '';
        }
 
@@ -1281,7 +1117,7 @@ function get_media_item( $attachment_id, $args = null ) {
                <thead class='media-item-info' id='media-head-$post->ID'>
                <tr valign='top'>
                        <td class='A1B1' id='thumbnail-head-$post->ID'>
                <thead class='media-item-info' id='media-head-$post->ID'>
                <tr valign='top'>
                        <td class='A1B1' id='thumbnail-head-$post->ID'>
-                       <p><a href='$attachment_url' target='_blank'><img class='thumbnail' src='$thumb_url' alt='' style='margin-top: 3px' /></a></p>
+                       <p><a href='$attachment_url' target='_blank'><img class='thumbnail' src='$thumb_url' alt='' /></a></p>
                        <p>$image_edit_button</p>
                        </td>
                        <td>
                        <p>$image_edit_button</p>
                        </td>
                        <td>
@@ -1333,7 +1169,8 @@ function get_media_item( $attachment_id, $args = null ) {
                $calling_post_id = absint( $_GET['post_id'] );
        elseif ( isset( $_POST ) && count( $_POST ) ) // Like for async-upload where $_GET['post_id'] isn't set
                $calling_post_id = $post->post_parent;
                $calling_post_id = absint( $_GET['post_id'] );
        elseif ( isset( $_POST ) && count( $_POST ) ) // Like for async-upload where $_GET['post_id'] isn't set
                $calling_post_id = $post->post_parent;
-       if ( 'image' == $type && $calling_post_id && current_theme_supports( 'post-thumbnails', get_post_type( $calling_post_id ) ) && get_post_thumbnail_id( $calling_post_id ) != $attachment_id ) {
+       if ( 'image' == $type && $calling_post_id && current_theme_supports( 'post-thumbnails', get_post_type( $calling_post_id ) )
+               && post_type_supports( get_post_type( $calling_post_id ), 'thumbnail' ) && get_post_thumbnail_id( $calling_post_id ) != $attachment_id ) {
                $ajax_nonce = wp_create_nonce( "set_post_thumbnail-$calling_post_id" );
                $thumbnail = "<a class='wp-post-thumbnail' id='wp-post-thumbnail-" . $attachment_id . "' href='#' onclick='WPSetAsThumbnail(\"$attachment_id\", \"$ajax_nonce\");return false;'>" . esc_html__( "Use as featured image" ) . "</a>";
        }
                $ajax_nonce = wp_create_nonce( "set_post_thumbnail-$calling_post_id" );
                $thumbnail = "<a class='wp-post-thumbnail' id='wp-post-thumbnail-" . $attachment_id . "' href='#' onclick='WPSetAsThumbnail(\"$attachment_id\", \"$ajax_nonce\");return false;'>" . esc_html__( "Use as featured image" ) . "</a>";
        }
@@ -1435,22 +1272,23 @@ function media_upload_header() {
  * @param unknown_type $errors
  */
 function media_upload_form( $errors = null ) {
  * @param unknown_type $errors
  */
 function media_upload_form( $errors = null ) {
-       global $type, $tab, $pagenow;
-
-       $flash_action_url = admin_url('async-upload.php');
+       global $type, $tab, $pagenow, $is_IE, $is_opera, $is_iphone;
 
 
-       // If Mac and mod_security, no Flash. :(
-       $flash = true;
-       if ( false !== stripos($_SERVER['HTTP_USER_AGENT'], 'mac') && apache_mod_loaded('mod_security') )
-               $flash = false;
+       if ( $is_iphone )
+               return;
 
 
-       $flash = apply_filters('flash_uploader', $flash);
+       $upload_action_url = admin_url('async-upload.php');
        $post_id = isset($_REQUEST['post_id']) ? intval($_REQUEST['post_id']) : 0;
        $post_id = isset($_REQUEST['post_id']) ? intval($_REQUEST['post_id']) : 0;
+       $_type = isset($type) ? $type : '';
+       $_tab = isset($tab) ? $tab : '';
 
 
-       $upload_size_unit = $max_upload_size =  wp_max_upload_size();
+       $upload_size_unit = $max_upload_size = wp_max_upload_size();
        $sizes = array( 'KB', 'MB', 'GB' );
        $sizes = array( 'KB', 'MB', 'GB' );
-       for ( $u = -1; $upload_size_unit > 1024 && $u < count( $sizes ) - 1; $u++ )
+
+       for ( $u = -1; $upload_size_unit > 1024 && $u < count( $sizes ) - 1; $u++ ) {
                $upload_size_unit /= 1024;
                $upload_size_unit /= 1024;
+       }
+
        if ( $u < 0 ) {
                $upload_size_unit = 0;
                $u = 0;
        if ( $u < 0 ) {
                $upload_size_unit = 0;
                $u = 0;
@@ -1458,26 +1296,19 @@ function media_upload_form( $errors = null ) {
                $upload_size_unit = (int) $upload_size_unit;
        }
 ?>
                $upload_size_unit = (int) $upload_size_unit;
        }
 ?>
-<script type="text/javascript">
-//<![CDATA[
-var uploaderMode = 0;
-jQuery(document).ready(function($){
-       uploaderMode = getUserSetting('uploader');
-       $('.upload-html-bypass a').click(function(){deleteUserSetting('uploader');uploaderMode=0;swfuploadPreLoad();return false;});
-       $('.upload-flash-bypass a').click(function(){setUserSetting('uploader', '1');uploaderMode=1;swfuploadPreLoad();return false;});
-});
-//]]>
-</script>
-<div id="media-upload-notice">
-<?php if (isset($errors['upload_notice']) ) { ?>
-       <?php echo $errors['upload_notice']; ?>
-<?php } ?>
-</div>
-<div id="media-upload-error">
-<?php if (isset($errors['upload_error']) && is_wp_error($errors['upload_error'])) { ?>
-       <?php echo $errors['upload_error']->get_error_message(); ?>
-<?php } ?>
-</div>
+
+<div id="media-upload-notice"><?php
+
+       if (isset($errors['upload_notice']) )
+               echo $errors['upload_notice'];
+
+?></div>
+<div id="media-upload-error"><?php
+
+       if (isset($errors['upload_error']) && is_wp_error($errors['upload_error']))
+               echo $errors['upload_error']->get_error_message();
+
+?></div>
 <?php
 // Check quota for this blog if multisite
 if ( is_multisite() && !is_upload_space_available() ) {
 <?php
 // Check quota for this blog if multisite
 if ( is_multisite() && !is_upload_space_available() ) {
@@ -1487,93 +1318,64 @@ if ( is_multisite() && !is_upload_space_available() ) {
 
 do_action('pre-upload-ui');
 
 
 do_action('pre-upload-ui');
 
-if ( $flash ) :
-
-// Set the post params, which SWFUpload will post back with the file, and pass
-// them through a filter.
 $post_params = array(
                "post_id" => $post_id,
 $post_params = array(
                "post_id" => $post_id,
-               "auth_cookie" => (is_ssl() ? $_COOKIE[SECURE_AUTH_COOKIE] : $_COOKIE[AUTH_COOKIE]),
-               "logged_in_cookie" => $_COOKIE[LOGGED_IN_COOKIE],
                "_wpnonce" => wp_create_nonce('media-form'),
                "_wpnonce" => wp_create_nonce('media-form'),
-               "type" => $type,
-               "tab" => $tab,
+               "type" => $_type,
+               "tab" => $_tab,
                "short" => "1",
 );
                "short" => "1",
 );
-$post_params = apply_filters( 'swfupload_post_params', $post_params );
-$p = array();
-foreach ( $post_params as $param => $val )
-       $p[] = "\t\t'$param' : '$val'";
-$post_params_str = implode( ", \n", $p );
-
-// #8545. wmode=transparent cannot be used with SWFUpload
-if ( 'media-new.php' == $pagenow ) {
-       $upload_image_path = get_user_option( 'admin_color' );
-       if ( 'classic' != $upload_image_path )
-               $upload_image_path = 'fresh';
-       $upload_image_path = admin_url( 'images/upload-' . $upload_image_path . '.png?ver=20101205' );
-} else {
-       $upload_image_path = includes_url( 'images/upload.png?ver=20100531' );
-}
+
+$post_params = apply_filters( 'upload_post_params', $post_params ); // hook change! old name: 'swfupload_post_params'
+
+$plupload_init = array(
+       'runtimes' => 'html5,silverlight,flash,html4',
+       'browse_button' => 'plupload-browse-button',
+       'container' => 'plupload-upload-ui',
+       'drop_element' => 'drag-drop-area',
+       'file_data_name' => 'async-upload',
+       'multiple_queues' => true,
+       'max_file_size' => $max_upload_size . 'b',
+       'url' => $upload_action_url,
+       'flash_swf_url' => includes_url('js/plupload/plupload.flash.swf'),
+       'silverlight_xap_url' => includes_url('js/plupload/plupload.silverlight.xap'),
+       'filters' => array( array('title' => __( 'Allowed Files' ), 'extensions' => '*') ),
+       'multipart' => true,
+       'urlstream_upload' => true,
+       'multipart_params' => $post_params
+);
+
+$plupload_init = apply_filters( 'plupload_init', $plupload_init );
 
 ?>
 
 ?>
+
 <script type="text/javascript">
 <script type="text/javascript">
-//<![CDATA[
-var swfu;
-SWFUpload.onload = function() {
-       var settings = {
-                       button_text: '<span class="button"><?php _e('Select Files'); ?><\/span>',
-                       button_text_style: '.button { text-align: center; font-weight: bold; font-family:"Lucida Grande",Verdana,Arial,"Bitstream Vera Sans",sans-serif; font-size: 11px; text-shadow: 0 1px 0 #FFFFFF; color:#464646; }',
-                       button_height: "23",
-                       button_width: "132",
-                       button_text_top_padding: 3,
-                       button_image_url: '<?php echo $upload_image_path; ?>',
-                       button_placeholder_id: "flash-browse-button",
-                       upload_url : "<?php echo esc_attr( $flash_action_url ); ?>",
-                       flash_url : "<?php echo includes_url('js/swfupload/swfupload.swf'); ?>",
-                       file_post_name: "async-upload",
-                       file_types: "<?php echo apply_filters('upload_file_glob', '*.*'); ?>",
-                       post_params : {
-                               <?php echo $post_params_str; ?>
-                       },
-                       file_size_limit : "<?php echo $max_upload_size; ?>b",
-                       file_dialog_start_handler : fileDialogStart,
-                       file_queued_handler : fileQueued,
-                       upload_start_handler : uploadStart,
-                       upload_progress_handler : uploadProgress,
-                       upload_error_handler : uploadError,
-                       upload_success_handler : <?php echo apply_filters( 'swfupload_success_handler', 'uploadSuccess' ); ?>,
-                       upload_complete_handler : uploadComplete,
-                       file_queue_error_handler : fileQueueError,
-                       file_dialog_complete_handler : fileDialogComplete,
-                       swfupload_pre_load_handler: swfuploadPreLoad,
-                       swfupload_load_failed_handler: swfuploadLoadFailed,
-                       custom_settings : {
-                               degraded_element_id : "html-upload-ui", // id of the element displayed when swfupload is unavailable
-                               swfupload_element_id : "flash-upload-ui" // id of the element displayed when swfupload is available
-                       },
-                       debug: false
-               };
-               swfu = new SWFUpload(settings);
-};
-//]]>
+<?php
+// Verify size is an int. If not return default value.
+$large_size_h = absint( get_option('large_size_h') );
+if( !$large_size_h )
+       $large_size_h = 1024;
+$large_size_w = absint( get_option('large_size_w') );
+if( !$large_size_w )
+       $large_size_w = 1024;
+?>
+var resize_height = <?php echo $large_size_h; ?>, resize_width = <?php echo $large_size_w; ?>,
+wpUploaderInit = <?php echo json_encode($plupload_init); ?>;
 </script>
 
 </script>
 
-<div id="flash-upload-ui" class="hide-if-no-js">
-<?php do_action('pre-flash-upload-ui'); ?>
-
-       <div>
-       <?php _e( 'Choose files to upload' ); ?>
-       <div id="flash-browse-button"></div>
-       <span><input id="cancel-upload" disabled="disabled" onclick="cancelUpload()" type="button" value="<?php esc_attr_e('Cancel Upload'); ?>" class="button" /></span>
+<div id="plupload-upload-ui" class="hide-if-no-js">
+<?php do_action('pre-plupload-upload-ui'); // hook change, old name: 'pre-flash-upload-ui' ?>
+<div id="drag-drop-area">
+       <div class="drag-drop-inside">
+       <p class="drag-drop-info"><?php _e('Drop files here'); ?></p>
+       <p><?php _ex('or', 'Uploader: Drop files here - or - Select Files'); ?></p>
+       <p class="drag-drop-buttons"><input id="plupload-browse-button" type="button" value="<?php esc_attr_e('Select Files'); ?>" class="button" /></p>
        </div>
        </div>
-       <p class="media-upload-size"><?php printf( __( 'Maximum upload file size: %d%s' ), $upload_size_unit, $sizes[$u] ); ?></p>
-<?php do_action('post-flash-upload-ui'); ?>
-       <p class="howto"><?php _e('After a file has been uploaded, you can add titles and descriptions.'); ?></p>
 </div>
 </div>
-<?php endif; // $flash ?>
+<?php do_action('post-plupload-upload-ui'); // hook change, old name: 'post-flash-upload-ui' ?>
+</div>
 
 
-<div id="html-upload-ui" <?php if ( $flash ) echo 'class="hide-if-js"'; ?>>
+<div id="html-upload-ui" class="hide-if-js">
 <?php do_action('pre-html-upload-ui'); ?>
        <p id="async-upload-wrap">
                <label class="screen-reader-text" for="async-upload"><?php _e('Upload'); ?></label>
 <?php do_action('pre-html-upload-ui'); ?>
        <p id="async-upload-wrap">
                <label class="screen-reader-text" for="async-upload"><?php _e('Upload'); ?></label>
@@ -1582,14 +1384,16 @@ SWFUpload.onload = function() {
                <a href="#" onclick="try{top.tb_remove();}catch(e){}; return false;"><?php _e('Cancel'); ?></a>
        </p>
        <div class="clear"></div>
                <a href="#" onclick="try{top.tb_remove();}catch(e){}; return false;"><?php _e('Cancel'); ?></a>
        </p>
        <div class="clear"></div>
-       <p class="media-upload-size"><?php printf( __( 'Maximum upload file size: %d%s' ), $upload_size_unit, $sizes[$u] ); ?></p>
-       <?php if ( is_lighttpd_before_150() ): ?>
-       <p><?php _e('If you want to use all capabilities of the uploader, like uploading multiple files at once, please update to lighttpd 1.5.'); ?></p>
-       <?php endif;?>
-<?php do_action('post-html-upload-ui', $flash); ?>
+<?php do_action('post-html-upload-ui'); ?>
 </div>
 </div>
-<?php do_action('post-upload-ui'); ?>
+
+<span class="max-upload-size"><?php printf( __( 'Maximum upload file size: %d%s.' ), esc_html($upload_size_unit), esc_html($sizes[$u]) ); ?></span>
 <?php
 <?php
+if ( ($is_IE || $is_opera) && $max_upload_size > 100 * 1024 * 1024 ) { ?>
+       <span class="big-file-warning"><?php _e('Your browser has some limitations uploading large files with the multi-file uploader. Please use the browser uploader for files over 100MB.'); ?></span>
+<?php }
+
+       do_action('post-upload-ui');
 }
 
 /**
 }
 
 /**
@@ -1602,15 +1406,24 @@ SWFUpload.onload = function() {
  * @param unknown_type $id
  */
 function media_upload_type_form($type = 'file', $errors = null, $id = null) {
  * @param unknown_type $id
  */
 function media_upload_type_form($type = 'file', $errors = null, $id = null) {
+       global $is_iphone;
+
+       if ( $is_iphone )
+               return;
+
        media_upload_header();
 
        $post_id = isset( $_REQUEST['post_id'] )? intval( $_REQUEST['post_id'] ) : 0;
 
        $form_action_url = admin_url("media-upload.php?type=$type&tab=type&post_id=$post_id");
        $form_action_url = apply_filters('media_upload_form_url', $form_action_url, $type);
        media_upload_header();
 
        $post_id = isset( $_REQUEST['post_id'] )? intval( $_REQUEST['post_id'] ) : 0;
 
        $form_action_url = admin_url("media-upload.php?type=$type&tab=type&post_id=$post_id");
        $form_action_url = apply_filters('media_upload_form_url', $form_action_url, $type);
+       $form_class = 'media-upload-form type-form validate';
+
+       if ( get_user_setting('uploader') )
+               $form_class .= ' html-uploader';
 ?>
 
 ?>
 
-<form enctype="multipart/form-data" method="post" action="<?php echo esc_attr($form_action_url); ?>" class="media-upload-form type-form validate" id="<?php echo $type; ?>-form">
+<form enctype="multipart/form-data" method="post" action="<?php echo esc_attr($form_action_url); ?>" class="<?php echo $form_class; ?>" id="<?php echo $type; ?>-form">
 <?php submit_button( '', 'hidden', 'save', false ); ?>
 <input type="hidden" name="post_id" id="post_id" value="<?php echo (int) $post_id; ?>" />
 <?php wp_nonce_field('media-form'); ?>
 <?php submit_button( '', 'hidden', 'save', false ); ?>
 <input type="hidden" name="post_id" id="post_id" value="<?php echo (int) $post_id; ?>" />
 <?php wp_nonce_field('media-form'); ?>
@@ -1630,19 +1443,19 @@ jQuery(function($){
 });
 //]]>
 </script>
 });
 //]]>
 </script>
-<div id="media-items">
-<?php
+<div id="media-items"><?php
+
 if ( $id ) {
        if ( !is_wp_error($id) ) {
                add_filter('attachment_fields_to_edit', 'media_post_single_attachment_fields_to_edit', 10, 2);
                echo get_media_items( $id, $errors );
        } else {
 if ( $id ) {
        if ( !is_wp_error($id) ) {
                add_filter('attachment_fields_to_edit', 'media_post_single_attachment_fields_to_edit', 10, 2);
                echo get_media_items( $id, $errors );
        } else {
-               echo '<div id="media-upload-error">'.esc_html($id->get_error_message()).'</div>';
+               echo '<div id="media-upload-error">'.esc_html($id->get_error_message()).'</div></div>';
                exit;
        }
 }
                exit;
        }
 }
-?>
-</div>
+?></div>
+
 <p class="savebutton ml-submit">
 <?php submit_button( __( 'Save all changes' ), 'button', 'save', false ); ?>
 </p>
 <p class="savebutton ml-submit">
 <?php submit_button( __( 'Save all changes' ), 'button', 'save', false ); ?>
 </p>
@@ -1659,24 +1472,27 @@ if ( $id ) {
  * @param unknown_type $errors
  * @param unknown_type $id
  */
  * @param unknown_type $errors
  * @param unknown_type $id
  */
-function media_upload_type_url_form($type = 'file', $errors = null, $id = null) {
+function media_upload_type_url_form($type = null, $errors = null, $id = null) {
+       if ( null === $type )
+               $type = 'image';
+
        media_upload_header();
 
        $post_id = intval($_REQUEST['post_id']);
 
        $form_action_url = admin_url("media-upload.php?type=$type&tab=type&post_id=$post_id");
        $form_action_url = apply_filters('media_upload_form_url', $form_action_url, $type);
        media_upload_header();
 
        $post_id = intval($_REQUEST['post_id']);
 
        $form_action_url = admin_url("media-upload.php?type=$type&tab=type&post_id=$post_id");
        $form_action_url = apply_filters('media_upload_form_url', $form_action_url, $type);
+       $form_class = 'media-upload-form type-form validate';
 
 
-       $callback = "type_url_form_$type";
+       if ( get_user_setting('uploader') )
+               $form_class .= ' html-uploader';
 ?>
 
 ?>
 
-<form enctype="multipart/form-data" method="post" action="<?php echo esc_attr($form_action_url); ?>" class="media-upload-form type-form validate" id="<?php echo $type; ?>-form">
+<form enctype="multipart/form-data" method="post" action="<?php echo esc_attr($form_action_url); ?>" class="<?php echo $form_class; ?>" id="<?php echo $type; ?>-form">
 <input type="hidden" name="post_id" id="post_id" value="<?php echo (int) $post_id; ?>" />
 <?php wp_nonce_field('media-form'); ?>
 
 <input type="hidden" name="post_id" id="post_id" value="<?php echo (int) $post_id; ?>" />
 <?php wp_nonce_field('media-form'); ?>
 
-<?php if ( is_callable($callback) ) { ?>
-
-<h3 class="media-title"><?php _e('Add media file from URL'); ?></h3>
+<h3 class="media-title"><?php _e('Insert media from another website'); ?></h3>
 
 <script type="text/javascript">
 //<![CDATA[
 
 <script type="text/javascript">
 //<![CDATA[
@@ -1709,8 +1525,10 @@ var addExtImage = {
 
                html = '<img alt="'+alt+'" src="'+f.src.value+'"'+title+cls+' width="'+t.width+'" height="'+t.height+'" />';
 
 
                html = '<img alt="'+alt+'" src="'+f.src.value+'"'+title+cls+' width="'+t.width+'" height="'+t.height+'" />';
 
-               if ( f.url.value )
-                       html = '<a href="'+f.url.value+'">'+html+'</a>';
+               if ( f.url.value ) {
+                       url = f.url.value.replace(/'/g, '&#039;').replace(/"/g, '&quot;').replace(/</g, '&lt;').replace(/>/g, '&gt;');
+                       html = '<a href="'+url+'">'+html+'</a>';
+               }
 
                if ( caption )
                        html = '[caption id="" align="'+t.align+'" width="'+t.width+'" caption="'+caption+'"]'+html+'[/caption]';
 
                if ( caption )
                        html = '[caption id="" align="'+t.align+'" width="'+t.width+'" caption="'+caption+'"]'+html+'[/caption]';
@@ -1740,12 +1558,16 @@ var addExtImage = {
        },
 
        getImageData : function() {
        },
 
        getImageData : function() {
+               if ( jQuery('table.describe').hasClass('not-image') )
+                       return;
+
                var t = addExtImage, src = document.forms[0].src.value;
 
                if ( ! src ) {
                        t.resetImageData();
                        return false;
                }
                var t = addExtImage, src = document.forms[0].src.value;
 
                if ( ! src ) {
                        t.resetImageData();
                        return false;
                }
+
                document.getElementById('status_img').innerHTML = '<img src="<?php echo esc_url( admin_url( 'images/wpspin_light.gif' ) ); ?>" alt="" />';
                t.preloadImg = new Image();
                t.preloadImg.onload = t.updateImageData;
                document.getElementById('status_img').innerHTML = '<img src="<?php echo esc_url( admin_url( 'images/wpspin_light.gif' ) ); ?>" alt="" />';
                t.preloadImg = new Image();
                t.preloadImg.onload = t.updateImageData;
@@ -1753,19 +1575,23 @@ var addExtImage = {
                t.preloadImg.src = src;
        }
 }
                t.preloadImg.src = src;
        }
 }
+
+jQuery(document).ready( function($) {
+       $('.media-types input').click( function() {
+               $('table.describe').toggleClass('not-image', $('#not-image').prop('checked') );
+       });
+});
+
 //]]>
 </script>
 
 <div id="media-items">
 <div class="media-item media-blank">
 //]]>
 </script>
 
 <div id="media-items">
 <div class="media-item media-blank">
-<?php echo apply_filters($callback, call_user_func($callback)); ?>
+<?php echo apply_filters( 'type_url_form_media', wp_media_insert_url_form( $type ) ); ?>
 </div>
 </div>
 </form>
 <?php
 </div>
 </div>
 </form>
 <?php
-       } else {
-               wp_die( __('Unknown action.') );
-       }
 }
 
 /**
 }
 
 /**
@@ -1784,6 +1610,10 @@ function media_upload_gallery_form($errors) {
        $post_id = intval($_REQUEST['post_id']);
        $form_action_url = admin_url("media-upload.php?type=$type&tab=gallery&post_id=$post_id");
        $form_action_url = apply_filters('media_upload_form_url', $form_action_url, $type);
        $post_id = intval($_REQUEST['post_id']);
        $form_action_url = admin_url("media-upload.php?type=$type&tab=gallery&post_id=$post_id");
        $form_action_url = apply_filters('media_upload_form_url', $form_action_url, $type);
+       $form_class = 'media-upload-form validate';
+
+       if ( get_user_setting('uploader') )
+               $form_class .= ' html-uploader';
 ?>
 
 <script type="text/javascript">
 ?>
 
 <script type="text/javascript">
@@ -1808,7 +1638,7 @@ jQuery(function($){
 <a href="#" id="desc"><?php _e('Descending'); ?></a> |
 <a href="#" id="clear"><?php _ex('Clear', 'verb'); ?></a>
 </div>
 <a href="#" id="desc"><?php _e('Descending'); ?></a> |
 <a href="#" id="clear"><?php _ex('Clear', 'verb'); ?></a>
 </div>
-<form enctype="multipart/form-data" method="post" action="<?php echo esc_attr($form_action_url); ?>" class="media-upload-form validate" id="gallery-form">
+<form enctype="multipart/form-data" method="post" action="<?php echo esc_attr($form_action_url); ?>" class="<?php echo $form_class; ?>" id="gallery-form">
 <?php wp_nonce_field('media-form'); ?>
 <?php //media_upload_form( $errors ); ?>
 <table class="widefat" cellspacing="0">
 <?php wp_nonce_field('media-form'); ?>
 <?php //media_upload_form( $errors ); ?>
 <table class="widefat" cellspacing="0">
@@ -1858,7 +1688,7 @@ jQuery(function($){
                <select id="orderby" name="orderby">
                        <option value="menu_order" selected="selected"><?php _e('Menu order'); ?></option>
                        <option value="title"><?php _e('Title'); ?></option>
                <select id="orderby" name="orderby">
                        <option value="menu_order" selected="selected"><?php _e('Menu order'); ?></option>
                        <option value="title"><?php _e('Title'); ?></option>
-                       <option value="ID"><?php _e('Date/Time'); ?></option>
+                       <option value="post_date"><?php _e('Date/Time'); ?></option>
                        <option value="rand"><?php _e('Random'); ?></option>
                </select>
        </td>
                        <option value="rand"><?php _e('Random'); ?></option>
                </select>
        </td>
@@ -1926,6 +1756,10 @@ function media_upload_library_form($errors) {
 
        $form_action_url = admin_url("media-upload.php?type=$type&tab=library&post_id=$post_id");
        $form_action_url = apply_filters('media_upload_form_url', $form_action_url, $type);
 
        $form_action_url = admin_url("media-upload.php?type=$type&tab=library&post_id=$post_id");
        $form_action_url = apply_filters('media_upload_form_url', $form_action_url, $type);
+       $form_class = 'media-upload-form validate';
+
+       if ( get_user_setting('uploader') )
+               $form_class .= ' html-uploader';
 
        $_GET['paged'] = isset( $_GET['paged'] ) ? intval($_GET['paged']) : 0;
        if ( $_GET['paged'] < 1 )
 
        $_GET['paged'] = isset( $_GET['paged'] ) ? intval($_GET['paged']) : 0;
        if ( $_GET['paged'] < 1 )
@@ -2043,7 +1877,7 @@ foreach ($arc_result as $arc_row) {
 </div>
 </form>
 
 </div>
 </form>
 
-<form enctype="multipart/form-data" method="post" action="<?php echo esc_attr($form_action_url); ?>" class="media-upload-form validate" id="library-form">
+<form enctype="multipart/form-data" method="post" action="<?php echo esc_attr($form_action_url); ?>" class="<?php echo $form_class; ?>" id="library-form">
 
 <?php wp_nonce_field('media-form'); ?>
 <?php //media_upload_form( $errors ); ?>
 
 <?php wp_nonce_field('media-form'); ?>
 <?php //media_upload_form( $errors ); ?>
@@ -2079,10 +1913,10 @@ jQuery(function($){
  *
  * @return unknown
  */
  *
  * @return unknown
  */
-function type_url_form_image() {
+function wp_media_insert_url_form( $default_view = 'image' ) {
        if ( !apply_filters( 'disable_captions', '' ) ) {
                $caption = '
        if ( !apply_filters( 'disable_captions', '' ) ) {
                $caption = '
-               <tr>
+               <tr class="image-only">
                        <th valign="top" scope="row" class="label">
                                <span class="alignleft"><label for="caption">' . __('Image Caption') . '</label></span>
                        </th>
                        <th valign="top" scope="row" class="label">
                                <span class="alignleft"><label for="caption">' . __('Image Caption') . '</label></span>
                        </th>
@@ -2097,12 +1931,19 @@ function type_url_form_image() {
        if ( empty($default_align) )
                $default_align = 'none';
 
        if ( empty($default_align) )
                $default_align = 'none';
 
+       if ( 'image' == $default_view ) {
+               $view = 'image-only';
+               $table_class = '';
+       } else {
+               $view = $table_class = 'not-image';
+       }
+
        return '
        return '
-       <h4 class="media-sub-title">' . __('Insert an image from another web site') . '</h4>
-       <table class="describe"><tbody>
+       <p class="media-types"><label><input type="radio" name="media_type" value="image" id="image-only"' . checked( 'image-only', $view, false ) . ' /> ' . __( 'Image' ) . '</label> &nbsp; &nbsp; <label><input type="radio" name="media_type" value="generic" id="not-image"' . checked( 'not-image', $view, false ) . ' /> ' . __( 'Audio, Video, or Other File' ) . '</label></p>
+       <table class="describe ' . $table_class . '"><tbody>
                <tr>
                        <th valign="top" scope="row" class="label" style="width:130px;">
                <tr>
                        <th valign="top" scope="row" class="label" style="width:130px;">
-                               <span class="alignleft"><label for="src">' . __('Image URL') . '</label></span>
+                               <span class="alignleft"><label for="src">' . __('URL') . '</label></span>
                                <span class="alignright"><abbr id="status_img" title="required" class="required">*</abbr></span>
                        </th>
                        <td class="field"><input id="src" name="src" value="" type="text" aria-required="true" onblur="addExtImage.getImageData()" /></td>
                                <span class="alignright"><abbr id="status_img" title="required" class="required">*</abbr></span>
                        </th>
                        <td class="field"><input id="src" name="src" value="" type="text" aria-required="true" onblur="addExtImage.getImageData()" /></td>
@@ -2110,13 +1951,15 @@ function type_url_form_image() {
 
                <tr>
                        <th valign="top" scope="row" class="label">
 
                <tr>
                        <th valign="top" scope="row" class="label">
-                               <span class="alignleft"><label for="title">' . __('Image Title') . '</label></span>
+                               <span class="alignleft"><label for="title">' . __('Title') . '</label></span>
                                <span class="alignright"><abbr title="required" class="required">*</abbr></span>
                        </th>
                        <td class="field"><input id="title" name="title" value="" type="text" aria-required="true" /></td>
                </tr>
 
                                <span class="alignright"><abbr title="required" class="required">*</abbr></span>
                        </th>
                        <td class="field"><input id="title" name="title" value="" type="text" aria-required="true" /></td>
                </tr>
 
-               <tr>
+               <tr class="not-image"><td></td><td><p class="help">' . __('Link text, e.g. &#8220;Ransom Demands (PDF)&#8221;') . '</p></td></tr>
+
+               <tr class="image-only">
                        <th valign="top" scope="row" class="label">
                                <span class="alignleft"><label for="alt">' . __('Alternate Text') . '</label></span>
                        </th>
                        <th valign="top" scope="row" class="label">
                                <span class="alignleft"><label for="alt">' . __('Alternate Text') . '</label></span>
                        </th>
@@ -2124,7 +1967,7 @@ function type_url_form_image() {
                        <p class="help">' . __('Alt text for the image, e.g. &#8220;The Mona Lisa&#8221;') . '</p></td>
                </tr>
                ' . $caption . '
                        <p class="help">' . __('Alt text for the image, e.g. &#8220;The Mona Lisa&#8221;') . '</p></td>
                </tr>
                ' . $caption . '
-               <tr class="align">
+               <tr class="align image-only">
                        <th valign="top" scope="row" class="label"><p><label for="align">' . __('Alignment') . '</label></p></th>
                        <td class="field">
                                <input name="align" id="align-none" value="none" onclick="addExtImage.align=\'align\'+this.value" type="radio"' . ($default_align == 'none' ? ' checked="checked"' : '').' />
                        <th valign="top" scope="row" class="label"><p><label for="align">' . __('Alignment') . '</label></p></th>
                        <td class="field">
                                <input name="align" id="align-none" value="none" onclick="addExtImage.align=\'align\'+this.value" type="radio"' . ($default_align == 'none' ? ' checked="checked"' : '').' />
@@ -2138,7 +1981,7 @@ function type_url_form_image() {
                        </td>
                </tr>
 
                        </td>
                </tr>
 
-               <tr>
+               <tr class="image-only">
                        <th valign="top" scope="row" class="label">
                                <span class="alignleft"><label for="url">' . __('Link Image To:') . '</label></span>
                        </th>
                        <th valign="top" scope="row" class="label">
                                <span class="alignleft"><label for="url">' . __('Link Image To:') . '</label></span>
                        </th>
@@ -2148,103 +1991,23 @@ function type_url_form_image() {
                        <button type="button" class="button" value="" onclick="document.forms[0].url.value=document.forms[0].src.value">' . __('Link to image') . '</button>
                        <p class="help">' . __('Enter a link URL or click above for presets.') . '</p></td>
                </tr>
                        <button type="button" class="button" value="" onclick="document.forms[0].url.value=document.forms[0].src.value">' . __('Link to image') . '</button>
                        <p class="help">' . __('Enter a link URL or click above for presets.') . '</p></td>
                </tr>
-       ' . _insert_into_post_button('image') . '
-       </tbody></table>
-';
-
-}
-
-/**
- * {@internal Missing Short Description}}
- *
- * @since 2.7.0
- *
- * @return unknown
- */
-function type_url_form_audio() {
-       return '
-       <table class="describe"><tbody>
-               <tr>
-                       <th valign="top" scope="row" class="label">
-                               <span class="alignleft"><label for="insertonly[href]">' . __('Audio File URL') . '</label></span>
-                               <span class="alignright"><abbr title="required" class="required">*</abbr></span>
-                       </th>
-                       <td class="field"><input id="insertonly[href]" name="insertonly[href]" value="" type="text" aria-required="true"></td>
-               </tr>
-               <tr>
-                       <th valign="top" scope="row" class="label">
-                               <span class="alignleft"><label for="insertonly[title]">' . __('Title') . '</label></span>
-                               <span class="alignright"><abbr title="required" class="required">*</abbr></span>
-                       </th>
-                       <td class="field"><input id="insertonly[title]" name="insertonly[title]" value="" type="text" aria-required="true"></td>
-               </tr>
-               <tr><td></td><td class="help">' . __('Link text, e.g. &#8220;Still Alive by Jonathan Coulton&#8221;') . '</td></tr>
-       ' . _insert_into_post_button('audio') . '
-       </tbody></table>
-';
-}
-
-/**
- * {@internal Missing Short Description}}
- *
- * @since 2.7.0
- *
- * @return unknown
- */
-function type_url_form_video() {
-       return '
-       <table class="describe"><tbody>
-               <tr>
-                       <th valign="top" scope="row" class="label">
-                               <span class="alignleft"><label for="insertonly[href]">' . __('Video URL') . '</label></span>
-                               <span class="alignright"><abbr title="required" class="required">*</abbr></span>
-                       </th>
-                       <td class="field"><input id="insertonly[href]" name="insertonly[href]" value="" type="text" aria-required="true"></td>
+               <tr class="image-only">
+                       <td></td>
+                       <td>
+                               <input type="button" class="button" id="go_button" style="color:#bbb;" onclick="addExtImage.insert()" value="' . esc_attr__('Insert into Post') . '" />
+                       </td>
                </tr>
                </tr>
-               <tr>
-                       <th valign="top" scope="row" class="label">
-                               <span class="alignleft"><label for="insertonly[title]">' . __('Title') . '</label></span>
-                               <span class="alignright"><abbr title="required" class="required">*</abbr></span>
-                       </th>
-                       <td class="field"><input id="insertonly[title]" name="insertonly[title]" value="" type="text" aria-required="true"></td>
+               <tr class="not-image">
+                       <td></td>
+                       <td>
+                               ' . get_submit_button( __( 'Insert into Post' ), 'button', 'insertonlybutton', false ) . '
+                       </td>
                </tr>
                </tr>
-               <tr><td></td><td class="help">' . __('Link text, e.g. &#8220;Lucy on YouTube&#8221;') . '</td></tr>
-       ' . _insert_into_post_button('video') . '
        </tbody></table>
 ';
        </tbody></table>
 ';
-}
 
 
-/**
- * {@internal Missing Short Description}}
- *
- * @since 2.7.0
- *
- * @return unknown
- */
-function type_url_form_file() {
-       return '
-       <table class="describe"><tbody>
-               <tr>
-                       <th valign="top" scope="row" class="label">
-                               <span class="alignleft"><label for="insertonly[href]">' . __('URL') . '</label></span>
-                               <span class="alignright"><abbr title="required" class="required">*</abbr></span>
-                       </th>
-                       <td class="field"><input id="insertonly[href]" name="insertonly[href]" value="" type="text" aria-required="true"></td>
-               </tr>
-               <tr>
-                       <th valign="top" scope="row" class="label">
-                               <span class="alignleft"><label for="insertonly[title]">' . __('Title') . '</label></span>
-                               <span class="alignright"><abbr title="required" class="required">*</abbr></span>
-                       </th>
-                       <td class="field"><input id="insertonly[title]" name="insertonly[title]" value="" type="text" aria-required="true"></td>
-               </tr>
-               <tr><td></td><td class="help">' . __('Link text, e.g. &#8220;Ransom Demands (PDF)&#8221;') . '</td></tr>
-       ' . _insert_into_post_button('file') . '
-       </tbody></table>
-';
 }
 
 }
 
-
 function _insert_into_post_button($type) {
        if ( !post_type_supports(get_post_type($_GET['post_id']), 'editor') )
                return '';
 function _insert_into_post_button($type) {
        if ( !post_type_supports(get_post_type($_GET['post_id']), 'editor') )
                return '';
@@ -2269,82 +2032,74 @@ function _insert_into_post_button($type) {
        ';
 }
 
        ';
 }
 
-/**
- * {@internal Missing Short Description}}
- *
- * Support a GET parameter for disabling the flash uploader.
- *
- * @since 2.6.0
- *
- * @param unknown_type $flash
- * @return unknown
- */
-function media_upload_use_flash($flash) {
-       if ( array_key_exists('flash', $_REQUEST) )
-               $flash = !empty($_REQUEST['flash']);
-       return $flash;
-}
-
-add_filter('flash_uploader', 'media_upload_use_flash');
-
 /**
  * {@internal Missing Short Description}}
  *
  * @since 2.6.0
  */
 function media_upload_flash_bypass() {
 /**
  * {@internal Missing Short Description}}
  *
  * @since 2.6.0
  */
 function media_upload_flash_bypass() {
-       echo '<p class="upload-flash-bypass">';
-       printf( __('You are using the Flash uploader.  Problems?  Try the <a href="%s">Browser uploader</a> instead.'), esc_url(add_query_arg('flash', 0)) );
-       echo '</p>';
+       ?>
+       <p class="upload-flash-bypass">
+       <?php _e('You are using the multi-file uploader. Problems? Try the <a href="#">browser uploader</a> instead.'); ?>
+       </p>
+       <?php
 }
 }
+add_action('post-plupload-upload-ui', 'media_upload_flash_bypass');
 
 /**
  * {@internal Missing Short Description}}
  *
  * @since 2.6.0
  */
 
 /**
  * {@internal Missing Short Description}}
  *
  * @since 2.6.0
  */
-function media_upload_html_bypass($flash = true) {
-       echo '<p class="upload-html-bypass hide-if-no-js">';
-       _e('You are using the Browser uploader.');
-       if ( $flash ) {
-               // the user manually selected the browser uploader, so let them switch back to Flash
-               echo ' ';
-               printf( __('Try the <a href="%s">Flash uploader</a> instead.'), esc_url(add_query_arg('flash', 1)) );
-       }
-       echo "</p>\n";
+function media_upload_html_bypass() {
+       ?>
+       <p class="upload-html-bypass hide-if-no-js">
+       <?php _e('You are using the browser&#8217;s built-in file uploader. The new WordPress uploader includes multiple file selection and drag and drop capability. <a href="#">Switch to the new uploader</a>.'); ?>
+       </p>
+       <?php
 }
 }
-
-add_action('post-flash-upload-ui', 'media_upload_flash_bypass');
 add_action('post-html-upload-ui', 'media_upload_html_bypass');
 
 add_action('post-html-upload-ui', 'media_upload_html_bypass');
 
+function media_upload_text_after() {
+       ?>
+       <span class="after-file-upload"><?php _e('After a file has been uploaded, you can add titles and descriptions.'); ?></span>
+       <?php
+}
+add_action('post-upload-ui', 'media_upload_text_after', 5);
+
 /**
  * {@internal Missing Short Description}}
  *
 /**
  * {@internal Missing Short Description}}
  *
- * Make sure the GET parameter sticks when we submit a form.
- *
  * @since 2.6.0
  * @since 2.6.0
- *
- * @param unknown_type $url
- * @return unknown
  */
  */
-function media_upload_bypass_url($url) {
-       if ( array_key_exists('flash', $_REQUEST) )
-               $url = add_query_arg('flash', intval($_REQUEST['flash']));
-       return $url;
-}
+function media_upload_max_image_resize() {
+       $checked = get_user_setting('upload_resize') ? ' checked="true"' : '';
+       $a = $end = '';
 
 
-add_filter('media_upload_form_url', 'media_upload_bypass_url');
-
-add_filter('async_upload_image', 'get_media_item', 10, 2);
-add_filter('async_upload_audio', 'get_media_item', 10, 2);
-add_filter('async_upload_video', 'get_media_item', 10, 2);
-add_filter('async_upload_file', 'get_media_item', 10, 2);
+       if ( current_user_can( 'manage_options' ) ) {
+               $a = '<a href="' . esc_url( admin_url( 'options-media.php' ) ) . '" target="_blank">';
+               $end = '</a>';
+       }
+?>
+<p class="hide-if-no-js"><label>
+<input name="image_resize" type="checkbox" id="image_resize" value="true"<?php echo $checked; ?> />
+<?php
+       /* translators: %1$s is link start tag, %2$s is link end tag, %3$d is width, %4$d is height*/
+       printf( __( 'Scale images to match the large size selected in %1$simage options%2$s (%3$d &times; %4$d).' ), $a, $end, (int) get_option( 'large_size_w', '1024' ), (int) get_option( 'large_size_h', '1024' ) );
+?>
+</label></p>
+<?php
+}
 
 
-add_action('media_upload_image', 'media_upload_image');
-add_action('media_upload_audio', 'media_upload_audio');
-add_action('media_upload_video', 'media_upload_video');
-add_action('media_upload_file', 'media_upload_file');
+add_filter( 'async_upload_image', 'get_media_item', 10, 2 );
+add_filter( 'async_upload_audio', 'get_media_item', 10, 2 );
+add_filter( 'async_upload_video', 'get_media_item', 10, 2 );
+add_filter( 'async_upload_file',  'get_media_item', 10, 2 );
 
 
-add_filter('media_upload_gallery', 'media_upload_gallery');
+add_action( 'media_upload_image', 'wp_media_upload_handler' );
+add_action( 'media_upload_audio', 'wp_media_upload_handler' );
+add_action( 'media_upload_video', 'wp_media_upload_handler' );
+add_action( 'media_upload_file',  'wp_media_upload_handler' );
 
 
-add_filter('media_upload_library', 'media_upload_library');
+add_filter( 'media_upload_gallery', 'media_upload_gallery' );
+add_filter( 'media_upload_library', 'media_upload_library' );
index fa85e4b5d852afe88f65d060cf09d119384f17de..1eae8576c721b53f111115330b8e6da0849bbff3 100644 (file)
@@ -215,8 +215,9 @@ if ( apply_filters('custom_menu_order', false) ) {
 }
 
 // Remove the last menu item if it is a separator.
 }
 
 // Remove the last menu item if it is a separator.
-$last_menu_key = array_pop( array_keys( $menu ) );
-if ( 'wp-menu-separator' == $menu[ $last_menu_key ][ 4 ] )
+$last_menu_key = array_keys( $menu );
+$last_menu_key = array_pop( $last_menu_key );
+if ( !empty( $menu ) && 'wp-menu-separator' == $menu[ $last_menu_key ][ 4 ] )
        unset( $menu[ $last_menu_key ] );
 unset( $last_menu_key );
 
        unset( $menu[ $last_menu_key ] );
 unset( $last_menu_key );
 
index 6d396ad77732ab95cb3d26cf7d26d7a6e55d9bad..ddb3e9d4f5286c1dd9b2205c2b9cfb730c44cc7c 100644 (file)
@@ -155,7 +155,7 @@ echo esc_html( $visibility_trans ); ?></span>
 </div><?php // /misc-pub-section ?>
 
 <?php
 </div><?php // /misc-pub-section ?>
 
 <?php
-// translators: Publish box date formt, see http://php.net/date
+// translators: Publish box date format, see http://php.net/date
 $datef = __( 'M j, Y @ G:i' );
 if ( 0 != $post->ID ) {
        if ( 'future' == $post->post_status ) { // scheduled for publishing at a future date
 $datef = __( 'M j, Y @ G:i' );
 if ( 0 != $post->ID ) {
        if ( 'future' == $post->post_status ) { // scheduled for publishing at a future date
@@ -425,7 +425,11 @@ function post_custom_meta_box($post) {
 <div id="ajax-response"></div>
 <?php
 $metadata = has_meta($post->ID);
 <div id="ajax-response"></div>
 <?php
 $metadata = has_meta($post->ID);
-list_meta($metadata);
+foreach ( $metadata as $key => $value ) {
+       if ( is_protected_meta( $metadata[ $key ][ 'meta_key' ], 'post' ) || ! current_user_can( 'edit_post_meta', $post->ID, $metadata[ $key ][ 'meta_key' ] ) )
+               unset( $metadata[ $key ] );
+}
+list_meta( $metadata );
 meta_form(); ?>
 </div>
 <p><?php _e('Custom fields can be used to add extra metadata to a post that you can <a href="http://codex.wordpress.org/Using_Custom_Fields" target="_blank">use in your theme</a>.'); ?></p>
 meta_form(); ?>
 </div>
 <p><?php _e('Custom fields can be used to add extra metadata to a post that you can <a href="http://codex.wordpress.org/Using_Custom_Fields" target="_blank">use in your theme</a>.'); ?></p>
@@ -556,7 +560,18 @@ function post_revisions_meta_box($post) {
 function page_attributes_meta_box($post) {
        $post_type_object = get_post_type_object($post->post_type);
        if ( $post_type_object->hierarchical ) {
 function page_attributes_meta_box($post) {
        $post_type_object = get_post_type_object($post->post_type);
        if ( $post_type_object->hierarchical ) {
-               $pages = wp_dropdown_pages(array('post_type' => $post->post_type, 'exclude_tree' => $post->ID, 'selected' => $post->post_parent, 'name' => 'parent_id', 'show_option_none' => __('(no parent)'), 'sort_column'=> 'menu_order, post_title', 'echo' => 0));
+               $dropdown_args = array(
+                       'post_type'        => $post->post_type,
+                       'exclude_tree'     => $post->ID,
+                       'selected'         => $post->post_parent,
+                       'name'             => 'parent_id',
+                       'show_option_none' => __('(no parent)'),
+                       'sort_column'      => 'menu_order, post_title',
+                       'echo'             => 0,
+               );
+
+               $dropdown_args = apply_filters( 'page_attributes_dropdown_pages_args', $dropdown_args, $post );
+               $pages = wp_dropdown_pages( $dropdown_args );
                if ( ! empty($pages) ) {
 ?>
 <p><strong><?php _e('Parent') ?></strong></p>
                if ( ! empty($pages) ) {
 ?>
 <p><strong><?php _e('Parent') ?></strong></p>
index a0db0ad05456b4794e75f6ba5e1ffdfed11de207..594ec7a7fd547d5e251993ff6fd477c53bb36412 100644 (file)
@@ -223,10 +223,9 @@ add_action( 'update_option_siteurl', 'update_home_siteurl', 10, 2 );
 function url_shorten( $url ) {
        $short_url = str_replace( 'http://', '', stripslashes( $url ));
        $short_url = str_replace( 'www.', '', $short_url );
 function url_shorten( $url ) {
        $short_url = str_replace( 'http://', '', stripslashes( $url ));
        $short_url = str_replace( 'www.', '', $short_url );
-       if ('/' == substr( $short_url, -1 ))
-               $short_url = substr( $short_url, 0, -1 );
+       $short_url = untrailingslashit( $short_url );
        if ( strlen( $short_url ) > 35 )
        if ( strlen( $short_url ) > 35 )
-               $short_url = substr( $short_url, 0, 32 ).'...';
+               $short_url = substr( $short_url, 0, 32 ) . '...';
        return $short_url;
 }
 
        return $short_url;
 }
 
@@ -368,7 +367,7 @@ function set_screen_options() {
                }
 
                update_user_meta($user->ID, $option, $value);
                }
 
                update_user_meta($user->ID, $option, $value);
-               wp_redirect( remove_query_arg( array('pagenum', 'apage', 'paged'), wp_get_referer() ) );
+               wp_safe_redirect( remove_query_arg( array('pagenum', 'apage', 'paged'), wp_get_referer() ) );
                exit;
        }
 }
                exit;
        }
 }
@@ -585,4 +584,12 @@ foreach ( $_wp_admin_css_colors as $color => $color_info ): ?>
 </fieldset>
 <?php
 }
 </fieldset>
 <?php
 }
-?>
+
+function _ipad_meta() {
+       if ( strpos($_SERVER['HTTP_USER_AGENT'], 'iPad') !== false ) { ?>
+               <meta name="viewport" id="ipad-viewportmeta" content="width=device-width, initial-scale=1">
+       <?php
+       }
+}
+add_action('admin_head', '_ipad_meta');
+
index 98991ef61802f7d5e5b2446579f2b075ec251be5..1b2c7e78e587a6671ff596d1065053bf52704510 100644 (file)
@@ -53,16 +53,17 @@ add_filter( 'wp_handle_upload_prefilter', 'check_upload_size' );
  * @return void
  */
 function wpmu_delete_blog( $blog_id, $drop = false ) {
  * @return void
  */
 function wpmu_delete_blog( $blog_id, $drop = false ) {
-       global $wpdb;
+       global $wpdb, $current_site;
 
        $switch = false;
        if ( $blog_id != $wpdb->blogid ) {
                $switch = true;
                switch_to_blog( $blog_id );
 
        $switch = false;
        if ( $blog_id != $wpdb->blogid ) {
                $switch = true;
                switch_to_blog( $blog_id );
+               $blog = get_blog_details( $blog_id );
+       } else {
+               $blog = $GLOBALS['current_blog'];
        }
 
        }
 
-       $blog_prefix = $wpdb->get_blog_prefix( $blog_id );
-
        do_action( 'delete_blog', $blog_id, $drop );
 
        $users = get_users( array( 'blog_id' => $blog_id, 'fields' => 'ids' ) );
        do_action( 'delete_blog', $blog_id, $drop );
 
        $users = get_users( array( 'blog_id' => $blog_id, 'fields' => 'ids' ) );
@@ -70,23 +71,24 @@ function wpmu_delete_blog( $blog_id, $drop = false ) {
        // Remove users from this blog.
        if ( ! empty( $users ) ) {
                foreach ( $users as $user_id ) {
        // Remove users from this blog.
        if ( ! empty( $users ) ) {
                foreach ( $users as $user_id ) {
-                       remove_user_from_blog( $user_id, $blog_id;
+                       remove_user_from_blog( $user_id, $blog_id );
                }
        }
 
        update_blog_status( $blog_id, 'deleted', 1 );
 
                }
        }
 
        update_blog_status( $blog_id, 'deleted', 1 );
 
+       // Don't destroy the initial, main, or root blog.
+       if ( $drop && ( 1 == $blog_id || is_main_site( $blog_id ) || ( $blog->path == $current_site->path && $blog->domain == $current_site->domain ) ) )
+               $drop = false;
+
        if ( $drop ) {
        if ( $drop ) {
-               if ( substr( $blog_prefix, -1 ) == '_' )
-                       $blog_prefix =  substr( $blog_prefix, 0, -1 ) . '\_';
 
 
-               $drop_tables = $wpdb->get_results( "SHOW TABLES LIKE '{$blog_prefix}%'", ARRAY_A );
-               $drop_tables = apply_filters( 'wpmu_drop_tables', $drop_tables );
+               $drop_tables = apply_filters( 'wpmu_drop_tables', $wpdb->tables( 'blog' ) );
 
 
-               reset( $drop_tables );
-               foreach ( (array) $drop_tables as $drop_table) {
-                       $wpdb->query( "DROP TABLE IF EXISTS ". current( $drop_table ) ."" );
+               foreach ( (array) $drop_tables as $table ) {
+                       $wpdb->query( "DROP TABLE IF EXISTS `$table`" );
                }
                }
+
                $wpdb->query( $wpdb->prepare( "DELETE FROM $wpdb->blogs WHERE blog_id = %d", $blog_id ) );
                $dir = apply_filters( 'wpmu_delete_blog_upload_dir', WP_CONTENT_DIR . "/blogs.dir/{$blog_id}/files/", $blog_id );
                $dir = rtrim( $dir, DIRECTORY_SEPARATOR );
                $wpdb->query( $wpdb->prepare( "DELETE FROM $wpdb->blogs WHERE blog_id = %d", $blog_id ) );
                $dir = apply_filters( 'wpmu_delete_blog_upload_dir', WP_CONTENT_DIR . "/blogs.dir/{$blog_id}/files/", $blog_id );
                $dir = rtrim( $dir, DIRECTORY_SEPARATOR );
@@ -120,17 +122,7 @@ function wpmu_delete_blog( $blog_id, $drop = false ) {
                }
        }
 
                }
        }
 
-       $wpdb->query( "DELETE FROM {$wpdb->usermeta} WHERE meta_key = '{$blog_prefix}autosave_draft_ids'" );
-       $blogs = get_site_option( 'blog_list' );
-       if ( is_array( $blogs ) ) {
-               foreach ( $blogs as $n => $blog ) {
-                       if ( $blog['blog_id'] == $blog_id )
-                               unset( $blogs[$n] );
-               }
-               update_site_option( 'blog_list', $blogs );
-       }
-
-       if ( $switch === true )
+       if ( $switch )
                restore_current_blog();
 }
 
                restore_current_blog();
 }
 
@@ -250,7 +242,7 @@ function send_confirmation_on_profile_email() {
        if ( ! is_object($errors) )
                $errors = new WP_Error();
 
        if ( ! is_object($errors) )
                $errors = new WP_Error();
 
-       if ( $current_user->id != $_POST['user_id'] )
+       if ( $current_user->ID != $_POST['user_id'] )
                return false;
 
        if ( $current_user->user_email != $_POST['email'] ) {
                return false;
 
        if ( $current_user->user_email != $_POST['email'] ) {
@@ -393,7 +385,7 @@ function get_upload_space_available() {
  */
 function get_space_allowed() {
        $space_allowed = get_option( 'blog_upload_space' );
  */
 function get_space_allowed() {
        $space_allowed = get_option( 'blog_upload_space' );
-       if ( $space_allowed == false )
+       if ( $space_allowed === false )
                $space_allowed = get_site_option( 'blog_upload_space' );
        if ( empty( $space_allowed ) || !is_numeric( $space_allowed ) )
                $space_allowed = 50;
                $space_allowed = get_site_option( 'blog_upload_space' );
        if ( empty( $space_allowed ) || !is_numeric( $space_allowed ) )
                $space_allowed = 50;
@@ -775,4 +767,23 @@ var tb_closeImage = "../../wp-includes/js/thickbox/tb-close.png";
 <?php
 }
 
 <?php
 }
 
+/**
+ * Whether or not we have a large network.
+ *
+ * The default criteria for a large network is either more than 10,000 users or more than 10,000 sites.
+ * Plugins can alter this criteria  using the 'wp_is_large_network' filter.
+ *
+ * @since 3.3.0
+ * @param string $using 'sites or 'users'.  Default is 'sites'.
+ * @return bool True if the network meets the criteria for large. False otherwise.
+ */
+function wp_is_large_network( $using = 'sites' ) {
+       if ( 'users' == $using ) {
+               $count = get_user_count();
+               return apply_filters( 'wp_is_large_network', $count > 10000, 'users', $count );
+       }
+
+       $count = get_blog_count();
+       return apply_filters( 'wp_is_large_network', $count > 10000, 'sites', $count );
+}
 ?>
 ?>
index 889016627baaba2320a287b47f3fbe0034a51246..7c3380275fcadec882aaf407cc758d49ad8e984c 100644 (file)
@@ -88,7 +88,7 @@ class Walker_Nav_Menu_Edit extends Walker_Nav_Menu  {
                                        <span class="item-title"><?php echo esc_html( $title ); ?></span>
                                        <span class="item-controls">
                                                <span class="item-type"><?php echo esc_html( $item->type_label ); ?></span>
                                        <span class="item-title"><?php echo esc_html( $title ); ?></span>
                                        <span class="item-controls">
                                                <span class="item-type"><?php echo esc_html( $item->type_label ); ?></span>
-                                               <span class="item-order">
+                                               <span class="item-order hide-if-js">
                                                        <a href="<?php
                                                                echo wp_nonce_url(
                                                                        add_query_arg(
                                                        <a href="<?php
                                                                echo wp_nonce_url(
                                                                        add_query_arg(
@@ -115,7 +115,7 @@ class Walker_Nav_Menu_Edit extends Walker_Nav_Menu  {
                                                                );
                                                        ?>" class="item-move-down"><abbr title="<?php esc_attr_e('Move down'); ?>">&#8595;</abbr></a>
                                                </span>
                                                                );
                                                        ?>" class="item-move-down"><abbr title="<?php esc_attr_e('Move down'); ?>">&#8595;</abbr></a>
                                                </span>
-                                               <a class="item-edit" id="edit-<?php echo $item_id; ?>" title="<?php _e('Edit Menu Item'); ?>" href="<?php
+                                               <a class="item-edit" id="edit-<?php echo $item_id; ?>" title="<?php esc_attr_e('Edit Menu Item'); ?>" href="<?php
                                                        echo ( isset( $_GET['edit-menu-item'] ) && $item_id == $_GET['edit-menu-item'] ) ? admin_url( 'nav-menus.php' ) : add_query_arg( 'edit-menu-item', $item_id, remove_query_arg( $removed_args, admin_url( 'nav-menus.php#menu-item-settings-' . $item_id ) ) );
                                                ?>"><?php _e( 'Edit Menu Item' ); ?></a>
                                        </span>
                                                        echo ( isset( $_GET['edit-menu-item'] ) && $item_id == $_GET['edit-menu-item'] ) ? admin_url( 'nav-menus.php' ) : add_query_arg( 'edit-menu-item', $item_id, remove_query_arg( $removed_args, admin_url( 'nav-menus.php#menu-item-settings-' . $item_id ) ) );
                                                ?>"><?php _e( 'Edit Menu Item' ); ?></a>
                                        </span>
@@ -143,13 +143,10 @@ class Walker_Nav_Menu_Edit extends Walker_Nav_Menu  {
                                                <input type="text" id="edit-menu-item-attr-title-<?php echo $item_id; ?>" class="widefat edit-menu-item-attr-title" name="menu-item-attr-title[<?php echo $item_id; ?>]" value="<?php echo esc_attr( $item->post_excerpt ); ?>" />
                                        </label>
                                </p>
                                                <input type="text" id="edit-menu-item-attr-title-<?php echo $item_id; ?>" class="widefat edit-menu-item-attr-title" name="menu-item-attr-title[<?php echo $item_id; ?>]" value="<?php echo esc_attr( $item->post_excerpt ); ?>" />
                                        </label>
                                </p>
-                               <p class="field-link-target description description-thin">
+                               <p class="field-link-target description">
                                        <label for="edit-menu-item-target-<?php echo $item_id; ?>">
                                        <label for="edit-menu-item-target-<?php echo $item_id; ?>">
-                                               <?php _e( 'Link Target' ); ?><br />
-                                               <select id="edit-menu-item-target-<?php echo $item_id; ?>" class="widefat edit-menu-item-target" name="menu-item-target[<?php echo $item_id; ?>]">
-                                                       <option value="" <?php selected( $item->target, ''); ?>><?php _e('Same window or tab'); ?></option>
-                                                       <option value="_blank" <?php selected( $item->target, '_blank'); ?>><?php _e('New window or tab'); ?></option>
-                                               </select>
+                                               <input type="checkbox" id="edit-menu-item-target-<?php echo $item_id; ?>" value="_blank" name="menu-item-target[<?php echo $item_id; ?>]"<?php checked( $item->target, '_blank' ); ?> />
+                                               <?php _e( 'Open link in a new window/tab' ); ?>
                                        </label>
                                </p>
                                <p class="field-css-classes description description-thin">
                                        </label>
                                </p>
                                <p class="field-css-classes description description-thin">
@@ -340,7 +337,8 @@ function _wp_ajax_menu_quick_search( $request = array() ) {
                        while ( have_posts() ) {
                                the_post();
                                if ( 'markup' == $response_format ) {
                        while ( have_posts() ) {
                                the_post();
                                if ( 'markup' == $response_format ) {
-                                       echo walk_nav_menu_tree( array_map('wp_setup_nav_menu_item', array( get_post( get_the_ID() ) ) ), 0, (object) $args );
+                                       $var_by_ref = get_the_ID();
+                                       echo walk_nav_menu_tree( array_map('wp_setup_nav_menu_item', array( get_post( $var_by_ref ) ) ), 0, (object) $args );
                                } elseif ( 'json' == $response_format ) {
                                        echo json_encode(
                                                array(
                                } elseif ( 'json' == $response_format ) {
                                        echo json_encode(
                                                array(
index ca3e1f5bdfe31b240248c7f98ff8a5414967f9a1..71cc36dc6bd8871a1ed06ff9f0dd08acc38a6d24 100644 (file)
@@ -12,7 +12,7 @@
  * It is possible for a plugin to override the Plugin API result with three
  * filters. Assume this is for plugins, which can extend on the Plugin Info to
  * offer more choices. This is very powerful and must be used with care, when
  * It is possible for a plugin to override the Plugin API result with three
  * filters. Assume this is for plugins, which can extend on the Plugin Info to
  * offer more choices. This is very powerful and must be used with care, when
- * overridding the filters.
+ * overriding the filters.
  *
  * The first filter, 'plugins_api_args', is for the args and gives the action as
  * the second parameter. The hook for 'plugins_api_args' must ensure that an
  *
  * The first filter, 'plugins_api_args', is for the args and gives the action as
  * the second parameter. The hook for 'plugins_api_args' must ensure that an
@@ -35,7 +35,7 @@ function plugins_api($action, $args = null) {
                $args->per_page = 24;
 
        // Allows a plugin to override the WordPress.org API entirely.
                $args->per_page = 24;
 
        // Allows a plugin to override the WordPress.org API entirely.
-       // Use the filter 'plugins_api_result' to mearly add results.
+       // Use the filter 'plugins_api_result' to merely add results.
        // Please ensure that a object is returned from the following filters.
        $args = apply_filters('plugins_api_args', $args, $action);
        $res = apply_filters('plugins_api', false, $action, $args);
        // Please ensure that a object is returned from the following filters.
        $args = apply_filters('plugins_api_args', $args, $action);
        $res = apply_filters('plugins_api', false, $action, $args);
@@ -81,7 +81,7 @@ function install_popular_tags( $args = array() ) {
 
 function install_dashboard() {
        ?>
 
 function install_dashboard() {
        ?>
-       <p><?php _e('Plugins extend and expand the functionality of WordPress. You may automatically install plugins from the <a href="http://wordpress.org/extend/plugins/">WordPress Plugin Directory</a> or upload a plugin in .zip format via this page.') ?></p>
+       <p><?php printf( __( 'Plugins extend and expand the functionality of WordPress. You may automatically install plugins from the <a href="http://wordpress.org/extend/plugins/">WordPress Plugin Directory</a> or upload a plugin in .zip format via <a href="%s">this page</a>.' ), self_admin_url( 'plugin-install.php?tab=upload' ) ); ?></p>
 
        <h4><?php _e('Search') ?></h4>
        <p class="install-help"><?php _e('Search for plugins by keyword, author, or tag.') ?></p>
 
        <h4><?php _e('Search') ?></h4>
        <p class="install-help"><?php _e('Search for plugins by keyword, author, or tag.') ?></p>
@@ -97,7 +97,7 @@ function install_dashboard() {
        if ( is_wp_error($api_tags) ) {
                echo $api_tags->get_error_message();
        } else {
        if ( is_wp_error($api_tags) ) {
                echo $api_tags->get_error_message();
        } else {
-               //Set up the tags in a way which can be interprated by wp_generate_tag_cloud()
+               //Set up the tags in a way which can be interpreted by wp_generate_tag_cloud()
                $tags = array();
                foreach ( (array)$api_tags as $tag )
                        $tags[ $tag['name'] ] = (object) array(
                $tags = array();
                foreach ( (array)$api_tags as $tag )
                        $tags[ $tag['name'] ] = (object) array(
@@ -105,7 +105,7 @@ function install_dashboard() {
                                                                        'name' => $tag['name'],
                                                                        'id' => sanitize_title_with_dashes($tag['name']),
                                                                        'count' => $tag['count'] );
                                                                        'name' => $tag['name'],
                                                                        'id' => sanitize_title_with_dashes($tag['name']),
                                                                        'count' => $tag['count'] );
-               echo wp_generate_tag_cloud($tags, array( 'single_text' => __('%d plugin'), 'multiple_text' => __('%d plugins') ) );
+               echo wp_generate_tag_cloud($tags, array( 'single_text' => __('%s plugin'), 'multiple_text' => __('%s plugins') ) );
        }
        echo '</p><br class="clear" />';
 }
        }
        echo '</p><br class="clear" />';
 }
@@ -175,7 +175,7 @@ add_action('install_plugins_updated', 'display_plugins_table');
  * @since 3.0.0
  */
 function install_plugin_install_status($api, $loop = false) {
  * @since 3.0.0
  */
 function install_plugin_install_status($api, $loop = false) {
-       // this function is called recursivly, $loop prevents futhur loops.
+       // this function is called recursively, $loop prevents further loops.
        if ( is_array($api) )
                $api = (object) $api;
 
        if ( is_array($api) )
                $api = (object) $api;
 
@@ -254,8 +254,10 @@ function install_plugin_information() {
        //Sanitize HTML
        foreach ( (array)$api->sections as $section_name => $content )
                $api->sections[$section_name] = wp_kses($content, $plugins_allowedtags);
        //Sanitize HTML
        foreach ( (array)$api->sections as $section_name => $content )
                $api->sections[$section_name] = wp_kses($content, $plugins_allowedtags);
-       foreach ( array('version', 'author', 'requires', 'tested', 'homepage', 'downloaded', 'slug') as $key )
-               $api->$key = wp_kses($api->$key, $plugins_allowedtags);
+       foreach ( array( 'version', 'author', 'requires', 'tested', 'homepage', 'downloaded', 'slug' ) as $key ) {
+               if ( isset( $api->$key ) )
+                       $api->$key = wp_kses( $api->$key, $plugins_allowedtags );
+       }
 
        $section = isset($_REQUEST['section']) ? stripslashes( $_REQUEST['section'] ) : 'description'; //Default to the Description tab, Do not translate, API returns English.
        if ( empty($section) || ! isset($api->sections[ $section ]) )
 
        $section = isset($_REQUEST['section']) ? stripslashes( $_REQUEST['section'] ) : 'description'; //Default to the Description tab, Do not translate, API returns English.
        if ( empty($section) || ! isset($api->sections[ $section ]) )
@@ -327,11 +329,11 @@ function install_plugin_information() {
                <h2><?php _e('Average Rating') ?></h2>
                <div class="star-holder" title="<?php printf(_n('(based on %s rating)', '(based on %s ratings)', $api->num_ratings), number_format_i18n($api->num_ratings)); ?>">
                        <div class="star star-rating" style="width: <?php echo esc_attr($api->rating) ?>px"></div>
                <h2><?php _e('Average Rating') ?></h2>
                <div class="star-holder" title="<?php printf(_n('(based on %s rating)', '(based on %s ratings)', $api->num_ratings), number_format_i18n($api->num_ratings)); ?>">
                        <div class="star star-rating" style="width: <?php echo esc_attr($api->rating) ?>px"></div>
-                       <div class="star star5"><img src="<?php echo admin_url('images/star.png?v=20110615'); ?>" alt="<?php _e('5 stars') ?>" /></div>
-                       <div class="star star4"><img src="<?php echo admin_url('images/star.png?v=20110615'); ?>" alt="<?php _e('4 stars') ?>" /></div>
-                       <div class="star star3"><img src="<?php echo admin_url('images/star.png?v=20110615'); ?>" alt="<?php _e('3 stars') ?>" /></div>
-                       <div class="star star2"><img src="<?php echo admin_url('images/star.png?v=20110615'); ?>" alt="<?php _e('2 stars') ?>" /></div>
-                       <div class="star star1"><img src="<?php echo admin_url('images/star.png?v=20110615'); ?>" alt="<?php _e('1 star') ?>" /></div>
+                       <div class="star star5"><img src="<?php echo admin_url('images/star.png?v=20110615'); ?>" alt="<?php esc_attr_e('5 stars') ?>" /></div>
+                       <div class="star star4"><img src="<?php echo admin_url('images/star.png?v=20110615'); ?>" alt="<?php esc_attr_e('4 stars') ?>" /></div>
+                       <div class="star star3"><img src="<?php echo admin_url('images/star.png?v=20110615'); ?>" alt="<?php esc_attr_e('3 stars') ?>" /></div>
+                       <div class="star star2"><img src="<?php echo admin_url('images/star.png?v=20110615'); ?>" alt="<?php esc_attr_e('2 stars') ?>" /></div>
+                       <div class="star star1"><img src="<?php echo admin_url('images/star.png?v=20110615'); ?>" alt="<?php esc_attr_e('1 star') ?>" /></div>
                </div>
                <small><?php printf(_n('(based on %s rating)', '(based on %s ratings)', $api->num_ratings), number_format_i18n($api->num_ratings)); ?></small>
                <?php endif; ?>
                </div>
                <small><?php printf(_n('(based on %s rating)', '(based on %s ratings)', $api->num_ratings), number_format_i18n($api->num_ratings)); ?></small>
                <?php endif; ?>
index d65e0e2a07a4349c28d46abc08b39115eaddfb96..831c7025edeab1ad40a0d8df8f23fc844e617cd3 100644 (file)
@@ -191,16 +191,11 @@ function edit_post( $post_data = null ) {
        }
 
        // Post Formats
        }
 
        // Post Formats
-       if ( current_theme_supports( 'post-formats' ) && isset( $post_data['post_format'] ) ) {
-               $formats = get_theme_support( 'post-formats' );
-               if ( is_array( $formats ) ) {
-                       $formats = $formats[0];
-                       if ( in_array( $post_data['post_format'], $formats ) ) {
-                               set_post_format( $post_ID, $post_data['post_format'] );
-                       } elseif ( '0' == $post_data['post_format'] ) {
-                               set_post_format( $post_ID, false );
-                       }
-               }
+       if ( isset( $post_data['post_format'] ) ) {
+               if ( current_theme_supports( 'post-formats', $post_data['post_format'] ) )
+                       set_post_format( $post_ID, $post_data['post_format'] );
+               elseif ( '0' == $post_data['post_format'] )
+                       set_post_format( $post_ID, false );
        }
 
        // Meta Stuff
        }
 
        // Meta Stuff
@@ -210,7 +205,7 @@ function edit_post( $post_data = null ) {
                                continue;
                        if ( $meta->post_id != $post_ID )
                                continue;
                                continue;
                        if ( $meta->post_id != $post_ID )
                                continue;
-                       if ( is_protected_meta( $value['key'] ) )
+                       if ( is_protected_meta( $value['key'], 'post' ) || ! current_user_can( 'edit_post_meta', $post_ID, $value['key'] ) )
                                continue;
                        update_meta( $key, $value['key'], $value['value'] );
                }
                                continue;
                        update_meta( $key, $value['key'], $value['value'] );
                }
@@ -222,7 +217,7 @@ function edit_post( $post_data = null ) {
                                continue;
                        if ( $meta->post_id != $post_ID )
                                continue;
                                continue;
                        if ( $meta->post_id != $post_ID )
                                continue;
-                       if ( is_protected_meta( $meta->meta_key ) )
+                       if ( is_protected_meta( $meta->meta_key, 'post' ) || ! current_user_can( 'delete_post_meta', $post_ID, $meta->meta_key ) )
                                continue;
                        delete_meta( $key );
                }
                                continue;
                        delete_meta( $key );
                }
@@ -234,16 +229,10 @@ function edit_post( $post_data = null ) {
 
        wp_update_post( $post_data );
 
 
        wp_update_post( $post_data );
 
-       // Reunite any orphaned attachments with their parent
-       if ( !$draft_ids = get_user_option( 'autosave_draft_ids' ) )
-               $draft_ids = array();
-       if ( $draft_temp_id = (int) array_search( $post_ID, $draft_ids ) )
-               _relocate_children( $draft_temp_id, $post_ID );
-
        // Now that we have an ID we can fix any attachment anchor hrefs
        _fix_attachment_links( $post_ID );
 
        // Now that we have an ID we can fix any attachment anchor hrefs
        _fix_attachment_links( $post_ID );
 
-       wp_set_post_lock( $post_ID, $GLOBALS['current_user']->ID );
+       wp_set_post_lock( $post_ID );
 
        if ( current_user_can( $ptype->cap->edit_others_posts ) ) {
                if ( ! empty( $post_data['sticky'] ) )
 
        if ( current_user_can( $ptype->cap->edit_others_posts ) ) {
                if ( ! empty( $post_data['sticky'] ) )
@@ -312,9 +301,9 @@ function bulk_edit_posts( $post_data = null ) {
                foreach ( $post_data['tax_input'] as $tax_name => $terms ) {
                        if ( empty($terms) )
                                continue;
                foreach ( $post_data['tax_input'] as $tax_name => $terms ) {
                        if ( empty($terms) )
                                continue;
-                       if ( is_taxonomy_hierarchical( $tax_name ) )
+                       if ( is_taxonomy_hierarchical( $tax_name ) ) {
                                $tax_input[$tax_name] = array_map( 'absint', $terms );
                                $tax_input[$tax_name] = array_map( 'absint', $terms );
-                       else {
+                       else {
                                $tax_input[$tax_name] = preg_replace( '/\s*,\s*/', ',', rtrim( trim($terms), ' ,' ) );
                                $tax_input[$tax_name] = explode(',', $tax_input[$tax_name]);
                        }
                                $tax_input[$tax_name] = preg_replace( '/\s*,\s*/', ',', rtrim( trim($terms), ' ,' ) );
                                $tax_input[$tax_name] = explode(',', $tax_input[$tax_name]);
                        }
@@ -337,6 +326,14 @@ function bulk_edit_posts( $post_data = null ) {
                }
        }
 
                }
        }
 
+       if ( isset( $post_data['post_format'] ) ) {
+               if ( '0' == $post_data['post_format'] )
+                       $post_data['post_format'] = false;
+               // don't change the post format if it's not supported or not '0' (standard)
+               elseif ( ! current_theme_supports( 'post-formats', $post_data['post_format'] ) )
+                       unset( $post_data['post_format'] );
+       }
+
        $updated = $skipped = $locked = array();
        foreach ( $post_IDs as $post_ID ) {
                $post_type_object = get_post_type_object( get_post_type( $post_ID ) );
        $updated = $skipped = $locked = array();
        foreach ( $post_IDs as $post_ID ) {
                $post_type_object = get_post_type_object( get_post_type( $post_ID ) );
@@ -387,6 +384,8 @@ function bulk_edit_posts( $post_data = null ) {
                                unstick_post( $post_ID );
                }
 
                                unstick_post( $post_ID );
                }
 
+               if ( isset( $post_data['post_format'] ) )
+                       set_post_format( $post_ID, $post_data['post_format'] );
        }
 
        return array( 'updated' => $updated, 'skipped' => $skipped, 'locked' => $locked );
        }
 
        return array( 'updated' => $updated, 'skipped' => $skipped, 'locked' => $locked );
@@ -425,6 +424,7 @@ function get_default_post_to_edit( $post_type = 'post', $create_in_db = false )
                if ( current_theme_supports( 'post-formats' ) && post_type_supports( $post->post_type, 'post-formats' ) && get_option( 'default_post_format' ) )
                        set_post_format( $post, get_option( 'default_post_format' ) );
        } else {
                if ( current_theme_supports( 'post-formats' ) && post_type_supports( $post->post_type, 'post-formats' ) && get_option( 'default_post_format' ) )
                        set_post_format( $post, get_option( 'default_post_format' ) );
        } else {
+               $post = new stdClass;
                $post->ID = 0;
                $post->post_author = '';
                $post->post_date = '';
                $post->ID = 0;
                $post->post_author = '';
                $post->post_date = '';
@@ -533,7 +533,6 @@ function post_exists($title, $content = '', $date = '') {
 function wp_write_post() {
        global $user_ID;
 
 function wp_write_post() {
        global $user_ID;
 
-
        if ( isset($_POST['post_type']) )
                $ptype = get_post_type_object($_POST['post_type']);
        else
        if ( isset($_POST['post_type']) )
                $ptype = get_post_type_object($_POST['post_type']);
        else
@@ -551,33 +550,9 @@ function wp_write_post() {
        // Clear out any data in internal vars.
        unset( $_POST['filter'] );
 
        // Clear out any data in internal vars.
        unset( $_POST['filter'] );
 
-       // Check for autosave collisions
-       // Does this need to be updated? ~ Mark
-       $temp_id = false;
-       if ( isset($_POST['temp_ID']) ) {
-               $temp_id = (int) $_POST['temp_ID'];
-               if ( !$draft_ids = get_user_option( 'autosave_draft_ids' ) )
-                       $draft_ids = array();
-               foreach ( $draft_ids as $temp => $real )
-                       if ( time() + $temp > 86400 ) // 1 day: $temp is equal to -1 * time( then )
-                               unset($draft_ids[$temp]);
-
-               if ( isset($draft_ids[$temp_id]) ) { // Edit, don't write
-                       $_POST['post_ID'] = $draft_ids[$temp_id];
-                       unset($_POST['temp_ID']);
-                       update_user_option( $user_ID, 'autosave_draft_ids', $draft_ids );
-                       return edit_post();
-               }
-       }
-
        // Edit don't write if we have a post id.
        // Edit don't write if we have a post id.
-       if ( isset( $_POST['ID'] ) ) {
-               $_POST['post_ID'] = $_POST['ID'];
-               unset ( $_POST['ID'] );
-       }
-       if ( isset( $_POST['post_ID'] ) ) {
+       if ( isset( $_POST['post_ID'] ) )
                return edit_post();
                return edit_post();
-       }
 
        $translated = _wp_translate_postdata( false );
        if ( is_wp_error($translated) )
 
        $translated = _wp_translate_postdata( false );
        if ( is_wp_error($translated) )
@@ -611,25 +586,10 @@ function wp_write_post() {
 
        add_post_meta( $post_ID, '_edit_last', $GLOBALS['current_user']->ID );
 
 
        add_post_meta( $post_ID, '_edit_last', $GLOBALS['current_user']->ID );
 
-       // Reunite any orphaned attachments with their parent
-       // Does this need to be udpated? ~ Mark
-       if ( !$draft_ids = get_user_option( 'autosave_draft_ids' ) )
-               $draft_ids = array();
-       if ( $draft_temp_id = (int) array_search( $post_ID, $draft_ids ) )
-               _relocate_children( $draft_temp_id, $post_ID );
-       if ( $temp_id && $temp_id != $draft_temp_id )
-               _relocate_children( $temp_id, $post_ID );
-
-       // Update autosave collision detection
-       if ( $temp_id ) {
-               $draft_ids[$temp_id] = $post_ID;
-               update_user_option( $user_ID, 'autosave_draft_ids', $draft_ids );
-       }
-
        // Now that we have an ID we can fix any attachment anchor hrefs
        _fix_attachment_links( $post_ID );
 
        // Now that we have an ID we can fix any attachment anchor hrefs
        _fix_attachment_links( $post_ID );
 
-       wp_set_post_lock( $post_ID, $GLOBALS['current_user']->ID );
+       wp_set_post_lock( $post_ID );
 
        return $post_ID;
 }
 
        return $post_ID;
 }
@@ -638,7 +598,10 @@ function wp_write_post() {
  * Calls wp_write_post() and handles the errors.
  *
  * @since 2.0.0
  * Calls wp_write_post() and handles the errors.
  *
  * @since 2.0.0
- *
+
+ * @uses wp_write_post()
+ * @uses is_wp_error()
+ * @uses wp_die()
  * @return unknown
  */
 function write_post() {
  * @return unknown
  */
 function write_post() {
@@ -667,30 +630,28 @@ function add_meta( $post_ID ) {
 
        $metakeyselect = isset($_POST['metakeyselect']) ? stripslashes( trim( $_POST['metakeyselect'] ) ) : '';
        $metakeyinput = isset($_POST['metakeyinput']) ? stripslashes( trim( $_POST['metakeyinput'] ) ) : '';
 
        $metakeyselect = isset($_POST['metakeyselect']) ? stripslashes( trim( $_POST['metakeyselect'] ) ) : '';
        $metakeyinput = isset($_POST['metakeyinput']) ? stripslashes( trim( $_POST['metakeyinput'] ) ) : '';
-       $metavalue = isset($_POST['metavalue']) ? maybe_serialize( stripslashes_deep( $_POST['metavalue'] ) ) : '';
-       if ( is_string($metavalue) )
+       $metavalue = isset($_POST['metavalue']) ? $_POST['metavalue'] : '';
+       if ( is_string( $metavalue ) )
                $metavalue = trim( $metavalue );
 
                $metavalue = trim( $metavalue );
 
-       if ( ('0' === $metavalue || !empty ( $metavalue ) ) && ((('#NONE#' != $metakeyselect) && !empty ( $metakeyselect) ) || !empty ( $metakeyinput) ) ) {
+       if ( ('0' === $metavalue || ! empty ( $metavalue ) ) && ( ( ( '#NONE#' != $metakeyselect ) && !empty ( $metakeyselect) ) || !empty ( $metakeyinput ) ) ) {
                // We have a key/value pair. If both the select and the
                // input for the key have data, the input takes precedence:
 
                // We have a key/value pair. If both the select and the
                // input for the key have data, the input takes precedence:
 
-               if ('#NONE#' != $metakeyselect)
+               if ( '#NONE#' != $metakeyselect )
                        $metakey = $metakeyselect;
 
                        $metakey = $metakeyselect;
 
-               if ( $metakeyinput)
+               if ( $metakeyinput )
                        $metakey = $metakeyinput; // default
 
                        $metakey = $metakeyinput; // default
 
-               if ( is_protected_meta( $metakey ) )
+               if ( is_protected_meta( $metakey, 'post' ) || ! current_user_can( 'add_post_meta', $post_ID, $metakey ) )
                        return false;
 
                        return false;
 
-               wp_cache_delete($post_ID, 'post_meta');
-               $wpdb->insert( $wpdb->postmeta, array( 'post_id' => $post_ID, 'meta_key' => $metakey, 'meta_value' => $metavalue ) );
-               $meta_id = $wpdb->insert_id;
-               do_action( 'added_postmeta', $meta_id, $post_ID, $metakey, $metavalue );
+               $metakey = esc_sql( $metakey );
 
 
-               return $meta_id;
+               return add_post_meta( $post_ID, $metakey, $metavalue );
        }
        }
+
        return false;
 } // add_meta
 
        return false;
 } // add_meta
 
@@ -703,17 +664,7 @@ function add_meta( $post_ID ) {
  * @return unknown
  */
 function delete_meta( $mid ) {
  * @return unknown
  */
 function delete_meta( $mid ) {
-       global $wpdb;
-       $mid = (int) $mid;
-
-       $post_id = $wpdb->get_var( $wpdb->prepare("SELECT post_id FROM $wpdb->postmeta WHERE meta_id = %d", $mid) );
-
-       do_action( 'delete_postmeta', $mid );
-       wp_cache_delete($post_id, 'post_meta');
-       $rval = $wpdb->query( $wpdb->prepare("DELETE FROM $wpdb->postmeta WHERE meta_id = %d", $mid) );
-       do_action( 'deleted_postmeta', $mid );
-
-       return $rval;
+       return delete_metadata_by_mid( 'post' , $mid );
 }
 
 /**
 }
 
 /**
@@ -744,15 +695,7 @@ function get_meta_keys() {
  * @return unknown
  */
 function get_post_meta_by_id( $mid ) {
  * @return unknown
  */
 function get_post_meta_by_id( $mid ) {
-       global $wpdb;
-       $mid = (int) $mid;
-
-       $meta = $wpdb->get_row( $wpdb->prepare("SELECT * FROM $wpdb->postmeta WHERE meta_id = %d", $mid) );
-       if ( empty($meta) )
-               return false;
-       if ( is_serialized_string( $meta->meta_value ) )
-               $meta->meta_value = maybe_unserialize( $meta->meta_value );
-       return $meta;
+       return get_metadata_by_mid( 'post', $mid );
 }
 
 /**
 }
 
 /**
@@ -771,7 +714,6 @@ function has_meta( $postid ) {
        return $wpdb->get_results( $wpdb->prepare("SELECT meta_key, meta_value, meta_id, post_id
                        FROM $wpdb->postmeta WHERE post_id = %d
                        ORDER BY meta_key,meta_id", $postid), ARRAY_A );
        return $wpdb->get_results( $wpdb->prepare("SELECT meta_key, meta_value, meta_id, post_id
                        FROM $wpdb->postmeta WHERE post_id = %d
                        ORDER BY meta_key,meta_id", $postid), ARRAY_A );
-
 }
 
 /**
 }
 
 /**
@@ -785,30 +727,10 @@ function has_meta( $postid ) {
  * @return unknown
  */
 function update_meta( $meta_id, $meta_key, $meta_value ) {
  * @return unknown
  */
 function update_meta( $meta_id, $meta_key, $meta_value ) {
-       global $wpdb;
+       $meta_key = stripslashes( $meta_key );
+       $meta_value = stripslashes_deep( $meta_value );
 
 
-       $meta_key = stripslashes($meta_key);
-
-       if ( is_protected_meta( $meta_key ) )
-               return false;
-
-       if ( '' === trim( $meta_value ) )
-               return false;
-
-       $post_id = $wpdb->get_var( $wpdb->prepare("SELECT post_id FROM $wpdb->postmeta WHERE meta_id = %d", $meta_id) );
-
-       $meta_value = maybe_serialize( stripslashes_deep( $meta_value ) );
-       $meta_id = (int) $meta_id;
-
-       $data  = compact( 'meta_key', 'meta_value' );
-       $where = compact( 'meta_id' );
-
-       do_action( 'update_postmeta', $meta_id, $post_id, $meta_key, $meta_value );
-       $rval = $wpdb->update( $wpdb->postmeta, $data, $where );
-       wp_cache_delete($post_id, 'post_meta');
-       do_action( 'updated_postmeta', $meta_id, $post_id, $meta_key, $meta_value );
-
-       return $rval;
+       return update_metadata_by_mid( 'post', $meta_id, $meta_value, $meta_key );
 }
 
 //
 }
 
 //
@@ -1275,7 +1197,8 @@ function wp_check_post_lock( $post_id ) {
  * @since 2.5.0
  *
  * @param int $post_id ID of the post to being edited
  * @since 2.5.0
  *
  * @param int $post_id ID of the post to being edited
- * @return bool Returns false if the post doesn't exist of there is no current user
+ * @return bool|array Returns false if the post doesn't exist of there is no current user, or
+ *     an array of the lock time and the user ID.
  */
 function wp_set_post_lock( $post_id ) {
        if ( !$post = get_post( $post_id ) )
  */
 function wp_set_post_lock( $post_id ) {
        if ( !$post = get_post( $post_id ) )
@@ -1287,6 +1210,7 @@ function wp_set_post_lock( $post_id ) {
        $lock = "$now:$user_id";
 
        update_post_meta( $post->ID, '_edit_lock', $lock );
        $lock = "$now:$user_id";
 
        update_post_meta( $post->ID, '_edit_lock', $lock );
+       return array( $now, $user_id );
 }
 
 /**
 }
 
 /**
@@ -1356,11 +1280,14 @@ function wp_create_post_autosave( $post_id ) {
  * @package WordPress
  * @since 2.7.0
  *
  * @package WordPress
  * @since 2.7.0
  *
- * @uses wp_write_post()
+ * @uses get_post_status()
  * @uses edit_post()
  * @uses get_post()
  * @uses current_user_can()
  * @uses edit_post()
  * @uses get_post()
  * @uses current_user_can()
+ * @uses wp_die()
  * @uses wp_create_post_autosave()
  * @uses wp_create_post_autosave()
+ * @uses add_query_arg()
+ * @uses wp_create_nonce()
  *
  * @return str URL to redirect to show the preview
  */
  *
  * @return str URL to redirect to show the preview
  */
@@ -1411,454 +1338,3 @@ function post_preview() {
 
        return $url;
 }
 
        return $url;
 }
-
-/**
- * Adds the TinyMCE editor used on the Write and Edit screens.
- *
- * @package WordPress
- * @since 2.7.0
- *
- * TinyMCE is loaded separately from other Javascript by using wp-tinymce.php. It outputs concatenated
- * and optionaly pre-compressed version of the core and all default plugins. Additional plugins are loaded
- * directly by TinyMCE using non-blocking method. Custom plugins can be refreshed by adding a query string
- * to the URL when queueing them with the mce_external_plugins filter.
- *
- * @param bool $teeny optional Output a trimmed down version used in Press This.
- * @param mixed $settings optional An array that can add to or overwrite the default TinyMCE settings.
- */
-function wp_tiny_mce( $teeny = false, $settings = false ) {
-       global $concatenate_scripts, $compress_scripts, $tinymce_version, $editor_styles;
-
-       if ( ! user_can_richedit() )
-               return;
-
-       $baseurl = includes_url('js/tinymce');
-
-       $mce_locale = ( '' == get_locale() ) ? 'en' : strtolower( substr(get_locale(), 0, 2) ); // only ISO 639-1
-
-       /*
-       The following filter allows localization scripts to change the languages displayed in the spellchecker's drop-down menu.
-       By default it uses Google's spellchecker API, but can be configured to use PSpell/ASpell if installed on the server.
-       The + sign marks the default language. More information:
-       http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/spellchecker
-       */
-       $mce_spellchecker_languages = apply_filters('mce_spellchecker_languages', '+English=en,Danish=da,Dutch=nl,Finnish=fi,French=fr,German=de,Italian=it,Polish=pl,Portuguese=pt,Spanish=es,Swedish=sv');
-
-       if ( $teeny ) {
-               $plugins = apply_filters( 'teeny_mce_plugins', array('inlinepopups', 'fullscreen', 'wordpress', 'wplink', 'wpdialogs') );
-               $ext_plugins = '';
-       } else {
-               $plugins = array( 'inlinepopups', 'spellchecker', 'tabfocus', 'paste', 'media', 'wordpress', 'wpfullscreen', 'wpeditimage', 'wpgallery', 'wplink', 'wpdialogs' );
-
-               /*
-               The following filter takes an associative array of external plugins for TinyMCE in the form 'plugin_name' => 'url'.
-               It adds the plugin's name to TinyMCE's plugins init and the call to PluginManager to load the plugin.
-               The url should be absolute and should include the js file name to be loaded. Example:
-               array( 'myplugin' => 'http://my-site.com/wp-content/plugins/myfolder/mce_plugin.js' )
-               If the plugin uses a button, it should be added with one of the "$mce_buttons" filters.
-               */
-               $mce_external_plugins = apply_filters('mce_external_plugins', array());
-
-               $ext_plugins = '';
-               if ( ! empty($mce_external_plugins) ) {
-
-                       /*
-                       The following filter loads external language files for TinyMCE plugins.
-                       It takes an associative array 'plugin_name' => 'path', where path is the
-                       include path to the file. The language file should follow the same format as
-                       /tinymce/langs/wp-langs.php and should define a variable $strings that
-                       holds all translated strings.
-                       When this filter is not used, the function will try to load {mce_locale}.js.
-                       If that is not found, en.js will be tried next.
-                       */
-                       $mce_external_languages = apply_filters('mce_external_languages', array());
-
-                       $loaded_langs = array();
-                       $strings = '';
-
-                       if ( ! empty($mce_external_languages) ) {
-                               foreach ( $mce_external_languages as $name => $path ) {
-                                       if ( @is_file($path) && @is_readable($path) ) {
-                                               include_once($path);
-                                               $ext_plugins .= $strings . "\n";
-                                               $loaded_langs[] = $name;
-                                       }
-                               }
-                       }
-
-                       foreach ( $mce_external_plugins as $name => $url ) {
-
-                               if ( is_ssl() ) $url = str_replace('http://', 'https://', $url);
-
-                               $plugins[] = '-' . $name;
-
-                               $plugurl = dirname($url);
-                               $strings = $str1 = $str2 = '';
-                               if ( ! in_array($name, $loaded_langs) ) {
-                                       $path = str_replace( WP_PLUGIN_URL, '', $plugurl );
-                                       $path = WP_PLUGIN_DIR . $path . '/langs/';
-
-                                       if ( function_exists('realpath') )
-                                               $path = trailingslashit( realpath($path) );
-
-                                       if ( @is_file($path . $mce_locale . '.js') )
-                                               $strings .= @file_get_contents($path . $mce_locale . '.js') . "\n";
-
-                                       if ( @is_file($path . $mce_locale . '_dlg.js') )
-                                               $strings .= @file_get_contents($path . $mce_locale . '_dlg.js') . "\n";
-
-                                       if ( 'en' != $mce_locale && empty($strings) ) {
-                                               if ( @is_file($path . 'en.js') ) {
-                                                       $str1 = @file_get_contents($path . 'en.js');
-                                                       $strings .= preg_replace( '/([\'"])en\./', '$1' . $mce_locale . '.', $str1, 1 ) . "\n";
-                                               }
-
-                                               if ( @is_file($path . 'en_dlg.js') ) {
-                                                       $str2 = @file_get_contents($path . 'en_dlg.js');
-                                                       $strings .= preg_replace( '/([\'"])en\./', '$1' . $mce_locale . '.', $str2, 1 ) . "\n";
-                                               }
-                                       }
-
-                                       if ( ! empty($strings) )
-                                               $ext_plugins .= "\n" . $strings . "\n";
-                               }
-
-                               $ext_plugins .= 'tinyMCEPreInit.load_ext("' . $plugurl . '", "' . $mce_locale . '");' . "\n";
-                               $ext_plugins .= 'tinymce.PluginManager.load("' . $name . '", "' . $url . '");' . "\n";
-                       }
-               }
-       }
-
-       if ( $teeny ) {
-               $mce_buttons = apply_filters( 'teeny_mce_buttons', array('bold, italic, underline, blockquote, separator, strikethrough, bullist, numlist,justifyleft, justifycenter, justifyright, undo, redo, link, unlink, fullscreen') );
-               $mce_buttons = implode($mce_buttons, ',');
-               $mce_buttons_2 = $mce_buttons_3 = $mce_buttons_4 = '';
-       } else {
-               $mce_buttons = apply_filters('mce_buttons', array('bold', 'italic', 'strikethrough', '|', 'bullist', 'numlist', 'blockquote', '|', 'justifyleft', 'justifycenter', 'justifyright', '|', 'link', 'unlink', 'wp_more', '|', 'spellchecker', 'fullscreen', 'wp_adv' ));
-               $mce_buttons = implode($mce_buttons, ',');
-
-               $mce_buttons_2 = array( 'formatselect', 'underline', 'justifyfull', 'forecolor', '|', 'pastetext', 'pasteword', 'removeformat', '|', 'charmap', '|', 'outdent', 'indent', '|', 'undo', 'redo', 'wp_help' );
-               $mce_buttons_2 = apply_filters('mce_buttons_2', $mce_buttons_2);
-               $mce_buttons_2 = implode($mce_buttons_2, ',');
-
-               $mce_buttons_3 = apply_filters('mce_buttons_3', array());
-               $mce_buttons_3 = implode($mce_buttons_3, ',');
-
-               $mce_buttons_4 = apply_filters('mce_buttons_4', array());
-               $mce_buttons_4 = implode($mce_buttons_4, ',');
-       }
-       $no_captions = (bool) apply_filters( 'disable_captions', '' );
-
-       // TinyMCE init settings
-       $initArray = array (
-               'mode' => 'specific_textareas',
-               'editor_selector' => 'theEditor',
-               'width' => '100%',
-               'theme' => 'advanced',
-               'skin' => 'wp_theme',
-               'theme_advanced_buttons1' => $mce_buttons,
-               'theme_advanced_buttons2' => $mce_buttons_2,
-               'theme_advanced_buttons3' => $mce_buttons_3,
-               'theme_advanced_buttons4' => $mce_buttons_4,
-               'language' => $mce_locale,
-               'spellchecker_languages' => $mce_spellchecker_languages,
-               'theme_advanced_toolbar_location' => 'top',
-               'theme_advanced_toolbar_align' => 'left',
-               'theme_advanced_statusbar_location' => 'bottom',
-               'theme_advanced_resizing' => true,
-               'theme_advanced_resize_horizontal' => false,
-               'dialog_type' => 'modal',
-               'formats' => "{
-                       alignleft : [
-                               {selector : 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li', styles : {textAlign : 'left'}},
-                               {selector : 'img,table', classes : 'alignleft'}
-                       ],
-                       aligncenter : [
-                               {selector : 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li', styles : {textAlign : 'center'}},
-                               {selector : 'img,table', classes : 'aligncenter'}
-                       ],
-                       alignright : [
-                               {selector : 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li', styles : {textAlign : 'right'}},
-                               {selector : 'img,table', classes : 'alignright'}
-                       ],
-                       strikethrough : {inline : 'del'}
-               }",
-               'relative_urls' => false,
-               'remove_script_host' => false,
-               'convert_urls' => false,
-               'apply_source_formatting' => false,
-               'remove_linebreaks' => true,
-               'gecko_spellcheck' => true,
-               'keep_styles' => false,
-               'entities' => '38,amp,60,lt,62,gt',
-               'accessibility_focus' => true,
-               'tabfocus_elements' => 'major-publishing-actions',
-               'media_strict' => false,
-               'paste_remove_styles' => true,
-               'paste_remove_spans' => true,
-               'paste_strip_class_attributes' => 'all',
-               'paste_text_use_dialog' => true,
-               'extended_valid_elements' => 'article[*],aside[*],audio[*],canvas[*],command[*],datalist[*],details[*],embed[*],figcaption[*],figure[*],footer[*],header[*],hgroup[*],keygen[*],mark[*],meter[*],nav[*],output[*],progress[*],section[*],source[*],summary,time[*],video[*],wbr',
-               'wpeditimage_disable_captions' => $no_captions,
-               'wp_fullscreen_content_css' => "$baseurl/plugins/wpfullscreen/css/wp-fullscreen.css",
-               'plugins' => implode( ',', $plugins ),
-       );
-
-       if ( ! empty( $editor_styles ) && is_array( $editor_styles ) ) {
-               $mce_css = array();
-               $style_uri = get_stylesheet_directory_uri();
-               if ( ! is_child_theme() ) {
-                       foreach ( $editor_styles as $file )
-                               $mce_css[] = "$style_uri/$file";
-               } else {
-                       $style_dir    = get_stylesheet_directory();
-                       $template_uri = get_template_directory_uri();
-                       $template_dir = get_template_directory();
-                       foreach ( $editor_styles as $file ) {
-                               if ( file_exists( "$template_dir/$file" ) )
-                                       $mce_css[] = "$template_uri/$file";
-                               if ( file_exists( "$style_dir/$file" ) )
-                                       $mce_css[] = "$style_uri/$file";
-                       }
-               }
-               $mce_css = implode( ',', $mce_css );
-       } else {
-               $mce_css = '';
-       }
-
-       $mce_css = trim( apply_filters( 'mce_css', $mce_css ), ' ,' );
-
-       if ( ! empty($mce_css) )
-               $initArray['content_css'] = $mce_css;
-
-       if ( is_array($settings) )
-               $initArray = array_merge($initArray, $settings);
-
-       // For people who really REALLY know what they're doing with TinyMCE
-       // You can modify initArray to add, remove, change elements of the config before tinyMCE.init
-       // Setting "valid_elements", "invalid_elements" and "extended_valid_elements" can be done through "tiny_mce_before_init".
-       // Best is to use the default cleanup by not specifying valid_elements, as TinyMCE contains full set of XHTML 1.0.
-       if ( $teeny ) {
-               $initArray = apply_filters('teeny_mce_before_init', $initArray);
-       } else {
-               $initArray = apply_filters('tiny_mce_before_init', $initArray);
-       }
-
-       if ( empty($initArray['theme_advanced_buttons3']) && !empty($initArray['theme_advanced_buttons4']) ) {
-               $initArray['theme_advanced_buttons3'] = $initArray['theme_advanced_buttons4'];
-               $initArray['theme_advanced_buttons4'] = '';
-       }
-
-       if ( ! isset($concatenate_scripts) )
-               script_concat_settings();
-
-       $language = $initArray['language'];
-
-       $compressed = $compress_scripts && $concatenate_scripts && isset($_SERVER['HTTP_ACCEPT_ENCODING'])
-               && false !== stripos($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip');
-
-       /**
-        * Deprecated
-        *
-        * The tiny_mce_version filter is not needed since external plugins are loaded directly by TinyMCE.
-        * These plugins can be refreshed by appending query string to the URL passed to mce_external_plugins filter.
-        * If the plugin has a popup dialog, a query string can be added to the button action that opens it (in the plugin's code).
-        */
-       $version = apply_filters('tiny_mce_version', '');
-       $version = 'ver=' . $tinymce_version . $version;
-
-       if ( 'en' != $language )
-               include_once(ABSPATH . WPINC . '/js/tinymce/langs/wp-langs.php');
-
-       $mce_options = '';
-       foreach ( $initArray as $k => $v ) {
-               if ( is_bool($v) ) {
-                       $val = $v ? 'true' : 'false';
-                       $mce_options .= $k . ':' . $val . ', ';
-                       continue;
-               } elseif ( !empty($v) && is_string($v) && ( ('{' == $v{0} && '}' == $v{strlen($v) - 1}) || ('[' == $v{0} && ']' == $v{strlen($v) - 1}) || preg_match('/^\(?function ?\(/', $v) ) ) {
-                       $mce_options .= $k . ':' . $v . ', ';
-                       continue;
-               }
-
-               $mce_options .= $k . ':"' . $v . '", ';
-       }
-
-       $mce_options = rtrim( trim($mce_options), '\n\r,' );
-
-       do_action('before_wp_tiny_mce', $initArray); ?>
-
-<script type="text/javascript">
-/* <![CDATA[ */
-tinyMCEPreInit = {
-       base : "<?php echo $baseurl; ?>",
-       suffix : "",
-       query : "<?php echo $version; ?>",
-       mceInit : {<?php echo $mce_options; ?>},
-       load_ext : function(url,lang){var sl=tinymce.ScriptLoader;sl.markDone(url+'/langs/'+lang+'.js');sl.markDone(url+'/langs/'+lang+'_dlg.js');}
-};
-/* ]]> */
-</script>
-
-<?php
-       if ( $compressed )
-               echo "<script type='text/javascript' src='$baseurl/wp-tinymce.php?c=1&amp;$version'></script>\n";
-       else
-               echo "<script type='text/javascript' src='$baseurl/tiny_mce.js?$version'></script>\n";
-
-       if ( 'en' != $language && isset($lang) )
-               echo "<script type='text/javascript'>\n$lang\n</script>\n";
-       else
-               echo "<script type='text/javascript' src='$baseurl/langs/wp-langs-en.js?$version'></script>\n";
-?>
-
-<script type="text/javascript">
-/* <![CDATA[ */
-<?php
-       if ( $ext_plugins )
-               echo "$ext_plugins\n";
-
-       if ( ! $compressed ) {
-?>
-(function(){var t=tinyMCEPreInit,sl=tinymce.ScriptLoader,ln=t.mceInit.language,th=t.mceInit.theme,pl=t.mceInit.plugins;sl.markDone(t.base+'/langs/'+ln+'.js');sl.markDone(t.base+'/themes/'+th+'/langs/'+ln+'.js');sl.markDone(t.base+'/themes/'+th+'/langs/'+ln+'_dlg.js');tinymce.each(pl.split(','),function(n){if(n&&n.charAt(0)!='-'){sl.markDone(t.base+'/plugins/'+n+'/langs/'+ln+'.js');sl.markDone(t.base+'/plugins/'+n+'/langs/'+ln+'_dlg.js');}});})();
-<?php } ?>
-tinyMCE.init(tinyMCEPreInit.mceInit);
-/* ]]> */
-</script>
-<?php
-
-do_action('after_wp_tiny_mce', $initArray);
-}
-
-// Load additional inline scripts based on active plugins.
-function wp_preload_dialogs($init) {
-       $plugins = preg_split('/[ ,-]+/', $init['plugins']);
-
-       if ( in_array( 'wpdialogs', $plugins, true ) ) {
-               wp_print_scripts('wpdialogs-popup');
-               wp_print_styles('wp-jquery-ui-dialog');
-       }
-
-       if ( in_array( 'wplink', $plugins, true ) ) {
-               require_once ABSPATH . 'wp-admin/includes/internal-linking.php';
-               ?><div style="display:none;"><?php wp_link_dialog(); ?></div><?php
-               wp_print_scripts('wplink');
-               wp_print_styles('wplink');
-       }
-
-       // Distraction Free Writing mode
-       if ( in_array( 'wpfullscreen', $plugins, true ) ) {
-               wp_fullscreen_html();
-               wp_print_scripts('wp-fullscreen');
-       }
-
-       wp_print_scripts('word-count');
-}
-
-function wp_quicktags() {
-       global $tinymce_version;
-
-       wp_preload_dialogs( array( 'plugins' => 'wpdialogs,wplink,wpfullscreen' ) );
-
-       if ( !user_can_richedit() ) {
-               wp_enqueue_style( 'tinymce-buttons', includes_url('js/tinymce/themes/advanced/skins/wp_theme/ui.css'), array(), $tinymce_version );
-               wp_print_styles('tinymce-buttons');
-       }
-}
-
-function wp_print_editor_js() {
-       wp_print_scripts('editor');
-}
-
-function wp_fullscreen_html() {
-       global $content_width, $post;
-
-       $width = isset($content_width) && 800 > $content_width ? $content_width : 800;
-       $width = $width + 10; // compensate for the padding
-       $dfw_width = get_user_setting( 'dfw_width', $width );
-       $save = isset($post->post_status) && $post->post_status == 'publish' ? __('Update') : __('Save');
-?>
-<div id="wp-fullscreen-body">
-<div id="fullscreen-topbar">
-       <div id="wp-fullscreen-toolbar">
-               <div id="wp-fullscreen-close"><a href="#" onclick="fullscreen.off();return false;"><?php _e('Exit fullscreen'); ?></a></div>
-               <div id="wp-fullscreen-central-toolbar" style="width:<?php echo $width; ?>px;">
-
-               <div id="wp-fullscreen-mode-bar"><div id="wp-fullscreen-modes">
-                       <a href="#" onclick="fullscreen.switchmode('tinymce');return false;"><?php _e('Visual'); ?></a>
-                       <a href="#" onclick="fullscreen.switchmode('html');return false;"><?php _e('HTML'); ?></a>
-               </div></div>
-
-               <div id="wp-fullscreen-button-bar"><div id="wp-fullscreen-buttons" class="wp_themeSkin">
-<?php
-
-       $media_link_type = 'image';
-       if ( is_multisite() && ( ( ! $mu_media_buttons = get_site_option( 'mu_media_buttons' ) ) || empty( $mu_media_buttons['image'] ) ) )
-               $media_link_type = 'media';
-
-       $buttons = array(
-               // format: title, onclick, show in both editors
-               'bold' => array( 'title' => __('Bold (Ctrl + B)'), 'onclick' => 'fullscreen.b();', 'both' => false ),
-               'italic' => array( 'title' => __('Italic (Ctrl + I)'), 'onclick' => 'fullscreen.i();', 'both' => false ),
-               '0' => 'separator',
-               'bullist' => array( 'title' => __('Unordered list (Alt + Shift + U)'), 'onclick' => 'fullscreen.ul();', 'both' => false ),
-               'numlist' => array( 'title' => __('Ordered list (Alt + Shift + O)'), 'onclick' => 'fullscreen.ol();', 'both' => false ),
-               '1' => 'separator',
-               'blockquote' => array( 'title' => __('Blockquote (Alt+Shift+Q)'), 'onclick' => 'fullscreen.blockquote();', 'both' => false ),
-               'image' => array( 'title' => __('Insert/edit image (Alt + Shift + M)'), 'onclick' => "jQuery('#add_{$media_link_type}').click();", 'both' => true ),
-               '2' => 'separator',
-               'link' => array( 'title' => __('Insert/edit link (Alt + Shift + A)'), 'onclick' => 'fullscreen.link();', 'both' => true ),
-               'unlink' => array( 'title' => __('Unlink (Alt + Shift + S)'), 'onclick' => 'fullscreen.unlink();', 'both' => false ),
-               '3' => 'separator',
-               'help' => array( 'title' => __('Help (Alt + Shift + H)'), 'onclick' => 'fullscreen.help();', 'both' => false )
-       );
-
-       $buttons = apply_filters( 'wp_fullscreen_buttons', $buttons );
-
-       foreach ( $buttons as $button => $args ) {
-               if ( 'separator' == $args ) { ?>
-                       <div><span aria-orientation="vertical" role="separator" class="mceSeparator"></span></div>
-<?php          continue;
-               } ?>
-
-               <div<?php if ( $args['both'] ) { ?> class="wp-fullscreen-both"<?php } ?>>
-               <a title="<?php echo $args['title']; ?>" onclick="<?php echo $args['onclick']; ?>return false;" class="mceButton mceButtonEnabled mce_<?php echo $button; ?>" href="#" id="wp_fs_<?php echo $button; ?>" role="button" aria-pressed="false">
-               <span class="mceIcon mce_<?php echo $button; ?>"></span>
-               </a>
-               </div>
-<?php
-       } ?>
-
-               </div></div>
-
-               <div id="wp-fullscreen-save">
-                       <span><?php if ( $post->post_status == 'publish' ) _e('Updated.'); else _e('Saved.'); ?></span>
-                       <img src="images/wpspin_light.gif" alt="" />
-                       <input type="button" class="button-primary" value="<?php echo $save; ?>" onclick="fullscreen.save();" />
-               </div>
-
-               </div>
-       </div>
-</div>
-
-<div id="wp-fullscreen-wrap" style="width:<?php echo $dfw_width; ?>px;">
-       <label id="wp-fullscreen-title-prompt-text" for="wp-fullscreen-title"><?php echo apply_filters( 'enter_title_here', __( 'Enter title here' ), $post ); ?></label>
-       <input type="text" id="wp-fullscreen-title" value="" autocomplete="off" />
-
-       <div id="wp-fullscreen-container">
-               <textarea id="wp_mce_fullscreen"></textarea>
-       </div>
-
-       <div id="wp-fullscreen-status">
-               <div id="wp-fullscreen-count"><?php printf( __( 'Word count: %s' ), '<span class="word-count">0</span>' ); ?></div>
-               <div id="wp-fullscreen-tagline"><?php _e('Just write.'); ?></div>
-       </div>
-</div>
-</div>
-
-<div class="fullscreen-overlay" id="fullscreen-overlay"></div>
-<div class="fullscreen-overlay fullscreen-fader fade-600" id="fullscreen-fader"></div>
-<?php
-}
-
-
index 1834153e882fb8c45fbd8bc7450deb0f58504f4b..687b8fd302a2fd9bb5591904696ea798be9705a1 100644 (file)
@@ -8,6 +8,9 @@
  * @subpackage Administration
  */
 
  * @subpackage Administration
  */
 
+// Declare these as global in case schema.php is included from a function.
+global $wpdb, $wp_queries, $charset_collate;
+
 /**
  * The database character collate.
  * @var string
 /**
  * The database character collate.
  * @var string
  */
 $charset_collate = '';
 
  */
 $charset_collate = '';
 
-// Declare these as global in case schema.php is included from a function.
-global $wpdb, $wp_queries;
-
-if ( ! empty($wpdb->charset) )
+if ( ! empty( $wpdb->charset ) )
        $charset_collate = "DEFAULT CHARACTER SET $wpdb->charset";
        $charset_collate = "DEFAULT CHARACTER SET $wpdb->charset";
-if ( ! empty($wpdb->collate) )
+if ( ! empty( $wpdb->collate ) )
        $charset_collate .= " COLLATE $wpdb->collate";
 
        $charset_collate .= " COLLATE $wpdb->collate";
 
-/** Create WordPress database tables SQL */
-$wp_queries = "CREATE TABLE $wpdb->terms (
+/**
+ * Retrieve the SQL for creating database tables.
+ *
+ * @since 3.3.0
+ *
+ * @param string $scope Optional. The tables for which to retrieve SQL. Can be all, global, ms_global, or blog tables. Defaults to all.
+ * @param int $blog_id Optional. The blog ID for which to retrieve SQL.  Default is the current blog ID.
+ * @return string The SQL needed to create the requested tables.
+ */
+function wp_get_db_schema( $scope = 'all', $blog_id = null ) {
+       global $wpdb;
+
+       $charset_collate = '';
+
+       if ( ! empty($wpdb->charset) )
+               $charset_collate = "DEFAULT CHARACTER SET $wpdb->charset";
+       if ( ! empty($wpdb->collate) )
+               $charset_collate .= " COLLATE $wpdb->collate";
+
+       if ( $blog_id && $blog_id != $wpdb->blogid )
+               $old_blog_id = $wpdb->set_blog_id( $blog_id );
+
+       // Engage multisite if in the middle of turning it on from network.php.
+       $is_multisite = is_multisite() || ( defined( 'WP_INSTALLING_NETWORK' ) && WP_INSTALLING_NETWORK );
+
+       // Blog specific tables.
+       $blog_tables = "CREATE TABLE $wpdb->terms (
  term_id bigint(20) unsigned NOT NULL auto_increment,
  name varchar(200) NOT NULL default '',
  slug varchar(200) NOT NULL default '',
  term_id bigint(20) unsigned NOT NULL auto_increment,
  name varchar(200) NOT NULL default '',
  slug varchar(200) NOT NULL default '',
@@ -148,8 +173,10 @@ CREATE TABLE $wpdb->posts (
   KEY type_status_date (post_type,post_status,post_date,ID),
   KEY post_parent (post_parent),
   KEY post_author (post_author)
   KEY type_status_date (post_type,post_status,post_date,ID),
   KEY post_parent (post_parent),
   KEY post_author (post_author)
-) $charset_collate;
-CREATE TABLE $wpdb->users (
+) $charset_collate;\n";
+
+       // Single site users table. The multisite flavor of the users table is handled below.
+       $users_single_table = "CREATE TABLE $wpdb->users (
   ID bigint(20) unsigned NOT NULL auto_increment,
   user_login varchar(60) NOT NULL default '',
   user_pass varchar(64) NOT NULL default '',
   ID bigint(20) unsigned NOT NULL auto_increment,
   user_login varchar(60) NOT NULL default '',
   user_pass varchar(64) NOT NULL default '',
@@ -163,8 +190,29 @@ CREATE TABLE $wpdb->users (
   PRIMARY KEY  (ID),
   KEY user_login_key (user_login),
   KEY user_nicename (user_nicename)
   PRIMARY KEY  (ID),
   KEY user_login_key (user_login),
   KEY user_nicename (user_nicename)
-) $charset_collate;
-CREATE TABLE $wpdb->usermeta (
+) $charset_collate;\n";
+
+       // Multisite users table
+       $users_multi_table = "CREATE TABLE $wpdb->users (
+  ID bigint(20) unsigned NOT NULL auto_increment,
+  user_login varchar(60) NOT NULL default '',
+  user_pass varchar(64) NOT NULL default '',
+  user_nicename varchar(50) NOT NULL default '',
+  user_email varchar(100) NOT NULL default '',
+  user_url varchar(100) NOT NULL default '',
+  user_registered datetime NOT NULL default '0000-00-00 00:00:00',
+  user_activation_key varchar(60) NOT NULL default '',
+  user_status int(11) NOT NULL default '0',
+  display_name varchar(250) NOT NULL default '',
+  spam tinyint(2) NOT NULL default '0',
+  deleted tinyint(2) NOT NULL default '0',
+  PRIMARY KEY  (ID),
+  KEY user_login_key (user_login),
+  KEY user_nicename (user_nicename)
+) $charset_collate;\n";
+
+       // usermeta
+       $usermeta_table = "CREATE TABLE $wpdb->usermeta (
   umeta_id bigint(20) unsigned NOT NULL auto_increment,
   user_id bigint(20) unsigned NOT NULL default '0',
   meta_key varchar(255) default NULL,
   umeta_id bigint(20) unsigned NOT NULL auto_increment,
   user_id bigint(20) unsigned NOT NULL default '0',
   meta_key varchar(255) default NULL,
@@ -172,8 +220,108 @@ CREATE TABLE $wpdb->usermeta (
   PRIMARY KEY  (umeta_id),
   KEY user_id (user_id),
   KEY meta_key (meta_key)
   PRIMARY KEY  (umeta_id),
   KEY user_id (user_id),
   KEY meta_key (meta_key)
+) $charset_collate;\n";
+
+       // Global tables
+       if ( $is_multisite )
+               $global_tables = $users_multi_table . $usermeta_table;
+       else
+               $global_tables = $users_single_table . $usermeta_table;
+
+       // Multisite global tables.
+       $ms_global_tables = "CREATE TABLE $wpdb->blogs (
+  blog_id bigint(20) NOT NULL auto_increment,
+  site_id bigint(20) NOT NULL default '0',
+  domain varchar(200) NOT NULL default '',
+  path varchar(100) NOT NULL default '',
+  registered datetime NOT NULL default '0000-00-00 00:00:00',
+  last_updated datetime NOT NULL default '0000-00-00 00:00:00',
+  public tinyint(2) NOT NULL default '1',
+  archived enum('0','1') NOT NULL default '0',
+  mature tinyint(2) NOT NULL default '0',
+  spam tinyint(2) NOT NULL default '0',
+  deleted tinyint(2) NOT NULL default '0',
+  lang_id int(11) NOT NULL default '0',
+  PRIMARY KEY  (blog_id),
+  KEY domain (domain(50),path(5)),
+  KEY lang_id (lang_id)
+) $charset_collate;
+CREATE TABLE $wpdb->blog_versions (
+  blog_id bigint(20) NOT NULL default '0',
+  db_version varchar(20) NOT NULL default '',
+  last_updated datetime NOT NULL default '0000-00-00 00:00:00',
+  PRIMARY KEY  (blog_id),
+  KEY db_version (db_version)
+) $charset_collate;
+CREATE TABLE $wpdb->registration_log (
+  ID bigint(20) NOT NULL auto_increment,
+  email varchar(255) NOT NULL default '',
+  IP varchar(30) NOT NULL default '',
+  blog_id bigint(20) NOT NULL default '0',
+  date_registered datetime NOT NULL default '0000-00-00 00:00:00',
+  PRIMARY KEY  (ID),
+  KEY IP (IP)
+) $charset_collate;
+CREATE TABLE $wpdb->site (
+  id bigint(20) NOT NULL auto_increment,
+  domain varchar(200) NOT NULL default '',
+  path varchar(100) NOT NULL default '',
+  PRIMARY KEY  (id),
+  KEY domain (domain,path)
+) $charset_collate;
+CREATE TABLE $wpdb->sitemeta (
+  meta_id bigint(20) NOT NULL auto_increment,
+  site_id bigint(20) NOT NULL default '0',
+  meta_key varchar(255) default NULL,
+  meta_value longtext,
+  PRIMARY KEY  (meta_id),
+  KEY meta_key (meta_key),
+  KEY site_id (site_id)
+) $charset_collate;
+CREATE TABLE $wpdb->signups (
+  domain varchar(200) NOT NULL default '',
+  path varchar(100) NOT NULL default '',
+  title longtext NOT NULL,
+  user_login varchar(60) NOT NULL default '',
+  user_email varchar(100) NOT NULL default '',
+  registered datetime NOT NULL default '0000-00-00 00:00:00',
+  activated datetime NOT NULL default '0000-00-00 00:00:00',
+  active tinyint(1) NOT NULL default '0',
+  activation_key varchar(50) NOT NULL default '',
+  meta longtext,
+  KEY activation_key (activation_key),
+  KEY domain (domain)
 ) $charset_collate;";
 
 ) $charset_collate;";
 
+       switch ( $scope ) {
+               case 'blog' :
+                       $queries = $blog_tables;
+                       break;
+               case 'global' :
+                       $queries = $global_tables;
+                       if ( $is_multisite )
+                               $queries .= $ms_global_tables;
+                       break;
+               case 'ms_global' :
+                       $queries = $ms_global_tables;
+                       break;
+               default:
+               case 'all' :
+                       $queries = $global_tables . $blog_tables;
+                       if ( $is_multisite )
+                               $queries .= $ms_global_tables;
+                       break;
+       }
+
+       if ( isset( $old_blog_id ) )
+               $wpdb->set_blog_id( $old_blog_id );
+
+       return $queries;
+}
+
+// Populate for back compat.
+$wp_queries = wp_get_db_schema( 'all' );
+
 /**
  * Create WordPress options and set the default values.
  *
 /**
  * Create WordPress options and set the default values.
  *
@@ -182,7 +330,7 @@ CREATE TABLE $wpdb->usermeta (
  * @uses $wp_db_version
  */
 function populate_options() {
  * @uses $wp_db_version
  */
 function populate_options() {
-       global $wpdb, $wp_db_version, $current_site;
+       global $wpdb, $wp_db_version, $current_site, $wp_current_db_version;
 
        $guessurl = wp_guess_url();
 
 
        $guessurl = wp_guess_url();
 
@@ -195,6 +343,15 @@ function populate_options() {
                $uploads_use_yearmonth_folders = 1;
        }
 
                $uploads_use_yearmonth_folders = 1;
        }
 
+       $template = WP_DEFAULT_THEME;
+       // If default theme is a child theme, we need to get its template
+       foreach ( (array) get_themes() as $theme ) {
+               if ( WP_DEFAULT_THEME == $theme['Stylesheet'] ) {
+                       $template = $theme['Template'];
+                       break;
+               }
+       }
+
        $options = array(
        'siteurl' => $guessurl,
        'blogname' => __('My Site'),
        $options = array(
        'siteurl' => $guessurl,
        'blogname' => __('My Site'),
@@ -246,7 +403,7 @@ function populate_options() {
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
        // 1.5
        'default_email_category' => 1,
        'recently_edited' => '',
-       'template' => WP_DEFAULT_THEME,
+       'template' => $template,
        'stylesheet' => WP_DEFAULT_THEME,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
        'stylesheet' => WP_DEFAULT_THEME,
        'comment_whitelist' => 1,
        'blacklist_keys' => '',
@@ -323,6 +480,12 @@ function populate_options() {
        'default_post_format' => 0,
        );
 
        'default_post_format' => 0,
        );
 
+       // 3.3
+       if ( ! is_multisite() ) {
+               $options['initial_db_version'] = ! empty( $wp_current_db_version ) && $wp_current_db_version < $wp_db_version
+                       ? $wp_current_db_version : $wp_db_version;
+       }
+
        // 3.0 multisite
        if ( is_multisite() ) {
                /* translators: blog tagline */
        // 3.0 multisite
        if ( is_multisite() ) {
                /* translators: blog tagline */
@@ -623,6 +786,21 @@ function populate_roles_300() {
        }
 }
 
        }
 }
 
+/**
+ * Install Network.
+ *
+ * @since 3.0.0
+ *
+ */
+if ( !function_exists( 'install_network' ) ) :
+function install_network() {
+       if ( ! defined( 'WP_INSTALLING_NETWORK' ) )
+               define( 'WP_INSTALLING_NETWORK', true );
+
+       dbDelta( wp_get_db_schema( 'global' ) );
+}
+endif;
+
 /**
  * populate network settings
  *
 /**
  * populate network settings
  *
@@ -645,7 +823,7 @@ function populate_network( $network_id = 1, $domain = '', $email = '', $site_nam
        if ( $network_id == $wpdb->get_var( $wpdb->prepare( "SELECT id FROM $wpdb->site WHERE id = %d", $network_id ) ) )
                $errors->add( 'siteid_exists', __( 'The network already exists.' ) );
 
        if ( $network_id == $wpdb->get_var( $wpdb->prepare( "SELECT id FROM $wpdb->site WHERE id = %d", $network_id ) ) )
                $errors->add( 'siteid_exists', __( 'The network already exists.' ) );
 
-       $site_user = get_user_by_email( $email );
+       $site_user = get_user_by( 'email', $email );
        if ( ! is_email( $email ) )
                $errors->add( 'invalid_email', __( 'You must provide a valid e-mail address.' ) );
 
        if ( ! is_email( $email ) )
                $errors->add( 'invalid_email', __( 'You must provide a valid e-mail address.' ) );
 
@@ -689,10 +867,9 @@ BLOG_URL
 You can log in to the administrator account with the following information:
 Username: USERNAME
 Password: PASSWORD
 You can log in to the administrator account with the following information:
 Username: USERNAME
 Password: PASSWORD
-Log in Here: BLOG_URLwp-login.php
+Log in here: BLOG_URLwp-login.php
 
 
-We hope you enjoy your new site.
-Thanks!
+We hope you enjoy your new site. Thanks!
 
 --The Team @ SITE_NAME' );
 
 
 --The Team @ SITE_NAME' );
 
@@ -715,7 +892,9 @@ Thanks!
                'add_new_users' => '0',
                'upload_space_check_disabled' => '0',
                'subdomain_install' => intval( $subdomain_install ),
                'add_new_users' => '0',
                'upload_space_check_disabled' => '0',
                'subdomain_install' => intval( $subdomain_install ),
-               'global_terms_enabled' => global_terms_enabled() ? '1' : '0'
+               'global_terms_enabled' => global_terms_enabled() ? '1' : '0',
+               'initial_db_version' => get_option( 'initial_db_version' ),
+               'active_sitewide_plugins' => array(),
        );
        if ( ! $subdomain_install )
                $sitemeta['illegal_names'][] = 'blog';
        );
        if ( ! $subdomain_install )
                $sitemeta['illegal_names'][] = 'blog';
diff --git a/wp-admin/includes/screen.php b/wp-admin/includes/screen.php
new file mode 100644 (file)
index 0000000..a182b74
--- /dev/null
@@ -0,0 +1,951 @@
+<?php
+/**
+ * WordPress Administration Screen API.
+ *
+ * @package WordPress
+ * @subpackage Administration
+ */
+
+/**
+ * Get the column headers for a screen
+ *
+ * @since 2.7.0
+ *
+ * @param string|WP_Screen $screen The screen you want the headers for
+ * @return array Containing the headers in the format id => UI String
+ */
+function get_column_headers( $screen ) {
+       if ( is_string( $screen ) )
+               $screen = convert_to_screen( $screen );
+
+       static $column_headers = array();
+
+       if ( ! isset( $column_headers[ $screen->id ] ) )
+               $column_headers[ $screen->id ] = apply_filters( 'manage_' . $screen->id . '_columns', array() );
+
+       return $column_headers[ $screen->id ];
+}
+
+/**
+ * Get a list of hidden columns.
+ *
+ * @since 2.7.0
+ *
+ * @param string|WP_Screen $screen The screen you want the hidden columns for
+ * @return array
+ */
+function get_hidden_columns( $screen ) {
+       if ( is_string( $screen ) )
+               $screen = convert_to_screen( $screen );
+
+       return (array) get_user_option( 'manage' . $screen->id . 'columnshidden' );
+}
+
+/**
+ * Prints the meta box preferences for screen meta.
+ *
+ * @since 2.7.0
+ *
+ * @param string|WP_Screen $screen
+ */
+function meta_box_prefs( $screen ) {
+       global $wp_meta_boxes;
+
+       if ( is_string( $screen ) )
+               $screen = convert_to_screen( $screen );
+
+       if ( empty($wp_meta_boxes[$screen->id]) )
+               return;
+
+       $hidden = get_hidden_meta_boxes($screen);
+
+       foreach ( array_keys($wp_meta_boxes[$screen->id]) as $context ) {
+               foreach ( array_keys($wp_meta_boxes[$screen->id][$context]) as $priority ) {
+                       foreach ( $wp_meta_boxes[$screen->id][$context][$priority] as $box ) {
+                               if ( false == $box || ! $box['title'] )
+                                       continue;
+                               // Submit box cannot be hidden
+                               if ( 'submitdiv' == $box['id'] || 'linksubmitdiv' == $box['id'] )
+                                       continue;
+                               $box_id = $box['id'];
+                               echo '<label for="' . $box_id . '-hide">';
+                               echo '<input class="hide-postbox-tog" name="' . $box_id . '-hide" type="checkbox" id="' . $box_id . '-hide" value="' . $box_id . '"' . (! in_array($box_id, $hidden) ? ' checked="checked"' : '') . ' />';
+                               echo "{$box['title']}</label>\n";
+                       }
+               }
+       }
+}
+
+/**
+ * Get Hidden Meta Boxes
+ *
+ * @since 2.7.0
+ *
+ * @param string|WP_Screen $screen Screen identifier
+ * @return array Hidden Meta Boxes
+ */
+function get_hidden_meta_boxes( $screen ) {
+       if ( is_string( $screen ) )
+               $screen = convert_to_screen( $screen );
+
+       $hidden = get_user_option( "metaboxhidden_{$screen->id}" );
+
+       $use_defaults = ! is_array( $hidden );
+
+       // Hide slug boxes by default
+       if ( $use_defaults ) {
+               $hidden = array();
+               if ( 'post' == $screen->base ) {
+                       if ( 'post' == $screen->post_type || 'page' == $screen->post_type )
+                               $hidden = array('slugdiv', 'trackbacksdiv', 'postcustom', 'postexcerpt', 'commentstatusdiv', 'commentsdiv', 'authordiv', 'revisionsdiv');
+                       else
+                               $hidden = array( 'slugdiv' );
+               }
+               $hidden = apply_filters( 'default_hidden_meta_boxes', $hidden, $screen );
+       }
+
+       return apply_filters( 'hidden_meta_boxes', $hidden, $screen, $use_defaults );
+}
+
+/**
+ * Register and configure an admin screen option
+ *
+ * @since 3.1.0
+ *
+ * @param string $option An option name.
+ * @param mixed $args Option-dependent arguments.
+ * @return void
+ */
+function add_screen_option( $option, $args = array() ) {
+       $current_screen = get_current_screen();
+
+       if ( ! $current_screen )
+               return;
+
+       $current_screen->add_option( $option, $args );
+}
+
+/**
+ * Displays a screen icon.
+ *
+ * @uses get_screen_icon()
+ * @since 2.7.0
+ *
+ * @param string|WP_Screen $screen Optional. Accepts a screen object (and defaults to the current screen object)
+ *     which it uses to determine an icon HTML ID. Or, if a string is provided, it is used to form the icon HTML ID.
+ */
+function screen_icon( $screen = '' ) {
+       echo get_screen_icon( $screen );
+}
+
+/**
+ * Gets a screen icon.
+ *
+ * @since 3.2.0
+ *
+ * @param string|WP_Screen $screen Optional. Accepts a screen object (and defaults to the current screen object)
+ *     which it uses to determine an icon HTML ID. Or, if a string is provided, it is used to form the icon HTML ID.
+ * @return string HTML for the screen icon.
+ */
+function get_screen_icon( $screen = '' ) {
+       if ( empty( $screen ) )
+               $screen = get_current_screen();
+       elseif ( is_string( $screen ) )
+               $icon_id = $screen;
+
+       $class = 'icon32';
+
+       if ( empty( $icon_id ) ) {
+               if ( ! empty( $screen->parent_base ) )
+                       $icon_id = $screen->parent_base;
+               else
+                       $icon_id = $screen->base;
+
+               if ( 'page' == $screen->post_type )
+                       $icon_id = 'edit-pages';
+
+               if ( $screen->post_type )
+                       $class .= ' ' . sanitize_html_class( 'icon32-posts-' . $screen->post_type );
+       }
+
+       return '<div id="icon-' . esc_attr( $icon_id ) . '" class="' . $class . '"><br /></div>';
+}
+
+/**
+ * Get the current screen object
+ *
+ * @since 3.1.0
+ *
+ * @return object Current screen object
+ */
+function get_current_screen() {
+       global $current_screen;
+
+       if ( ! isset( $current_screen ) )
+               return null;
+
+       return $current_screen;
+}
+
+/**
+ * Set the current screen object
+ *
+ * @since 3.0.0
+ * @uses $current_screen
+ *
+ * @param mixed $hook_name Optional. The hook name (also known as the hook suffix) used to determine the screen,
+ *     or an existing screen object.
+ */
+function set_current_screen( $hook_name =  '' ) {
+       WP_Screen::get( $hook_name )->set_current_screen();
+}
+
+/**
+ * A class representing the admin screen.
+ *
+ * @since 3.3.0
+ * @access public
+ */
+final class WP_Screen {
+       /**
+        * Any action associated with the screen. 'add' for *-add.php and *-new.php screens.  Empty otherwise.
+        *
+        * @since 3.3.0
+        * @var string
+        * @access public
+        */
+       public $action;
+
+       /**
+        * The base type of the screen.  This is typically the same as $id but with any post types and taxonomies stripped.
+        * For example, for an $id of 'edit-post' the base is 'edit'.
+        *
+        * @since 3.3.0
+        * @var string
+        * @access public
+        */
+       public $base;
+
+       /**
+        * The unique ID of the screen.
+        *
+        * @since 3.3.0
+        * @var string
+        * @access public
+        */
+       public $id;
+
+       /**
+        * Whether the screen is in the network admin.
+        *
+        * @since 3.3.0
+        * @var bool
+        * @access public
+        */
+       public $is_network;
+
+       /**
+        * Whether the screen is in the user admin.
+        *
+        * @since 3.3.0
+        * @var bool
+        * @access public
+        */
+       public $is_user;
+
+       /**
+        * The base menu parent.
+        * This is derived from $parent_file by removing the query string and any .php extension.
+        * $parent_file values of 'edit.php?post_type=page' and 'edit.php?post_type=post' have a $parent_base of 'edit'.
+        *
+        * @since 3.3.0
+        * @var string
+        * @access public
+        */
+       public $parent_base;
+
+       /**
+        * The parent_file for the screen per the admin menu system.
+        * Some $parent_file values are 'edit.php?post_type=page', 'edit.php', and 'options-general.php'.
+        *
+        * @since 3.3.0
+        * @var string
+        * @access public
+        */
+       public $parent_file;
+
+       /**
+        * The post type associated with the screen, if any.
+        * The 'edit.php?post_type=page' screen has a post type of 'page'.
+        * The 'edit-tags.php?taxonomy=$taxonomy&post_type=page' screen has a post type of 'page'.
+        *
+        * @since 3.3.0
+        * @var string
+        * @access public
+        */
+       public $post_type;
+
+       /**
+        * The taxonomy associated with the screen, if any.
+        * The 'edit-tags.php?taxonomy=category' screen has a taxonomy of 'category'.
+        * @since 3.3.0
+        * @var string
+        * @access public
+        */
+       public $taxonomy;
+
+       /**
+        * The help tab data associated with the screen, if any.
+        *
+        * @since 3.3.0
+        * @var array
+        * @access private
+        */
+       private $_help_tabs = array();
+
+       /**
+        * The help sidebar data associated with screen, if any.
+        *
+        * @since 3.3.0
+        * @var string
+        * @access private
+        */
+       private $_help_sidebar = '';
+
+       /**
+        * Stores old string-based help.
+        */
+       private static $_old_compat_help = array();
+
+       /**
+        * The screen options associated with screen, if any.
+        *
+        * @since 3.3.0
+        * @var array
+        * @access private
+        */
+       private $_options = array();
+
+       /**
+        * The screen object registry.
+        *
+        * @since 3.3.0
+        * @var array
+        * @access private
+        */
+       private static $_registry = array();
+
+       /**
+        * Stores the result of the public show_screen_options function.
+        *
+        * @since 3.3.0
+        * @var bool
+        * @access private
+        */
+       private $_show_screen_options;
+
+       /**
+        * Stores the 'screen_settings' section of screen options.
+        *
+        * @since 3.3.0
+        * @var string
+        * @access private
+        */
+       private $_screen_settings;
+
+       /**
+        * Fetches a screen object.
+        *
+        * @since 3.3.0
+        * @access public
+        *
+        * @param string $hook_name Optional. The hook name (also known as the hook suffix) used to determine the screen.
+        *      Defaults to the current $hook_suffix global.
+        * @return WP_Screen Screen object.
+        */
+       public static function get( $hook_name = '' ) {
+
+               if ( is_a( $hook_name, 'WP_Screen' ) )
+                       return $hook_name;
+
+               $post_type = $taxonomy = null;
+               $is_network = $is_user = false;
+               $action = '';
+
+               if ( $hook_name )
+                       $id = $hook_name;
+               else
+                       $id = $GLOBALS['hook_suffix'];
+
+               // For those pesky meta boxes.
+               if ( $hook_name && post_type_exists( $hook_name ) ) {
+                       $post_type = $id;
+                       $id = 'post'; // changes later. ends up being $base.
+               } else {
+                       if ( '.php' == substr( $id, -4 ) )
+                               $id = substr( $id, 0, -4 );
+
+                       if ( 'post-new' == $id || 'link-add' == $id || 'media-new' == $id || 'user-new' == $id ) {
+                               $id = substr( $id, 0, -4 );
+                               $action = 'add';
+                       }
+               }
+
+               if ( ! $post_type && $hook_name ) {
+                       if ( '-network' == substr( $id, -8 ) ) {
+                               $id = substr( $id, 0, -8 );
+                               $is_network = true;
+                       } elseif ( '-user' == substr( $id, -5 ) ) {
+                               $id = substr( $id, 0, -5 );
+                               $is_user = true;
+                       }
+
+                       $id = sanitize_key( $id );
+                       if ( 'edit-comments' != $id && 'edit-tags' != $id && 'edit-' == substr( $id, 0, 5 ) ) {
+                               $maybe = substr( $id, 5 );
+                               if ( taxonomy_exists( $maybe ) ) {
+                                       $id = 'edit-tags';
+                                       $taxonomy = $maybe;
+                               } elseif ( post_type_exists( $maybe ) ) {
+                                       $id = 'edit';
+                                       $post_type = $maybe;
+                               }
+                       }
+               } else {
+                       $is_network = is_network_admin();
+                       $is_user = is_user_admin();
+               }
+
+               if ( 'index' == $id )
+                       $id = 'dashboard';
+
+               $base = $id;
+
+               // If this is the current screen, see if we can be more accurate for post types and taxonomies.
+               if ( ! $hook_name ) {
+                       if ( isset( $_REQUEST['post_type'] ) )
+                               $post_type = post_type_exists( $_REQUEST['post_type'] ) ? $_REQUEST['post_type'] : false;
+                       if ( isset( $_REQUEST['taxonomy'] ) )
+                               $taxonomy = taxonomy_exists( $_REQUEST['taxonomy'] ) ? $_REQUEST['taxonomy'] : false;
+
+                       switch ( $base ) {
+                               case 'post' :
+                                       if ( isset( $_GET['post'] ) )
+                                               $post_id = (int) $_GET['post'];
+                                       elseif ( isset( $_POST['post_ID'] ) )
+                                               $post_id = (int) $_POST['post_ID'];
+                                       else
+                                               $post_id = 0;
+
+                                       if ( $post_id ) {
+                                               $post = get_post( $post_id );
+                                               if ( $post )
+                                                       $post_type = $post->post_type;
+                                       }
+                                       break;
+                               case 'edit-tags' :
+                                       if ( null === $post_type && is_object_in_taxonomy( 'post', $taxonomy ? $taxonomy : 'post_tag' ) )
+                                               $post_type = 'post';
+                                       break;
+                       }
+               }
+
+               switch ( $base ) {
+                       case 'post' :
+                               if ( null === $post_type )
+                                       $post_type = 'post';
+                               $id = $post_type;
+                               break;
+                       case 'edit' :
+                               if ( null === $post_type )
+                                       $post_type = 'post';
+                               $id .= '-' . $post_type;
+                               break;
+                       case 'edit-tags' :
+                               if ( null === $taxonomy )
+                                       $taxonomy = 'post_tag';
+                               $id = 'edit-' . $taxonomy;
+                               break;
+               }
+
+               if ( $is_network ) {
+                       $id   .= '-network';
+                       $base .= '-network';
+               } elseif ( $is_user ) {
+                       $id   .= '-user';
+                       $base .= '-user';
+               }
+
+               if ( isset( self::$_registry[ $id ] ) ) {
+                       $screen = self::$_registry[ $id ];
+                       if ( $screen === get_current_screen() )
+                               return $screen;
+               } else {
+                       $screen = new WP_Screen();
+                       $screen->id     = $id;
+               }
+
+               $screen->base       = $base;
+               $screen->action     = $action;
+               $screen->post_type  = (string) $post_type;
+               $screen->taxonomy   = (string) $taxonomy;
+               $screen->is_user    = $is_user;
+               $screen->is_network = $is_network;
+
+               self::$_registry[ $id ] = $screen;
+
+               return $screen;
+       }
+
+       /**
+        * Makes the screen object the current screen.
+        *
+        * @see set_current_screen()
+        * @since 3.3.0
+        */
+       function set_current_screen() {
+               global $current_screen, $taxnow, $typenow;
+               $current_screen = $this;
+               $taxnow = $this->taxonomy;
+               $typenow = $this->post_type;
+               do_action( 'current_screen', $current_screen );
+       }
+
+       /**
+        * Constructor
+        *
+        * @since 3.3.0
+        * @access private
+        */
+       private function __construct() {}
+
+       /**
+        * Sets the old string-based contextual help for the screen.
+        *
+        * For backwards compatibility.
+        *
+        * @since 3.3.0
+        *
+        * @param WP_Screen $screen A screen object.
+        * @param string $help Help text.
+        */
+       static function add_old_compat_help( $screen, $help ) {
+               self::$_old_compat_help[ $screen->id ] = $help;
+       }
+
+       /**
+        * Set the parent information for the screen.
+        * This is called in admin-header.php after the menu parent for the screen has been determined.
+        *
+        * @since 3.3.0
+        *
+        * @param string $parent_file The parent file of the screen.  Typically the $parent_file global.
+        */
+       function set_parentage( $parent_file ) {
+               $this->parent_file = $parent_file;
+               list( $this->parent_base ) = explode( '?', $parent_file );
+               $this->parent_base = str_replace( '.php', '', $this->parent_base );
+       }
+
+       /**
+        * Adds an option for the screen.
+        * Call this in template files after admin.php is loaded and before admin-header.php is loaded to add screen options.
+        *
+        * @since 3.3.0
+        *
+        * @param string $option Option ID
+        * @param mixed $args Option-dependent arguments.
+        */
+       public function add_option( $option, $args = array() ) {
+               $this->_options[ $option ] = $args;
+       }
+
+       /**
+        * Gets the arguments for an option for the screen.
+        *
+        * @since 3.3.0
+        *
+        * @param string
+        */
+       public function get_option( $option, $key = false ) {
+               if ( ! isset( $this->_options[ $option ] ) )
+                       return null;
+               if ( $key ) {
+                       if ( isset( $this->_options[ $option ][ $key ] ) )
+                               return $this->_options[ $option ][ $key ];
+                       return null;
+               }
+               return $this->_options[ $option ];
+       }
+
+       /**
+        * Add a help tab to the contextual help for the screen.
+        * Call this on the load-$pagenow hook for the relevant screen.
+        *
+        * @since 3.3.0
+        *
+        * @param array $args
+        * - string   - title    - Title for the tab.
+        * - string   - id       - Tab ID. Must be HTML-safe.
+        * - string   - content  - Help tab content in plain text or HTML. Optional.
+        * - callback - callback - A callback to generate the tab content. Optional.
+        *
+        */
+       public function add_help_tab( $args ) {
+               $defaults = array(
+                       'title'    => false,
+                       'id'       => false,
+                       'content'  => '',
+                       'callback' => false,
+               );
+               $args = wp_parse_args( $args, $defaults );
+
+               $args['id'] = sanitize_html_class( $args['id'] );
+
+               // Ensure we have an ID and title.
+               if ( ! $args['id'] || ! $args['title'] )
+                       return;
+
+               $this->_help_tabs[] = $args;
+       }
+
+       /**
+        * Removes a help tab from the contextual help for the screen.
+        *
+        * @since 3.3.0
+        *
+        * @param string $id The help tab ID.
+        */
+       public function remove_help_tab( $id ) {
+               unset( $this->_help_tabs[ $id ] );
+       }
+
+       /**
+        * Removes all help tabs from the contextual help for the screen.
+        *
+        * @since 3.3.0
+        */
+       public function remove_help_tabs() {
+               $this->_help_tabs = array();
+       }
+
+       /**
+        * Add a sidebar to the contextual help for the screen.
+        * Call this in template files after admin.php is loaded and before admin-header.php is loaded to add a sidebar to the contextual help.
+        *
+        * @since 3.3.0
+        *
+        * @param string $content Sidebar content in plain text or HTML.
+        */
+       public function set_help_sidebar( $content ) {
+               $this->_help_sidebar = $content;
+       }
+
+       /**
+        * Render the screen's help section.
+        *
+        * This will trigger the deprecated filters for backwards compatibility.
+        *
+        * @since 3.3.0
+        */
+       public function render_screen_meta() {
+
+               // Call old contextual_help_list filter.
+               self::$_old_compat_help = apply_filters( 'contextual_help_list', self::$_old_compat_help, $this );
+
+               $old_help = isset( self::$_old_compat_help[ $this->id ] ) ? self::$_old_compat_help[ $this->id ] : '';
+               $old_help = apply_filters( 'contextual_help', $old_help, $this->id, $this );
+
+               // Default help only if there is no old-style block of text and no new-style help tabs.
+               if ( empty( $old_help ) && empty( $this->_help_tabs ) ) {
+                       $default_help = apply_filters( 'default_contextual_help', '' );
+                       if ( $default_help )
+                               $old_help = '<p>' . $default_help . '</p>';
+               }
+
+               if ( $old_help ) {
+                       $this->add_help_tab( array(
+                               'id'      => 'old-contextual-help',
+                               'title'   => __('Overview'),
+                               'content' => $old_help,
+                       ) );
+               }
+
+               $has_sidebar = ! empty( $this->_help_sidebar );
+
+               $help_class = 'hidden';
+               if ( ! $has_sidebar )
+                       $help_class .= ' no-sidebar';
+
+               // Time to render!
+               ?>
+               <div id="screen-meta" class="metabox-prefs">
+
+                       <div id="contextual-help-wrap" class="<?php echo esc_attr( $help_class ); ?>">
+                               <div id="contextual-help-back"></div>
+                               <div id="contextual-help-columns">
+                                       <div class="contextual-help-tabs">
+                                               <ul>
+                                               <?php foreach ( $this->_help_tabs as $i => $tab ):
+                                                       $link_id  = "tab-link-{$tab['id']}";
+                                                       $panel_id = "tab-panel-{$tab['id']}";
+                                                       $classes  = ( $i == 0 ) ? 'active' : '';
+                                                       ?>
+
+                                                       <li id="<?php echo esc_attr( $link_id ); ?>" class="<?php echo esc_attr( $classes ); ?>">
+                                                               <a href="<?php echo esc_url( "#$panel_id" ); ?>">
+                                                                       <?php echo esc_html( $tab['title'] ); ?>
+                                                               </a>
+                                                       </li>
+                                               <?php endforeach; ?>
+                                               </ul>
+                                       </div>
+
+                                       <?php if ( $has_sidebar ) : ?>
+                                       <div class="contextual-help-sidebar">
+                                               <?php echo self::$this->_help_sidebar; ?>
+                                       </div>
+                                       <?php endif; ?>
+
+                                       <div class="contextual-help-tabs-wrap">
+                                               <?php foreach ( $this->_help_tabs as $i => $tab ):
+                                                       $panel_id = "tab-panel-{$tab['id']}";
+                                                       $classes  = ( $i == 0 ) ? 'active' : '';
+                                                       $classes .= ' help-tab-content';
+                                                       ?>
+
+                                                       <div id="<?php echo esc_attr( $panel_id ); ?>" class="<?php echo esc_attr( $classes ); ?>">
+                                                               <?php
+                                                               // Print tab content.
+                                                               echo $tab['content'];
+
+                                                               // If it exists, fire tab callback.
+                                                               if ( ! empty( $tab['callback'] ) )
+                                                                       call_user_func_array( $tab['callback'], array( $this, $tab ) );
+                                                               ?>
+                                                       </div>
+                                               <?php endforeach; ?>
+                                       </div>
+                               </div>
+                       </div>
+               <?php
+               // Add screen options
+               if ( $this->show_screen_options() )
+                       $this->render_screen_options();
+               ?>
+               </div>
+               <?php
+               if ( ! $this->_help_tabs && ! $this->show_screen_options() )
+                       return;
+               ?>
+               <div id="screen-meta-links">
+               <?php if ( $this->_help_tabs ) : ?>
+                       <div id="contextual-help-link-wrap" class="hide-if-no-js screen-meta-toggle">
+                       <a href="#contextual-help-wrap" id="contextual-help-link" class="show-settings"><?php _e( 'Help' ); ?></a>
+                       </div>
+               <?php endif;
+               if ( $this->show_screen_options() ) : ?>
+                       <div id="screen-options-link-wrap" class="hide-if-no-js screen-meta-toggle">
+                       <a href="#screen-options-wrap" id="show-settings-link" class="show-settings"><?php _e( 'Screen Options' ); ?></a>
+                       </div>
+               <?php endif; ?>
+               </div>
+               <?php
+       }
+
+       public function show_screen_options() {
+               global $wp_meta_boxes;
+
+               if ( is_bool( $this->_show_screen_options ) )
+                       return $this->_show_screen_options;
+
+               $columns = get_column_headers( $this );
+
+               $show_screen = ! empty( $wp_meta_boxes[ $this->id ] ) || $columns || $this->get_option( 'per_page' );
+
+               $this->_screen_settings = apply_filters( 'screen_settings', '', $this );
+
+               switch ( $this->id ) {
+                       case 'widgets':
+                               $this->_screen_settings = '<p><a id="access-on" href="widgets.php?widgets-access=on">' . __('Enable accessibility mode') . '</a><a id="access-off" href="widgets.php?widgets-access=off">' . __('Disable accessibility mode') . "</a></p>\n";
+                               break;
+               }
+
+               if ( $this->_screen_settings || $this->_options )
+                       $show_screen = true;
+
+               $this->_show_screen_options = apply_filters( 'screen_options_show_screen', $show_screen, $this );
+               return $this->_show_screen_options;
+       }
+
+       /**
+        * Render the screen options tab.
+        *
+        * @since 3.3.0
+        */
+       public function render_screen_options() {
+               global $wp_meta_boxes, $wp_list_table;
+
+               $columns = get_column_headers( $this );
+               $hidden  = get_hidden_columns( $this );
+
+               ?>
+               <div id="screen-options-wrap" class="hidden">
+               <form id="adv-settings" action="" method="post">
+               <?php
+               if ( isset( $wp_meta_boxes[ $this->id ] ) ) : ?>
+                       <h5><?php _ex('Show on screen', 'Metaboxes') ?></h5>
+                       <div class="metabox-prefs">
+                               <?php
+                                       meta_box_prefs( $this );
+
+                                       if ( 'dashboard' === $this->id && current_user_can( 'edit_theme_options' ) ) {
+                                               if ( isset( $_GET['welcome'] ) ) {
+                                                       $welcome_checked = empty( $_GET['welcome'] ) ? 0 : 1;
+                                                       update_user_meta( get_current_user_id(), 'show_welcome_panel', $welcome_checked );
+                                               } else {
+                                                       $welcome_checked = get_user_meta( get_current_user_id(), 'show_welcome_panel', true );
+                                                       if ( 2 == $welcome_checked && wp_get_current_user()->user_email != get_option( 'admin_email' ) )
+                                                               $welcome_checked = false;
+                                               }
+                                               echo '<label for="wp_welcome_panel-hide">';
+                                               echo '<input type="checkbox" id="wp_welcome_panel-hide"' . checked( (bool) $welcome_checked, true, false )  . ' />';
+                                               echo __( 'Welcome' ) . "</label>\n";
+                                       }
+                               ?>
+                               <br class="clear" />
+                       </div>
+                       <?php endif;
+                       if ( ! empty( $columns ) ) : ?>
+                       <h5><?php echo ( isset( $columns['_title'] ) ?  $columns['_title'] :  _x('Show on screen', 'Columns') ) ?></h5>
+                       <div class="metabox-prefs">
+                               <?php
+                               $special = array('_title', 'cb', 'comment', 'media', 'name', 'title', 'username', 'blogname');
+
+                               foreach ( $columns as $column => $title ) {
+                                       // Can't hide these for they are special
+                                       if ( in_array( $column, $special ) )
+                                               continue;
+                                       if ( empty( $title ) )
+                                               continue;
+
+                                       if ( 'comments' == $column )
+                                               $title = __( 'Comments' );
+                                       $id = "$column-hide";
+                                       echo '<label for="' . $id . '">';
+                                       echo '<input class="hide-column-tog" name="' . $id . '" type="checkbox" id="' . $id . '" value="' . $column . '"' . checked( !in_array($column, $hidden), true, false ) . ' />';
+                                       echo "$title</label>\n";
+                               }
+                               ?>
+                               <br class="clear" />
+                       </div>
+               <?php endif;
+
+               $this->render_screen_layout();
+               $this->render_per_page_options();
+               echo $this->_screen_settings;
+
+               ?>
+               <div><?php wp_nonce_field( 'screen-options-nonce', 'screenoptionnonce', false ); ?></div>
+               </form>
+               </div>
+               <?php
+       }
+
+       /**
+        * Render the option for number of columns on the page
+        *
+        * @since 3.3.0
+        */
+       function render_screen_layout() {
+               global $screen_layout_columns;
+
+               // Back compat for plugins using the filter instead of add_screen_option()
+               $columns = apply_filters( 'screen_layout_columns', array(), $this->id, $this );
+
+               if ( ! empty( $columns ) && isset( $columns[ $this->id ] ) )
+                       $this->add_option( 'layout_columns', array('max' => $columns[ $this->id ] ) );
+
+               if ( ! $this->get_option('layout_columns') ) {
+                       $screen_layout_columns = 0;
+                       return;
+               }
+
+               $screen_layout_columns = get_user_option("screen_layout_$this->id");
+               $num = $this->get_option( 'layout_columns', 'max' );
+
+               if ( ! $screen_layout_columns || 'auto' == $screen_layout_columns ) {
+                       if ( $this->get_option( 'layout_columns', 'default' ) )
+                               $screen_layout_columns = $this->get_option( 'layout_columns', 'default' );
+               }
+
+               ?>
+               <h5><?php _e('Screen Layout'); ?></h5>
+               <div class='columns-prefs'><?php
+                       _e('Number of Columns:');
+                       for ( $i = 1; $i <= $num; ++$i ):
+                               ?>
+                               <label>
+                                       <input type='radio' name='screen_columns' value='<?php echo esc_attr( $i ); ?>'
+                                               <?php checked( $screen_layout_columns, $i ); ?> />
+                                       <?php echo esc_html( $i ); ?>
+                               </label>
+                               <?php
+                       endfor; ?>
+               </div>
+               <?php
+       }
+
+       /**
+        * Render the items per page option
+        *
+        * @since 3.3.0
+        */
+       function render_per_page_options() {
+               if ( ! $this->get_option( 'per_page' ) )
+                       return;
+
+               $per_page_label = $this->get_option( 'per_page', 'label' );
+
+               $option = $this->get_option( 'per_page', 'option' );
+               if ( ! $option )
+                       $option = str_replace( '-', '_', "{$this->id}_per_page" );
+
+               $per_page = (int) get_user_option( $option );
+               if ( empty( $per_page ) || $per_page < 1 ) {
+                       $per_page = $this->get_option( 'per_page', 'default' );
+                       if ( ! $per_page )
+                               $per_page = 20;
+               }
+
+               if ( 'edit_comments_per_page' == $option ) {
+                       $comment_status = isset( $_REQUEST['comment_status'] ) ? $_REQUEST['comment_status'] : 'all';
+                       $per_page = apply_filters( 'comments_per_page', $per_page, $comment_status );
+               } elseif ( 'categories_per_page' == $option ) {
+                       $per_page = apply_filters( 'edit_categories_per_page', $per_page );
+               } else {
+                       $per_page = apply_filters( $option, $per_page );
+               }
+
+               // Back compat
+               if ( isset( $this->post_type ) )
+                       $per_page = apply_filters( 'edit_posts_per_page', $per_page, $this->post_type );
+
+               ?>
+               <h5><?php _ex('Show on screen', 'Screen Options') ?></h5>
+               <div class='screen-options'>
+                       <?php if ( !empty($per_page_label) ): ?>
+                               <input type='text' class='screen-per-page' name='wp_screen_options[value]'
+                                       id='<?php echo esc_attr( $option ); ?>' maxlength='3'
+                                       value='<?php echo esc_attr( $per_page ); ?>' />
+                               <label for='<?php echo esc_attr( $option ); ?>'>
+                                       <?php echo esc_html( $per_page_label ); ?>
+                               </label>
+                       <?php endif;
+
+                       echo get_submit_button( __( 'Apply' ), 'button', 'screen-options-apply', false ); ?>
+                       <input type='hidden' name='wp_screen_options[option]' value='<?php echo esc_attr($option); ?>' />
+               </div>
+               <?php
+       }
+}
index a488baf84dadc5c04f6e9cfe30d4c04be2f35470..010c057d16caaee5d2953ec8c159ee39a2a6ed8f 100644 (file)
@@ -221,42 +221,6 @@ function wp_link_category_checklist( $link_id = 0 ) {
        }
 }
 
        }
 }
 
-/**
- * Get the column headers for a screen
- *
- * @since 2.7.0
- *
- * @param string|object $screen The screen you want the headers for
- * @return array Containing the headers in the format id => UI String
- */
-function get_column_headers( $screen ) {
-       if ( is_string( $screen ) )
-               $screen = convert_to_screen( $screen );
-
-       global $_wp_column_headers;
-
-       if ( !isset( $_wp_column_headers[ $screen->id ] ) ) {
-               $_wp_column_headers[ $screen->id ] = apply_filters( 'manage_' . $screen->id . '_columns', array() );
-       }
-
-       return $_wp_column_headers[ $screen->id ];
-}
-
-/**
- * Get a list of hidden columns.
- *
- * @since 2.7.0
- *
- * @param string|object $screen The screen you want the hidden columns for
- * @return array
- */
-function get_hidden_columns( $screen ) {
-       if ( is_string( $screen ) )
-               $screen = convert_to_screen( $screen );
-
-       return (array) get_user_option( 'manage' . $screen->id . 'columnshidden' );
-}
-
 // adds hidden fields with the data for use in the inline editor for posts and pages
 /**
  * {@internal Missing Short Description}}
 // adds hidden fields with the data for use in the inline editor for posts and pages
 /**
  * {@internal Missing Short Description}}
@@ -310,6 +274,9 @@ function get_inline_data($post) {
        if ( !$post_type_object->hierarchical )
                echo '<div class="sticky">' . (is_sticky($post->ID) ? 'sticky' : '') . '</div>';
 
        if ( !$post_type_object->hierarchical )
                echo '<div class="sticky">' . (is_sticky($post->ID) ? 'sticky' : '') . '</div>';
 
+       if ( post_type_supports( $post->post_type, 'post-formats' ) )
+               echo '<div class="post_format">' . esc_html( get_post_format( $post->ID ) ) . '</div>';
+
        echo '</div>';
 }
 
        echo '</div>';
 }
 
@@ -344,7 +311,7 @@ function wp_comment_reply($position = '1', $checkbox = false, $mode = 'single',
 <?php else : ?>
 <div id="com-reply" style="display:none;"><div id="replyrow" style="display:none;">
 <?php endif; ?>
 <?php else : ?>
 <div id="com-reply" style="display:none;"><div id="replyrow" style="display:none;">
 <?php endif; ?>
-       <div id="replyhead" style="display:none;"><?php _e('Reply to Comment'); ?></div>
+       <div id="replyhead" style="display:none;"><h5><?php _e( 'Reply to Comment' ); ?></h5></div>
 
        <div id="edithead" style="display:none;">
                <div class="inside">
 
        <div id="edithead" style="display:none;">
                <div class="inside">
@@ -364,7 +331,12 @@ function wp_comment_reply($position = '1', $checkbox = false, $mode = 'single',
                <div style="clear:both;"></div>
        </div>
 
                <div style="clear:both;"></div>
        </div>
 
-       <div id="replycontainer"><textarea rows="8" cols="40" name="replycontent" tabindex="104" id="replycontent"></textarea></div>
+       <div id="replycontainer">
+       <?php
+       $quicktags_settings = array( 'buttons' => 'strong,em,link,block,del,ins,img,ul,ol,li,code,spell,close' );
+       wp_editor( '', 'replycontent', array( 'media_buttons' => false, 'tinymce' => false, 'quicktags' => $quicktags_settings ) );
+       ?>
+       </div>
 
        <p id="replysubmit" class="submit">
        <a href="#comments-form" class="cancel button-secondary alignleft" tabindex="106"><?php _e('Cancel'); ?></a>
 
        <p id="replysubmit" class="submit">
        <a href="#comments-form" class="cancel button-secondary alignleft" tabindex="106"><?php _e('Cancel'); ?></a>
@@ -384,8 +356,11 @@ function wp_comment_reply($position = '1', $checkbox = false, $mode = 'single',
        <input type="hidden" name="position" id="position" value="<?php echo $position; ?>" />
        <input type="hidden" name="checkbox" id="checkbox" value="<?php echo $checkbox ? 1 : 0; ?>" />
        <input type="hidden" name="mode" id="mode" value="<?php echo esc_attr($mode); ?>" />
        <input type="hidden" name="position" id="position" value="<?php echo $position; ?>" />
        <input type="hidden" name="checkbox" id="checkbox" value="<?php echo $checkbox ? 1 : 0; ?>" />
        <input type="hidden" name="mode" id="mode" value="<?php echo esc_attr($mode); ?>" />
-       <?php wp_nonce_field( 'replyto-comment', '_ajax_nonce-replyto-comment', false ); ?>
-       <?php wp_comment_form_unfiltered_html_nonce(); ?>
+       <?php
+               wp_nonce_field( 'replyto-comment', '_ajax_nonce-replyto-comment', false );
+               if ( current_user_can( 'unfiltered_html' ) )
+                       wp_nonce_field( 'unfiltered-html-comment', '_wp_unfiltered_html_comment', false );
+       ?>
 <?php if ( $table_row ) : ?>
 </td></tr></tbody></table>
 <?php else : ?>
 <?php if ( $table_row ) : ?>
 </td></tr></tbody></table>
 <?php else : ?>
@@ -466,7 +441,7 @@ function list_meta( $meta ) {
 function _list_meta_row( $entry, &$count ) {
        static $update_nonce = false;
 
 function _list_meta_row( $entry, &$count ) {
        static $update_nonce = false;
 
-       if ( is_protected_meta( $entry['meta_key'] ) )
+       if ( is_protected_meta( $entry['meta_key'], 'post' ) )
                return;
 
        if ( !$update_nonce )
                return;
 
        if ( !$update_nonce )
@@ -478,8 +453,6 @@ function _list_meta_row( $entry, &$count ) {
                $style = 'alternate';
        else
                $style = '';
                $style = 'alternate';
        else
                $style = '';
-       if ('_' == $entry['meta_key'] { 0 } )
-               $style .= ' hidden';
 
        if ( is_serialized( $entry['meta_value'] ) ) {
                if ( is_serialized_string( $entry['meta_value'] ) ) {
 
        if ( is_serialized( $entry['meta_value'] ) ) {
                if ( is_serialized_string( $entry['meta_value'] ) ) {
@@ -613,10 +586,11 @@ function touch_time( $edit = 1, $for_post = 1, $tab_index = 0, $multi = 0 ) {
 
        $month = "<select " . ( $multi ? '' : 'id="mm" ' ) . "name=\"mm\"$tab_index_attribute>\n";
        for ( $i = 1; $i < 13; $i = $i +1 ) {
 
        $month = "<select " . ( $multi ? '' : 'id="mm" ' ) . "name=\"mm\"$tab_index_attribute>\n";
        for ( $i = 1; $i < 13; $i = $i +1 ) {
-               $month .= "\t\t\t" . '<option value="' . zeroise($i, 2) . '"';
+               $monthnum = zeroise($i, 2);
+               $month .= "\t\t\t" . '<option value="' . $monthnum . '"';
                if ( $i == $mm )
                        $month .= ' selected="selected"';
                if ( $i == $mm )
                        $month .= ' selected="selected"';
-               $month .= '>' . $wp_locale->get_month_abbrev( $wp_locale->get_month( $i ) ) . "</option>\n";
+               $month .= '>' . $monthnum . '-' . $wp_locale->get_month_abbrev( $wp_locale->get_month( $i ) ) . "</option>\n";
        }
        $month .= '</select>';
 
        }
        $month .= '</select>';
 
@@ -865,13 +839,20 @@ function wp_import_upload_form( $action ) {
  * @param string $id String for use in the 'id' attribute of tags.
  * @param string $title Title of the meta box.
  * @param string $callback Function that fills the box with the desired content. The function should echo its output.
  * @param string $id String for use in the 'id' attribute of tags.
  * @param string $title Title of the meta box.
  * @param string $callback Function that fills the box with the desired content. The function should echo its output.
- * @param string $page The type of edit page on which to show the box (post, page, link).
- * @param string $context The context within the page where the boxes should show ('normal', 'advanced').
- * @param string $priority The priority within the context where the boxes should show ('high', 'low').
+ * @param string|object $screen Optional. The screen on which to show the box (post, page, link). Defaults to current screen.
+ * @param string $context Optional. The context within the page where the boxes should show ('normal', 'advanced').
+ * @param string $priority Optional. The priority within the context where the boxes should show ('high', 'low').
  */
  */
-function add_meta_box($id, $title, $callback, $page, $context = 'advanced', $priority = 'default', $callback_args=null) {
+function add_meta_box( $id, $title, $callback, $screen = null, $context = 'advanced', $priority = 'default', $callback_args = null ) {
        global $wp_meta_boxes;
 
        global $wp_meta_boxes;
 
+       if ( empty( $screen ) )
+               $screen = get_current_screen();
+       elseif ( is_string( $screen ) )
+               $screen = convert_to_screen( $screen );
+
+       $page = $screen->id;
+
        if ( !isset($wp_meta_boxes) )
                $wp_meta_boxes = array();
        if ( !isset($wp_meta_boxes[$page]) )
        if ( !isset($wp_meta_boxes) )
                $wp_meta_boxes = array();
        if ( !isset($wp_meta_boxes[$page]) )
@@ -899,7 +880,7 @@ function add_meta_box($id, $title, $callback, $page, $context = 'advanced', $pri
                        // If no priority given and id already present, use existing priority
                        if ( empty($priority) ) {
                                $priority = $a_priority;
                        // If no priority given and id already present, use existing priority
                        if ( empty($priority) ) {
                                $priority = $a_priority;
-                       // else if we're adding to the sorted priortiy, we don't know the title or callback. Glab them from the previously added context/priority.
+                       // else if we're adding to the sorted priority, we don't know the title or callback. Grab them from the previously added context/priority.
                        } elseif ( 'sorted' == $priority ) {
                                $title = $wp_meta_boxes[$page][$a_context][$a_priority][$id]['title'];
                                $callback = $wp_meta_boxes[$page][$a_context][$a_priority][$id]['callback'];
                        } elseif ( 'sorted' == $priority ) {
                                $title = $wp_meta_boxes[$page][$a_context][$a_priority][$id]['title'];
                                $callback = $wp_meta_boxes[$page][$a_context][$a_priority][$id]['callback'];
@@ -925,16 +906,23 @@ function add_meta_box($id, $title, $callback, $page, $context = 'advanced', $pri
  *
  * @since 2.5.0
  *
  *
  * @since 2.5.0
  *
- * @param string $page page identifier, also known as screen identifier
+ * @param string|object $screen Screen identifier
  * @param string $context box context
  * @param mixed $object gets passed to the box callback function as first parameter
  * @return int number of meta_boxes
  */
  * @param string $context box context
  * @param mixed $object gets passed to the box callback function as first parameter
  * @return int number of meta_boxes
  */
-function do_meta_boxes($page, $context, $object) {
+function do_meta_boxes( $screen, $context, $object ) {
        global $wp_meta_boxes;
        static $already_sorted = false;
 
        global $wp_meta_boxes;
        static $already_sorted = false;
 
-       $hidden = get_hidden_meta_boxes($page);
+       if ( empty( $screen ) )
+               $screen = get_current_screen();
+       elseif ( is_string( $screen ) )
+               $screen = convert_to_screen( $screen );
+
+       $page = $screen->id;
+
+       $hidden = get_hidden_meta_boxes( $screen );
 
        printf('<div id="%s-sortables" class="meta-box-sortables">', htmlspecialchars($context));
 
 
        printf('<div id="%s-sortables" class="meta-box-sortables">', htmlspecialchars($context));
 
@@ -945,7 +933,7 @@ function do_meta_boxes($page, $context, $object) {
                        foreach ( $sorted as $box_context => $ids ) {
                                foreach ( explode(',', $ids ) as $id ) {
                                        if ( $id && 'dashboard_browser_nag' !== $id )
                        foreach ( $sorted as $box_context => $ids ) {
                                foreach ( explode(',', $ids ) as $id ) {
                                        if ( $id && 'dashboard_browser_nag' !== $id )
-                                               add_meta_box( $id, null, null, $page, $box_context, 'sorted' );
+                                               add_meta_box( $id, null, null, $screen, $box_context, 'sorted' );
                                }
                        }
                }
                                }
                        }
                }
@@ -987,12 +975,19 @@ function do_meta_boxes($page, $context, $object) {
  * @since 2.6.0
  *
  * @param string $id String for use in the 'id' attribute of tags.
  * @since 2.6.0
  *
  * @param string $id String for use in the 'id' attribute of tags.
- * @param string $page The type of edit page on which to show the box (post, page, link).
+ * @param string|object $screen The screen on which to show the box (post, page, link).
  * @param string $context The context within the page where the boxes should show ('normal', 'advanced').
  */
  * @param string $context The context within the page where the boxes should show ('normal', 'advanced').
  */
-function remove_meta_box($id, $page, $context) {
+function remove_meta_box($id, $screen, $context) {
        global $wp_meta_boxes;
 
        global $wp_meta_boxes;
 
+       if ( empty( $screen ) )
+               $screen = get_current_screen();
+       elseif ( is_string( $screen ) )
+               $screen = convert_to_screen( $screen );
+
+       $page = $screen->id;
+
        if ( !isset($wp_meta_boxes) )
                $wp_meta_boxes = array();
        if ( !isset($wp_meta_boxes[$page]) )
        if ( !isset($wp_meta_boxes) )
                $wp_meta_boxes = array();
        if ( !isset($wp_meta_boxes[$page]) )
@@ -1004,67 +999,6 @@ function remove_meta_box($id, $page, $context) {
                $wp_meta_boxes[$page][$context][$priority][$id] = false;
 }
 
                $wp_meta_boxes[$page][$context][$priority][$id] = false;
 }
 
-/**
- * {@internal Missing Short Description}}
- *
- * @since 2.7.0
- *
- * @param unknown_type $screen
- */
-function meta_box_prefs($screen) {
-       global $wp_meta_boxes;
-
-       if ( is_string($screen) )
-               $screen = convert_to_screen($screen);
-
-       if ( empty($wp_meta_boxes[$screen->id]) )
-               return;
-
-       $hidden = get_hidden_meta_boxes($screen);
-
-       foreach ( array_keys($wp_meta_boxes[$screen->id]) as $context ) {
-               foreach ( array_keys($wp_meta_boxes[$screen->id][$context]) as $priority ) {
-                       foreach ( $wp_meta_boxes[$screen->id][$context][$priority] as $box ) {
-                               if ( false == $box || ! $box['title'] )
-                                       continue;
-                               // Submit box cannot be hidden
-                               if ( 'submitdiv' == $box['id'] || 'linksubmitdiv' == $box['id'] )
-                                       continue;
-                               $box_id = $box['id'];
-                               echo '<label for="' . $box_id . '-hide">';
-                               echo '<input class="hide-postbox-tog" name="' . $box_id . '-hide" type="checkbox" id="' . $box_id . '-hide" value="' . $box_id . '"' . (! in_array($box_id, $hidden) ? ' checked="checked"' : '') . ' />';
-                               echo "{$box['title']}</label>\n";
-                       }
-               }
-       }
-}
-
-/**
- * Get Hidden Meta Boxes
- *
- * @since 2.7.0
- *
- * @param string|object $screen Screen identifier
- * @return array Hidden Meta Boxes
- */
-function get_hidden_meta_boxes( $screen ) {
-       if ( is_string( $screen ) )
-               $screen = convert_to_screen( $screen );
-
-       $hidden = get_user_option( "metaboxhidden_{$screen->id}" );
-
-       // Hide slug boxes by default
-       if ( !is_array( $hidden ) ) {
-               if ( 'post' == $screen->base || 'page' == $screen->base )
-                       $hidden = array('slugdiv', 'trackbacksdiv', 'postcustom', 'postexcerpt', 'commentstatusdiv', 'commentsdiv', 'authordiv', 'revisionsdiv');
-               else
-                       $hidden = array( 'slugdiv' );
-               $hidden = apply_filters('default_hidden_meta_boxes', $hidden, $screen);
-       }
-
-       return $hidden;
-}
-
 /**
  * Add a new section to a settings page.
  *
 /**
  * Add a new section to a settings page.
  *
@@ -1111,7 +1045,7 @@ function add_settings_section($id, $title, $callback, $page) {
  * do_settings_fields() in do_settings-sections()
  *
  * The $callback argument should be the name of a function that echoes out the
  * do_settings_fields() in do_settings-sections()
  *
  * The $callback argument should be the name of a function that echoes out the
- * html input tags for this setting field. Use get_option() to retrive existing
+ * html input tags for this setting field. Use get_option() to retrieve existing
  * values to show.
  *
  * @since 2.7.0
  * values to show.
  *
  * @since 2.7.0
@@ -1122,7 +1056,7 @@ function add_settings_section($id, $title, $callback, $page) {
  * @param string $title Formatted title of the field. Shown as the label for the field during output.
  * @param string $callback Function that fills the field with the desired form inputs. The function should echo its output.
  * @param string $page The slug-name of the settings page on which to show the section (general, reading, writing, ...).
  * @param string $title Formatted title of the field. Shown as the label for the field during output.
  * @param string $callback Function that fills the field with the desired form inputs. The function should echo its output.
  * @param string $page The slug-name of the settings page on which to show the section (general, reading, writing, ...).
- * @param string $section The slug-name of the section of the settingss page in which to show the box (default, ...).
+ * @param string $section The slug-name of the section of the settings page in which to show the box (default, ...).
  * @param array $args Additional arguments
  */
 function add_settings_field($id, $title, $callback, $page, $section = 'default', $args = array()) {
  * @param array $args Additional arguments
  */
 function add_settings_field($id, $title, $callback, $page, $section = 'default', $args = array()) {
@@ -1163,7 +1097,8 @@ function do_settings_sections($page) {
                return;
 
        foreach ( (array) $wp_settings_sections[$page] as $section ) {
                return;
 
        foreach ( (array) $wp_settings_sections[$page] as $section ) {
-               echo "<h3>{$section['title']}</h3>\n";
+               if ( $section['title'] )
+                       echo "<h3>{$section['title']}</h3>\n";
                call_user_func($section['callback'], $section);
                if ( !isset($wp_settings_fields) || !isset($wp_settings_fields[$page]) || !isset($wp_settings_fields[$page][$section['id']]) )
                        continue;
                call_user_func($section['callback'], $section);
                if ( !isset($wp_settings_fields) || !isset($wp_settings_fields[$page]) || !isset($wp_settings_fields[$page][$section['id']]) )
                        continue;
@@ -1275,7 +1210,7 @@ function get_settings_errors( $setting = '', $sanitize = FALSE ) {
                sanitize_option( $setting, get_option($setting));
 
        // If settings were passed back from options.php then use them
                sanitize_option( $setting, get_option($setting));
 
        // If settings were passed back from options.php then use them
-       // Ignore transients if $sanitize is true, we dont' want the old values anyway
+       // Ignore transients if $sanitize is true, we don't want the old values anyway
        if ( isset($_GET['settings-updated']) && $_GET['settings-updated'] && get_transient('settings_errors') ) {
                $settings_errors = get_transient('settings_errors');
                delete_transient('settings_errors');
        if ( isset($_GET['settings-updated']) && $_GET['settings-updated'] && get_transient('settings_errors') ) {
                $settings_errors = get_transient('settings_errors');
                delete_transient('settings_errors');
@@ -1394,118 +1329,6 @@ function the_post_password() {
        if ( isset( $post->post_password ) ) echo esc_attr( $post->post_password );
 }
 
        if ( isset( $post->post_password ) ) echo esc_attr( $post->post_password );
 }
 
-/**
- * {@internal Missing Short Description}}
- *
- * @since 2.7.0
- */
-function favorite_actions( $screen = null ) {
-       $default_action = false;
-
-       if ( is_string($screen) )
-               $screen = convert_to_screen($screen);
-
-       if ( $screen->is_user )
-               return;
-
-       if ( isset($screen->post_type) ) {
-               $post_type_object = get_post_type_object($screen->post_type);
-               if ( 'add' != $screen->action )
-                       $default_action = array('post-new.php?post_type=' . $post_type_object->name => array($post_type_object->labels->new_item, $post_type_object->cap->edit_posts));
-               else
-                       $default_action = array('edit.php?post_type=' . $post_type_object->name => array($post_type_object->labels->name, $post_type_object->cap->edit_posts));
-       }
-
-       if ( !$default_action ) {
-               if ( $screen->is_network ) {
-                       $default_action = array('sites.php' => array( __('Sites'), 'manage_sites'));
-               } else {
-                       switch ( $screen->id ) {
-                               case 'upload':
-                                       $default_action = array('media-new.php' => array(__('New Media'), 'upload_files'));
-                                       break;
-                               case 'media':
-                                       $default_action = array('upload.php' => array(__('Edit Media'), 'upload_files'));
-                                       break;
-                               case 'link-manager':
-                               case 'link':
-                                       if ( 'add' != $screen->action )
-                                               $default_action = array('link-add.php' => array(__('New Link'), 'manage_links'));
-                                       else
-                                               $default_action = array('link-manager.php' => array(__('Edit Links'), 'manage_links'));
-                                       break;
-                               case 'users':
-                                       $default_action = array('user-new.php' => array(__('New User'), 'create_users'));
-                                       break;
-                               case 'user':
-                                       $default_action = array('users.php' => array(__('Edit Users'), 'edit_users'));
-                                       break;
-                               case 'plugins':
-                                       $default_action = array('plugin-install.php' => array(__('Install Plugins'), 'install_plugins'));
-                                       break;
-                               case 'plugin-install':
-                                       $default_action = array('plugins.php' => array(__('Manage Plugins'), 'activate_plugins'));
-                                       break;
-                               case 'themes':
-                                       $default_action = array('theme-install.php' => array(__('Install Themes'), 'install_themes'));
-                                       break;
-                               case 'theme-install':
-                                       $default_action = array('themes.php' => array(__('Manage Themes'), 'switch_themes'));
-                                       break;
-                               default:
-                                       $default_action = array('post-new.php' => array(__('New Post'), 'edit_posts'));
-                                       break;
-                       }
-               }
-       }
-
-       if ( !$screen->is_network ) {
-               $actions = array(
-                       'post-new.php' => array(__('New Post'), 'edit_posts'),
-                       'edit.php?post_status=draft' => array(__('Drafts'), 'edit_posts'),
-                       'post-new.php?post_type=page' => array(__('New Page'), 'edit_pages'),
-                       'media-new.php' => array(__('Upload'), 'upload_files'),
-                       'edit-comments.php' => array(__('Comments'), 'moderate_comments')
-                       );
-       } else {
-               $actions = array(
-                       'sites.php' => array( __('Sites'), 'manage_sites'),
-                       'users.php' => array( __('Users'), 'manage_network_users')
-               );
-       }
-
-       $default_key = array_keys($default_action);
-       $default_key = $default_key[0];
-       if ( isset($actions[$default_key]) )
-               unset($actions[$default_key]);
-       $actions = array_merge($default_action, $actions);
-       $actions = apply_filters( 'favorite_actions', $actions, $screen );
-
-       $allowed_actions = array();
-       foreach ( $actions as $action => $data ) {
-               if ( current_user_can($data[1]) )
-                       $allowed_actions[$action] = $data[0];
-       }
-
-       if ( empty($allowed_actions) )
-               return;
-
-       $first = array_keys($allowed_actions);
-       $first = $first[0];
-       echo '<div id="favorite-actions">';
-       echo '<div id="favorite-first"><a href="' . $first . '">' . $allowed_actions[$first] . '</a></div><div id="favorite-toggle"><br /></div>';
-       echo '<div id="favorite-inside">';
-
-       array_shift($allowed_actions);
-
-       foreach ( $allowed_actions as $action => $label) {
-               echo "<div class='favorite-action'><a href='$action'>";
-               echo $label;
-               echo "</a></div>\n";
-       }
-       echo "</div></div>\n";
-}
-
 /**
  * Get the post title.
  *
 /**
  * Get the post title.
  *
@@ -1547,19 +1370,15 @@ function _admin_search_query() {
  */
 function iframe_header( $title = '', $limit_styles = false ) {
        show_admin_bar( false );
  */
 function iframe_header( $title = '', $limit_styles = false ) {
        show_admin_bar( false );
-       global $hook_suffix, $current_screen, $current_user, $admin_body_class, $wp_locale;
+       global $hook_suffix, $current_user, $admin_body_class, $wp_locale;
        $admin_body_class = preg_replace('/[^a-z0-9_-]+/i', '-', $hook_suffix);
        $admin_body_class = preg_replace('/[^a-z0-9_-]+/i', '-', $hook_suffix);
-       $admin_body_class .= ' iframe';
 
 
-?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" <?php do_action('admin_xml_ns'); ?> <?php language_attributes(); ?>>
-<head>
-<meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php echo get_option('blog_charset'); ?>" />
+       $current_screen = get_current_screen();
+
+       _wp_admin_html_begin();
+?>
 <title><?php bloginfo('name') ?> &rsaquo; <?php echo $title ?> &#8212; <?php _e('WordPress'); ?></title>
 <?php
 <title><?php bloginfo('name') ?> &rsaquo; <?php echo $title ?> &#8212; <?php _e('WordPress'); ?></title>
 <?php
-wp_enqueue_style( 'global' );
-if ( ! $limit_styles )
-       wp_enqueue_style( 'wp-admin' );
 wp_enqueue_style( 'colors' );
 ?>
 <script type="text/javascript">
 wp_enqueue_style( 'colors' );
 ?>
 <script type="text/javascript">
@@ -1573,7 +1392,7 @@ var userSettings = {
        },
        ajaxurl = '<?php echo admin_url('admin-ajax.php'); ?>',
        pagenow = '<?php echo $current_screen->id; ?>',
        },
        ajaxurl = '<?php echo admin_url('admin-ajax.php'); ?>',
        pagenow = '<?php echo $current_screen->id; ?>',
-       typenow = '<?php if ( isset($current_screen->post_type) ) echo $current_screen->post_type; ?>',
+       typenow = '<?php echo $current_screen->post_type; ?>',
        adminpage = '<?php echo $admin_body_class; ?>',
        thousandsSeparator = '<?php echo addslashes( $wp_locale->number_format['thousands_sep'] ); ?>',
        decimalPoint = '<?php echo addslashes( $wp_locale->number_format['decimal_point'] ); ?>',
        adminpage = '<?php echo $admin_body_class; ?>',
        thousandsSeparator = '<?php echo addslashes( $wp_locale->number_format['thousands_sep'] ); ?>',
        decimalPoint = '<?php echo addslashes( $wp_locale->number_format['decimal_point'] ); ?>',
@@ -1590,7 +1409,7 @@ do_action("admin_head-$hook_suffix");
 do_action('admin_head');
 ?>
 </head>
 do_action('admin_head');
 ?>
 </head>
-<body<?php if ( isset($GLOBALS['body_id']) ) echo ' id="' . $GLOBALS['body_id'] . '"'; ?>  class="no-js <?php echo $admin_body_class; ?>">
+<body<?php if ( isset($GLOBALS['body_id']) ) echo ' id="' . $GLOBALS['body_id'] . '"'; ?>  class="wp-admin no-js iframe <?php echo apply_filters( 'admin_body_class', '' ) . ' ' . $admin_body_class; ?>">
 <script type="text/javascript">
 //<![CDATA[
 (function(){
 <script type="text/javascript">
 //<![CDATA[
 (function(){
@@ -1624,8 +1443,8 @@ function iframe_footer() {
 
 function _post_states($post) {
        $post_states = array();
 
 function _post_states($post) {
        $post_states = array();
-       if ( isset($_GET['post_status']) )
-               $post_status = $_GET['post_status'];
+       if ( isset( $_REQUEST['post_status'] ) )
+               $post_status = $_REQUEST['post_status'];
        else
                $post_status = '';
 
        else
                $post_status = '';
 
@@ -1688,310 +1507,6 @@ function _media_states( $post ) {
        }
 }
 
        }
 }
 
-/**
- * Convert a screen string to a screen object
- *
- * @since 3.0.0
- *
- * @param string $screen The name of the screen
- * @return object An object containing the safe screen name and id
- */
-function convert_to_screen( $screen ) {
-       $screen = str_replace( array('.php', '-new', '-add', '-network', '-user' ), '', $screen);
-
-       if ( is_network_admin() )
-               $screen .= '-network';
-       elseif ( is_user_admin() )
-               $screen .= '-user';
-
-       $screen = (string) apply_filters( 'screen_meta_screen', $screen );
-       $screen = (object) array('id' => $screen, 'base' => $screen);
-       return $screen;
-}
-
-function screen_meta($screen) {
-       global $wp_meta_boxes, $_wp_contextual_help, $wp_list_table, $wp_current_screen_options;
-
-       if ( is_string($screen) )
-               $screen = convert_to_screen($screen);
-
-       $columns = get_column_headers( $screen );
-       $hidden = get_hidden_columns( $screen );
-
-       $meta_screens = array('index' => 'dashboard');
-
-       if ( isset($meta_screens[$screen->id]) ) {
-               $screen->id = $meta_screens[$screen->id];
-               $screen->base = $screen->id;
-       }
-
-       $show_screen = false;
-       if ( !empty($wp_meta_boxes[$screen->id]) || !empty($columns) )
-               $show_screen = true;
-
-       $screen_options = screen_options($screen);
-       if ( $screen_options )
-               $show_screen = true;
-
-       if ( !isset($_wp_contextual_help) )
-               $_wp_contextual_help = array();
-
-       $settings = apply_filters('screen_settings', '', $screen);
-
-       switch ( $screen->id ) {
-               case 'widgets':
-                       $settings = '<p><a id="access-on" href="widgets.php?widgets-access=on">' . __('Enable accessibility mode') . '</a><a id="access-off" href="widgets.php?widgets-access=off">' . __('Disable accessibility mode') . "</a></p>\n";
-                       $show_screen = true;
-                       break;
-       }
-       if ( ! empty( $settings ) )
-               $show_screen = true;
-
-       if ( !empty($wp_current_screen_options) )
-               $show_screen = true;
-
-       $show_screen = apply_filters('screen_options_show_screen', $show_screen, $screen);
-
-?>
-<div id="screen-meta">
-<?php if ( $show_screen ) : ?>
-<div id="screen-options-wrap" class="hidden">
-       <form id="adv-settings" action="" method="post">
-       <?php if ( isset($wp_meta_boxes[$screen->id]) ) : ?>
-               <h5><?php _ex('Show on screen', 'Metaboxes') ?></h5>
-               <div class="metabox-prefs">
-                       <?php meta_box_prefs($screen); ?>
-                       <br class="clear" />
-               </div>
-               <?php endif;
-               if ( ! empty($columns) ) : ?>
-               <h5><?php echo ( isset( $columns['_title'] ) ?  $columns['_title'] :  _x('Show on screen', 'Columns') ) ?></h5>
-               <div class="metabox-prefs">
-<?php
-       $special = array('_title', 'cb', 'comment', 'media', 'name', 'title', 'username', 'blogname');
-
-       foreach ( $columns as $column => $title ) {
-               // Can't hide these for they are special
-               if ( in_array( $column, $special ) )
-                       continue;
-               if ( empty( $title ) )
-                       continue;
-
-               if ( 'comments' == $column )
-                       $title = __( 'Comments' );
-               $id = "$column-hide";
-               echo '<label for="' . $id . '">';
-               echo '<input class="hide-column-tog" name="' . $id . '" type="checkbox" id="' . $id . '" value="' . $column . '"' . checked( !in_array($column, $hidden), true, false ) . ' />';
-               echo "$title</label>\n";
-       }
-?>
-                       <br class="clear" />
-               </div>
-       <?php endif;
-       echo screen_layout($screen);
-
-       if ( !empty( $screen_options ) ) {
-               ?>
-               <h5><?php _ex('Show on screen', 'Screen Options') ?></h5>
-               <?php
-       }
-
-       echo $screen_options;
-       echo $settings; ?>
-<div><?php wp_nonce_field( 'screen-options-nonce', 'screenoptionnonce', false ); ?></div>
-</form>
-</div>
-
-<?php endif; // $show_screen
-
-       $_wp_contextual_help = apply_filters('contextual_help_list', $_wp_contextual_help, $screen);
-       ?>
-       <div id="contextual-help-wrap" class="hidden">
-       <?php
-       $contextual_help = '';
-       if ( isset($_wp_contextual_help[$screen->id]) ) {
-               $contextual_help .= '<div class="metabox-prefs">' . $_wp_contextual_help[$screen->id] . "</div>\n";
-       } else {
-               $contextual_help .= '<div class="metabox-prefs">';
-               $default_help = __('<a href="http://codex.wordpress.org/" target="_blank">Documentation</a>');
-               $default_help .= '<br />';
-               $default_help .= __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>');
-               $contextual_help .= apply_filters('default_contextual_help', $default_help);
-               $contextual_help .= "</div>\n";
-       }
-
-       echo apply_filters('contextual_help', $contextual_help, $screen->id, $screen);
-       ?>
-       </div>
-
-<div id="screen-meta-links">
-<div id="contextual-help-link-wrap" class="hide-if-no-js screen-meta-toggle">
-<a href="#contextual-help" id="contextual-help-link" class="show-settings"><?php _e('Help') ?></a>
-</div>
-<?php if ( $show_screen ) { ?>
-<div id="screen-options-link-wrap" class="hide-if-no-js screen-meta-toggle">
-<a href="#screen-options" id="show-settings-link" class="show-settings"><?php _e('Screen Options') ?></a>
-</div>
-<?php } ?>
-</div>
-</div>
-<?php
-}
-
-/**
- * Add contextual help text for a page
- *
- * @since 2.7.0
- *
- * @param string $screen The handle for the screen to add help to.  This is usually the hook name returned by the add_*_page() functions.
- * @param string $help Arbitrary help text
- */
-function add_contextual_help($screen, $help) {
-       global $_wp_contextual_help;
-
-       if ( is_string($screen) )
-               $screen = convert_to_screen($screen);
-
-       if ( !isset($_wp_contextual_help) )
-               $_wp_contextual_help = array();
-
-       $_wp_contextual_help[$screen->id] = $help;
-}
-
-function screen_layout($screen) {
-       global $screen_layout_columns, $wp_current_screen_options;
-
-       if ( is_string($screen) )
-               $screen = convert_to_screen($screen);
-
-       // Back compat for plugins using the filter instead of add_screen_option()
-       $columns = apply_filters('screen_layout_columns', array(), $screen->id, $screen);
-       if ( !empty($columns) && isset($columns[$screen->id]) )
-               add_screen_option('layout_columns', array('max' => $columns[$screen->id]) );
-
-       if ( !isset($wp_current_screen_options['layout_columns']) ) {
-               $screen_layout_columns = 0;
-               return '';
-       }
-
-       $screen_layout_columns = get_user_option("screen_layout_$screen->id");
-       $num = $wp_current_screen_options['layout_columns']['max'];
-
-       if ( ! $screen_layout_columns ) {
-               if ( isset($wp_current_screen_options['layout_columns']['default']) )
-                       $screen_layout_columns = $wp_current_screen_options['layout_columns']['default'];
-               else
-                       $screen_layout_columns = 2;
-       }
-
-       $i = 1;
-       $return = '<h5>' . __('Screen Layout') . "</h5>\n<div class='columns-prefs'>" . __('Number of Columns:') . "\n";
-       while ( $i <= $num ) {
-               $return .= "<label><input type='radio' name='screen_columns' value='$i'" . ( ($screen_layout_columns == $i) ? " checked='checked'" : "" ) . " /> $i</label>\n";
-               ++$i;
-       }
-       $return .= "</div>\n";
-       return $return;
-}
-
-/**
- * Register and configure an admin screen option
- *
- * @since 3.1.0
- *
- * @param string $option An option name.
- * @param mixed $args Option dependent arguments
- * @return void
- */
-function add_screen_option( $option, $args = array() ) {
-       global $wp_current_screen_options;
-
-       if ( !isset($wp_current_screen_options) )
-               $wp_current_screen_options = array();
-
-       $wp_current_screen_options[$option] = $args;
-}
-
-function screen_options($screen) {
-       global $wp_current_screen_options;
-
-       if ( is_string($screen) )
-               $screen = convert_to_screen($screen);
-
-       if ( !isset($wp_current_screen_options['per_page']) )
-               return '';
-
-       $per_page_label = $wp_current_screen_options['per_page']['label'];
-
-       if ( empty($wp_current_screen_options['per_page']['option']) ) {
-               $option = str_replace( '-', '_', "{$screen->id}_per_page" );
-       } else {
-               $option = $wp_current_screen_options['per_page']['option'];
-       }
-
-       $per_page = (int) get_user_option( $option );
-       if ( empty( $per_page ) || $per_page < 1 ) {
-               if ( isset($wp_current_screen_options['per_page']['default']) )
-                       $per_page = $wp_current_screen_options['per_page']['default'];
-               else
-                       $per_page = 20;
-       }
-
-       if ( 'edit_comments_per_page' == $option )
-               $per_page = apply_filters( 'comments_per_page', $per_page, isset($_REQUEST['comment_status']) ? $_REQUEST['comment_status'] : 'all' );
-       elseif ( 'categories_per_page' == $option )
-               $per_page = apply_filters( 'edit_categories_per_page', $per_page );
-       else
-               $per_page = apply_filters( $option, $per_page );
-
-       // Back compat
-       if ( isset( $screen->post_type ) )
-               $per_page = apply_filters( 'edit_posts_per_page', $per_page, $screen->post_type );
-
-       $return = "<div class='screen-options'>\n";
-       if ( !empty($per_page_label) )
-               $return .= "<input type='text' class='screen-per-page' name='wp_screen_options[value]' id='$option' maxlength='3' value='$per_page' /> <label for='$option'>$per_page_label</label>\n";
-       $return .= get_submit_button( __( 'Apply' ), 'button', 'screen-options-apply', false );
-       $return .= "<input type='hidden' name='wp_screen_options[option]' value='" . esc_attr($option) . "' />";
-       $return .= "</div>\n";
-       return $return;
-}
-
-function screen_icon( $screen = '' ) {
-       echo get_screen_icon( $screen );
-}
-
-function get_screen_icon( $screen = '' ) {
-       global $current_screen, $typenow;
-
-       if ( empty($screen) )
-               $screen = $current_screen;
-       elseif ( is_string($screen) )
-               $name = $screen;
-
-       $class = 'icon32';
-
-       if ( empty($name) ) {
-               if ( !empty($screen->parent_base) )
-                       $name = $screen->parent_base;
-               else
-                       $name = $screen->base;
-
-               if ( 'edit' == $name && isset($screen->post_type) && 'page' == $screen->post_type )
-                       $name = 'edit-pages';
-
-               $post_type = '';
-               if ( isset( $screen->post_type ) )
-                       $post_type = $screen->post_type;
-               elseif ( $current_screen == $screen )
-                       $post_type = $typenow;
-               if ( $post_type )
-                       $class .= ' ' . sanitize_html_class( 'icon32-posts-' . $post_type );
-       }
-
-       return '<div id="icon-' . esc_attr( $name ) . '" class="' . $class . '"><br /></div>';
-}
-
 /**
  * Test support for compressing JavaScript from PHP
  *
 /**
  * Test support for compressing JavaScript from PHP
  *
@@ -2057,98 +1572,6 @@ function compression_test() {
 <?php
 }
 
 <?php
 }
 
-/**
- *  Get the current screen object
- *
- *  @since 3.1.0
- *
- * @return object Current screen object
- */
-function get_current_screen() {
-       global $current_screen;
-
-       if ( !isset($current_screen) )
-               return null;
-
-       return $current_screen;
-}
-
-/**
- * Set the current screen object
- *
- * @since 3.0.0
- *
- * @uses $current_screen
- *
- * @param string $id Screen id, optional.
- */
-function set_current_screen( $id =  '' ) {
-       global $current_screen, $hook_suffix, $typenow, $taxnow;
-
-       $action = '';
-
-       if ( empty($id) ) {
-               $current_screen = $hook_suffix;
-               $current_screen = str_replace('.php', '', $current_screen);
-               if ( preg_match('/-add|-new$/', $current_screen) )
-                       $action = 'add';
-               $current_screen = str_replace('-new', '', $current_screen);
-               $current_screen = str_replace('-add', '', $current_screen);
-               $current_screen = array('id' => $current_screen, 'base' => $current_screen);
-       } else {
-               $id = sanitize_key($id);
-               if ( false !== strpos($id, '-') ) {
-                       list( $id, $typenow ) = explode('-', $id, 2);
-                       if ( taxonomy_exists( $typenow ) ) {
-                               $id = 'edit-tags';
-                               $taxnow = $typenow;
-                               $typenow = '';
-                       }
-               }
-               $current_screen = array('id' => $id, 'base' => $id);
-       }
-
-       $current_screen = (object) $current_screen;
-
-       $current_screen->action = $action;
-
-       // Map index to dashboard
-       if ( 'index' == $current_screen->base )
-               $current_screen->base = 'dashboard';
-       if ( 'index' == $current_screen->id )
-               $current_screen->id = 'dashboard';
-
-       if ( 'edit' == $current_screen->id ) {
-               if ( empty($typenow) )
-                       $typenow = 'post';
-               $current_screen->id .= '-' . $typenow;
-               $current_screen->post_type = $typenow;
-       } elseif ( 'post' == $current_screen->id ) {
-               if ( empty($typenow) )
-                       $typenow = 'post';
-               $current_screen->id = $typenow;
-               $current_screen->post_type = $typenow;
-       } elseif ( 'edit-tags' == $current_screen->id ) {
-               if ( empty($taxnow) )
-                       $taxnow = 'post_tag';
-               $current_screen->id = 'edit-' . $taxnow;
-               $current_screen->taxonomy = $taxnow;
-       }
-
-       $current_screen->is_network = is_network_admin();
-       $current_screen->is_user = is_user_admin();
-
-       if ( $current_screen->is_network ) {
-               $current_screen->base .= '-network';
-               $current_screen->id .= '-network';
-       } elseif ( $current_screen->is_user ) {
-               $current_screen->base .= '-user';
-               $current_screen->id .= '-user';
-       }
-
-       $current_screen = apply_filters('current_screen', $current_screen);
-}
-
 /**
  * Echos a submit button, with provided text and appropriate class
  *
 /**
  * Echos a submit button, with provided text and appropriate class
  *
@@ -2162,7 +1585,7 @@ function set_current_screen( $id =  '' ) {
  *                        false otherwise. Defaults to true
  * @param array|string $other_attributes Other attributes that should be output with the button,
  *                     mapping attributes to their values, such as array( 'tabindex' => '1' ).
  *                        false otherwise. Defaults to true
  * @param array|string $other_attributes Other attributes that should be output with the button,
  *                     mapping attributes to their values, such as array( 'tabindex' => '1' ).
- *                     These attributes will be ouput as attribute="value", such as tabindex="1".
+ *                     These attributes will be output as attribute="value", such as tabindex="1".
  *                     Defaults to no other attributes. Other attributes can also be provided as a
  *                     string such as 'tabindex="1"', though the array format is typically cleaner.
  */
  *                     Defaults to no other attributes. Other attributes can also be provided as a
  *                     string such as 'tabindex="1"', though the array format is typically cleaner.
  */
@@ -2183,7 +1606,7 @@ function submit_button( $text = NULL, $type = 'primary', $name = 'submit', $wrap
  *                        false otherwise. Defaults to true
  * @param array|string $other_attributes Other attributes that should be output with the button,
  *                     mapping attributes to their values, such as array( 'tabindex' => '1' ).
  *                        false otherwise. Defaults to true
  * @param array|string $other_attributes Other attributes that should be output with the button,
  *                     mapping attributes to their values, such as array( 'tabindex' => '1' ).
- *                     These attributes will be ouput as attribute="value", such as tabindex="1".
+ *                     These attributes will be output as attribute="value", such as tabindex="1".
  *                     Defaults to no other attributes. Other attributes can also be provided as a
  *                     string such as 'tabindex="1"', though the array format is typically cleaner.
  */
  *                     Defaults to no other attributes. Other attributes can also be provided as a
  *                     string such as 'tabindex="1"', though the array format is typically cleaner.
  */
@@ -2226,3 +1649,186 @@ function get_submit_button( $text = NULL, $type = 'primary', $name = 'submit', $
 
        return $button;
 }
 
        return $button;
 }
+
+function _wp_admin_html_begin() {
+?>
+<!DOCTYPE html>
+<!--[if IE 8]>
+<html xmlns="http://www.w3.org/1999/xhtml" class="ie8" <?php do_action('admin_xml_ns'); ?> <?php language_attributes(); ?>>
+<![endif]-->
+<!--[if !(IE 8) ]><!-->
+<html xmlns="http://www.w3.org/1999/xhtml" <?php do_action('admin_xml_ns'); ?> <?php language_attributes(); ?>>
+<!--<![endif]-->
+<head>
+<meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php echo get_option('blog_charset'); ?>" />
+<?php
+}
+
+final class WP_Internal_Pointers {
+       /**
+        * Initializes the new feature pointers.
+        *
+        * @since 3.3.0
+        *
+        * All pointers can be disabled using the following:
+        *     remove_action( 'admin_enqueue_scripts', array( 'WP_Internal_Pointers', 'enqueue_scripts' ) );
+        *
+        * Individual pointers (e.g. wp330_toolbar) can be disabled using the following:
+        *     remove_action( 'admin_print_footer_scripts', array( 'WP_Internal_Pointers', 'pointer_wp330_toolbar' ) );
+        */
+       public static function enqueue_scripts( $hook_suffix ) {
+               /*
+                * Register feature pointers
+                * Format: array( hook_suffix => pointer_id )
+                */
+
+               $registered_pointers = array(
+                       'index.php'    => 'wp330_toolbar',
+                       'post-new.php' => 'wp330_media_uploader',
+                       'post.php'     => 'wp330_media_uploader',
+                       'themes.php'   => 'wp330_saving_widgets',
+               );
+
+               // Check if screen related pointer is registered
+               if ( empty( $registered_pointers[ $hook_suffix ] ) )
+                       return;
+
+               $pointer = $registered_pointers[ $hook_suffix ];
+
+               $caps_required = array(
+                       'wp330_media_uploader' => array( 'upload_files' ),
+                       'wp330_saving_widgets' => array( 'edit_theme_options', 'switch_themes' ),
+               );
+
+               if ( isset( $caps_required[ $pointer ] ) ) {
+                       foreach ( $caps_required[ $pointer ] as $cap ) {
+                               if ( ! current_user_can( $cap ) )
+                                       return;
+                       }
+               }
+
+               // Get dismissed pointers
+               $dismissed = explode( ',', (string) get_user_meta( get_current_user_id(), 'dismissed_wp_pointers', true ) );
+
+               // Pointer has been dismissed
+               if ( in_array( $pointer, $dismissed ) )
+                       return;
+
+               // Bind pointer print function
+               add_action( 'admin_print_footer_scripts', array( 'WP_Internal_Pointers', 'pointer_' . $pointer ) );
+
+               // Add pointers script and style to queue
+               wp_enqueue_style( 'wp-pointer' );
+               wp_enqueue_script( 'wp-pointer' );
+       }
+
+       /**
+        * Print the pointer javascript data.
+        *
+        * @since 3.3.0
+        *
+        * @param string $pointer_id The pointer ID.
+        * @param string $selector The HTML elements, on which the pointer should be attached.
+        * @param array  $args Arguments to be passed to the pointer JS (see wp-pointer.dev.js).
+        */
+       private static function print_js( $pointer_id, $selector, $args ) {
+               if ( empty( $pointer_id ) || empty( $selector ) || empty( $args ) || empty( $args['content'] ) )
+                       return;
+
+               ?>
+               <script type="text/javascript">
+               //<![CDATA[
+               jQuery(document).ready( function($) {
+                       var options = <?php echo json_encode( $args ); ?>;
+
+                       if ( ! options )
+                               return;
+
+                       options = $.extend( options, {
+                               close: function() {
+                                       $.post( ajaxurl, {
+                                               pointer: '<?php echo $pointer_id; ?>',
+                                               action: 'dismiss-wp-pointer'
+                                       });
+                               }
+                       });
+
+                       $('<?php echo $selector; ?>').pointer( options ).pointer('open');
+               });
+               //]]>
+               </script>
+               <?php
+       }
+
+       public static function pointer_wp330_toolbar() {
+               $content  = '<h3>' . esc_js( __( 'New Feature: Toolbar' ) ). '</h3>';
+               $content .= '<p>' . esc_js( __( 'We&#8217;ve combined the admin bar and the old Dashboard header into one persistent toolbar. Hover over the toolbar items to see what&#8217;s new.' ) ) . '</p>';
+
+               if ( is_multisite() && is_super_admin() )
+                       $content .= '<p>' .esc_js( __( 'Network Admin is now located in the My Sites menu.' ) ) . '</p>';
+
+               WP_Internal_Pointers::print_js( 'wp330_toolbar', '#wpadminbar', array(
+                       'content'  => $content,
+                       'position' => array( 'edge' => 'top', 'align' => 'center' ),
+               ) );
+       }
+
+       /**
+        * Print 'Updated Media Uploader' for 3.3.0.
+        *
+        * @since 3.3.0
+        */
+       public static function pointer_wp330_media_uploader() {
+               $content  = '<h3>' . esc_js( __( 'Updated Media Uploader' ) ) . '</h3>';
+               $content .= '<p>' . esc_js( __( 'The single media icon now launches the uploader for all file types, and the new drag and drop interface makes uploading a breeze.' ) ) . '</p>';
+
+               WP_Internal_Pointers::print_js( 'wp330_media_uploader', '#content-add_media', array(
+                       'content'  => $content,
+                       'position' => array( 'edge' => is_rtl() ? 'right' : 'left', 'align' => 'center' ),
+               ) );
+       }
+
+       /**
+        * Print 'New Feature: Saving Widgets' for 3.3.0.
+        *
+        * @since 3.3.0
+        */
+       public static function pointer_wp330_saving_widgets() {
+               $content  = '<h3>' . esc_js( __( 'New Feature: Saving Widgets' ) ) . '</h3>';
+               $content .= '<p>' . esc_js( __( 'If you change your mind and revert to your previous theme, we&#8217;ll put the widgets back the way you had them.' ) ) . '</p>';
+
+               WP_Internal_Pointers::print_js( 'wp330_saving_widgets', '#message2', array(
+                       'content'  => $content,
+                       'position' => array( 'edge' => 'top', 'align' => is_rtl() ? 'right' : 'left' ),
+               ) );
+       }
+
+       /**
+        * Prevents new users from seeing existing 'new feature' pointers.
+        *
+        * @since 3.3.0
+        */
+       public static function dismiss_pointers_for_new_users( $user_id ) {
+               add_user_meta( $user_id, 'dismissed_wp_pointers', 'wp330_toolbar,wp330_media_uploader,wp330_saving_widgets' );
+       }
+}
+
+add_action( 'admin_enqueue_scripts', array( 'WP_Internal_Pointers', 'enqueue_scripts'                ) );
+add_action( 'user_register',         array( 'WP_Internal_Pointers', 'dismiss_pointers_for_new_users' ) );
+
+/**
+ * Convert a screen string to a screen object
+ *
+ * @since 3.0.0
+ *
+ * @param string $hook_name The hook name (also known as the hook suffix) used to determine the screen.
+ * @return WP_Screen Screen object.
+ */
+function convert_to_screen( $hook_name ) {
+       if ( ! class_exists( 'WP_Screen' ) ) {
+               _doing_it_wrong( 'convert_to_screen(), add_meta_box()', __( "Likely direct inclusion of wp-admin/includes/template.php in order to use add_meta_box(). This is very wrong. Hook the add_meta_box() call into the add_meta_boxes action instead." ), '3.3' );
+               return (object) array( 'id' => '_invalid', 'base' => '_are_belong_to_us' );
+       }
+
+       return WP_Screen::get( $hook_name );
+}
\ No newline at end of file
index 1f24e40a4b703aebf2ca7853c2a2ece0c10b322d..9171daba441795cc82e7f3d1b055bdd73dc0689f 100644 (file)
@@ -172,11 +172,11 @@ function display_theme($theme, $actions = null, $show_details = true) {
 <?php endif; ?>
 <div class="star-holder" title="<?php printf(_n('(based on %s rating)', '(based on %s ratings)', $theme->num_ratings), number_format_i18n($theme->num_ratings)) ?>">
        <div class="star star-rating" style="width: <?php echo esc_attr($theme->rating) ?>px"></div>
 <?php endif; ?>
 <div class="star-holder" title="<?php printf(_n('(based on %s rating)', '(based on %s ratings)', $theme->num_ratings), number_format_i18n($theme->num_ratings)) ?>">
        <div class="star star-rating" style="width: <?php echo esc_attr($theme->rating) ?>px"></div>
-       <div class="star star5"><img src="<?php echo admin_url('images/star.png?v=20110615'); ?>" alt="<?php _e('5 stars') ?>" /></div>
-       <div class="star star4"><img src="<?php echo admin_url('images/star.png?v=20110615'); ?>" alt="<?php _e('4 stars') ?>" /></div>
-       <div class="star star3"><img src="<?php echo admin_url('images/star.png?v=20110615'); ?>" alt="<?php _e('3 stars') ?>" /></div>
-       <div class="star star2"><img src="<?php echo admin_url('images/star.png?v=20110615'); ?>" alt="<?php _e('2 stars') ?>" /></div>
-       <div class="star star1"><img src="<?php echo admin_url('images/star.png?v=20110615'); ?>" alt="<?php _e('1 star') ?>" /></div>
+       <div class="star star5"><img src="<?php echo admin_url('images/star.png?v=20110615'); ?>" alt="<?php esc_attr_e('5 stars') ?>" /></div>
+       <div class="star star4"><img src="<?php echo admin_url('images/star.png?v=20110615'); ?>" alt="<?php esc_attr_e('4 stars') ?>" /></div>
+       <div class="star star3"><img src="<?php echo admin_url('images/star.png?v=20110615'); ?>" alt="<?php esc_attr_e('3 stars') ?>" /></div>
+       <div class="star star2"><img src="<?php echo admin_url('images/star.png?v=20110615'); ?>" alt="<?php esc_attr_e('2 stars') ?>" /></div>
+       <div class="star star1"><img src="<?php echo admin_url('images/star.png?v=20110615'); ?>" alt="<?php esc_attr_e('1 star') ?>" /></div>
 </div>
 </div>
 <?php }
 </div>
 </div>
 <?php }
@@ -237,7 +237,7 @@ function install_theme_information() {
        iframe_header( __('Theme Install') );
 
        if ( empty($api->download_link) ) {
        iframe_header( __('Theme Install') );
 
        if ( empty($api->download_link) ) {
-               echo '<div id="message" class="error"><p>' . __('<strong>Error:</strong> This theme is currently not available. Please try again later.') . '</p></div>';
+               echo '<div id="message" class="error"><p>' . __('<strong>ERROR:</strong> This theme is currently not available. Please try again later.') . '</p></div>';
                iframe_footer();
                exit;
        }
                iframe_footer();
                exit;
        }
@@ -262,7 +262,7 @@ function install_theme_information() {
        }
 
        $themes = get_themes();
        }
 
        $themes = get_themes();
-       foreach ( $themes as $this_theme ) {
+       foreach ( (array) $themes as $this_theme ) {
                if ( is_array($this_theme) && $this_theme['Stylesheet'] == $api->slug ) {
                        if ( $this_theme['Version'] == $api->version ) {
                                $type = 'latest_installed';
                if ( is_array($this_theme) && $this_theme['Stylesheet'] == $api->slug ) {
                        if ( $this_theme['Version'] == $api->version ) {
                                $type = 'latest_installed';
index 1600aa70b67a7ceff5a5bd1fe5ceca3a764964a0..7cb5dc4a355cb0ec9e6a95614e17c4e2ca006336 100644 (file)
 function current_theme_info() {
        $themes = get_themes();
        $current_theme = get_current_theme();
 function current_theme_info() {
        $themes = get_themes();
        $current_theme = get_current_theme();
+
+       if ( ! $themes ) {
+               $ct = new stdClass;
+               $ct->name = $current_theme;
+               return $ct;
+       }
+
        if ( ! isset( $themes[$current_theme] ) ) {
                delete_option( 'current_theme' );
                $current_theme = get_current_theme();
        }
        if ( ! isset( $themes[$current_theme] ) ) {
                delete_option( 'current_theme' );
                $current_theme = get_current_theme();
        }
+
+       $ct = new stdClass;
        $ct->name = $current_theme;
        $ct->title = $themes[$current_theme]['Title'];
        $ct->version = $themes[$current_theme]['Version'];
        $ct->name = $current_theme;
        $ct->title = $themes[$current_theme]['Title'];
        $ct->version = $themes[$current_theme]['Version'];
index d44ffb206e7e8be4a7027bd465423cbb3f4e0920..bfdb2b09acd1e8303a416c87764fa7d431f40f5d 100644 (file)
@@ -252,7 +252,78 @@ $_old_files = array(
 'wp-admin/js/list-table.js',
 'wp-admin/js/list-table.dev.js',
 'wp-admin/images/logo-login.gif',
 'wp-admin/js/list-table.js',
 'wp-admin/js/list-table.dev.js',
 'wp-admin/images/logo-login.gif',
-'wp-admin/images/star.gif'
+'wp-admin/images/star.gif',
+// 3.3
+'wp-admin/css/colors-classic-rtl.css',
+'wp-admin/css/colors-classic-rtl.dev.css',
+'wp-admin/css/colors-fresh-rtl.css',
+'wp-admin/css/colors-fresh-rtl.dev.css',
+'wp-admin/css/dashboard-rtl.css',
+'wp-admin/css/dashboard-rtl.dev.css',
+'wp-admin/css/dashboard.css',
+'wp-admin/css/dashboard.dev.css',
+'wp-admin/css/farbtastic-rtl.css',
+'wp-admin/css/global-rtl.css',
+'wp-admin/css/global-rtl.dev.css',
+'wp-admin/css/global.css',
+'wp-admin/css/global.dev.css',
+'wp-admin/css/install-rtl.css',
+'wp-admin/css/install-rtl.dev.css',
+'wp-admin/css/login-rtl.css',
+'wp-admin/css/login-rtl.dev.css',
+'wp-admin/css/login.css',
+'wp-admin/css/login.dev.css',
+'wp-admin/css/ms.css',
+'wp-admin/css/ms.dev.css',
+'wp-admin/css/nav-menu-rtl.css',
+'wp-admin/css/nav-menu-rtl.dev.css',
+'wp-admin/css/nav-menu.css',
+'wp-admin/css/nav-menu.dev.css',
+'wp-admin/css/plugin-install-rtl.css',
+'wp-admin/css/plugin-install-rtl.dev.css',
+'wp-admin/css/plugin-install.css',
+'wp-admin/css/plugin-install.dev.css',
+'wp-admin/css/press-this-rtl.css',
+'wp-admin/css/press-this-rtl.dev.css',
+'wp-admin/css/press-this.css',
+'wp-admin/css/press-this.dev.css',
+'wp-admin/css/theme-editor-rtl.css',
+'wp-admin/css/theme-editor-rtl.dev.css',
+'wp-admin/css/theme-editor.css',
+'wp-admin/css/theme-editor.dev.css',
+'wp-admin/css/theme-install-rtl.css',
+'wp-admin/css/theme-install-rtl.dev.css',
+'wp-admin/css/theme-install.css',
+'wp-admin/css/theme-install.dev.css',
+'wp-admin/css/widgets-rtl.css',
+'wp-admin/css/widgets-rtl.dev.css',
+'wp-admin/css/widgets.css',
+'wp-admin/css/widgets.dev.css',
+'wp-admin/includes/internal-linking.php',
+'wp-includes/images/admin-bar-sprite-rtl.png',
+'wp-includes/js/jquery/ui.button.js',
+'wp-includes/js/jquery/ui.core.js',
+'wp-includes/js/jquery/ui.dialog.js',
+'wp-includes/js/jquery/ui.draggable.js',
+'wp-includes/js/jquery/ui.droppable.js',
+'wp-includes/js/jquery/ui.mouse.js',
+'wp-includes/js/jquery/ui.position.js',
+'wp-includes/js/jquery/ui.resizable.js',
+'wp-includes/js/jquery/ui.selectable.js',
+'wp-includes/js/jquery/ui.sortable.js',
+'wp-includes/js/jquery/ui.tabs.js',
+'wp-includes/js/jquery/ui.widget.js',
+'wp-includes/js/l10n.dev.js',
+'wp-includes/js/l10n.js',
+'wp-includes/js/tinymce/plugins/wplink/css',
+'wp-includes/js/tinymce/plugins/wplink/img',
+'wp-includes/js/tinymce/plugins/wplink/js',
+'wp-includes/js/tinymce/themes/advanced/img/wpicons.png',
+'wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/butt2.png',
+'wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/button_bg.png',
+'wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/down_arrow.gif',
+'wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/fade-butt.png',
+'wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/separator.gif',
 );
 
 /**
 );
 
 /**
@@ -335,9 +406,12 @@ function update_core($from, $to) {
        $mysql_version  = $wpdb->db_version();
        $required_php_version = '5.2.4';
        $required_mysql_version = '5.0';
        $mysql_version  = $wpdb->db_version();
        $required_php_version = '5.2.4';
        $required_mysql_version = '5.0';
-       $wp_version = '3.2.1';
+       $wp_version = '3.3';
        $php_compat     = version_compare( $php_version, $required_php_version, '>=' );
        $php_compat     = version_compare( $php_version, $required_php_version, '>=' );
-       $mysql_compat   = version_compare( $mysql_version, $required_mysql_version, '>=' ) || file_exists( WP_CONTENT_DIR . '/db.php' );
+       if ( file_exists( WP_CONTENT_DIR . '/db.php' ) && empty( $wpdb->is_mysql ) )
+               $mysql_compat = true;
+       else
+               $mysql_compat = version_compare( $mysql_version, $required_mysql_version, '>=' );
 
        if ( !$mysql_compat || !$php_compat )
                $wp_filesystem->delete($from, true);
 
        if ( !$mysql_compat || !$php_compat )
                $wp_filesystem->delete($from, true);
@@ -384,7 +458,7 @@ function update_core($from, $to) {
                        $lang_dir = WP_CONTENT_DIR . '/languages';
 
                if ( !@is_dir($lang_dir) && 0 === strpos($lang_dir, ABSPATH) ) { // Check the language directory exists first
                        $lang_dir = WP_CONTENT_DIR . '/languages';
 
                if ( !@is_dir($lang_dir) && 0 === strpos($lang_dir, ABSPATH) ) { // Check the language directory exists first
-                       $wp_filesystem->mkdir($to . str_replace($lang_dir, ABSPATH, ''), FS_CHMOD_DIR); // If it's within the ABSPATH we can handle it here, otherwise they're out of luck.
+                       $wp_filesystem->mkdir($to . str_replace(ABSPATH, '', $lang_dir), FS_CHMOD_DIR); // If it's within the ABSPATH we can handle it here, otherwise they're out of luck.
                        clearstatcache(); // for FTP, Need to clear the stat cache
                }
 
                        clearstatcache(); // for FTP, Need to clear the stat cache
                }
 
@@ -462,6 +536,11 @@ function update_core($from, $to) {
 
        // Remove maintenance file, we're done.
        $wp_filesystem->delete($maintenance_file);
 
        // Remove maintenance file, we're done.
        $wp_filesystem->delete($maintenance_file);
+
+       // If we made it this far:
+       do_action( '_core_updated_successfully', $wp_version );
+
+       return $wp_version;
 }
 
 /**
 }
 
 /**
@@ -519,4 +598,43 @@ function _copy_dir($from, $to, $skip_list = array() ) {
        return true;
 }
 
        return true;
 }
 
-?>
+/**
+ * Redirect to the About WordPress page after a successful upgrade.
+ *
+ * This function is only needed when the existing install is older than 3.3.0.
+ *
+ * @since 3.3.0
+ *
+ */
+function _redirect_to_about_wordpress( $new_version ) {
+       global $wp_version, $pagenow, $action;
+
+       if ( version_compare( $wp_version, '3.3', '>=' ) )
+               return;
+
+       // Ensure we only run this on the update-core.php page. wp_update_core() could be called in other contexts.
+       if ( 'update-core.php' != $pagenow )
+               return;
+
+       if ( 'do-core-upgrade' != $action && 'do-core-reinstall' != $action )
+               return;
+
+       // Load the updated default text localization domain for new strings
+       load_default_textdomain();
+
+       // See do_core_upgrade()
+       show_message( __('WordPress updated successfully') );
+       show_message( '<span class="hide-if-no-js">' . sprintf( __( 'Welcome to WordPress %1$s. You will be redirected to the About WordPress screen. If not, click <a href="%s">here</a>.' ), $new_version, esc_url( admin_url( 'about.php?updated' ) ) ) . '</span>' );
+       show_message( '<span class="hide-if-js">' . sprintf( __( 'Welcome to WordPress %1$s. <a href="%2$s">Learn more</a>.' ), $new_version, esc_url( admin_url( 'about.php?updated' ) ) ) . '</span>' );
+       echo '</div>';
+       ?>
+<script type="text/javascript">
+window.location = '<?php echo admin_url( 'about.php?updated' ); ?>';
+</script>
+       <?php
+
+       // Include admin-footer.php and exit
+       include(ABSPATH . 'wp-admin/admin-footer.php');
+       exit();
+}
+add_action( '_core_updated_successfully', '_redirect_to_about_wordpress' );
index 202f7c45ebd1b78e24860677d84d8946ee39f878..f82402457f87e0df023aea0ac8f8a107bd950f4d 100644 (file)
@@ -26,7 +26,7 @@ function get_preferred_from_update_core() {
  * Get available core updates
  *
  * @param array $options Set $options['dismissed'] to true to show dismissed upgrades too,
  * Get available core updates
  *
  * @param array $options Set $options['dismissed'] to true to show dismissed upgrades too,
- *     set $options['available'] to false to skip not-dimissed updates.
+ *     set $options['available'] to false to skip not-dismissed updates.
  * @return array Array of the update objects
  */
 function get_core_updates( $options = array() ) {
  * @return array Array of the update objects
  */
 function get_core_updates( $options = array() ) {
@@ -82,9 +82,6 @@ function find_core_update( $version, $locale ) {
 }
 
 function core_update_footer( $msg = '' ) {
 }
 
 function core_update_footer( $msg = '' ) {
-       if ( is_multisite() && !current_user_can('update_core') )
-               return false;
-
        if ( !current_user_can('update_core') )
                return sprintf( __( 'Version %s' ), $GLOBALS['wp_version'] );
 
        if ( !current_user_can('update_core') )
                return sprintf( __( 'Version %s' ), $GLOBALS['wp_version'] );
 
@@ -140,15 +137,13 @@ add_action( 'admin_notices', 'update_nag', 3 );
 
 // Called directly from dashboard
 function update_right_now_message() {
 
 // Called directly from dashboard
 function update_right_now_message() {
-       if ( is_multisite() && !current_user_can('update_core') )
-               return false;
-
-       $cur = get_preferred_from_update_core();
-
        $msg = sprintf( __('You are using <span class="b">WordPress %s</span>.'), $GLOBALS['wp_version'] );
 
        $msg = sprintf( __('You are using <span class="b">WordPress %s</span>.'), $GLOBALS['wp_version'] );
 
-       if ( isset( $cur->response ) && $cur->response == 'upgrade' && current_user_can('update_core') ) {
-               $msg .= " <a href='" . network_admin_url( 'update-core.php' ) . "' class='button'>" . sprintf( __('Update to %s'), $cur->current ? $cur->current : __( 'Latest' ) ) . '</a>';
+       if ( current_user_can('update_core') ) {
+               $cur = get_preferred_from_update_core();
+
+               if ( isset( $cur->response ) && $cur->response == 'upgrade'  )
+                       $msg .= " <a href='" . network_admin_url( 'update-core.php' ) . "' class='button'>" . sprintf( __('Update to %s'), $cur->current ? $cur->current : __( 'Latest' ) ) . '</a>';
        }
 
        echo "<span id='wp-version-message'>$msg</span>";
        }
 
        echo "<span id='wp-version-message'>$msg</span>";
index f29f594eda44cebdf7e56a7e2e114819df94963c..646e1ccb5df3342219f8c22b111481881fa3da0d 100644 (file)
@@ -281,7 +281,12 @@ As a new WordPress user, you should go to <a href=\"%s\">your dashboard</a> to d
        update_option( 'widget_archives', array ( 2 => array ( 'title' => '', 'count' => 0, 'dropdown' => 0 ), '_multiwidget' => 1 ) );
        update_option( 'widget_categories', array ( 2 => array ( 'title' => '', 'count' => 0, 'hierarchical' => 0, 'dropdown' => 0 ), '_multiwidget' => 1 ) );
        update_option( 'widget_meta', array ( 2 => array ( 'title' => '' ), '_multiwidget' => 1 ) );
        update_option( 'widget_archives', array ( 2 => array ( 'title' => '', 'count' => 0, 'dropdown' => 0 ), '_multiwidget' => 1 ) );
        update_option( 'widget_categories', array ( 2 => array ( 'title' => '', 'count' => 0, 'hierarchical' => 0, 'dropdown' => 0 ), '_multiwidget' => 1 ) );
        update_option( 'widget_meta', array ( 2 => array ( 'title' => '' ), '_multiwidget' => 1 ) );
-       update_option( 'sidebars_widgets', array ( 'wp_inactive_widgets' => array ( ), 'primary-widget-area' => array ( 0 => 'search-2', 1 => 'recent-posts-2', 2 => 'recent-comments-2', 3 => 'archives-2', 4 => 'categories-2', 5 => 'meta-2', ), 'secondary-widget-area' => array ( ), 'first-footer-widget-area' => array ( ), 'second-footer-widget-area' => array ( ), 'third-footer-widget-area' => array ( ), 'fourth-footer-widget-area' => array ( ), 'array_version' => 3 ) );
+       update_option( 'sidebars_widgets', array ( 'wp_inactive_widgets' => array ( ), 'sidebar-1' => array ( 0 => 'search-2', 1 => 'recent-posts-2', 2 => 'recent-comments-2', 3 => 'archives-2', 4 => 'categories-2', 5 => 'meta-2', ), 'sidebar-2' => array ( ), 'sidebar-3' => array ( ), 'sidebar-4' => array ( ), 'sidebar-5' => array ( ), 'array_version' => 3 ) );
+
+       if ( ! is_multisite() )
+               update_user_meta( $user_id, 'show_welcome_panel', 1 );
+       elseif ( ! is_super_admin( $user_id ) && ! metadata_exists( 'user', $user_id, 'show_welcome_panel' ) )
+               update_user_meta( $user_id, 'show_welcome_panel', 2 );
 
        if ( is_multisite() ) {
                // Flush rules to pick up the new page.
 
        if ( is_multisite() ) {
                // Flush rules to pick up the new page.
@@ -451,6 +456,9 @@ function upgrade_all() {
        if ( $wp_current_db_version < 15260 )
                upgrade_300();
 
        if ( $wp_current_db_version < 15260 )
                upgrade_300();
 
+       if ( $wp_current_db_version < 19389 )
+               upgrade_330();
+
        maybe_disable_automattic_widgets();
 
        update_option( 'db_version', $wp_db_version );
        maybe_disable_automattic_widgets();
 
        update_option( 'db_version', $wp_db_version );
@@ -576,7 +584,7 @@ function upgrade_110() {
 
        if (!$got_gmt_fields) {
 
 
        if (!$got_gmt_fields) {
 
-               // Add or substract time to all dates, to get GMT dates
+               // Add or subtract time to all dates, to get GMT dates
                $add_hours = intval($diff_gmt_weblogger);
                $add_minutes = intval(60 * ($diff_gmt_weblogger - $add_hours));
                $wpdb->query("UPDATE $wpdb->posts SET post_date_gmt = DATE_ADD(post_date, INTERVAL '$add_hours:$add_minutes' HOUR_MINUTE)");
                $add_hours = intval($diff_gmt_weblogger);
                $add_minutes = intval(60 * ($diff_gmt_weblogger - $add_hours));
                $wpdb->query("UPDATE $wpdb->posts SET post_date_gmt = DATE_ADD(post_date, INTERVAL '$add_hours:$add_minutes' HOUR_MINUTE)");
@@ -1122,21 +1130,6 @@ function upgrade_300() {
        if ( $wp_current_db_version < 14139 && is_multisite() && is_main_site() && ! defined( 'MULTISITE' ) && get_site_option( 'siteurl' ) === false )
                add_site_option( 'siteurl', '' );
 
        if ( $wp_current_db_version < 14139 && is_multisite() && is_main_site() && ! defined( 'MULTISITE' ) && get_site_option( 'siteurl' ) === false )
                add_site_option( 'siteurl', '' );
 
-       // 3.0-alpha nav menu postmeta changes. can be removed before release. // r13802
-       if ( $wp_current_db_version >= 13226 && $wp_current_db_version < 13974 )
-               $wpdb->query( "DELETE FROM $wpdb->postmeta WHERE meta_key IN( 'menu_type', 'object_id', 'menu_new_window', 'menu_link', '_menu_item_append', 'menu_item_append', 'menu_item_type', 'menu_item_object_id', 'menu_item_target', 'menu_item_classes', 'menu_item_xfn', 'menu_item_url' )" );
-
-       // 3.0-beta1 remove_user primitive->meta cap. can be removed before release. r13956
-       if ( $wp_current_db_version >= 12751 && $wp_current_db_version < 13974 ) {
-               $role =& get_role( 'administrator' );
-               if ( ! empty( $role ) )
-                       $role->remove_cap( 'remove_user' );
-       }
-
-       // 3.0-beta1 nav menu postmeta changes. can be removed before release. r13974
-       if ( $wp_current_db_version >= 13802 && $wp_current_db_version < 13974 )
-               $wpdb->update( $wpdb->postmeta, array( 'meta_value' => '' ), array( 'meta_key' => '_menu_item_target', 'meta_value' => '_self' ) );
-
        // 3.0 screen options key name changes.
        if ( is_main_site() && !defined('DO_NOT_UPGRADE_GLOBAL_TABLES') ) {
                $prefix = like_escape($wpdb->base_prefix);
        // 3.0 screen options key name changes.
        if ( is_main_site() && !defined('DO_NOT_UPGRADE_GLOBAL_TABLES') ) {
                $prefix = like_escape($wpdb->base_prefix);
@@ -1146,6 +1139,80 @@ function upgrade_300() {
 
 }
 
 
 }
 
+/**
+ * Execute changes made in WordPress 3.3.
+ *
+ * @since 3.3.0
+ */
+function upgrade_330() {
+       global $wp_current_db_version, $wpdb, $wp_registered_widgets, $sidebars_widgets;
+
+       if ( $wp_current_db_version < 19061 && is_main_site() && ! defined( 'DO_NOT_UPGRADE_GLOBAL_TABLES' ) ) {
+               $wpdb->query( "DELETE FROM $wpdb->usermeta WHERE meta_key IN ('show_admin_bar_admin', 'plugins_last_view')" );
+       }
+
+       // 3.3-beta. Can remove before release.
+       if ( $wp_current_db_version > 18715 && $wp_current_db_version < 19389
+               && is_main_site() && ! defined( 'DO_NOT_UPGRADE_GLOBAL_TABLES' ) )
+                       delete_metadata( 'user', 0, 'dismissed_wp_pointers', '', true );
+
+       if ( $wp_current_db_version >= 11548 )
+               return;
+
+       $sidebars_widgets = get_option( 'sidebars_widgets', array() );
+       $_sidebars_widgets = array();
+
+       if ( isset($sidebars_widgets['wp_inactive_widgets']) || empty($sidebars_widgets) )
+               $sidebars_widgets['array_version'] = 3;
+       elseif ( !isset($sidebars_widgets['array_version']) )
+               $sidebars_widgets['array_version'] = 1;
+
+       switch ( $sidebars_widgets['array_version'] ) {
+               case 1 :
+                       foreach ( (array) $sidebars_widgets as $index => $sidebar )
+                       if ( is_array($sidebar) )
+                       foreach ( (array) $sidebar as $i => $name ) {
+                               $id = strtolower($name);
+                               if ( isset($wp_registered_widgets[$id]) ) {
+                                       $_sidebars_widgets[$index][$i] = $id;
+                                       continue;
+                               }
+                               $id = sanitize_title($name);
+                               if ( isset($wp_registered_widgets[$id]) ) {
+                                       $_sidebars_widgets[$index][$i] = $id;
+                                       continue;
+                               }
+
+                               $found = false;
+
+                               foreach ( $wp_registered_widgets as $widget_id => $widget ) {
+                                       if ( strtolower($widget['name']) == strtolower($name) ) {
+                                               $_sidebars_widgets[$index][$i] = $widget['id'];
+                                               $found = true;
+                                               break;
+                                       } elseif ( sanitize_title($widget['name']) == sanitize_title($name) ) {
+                                               $_sidebars_widgets[$index][$i] = $widget['id'];
+                                               $found = true;
+                                               break;
+                                       }
+                               }
+
+                               if ( $found )
+                                       continue;
+
+                               unset($_sidebars_widgets[$index][$i]);
+                       }
+                       $_sidebars_widgets['array_version'] = 2;
+                       $sidebars_widgets = $_sidebars_widgets;
+                       unset($_sidebars_widgets);
+
+               case 2 :
+                       $sidebars_widgets = retrieve_widgets();
+                       $sidebars_widgets['array_version'] = 3;
+                       update_option( 'sidebars_widgets', $sidebars_widgets );
+       }
+}
+
 /**
  * Execute network level changes
  *
 /**
  * Execute network level changes
  *
@@ -1184,6 +1251,13 @@ function upgrade_network() {
        // 3.0
        if ( $wp_current_db_version < 13576 )
                update_site_option( 'global_terms_enabled', '1' );
        // 3.0
        if ( $wp_current_db_version < 13576 )
                update_site_option( 'global_terms_enabled', '1' );
+       // 3.3
+       if ( $wp_current_db_version < 19390 )
+               update_site_option( 'initial_db_version', $wp_current_db_version );
+       if ( $wp_current_db_version < 19470 ) {
+               if ( false === get_site_option( 'active_sitewide_plugins' ) )
+                       update_site_option( 'active_sitewide_plugins', array() );
+       }
 }
 
 // The functions we use to actually do stuff
 }
 
 // The functions we use to actually do stuff
@@ -1374,14 +1448,18 @@ function deslash($content) {
  * @param unknown_type $execute
  * @return unknown
  */
  * @param unknown_type $execute
  * @return unknown
  */
-function dbDelta($queries, $execute = true) {
+function dbDelta( $queries = '', $execute = true ) {
        global $wpdb;
 
        global $wpdb;
 
+       if ( in_array( $queries, array( '', 'all', 'blog', 'global', 'ms_global' ), true ) )
+           $queries = wp_get_db_schema( $queries );
+
        // Separate individual queries into an array
        if ( !is_array($queries) ) {
                $queries = explode( ';', $queries );
                if ('' == $queries[count($queries) - 1]) array_pop($queries);
        }
        // Separate individual queries into an array
        if ( !is_array($queries) ) {
                $queries = explode( ';', $queries );
                if ('' == $queries[count($queries) - 1]) array_pop($queries);
        }
+       $queries = apply_filters( 'dbdelta_queries', $queries );
 
        $cqueries = array(); // Creation Queries
        $iqueries = array(); // Insertion Queries
 
        $cqueries = array(); // Creation Queries
        $iqueries = array(); // Insertion Queries
@@ -1402,161 +1480,159 @@ function dbDelta($queries, $execute = true) {
                        // Unrecognized query type
                }
        }
                        // Unrecognized query type
                }
        }
+       $cqueries = apply_filters( 'dbdelta_create_queries', $cqueries );
+       $iqueries = apply_filters( 'dbdelta_insert_queries', $iqueries );
 
 
-       // Check to see which tables and fields exist
-       if ($tables = $wpdb->get_col('SHOW TABLES;')) {
-               // For every table in the database
-               foreach ($tables as $table) {
-                       // Upgrade global tables only for the main site. Don't upgrade at all if DO_NOT_UPGRADE_GLOBAL_TABLES is defined.
-                       if ( in_array($table, $wpdb->tables('global')) && ( !is_main_site() || defined('DO_NOT_UPGRADE_GLOBAL_TABLES') ) )
-                               continue;
+       $global_tables = $wpdb->tables( 'global' );
+       foreach ( $cqueries as $table => $qry ) {
+               // Upgrade global tables only for the main site. Don't upgrade at all if DO_NOT_UPGRADE_GLOBAL_TABLES is defined.
+               if ( in_array( $table, $global_tables ) && ( !is_main_site() || defined( 'DO_NOT_UPGRADE_GLOBAL_TABLES' ) ) )
+                       continue;
 
 
-                       // If a table query exists for the database table...
-                       if ( array_key_exists(strtolower($table), $cqueries) ) {
-                               // Clear the field and index arrays
-                               $cfields = $indices = array();
-                               // Get all of the field names in the query from between the parens
-                               preg_match("|\((.*)\)|ms", $cqueries[strtolower($table)], $match2);
-                               $qryline = trim($match2[1]);
-
-                               // Separate field lines into an array
-                               $flds = explode("\n", $qryline);
-
-                               //echo "<hr/><pre>\n".print_r(strtolower($table), true).":\n".print_r($cqueries, true)."</pre><hr/>";
-
-                               // For every field line specified in the query
-                               foreach ($flds as $fld) {
-                                       // Extract the field name
-                                       preg_match("|^([^ ]*)|", trim($fld), $fvals);
-                                       $fieldname = trim( $fvals[1], '`' );
-
-                                       // Verify the found field name
-                                       $validfield = true;
-                                       switch (strtolower($fieldname)) {
-                                       case '':
-                                       case 'primary':
-                                       case 'index':
-                                       case 'fulltext':
-                                       case 'unique':
-                                       case 'key':
-                                               $validfield = false;
-                                               $indices[] = trim(trim($fld), ", \n");
-                                               break;
-                                       }
-                                       $fld = trim($fld);
+               // Fetch the table column structure from the database
+               $wpdb->suppress_errors();
+               $tablefields = $wpdb->get_results("DESCRIBE {$table};");
+               $wpdb->suppress_errors( false );
 
 
-                                       // If it's a valid field, add it to the field array
-                                       if ($validfield) {
-                                               $cfields[strtolower($fieldname)] = trim($fld, ", \n");
-                                       }
+               if ( ! $tablefields )
+                       continue;
+
+               // Clear the field and index arrays
+               $cfields = $indices = array();
+               // Get all of the field names in the query from between the parens
+               preg_match("|\((.*)\)|ms", $qry, $match2);
+               $qryline = trim($match2[1]);
+
+               // Separate field lines into an array
+               $flds = explode("\n", $qryline);
+
+               //echo "<hr/><pre>\n".print_r(strtolower($table), true).":\n".print_r($cqueries, true)."</pre><hr/>";
+
+               // For every field line specified in the query
+               foreach ($flds as $fld) {
+                       // Extract the field name
+                       preg_match("|^([^ ]*)|", trim($fld), $fvals);
+                       $fieldname = trim( $fvals[1], '`' );
+
+                       // Verify the found field name
+                       $validfield = true;
+                       switch (strtolower($fieldname)) {
+                       case '':
+                       case 'primary':
+                       case 'index':
+                       case 'fulltext':
+                       case 'unique':
+                       case 'key':
+                               $validfield = false;
+                               $indices[] = trim(trim($fld), ", \n");
+                               break;
+                       }
+                       $fld = trim($fld);
+
+                       // If it's a valid field, add it to the field array
+                       if ($validfield) {
+                               $cfields[strtolower($fieldname)] = trim($fld, ", \n");
+                       }
+               }
+
+               // For every field in the table
+               foreach ($tablefields as $tablefield) {
+                       // If the table field exists in the field array...
+                       if (array_key_exists(strtolower($tablefield->Field), $cfields)) {
+                               // Get the field type from the query
+                               preg_match("|".$tablefield->Field." ([^ ]*( unsigned)?)|i", $cfields[strtolower($tablefield->Field)], $matches);
+                               $fieldtype = $matches[1];
+
+                               // Is actual field type different from the field type in query?
+                               if ($tablefield->Type != $fieldtype) {
+                                       // Add a query to change the column type
+                                       $cqueries[] = "ALTER TABLE {$table} CHANGE COLUMN {$tablefield->Field} " . $cfields[strtolower($tablefield->Field)];
+                                       $for_update[$table.'.'.$tablefield->Field] = "Changed type of {$table}.{$tablefield->Field} from {$tablefield->Type} to {$fieldtype}";
                                }
 
                                }
 
-                               // Fetch the table column structure from the database
-                               $tablefields = $wpdb->get_results("DESCRIBE {$table};");
-
-                               // For every field in the table
-                               foreach ($tablefields as $tablefield) {
-                                       // If the table field exists in the field array...
-                                       if (array_key_exists(strtolower($tablefield->Field), $cfields)) {
-                                               // Get the field type from the query
-                                               preg_match("|".$tablefield->Field." ([^ ]*( unsigned)?)|i", $cfields[strtolower($tablefield->Field)], $matches);
-                                               $fieldtype = $matches[1];
-
-                                               // Is actual field type different from the field type in query?
-                                               if ($tablefield->Type != $fieldtype) {
-                                                       // Add a query to change the column type
-                                                       $cqueries[] = "ALTER TABLE {$table} CHANGE COLUMN {$tablefield->Field} " . $cfields[strtolower($tablefield->Field)];
-                                                       $for_update[$table.'.'.$tablefield->Field] = "Changed type of {$table}.{$tablefield->Field} from {$tablefield->Type} to {$fieldtype}";
-                                               }
-
-                                               // Get the default value from the array
-                                                       //echo "{$cfields[strtolower($tablefield->Field)]}<br>";
-                                               if (preg_match("| DEFAULT '(.*)'|i", $cfields[strtolower($tablefield->Field)], $matches)) {
-                                                       $default_value = $matches[1];
-                                                       if ($tablefield->Default != $default_value) {
-                                                               // Add a query to change the column's default value
-                                                               $cqueries[] = "ALTER TABLE {$table} ALTER COLUMN {$tablefield->Field} SET DEFAULT '{$default_value}'";
-                                                               $for_update[$table.'.'.$tablefield->Field] = "Changed default value of {$table}.{$tablefield->Field} from {$tablefield->Default} to {$default_value}";
-                                                       }
-                                               }
-
-                                               // Remove the field from the array (so it's not added)
-                                               unset($cfields[strtolower($tablefield->Field)]);
-                                       } else {
-                                               // This field exists in the table, but not in the creation queries?
+                               // Get the default value from the array
+                                       //echo "{$cfields[strtolower($tablefield->Field)]}<br>";
+                               if (preg_match("| DEFAULT '(.*)'|i", $cfields[strtolower($tablefield->Field)], $matches)) {
+                                       $default_value = $matches[1];
+                                       if ($tablefield->Default != $default_value) {
+                                               // Add a query to change the column's default value
+                                               $cqueries[] = "ALTER TABLE {$table} ALTER COLUMN {$tablefield->Field} SET DEFAULT '{$default_value}'";
+                                               $for_update[$table.'.'.$tablefield->Field] = "Changed default value of {$table}.{$tablefield->Field} from {$tablefield->Default} to {$default_value}";
                                        }
                                }
 
                                        }
                                }
 
-                               // For every remaining field specified for the table
-                               foreach ($cfields as $fieldname => $fielddef) {
-                                       // Push a query line into $cqueries that adds the field to that table
-                                       $cqueries[] = "ALTER TABLE {$table} ADD COLUMN $fielddef";
-                                       $for_update[$table.'.'.$fieldname] = 'Added column '.$table.'.'.$fieldname;
-                               }
+                               // Remove the field from the array (so it's not added)
+                               unset($cfields[strtolower($tablefield->Field)]);
+                       } else {
+                               // This field exists in the table, but not in the creation queries?
+                       }
+               }
 
 
-                               // Index stuff goes here
-                               // Fetch the table index structure from the database
-                               $tableindices = $wpdb->get_results("SHOW INDEX FROM {$table};");
+               // For every remaining field specified for the table
+               foreach ($cfields as $fieldname => $fielddef) {
+                       // Push a query line into $cqueries that adds the field to that table
+                       $cqueries[] = "ALTER TABLE {$table} ADD COLUMN $fielddef";
+                       $for_update[$table.'.'.$fieldname] = 'Added column '.$table.'.'.$fieldname;
+               }
 
 
-                               if ($tableindices) {
-                                       // Clear the index array
-                                       unset($index_ary);
+               // Index stuff goes here
+               // Fetch the table index structure from the database
+               $tableindices = $wpdb->get_results("SHOW INDEX FROM {$table};");
 
 
-                                       // For every index in the table
-                                       foreach ($tableindices as $tableindex) {
-                                               // Add the index to the index data array
-                                               $keyname = $tableindex->Key_name;
-                                               $index_ary[$keyname]['columns'][] = array('fieldname' => $tableindex->Column_name, 'subpart' => $tableindex->Sub_part);
-                                               $index_ary[$keyname]['unique'] = ($tableindex->Non_unique == 0)?true:false;
-                                       }
+               if ($tableindices) {
+                       // Clear the index array
+                       unset($index_ary);
+
+                       // For every index in the table
+                       foreach ($tableindices as $tableindex) {
+                               // Add the index to the index data array
+                               $keyname = $tableindex->Key_name;
+                               $index_ary[$keyname]['columns'][] = array('fieldname' => $tableindex->Column_name, 'subpart' => $tableindex->Sub_part);
+                               $index_ary[$keyname]['unique'] = ($tableindex->Non_unique == 0)?true:false;
+                       }
 
 
-                                       // For each actual index in the index array
-                                       foreach ($index_ary as $index_name => $index_data) {
-                                               // Build a create string to compare to the query
-                                               $index_string = '';
-                                               if ($index_name == 'PRIMARY') {
-                                                       $index_string .= 'PRIMARY ';
-                                               } else if($index_data['unique']) {
-                                                       $index_string .= 'UNIQUE ';
-                                               }
-                                               $index_string .= 'KEY ';
-                                               if ($index_name != 'PRIMARY') {
-                                                       $index_string .= $index_name;
-                                               }
-                                               $index_columns = '';
-                                               // For each column in the index
-                                               foreach ($index_data['columns'] as $column_data) {
-                                                       if ($index_columns != '') $index_columns .= ',';
-                                                       // Add the field to the column list string
-                                                       $index_columns .= $column_data['fieldname'];
-                                                       if ($column_data['subpart'] != '') {
-                                                               $index_columns .= '('.$column_data['subpart'].')';
-                                                       }
-                                               }
-                                               // Add the column list to the index create string
-                                               $index_string .= ' ('.$index_columns.')';
-                                               if (!(($aindex = array_search($index_string, $indices)) === false)) {
-                                                       unset($indices[$aindex]);
-                                                       //echo "<pre style=\"border:1px solid #ccc;margin-top:5px;\">{$table}:<br />Found index:".$index_string."</pre>\n";
-                                               }
-                                               //else echo "<pre style=\"border:1px solid #ccc;margin-top:5px;\">{$table}:<br /><b>Did not find index:</b>".$index_string."<br />".print_r($indices, true)."</pre>\n";
+                       // For each actual index in the index array
+                       foreach ($index_ary as $index_name => $index_data) {
+                               // Build a create string to compare to the query
+                               $index_string = '';
+                               if ($index_name == 'PRIMARY') {
+                                       $index_string .= 'PRIMARY ';
+                               } else if($index_data['unique']) {
+                                       $index_string .= 'UNIQUE ';
+                               }
+                               $index_string .= 'KEY ';
+                               if ($index_name != 'PRIMARY') {
+                                       $index_string .= $index_name;
+                               }
+                               $index_columns = '';
+                               // For each column in the index
+                               foreach ($index_data['columns'] as $column_data) {
+                                       if ($index_columns != '') $index_columns .= ',';
+                                       // Add the field to the column list string
+                                       $index_columns .= $column_data['fieldname'];
+                                       if ($column_data['subpart'] != '') {
+                                               $index_columns .= '('.$column_data['subpart'].')';
                                        }
                                }
                                        }
                                }
-
-                               // For every remaining index specified for the table
-                               foreach ( (array) $indices as $index ) {
-                                       // Push a query line into $cqueries that adds the index to that table
-                                       $cqueries[] = "ALTER TABLE {$table} ADD $index";
-                                       $for_update[$table.'.'.$fieldname] = 'Added index '.$table.' '.$index;
+                               // Add the column list to the index create string
+                               $index_string .= ' ('.$index_columns.')';
+                               if (!(($aindex = array_search($index_string, $indices)) === false)) {
+                                       unset($indices[$aindex]);
+                                       //echo "<pre style=\"border:1px solid #ccc;margin-top:5px;\">{$table}:<br />Found index:".$index_string."</pre>\n";
                                }
                                }
-
-                               // Remove the original table creation query from processing
-                               unset($cqueries[strtolower($table)]);
-                               unset($for_update[strtolower($table)]);
-                       } else {
-                               // This table exists in the database, but not in the creation queries?
+                               //else echo "<pre style=\"border:1px solid #ccc;margin-top:5px;\">{$table}:<br /><b>Did not find index:</b>".$index_string."<br />".print_r($indices, true)."</pre>\n";
                        }
                }
                        }
                }
+
+               // For every remaining index specified for the table
+               foreach ( (array) $indices as $index ) {
+                       // Push a query line into $cqueries that adds the index to that table
+                       $cqueries[] = "ALTER TABLE {$table} ADD $index";
+                       $for_update[$table.'.'.$fieldname] = 'Added index '.$table.' '.$index;
+               }
+
+               // Remove the original table creation query from processing
+               unset( $cqueries[ $table ], $for_update[ $table ] );
        }
 
        $allqueries = array_merge($cqueries, $iqueries);
        }
 
        $allqueries = array_merge($cqueries, $iqueries);
@@ -1577,10 +1653,8 @@ function dbDelta($queries, $execute = true) {
  *
  * @since 1.5.0
  */
  *
  * @since 1.5.0
  */
-function make_db_current() {
-       global $wp_queries;
-
-       $alterations = dbDelta($wp_queries);
+function make_db_current( $tables = 'all' ) {
+       $alterations = dbDelta( $tables );
        echo "<ol>\n";
        foreach($alterations as $alteration) echo "<li>$alteration</li>\n";
        echo "</ol>\n";
        echo "<ol>\n";
        foreach($alterations as $alteration) echo "<li>$alteration</li>\n";
        echo "</ol>\n";
@@ -1593,10 +1667,8 @@ function make_db_current() {
  *
  * @since 1.5.0
  */
  *
  * @since 1.5.0
  */
-function make_db_current_silent() {
-       global $wp_queries;
-
-       $alterations = dbDelta($wp_queries);
+function make_db_current_silent(  $tables = 'all' ) {
+       $alterations = dbDelta( $tables );
 }
 
 /**
 }
 
 /**
@@ -1618,7 +1690,7 @@ function make_site_theme_from_oldschool($theme_name, $template) {
                return false;
 
        // Copy files from the old locations to the site theme.
                return false;
 
        // Copy files from the old locations to the site theme.
-       // TODO: This does not copy arbitarary include dependencies.  Only the
+       // TODO: This does not copy arbitrary include dependencies.  Only the
        // standard WP files are copied.
        $files = array('index.php' => 'index.php', 'wp-layout.css' => 'style.css', 'wp-comments.php' => 'comments.php', 'wp-comments-popup.php' => 'comments-popup.php');
 
        // standard WP files are copied.
        $files = array('index.php' => 'index.php', 'wp-layout.css' => 'style.css', 'wp-comments.php' => 'comments.php', 'wp-comments-popup.php' => 'comments-popup.php');
 
@@ -1878,102 +1950,6 @@ function pre_schema_upgrade() {
 
 }
 
 
 }
 
-/**
- * Install Network.
- *
- * @since 3.0.0
- *
- */
-if ( !function_exists( 'install_network' ) ) :
-function install_network() {
-       global $wpdb, $charset_collate;
-       $ms_queries = "
-CREATE TABLE $wpdb->users (
-  ID bigint(20) unsigned NOT NULL auto_increment,
-  user_login varchar(60) NOT NULL default '',
-  user_pass varchar(64) NOT NULL default '',
-  user_nicename varchar(50) NOT NULL default '',
-  user_email varchar(100) NOT NULL default '',
-  user_url varchar(100) NOT NULL default '',
-  user_registered datetime NOT NULL default '0000-00-00 00:00:00',
-  user_activation_key varchar(60) NOT NULL default '',
-  user_status int(11) NOT NULL default '0',
-  display_name varchar(250) NOT NULL default '',
-  spam tinyint(2) NOT NULL default '0',
-  deleted tinyint(2) NOT NULL default '0',
-  PRIMARY KEY  (ID),
-  KEY user_login_key (user_login),
-  KEY user_nicename (user_nicename)
-) $charset_collate;
-CREATE TABLE $wpdb->blogs (
-  blog_id bigint(20) NOT NULL auto_increment,
-  site_id bigint(20) NOT NULL default '0',
-  domain varchar(200) NOT NULL default '',
-  path varchar(100) NOT NULL default '',
-  registered datetime NOT NULL default '0000-00-00 00:00:00',
-  last_updated datetime NOT NULL default '0000-00-00 00:00:00',
-  public tinyint(2) NOT NULL default '1',
-  archived enum('0','1') NOT NULL default '0',
-  mature tinyint(2) NOT NULL default '0',
-  spam tinyint(2) NOT NULL default '0',
-  deleted tinyint(2) NOT NULL default '0',
-  lang_id int(11) NOT NULL default '0',
-  PRIMARY KEY  (blog_id),
-  KEY domain (domain(50),path(5)),
-  KEY lang_id (lang_id)
-) $charset_collate;
-CREATE TABLE $wpdb->blog_versions (
-  blog_id bigint(20) NOT NULL default '0',
-  db_version varchar(20) NOT NULL default '',
-  last_updated datetime NOT NULL default '0000-00-00 00:00:00',
-  PRIMARY KEY  (blog_id),
-  KEY db_version (db_version)
-) $charset_collate;
-CREATE TABLE $wpdb->registration_log (
-  ID bigint(20) NOT NULL auto_increment,
-  email varchar(255) NOT NULL default '',
-  IP varchar(30) NOT NULL default '',
-  blog_id bigint(20) NOT NULL default '0',
-  date_registered datetime NOT NULL default '0000-00-00 00:00:00',
-  PRIMARY KEY  (ID),
-  KEY IP (IP)
-) $charset_collate;
-CREATE TABLE $wpdb->site (
-  id bigint(20) NOT NULL auto_increment,
-  domain varchar(200) NOT NULL default '',
-  path varchar(100) NOT NULL default '',
-  PRIMARY KEY  (id),
-  KEY domain (domain,path)
-) $charset_collate;
-CREATE TABLE $wpdb->sitemeta (
-  meta_id bigint(20) NOT NULL auto_increment,
-  site_id bigint(20) NOT NULL default '0',
-  meta_key varchar(255) default NULL,
-  meta_value longtext,
-  PRIMARY KEY  (meta_id),
-  KEY meta_key (meta_key),
-  KEY site_id (site_id)
-) $charset_collate;
-CREATE TABLE $wpdb->signups (
-  domain varchar(200) NOT NULL default '',
-  path varchar(100) NOT NULL default '',
-  title longtext NOT NULL,
-  user_login varchar(60) NOT NULL default '',
-  user_email varchar(100) NOT NULL default '',
-  registered datetime NOT NULL default '0000-00-00 00:00:00',
-  activated datetime NOT NULL default '0000-00-00 00:00:00',
-  active tinyint(1) NOT NULL default '0',
-  activation_key varchar(50) NOT NULL default '',
-  meta longtext,
-  KEY activation_key (activation_key),
-  KEY domain (domain)
-) $charset_collate;
-";
-// now create tables
-       dbDelta( $ms_queries );
-}
-endif;
-
 /**
  * Install global terms.
  *
 /**
  * Install global terms.
  *
index 758c065a6c5e9b7498edb1b638a7a0460253c74f..816a9e79ff45e013378c26c41ce44e8bd05d0b66 100644 (file)
@@ -119,7 +119,6 @@ function edit_user( $user_id = 0 ) {
                $user->rich_editing = isset( $_POST['rich_editing'] ) && 'false' == $_POST['rich_editing'] ? 'false' : 'true';
                $user->admin_color = isset( $_POST['admin_color'] ) ? sanitize_text_field( $_POST['admin_color'] ) : 'fresh';
                $user->show_admin_bar_front = isset( $_POST['admin_bar_front'] ) ? 'true' : 'false';
                $user->rich_editing = isset( $_POST['rich_editing'] ) && 'false' == $_POST['rich_editing'] ? 'false' : 'true';
                $user->admin_color = isset( $_POST['admin_color'] ) ? sanitize_text_field( $_POST['admin_color'] ) : 'fresh';
                $user->show_admin_bar_front = isset( $_POST['admin_bar_front'] ) ? 'true' : 'false';
-               $user->show_admin_bar_admin = isset( $_POST['admin_bar_admin'] ) ? 'true' : 'false';
        }
 
        $user->comment_shortcuts = isset( $_POST['comment_shortcuts'] ) && 'true' == $_POST['comment_shortcuts'] ? 'true' : '';
        }
 
        $user->comment_shortcuts = isset( $_POST['comment_shortcuts'] ) && 'true' == $_POST['comment_shortcuts'] ? 'true' : '';
@@ -196,7 +195,7 @@ function edit_user( $user_id = 0 ) {
  *
  * Simple function who's main purpose is to allow filtering of the
  * list of roles in the $wp_roles object so that plugins can remove
  *
  * Simple function who's main purpose is to allow filtering of the
  * list of roles in the $wp_roles object so that plugins can remove
- * innappropriate ones depending on the situation or user making edits.
+ * inappropriate ones depending on the situation or user making edits.
  * Specifically because without filtering anyone with the edit_users
  * capability can edit others to be administrators, even if they are
  * only editors or authors. This filter allows admins to delegate
  * Specifically because without filtering anyone with the edit_users
  * capability can edit others to be administrators, even if they are
  * only editors or authors. This filter allows admins to delegate
@@ -226,16 +225,7 @@ function get_editable_roles() {
 function get_user_to_edit( $user_id ) {
        $user = new WP_User( $user_id );
 
 function get_user_to_edit( $user_id ) {
        $user = new WP_User( $user_id );
 
-       $user_contactmethods = _wp_get_user_contactmethods( $user );
-       foreach ($user_contactmethods as $method => $name) {
-               if ( empty( $user->{$method} ) )
-                       $user->{$method} = '';
-       }
-
-       if ( empty($user->description) )
-               $user->description = '';
-
-       $user = sanitize_user_object($user, 'edit');
+       $user->filter = 'edit';
 
        return $user;
 }
 
        return $user;
 }
@@ -338,7 +328,7 @@ function default_password_nag_handler($errors = false) {
        if ( ! get_user_option('default_password_nag') ) //Short circuit it.
                return;
 
        if ( ! get_user_option('default_password_nag') ) //Short circuit it.
                return;
 
-       //get_user_setting = JS saved UI setting. else no-js-falback code.
+       //get_user_setting = JS saved UI setting. else no-js-fallback code.
        if ( 'hide' == get_user_setting('default_password_nag') || isset($_GET['default_password_nag']) && '0' == $_GET['default_password_nag'] ) {
                delete_user_setting('default_password_nag');
                update_user_option($user_ID, 'default_password_nag', false, true);
        if ( 'hide' == get_user_setting('default_password_nag') || isset($_GET['default_password_nag']) && '0' == $_GET['default_password_nag'] ) {
                delete_user_setting('default_password_nag');
                update_user_option($user_ID, 'default_password_nag', false, true);
index 6b7d63515c63b27a706e1be0e4935c6d76dec926..aed123601988a3e81cfeab8bb3a71953112b314d 100644 (file)
@@ -160,7 +160,7 @@ function wp_widget_control( $sidebar_args ) {
                $query_arg['key'] = $key;
        }
 
                $query_arg['key'] = $key;
        }
 
-       // We aren't showing a widget control, we're outputing a template for a mult-widget control
+       // We aren't showing a widget control, we're outputting a template for a multi-widget control
        if ( isset($sidebar_args['_display']) && 'template' == $sidebar_args['_display'] && $widget_number ) {
                // number == -1 implies a template where id numbers are replaced by a generic '__i__'
                $control['params'][0]['number'] = -1;
        if ( isset($sidebar_args['_display']) && 'template' == $sidebar_args['_display'] && $widget_number ) {
                // number == -1 implies a template where id numbers are replaced by a generic '__i__'
                $control['params'][0]['number'] = -1;
index 35b041de64924e5315751200bcaa3d70955a6894..b7b40bb87ba0ceade7bfd741bd1e9d7aa6443c5e 100644 (file)
@@ -17,8 +17,6 @@ wp_dashboard_setup();
 wp_enqueue_script( 'dashboard' );
 wp_enqueue_script( 'plugin-install' );
 wp_enqueue_script( 'media-upload' );
 wp_enqueue_script( 'dashboard' );
 wp_enqueue_script( 'plugin-install' );
 wp_enqueue_script( 'media-upload' );
-wp_admin_css( 'dashboard' );
-wp_admin_css( 'plugin-install' );
 add_thickbox();
 
 $title = __('Dashboard');
 add_thickbox();
 
 $title = __('Dashboard');
@@ -29,21 +27,56 @@ if ( is_user_admin() )
 else
        add_screen_option('layout_columns', array('max' => 4, 'default' => 2) );
 
 else
        add_screen_option('layout_columns', array('max' => 4, 'default' => 2) );
 
-add_contextual_help($current_screen,
-
-       '<p>' . __( 'Welcome to your WordPress Dashboard! You will find helpful tips in the Help tab of each screen to assist you as you get to know the application.' ) . '</p>' .
-       '<p>' . __( 'The Admin Bar at the top provides quick access to common tasks when you are viewing your site. If you miss the Favorite Actions dropdown, removed as of 3.2, you can find many of the same actions in the Admin Bar, such as Add New > Post.' ) . '</p>' .
-       '<p>' . __( 'The left-hand navigation menu provides links to the administration screens in your WordPress application. You can expand or collapse navigation sections by clicking on the arrow that appears on the right side of each navigation item when you hover over it. You can also minimize the navigation menu to a narrow icon strip by clicking on the Collapse Menu arrow at the bottom of the nav menu, below Settings; when minimized, the submenu items will be displayed on hover.' ) . '</p>' .
-       '<p>' . __( 'You can arrange your dashboard by choosing which boxes, or modules, to display in the work area, how many columns to display them in, and where each box should be placed. You can hide/show boxes and select the number of columns in the Screen Options tab. To rearrange the boxes, drag and drop by clicking on the title bar of the selected box and releasing when you see a gray dotted-line rectangle appear in the location you want to place the box. You can also expand or collapse each box; click the title area or downward arrow of the box. In addition, some boxes are configurable, and will show a &#8220;Configure&#8221; link in the title bar if you hover over it.' ) . '</p>' .
-       '<p>' . __( 'The boxes on your Dashboard screen are:' ) . '</p>' .
-       '<p>' . __( '<strong>Right Now</strong> - Displays a summary of the content on your site and identifies which theme and version of WordPress you are using.' ) . '</p>' .
-       '<p>' . __( '<strong>Recent Comments</strong> - Shows the most recent comments on your posts (configurable, up to 30) and allows you to moderate them.' ) . '</p>' .
-       '<p>' . __( '<strong>Incoming Links</strong> - Shows links to your site found by Google Blog Search.' ) . '</p>' .
-       '<p>' . __( '<strong>QuickPress</strong> - Allows you to create a new post and either publish it or save it as a draft.' ) . '</p>' .
-       '<p>' . __( '<strong>Recent Drafts</strong> - Displays links to the 5 most recent draft posts you&#8217;ve started.' ) . '</p>' .
-       '<p>' . __( '<strong>WordPress Blog</strong> - Come here for the latest scoop.' ) . '</p>' .
-       '<p>' . __( '<strong>Other WordPress News</strong> - Shows the feed from <a href="http://planet.wordpress.org" target="_blank">WordPress Planet</a>. You can configure it to show a different feed of your choosing.' ) . '</p>' .
-       '<p>' . __( '<strong>Plugins</strong> - Features the most popular, newest, and recently updated plugins from the WordPress.org Plugin Directory.' ) . '</p>' .
+
+$help = '<p>' . __( 'Welcome to your WordPress Dashboard! This is the screen you will see when you log in to your site, and gives you access to all the site management features of WordPress. You can get help for any screen by clicking the Help tab in the upper corner.' ) . '</p>';
+
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __( 'Overview' ),
+       'content' => $help,
+) );
+
+// Help tabs
+
+$help  = '<p>' . __('The left-hand navigation menu provides links to all of the WordPress administration screens, with submenu items displayed on hover. You can minimize this menu to a narrow icon strip by clicking on the Collapse Menu arrow at the bottom.') . '</p>';
+$help .= '<p>' . __('Links in the Toolbar at the top of the screen connect your dashboard and the front end of your site, and provide access to your profile and helpful WordPress information.') . '</p>';
+
+get_current_screen()->add_help_tab( array(
+       'id'      => 'help-navigation',
+       'title'   => __('Navigation'),
+       'content' => $help,
+) );
+
+$help  = '<p>' . __('You can use the following controls to arrange your Dashboard screen to suit your workflow. This is true on most other administration screens as well.') . '</p>';
+$help .= '<p>' . __('<strong>Screen Options</strong> - Use the Screen Options tab to choose which Dashboard boxes to show, and how many columns to display.') . '</p>';
+$help .= '<p>' . __('<strong>Drag and Drop</strong> - To rearrange the boxes, drag and drop by clicking on the title bar of the selected box and releasing when you see a gray dotted-line rectangle appear in the location you want to place the box.') . '</p>';
+$help .= '<p>' . __('<strong>Box Controls</strong> - Click the title bar of the box to expand or collapse it. In addition, some box have configurable content, and will show a &#8220;Configure&#8221; link in the title bar if you hover over it.') . '</p>';
+
+get_current_screen()->add_help_tab( array(
+       'id'      => 'help-layout',
+       'title'   => __('Layout'),
+       'content' => $help,
+) );
+
+$help  = '<p>' . __('The boxes on your Dashboard screen are:') . '</p>';
+$help .= '<p>' . __('<strong>Right Now</strong> - Displays a summary of the content on your site and identifies which theme and version of WordPress you are using.') . '</p>';
+$help .= '<p>' . __('<strong>Recent Comments</strong> - Shows the most recent comments on your posts (configurable, up to 30) and allows you to moderate them.') . '</p>';
+$help .= '<p>' . __('<strong>Incoming Links</strong> - Shows links to your site found by Google Blog Search.') . '</p>';
+$help .= '<p>' . __('<strong>QuickPress</strong> - Allows you to create a new post and either publish it or save it as a draft.') . '</p>';
+$help .= '<p>' . __('<strong>Recent Drafts</strong> - Displays links to the 5 most recent draft posts you&#8217;ve started.') . '</p>';
+$help .= '<p>' . __('<strong>WordPress Blog</strong> - Latest news from the official WordPress project.') . '</p>';
+$help .= '<p>' . __('<strong>Other WordPress News</strong> - Shows the <a href="http://planet.wordpress.org" target="_blank">WordPress Planet</a> feed. You can configure it to show a different feed of your choosing.') . '</p>';
+$help .= '<p>' . __('<strong>Plugins</strong> - Features the most popular, newest, and recently updated plugins from the WordPress.org Plugin Directory.') . '</p>';
+
+get_current_screen()->add_help_tab( array(
+       'id'      => 'help-content',
+       'title'   => __('Content'),
+       'content' => $help,
+) );
+
+unset( $help );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __( 'For more information:' ) . '</strong></p>' .
        '<p>' . __( '<a href="http://codex.wordpress.org/Dashboard_Screen" target="_blank">Documentation on Dashboard</a>' ) . '</p>' .
        '<p>' . __( '<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>' ) . '</p>'
        '<p><strong>' . __( 'For more information:' ) . '</strong></p>' .
        '<p>' . __( '<a href="http://codex.wordpress.org/Dashboard_Screen" target="_blank">Documentation on Dashboard</a>' ) . '</p>' .
        '<p>' . __( '<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>' ) . '</p>'
@@ -58,6 +91,8 @@ $today = current_time('mysql', 1);
 <?php screen_icon(); ?>
 <h2><?php echo esc_html( $title ); ?></h2>
 
 <?php screen_icon(); ?>
 <h2><?php echo esc_html( $title ); ?></h2>
 
+<?php wp_welcome_panel(); ?>
+
 <div id="dashboard-widgets-wrap">
 
 <?php wp_dashboard(); ?>
 <div id="dashboard-widgets-wrap">
 
 <?php wp_dashboard(); ?>
index 0b65f5236d97477ed9a2ca6c0fe42d5266fda723..edbc8c0136b354d69f4b9a99ac8e37b9bd0f9529 100644 (file)
@@ -9,7 +9,7 @@
 // Sanity check.
 if ( false ) {
 ?>
 // Sanity check.
 if ( false ) {
 ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html>
 <html xmlns="http://www.w3.org/1999/xhtml" >
 <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <html xmlns="http://www.w3.org/1999/xhtml" >
 <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
@@ -53,14 +53,14 @@ $step = isset( $_GET['step'] ) ? $_GET['step'] : 0;
 function display_header() {
        header( 'Content-Type: text/html; charset=utf-8' );
 ?>
 function display_header() {
        header( 'Content-Type: text/html; charset=utf-8' );
 ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html>
 <html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>>
 <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title><?php _e( 'WordPress &rsaquo; Installation' ); ?></title>
        <?php wp_admin_css( 'install', true ); ?>
 </head>
 <html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>>
 <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title><?php _e( 'WordPress &rsaquo; Installation' ); ?></title>
        <?php wp_admin_css( 'install', true ); ?>
 </head>
-<body>
+<body<?php if ( is_rtl() ) echo ' class="rtl"'; ?>>
 <h1 id="logo"><img alt="WordPress" src="images/wordpress-logo.png" /></h1>
 
 <?php
 <h1 id="logo"><img alt="WordPress" src="images/wordpress-logo.png" /></h1>
 
 <?php
@@ -130,6 +130,7 @@ function display_setup_form( $error = null ) {
                        <p><?php _e( 'Double-check your email address before continuing.' ); ?></p></td>
                </tr>
                <tr>
                        <p><?php _e( 'Double-check your email address before continuing.' ); ?></p></td>
                </tr>
                <tr>
+                       <th scope="row"><label for="blog_public"><?php _e( 'Privacy' ); ?></label></th>
                        <td colspan="2"><label><input type="checkbox" name="blog_public" value="1" <?php checked( $blog_public ); ?> /> <?php _e( 'Allow my site to appear in search engines like Google and Technorati.' ); ?></label></td>
                </tr>
        </table>
                        <td colspan="2"><label><input type="checkbox" name="blog_public" value="1" <?php checked( $blog_public ); ?> /> <?php _e( 'Allow my site to appear in search engines like Google and Technorati.' ); ?></label></td>
                </tr>
        </table>
@@ -220,10 +221,10 @@ switch($step) {
 
 <p><?php _e( 'WordPress has been installed. Were you expecting more steps? Sorry to disappoint.' ); ?></p>
 
 
 <p><?php _e( 'WordPress has been installed. Were you expecting more steps? Sorry to disappoint.' ); ?></p>
 
-<table class="form-table">
+<table class="form-table install-success">
        <tr>
                <th><?php _e( 'Username' ); ?></th>
        <tr>
                <th><?php _e( 'Username' ); ?></th>
-               <td><code><?php echo esc_html( sanitize_user( $user_name, true ) ); ?></code></td>
+               <td><?php echo esc_html( sanitize_user( $user_name, true ) ); ?></td>
        </tr>
        <tr>
                <th><?php _e( 'Password' ); ?></th>
        </tr>
        <tr>
                <th><?php _e( 'Password' ); ?></th>
@@ -243,22 +244,6 @@ switch($step) {
 }
 ?>
 <script type="text/javascript">var t = document.getElementById('weblog_title'); if (t){ t.focus(); }</script>
 }
 ?>
 <script type="text/javascript">var t = document.getElementById('weblog_title'); if (t){ t.focus(); }</script>
-<script type="text/javascript" src="../wp-includes/js/jquery/jquery.js"></script>
-<script type="text/javascript" src="js/password-strength-meter.js"></script>
-<script type="text/javascript" src="js/user-profile.js"></script>
-<script type="text/javascript" src="../wp-includes/js/l10n.js"></script>
-<script type='text/javascript'>
-/* <![CDATA[ */
-var pwsL10n = {
- empty: "<?php echo esc_js( __( 'Strength indicator' ) ); ?>",
- short: "<?php echo esc_js( __( 'Very weak' ) ); ?>",
- bad: "<?php echo esc_js( __( 'Weak' ) ); ?>",
- good: "<?php echo esc_js( _x( 'Medium', 'password strength' ) ); ?>",
- strong: "<?php echo esc_js( __( 'Strong' ) ); ?>",
- mismatch: "<?php echo esc_js( __( 'Mismatch' ) ); ?>"
-};
-try{convertEntities(pwsL10n);}catch(e){};
-/* ]]> */
-</script>
+<?php wp_print_scripts( 'user-profile' ); ?>
 </body>
 </html>
 </body>
 </html>
index 5ab98eddc543fbeba800250656633119ee4b048f..b8ee100ea118aab34966fb64e41f667ca62b8e40 100644 (file)
-var showNotice, adminMenu, columns, validateForm, screenMeta;
+var showNotice, adminMenu, columns, validateForm, screenMeta, autofold_menu;
 (function($){
 (function($){
-// sidebar admin menu
+// Removed in 3.3.
+// (perhaps) needed for back-compat
 adminMenu = {
 adminMenu = {
-       init : function() {
-               var menu = $('#adminmenu');
-
-               $('.wp-menu-toggle', menu).each( function() {
-                       var t = $(this), sub = t.siblings('.wp-submenu');
-                       if ( sub.length )
-                               t.click(function(){ adminMenu.toggle( sub ); });
-                       else
-                               t.hide();
-               });
-
-               this.favorites();
-
-               $('#collapse-menu', menu).click(function(){
-                       if ( $('body').hasClass('folded') ) {
-                               adminMenu.fold(1);
-                               deleteUserSetting( 'mfold' );
-                       } else {
-                               adminMenu.fold();
-                               setUserSetting( 'mfold', 'f' );
-                       }
-                       return false;
-               });
-
-               if ( $('body').hasClass('folded') )
-                       this.fold();
-       },
-
-       restoreMenuState : function() {
-               // (perhaps) needed for back-compat
-       },
-
-       toggle : function(el) {
-               el.slideToggle(150, function() {
-                       var id = el.css('display','').parent().toggleClass( 'wp-menu-open' ).attr('id');
-                       if ( id ) {
-                               $('li.wp-has-submenu', '#adminmenu').each(function(i, e) {
-                                       if ( id == e.id ) {
-                                               var v = $(e).hasClass('wp-menu-open') ? 'o' : 'c';
-                                               setUserSetting( 'm'+i, v );
-                                       }
-                               });
-                       }
-               });
-
-               return false;
-       },
-
-       fold : function(off) {
-               if (off) {
-                       $('body').removeClass('folded');
-                       $('#adminmenu li.wp-has-submenu').unbind();
-               } else {
-                       $('body').addClass('folded');
-                       $('#adminmenu li.wp-has-submenu').hoverIntent({
-                               over: function(e){
-                                       var m, b, h, o, f;
-                                       m = $(this).find('.wp-submenu');
-                                       b = $(this).offset().top + m.height() + 1; // Bottom offset of the menu
-                                       h = $('#wpwrap').height(); // Height of the entire page
-                                       o = 60 + b - h;
-                                       f = $(window).height() + $(window).scrollTop() - 15; // The fold
-                                       if ( f < (b - o) ) {
-                                               o = b - f;
-                                       }
-                                       if ( o > 1 ) {
-                                               m.css({'marginTop':'-'+o+'px'});
-                                       } else if ( m.css('marginTop') ) {
-                                               m.css({'marginTop':''});
-                                       }
-                                       m.addClass('sub-open');
-                               },
-                               out: function(){
-                                       $(this).find('.wp-submenu').removeClass('sub-open');
-                               },
-                               timeout: 220,
-                               sensitivity: 8,
-                               interval: 100
-                       });
-
-               }
-       },
-
-       favorites : function() {
-               $('#favorite-inside').width( $('#favorite-actions').width() - 4 );
-               $('#favorite-toggle, #favorite-inside').bind('mouseenter', function() {
-                       $('#favorite-inside').removeClass('slideUp').addClass('slideDown');
-                       setTimeout(function() {
-                               if ( $('#favorite-inside').hasClass('slideDown') ) {
-                                       $('#favorite-inside').slideDown(100);
-                                       $('#favorite-first').addClass('slide-down');
-                               }
-                       }, 200);
-               }).bind('mouseleave', function() {
-                       $('#favorite-inside').removeClass('slideDown').addClass('slideUp');
-                       setTimeout(function() {
-                               if ( $('#favorite-inside').hasClass('slideUp') ) {
-                                       $('#favorite-inside').slideUp(100, function() {
-                                               $('#favorite-first').removeClass('slide-down');
-                                       });
-                               }
-                       }, 300);
-               });
-       }
+       init : function() {},
+       fold : function() {},
+       restoreMenuState : function() {},
+       toggle : function() {},
+       favorites : function() {}
 };
 
 };
 
-$(document).ready(function(){ adminMenu.init(); });
-
 // show/hide/save table columns
 columns = {
        init : function() {
 // show/hide/save table columns
 columns = {
        init : function() {
@@ -190,46 +90,160 @@ showNotice = {
 };
 
 screenMeta = {
 };
 
 screenMeta = {
-       links: {
-               'screen-options-link-wrap': 'screen-options-wrap',
-               'contextual-help-link-wrap': 'contextual-help-wrap'
-       },
+       element: null, // #screen-meta
+       toggles: null, // .screen-meta-toggle
+       page:    null, // #wpcontent
+
        init: function() {
        init: function() {
-               $('.screen-meta-toggle').click( screenMeta.toggleEvent );
+               this.element = $('#screen-meta');
+               this.toggles = $('.screen-meta-toggle a');
+               this.page    = $('#wpcontent');
+
+               this.toggles.click( this.toggleEvent );
        },
        },
+
        toggleEvent: function( e ) {
        toggleEvent: function( e ) {
-               var panel;
+               var panel = $( this.href.replace(/.+#/, '#') );
                e.preventDefault();
 
                e.preventDefault();
 
-               // Check to see if we found a panel.
-               if ( ! screenMeta.links[ this.id ] )
+               if ( !panel.length )
                        return;
 
                        return;
 
-               panel = $('#' + screenMeta.links[ this.id ]);
-
                if ( panel.is(':visible') )
                        screenMeta.close( panel, $(this) );
                else
                        screenMeta.open( panel, $(this) );
        },
                if ( panel.is(':visible') )
                        screenMeta.close( panel, $(this) );
                else
                        screenMeta.open( panel, $(this) );
        },
+
        open: function( panel, link ) {
        open: function( panel, link ) {
-               $('.screen-meta-toggle').not( link ).css('visibility', 'hidden');
 
 
+               $('.screen-meta-toggle').not( link.parent() ).css('visibility', 'hidden');
+
+               panel.parent().show();
                panel.slideDown( 'fast', function() {
                        link.addClass('screen-meta-active');
                });
        },
                panel.slideDown( 'fast', function() {
                        link.addClass('screen-meta-active');
                });
        },
+
        close: function( panel, link ) {
                panel.slideUp( 'fast', function() {
                        link.removeClass('screen-meta-active');
                        $('.screen-meta-toggle').css('visibility', '');
        close: function( panel, link ) {
                panel.slideUp( 'fast', function() {
                        link.removeClass('screen-meta-active');
                        $('.screen-meta-toggle').css('visibility', '');
+                       panel.parent().hide();
                });
        }
 };
 
                });
        }
 };
 
+/**
+ * Help tabs.
+ */
+$('.contextual-help-tabs').delegate('a', 'click focus', function(e) {
+       var link = $(this),
+               panel;
+
+       e.preventDefault();
+
+       // Don't do anything if the click is for the tab already showing.
+       if ( link.is('.active a') )
+               return false;
+
+       // Links
+       $('.contextual-help-tabs .active').removeClass('active');
+       link.parent('li').addClass('active');
+
+       panel = $( link.attr('href') );
+
+       // Panels
+       $('.help-tab-content').not( panel ).removeClass('active').hide();
+       panel.addClass('active').show();
+});
+
 $(document).ready( function() {
 $(document).ready( function() {
-       var lastClicked = false, checks, first, last, checked, dropdown,
-               pageInput = $('input[name="paged"]'), currentPage;
+       var lastClicked = false, checks, first, last, checked, menu = $('#adminmenu'),
+               pageInput = $('input.current-page'), currentPage = pageInput.val(), folded, refresh;
+
+       // admin menu
+       refresh = function(i, el){ // force the browser to refresh the tabbing index
+               var node = $(el), tab = node.attr('tabindex');
+               if ( tab )
+                       node.attr('tabindex', '0').attr('tabindex', tab);
+       };
+
+       $('#collapse-menu', menu).click(function(){
+               var body = $(document.body);
+
+               if ( body.hasClass('folded') ) {
+                       body.removeClass('folded');
+                       setUserSetting('mfold', 'o');
+               } else {
+                       body.addClass('folded');
+                       setUserSetting('mfold', 'f');
+               }
+               return false;
+       });
+
+       $('li.wp-has-submenu', menu).hoverIntent({
+               over: function(e){
+                       var b, h, o, f, m = $(this).find('.wp-submenu'), menutop, wintop, maxtop;
+
+                       if ( !$(document.body).hasClass('folded') && $(this).hasClass('wp-menu-open') )
+                               return;
+
+                       menutop = $(this).offset().top;
+                       wintop = $(window).scrollTop();
+                       maxtop = menutop - wintop - 30; // max = make the top of the sub almost touch admin bar
+
+                       b = menutop + m.height() + 1; // Bottom offset of the menu
+                       h = $('#wpwrap').height(); // Height of the entire page
+                       o = 60 + b - h;
+                       f = $(window).height() + wintop - 15; // The fold
+
+                       if ( f < (b - o) )
+                               o = b - f;
+
+                       if ( o > maxtop )
+                               o = maxtop;
+
+                       if ( o > 1 )
+                               m.css({'marginTop':'-'+o+'px'});
+                       else if ( m.css('marginTop') )
+                               m.css({'marginTop':''});
+
+                       m.addClass('sub-open');
+               },
+               out: function(){
+                       $(this).find('.wp-submenu').removeClass('sub-open');
+               },
+               timeout: 200,
+               sensitivity: 7,
+               interval: 90
+       });
+
+       // Tab to select, Enter to open sub, Esc to close sub and focus the top menu
+       $('li.wp-has-submenu > a.wp-not-current-submenu', menu).bind('keydown.adminmenu', function(e){
+               if ( e.which != 13 )
+                       return;
+
+               var target = $(e.target);
+
+               e.stopPropagation();
+               e.preventDefault();
+
+               menu.find('.wp-submenu').removeClass('sub-open');
+               target.siblings('.wp-submenu').toggleClass('sub-open').find('a[role="menuitem"]').each(refresh);
+       }).each(refresh);
+
+       $('a[role="menuitem"]', menu).bind('keydown.adminmenu', function(e){
+               if ( e.which != 27 )
+                       return;
+
+               var target = $(e.target);
+
+               e.stopPropagation();
+               e.preventDefault();
+
+               target.add( target.siblings() ).closest('.sub-open').removeClass('sub-open').siblings('a.wp-not-current-submenu').focus();
+       });
 
        // Move .updated and .error alert boxes. Don't move boxes designed to be inline.
        $('div.wrap h2:first').nextAll('div.updated, div.error').addClass('below-h2');
 
        // Move .updated and .error alert boxes. Don't move boxes designed to be inline.
        $('div.wrap h2:first').nextAll('div.updated, div.error').addClass('below-h2');
@@ -238,24 +252,6 @@ $(document).ready( function() {
        // Init screen meta
        screenMeta.init();
 
        // Init screen meta
        screenMeta.init();
 
-       // User info dropdown.
-       dropdown = {
-               doc: $(document),
-               element: $('#user_info'),
-               open: function() {
-                       if ( ! dropdown.element.hasClass('active') ) {
-                               dropdown.element.addClass('active');
-                               dropdown.doc.one( 'click', dropdown.close );
-                               return false;
-                       }
-               },
-               close: function() {
-                       dropdown.element.removeClass('active');
-               }
-       };
-
-       dropdown.element.click( dropdown.open );
-
        // check all checkboxes
        $('tbody').children().children('.check-column').find(':checkbox').click( function(e) {
                if ( 'undefined' == e.shiftKey ) { return true; }
        // check all checkboxes
        $('tbody').children().children('.check-column').find(':checkbox').click( function(e) {
                if ( 'undefined' == e.shiftKey ) { return true; }
@@ -346,14 +342,36 @@ $(document).ready( function() {
        });
 
        if ( pageInput.length ) {
        });
 
        if ( pageInput.length ) {
-               currentPage = pageInput.val();
-               pageInput.closest('form').submit( function(){
-                       // Reset paging var for new filters/searches. See #17685.
-                       if ( pageInput.val() == currentPage )
+               pageInput.closest('form').submit( function(e){
+
+                       // Reset paging var for new filters/searches but not for bulk actions. See #17685.
+                       if ( $('select[name="action"]').val() == -1 && $('select[name="action2"]').val() == -1 && pageInput.val() == currentPage )
                                pageInput.val('1');
                });
        }
 
                                pageInput.val('1');
                });
        }
 
+       // auto-fold the menu when screen is under 800px
+       $(window).bind('resize.autofold', function(){
+               if ( getUserSetting('mfold') == 'f' )
+                       return;
+
+               var width = $(window).width();
+
+               // fold admin menu
+               if ( width <= 800 ) {
+                       if ( !folded ) {
+                               $(document.body).addClass('folded');
+                               folded = true;
+                       }
+               } else {
+                       if ( folded ) {
+                               $(document.body).removeClass('folded');
+                               folded = false;
+                       }
+               }
+
+       }).triggerHandler('resize');
+
 });
 
 // internal use
 });
 
 // internal use
index 944dbdbe43e543f30ad9269d33e4e3d1d0d76e91..d03d5b496440eb72f0170e04aaafbb1ec1cacc23 100644 (file)
@@ -1 +1 @@
-var showNotice,adminMenu,columns,validateForm,screenMeta;(function(a){adminMenu={init:function(){var b=a("#adminmenu");a(".wp-menu-toggle",b).each(function(){var c=a(this),d=c.siblings(".wp-submenu");if(d.length){c.click(function(){adminMenu.toggle(d)})}else{c.hide()}});this.favorites();a("#collapse-menu",b).click(function(){if(a("body").hasClass("folded")){adminMenu.fold(1);deleteUserSetting("mfold")}else{adminMenu.fold();setUserSetting("mfold","f")}return false});if(a("body").hasClass("folded")){this.fold()}},restoreMenuState:function(){},toggle:function(b){b.slideToggle(150,function(){var c=b.css("display","").parent().toggleClass("wp-menu-open").attr("id");if(c){a("li.wp-has-submenu","#adminmenu").each(function(f,g){if(c==g.id){var d=a(g).hasClass("wp-menu-open")?"o":"c";setUserSetting("m"+f,d)}})}});return false},fold:function(b){if(b){a("body").removeClass("folded");a("#adminmenu li.wp-has-submenu").unbind()}else{a("body").addClass("folded");a("#adminmenu li.wp-has-submenu").hoverIntent({over:function(j){var d,c,g,k,i;d=a(this).find(".wp-submenu");c=a(this).offset().top+d.height()+1;g=a("#wpwrap").height();k=60+c-g;i=a(window).height()+a(window).scrollTop()-15;if(i<(c-k)){k=c-i}if(k>1){d.css({marginTop:"-"+k+"px"})}else{if(d.css("marginTop")){d.css({marginTop:""})}}d.addClass("sub-open")},out:function(){a(this).find(".wp-submenu").removeClass("sub-open")},timeout:220,sensitivity:8,interval:100})}},favorites:function(){a("#favorite-inside").width(a("#favorite-actions").width()-4);a("#favorite-toggle, #favorite-inside").bind("mouseenter",function(){a("#favorite-inside").removeClass("slideUp").addClass("slideDown");setTimeout(function(){if(a("#favorite-inside").hasClass("slideDown")){a("#favorite-inside").slideDown(100);a("#favorite-first").addClass("slide-down")}},200)}).bind("mouseleave",function(){a("#favorite-inside").removeClass("slideDown").addClass("slideUp");setTimeout(function(){if(a("#favorite-inside").hasClass("slideUp")){a("#favorite-inside").slideUp(100,function(){a("#favorite-first").removeClass("slide-down")})}},300)})}};a(document).ready(function(){adminMenu.init()});columns={init:function(){var b=this;a(".hide-column-tog","#adv-settings").click(function(){var d=a(this),c=d.val();if(d.prop("checked")){b.checked(c)}else{b.unchecked(c)}columns.saveManageColumnsState()})},saveManageColumnsState:function(){var b=this.hidden();a.post(ajaxurl,{action:"hidden-columns",hidden:b,screenoptionnonce:a("#screenoptionnonce").val(),page:pagenow})},checked:function(b){a(".column-"+b).show();this.colSpanChange(+1)},unchecked:function(b){a(".column-"+b).hide();this.colSpanChange(-1)},hidden:function(){return a(".manage-column").filter(":hidden").map(function(){return this.id}).get().join(",")},useCheckboxesForHidden:function(){this.hidden=function(){return a(".hide-column-tog").not(":checked").map(function(){var b=this.id;return b.substring(b,b.length-5)}).get().join(",")}},colSpanChange:function(b){var d=a("table").find(".colspanchange"),c;if(!d.length){return}c=parseInt(d.attr("colspan"),10)+b;d.attr("colspan",c.toString())}};a(document).ready(function(){columns.init()});validateForm=function(b){return !a(b).find(".form-required").filter(function(){return a("input:visible",this).val()==""}).addClass("form-invalid").find("input:visible").change(function(){a(this).closest(".form-invalid").removeClass("form-invalid")}).size()};showNotice={warn:function(){var b=commonL10n.warnDelete||"";if(confirm(b)){return true}return false},note:function(b){alert(b)}};screenMeta={links:{"screen-options-link-wrap":"screen-options-wrap","contextual-help-link-wrap":"contextual-help-wrap"},init:function(){a(".screen-meta-toggle").click(screenMeta.toggleEvent)},toggleEvent:function(c){var b;c.preventDefault();if(!screenMeta.links[this.id]){return}b=a("#"+screenMeta.links[this.id]);if(b.is(":visible")){screenMeta.close(b,a(this))}else{screenMeta.open(b,a(this))}},open:function(b,c){a(".screen-meta-toggle").not(c).css("visibility","hidden");b.slideDown("fast",function(){c.addClass("screen-meta-active")})},close:function(b,c){b.slideUp("fast",function(){c.removeClass("screen-meta-active");a(".screen-meta-toggle").css("visibility","")})}};a(document).ready(function(){var i=false,b,f,e,d,h,g=a('input[name="paged"]'),c;a("div.wrap h2:first").nextAll("div.updated, div.error").addClass("below-h2");a("div.updated, div.error").not(".below-h2, .inline").insertAfter(a("div.wrap h2:first"));screenMeta.init();h={doc:a(document),element:a("#user_info"),open:function(){if(!h.element.hasClass("active")){h.element.addClass("active");h.doc.one("click",h.close);return false}},close:function(){h.element.removeClass("active")}};h.element.click(h.open);a("tbody").children().children(".check-column").find(":checkbox").click(function(j){if("undefined"==j.shiftKey){return true}if(j.shiftKey){if(!i){return true}b=a(i).closest("form").find(":checkbox");f=b.index(i);e=b.index(this);d=a(this).prop("checked");if(0<f&&0<e&&f!=e){b.slice(f,e).prop("checked",function(){if(a(this).closest("tr").is(":visible")){return d}return false})}}i=this;return true});a("thead, tfoot").find(".check-column :checkbox").click(function(l){var m=a(this).prop("checked"),k="undefined"==typeof toggleWithKeyboard?false:toggleWithKeyboard,j=l.shiftKey||k;a(this).closest("table").children("tbody").filter(":visible").children().children(".check-column").find(":checkbox").prop("checked",function(){if(a(this).closest("tr").is(":hidden")){return false}if(j){return a(this).prop("checked")}else{if(m){return true}}return false});a(this).closest("table").children("thead,  tfoot").filter(":visible").children().children(".check-column").find(":checkbox").prop("checked",function(){if(j){return false}else{if(m){return true}}return false})});a("#default-password-nag-no").click(function(){setUserSetting("default_password_nag","hide");a("div.default-password-nag").hide();return false});a("#newcontent").bind("keydown.wpevent_InsertTab",function(o){if(o.keyCode!=9){return true}var l=o.target,q=l.selectionStart,k=l.selectionEnd,p=l.value,j,n;try{this.lastKey=9}catch(m){}if(document.selection){l.focus();n=document.selection.createRange();n.text="\t"}else{if(q>=0){j=this.scrollTop;l.value=p.substring(0,q).concat("\t",p.substring(k));l.selectionStart=l.selectionEnd=q+1;this.scrollTop=j}}if(o.stopPropagation){o.stopPropagation()}if(o.preventDefault){o.preventDefault()}});a("#newcontent").bind("blur.wpevent_InsertTab",function(j){if(this.lastKey&&9==this.lastKey){this.focus()}});if(g.length){c=g.val();g.closest("form").submit(function(){if(g.val()==c){g.val("1")}})}});a(document).bind("wp_CloseOnEscape",function(c,b){if(typeof(b.cb)!="function"){return}if(typeof(b.condition)!="function"||b.condition()){b.cb()}return true})})(jQuery);
\ No newline at end of file
+var showNotice,adminMenu,columns,validateForm,screenMeta,autofold_menu;(function(a){adminMenu={init:function(){},fold:function(){},restoreMenuState:function(){},toggle:function(){},favorites:function(){}};columns={init:function(){var b=this;a(".hide-column-tog","#adv-settings").click(function(){var d=a(this),c=d.val();if(d.prop("checked")){b.checked(c)}else{b.unchecked(c)}columns.saveManageColumnsState()})},saveManageColumnsState:function(){var b=this.hidden();a.post(ajaxurl,{action:"hidden-columns",hidden:b,screenoptionnonce:a("#screenoptionnonce").val(),page:pagenow})},checked:function(b){a(".column-"+b).show();this.colSpanChange(+1)},unchecked:function(b){a(".column-"+b).hide();this.colSpanChange(-1)},hidden:function(){return a(".manage-column").filter(":hidden").map(function(){return this.id}).get().join(",")},useCheckboxesForHidden:function(){this.hidden=function(){return a(".hide-column-tog").not(":checked").map(function(){var b=this.id;return b.substring(b,b.length-5)}).get().join(",")}},colSpanChange:function(b){var d=a("table").find(".colspanchange"),c;if(!d.length){return}c=parseInt(d.attr("colspan"),10)+b;d.attr("colspan",c.toString())}};a(document).ready(function(){columns.init()});validateForm=function(b){return !a(b).find(".form-required").filter(function(){return a("input:visible",this).val()==""}).addClass("form-invalid").find("input:visible").change(function(){a(this).closest(".form-invalid").removeClass("form-invalid")}).size()};showNotice={warn:function(){var b=commonL10n.warnDelete||"";if(confirm(b)){return true}return false},note:function(b){alert(b)}};screenMeta={element:null,toggles:null,page:null,init:function(){this.element=a("#screen-meta");this.toggles=a(".screen-meta-toggle a");this.page=a("#wpcontent");this.toggles.click(this.toggleEvent)},toggleEvent:function(c){var b=a(this.href.replace(/.+#/,"#"));c.preventDefault();if(!b.length){return}if(b.is(":visible")){screenMeta.close(b,a(this))}else{screenMeta.open(b,a(this))}},open:function(b,c){a(".screen-meta-toggle").not(c.parent()).css("visibility","hidden");b.parent().show();b.slideDown("fast",function(){c.addClass("screen-meta-active")})},close:function(b,c){b.slideUp("fast",function(){c.removeClass("screen-meta-active");a(".screen-meta-toggle").css("visibility","");b.parent().hide()})}};a(".contextual-help-tabs").delegate("a","click focus",function(d){var c=a(this),b;d.preventDefault();if(c.is(".active a")){return false}a(".contextual-help-tabs .active").removeClass("active");c.parent("li").addClass("active");b=a(c.attr("href"));a(".help-tab-content").not(b).removeClass("active").hide();b.addClass("active").show()});a(document).ready(function(){var j=false,c,e,k,i,b=a("#adminmenu"),d=a("input.current-page"),f=d.val(),h,g;g=function(l,n){var o=a(n),m=o.attr("tabindex");if(m){o.attr("tabindex","0").attr("tabindex",m)}};a("#collapse-menu",b).click(function(){var l=a(document.body);if(l.hasClass("folded")){l.removeClass("folded");setUserSetting("mfold","o")}else{l.addClass("folded");setUserSetting("mfold","f")}return false});a("li.wp-has-submenu",b).hoverIntent({over:function(t){var u,r,l,s,n=a(this).find(".wp-submenu"),v,p,q;if(!a(document.body).hasClass("folded")&&a(this).hasClass("wp-menu-open")){return}v=a(this).offset().top;p=a(window).scrollTop();q=v-p-30;u=v+n.height()+1;r=a("#wpwrap").height();l=60+u-r;s=a(window).height()+p-15;if(s<(u-l)){l=u-s}if(l>q){l=q}if(l>1){n.css({marginTop:"-"+l+"px"})}else{if(n.css("marginTop")){n.css({marginTop:""})}}n.addClass("sub-open")},out:function(){a(this).find(".wp-submenu").removeClass("sub-open")},timeout:200,sensitivity:7,interval:90});a("li.wp-has-submenu > a.wp-not-current-submenu",b).bind("keydown.adminmenu",function(m){if(m.which!=13){return}var l=a(m.target);m.stopPropagation();m.preventDefault();b.find(".wp-submenu").removeClass("sub-open");l.siblings(".wp-submenu").toggleClass("sub-open").find('a[role="menuitem"]').each(g)}).each(g);a('a[role="menuitem"]',b).bind("keydown.adminmenu",function(m){if(m.which!=27){return}var l=a(m.target);m.stopPropagation();m.preventDefault();l.add(l.siblings()).closest(".sub-open").removeClass("sub-open").siblings("a.wp-not-current-submenu").focus()});a("div.wrap h2:first").nextAll("div.updated, div.error").addClass("below-h2");a("div.updated, div.error").not(".below-h2, .inline").insertAfter(a("div.wrap h2:first"));screenMeta.init();a("tbody").children().children(".check-column").find(":checkbox").click(function(l){if("undefined"==l.shiftKey){return true}if(l.shiftKey){if(!j){return true}c=a(j).closest("form").find(":checkbox");e=c.index(j);k=c.index(this);i=a(this).prop("checked");if(0<e&&0<k&&e!=k){c.slice(e,k).prop("checked",function(){if(a(this).closest("tr").is(":visible")){return i}return false})}}j=this;return true});a("thead, tfoot").find(".check-column :checkbox").click(function(n){var o=a(this).prop("checked"),m="undefined"==typeof toggleWithKeyboard?false:toggleWithKeyboard,l=n.shiftKey||m;a(this).closest("table").children("tbody").filter(":visible").children().children(".check-column").find(":checkbox").prop("checked",function(){if(a(this).closest("tr").is(":hidden")){return false}if(l){return a(this).prop("checked")}else{if(o){return true}}return false});a(this).closest("table").children("thead,  tfoot").filter(":visible").children().children(".check-column").find(":checkbox").prop("checked",function(){if(l){return false}else{if(o){return true}}return false})});a("#default-password-nag-no").click(function(){setUserSetting("default_password_nag","hide");a("div.default-password-nag").hide();return false});a("#newcontent").bind("keydown.wpevent_InsertTab",function(q){if(q.keyCode!=9){return true}var n=q.target,s=n.selectionStart,m=n.selectionEnd,r=n.value,l,p;try{this.lastKey=9}catch(o){}if(document.selection){n.focus();p=document.selection.createRange();p.text="\t"}else{if(s>=0){l=this.scrollTop;n.value=r.substring(0,s).concat("\t",r.substring(m));n.selectionStart=n.selectionEnd=s+1;this.scrollTop=l}}if(q.stopPropagation){q.stopPropagation()}if(q.preventDefault){q.preventDefault()}});a("#newcontent").bind("blur.wpevent_InsertTab",function(l){if(this.lastKey&&9==this.lastKey){this.focus()}});if(d.length){d.closest("form").submit(function(l){if(a('select[name="action"]').val()==-1&&a('select[name="action2"]').val()==-1&&d.val()==f){d.val("1")}})}a(window).bind("resize.autofold",function(){if(getUserSetting("mfold")=="f"){return}var l=a(window).width();if(l<=800){if(!h){a(document.body).addClass("folded");h=true}}else{if(h){a(document.body).removeClass("folded");h=false}}}).triggerHandler("resize")});a(document).bind("wp_CloseOnEscape",function(c,b){if(typeof(b.cb)!="function"){return}if(typeof(b.condition)!="function"||b.condition()){b.cb()}return true})})(jQuery);
\ No newline at end of file
index 127a7bd620486b978b0e22bb311f2bb28ca7785b..62ff7e34720f767f1b3c8af755c758ec684fa1da 100644 (file)
@@ -1,6 +1,33 @@
 var ajaxWidgets, ajaxPopulateWidgets, quickPressLoad;
 
 jQuery(document).ready( function($) {
 var ajaxWidgets, ajaxPopulateWidgets, quickPressLoad;
 
 jQuery(document).ready( function($) {
+       /* Dashboard Welcome Panel */
+       var welcomePanel = $('#welcome-panel'),
+               welcomePanelHide = $('#wp_welcome_panel-hide'),
+               updateWelcomePanel = function( visible ) {
+                       $.post( ajaxurl, {
+                               action: 'update-welcome-panel',
+                               visible: visible,
+                               welcomepanelnonce: $('#welcomepanelnonce').val()
+                       });
+               };
+
+       if ( welcomePanel.hasClass('hidden') && welcomePanelHide.prop('checked') )
+               welcomePanel.removeClass('hidden');
+
+       $('.welcome-panel-close, .welcome-panel-dismiss a', welcomePanel).click( function(e) {
+               e.preventDefault();
+               welcomePanel.addClass('hidden');
+               updateWelcomePanel( 0 );
+               $('#wp_welcome_panel-hide').prop('checked', false);
+       });
+
+
+       welcomePanelHide.click( function() {
+               welcomePanel.toggleClass('hidden', ! this.checked );
+               updateWelcomePanel( this.checked ? 1 : 0 );
+       });
+
        // These widgets are sometimes populated via ajax
        ajaxWidgets = [
                'dashboard_incoming_links',
        // These widgets are sometimes populated via ajax
        ajaxWidgets = [
                'dashboard_incoming_links',
index bd836d1a549572c418904801c6f007826ed77671..f9a4f63fd2973a30b16080b4ad9f4fd567aa68a2 100644 (file)
@@ -1 +1 @@
-var ajaxWidgets,ajaxPopulateWidgets,quickPressLoad;jQuery(document).ready(function(a){ajaxWidgets=["dashboard_incoming_links","dashboard_primary","dashboard_secondary","dashboard_plugins"];ajaxPopulateWidgets=function(c){function b(d,h){var g,f=a("#"+h+" div.inside:visible").find(".widget-loading");if(f.length){g=f.parent();setTimeout(function(){g.load(ajaxurl.replace("/admin-ajax.php","")+"/index-extra.php?jax="+h,"",function(){g.hide().slideDown("normal",function(){a(this).css("display","")})})},d*500)}}if(c){c=c.toString();if(a.inArray(c,ajaxWidgets)!=-1){b(0,c)}}else{a.each(ajaxWidgets,b)}};ajaxPopulateWidgets();postboxes.add_postbox_toggles(pagenow,{pbshow:ajaxPopulateWidgets});quickPressLoad=function(){var b=a("#quickpost-action"),c;c=a("#quick-press").submit(function(){a("#dashboard_quick_press #publishing-action img.waiting").css("visibility","visible");a('#quick-press .submit input[type="submit"], #quick-press .submit input[type="reset"]').prop("disabled",true);if("post"==b.val()){b.val("post-quickpress-publish")}a("#dashboard_quick_press div.inside").load(c.attr("action"),c.serializeArray(),function(){a("#dashboard_quick_press #publishing-action img.waiting").css("visibility","hidden");a('#quick-press .submit input[type="submit"], #quick-press .submit input[type="reset"]').prop("disabled",false);a("#dashboard_quick_press ul").next("p").remove();a("#dashboard_quick_press ul").find("li").each(function(){a("#dashboard_recent_drafts ul").prepend(this)}).end().remove();quickPressLoad()});return false});a("#publish").click(function(){b.val("post-quickpress-publish")})};quickPressLoad()});
\ No newline at end of file
+var ajaxWidgets,ajaxPopulateWidgets,quickPressLoad;jQuery(document).ready(function(c){var d=c("#welcome-panel"),a=c("#wp_welcome_panel-hide"),b=function(e){c.post(ajaxurl,{action:"update-welcome-panel",visible:e,welcomepanelnonce:c("#welcomepanelnonce").val()})};if(d.hasClass("hidden")&&a.prop("checked")){d.removeClass("hidden")}c(".welcome-panel-close, .welcome-panel-dismiss a",d).click(function(f){f.preventDefault();d.addClass("hidden");b(0);c("#wp_welcome_panel-hide").prop("checked",false)});a.click(function(){d.toggleClass("hidden",!this.checked);b(this.checked?1:0)});ajaxWidgets=["dashboard_incoming_links","dashboard_primary","dashboard_secondary","dashboard_plugins"];ajaxPopulateWidgets=function(f){function e(g,k){var j,h=c("#"+k+" div.inside:visible").find(".widget-loading");if(h.length){j=h.parent();setTimeout(function(){j.load(ajaxurl.replace("/admin-ajax.php","")+"/index-extra.php?jax="+k,"",function(){j.hide().slideDown("normal",function(){c(this).css("display","")})})},g*500)}}if(f){f=f.toString();if(c.inArray(f,ajaxWidgets)!=-1){e(0,f)}}else{c.each(ajaxWidgets,e)}};ajaxPopulateWidgets();postboxes.add_postbox_toggles(pagenow,{pbshow:ajaxPopulateWidgets});quickPressLoad=function(){var e=c("#quickpost-action"),f;f=c("#quick-press").submit(function(){c("#dashboard_quick_press #publishing-action img.waiting").css("visibility","visible");c('#quick-press .submit input[type="submit"], #quick-press .submit input[type="reset"]').prop("disabled",true);if("post"==e.val()){e.val("post-quickpress-publish")}c("#dashboard_quick_press div.inside").load(f.attr("action"),f.serializeArray(),function(){c("#dashboard_quick_press #publishing-action img.waiting").css("visibility","hidden");c('#quick-press .submit input[type="submit"], #quick-press .submit input[type="reset"]').prop("disabled",false);c("#dashboard_quick_press ul").next("p").remove();c("#dashboard_quick_press ul").find("li").each(function(){c("#dashboard_recent_drafts ul").prepend(this)}).end().remove();quickPressLoad()});return false});c("#publish").click(function(){e.val("post-quickpress-publish")})};quickPressLoad()});
\ No newline at end of file
index 7cffd564ec8d664a88fadb9f2d3f9fc08ee9cd75..634275a7a460a174f0b33edeed69f10fa8b3702e 100644 (file)
@@ -29,12 +29,19 @@ setCommentsList = function() {
 
                $('span.pending-count').each( function() {
                        var a = $(this), n, dif;
 
                $('span.pending-count').each( function() {
                        var a = $(this), n, dif;
+
                        n = a.html().replace(/[^0-9]+/g, '');
                        n = a.html().replace(/[^0-9]+/g, '');
-                       n = parseInt(n,10);
-                       if ( isNaN(n) ) return;
+                       n = parseInt(n, 10);
+
+                       if ( isNaN(n) )
+                               return;
+
                        dif = $('#' + settings.element).is('.' + settings.dimClass) ? 1 : -1;
                        n = n + dif;
                        dif = $('#' + settings.element).is('.' + settings.dimClass) ? 1 : -1;
                        n = n + dif;
-                       if ( n < 0 ) { n = 0; }
+
+                       if ( n < 0 )
+                               n = 0;
+
                        a.closest('.awaiting-mod')[ 0 == n ? 'addClass' : 'removeClass' ]('count-0');
                        updateCount(a, n);
                        dashboardTotals();
                        a.closest('.awaiting-mod')[ 0 == n ? 'addClass' : 'removeClass' ]('count-0');
                        updateCount(a, n);
                        dashboardTotals();
@@ -96,7 +103,7 @@ setCommentsList = function() {
                return settings;
        };
 
                return settings;
        };
 
-       // Updates the current total (as displayed visibly)
+       // Updates the current total (stored in the _total input)
        updateTotalCount = function( total, time, setConfidentTime ) {
                if ( time < lastConfidentTime )
                        return;
        updateTotalCount = function( total, time, setConfidentTime ) {
                if ( time < lastConfidentTime )
                        return;
@@ -105,9 +112,6 @@ setCommentsList = function() {
                        lastConfidentTime = time;
 
                totalInput.val( total.toString() );
                        lastConfidentTime = time;
 
                totalInput.val( total.toString() );
-               $('span.total-type-count').each( function() {
-                       updateCount( $(this), total );
-               });
        };
 
        dashboardTotals = function(n) {
        };
 
        dashboardTotals = function(n) {
@@ -165,8 +169,9 @@ setCommentsList = function() {
 
        // In admin-ajax.php, we send back the unix time stamp instead of 1 on success
        delAfter = function( r, settings ) {
 
        // In admin-ajax.php, we send back the unix time stamp instead of 1 on success
        delAfter = function( r, settings ) {
-               var total, N, untrash = $(settings.target).parent().is('span.untrash'),
-                       unspam = $(settings.target).parent().is('span.unspam'), spam, trash, pending,
+               var total, N, spam, trash, pending,
+                       untrash = $(settings.target).parent().is('span.untrash'),
+                       unspam = $(settings.target).parent().is('span.unspam'),
                        unapproved = $('#' + settings.element).is('.unapproved');
 
                function getUpdate(s) {
                        unapproved = $('#' + settings.element).is('.unapproved');
 
                function getUpdate(s) {
@@ -178,13 +183,15 @@ setCommentsList = function() {
                        return 0;
                }
 
                        return 0;
                }
 
-               spam = getUpdate('spam');
-               trash = getUpdate('trash');
-
                if ( untrash )
                        trash = -1;
                if ( untrash )
                        trash = -1;
+               else
+                       trash = getUpdate('trash');
+
                if ( unspam )
                        spam = -1;
                if ( unspam )
                        spam = -1;
+               else
+                       spam = getUpdate('spam');
 
                pending = getCount( $('span.pending-count').eq(0) );
 
 
                pending = getCount( $('span.pending-count').eq(0) );
 
@@ -211,7 +218,11 @@ setCommentsList = function() {
                        dashboardTotals(N);
                } else {
                        total = totalInput.val() ? parseInt( totalInput.val(), 10 ) : 0;
                        dashboardTotals(N);
                } else {
                        total = totalInput.val() ? parseInt( totalInput.val(), 10 ) : 0;
-                       total = total - spam - trash;
+                       if ( $(settings.target).parent().is('span.undo') )
+                               total++;
+                       else
+                               total--;
+
                        if ( total < 0 )
                                total = 0;
 
                        if ( total < 0 )
                                total = 0;
 
@@ -356,6 +367,9 @@ commentReply = {
                if ( this.cid ) {
                        c = $('#comment-' + this.cid);
 
                if ( this.cid ) {
                        c = $('#comment-' + this.cid);
 
+                       if ( typeof QTags != 'undefined' )
+                               QTags.closeAllTags('replycontent');
+
                        if ( this.act == 'edit-comment' )
                                c.fadeIn(300, function(){ c.show() }).css('backgroundColor', '');
 
                        if ( this.act == 'edit-comment' )
                                c.fadeIn(300, function(){ c.show() }).css('backgroundColor', '');
 
@@ -365,18 +379,14 @@ commentReply = {
                        $('input', '#edithead').val('');
                        $('.error', '#replysubmit').html('').hide();
                        $('.waiting', '#replysubmit').hide();
                        $('input', '#edithead').val('');
                        $('.error', '#replysubmit').html('').hide();
                        $('.waiting', '#replysubmit').hide();
-
-                       if ( $.browser.msie )
-                               $('#replycontainer, #replycontent').css('height', '120px');
-                       else
-                               $('#replycontainer').resizable('destroy').css('height', '120px');
+                       $('#replycontent').css('height', '');
 
                        this.cid = '';
                }
        },
 
        open : function(id, p, a) {
 
                        this.cid = '';
                }
        },
 
        open : function(id, p, a) {
-               var t = this, editRow, rowData, act, h, c = $('#comment-' + id), replyButton;
+               var t = this, editRow, rowData, act, c = $('#comment-' + id), h = c.height(), replyButton;
 
                t.close();
                t.cid = id;
 
                t.close();
                t.cid = id;
@@ -389,6 +399,9 @@ commentReply = {
                $('#comment_post_ID', editRow).val(p);
                $('#comment_ID', editRow).val(id);
 
                $('#comment_post_ID', editRow).val(p);
                $('#comment_ID', editRow).val(id);
 
+               if ( h > 120 )
+                       $('#replycontent', editRow).css('height', (35+h) + 'px');
+
                if ( a == 'edit' ) {
                        $('#author', editRow).val( $('div.author', rowData).text() );
                        $('#author-email', editRow).val( $('div.author-email', rowData).text() );
                if ( a == 'edit' ) {
                        $('#author', editRow).val( $('div.author', rowData).text() );
                        $('#author-email', editRow).val( $('div.author-email', rowData).text() );
@@ -398,13 +411,6 @@ commentReply = {
                        $('#edithead, #savebtn', editRow).show();
                        $('#replyhead, #replybtn', editRow).hide();
 
                        $('#edithead, #savebtn', editRow).show();
                        $('#replyhead, #replybtn', editRow).hide();
 
-                       h = c.height();
-                       if ( h > 220 )
-                               if ( $.browser.msie )
-                                       $('#replycontainer, #replycontent', editRow).height(h-105);
-                               else
-                                       $('#replycontainer', editRow).height(h-105);
-
                        c.after( editRow ).fadeOut('fast', function(){
                                $('#replyrow').fadeIn(300, function(){ $(this).show() });
                        });
                        c.after( editRow ).fadeOut('fast', function(){
                                $('#replyrow').fadeIn(300, function(){ $(this).show() });
                        });
@@ -478,8 +484,6 @@ commentReply = {
        show : function(xml) {
                var t = this, r, c, id, bg, pid;
 
        show : function(xml) {
                var t = this, r, c, id, bg, pid;
 
-               t.revert();
-
                if ( typeof(xml) == 'string' ) {
                        t.error({'responseText': xml});
                        return false;
                if ( typeof(xml) == 'string' ) {
                        t.error({'responseText': xml});
                        return false;
@@ -491,6 +495,8 @@ commentReply = {
                        return false;
                }
 
                        return false;
                }
 
+               t.revert();
+
                r = r.responses[0];
                c = r.data;
                id = '#comment-' + r.id;
                r = r.responses[0];
                c = r.data;
                id = '#comment-' + r.id;
@@ -513,7 +519,7 @@ commentReply = {
                $('#replyrow').after(c);
                id = $(id);
                t.addEvents(id);
                $('#replyrow').after(c);
                id = $(id);
                t.addEvents(id);
-               bg = id.hasClass('unapproved') ? '#FFFFE0' : id.closest('.widefat').css('backgroundColor');
+               bg = id.hasClass('unapproved') ? '#FFFFE0' : id.closest('.widefat, .postbox').css('backgroundColor');
 
                id.animate( { 'backgroundColor':'#CCEEBB' }, 300 )
                        .animate( { 'backgroundColor': bg }, 300, function() {
 
                id.animate( { 'backgroundColor':'#CCEEBB' }, 300 )
                        .animate( { 'backgroundColor': bg }, 300, function() {
@@ -548,8 +554,6 @@ $(document).ready(function(){
        commentReply.init();
        $(document).delegate('span.delete a.delete', 'click', function(){return false;});
 
        commentReply.init();
        $(document).delegate('span.delete a.delete', 'click', function(){return false;});
 
-       if ( typeof QTags != 'undefined' )
-               ed_reply = new QTags('ed_reply', 'replycontent', 'replycontainer', 'more,fullscreen');
 
        if ( typeof $.table_hotkeys != 'undefined' ) {
                make_hotkeys_redirect = function(which) {
 
        if ( typeof $.table_hotkeys != 'undefined' ) {
                make_hotkeys_redirect = function(which) {
index c7c417ceddc55ff5198ceba8d067e73bbda33b88..314c532c9ea1051c217a1245cfca7630707b9fdd 100644 (file)
@@ -1 +1 @@
-var theList,theExtraList,toggleWithKeyboard=false,getCount,updateCount,updatePending,dashboardTotals;(function(a){setCommentsList=function(){var c,e,g,j=0,f,h,d,i,b;c=a('input[name="_total"]',"#comments-form");e=a('input[name="_per_page"]',"#comments-form");g=a('input[name="_page"]',"#comments-form");f=function(n,l){var p=a("#"+l.element),k,o,m;k=a("#replyrow");o=a("#comment_ID",k).val();m=a("#replybtn",k);if(p.is(".unapproved")){if(l.data.id==o){m.text(adminCommentsL10n.replyApprove)}p.find("div.comment_status").html("0")}else{if(l.data.id==o){m.text(adminCommentsL10n.reply)}p.find("div.comment_status").html("1")}a("span.pending-count").each(function(){var q=a(this),s,r;s=q.html().replace(/[^0-9]+/g,"");s=parseInt(s,10);if(isNaN(s)){return}r=a("#"+l.element).is("."+l.dimClass)?1:-1;s=s+r;if(s<0){s=0}q.closest(".awaiting-mod")[0==s?"addClass":"removeClass"]("count-0");updateCount(q,s);dashboardTotals()})};h=function(o,s){var u=a(o.target).attr("class"),k,l,m,r,t,q,p=false;o.data._total=c.val()||0;o.data._per_page=e.val()||0;o.data._page=g.val()||0;o.data._url=document.location.href;o.data.comment_status=a('input[name="comment_status"]',"#comments-form").val();if(u.indexOf(":trash=1")!=-1){p="trash"}else{if(u.indexOf(":spam=1")!=-1){p="spam"}}if(p){k=u.replace(/.*?comment-([0-9]+).*/,"$1");l=a("#comment-"+k);note=a("#"+p+"-undo-holder").html();l.find(".check-column :checkbox").prop("checked",false);if(l.siblings("#replyrow").length&&commentReply.cid==k){commentReply.close()}if(l.is("tr")){m=l.children(":visible").length;q=a(".author strong",l).text();r=a('<tr id="undo-'+k+'" class="undo un'+p+'" style="display:none;"><td colspan="'+m+'">'+note+"</td></tr>")}else{q=a(".comment-author",l).text();r=a('<div id="undo-'+k+'" style="display:none;" class="undo un'+p+'">'+note+"</div>")}l.before(r);a("strong","#undo-"+k).text(q+" ");t=a(".undo a","#undo-"+k);t.attr("href","comment.php?action=un"+p+"comment&c="+k+"&_wpnonce="+o.data._ajax_nonce);t.attr("class","delete:the-comment-list:comment-"+k+"::un"+p+"=1 vim-z vim-destructive");a(".avatar",l).clone().prependTo("#undo-"+k+" ."+p+"-undo-inside");t.click(function(){s.wpList.del(this);a("#undo-"+k).css({backgroundColor:"#ceb"}).fadeOut(350,function(){a(this).remove();a("#comment-"+k).css("backgroundColor","").fadeIn(300,function(){a(this).show()})});return false})}return o};d=function(k,l,m){if(l<j){return}if(m){j=l}c.val(k.toString());a("span.total-type-count").each(function(){updateCount(a(this),k)})};dashboardTotals=function(q){var p=a("#dashboard_right_now"),l,o,m,k;q=q||0;if(isNaN(q)||!p.length){return}l=a("span.total-count",p);o=a("span.approved-count",p);m=getCount(l);m=m+q;k=m-getCount(a("span.pending-count",p))-getCount(a("span.spam-count",p));updateCount(l,m);updateCount(o,k)};getCount=function(k){var l=parseInt(k.html().replace(/[^0-9]+/g,""),10);if(isNaN(l)){return 0}return l};updateCount=function(l,m){var k="";if(isNaN(m)){return}m=m<1?"0":m.toString();if(m.length>3){while(m.length>3){k=thousandsSeparator+m.substr(m.length-3)+k;m=m.substr(0,m.length-3)}m=m+k}l.html(m)};updatePending=function(k){a("span.pending-count").each(function(){var l=a(this);if(k<0){k=0}l.closest(".awaiting-mod")[0==k?"addClass":"removeClass"]("count-0");updateCount(l,k);dashboardTotals()})};i=function(k,n){var q,o,u=a(n.target).parent().is("span.untrash"),m=a(n.target).parent().is("span.unspam"),t,s,l,p=a("#"+n.element).is(".unapproved");function v(r){if(a(n.target).parent().is("span."+r)){return 1}else{if(a("#"+n.element).is("."+r)){return -1}}return 0}t=v("spam");s=v("trash");if(u){s=-1}if(m){t=-1}l=getCount(a("span.pending-count").eq(0));if(a(n.target).parent().is("span.unapprove")||((u||m)&&p)){l=l+1}else{if(p){l=l-1}}updatePending(l);a("span.spam-count").each(function(){var r=a(this),w=getCount(r)+t;updateCount(r,w)});a("span.trash-count").each(function(){var r=a(this),w=getCount(r)+s;updateCount(r,w)});if(a("#dashboard_right_now").length){o=s?-1*s:0;dashboardTotals(o)}else{q=c.val()?parseInt(c.val(),10):0;q=q-t-s;if(q<0){q=0}if(("object"==typeof k)&&j<n.parsed.responses[0].supplemental.time){total_items_i18n=n.parsed.responses[0].supplemental.total_items_i18n||"";if(total_items_i18n){a(".displaying-num").text(total_items_i18n);a(".total-pages").text(n.parsed.responses[0].supplemental.total_pages_i18n);a(".tablenav-pages").find(".next-page, .last-page").toggleClass("disabled",n.parsed.responses[0].supplemental.total_pages==a(".current-page").val())}d(q,n.parsed.responses[0].supplemental.time,true)}else{d(q,k,false)}}if(!theExtraList||theExtraList.size()==0||theExtraList.children().size()==0||u||m){return}theList.get(0).wpList.add(theExtraList.children(":eq(0)").remove().clone());b()};b=function(n){var l=a.query.get(),k=a(".total-pages").text(),m=a('input[name="_per_page"]',"#comments-form").val();if(!l.paged){l.paged=1}if(l.paged>k){return}if(n){theExtraList.empty();l.number=Math.min(8,m)}else{l.number=1;l.offset=Math.min(8,m)-1}l.no_placeholder=true;l.paged++;if(true===l.comment_type){l.comment_type=""}l=a.extend(l,{action:"fetch-list",list_args:list_args,_ajax_fetch_list_nonce:a("#_ajax_fetch_list_nonce").val()});a.ajax({url:ajaxurl,global:false,dataType:"json",data:l,success:function(o){theExtraList.get(0).wpList.add(o.rows)}})};theExtraList=a("#the-extra-comment-list").wpList({alt:"",delColor:"none",addColor:"none"});theList=a("#the-comment-list").wpList({alt:"",delBefore:h,dimAfter:f,delAfter:i,addColor:"none"}).bind("wpListDelEnd",function(l,k){var m=k.element.replace(/[^0-9]+/g,"");if(k.target.className.indexOf(":trash=1")!=-1||k.target.className.indexOf(":spam=1")!=-1){a("#undo-"+m).fadeIn(300,function(){a(this).show()})}})};commentReply={cid:"",act:"",init:function(){var b=a("#replyrow");a("a.cancel",b).click(function(){return commentReply.revert()});a("a.save",b).click(function(){return commentReply.send()});a("input#author, input#author-email, input#author-url",b).keypress(function(c){if(c.which==13){commentReply.send();c.preventDefault();return false}});a("#the-comment-list .column-comment > p").dblclick(function(){commentReply.toggle(a(this).parent())});a("#doaction, #doaction2, #post-query-submit").click(function(c){if(a("#the-comment-list #replyrow").length>0){commentReply.close()}});this.comments_listing=a('#comments-form > input[name="comment_status"]').val()||""},addEvents:function(b){b.each(function(){a(this).find(".column-comment > p").dblclick(function(){commentReply.toggle(a(this).parent())})})},toggle:function(b){if(a(b).css("display")!="none"){a(b).find("a.vim-q").click()}},revert:function(){if(a("#the-comment-list #replyrow").length<1){return false}a("#replyrow").fadeOut("fast",function(){commentReply.close()});return false},close:function(){var b;if(this.cid){b=a("#comment-"+this.cid);if(this.act=="edit-comment"){b.fadeIn(300,function(){b.show()}).css("backgroundColor","")}a("#replyrow").hide();a("#com-reply").append(a("#replyrow"));a("#replycontent").val("");a("input","#edithead").val("");a(".error","#replysubmit").html("").hide();a(".waiting","#replysubmit").hide();if(a.browser.msie){a("#replycontainer, #replycontent").css("height","120px")}else{a("#replycontainer").resizable("destroy").css("height","120px")}this.cid=""}},open:function(b,d,k){var m=this,e,f,i,g,j=a("#comment-"+b),l;m.close();m.cid=b;e=a("#replyrow");f=a("#inline-"+b);i=m.act=(k=="edit")?"edit-comment":"replyto-comment";a("#action",e).val(i);a("#comment_post_ID",e).val(d);a("#comment_ID",e).val(b);if(k=="edit"){a("#author",e).val(a("div.author",f).text());a("#author-email",e).val(a("div.author-email",f).text());a("#author-url",e).val(a("div.author-url",f).text());a("#status",e).val(a("div.comment_status",f).text());a("#replycontent",e).val(a("textarea.comment",f).val());a("#edithead, #savebtn",e).show();a("#replyhead, #replybtn",e).hide();g=j.height();if(g>220){if(a.browser.msie){a("#replycontainer, #replycontent",e).height(g-105)}else{a("#replycontainer",e).height(g-105)}}j.after(e).fadeOut("fast",function(){a("#replyrow").fadeIn(300,function(){a(this).show()})})}else{l=a("#replybtn",e);a("#edithead, #savebtn",e).hide();a("#replyhead, #replybtn",e).show();j.after(e);if(j.hasClass("unapproved")){l.text(adminCommentsL10n.replyApprove)}else{l.text(adminCommentsL10n.reply)}a("#replyrow").fadeIn(300,function(){a(this).show()})}setTimeout(function(){var o,h,p,c,n;o=a("#replyrow").offset().top;h=o+a("#replyrow").height();p=window.pageYOffset||document.documentElement.scrollTop;c=document.documentElement.clientHeight||self.innerHeight||0;n=p+c;if(n-20<h){window.scroll(0,h-c+35)}else{if(o-20<p){window.scroll(0,o-35)}}a("#replycontent").focus().keyup(function(q){if(q.which==27){commentReply.revert()}})},600);return false},send:function(){var b={};a("#replysubmit .error").hide();a("#replysubmit .waiting").show();a("#replyrow input").not(":button").each(function(){b[a(this).attr("name")]=a(this).val()});b.content=a("#replycontent").val();b.id=b.comment_post_ID;b.comments_listing=this.comments_listing;b.p=a('[name="p"]').val();if(a("#comment-"+a("#comment_ID").val()).hasClass("unapproved")){b.approve_parent=1}a.ajax({type:"POST",url:ajaxurl,data:b,success:function(c){commentReply.show(c)},error:function(c){commentReply.error(c)}});return false},show:function(d){var f=this,g,i,h,e,b;f.revert();if(typeof(d)=="string"){f.error({responseText:d});return false}g=wpAjax.parseAjaxResponse(d);if(g.errors){f.error({responseText:wpAjax.broken});return false}g=g.responses[0];i=g.data;h="#comment-"+g.id;if("edit-comment"==f.act){a(h).remove()}if(g.supplemental.parent_approved){b=a("#comment-"+g.supplemental.parent_approved);updatePending(getCount(a("span.pending-count").eq(0))-1);if(this.comments_listing=="moderated"){b.animate({backgroundColor:"#CCEEBB"},400,function(){b.fadeOut()});return}}a(i).hide();a("#replyrow").after(i);h=a(h);f.addEvents(h);e=h.hasClass("unapproved")?"#FFFFE0":h.closest(".widefat").css("backgroundColor");h.animate({backgroundColor:"#CCEEBB"},300).animate({backgroundColor:e},300,function(){if(b&&b.length){b.animate({backgroundColor:"#CCEEBB"},300).animate({backgroundColor:e},300).removeClass("unapproved").addClass("approved").find("div.comment_status").html("1")}})},error:function(b){var c=b.statusText;a("#replysubmit .waiting").hide();if(b.responseText){c=b.responseText.replace(/<.[^<>]*?>/g,"")}if(c){a("#replysubmit .error").html(c).show()}}};a(document).ready(function(){var e,b,c,d;setCommentsList();commentReply.init();a(document).delegate("span.delete a.delete","click",function(){return false});if(typeof QTags!="undefined"){ed_reply=new QTags("ed_reply","replycontent","replycontainer","more,fullscreen")}if(typeof a.table_hotkeys!="undefined"){e=function(f){return function(){var h,g;h="next"==f?"first":"last";g=a(".tablenav-pages ."+f+"-page:not(.disabled)");if(g.length){window.location=g[0].href.replace(/\&hotkeys_highlight_(first|last)=1/g,"")+"&hotkeys_highlight_"+h+"=1"}}};b=function(g,f){window.location=a("span.edit a",f).attr("href")};c=function(){toggleWithKeyboard=true;a("input:checkbox","#cb").click().prop("checked",false);toggleWithKeyboard=false};d=function(f){return function(){var g=a('select[name="action"]');a('option[value="'+f+'"]',g).prop("selected",true);a("#doaction").click()}};a.table_hotkeys(a("table.widefat"),["a","u","s","d","r","q","z",["e",b],["shift+x",c],["shift+a",d("approve")],["shift+s",d("spam")],["shift+d",d("delete")],["shift+t",d("trash")],["shift+z",d("untrash")],["shift+u",d("unapprove")]],{highlight_first:adminCommentsL10n.hotkeys_highlight_first,highlight_last:adminCommentsL10n.hotkeys_highlight_last,prev_page_link_cb:e("prev"),next_page_link_cb:e("next")})}})})(jQuery);
\ No newline at end of file
+var theList,theExtraList,toggleWithKeyboard=false,getCount,updateCount,updatePending,dashboardTotals;(function($){setCommentsList=function(){var totalInput,perPageInput,pageInput,lastConfidentTime=0,dimAfter,delBefore,updateTotalCount,delAfter,refillTheExtraList;totalInput=$('input[name="_total"]',"#comments-form");perPageInput=$('input[name="_per_page"]',"#comments-form");pageInput=$('input[name="_page"]',"#comments-form");dimAfter=function(r,settings){var c=$("#"+settings.element),editRow,replyID,replyButton;editRow=$("#replyrow");replyID=$("#comment_ID",editRow).val();replyButton=$("#replybtn",editRow);if(c.is(".unapproved")){if(settings.data.id==replyID){replyButton.text(adminCommentsL10n.replyApprove)}c.find("div.comment_status").html("0")}else{if(settings.data.id==replyID){replyButton.text(adminCommentsL10n.reply)}c.find("div.comment_status").html("1")}$("span.pending-count").each(function(){var a=$(this),n,dif;n=a.html().replace(/[^0-9]+/g,"");n=parseInt(n,10);if(isNaN(n)){return}dif=$("#"+settings.element).is("."+settings.dimClass)?1:-1;n=n+dif;if(n<0){n=0}a.closest(".awaiting-mod")[0==n?"addClass":"removeClass"]("count-0");updateCount(a,n);dashboardTotals()})};delBefore=function(settings,list){var cl=$(settings.target).attr("class"),id,el,n,h,a,author,action=false;settings.data._total=totalInput.val()||0;settings.data._per_page=perPageInput.val()||0;settings.data._page=pageInput.val()||0;settings.data._url=document.location.href;settings.data.comment_status=$('input[name="comment_status"]',"#comments-form").val();if(cl.indexOf(":trash=1")!=-1){action="trash"}else{if(cl.indexOf(":spam=1")!=-1){action="spam"}}if(action){id=cl.replace(/.*?comment-([0-9]+).*/,"$1");el=$("#comment-"+id);note=$("#"+action+"-undo-holder").html();el.find(".check-column :checkbox").prop("checked",false);if(el.siblings("#replyrow").length&&commentReply.cid==id){commentReply.close()}if(el.is("tr")){n=el.children(":visible").length;author=$(".author strong",el).text();h=$('<tr id="undo-'+id+'" class="undo un'+action+'" style="display:none;"><td colspan="'+n+'">'+note+"</td></tr>")}else{author=$(".comment-author",el).text();h=$('<div id="undo-'+id+'" style="display:none;" class="undo un'+action+'">'+note+"</div>")}el.before(h);$("strong","#undo-"+id).text(author+" ");a=$(".undo a","#undo-"+id);a.attr("href","comment.php?action=un"+action+"comment&c="+id+"&_wpnonce="+settings.data._ajax_nonce);a.attr("class","delete:the-comment-list:comment-"+id+"::un"+action+"=1 vim-z vim-destructive");$(".avatar",el).clone().prependTo("#undo-"+id+" ."+action+"-undo-inside");a.click(function(){list.wpList.del(this);$("#undo-"+id).css({backgroundColor:"#ceb"}).fadeOut(350,function(){$(this).remove();$("#comment-"+id).css("backgroundColor","").fadeIn(300,function(){$(this).show()})});return false})}return settings};updateTotalCount=function(total,time,setConfidentTime){if(time<lastConfidentTime){return}if(setConfidentTime){lastConfidentTime=time}totalInput.val(total.toString())};dashboardTotals=function(n){var dash=$("#dashboard_right_now"),total,appr,totalN,apprN;n=n||0;if(isNaN(n)||!dash.length){return}total=$("span.total-count",dash);appr=$("span.approved-count",dash);totalN=getCount(total);totalN=totalN+n;apprN=totalN-getCount($("span.pending-count",dash))-getCount($("span.spam-count",dash));updateCount(total,totalN);updateCount(appr,apprN)};getCount=function(el){var n=parseInt(el.html().replace(/[^0-9]+/g,""),10);if(isNaN(n)){return 0}return n};updateCount=function(el,n){var n1="";if(isNaN(n)){return}n=n<1?"0":n.toString();if(n.length>3){while(n.length>3){n1=thousandsSeparator+n.substr(n.length-3)+n1;n=n.substr(0,n.length-3)}n=n+n1}el.html(n)};updatePending=function(n){$("span.pending-count").each(function(){var a=$(this);if(n<0){n=0}a.closest(".awaiting-mod")[0==n?"addClass":"removeClass"]("count-0");updateCount(a,n);dashboardTotals()})};delAfter=function(r,settings){var total,N,spam,trash,pending,untrash=$(settings.target).parent().is("span.untrash"),unspam=$(settings.target).parent().is("span.unspam"),unapproved=$("#"+settings.element).is(".unapproved");function getUpdate(s){if($(settings.target).parent().is("span."+s)){return 1}else{if($("#"+settings.element).is("."+s)){return -1}}return 0}if(untrash){trash=-1}else{trash=getUpdate("trash")}if(unspam){spam=-1}else{spam=getUpdate("spam")}pending=getCount($("span.pending-count").eq(0));if($(settings.target).parent().is("span.unapprove")||((untrash||unspam)&&unapproved)){pending=pending+1}else{if(unapproved){pending=pending-1}}updatePending(pending);$("span.spam-count").each(function(){var a=$(this),n=getCount(a)+spam;updateCount(a,n)});$("span.trash-count").each(function(){var a=$(this),n=getCount(a)+trash;updateCount(a,n)});if($("#dashboard_right_now").length){N=trash?-1*trash:0;dashboardTotals(N)}else{total=totalInput.val()?parseInt(totalInput.val(),10):0;if($(settings.target).parent().is("span.undo")){total++}else{total--}if(total<0){total=0}if(("object"==typeof r)&&lastConfidentTime<settings.parsed.responses[0].supplemental.time){total_items_i18n=settings.parsed.responses[0].supplemental.total_items_i18n||"";if(total_items_i18n){$(".displaying-num").text(total_items_i18n);$(".total-pages").text(settings.parsed.responses[0].supplemental.total_pages_i18n);$(".tablenav-pages").find(".next-page, .last-page").toggleClass("disabled",settings.parsed.responses[0].supplemental.total_pages==$(".current-page").val())}updateTotalCount(total,settings.parsed.responses[0].supplemental.time,true)}else{updateTotalCount(total,r,false)}}if(!theExtraList||theExtraList.size()==0||theExtraList.children().size()==0||untrash||unspam){return}theList.get(0).wpList.add(theExtraList.children(":eq(0)").remove().clone());refillTheExtraList()};refillTheExtraList=function(ev){var args=$.query.get(),total_pages=$(".total-pages").text(),per_page=$('input[name="_per_page"]',"#comments-form").val();if(!args.paged){args.paged=1}if(args.paged>total_pages){return}if(ev){theExtraList.empty();args.number=Math.min(8,per_page)}else{args.number=1;args.offset=Math.min(8,per_page)-1}args.no_placeholder=true;args.paged++;if(true===args.comment_type){args.comment_type=""}args=$.extend(args,{action:"fetch-list",list_args:list_args,_ajax_fetch_list_nonce:$("#_ajax_fetch_list_nonce").val()});$.ajax({url:ajaxurl,global:false,dataType:"json",data:args,success:function(response){theExtraList.get(0).wpList.add(response.rows)}})};theExtraList=$("#the-extra-comment-list").wpList({alt:"",delColor:"none",addColor:"none"});theList=$("#the-comment-list").wpList({alt:"",delBefore:delBefore,dimAfter:dimAfter,delAfter:delAfter,addColor:"none"}).bind("wpListDelEnd",function(e,s){var id=s.element.replace(/[^0-9]+/g,"");if(s.target.className.indexOf(":trash=1")!=-1||s.target.className.indexOf(":spam=1")!=-1){$("#undo-"+id).fadeIn(300,function(){$(this).show()})}})};commentReply={cid:"",act:"",init:function(){var row=$("#replyrow");$("a.cancel",row).click(function(){return commentReply.revert()});$("a.save",row).click(function(){return commentReply.send()});$("input#author, input#author-email, input#author-url",row).keypress(function(e){if(e.which==13){commentReply.send();e.preventDefault();return false}});$("#the-comment-list .column-comment > p").dblclick(function(){commentReply.toggle($(this).parent())});$("#doaction, #doaction2, #post-query-submit").click(function(e){if($("#the-comment-list #replyrow").length>0){commentReply.close()}});this.comments_listing=$('#comments-form > input[name="comment_status"]').val()||""},addEvents:function(r){r.each(function(){$(this).find(".column-comment > p").dblclick(function(){commentReply.toggle($(this).parent())})})},toggle:function(el){if($(el).css("display")!="none"){$(el).find("a.vim-q").click()}},revert:function(){if($("#the-comment-list #replyrow").length<1){return false}$("#replyrow").fadeOut("fast",function(){commentReply.close()});return false},close:function(){var c;if(this.cid){c=$("#comment-"+this.cid);if(typeof QTags!="undefined"){QTags.closeAllTags("replycontent")}if(this.act=="edit-comment"){c.fadeIn(300,function(){c.show()}).css("backgroundColor","")}$("#replyrow").hide();$("#com-reply").append($("#replyrow"));$("#replycontent").val("");$("input","#edithead").val("");$(".error","#replysubmit").html("").hide();$(".waiting","#replysubmit").hide();$("#replycontent").css("height","");this.cid=""}},open:function(id,p,a){var t=this,editRow,rowData,act,c=$("#comment-"+id),h=c.height(),replyButton;t.close();t.cid=id;editRow=$("#replyrow");rowData=$("#inline-"+id);act=t.act=(a=="edit")?"edit-comment":"replyto-comment";$("#action",editRow).val(act);$("#comment_post_ID",editRow).val(p);$("#comment_ID",editRow).val(id);if(h>120){$("#replycontent",editRow).css("height",(35+h)+"px")}if(a=="edit"){$("#author",editRow).val($("div.author",rowData).text());$("#author-email",editRow).val($("div.author-email",rowData).text());$("#author-url",editRow).val($("div.author-url",rowData).text());$("#status",editRow).val($("div.comment_status",rowData).text());$("#replycontent",editRow).val($("textarea.comment",rowData).val());$("#edithead, #savebtn",editRow).show();$("#replyhead, #replybtn",editRow).hide();c.after(editRow).fadeOut("fast",function(){$("#replyrow").fadeIn(300,function(){$(this).show()})})}else{replyButton=$("#replybtn",editRow);$("#edithead, #savebtn",editRow).hide();$("#replyhead, #replybtn",editRow).show();c.after(editRow);if(c.hasClass("unapproved")){replyButton.text(adminCommentsL10n.replyApprove)}else{replyButton.text(adminCommentsL10n.reply)}$("#replyrow").fadeIn(300,function(){$(this).show()})}setTimeout(function(){var rtop,rbottom,scrollTop,vp,scrollBottom;rtop=$("#replyrow").offset().top;rbottom=rtop+$("#replyrow").height();scrollTop=window.pageYOffset||document.documentElement.scrollTop;vp=document.documentElement.clientHeight||self.innerHeight||0;scrollBottom=scrollTop+vp;if(scrollBottom-20<rbottom){window.scroll(0,rbottom-vp+35)}else{if(rtop-20<scrollTop){window.scroll(0,rtop-35)}}$("#replycontent").focus().keyup(function(e){if(e.which==27){commentReply.revert()}})},600);return false},send:function(){var post={};$("#replysubmit .error").hide();$("#replysubmit .waiting").show();$("#replyrow input").not(":button").each(function(){post[$(this).attr("name")]=$(this).val()});post.content=$("#replycontent").val();post.id=post.comment_post_ID;post.comments_listing=this.comments_listing;post.p=$('[name="p"]').val();if($("#comment-"+$("#comment_ID").val()).hasClass("unapproved")){post.approve_parent=1}$.ajax({type:"POST",url:ajaxurl,data:post,success:function(x){commentReply.show(x)},error:function(r){commentReply.error(r)}});return false},show:function(xml){var t=this,r,c,id,bg,pid;if(typeof(xml)=="string"){t.error({responseText:xml});return false}r=wpAjax.parseAjaxResponse(xml);if(r.errors){t.error({responseText:wpAjax.broken});return false}t.revert();r=r.responses[0];c=r.data;id="#comment-"+r.id;if("edit-comment"==t.act){$(id).remove()}if(r.supplemental.parent_approved){pid=$("#comment-"+r.supplemental.parent_approved);updatePending(getCount($("span.pending-count").eq(0))-1);if(this.comments_listing=="moderated"){pid.animate({backgroundColor:"#CCEEBB"},400,function(){pid.fadeOut()});return}}$(c).hide();$("#replyrow").after(c);id=$(id);t.addEvents(id);bg=id.hasClass("unapproved")?"#FFFFE0":id.closest(".widefat, .postbox").css("backgroundColor");id.animate({backgroundColor:"#CCEEBB"},300).animate({backgroundColor:bg},300,function(){if(pid&&pid.length){pid.animate({backgroundColor:"#CCEEBB"},300).animate({backgroundColor:bg},300).removeClass("unapproved").addClass("approved").find("div.comment_status").html("1")}})},error:function(r){var er=r.statusText;$("#replysubmit .waiting").hide();if(r.responseText){er=r.responseText.replace(/<.[^<>]*?>/g,"")}if(er){$("#replysubmit .error").html(er).show()}}};$(document).ready(function(){var make_hotkeys_redirect,edit_comment,toggle_all,make_bulk;setCommentsList();commentReply.init();$(document).delegate("span.delete a.delete","click",function(){return false});if(typeof $.table_hotkeys!="undefined"){make_hotkeys_redirect=function(which){return function(){var first_last,l;first_last="next"==which?"first":"last";l=$(".tablenav-pages ."+which+"-page:not(.disabled)");if(l.length){window.location=l[0].href.replace(/\&hotkeys_highlight_(first|last)=1/g,"")+"&hotkeys_highlight_"+first_last+"=1"}}};edit_comment=function(event,current_row){window.location=$("span.edit a",current_row).attr("href")};toggle_all=function(){toggleWithKeyboard=true;$("input:checkbox","#cb").click().prop("checked",false);toggleWithKeyboard=false};make_bulk=function(value){return function(){var scope=$('select[name="action"]');$('option[value="'+value+'"]',scope).prop("selected",true);$("#doaction").click()}};$.table_hotkeys($("table.widefat"),["a","u","s","d","r","q","z",["e",edit_comment],["shift+x",toggle_all],["shift+a",make_bulk("approve")],["shift+s",make_bulk("spam")],["shift+d",make_bulk("delete")],["shift+t",make_bulk("trash")],["shift+z",make_bulk("untrash")],["shift+u",make_bulk("unapprove")]],{highlight_first:adminCommentsL10n.hotkeys_highlight_first,highlight_last:adminCommentsL10n.hotkeys_highlight_last,prev_page_link_cb:make_hotkeys_redirect("prev"),next_page_link_cb:make_hotkeys_redirect("next")})}})})(jQuery);
\ No newline at end of file
index 2271bdb38a7e334426afc2b26681bfcc073e4439..37c792788f443e89fceb5c5fffc8cca06849a5a5 100644 (file)
@@ -1,25 +1,64 @@
 
 
-jQuery(document).ready(function($){
-       var h = wpCookies.getHash('TinyMCE_content_size');
-
-       if ( getUserSetting( 'editor' ) == 'html' ) {
-               if ( h )
-                       $('#content').css('height', h.ch - 15 + 'px');
-       } else {
-               if ( typeof tinyMCE != 'object' ) {
-                       $('#content').css('color', '#000');
-               } else {
-                       $('#quicktags').hide();
+var switchEditors = {
+
+       switchto: function(el) {
+               var aid = el.id, l = aid.length, id = aid.substr(0, l - 5), mode = aid.substr(l - 4);
+
+               this.go(id, mode);
+       },
+
+       go: function(id, mode) { // mode can be 'html', 'tmce', or 'toggle'
+               id = id || 'content';
+               mode = mode || 'toggle';
+
+               var t = this, ed = tinyMCE.get(id), wrap_id, txtarea_el, dom = tinymce.DOM;
+
+               wrap_id = 'wp-'+id+'-wrap';
+               txtarea_el = dom.get(id);
+
+               if ( 'toggle' == mode ) {
+                       if ( ed && !ed.isHidden() )
+                               mode = 'html';
+                       else
+                               mode = 'tmce';
                }
                }
-       }
-});
 
 
-var switchEditors = {
+               if ( 'tmce' == mode || 'tinymce' == mode ) {
+                       if ( ed && ! ed.isHidden() )
+                               return false;
+
+                       if ( typeof(QTags) != 'undefined' )
+                               QTags.closeAllTags(id);
+
+                       if ( tinyMCEPreInit.mceInit[id] && tinyMCEPreInit.mceInit[id].wpautop )
+                               txtarea_el.value = t.wpautop( txtarea_el.value );
+
+                       if ( ed ) {
+                               ed.show();
+                       } else {
+                               ed = new tinymce.Editor(id, tinyMCEPreInit.mceInit[id]);
+                               ed.render();
+                       }
+
+                       dom.removeClass(wrap_id, 'html-active');
+                       dom.addClass(wrap_id, 'tmce-active');
+                       setUserSetting('editor', 'tinymce');
+
+               } else if ( 'html' == mode ) {
+
+                       if ( ed && ed.isHidden() )
+                               return false;
 
 
-       mode : '',
+                       if ( ed ) {
+                               txtarea_el.style.height = ed.getContentAreaContainer().offsetHeight + 20 + 'px';
+                               ed.hide();
+                       }
 
 
-       I : function(e) {
-               return document.getElementById(e);
+                       dom.removeClass(wrap_id, 'tmce-active');
+                       dom.addClass(wrap_id, 'html-active');
+                       setUserSetting('editor', 'html');
+               }
+               return false;
        },
 
        _wp_Nop : function(content) {
        },
 
        _wp_Nop : function(content) {
@@ -85,55 +124,6 @@ var switchEditors = {
                return content;
        },
 
                return content;
        },
 
-       go : function(id, mode) {
-               id = id || 'content';
-               mode = mode || this.mode || '';
-
-               var ed, qt = this.I('quicktags'), H = this.I('edButtonHTML'), P = this.I('edButtonPreview'), ta = this.I(id);
-
-               try { ed = tinyMCE.get(id); }
-               catch(e) { ed = false; }
-
-               if ( 'tinymce' == mode ) {
-                       if ( ed && ! ed.isHidden() )
-                               return false;
-
-                       setUserSetting( 'editor', 'tinymce' );
-                       this.mode = 'html';
-
-                       P.className = 'active';
-                       H.className = '';
-                       edCloseAllTags(); // :-(
-                       qt.style.display = 'none';
-
-                       ta.style.color = '#FFF';
-                       ta.value = this.wpautop(ta.value);
-
-                       try {
-                               if ( ed )
-                                       ed.show();
-                               else
-                                       tinyMCE.execCommand("mceAddControl", false, id);
-                       } catch(e) {}
-
-                       ta.style.color = '#000';
-               } else {
-                       setUserSetting( 'editor', 'html' );
-                       ta.style.color = '#000';
-                       this.mode = 'tinymce';
-                       H.className = 'active';
-                       P.className = '';
-
-                       if ( ed && !ed.isHidden() ) {
-                               ta.style.height = ed.getContentAreaContainer().offsetHeight + 24 + 'px';
-                               ed.hide();
-                       }
-
-                       qt.style.display = 'block';
-               }
-               return false;
-       },
-
        _wp_Autop : function(pee) {
                var blocklist = 'table|thead|tfoot|tbody|tr|td|th|caption|col|colgroup|div|dl|dd|dt|ul|ol|li|pre|select|form|blockquote|address|math|p|h[1-6]|fieldset|legend|hr|noscript|menu|samp|header|footer|article|section|hgroup|nav|aside|details|summary';
 
        _wp_Autop : function(pee) {
                var blocklist = 'table|thead|tfoot|tbody|tr|td|th|caption|col|colgroup|div|dl|dd|dt|ul|ol|li|pre|select|form|blockquote|address|math|p|h[1-6]|fieldset|legend|hr|noscript|menu|samp|header|footer|article|section|hgroup|nav|aside|details|summary';
 
@@ -188,20 +178,29 @@ var switchEditors = {
        },
 
        pre_wpautop : function(content) {
        },
 
        pre_wpautop : function(content) {
-               var t = this, o = { o: t, data: content, unfiltered: content };
+               var t = this, o = { o: t, data: content, unfiltered: content },
+                       q = typeof(jQuery) != 'undefined';
 
 
-               jQuery('body').trigger('beforePreWpautop', [o]);
+               if ( q )
+                       jQuery('body').trigger('beforePreWpautop', [o]);
                o.data = t._wp_Nop(o.data);
                o.data = t._wp_Nop(o.data);
-               jQuery('body').trigger('afterPreWpautop', [o]);
+               if ( q )
+                       jQuery('body').trigger('afterPreWpautop', [o]);
+
                return o.data;
        },
 
        wpautop : function(pee) {
                return o.data;
        },
 
        wpautop : function(pee) {
-               var t = this, o = { o: t, data: pee, unfiltered: pee };
+               var t = this, o = { o: t, data: pee, unfiltered: pee },
+                       q = typeof(jQuery) != 'undefined';
 
 
-               jQuery('body').trigger('beforeWpautop', [o]);
+               if ( q )
+                       jQuery('body').trigger('beforeWpautop', [o]);
                o.data = t._wp_Autop(o.data);
                o.data = t._wp_Autop(o.data);
-               jQuery('body').trigger('afterWpautop', [o]);
+               if ( q )
+                       jQuery('body').trigger('afterWpautop', [o]);
+
                return o.data;
        }
                return o.data;
        }
-};
+}
+
index c3e342a9ce203307acdebea4c419f4aca591119b..6de774f4b23f0dc2306faae4ade385d79fd354aa 100644 (file)
@@ -1 +1 @@
-jQuery(document).ready(function(b){var a=wpCookies.getHash("TinyMCE_content_size");if(getUserSetting("editor")=="html"){if(a){b("#content").css("height",a.ch-15+"px")}}else{if(typeof tinyMCE!="object"){b("#content").css("color","#000")}else{b("#quicktags").hide()}}});var switchEditors={mode:"",I:function(a){return document.getElementById(a)},_wp_Nop:function(b){var c,a;if(b.indexOf("<pre")!=-1||b.indexOf("<script")!=-1){b=b.replace(/<(pre|script)[^>]*>[\s\S]+?<\/\1>/g,function(d){d=d.replace(/<br ?\/?>(\r\n|\n)?/g,"<wp_temp>");return d.replace(/<\/?p( [^>]*)?>(\r\n|\n)?/g,"<wp_temp>")})}c="blockquote|ul|ol|li|table|thead|tbody|tfoot|tr|th|td|div|h[1-6]|p|fieldset";b=b.replace(new RegExp("\\s*</("+c+")>\\s*","g"),"</$1>\n");b=b.replace(new RegExp("\\s*<((?:"+c+")(?: [^>]*)?)>","g"),"\n<$1>");b=b.replace(/(<p [^>]+>.*?)<\/p>/g,"$1</p#>");b=b.replace(/<div( [^>]*)?>\s*<p>/gi,"<div$1>\n\n");b=b.replace(/\s*<p>/gi,"");b=b.replace(/\s*<\/p>\s*/gi,"\n\n");b=b.replace(/\n[\s\u00a0]+\n/g,"\n\n");b=b.replace(/\s*<br ?\/?>\s*/gi,"\n");b=b.replace(/\s*<div/g,"\n<div");b=b.replace(/<\/div>\s*/g,"</div>\n");b=b.replace(/\s*\[caption([^\[]+)\[\/caption\]\s*/gi,"\n\n[caption$1[/caption]\n\n");b=b.replace(/caption\]\n\n+\[caption/g,"caption]\n\n[caption");a="blockquote|ul|ol|li|table|thead|tbody|tfoot|tr|th|td|h[1-6]|pre|fieldset";b=b.replace(new RegExp("\\s*<((?:"+a+")(?: [^>]*)?)\\s*>","g"),"\n<$1>");b=b.replace(new RegExp("\\s*</("+a+")>\\s*","g"),"</$1>\n");b=b.replace(/<li([^>]*)>/g,"\t<li$1>");if(b.indexOf("<hr")!=-1){b=b.replace(/\s*<hr( [^>]*)?>\s*/g,"\n\n<hr$1>\n\n")}if(b.indexOf("<object")!=-1){b=b.replace(/<object[\s\S]+?<\/object>/g,function(d){return d.replace(/[\r\n]+/g,"")})}b=b.replace(/<\/p#>/g,"</p>\n");b=b.replace(/\s*(<p [^>]+>[\s\S]*?<\/p>)/g,"\n$1");b=b.replace(/^\s+/,"");b=b.replace(/[\s\u00a0]+$/,"");b=b.replace(/<wp_temp>/g,"\n");return b},go:function(i,g){i=i||"content";g=g||this.mode||"";var b,h=this.I("quicktags"),c=this.I("edButtonHTML"),d=this.I("edButtonPreview"),a=this.I(i);try{b=tinyMCE.get(i)}catch(f){b=false}if("tinymce"==g){if(b&&!b.isHidden()){return false}setUserSetting("editor","tinymce");this.mode="html";d.className="active";c.className="";edCloseAllTags();h.style.display="none";a.style.color="#FFF";a.value=this.wpautop(a.value);try{if(b){b.show()}else{tinyMCE.execCommand("mceAddControl",false,i)}}catch(f){}a.style.color="#000"}else{setUserSetting("editor","html");a.style.color="#000";this.mode="tinymce";c.className="active";d.className="";if(b&&!b.isHidden()){a.style.height=b.getContentAreaContainer().offsetHeight+24+"px";b.hide()}h.style.display="block"}return false},_wp_Autop:function(a){var b="table|thead|tfoot|tbody|tr|td|th|caption|col|colgroup|div|dl|dd|dt|ul|ol|li|pre|select|form|blockquote|address|math|p|h[1-6]|fieldset|legend|hr|noscript|menu|samp|header|footer|article|section|hgroup|nav|aside|details|summary";if(a.indexOf("<object")!=-1){a=a.replace(/<object[\s\S]+?<\/object>/g,function(c){return c.replace(/[\r\n]+/g,"")})}a=a.replace(/<[^<>]+>/g,function(c){return c.replace(/[\r\n]+/g," ")});if(a.indexOf("<pre")!=-1||a.indexOf("<script")!=-1){a=a.replace(/<(pre|script)[^>]*>[\s\S]+?<\/\1>/g,function(c){return c.replace(/(\r\n|\n)/g,"<wp_temp_br>")})}a=a+"\n\n";a=a.replace(/<br \/>\s*<br \/>/gi,"\n\n");a=a.replace(new RegExp("(<(?:"+b+")(?: [^>]*)?>)","gi"),"\n$1");a=a.replace(new RegExp("(</(?:"+b+")>)","gi"),"$1\n\n");a=a.replace(/<hr( [^>]*)?>/gi,"<hr$1>\n\n");a=a.replace(/\r\n|\r/g,"\n");a=a.replace(/\n\s*\n+/g,"\n\n");a=a.replace(/([\s\S]+?)\n\n/g,"<p>$1</p>\n");a=a.replace(/<p>\s*?<\/p>/gi,"");a=a.replace(new RegExp("<p>\\s*(</?(?:"+b+")(?: [^>]*)?>)\\s*</p>","gi"),"$1");a=a.replace(/<p>(<li.+?)<\/p>/gi,"$1");a=a.replace(/<p>\s*<blockquote([^>]*)>/gi,"<blockquote$1><p>");a=a.replace(/<\/blockquote>\s*<\/p>/gi,"</p></blockquote>");a=a.replace(new RegExp("<p>\\s*(</?(?:"+b+")(?: [^>]*)?>)","gi"),"$1");a=a.replace(new RegExp("(</?(?:"+b+")(?: [^>]*)?>)\\s*</p>","gi"),"$1");a=a.replace(/\s*\n/gi,"<br />\n");a=a.replace(new RegExp("(</?(?:"+b+")[^>]*>)\\s*<br />","gi"),"$1");a=a.replace(/<br \/>(\s*<\/?(?:p|li|div|dl|dd|dt|th|pre|td|ul|ol)>)/gi,"$1");a=a.replace(/(?:<p>|<br ?\/?>)*\s*\[caption([^\[]+)\[\/caption\]\s*(?:<\/p>|<br ?\/?>)*/gi,"[caption$1[/caption]");a=a.replace(/(<(?:div|th|td|form|fieldset|dd)[^>]*>)(.*?)<\/p>/g,function(e,d,f){if(f.match(/<p( [^>]*)?>/)){return e}return d+"<p>"+f+"</p>"});a=a.replace(/<wp_temp_br>/g,"\n");return a},pre_wpautop:function(b){var a=this,c={o:a,data:b,unfiltered:b};jQuery("body").trigger("beforePreWpautop",[c]);c.data=a._wp_Nop(c.data);jQuery("body").trigger("afterPreWpautop",[c]);return c.data},wpautop:function(b){var a=this,c={o:a,data:b,unfiltered:b};jQuery("body").trigger("beforeWpautop",[c]);c.data=a._wp_Autop(c.data);jQuery("body").trigger("afterWpautop",[c]);return c.data}};
\ No newline at end of file
+var switchEditors={switchto:function(b){var c=b.id,a=c.length,e=c.substr(0,a-5),d=c.substr(a-4);this.go(e,d)},go:function(g,f){g=g||"content";f=f||"toggle";var c=this,b=tinyMCE.get(g),a,d,e=tinymce.DOM;a="wp-"+g+"-wrap";d=e.get(g);if("toggle"==f){if(b&&!b.isHidden()){f="html"}else{f="tmce"}}if("tmce"==f||"tinymce"==f){if(b&&!b.isHidden()){return false}if(typeof(QTags)!="undefined"){QTags.closeAllTags(g)}if(tinyMCEPreInit.mceInit[g]&&tinyMCEPreInit.mceInit[g].wpautop){d.value=c.wpautop(d.value)}if(b){b.show()}else{b=new tinymce.Editor(g,tinyMCEPreInit.mceInit[g]);b.render()}e.removeClass(a,"html-active");e.addClass(a,"tmce-active");setUserSetting("editor","tinymce")}else{if("html"==f){if(b&&b.isHidden()){return false}if(b){d.style.height=b.getContentAreaContainer().offsetHeight+20+"px";b.hide()}e.removeClass(a,"tmce-active");e.addClass(a,"html-active");setUserSetting("editor","html")}}return false},_wp_Nop:function(b){var c,a;if(b.indexOf("<pre")!=-1||b.indexOf("<script")!=-1){b=b.replace(/<(pre|script)[^>]*>[\s\S]+?<\/\1>/g,function(d){d=d.replace(/<br ?\/?>(\r\n|\n)?/g,"<wp_temp>");return d.replace(/<\/?p( [^>]*)?>(\r\n|\n)?/g,"<wp_temp>")})}c="blockquote|ul|ol|li|table|thead|tbody|tfoot|tr|th|td|div|h[1-6]|p|fieldset";b=b.replace(new RegExp("\\s*</("+c+")>\\s*","g"),"</$1>\n");b=b.replace(new RegExp("\\s*<((?:"+c+")(?: [^>]*)?)>","g"),"\n<$1>");b=b.replace(/(<p [^>]+>.*?)<\/p>/g,"$1</p#>");b=b.replace(/<div( [^>]*)?>\s*<p>/gi,"<div$1>\n\n");b=b.replace(/\s*<p>/gi,"");b=b.replace(/\s*<\/p>\s*/gi,"\n\n");b=b.replace(/\n[\s\u00a0]+\n/g,"\n\n");b=b.replace(/\s*<br ?\/?>\s*/gi,"\n");b=b.replace(/\s*<div/g,"\n<div");b=b.replace(/<\/div>\s*/g,"</div>\n");b=b.replace(/\s*\[caption([^\[]+)\[\/caption\]\s*/gi,"\n\n[caption$1[/caption]\n\n");b=b.replace(/caption\]\n\n+\[caption/g,"caption]\n\n[caption");a="blockquote|ul|ol|li|table|thead|tbody|tfoot|tr|th|td|h[1-6]|pre|fieldset";b=b.replace(new RegExp("\\s*<((?:"+a+")(?: [^>]*)?)\\s*>","g"),"\n<$1>");b=b.replace(new RegExp("\\s*</("+a+")>\\s*","g"),"</$1>\n");b=b.replace(/<li([^>]*)>/g,"\t<li$1>");if(b.indexOf("<hr")!=-1){b=b.replace(/\s*<hr( [^>]*)?>\s*/g,"\n\n<hr$1>\n\n")}if(b.indexOf("<object")!=-1){b=b.replace(/<object[\s\S]+?<\/object>/g,function(d){return d.replace(/[\r\n]+/g,"")})}b=b.replace(/<\/p#>/g,"</p>\n");b=b.replace(/\s*(<p [^>]+>[\s\S]*?<\/p>)/g,"\n$1");b=b.replace(/^\s+/,"");b=b.replace(/[\s\u00a0]+$/,"");b=b.replace(/<wp_temp>/g,"\n");return b},_wp_Autop:function(a){var b="table|thead|tfoot|tbody|tr|td|th|caption|col|colgroup|div|dl|dd|dt|ul|ol|li|pre|select|form|blockquote|address|math|p|h[1-6]|fieldset|legend|hr|noscript|menu|samp|header|footer|article|section|hgroup|nav|aside|details|summary";if(a.indexOf("<object")!=-1){a=a.replace(/<object[\s\S]+?<\/object>/g,function(c){return c.replace(/[\r\n]+/g,"")})}a=a.replace(/<[^<>]+>/g,function(c){return c.replace(/[\r\n]+/g," ")});if(a.indexOf("<pre")!=-1||a.indexOf("<script")!=-1){a=a.replace(/<(pre|script)[^>]*>[\s\S]+?<\/\1>/g,function(c){return c.replace(/(\r\n|\n)/g,"<wp_temp_br>")})}a=a+"\n\n";a=a.replace(/<br \/>\s*<br \/>/gi,"\n\n");a=a.replace(new RegExp("(<(?:"+b+")(?: [^>]*)?>)","gi"),"\n$1");a=a.replace(new RegExp("(</(?:"+b+")>)","gi"),"$1\n\n");a=a.replace(/<hr( [^>]*)?>/gi,"<hr$1>\n\n");a=a.replace(/\r\n|\r/g,"\n");a=a.replace(/\n\s*\n+/g,"\n\n");a=a.replace(/([\s\S]+?)\n\n/g,"<p>$1</p>\n");a=a.replace(/<p>\s*?<\/p>/gi,"");a=a.replace(new RegExp("<p>\\s*(</?(?:"+b+")(?: [^>]*)?>)\\s*</p>","gi"),"$1");a=a.replace(/<p>(<li.+?)<\/p>/gi,"$1");a=a.replace(/<p>\s*<blockquote([^>]*)>/gi,"<blockquote$1><p>");a=a.replace(/<\/blockquote>\s*<\/p>/gi,"</p></blockquote>");a=a.replace(new RegExp("<p>\\s*(</?(?:"+b+")(?: [^>]*)?>)","gi"),"$1");a=a.replace(new RegExp("(</?(?:"+b+")(?: [^>]*)?>)\\s*</p>","gi"),"$1");a=a.replace(/\s*\n/gi,"<br />\n");a=a.replace(new RegExp("(</?(?:"+b+")[^>]*>)\\s*<br />","gi"),"$1");a=a.replace(/<br \/>(\s*<\/?(?:p|li|div|dl|dd|dt|th|pre|td|ul|ol)>)/gi,"$1");a=a.replace(/(?:<p>|<br ?\/?>)*\s*\[caption([^\[]+)\[\/caption\]\s*(?:<\/p>|<br ?\/?>)*/gi,"[caption$1[/caption]");a=a.replace(/(<(?:div|th|td|form|fieldset|dd)[^>]*>)(.*?)<\/p>/g,function(e,d,f){if(f.match(/<p( [^>]*)?>/)){return e}return d+"<p>"+f+"</p>"});a=a.replace(/<wp_temp_br>/g,"\n");return a},pre_wpautop:function(b){var a=this,d={o:a,data:b,unfiltered:b},c=typeof(jQuery)!="undefined";if(c){jQuery("body").trigger("beforePreWpautop",[d])}d.data=a._wp_Nop(d.data);if(c){jQuery("body").trigger("afterPreWpautop",[d])}return d.data},wpautop:function(b){var a=this,d={o:a,data:b,unfiltered:b},c=typeof(jQuery)!="undefined";if(c){jQuery("body").trigger("beforeWpautop",[d])}d.data=a._wp_Autop(d.data);if(c){jQuery("body").trigger("afterWpautop",[d])}return d.data}};
\ No newline at end of file
index 1e80fd9f8517c095dcbbc389043bcb6f8627b493..d7b4bb19100fbf769f24043937478d381e29bc18 100644 (file)
@@ -41,12 +41,14 @@ jQuery(document).ready(function($) {
                $('#sort-buttons span a').toggle();
                $('a.describe-toggle-on').hide();
                $('a.describe-toggle-off, table.slidetoggle').show();
                $('#sort-buttons span a').toggle();
                $('a.describe-toggle-on').hide();
                $('a.describe-toggle-off, table.slidetoggle').show();
+               $('img.pinkynail').toggle(false);
                return false;
        });
        $('#hideall').click(function(){
                $('#sort-buttons span a').toggle();
                $('a.describe-toggle-on').show();
                $('a.describe-toggle-off, table.slidetoggle').hide();
                return false;
        });
        $('#hideall').click(function(){
                $('#sort-buttons span a').toggle();
                $('a.describe-toggle-on').show();
                $('a.describe-toggle-off, table.slidetoggle').hide();
+               $('img.pinkynail').toggle(true);
                return false;
        });
 
                return false;
        });
 
index 0271f1bc3065f083b88e5dac085868f41a36865a..9d112ca61ce50adeeb99354d070c0effc72006e4 100644 (file)
@@ -1 +1 @@
-jQuery(document).ready(function(c){var b,e,a,d=false;e=function(){b=c("#media-items").sortable({items:"div.media-item",placeholder:"sorthelper",axis:"y",distance:2,handle:"div.filename",stop:function(i,h){var g=c("#media-items").sortable("toArray"),f=g.length;c.each(g,function(k,l){var j=d?(f-k):(1+k);c("#"+l+" .menu_order input").val(j)})}})};sortIt=function(){var g=c(".menu_order_input"),f=g.length;g.each(function(j){var h=d?(f-j):(1+j);c(this).val(h)})};clearAll=function(f){f=f||0;c(".menu_order_input").each(function(){if(this.value=="0"||f){this.value=""}})};c("#asc").click(function(){d=false;sortIt();return false});c("#desc").click(function(){d=true;sortIt();return false});c("#clear").click(function(){clearAll(1);return false});c("#showall").click(function(){c("#sort-buttons span a").toggle();c("a.describe-toggle-on").hide();c("a.describe-toggle-off, table.slidetoggle").show();return false});c("#hideall").click(function(){c("#sort-buttons span a").toggle();c("a.describe-toggle-on").show();c("a.describe-toggle-off, table.slidetoggle").hide();return false});e();clearAll();if(c("#media-items>*").length>1){a=wpgallery.getWin();c("#save-all, #gallery-settings").show();if(typeof a.tinyMCE!="undefined"&&a.tinyMCE.activeEditor&&!a.tinyMCE.activeEditor.isHidden()){wpgallery.mcemode=true;wpgallery.init()}else{c("#insert-gallery").show()}}});jQuery(window).unload(function(){tinymce=tinyMCE=wpgallery=null});var tinymce=null,tinyMCE,wpgallery;wpgallery={mcemode:false,editor:{},dom:{},is_update:false,el:{},I:function(a){return document.getElementById(a)},init:function(){var d=this,a,f,c,e,b=d.getWin();if(!d.mcemode){return}a=(""+document.location.search).replace(/^\?/,"").split("&");f={};for(c=0;c<a.length;c++){e=a[c].split("=");f[unescape(e[0])]=unescape(e[1])}if(f.mce_rdomain){document.domain=f.mce_rdomain}tinymce=b.tinymce;tinyMCE=b.tinyMCE;d.editor=tinymce.EditorManager.activeEditor;d.setup()},getWin:function(){return window.dialogArguments||opener||parent||top},setup:function(){var f=this,c,d=f.editor,i,e,h,b,j;if(!f.mcemode){return}f.el=d.selection.getNode();if(f.el.nodeName!="IMG"||!d.dom.hasClass(f.el,"wpGallery")){if((i=d.dom.select("img.wpGallery"))&&i[0]){f.el=i[0]}else{if(getUserSetting("galfile")=="1"){f.I("linkto-file").checked="checked"}if(getUserSetting("galdesc")=="1"){f.I("order-desc").checked="checked"}if(getUserSetting("galcols")){f.I("columns").value=getUserSetting("galcols")}if(getUserSetting("galord")){f.I("orderby").value=getUserSetting("galord")}jQuery("#insert-gallery").show();return}}c=d.dom.getAttrib(f.el,"title");c=d.dom.decode(c);if(c){jQuery("#update-gallery").show();f.is_update=true;e=c.match(/columns=['"]([0-9]+)['"]/);h=c.match(/link=['"]([^'"]+)['"]/i);b=c.match(/order=['"]([^'"]+)['"]/i);j=c.match(/orderby=['"]([^'"]+)['"]/i);if(h&&h[1]){f.I("linkto-file").checked="checked"}if(b&&b[1]){f.I("order-desc").checked="checked"}if(e&&e[1]){f.I("columns").value=""+e[1]}if(j&&j[1]){f.I("orderby").value=j[1]}}else{jQuery("#insert-gallery").show()}},update:function(){var b=this,a=b.editor,d="",c;if(!b.mcemode||!b.is_update){c="[gallery"+b.getSettings()+"]";b.getWin().send_to_editor(c);return}if(b.el.nodeName!="IMG"){return}d=a.dom.decode(a.dom.getAttrib(b.el,"title"));d=d.replace(/\s*(order|link|columns|orderby)=['"]([^'"]+)['"]/gi,"");d+=b.getSettings();a.dom.setAttrib(b.el,"title",d);b.getWin().tb_remove()},getSettings:function(){var a=this.I,b="";if(a("linkto-file").checked){b+=' link="file"';setUserSetting("galfile","1")}if(a("order-desc").checked){b+=' order="DESC"';setUserSetting("galdesc","1")}if(a("columns").value!=3){b+=' columns="'+a("columns").value+'"';setUserSetting("galcols",a("columns").value)}if(a("orderby").value!="menu_order"){b+=' orderby="'+a("orderby").value+'"';setUserSetting("galord",a("orderby").value)}return b}};
\ No newline at end of file
+jQuery(document).ready(function(c){var b,e,a,d=false;e=function(){b=c("#media-items").sortable({items:"div.media-item",placeholder:"sorthelper",axis:"y",distance:2,handle:"div.filename",stop:function(i,h){var g=c("#media-items").sortable("toArray"),f=g.length;c.each(g,function(k,l){var j=d?(f-k):(1+k);c("#"+l+" .menu_order input").val(j)})}})};sortIt=function(){var g=c(".menu_order_input"),f=g.length;g.each(function(j){var h=d?(f-j):(1+j);c(this).val(h)})};clearAll=function(f){f=f||0;c(".menu_order_input").each(function(){if(this.value=="0"||f){this.value=""}})};c("#asc").click(function(){d=false;sortIt();return false});c("#desc").click(function(){d=true;sortIt();return false});c("#clear").click(function(){clearAll(1);return false});c("#showall").click(function(){c("#sort-buttons span a").toggle();c("a.describe-toggle-on").hide();c("a.describe-toggle-off, table.slidetoggle").show();c("img.pinkynail").toggle(false);return false});c("#hideall").click(function(){c("#sort-buttons span a").toggle();c("a.describe-toggle-on").show();c("a.describe-toggle-off, table.slidetoggle").hide();c("img.pinkynail").toggle(true);return false});e();clearAll();if(c("#media-items>*").length>1){a=wpgallery.getWin();c("#save-all, #gallery-settings").show();if(typeof a.tinyMCE!="undefined"&&a.tinyMCE.activeEditor&&!a.tinyMCE.activeEditor.isHidden()){wpgallery.mcemode=true;wpgallery.init()}else{c("#insert-gallery").show()}}});jQuery(window).unload(function(){tinymce=tinyMCE=wpgallery=null});var tinymce=null,tinyMCE,wpgallery;wpgallery={mcemode:false,editor:{},dom:{},is_update:false,el:{},I:function(a){return document.getElementById(a)},init:function(){var d=this,a,f,c,e,b=d.getWin();if(!d.mcemode){return}a=(""+document.location.search).replace(/^\?/,"").split("&");f={};for(c=0;c<a.length;c++){e=a[c].split("=");f[unescape(e[0])]=unescape(e[1])}if(f.mce_rdomain){document.domain=f.mce_rdomain}tinymce=b.tinymce;tinyMCE=b.tinyMCE;d.editor=tinymce.EditorManager.activeEditor;d.setup()},getWin:function(){return window.dialogArguments||opener||parent||top},setup:function(){var f=this,c,d=f.editor,i,e,h,b,j;if(!f.mcemode){return}f.el=d.selection.getNode();if(f.el.nodeName!="IMG"||!d.dom.hasClass(f.el,"wpGallery")){if((i=d.dom.select("img.wpGallery"))&&i[0]){f.el=i[0]}else{if(getUserSetting("galfile")=="1"){f.I("linkto-file").checked="checked"}if(getUserSetting("galdesc")=="1"){f.I("order-desc").checked="checked"}if(getUserSetting("galcols")){f.I("columns").value=getUserSetting("galcols")}if(getUserSetting("galord")){f.I("orderby").value=getUserSetting("galord")}jQuery("#insert-gallery").show();return}}c=d.dom.getAttrib(f.el,"title");c=d.dom.decode(c);if(c){jQuery("#update-gallery").show();f.is_update=true;e=c.match(/columns=['"]([0-9]+)['"]/);h=c.match(/link=['"]([^'"]+)['"]/i);b=c.match(/order=['"]([^'"]+)['"]/i);j=c.match(/orderby=['"]([^'"]+)['"]/i);if(h&&h[1]){f.I("linkto-file").checked="checked"}if(b&&b[1]){f.I("order-desc").checked="checked"}if(e&&e[1]){f.I("columns").value=""+e[1]}if(j&&j[1]){f.I("orderby").value=j[1]}}else{jQuery("#insert-gallery").show()}},update:function(){var b=this,a=b.editor,d="",c;if(!b.mcemode||!b.is_update){c="[gallery"+b.getSettings()+"]";b.getWin().send_to_editor(c);return}if(b.el.nodeName!="IMG"){return}d=a.dom.decode(a.dom.getAttrib(b.el,"title"));d=d.replace(/\s*(order|link|columns|orderby)=['"]([^'"]+)['"]/gi,"");d+=b.getSettings();a.dom.setAttrib(b.el,"title",d);b.getWin().tb_remove()},getSettings:function(){var a=this.I,b="";if(a("linkto-file").checked){b+=' link="file"';setUserSetting("galfile","1")}if(a("order-desc").checked){b+=' order="DESC"';setUserSetting("galdesc","1")}if(a("columns").value!=3){b+=' columns="'+a("columns").value+'"';setUserSetting("galcols",a("columns").value)}if(a("orderby").value!="menu_order"){b+=' orderby="'+a("orderby").value+'"';setUserSetting("galord",a("orderby").value)}return b}};
\ No newline at end of file
index 71bc1816770dbaae9636df43a8caced39193bffb..e4dfbda1cecec8944717f5894a8dc5c201a31cda 100644 (file)
@@ -181,6 +181,9 @@ imageEdit = {
                                $('input.imgedit-submit-btn', '#imgedit-panel-' + postid).prop('disabled', true);
 
                        t.toggleEditor(postid, 0);
                                $('input.imgedit-submit-btn', '#imgedit-panel-' + postid).prop('disabled', true);
 
                        t.toggleEditor(postid, 0);
+               }).error(function(){
+                       $('#imgedit-crop-' + postid).empty().append('<div class="error"><p>' + imageEditL10n.error + '</p></div>');
+                       t.toggleEditor(postid, 0);
                }).attr('src', ajaxurl + '?' + $.param(data));
        },
 
                }).attr('src', ajaxurl + '?' + $.param(data));
        },
 
index 27a2d049a5b69ece8247409bf8d3105a501ccf8c..dd15d165d6e9dc326272a15b6e3ca4e06318930e 100644 (file)
@@ -1 +1 @@
-var imageEdit;(function(a){imageEdit={iasapi:{},hold:{},postid:"",intval:function(b){return b|0},setDisabled:function(c,b){if(b){c.removeClass("disabled");a("input",c).removeAttr("disabled")}else{c.addClass("disabled");a("input",c).prop("disabled",true)}},init:function(g,e){var d=this,c=a("#image-editor-"+d.postid),b=d.intval(a("#imgedit-x-"+g).val()),f=d.intval(a("#imgedit-y-"+g).val());if(d.postid!=g&&c.length){d.close(d.postid)}d.hold.w=d.hold.ow=b;d.hold.h=d.hold.oh=f;d.hold.xy_ratio=b/f;d.hold.sizer=parseFloat(a("#imgedit-sizer-"+g).val());d.postid=g;a("#imgedit-response-"+g).empty();a('input[type="text"]',"#imgedit-panel-"+g).keypress(function(i){var h=i.keyCode;if(36<h&&h<41){a(this).blur()}if(13==h){i.preventDefault();i.stopPropagation();return false}})},toggleEditor:function(d,b){var c=a("#imgedit-wait-"+d);if(b){c.height(a("#imgedit-panel-"+d).height()).fadeIn("fast")}else{c.fadeOut("fast")}},toggleHelp:function(b){a(b).siblings(".imgedit-help").slideToggle("fast");return false},getTarget:function(b){return a('input[name="imgedit-target-'+b+'"]:checked',"#imgedit-save-target-"+b).val()||"full"},scaleChanged:function(i,b){var d=a("#imgedit-scale-width-"+i),f=a("#imgedit-scale-height-"+i),g=a("#imgedit-scale-warn-"+i),c="",e="";if(b){e=(d.val()!="")?this.intval(d.val()/this.hold.xy_ratio):"";f.val(e)}else{c=(f.val()!="")?this.intval(f.val()*this.hold.xy_ratio):"";d.val(c)}if((e&&e>this.hold.oh)||(c&&c>this.hold.ow)){g.css("visibility","visible")}else{g.css("visibility","hidden")}},getSelRatio:function(f){var b=this.hold.w,e=this.hold.h,d=this.intval(a("#imgedit-crop-width-"+f).val()),c=this.intval(a("#imgedit-crop-height-"+f).val());if(d&&c){return d+":"+c}if(b&&e){return b+":"+e}return"1:1"},filterHistory:function(j,f){var d=a("#imgedit-history-"+j).val(),b,h,e,c,g=[];if(d!=""){d=JSON.parse(d);b=this.intval(a("#imgedit-undone-"+j).val());if(b>0){while(b>0){d.pop();b--}}if(f){if(!d.length){this.hold.w=this.hold.ow;this.hold.h=this.hold.oh;return""}e=d[d.length-1];e=e.c||e.r||e.f||false;if(e){this.hold.w=e.fw;this.hold.h=e.fh}}for(h in d){c=d[h];if(c.hasOwnProperty("c")){g[h]={c:{x:c.c.x,y:c.c.y,w:c.c.w,h:c.c.h}}}else{if(c.hasOwnProperty("r")){g[h]={r:c.r.r}}else{if(c.hasOwnProperty("f")){g[h]={f:c.f.f}}}}}return JSON.stringify(g)}return""},refreshEditor:function(g,d,f){var c=this,e,b;c.toggleEditor(g,1);e={action:"imgedit-preview",_ajax_nonce:d,postid:g,history:c.filterHistory(g,1),rand:c.intval(Math.random()*1000000)};b=a('<img id="image-preview-'+g+'" />');b.load(function(){var i,h,k=a("#imgedit-crop-"+g),j=imageEdit;k.empty().append(b);i=Math.max(j.hold.w,j.hold.h);h=Math.max(a(b).width(),a(b).height());j.hold.sizer=i>h?h/i:1;j.initCrop(g,b,k);j.setCropSelection(g,0);if((typeof f!="unknown")&&f!=null){f()}if(a("#imgedit-history-"+g).val()&&a("#imgedit-undone-"+g).val()==0){a("input.imgedit-submit-btn","#imgedit-panel-"+g).removeAttr("disabled")}else{a("input.imgedit-submit-btn","#imgedit-panel-"+g).prop("disabled",true)}j.toggleEditor(g,0)}).attr("src",ajaxurl+"?"+a.param(e))},action:function(b,g,c){var j=this,e,i,f,d,k;if(j.notsaved(b)){return false}e={action:"image-editor",_ajax_nonce:g,postid:b};if("scale"==c){i=a("#imgedit-scale-width-"+b),f=a("#imgedit-scale-height-"+b),d=j.intval(i.val()),k=j.intval(f.val());if(d<1){i.focus();return false}else{if(k<1){f.focus();return false}}if(d==j.hold.ow||k==j.hold.oh){return false}e["do"]="scale";e.fwidth=d;e.fheight=k}else{if("restore"==c){e["do"]="restore"}else{return false}}j.toggleEditor(b,1);a.post(ajaxurl,e,function(h){a("#image-editor-"+b).empty().append(h);j.toggleEditor(b,0)})},save:function(f,b){var c,e=this.getTarget(f),d=this.filterHistory(f,0);if(""==d){return false}this.toggleEditor(f,1);c={action:"image-editor",_ajax_nonce:b,postid:f,history:d,target:e,"do":"save"};a.post(ajaxurl,c,function(h){var g=JSON.parse(h);if(g.error){a("#imgedit-response-"+f).html('<div class="error"><p>'+g.error+"</p><div>");imageEdit.close(f);return}if(g.fw&&g.fh){a("#media-dims-"+f).html(g.fw+" &times; "+g.fh)}if(g.thumbnail){a(".thumbnail","#thumbnail-head-"+f).attr("src",""+g.thumbnail)}if(g.msg){a("#imgedit-response-"+f).html('<div class="updated"><p>'+g.msg+"</p></div>")}imageEdit.close(f)})},open:function(h,d){var f,e=a("#image-editor-"+h),c=a("#media-head-"+h),b=a("#imgedit-open-btn-"+h),g=b.siblings("img");b.prop("disabled",true);g.css("visibility","visible");f={action:"image-editor",_ajax_nonce:d,postid:h,"do":"open"};e.load(ajaxurl,f,function(){e.fadeIn("fast");c.fadeOut("fast",function(){b.removeAttr("disabled");g.css("visibility","hidden")})})},imgLoaded:function(d){var b=a("#image-preview-"+d),c=a("#imgedit-crop-"+d);this.initCrop(d,b,c);this.setCropSelection(d,0);this.toggleEditor(d,0)},initCrop:function(g,e,c){var b=this,d=a("#imgedit-sel-width-"+g),f=a("#imgedit-sel-height-"+g);b.iasapi=a(e).imgAreaSelect({parent:c,instance:true,handles:true,keys:true,minWidth:3,minHeight:3,onInit:function(h,i){c.children().mousedown(function(m){var k=false,l,j;if(m.shiftKey){l=b.iasapi.getSelection();j=b.getSelRatio(g);k=(l&&l.width&&l.height)?l.width+":"+l.height:j}b.iasapi.setOptions({aspectRatio:k})})},onSelectStart:function(h,i){imageEdit.setDisabled(a("#imgedit-crop-sel-"+g),1)},onSelectEnd:function(h,i){imageEdit.setCropSelection(g,i)},onSelectChange:function(h,j){var i=imageEdit.hold.sizer;d.val(imageEdit.round(j.width/i));f.val(imageEdit.round(j.height/i))}})},setCropSelection:function(g,f){var e,b=a("#imgedit-minthumb-"+g).val()||"128:128",d=this.hold.sizer;b=b.split(":");f=f||0;if(!f||(f.width<3&&f.height<3)){this.setDisabled(a(".imgedit-crop","#imgedit-panel-"+g),0);this.setDisabled(a("#imgedit-crop-sel-"+g),0);a("#imgedit-sel-width-"+g).val("");a("#imgedit-sel-height-"+g).val("");a("#imgedit-selection-"+g).val("");return false}if(f.width<(b[0]*d)&&f.height<(b[1]*d)){this.setDisabled(a(".imgedit-crop","#imgedit-panel-"+g),0);a("#imgedit-selection-"+g).val("");return false}e={x:f.x1,y:f.y1,w:f.width,h:f.height};this.setDisabled(a(".imgedit-crop","#imgedit-panel-"+g),1);a("#imgedit-selection-"+g).val(JSON.stringify(e))},close:function(c,b){b=b||false;if(b&&this.notsaved(c)){return false}this.iasapi={};this.hold={};a("#image-editor-"+c).fadeOut("fast",function(){a("#media-head-"+c).fadeIn("fast");a(this).empty()})},notsaved:function(e){var c=a("#imgedit-history-"+e).val(),d=(c!="")?JSON.parse(c):new Array(),b=this.intval(a("#imgedit-undone-"+e).val());if(b<d.length){if(confirm(a("#imgedit-leaving-"+e).html())){return false}return true}return false},addStep:function(i,h,d){var c=this,e=a("#imgedit-history-"+h),g=(e.val()!="")?JSON.parse(e.val()):new Array(),f=a("#imgedit-undone-"+h),b=c.intval(f.val());while(b>0){g.pop();b--}f.val(0);g.push(i);e.val(JSON.stringify(g));c.refreshEditor(h,d,function(){c.setDisabled(a("#image-undo-"+h),true);c.setDisabled(a("#image-redo-"+h),false)})},rotate:function(d,e,c,b){if(a(b).hasClass("disabled")){return false}this.addStep({r:{r:d,fw:this.hold.h,fh:this.hold.w}},e,c)},flip:function(d,e,c,b){if(a(b).hasClass("disabled")){return false}this.addStep({f:{f:d,fw:this.hold.w,fh:this.hold.h}},e,c)},crop:function(g,e,c){var f=a("#imgedit-selection-"+g).val(),b=this.intval(a("#imgedit-sel-width-"+g).val()),d=this.intval(a("#imgedit-sel-height-"+g).val());if(a(c).hasClass("disabled")||f==""){return false}f=JSON.parse(f);if(f.w>0&&f.h>0&&b>0&&d>0){f.fw=b;f.fh=d;this.addStep({c:f},g,e)}},undo:function(g,e){var d=this,c=a("#image-undo-"+g),f=a("#imgedit-undone-"+g),b=d.intval(f.val())+1;if(c.hasClass("disabled")){return}f.val(b);d.refreshEditor(g,e,function(){var h=a("#imgedit-history-"+g),i=(h.val()!="")?JSON.parse(h.val()):new Array();d.setDisabled(a("#image-redo-"+g),true);d.setDisabled(c,b<i.length)})},redo:function(g,e){var d=this,c=a("#image-redo-"+g),f=a("#imgedit-undone-"+g),b=d.intval(f.val())-1;if(c.hasClass("disabled")){return}f.val(b);d.refreshEditor(g,e,function(){d.setDisabled(a("#image-undo-"+g),true);d.setDisabled(c,b>0)})},setNumSelection:function(c){var g,k=a("#imgedit-sel-width-"+c),j=a("#imgedit-sel-height-"+c),o=this.intval(k.val()),m=this.intval(j.val()),i=a("#image-preview-"+c),p=i.height(),h=i.width(),b=this.hold.sizer,f,n,e,l,d=this.iasapi;if(o<1){k.val("");return false}if(m<1){j.val("");return false}if(o&&m&&(g=d.getSelection())){e=g.x1+Math.round(o*b);l=g.y1+Math.round(m*b);f=g.x1;n=g.y1;if(e>h){f=0;e=h;k.val(Math.round(e/b))}if(l>p){n=0;l=p;j.val(Math.round(l/b))}d.setSelection(f,n,e,l);d.update();this.setCropSelection(c,d.getSelection())}},round:function(b){var c;b=Math.round(b);if(this.hold.sizer>0.6){return b}c=b.toString().slice(-1);if("1"==c){return b-1}else{if("9"==c){return b+1}}return b},setRatioSelection:function(j,i,d){var f,e,b=this.intval(a("#imgedit-crop-width-"+j).val()),g=this.intval(a("#imgedit-crop-height-"+j).val()),c=a("#image-preview-"+j).height();if(!this.intval(a(d).val())){a(d).val("");return}if(b&&g){this.iasapi.setOptions({aspectRatio:b+":"+g});if(f=this.iasapi.getSelection(true)){e=Math.ceil(f.y1+((f.x2-f.x1)/(b/g)));if(e>c){e=c;if(i){a("#imgedit-crop-height-"+j).val("")}else{a("#imgedit-crop-width-"+j).val("")}}this.iasapi.setSelection(f.x1,f.y1,f.x2,e);this.iasapi.update()}}}}})(jQuery);
\ No newline at end of file
+var imageEdit;(function(a){imageEdit={iasapi:{},hold:{},postid:"",intval:function(b){return b|0},setDisabled:function(c,b){if(b){c.removeClass("disabled");a("input",c).removeAttr("disabled")}else{c.addClass("disabled");a("input",c).prop("disabled",true)}},init:function(g,e){var d=this,c=a("#image-editor-"+d.postid),b=d.intval(a("#imgedit-x-"+g).val()),f=d.intval(a("#imgedit-y-"+g).val());if(d.postid!=g&&c.length){d.close(d.postid)}d.hold.w=d.hold.ow=b;d.hold.h=d.hold.oh=f;d.hold.xy_ratio=b/f;d.hold.sizer=parseFloat(a("#imgedit-sizer-"+g).val());d.postid=g;a("#imgedit-response-"+g).empty();a('input[type="text"]',"#imgedit-panel-"+g).keypress(function(i){var h=i.keyCode;if(36<h&&h<41){a(this).blur()}if(13==h){i.preventDefault();i.stopPropagation();return false}})},toggleEditor:function(d,b){var c=a("#imgedit-wait-"+d);if(b){c.height(a("#imgedit-panel-"+d).height()).fadeIn("fast")}else{c.fadeOut("fast")}},toggleHelp:function(b){a(b).siblings(".imgedit-help").slideToggle("fast");return false},getTarget:function(b){return a('input[name="imgedit-target-'+b+'"]:checked',"#imgedit-save-target-"+b).val()||"full"},scaleChanged:function(i,b){var d=a("#imgedit-scale-width-"+i),f=a("#imgedit-scale-height-"+i),g=a("#imgedit-scale-warn-"+i),c="",e="";if(b){e=(d.val()!="")?this.intval(d.val()/this.hold.xy_ratio):"";f.val(e)}else{c=(f.val()!="")?this.intval(f.val()*this.hold.xy_ratio):"";d.val(c)}if((e&&e>this.hold.oh)||(c&&c>this.hold.ow)){g.css("visibility","visible")}else{g.css("visibility","hidden")}},getSelRatio:function(f){var b=this.hold.w,e=this.hold.h,d=this.intval(a("#imgedit-crop-width-"+f).val()),c=this.intval(a("#imgedit-crop-height-"+f).val());if(d&&c){return d+":"+c}if(b&&e){return b+":"+e}return"1:1"},filterHistory:function(j,f){var d=a("#imgedit-history-"+j).val(),b,h,e,c,g=[];if(d!=""){d=JSON.parse(d);b=this.intval(a("#imgedit-undone-"+j).val());if(b>0){while(b>0){d.pop();b--}}if(f){if(!d.length){this.hold.w=this.hold.ow;this.hold.h=this.hold.oh;return""}e=d[d.length-1];e=e.c||e.r||e.f||false;if(e){this.hold.w=e.fw;this.hold.h=e.fh}}for(h in d){c=d[h];if(c.hasOwnProperty("c")){g[h]={c:{x:c.c.x,y:c.c.y,w:c.c.w,h:c.c.h}}}else{if(c.hasOwnProperty("r")){g[h]={r:c.r.r}}else{if(c.hasOwnProperty("f")){g[h]={f:c.f.f}}}}}return JSON.stringify(g)}return""},refreshEditor:function(g,d,f){var c=this,e,b;c.toggleEditor(g,1);e={action:"imgedit-preview",_ajax_nonce:d,postid:g,history:c.filterHistory(g,1),rand:c.intval(Math.random()*1000000)};b=a('<img id="image-preview-'+g+'" />');b.load(function(){var i,h,k=a("#imgedit-crop-"+g),j=imageEdit;k.empty().append(b);i=Math.max(j.hold.w,j.hold.h);h=Math.max(a(b).width(),a(b).height());j.hold.sizer=i>h?h/i:1;j.initCrop(g,b,k);j.setCropSelection(g,0);if((typeof f!="unknown")&&f!=null){f()}if(a("#imgedit-history-"+g).val()&&a("#imgedit-undone-"+g).val()==0){a("input.imgedit-submit-btn","#imgedit-panel-"+g).removeAttr("disabled")}else{a("input.imgedit-submit-btn","#imgedit-panel-"+g).prop("disabled",true)}j.toggleEditor(g,0)}).error(function(){a("#imgedit-crop-"+g).empty().append('<div class="error"><p>'+imageEditL10n.error+"</p></div>");c.toggleEditor(g,0)}).attr("src",ajaxurl+"?"+a.param(e))},action:function(b,g,c){var j=this,e,i,f,d,k;if(j.notsaved(b)){return false}e={action:"image-editor",_ajax_nonce:g,postid:b};if("scale"==c){i=a("#imgedit-scale-width-"+b),f=a("#imgedit-scale-height-"+b),d=j.intval(i.val()),k=j.intval(f.val());if(d<1){i.focus();return false}else{if(k<1){f.focus();return false}}if(d==j.hold.ow||k==j.hold.oh){return false}e["do"]="scale";e.fwidth=d;e.fheight=k}else{if("restore"==c){e["do"]="restore"}else{return false}}j.toggleEditor(b,1);a.post(ajaxurl,e,function(h){a("#image-editor-"+b).empty().append(h);j.toggleEditor(b,0)})},save:function(f,b){var c,e=this.getTarget(f),d=this.filterHistory(f,0);if(""==d){return false}this.toggleEditor(f,1);c={action:"image-editor",_ajax_nonce:b,postid:f,history:d,target:e,"do":"save"};a.post(ajaxurl,c,function(h){var g=JSON.parse(h);if(g.error){a("#imgedit-response-"+f).html('<div class="error"><p>'+g.error+"</p><div>");imageEdit.close(f);return}if(g.fw&&g.fh){a("#media-dims-"+f).html(g.fw+" &times; "+g.fh)}if(g.thumbnail){a(".thumbnail","#thumbnail-head-"+f).attr("src",""+g.thumbnail)}if(g.msg){a("#imgedit-response-"+f).html('<div class="updated"><p>'+g.msg+"</p></div>")}imageEdit.close(f)})},open:function(h,d){var f,e=a("#image-editor-"+h),c=a("#media-head-"+h),b=a("#imgedit-open-btn-"+h),g=b.siblings("img");b.prop("disabled",true);g.css("visibility","visible");f={action:"image-editor",_ajax_nonce:d,postid:h,"do":"open"};e.load(ajaxurl,f,function(){e.fadeIn("fast");c.fadeOut("fast",function(){b.removeAttr("disabled");g.css("visibility","hidden")})})},imgLoaded:function(d){var b=a("#image-preview-"+d),c=a("#imgedit-crop-"+d);this.initCrop(d,b,c);this.setCropSelection(d,0);this.toggleEditor(d,0)},initCrop:function(g,e,c){var b=this,d=a("#imgedit-sel-width-"+g),f=a("#imgedit-sel-height-"+g);b.iasapi=a(e).imgAreaSelect({parent:c,instance:true,handles:true,keys:true,minWidth:3,minHeight:3,onInit:function(h,i){c.children().mousedown(function(m){var k=false,l,j;if(m.shiftKey){l=b.iasapi.getSelection();j=b.getSelRatio(g);k=(l&&l.width&&l.height)?l.width+":"+l.height:j}b.iasapi.setOptions({aspectRatio:k})})},onSelectStart:function(h,i){imageEdit.setDisabled(a("#imgedit-crop-sel-"+g),1)},onSelectEnd:function(h,i){imageEdit.setCropSelection(g,i)},onSelectChange:function(h,j){var i=imageEdit.hold.sizer;d.val(imageEdit.round(j.width/i));f.val(imageEdit.round(j.height/i))}})},setCropSelection:function(g,f){var e,b=a("#imgedit-minthumb-"+g).val()||"128:128",d=this.hold.sizer;b=b.split(":");f=f||0;if(!f||(f.width<3&&f.height<3)){this.setDisabled(a(".imgedit-crop","#imgedit-panel-"+g),0);this.setDisabled(a("#imgedit-crop-sel-"+g),0);a("#imgedit-sel-width-"+g).val("");a("#imgedit-sel-height-"+g).val("");a("#imgedit-selection-"+g).val("");return false}if(f.width<(b[0]*d)&&f.height<(b[1]*d)){this.setDisabled(a(".imgedit-crop","#imgedit-panel-"+g),0);a("#imgedit-selection-"+g).val("");return false}e={x:f.x1,y:f.y1,w:f.width,h:f.height};this.setDisabled(a(".imgedit-crop","#imgedit-panel-"+g),1);a("#imgedit-selection-"+g).val(JSON.stringify(e))},close:function(c,b){b=b||false;if(b&&this.notsaved(c)){return false}this.iasapi={};this.hold={};a("#image-editor-"+c).fadeOut("fast",function(){a("#media-head-"+c).fadeIn("fast");a(this).empty()})},notsaved:function(e){var c=a("#imgedit-history-"+e).val(),d=(c!="")?JSON.parse(c):new Array(),b=this.intval(a("#imgedit-undone-"+e).val());if(b<d.length){if(confirm(a("#imgedit-leaving-"+e).html())){return false}return true}return false},addStep:function(i,h,d){var c=this,e=a("#imgedit-history-"+h),g=(e.val()!="")?JSON.parse(e.val()):new Array(),f=a("#imgedit-undone-"+h),b=c.intval(f.val());while(b>0){g.pop();b--}f.val(0);g.push(i);e.val(JSON.stringify(g));c.refreshEditor(h,d,function(){c.setDisabled(a("#image-undo-"+h),true);c.setDisabled(a("#image-redo-"+h),false)})},rotate:function(d,e,c,b){if(a(b).hasClass("disabled")){return false}this.addStep({r:{r:d,fw:this.hold.h,fh:this.hold.w}},e,c)},flip:function(d,e,c,b){if(a(b).hasClass("disabled")){return false}this.addStep({f:{f:d,fw:this.hold.w,fh:this.hold.h}},e,c)},crop:function(g,e,c){var f=a("#imgedit-selection-"+g).val(),b=this.intval(a("#imgedit-sel-width-"+g).val()),d=this.intval(a("#imgedit-sel-height-"+g).val());if(a(c).hasClass("disabled")||f==""){return false}f=JSON.parse(f);if(f.w>0&&f.h>0&&b>0&&d>0){f.fw=b;f.fh=d;this.addStep({c:f},g,e)}},undo:function(g,e){var d=this,c=a("#image-undo-"+g),f=a("#imgedit-undone-"+g),b=d.intval(f.val())+1;if(c.hasClass("disabled")){return}f.val(b);d.refreshEditor(g,e,function(){var h=a("#imgedit-history-"+g),i=(h.val()!="")?JSON.parse(h.val()):new Array();d.setDisabled(a("#image-redo-"+g),true);d.setDisabled(c,b<i.length)})},redo:function(g,e){var d=this,c=a("#image-redo-"+g),f=a("#imgedit-undone-"+g),b=d.intval(f.val())-1;if(c.hasClass("disabled")){return}f.val(b);d.refreshEditor(g,e,function(){d.setDisabled(a("#image-undo-"+g),true);d.setDisabled(c,b>0)})},setNumSelection:function(c){var g,k=a("#imgedit-sel-width-"+c),j=a("#imgedit-sel-height-"+c),o=this.intval(k.val()),m=this.intval(j.val()),i=a("#image-preview-"+c),p=i.height(),h=i.width(),b=this.hold.sizer,f,n,e,l,d=this.iasapi;if(o<1){k.val("");return false}if(m<1){j.val("");return false}if(o&&m&&(g=d.getSelection())){e=g.x1+Math.round(o*b);l=g.y1+Math.round(m*b);f=g.x1;n=g.y1;if(e>h){f=0;e=h;k.val(Math.round(e/b))}if(l>p){n=0;l=p;j.val(Math.round(l/b))}d.setSelection(f,n,e,l);d.update();this.setCropSelection(c,d.getSelection())}},round:function(b){var c;b=Math.round(b);if(this.hold.sizer>0.6){return b}c=b.toString().slice(-1);if("1"==c){return b-1}else{if("9"==c){return b+1}}return b},setRatioSelection:function(j,i,d){var f,e,b=this.intval(a("#imgedit-crop-width-"+j).val()),g=this.intval(a("#imgedit-crop-height-"+j).val()),c=a("#image-preview-"+j).height();if(!this.intval(a(d).val())){a(d).val("");return}if(b&&g){this.iasapi.setOptions({aspectRatio:b+":"+g});if(f=this.iasapi.getSelection(true)){e=Math.ceil(f.y1+((f.x2-f.x1)/(b/g)));if(e>c){e=c;if(i){a("#imgedit-crop-height-"+j).val("")}else{a("#imgedit-crop-width-"+j).val("")}}this.iasapi.setSelection(f.x1,f.y1,f.x2,e);this.iasapi.update()}}}}})(jQuery);
\ No newline at end of file
index b470c33521e33ab1c43512391d368d0e92f1ea3f..e73c4a009964389976e880ea0528d53d10047837 100644 (file)
@@ -117,19 +117,19 @@ inlineEditPost = {
                if ( 'post' == type ) {
                        // support multi taxonomies?
                        tax = 'post_tag';
                if ( 'post' == type ) {
                        // support multi taxonomies?
                        tax = 'post_tag';
-                       $('tr.inline-editor textarea[name="tags_input"]').suggest( 'admin-ajax.php?action=ajax-tag-search&tax='+tax, { delay: 500, minchars: 2, multiple: true, multipleSep: ", " } );
+                       $('tr.inline-editor textarea[name="tax_input['+tax+']"]').suggest( 'admin-ajax.php?action=ajax-tag-search&tax='+tax, { delay: 500, minchars: 2, multiple: true, multipleSep: ", " } );
                }
                $('html, body').animate( { scrollTop: 0 }, 'fast' );
        },
 
        edit : function(id) {
                }
                $('html, body').animate( { scrollTop: 0 }, 'fast' );
        },
 
        edit : function(id) {
-               var t = this, fields, editRow, rowData, cats, status, pageOpt, pageLevel, nextPage, pageLoop = true, nextLevel, tax;
+               var t = this, fields, editRow, rowData, status, pageOpt, pageLevel, nextPage, pageLoop = true, nextLevel, cur_format, f;
                t.revert();
 
                if ( typeof(id) == 'object' )
                        id = t.getId(id);
 
                t.revert();
 
                if ( typeof(id) == 'object' )
                        id = t.getId(id);
 
-               fields = ['post_title', 'post_name', 'post_author', '_status', 'jj', 'mm', 'aa', 'hh', 'mn', 'ss', 'post_password'];
+               fields = ['post_title', 'post_name', 'post_author', '_status', 'jj', 'mm', 'aa', 'hh', 'mn', 'ss', 'post_password', 'post_format'];
                if ( t.type == 'page' )
                        fields.push('post_parent', 'menu_order', 'page_template');
 
                if ( t.type == 'page' )
                        fields.push('post_parent', 'menu_order', 'page_template');
 
@@ -151,7 +151,15 @@ inlineEditPost = {
                        $('label.inline-edit-author', editRow).hide();
                }
 
                        $('label.inline-edit-author', editRow).hide();
                }
 
-               for ( var f = 0; f < fields.length; f++ ) {
+               // hide unsupported formats, but leave the current format alone
+               cur_format = $('.post_format', rowData).text();
+               $('option.unsupported', editRow).each(function() {
+                       var $this = $(this);
+                       if ( $this.val() != cur_format )
+                               $this.remove();
+               });
+
+               for ( f = 0; f < fields.length; f++ ) {
                        $(':input[name="' + fields[f] + '"]', editRow).val( $('.'+fields[f], rowData).text() );
                }
 
                        $(':input[name="' + fields[f] + '"]', editRow).val( $('.'+fields[f], rowData).text() );
                }
 
@@ -171,17 +179,18 @@ inlineEditPost = {
                                $('ul.'+taxname+'-checklist :checkbox', editRow).val(term_ids.split(','));
                        }
                });
                                $('ul.'+taxname+'-checklist :checkbox', editRow).val(term_ids.split(','));
                        }
                });
+
                //flat taxonomies
                $('.tags_input', rowData).each(function(){
                //flat taxonomies
                $('.tags_input', rowData).each(function(){
-                       var terms = $(this).text();
+                       var terms = $(this).text(),
+                               taxname = $(this).attr('id').replace('_' + id, ''),
+                               textarea = $('textarea.tax_input_' + taxname, editRow);
 
 
-                       if ( terms ) {
-                               taxname = $(this).attr('id').replace('_'+id, '');
-                               $('textarea.tax_input_'+taxname, editRow).val(terms);
-                               $('textarea.tax_input_'+taxname, editRow).suggest( 'admin-ajax.php?action=ajax-tag-search&tax='+taxname, { delay: 500, minchars: 2, multiple: true, multipleSep: ", " } );
-                       }
-               });
+                       if ( terms )
+                               textarea.val(terms);
 
 
+                       textarea.suggest( 'admin-ajax.php?action=ajax-tag-search&tax='+taxname, { delay: 500, minchars: 2, multiple: true, multipleSep: ", " } );
+               });
 
                // handle the post status
                status = $('._status', rowData).text();
 
                // handle the post status
                status = $('._status', rowData).text();
index b72bd878f3e72c4c85c82ef6af309d045e9aa04e..61d9f48c3d845b065c9afc729a1bdff5a6b3af69 100644 (file)
@@ -1 +1 @@
-(function(a){inlineEditPost={init:function(){var c=this,d=a("#inline-edit"),b=a("#bulk-edit");c.type=a("table.widefat").hasClass("pages")?"page":"post";c.what="#post-";d.keyup(function(f){if(f.which==27){return inlineEditPost.revert()}});b.keyup(function(f){if(f.which==27){return inlineEditPost.revert()}});a("a.cancel",d).click(function(){return inlineEditPost.revert()});a("a.save",d).click(function(){return inlineEditPost.save(this)});a("td",d).keydown(function(f){if(f.which==13){return inlineEditPost.save(this)}});a("a.cancel",b).click(function(){return inlineEditPost.revert()});a('#inline-edit .inline-edit-private input[value="private"]').click(function(){var e=a("input.inline-edit-password-input");if(a(this).prop("checked")){e.val("").prop("disabled",true)}else{e.prop("disabled",false)}});a("a.editinline").live("click",function(){inlineEditPost.edit(this);return false});a("#bulk-title-div").parents("fieldset").after(a("#inline-edit fieldset.inline-edit-categories").clone()).siblings("fieldset:last").prepend(a("#inline-edit label.inline-edit-tags").clone());a("span.catshow").click(function(){a(this).hide().next().show().parent().next().addClass("cat-hover")});a("span.cathide").click(function(){a(this).hide().prev().show().parent().next().removeClass("cat-hover")});a('select[name="_status"] option[value="future"]',b).remove();a("#doaction, #doaction2").click(function(f){var g=a(this).attr("id").substr(2);if(a('select[name="'+g+'"]').val()=="edit"){f.preventDefault();c.setBulk()}else{if(a("form#posts-filter tr.inline-editor").length>0){c.revert()}}});a("#post-query-submit").mousedown(function(f){c.revert();a('select[name^="action"]').val("-1")})},toggle:function(c){var b=this;a(b.what+b.getId(c)).css("display")=="none"?b.revert():b.edit(c)},setBulk:function(){var e="",d=this.type,b,f=true;this.revert();a("#bulk-edit td").attr("colspan",a(".widefat:first thead th:visible").length);a("table.widefat tbody").prepend(a("#bulk-edit"));a("#bulk-edit").addClass("inline-editor").show();a('tbody th.check-column input[type="checkbox"]').each(function(g){if(a(this).prop("checked")){f=false;var h=a(this).val(),c;c=a("#inline_"+h+" .post_title").text()||inlineEditL10n.notitle;e+='<div id="ttle'+h+'"><a id="_'+h+'" class="ntdelbutton" title="'+inlineEditL10n.ntdeltitle+'">X</a>'+c+"</div>"}});if(f){return this.revert()}a("#bulk-titles").html(e);a("#bulk-titles a").click(function(){var c=a(this).attr("id").substr(1);a('table.widefat input[value="'+c+'"]').prop("checked",false);a("#ttle"+c).remove()});if("post"==d){b="post_tag";a('tr.inline-editor textarea[name="tags_input"]').suggest("admin-ajax.php?action=ajax-tag-search&tax="+b,{delay:500,minchars:2,multiple:true,multipleSep:", "})}a("html, body").animate({scrollTop:0},"fast")},edit:function(b){var o=this,j,d,g,n,i,h,m,l,c=true,p,e;o.revert();if(typeof(b)=="object"){b=o.getId(b)}j=["post_title","post_name","post_author","_status","jj","mm","aa","hh","mn","ss","post_password"];if(o.type=="page"){j.push("post_parent","menu_order","page_template")}d=a("#inline-edit").clone(true);a("td",d).attr("colspan",a(".widefat:first thead th:visible").length);if(a(o.what+b).hasClass("alternate")){a(d).addClass("alternate")}a(o.what+b).hide().after(d);g=a("#inline_"+b);if(!a(':input[name="post_author"] option[value="'+a(".post_author",g).text()+'"]',d).val()){a(':input[name="post_author"]',d).prepend('<option value="'+a(".post_author",g).text()+'">'+a("#"+o.type+"-"+b+" .author").text()+"</option>")}if(a(':input[name="post_author"] option',d).length==1){a("label.inline-edit-author",d).hide()}for(var k=0;k<j.length;k++){a(':input[name="'+j[k]+'"]',d).val(a("."+j[k],g).text())}if(a(".comment_status",g).text()=="open"){a('input[name="comment_status"]',d).prop("checked",true)}if(a(".ping_status",g).text()=="open"){a('input[name="ping_status"]',d).prop("checked",true)}if(a(".sticky",g).text()=="sticky"){a('input[name="sticky"]',d).prop("checked",true)}a(".post_category",g).each(function(){var f=a(this).text();if(f){taxname=a(this).attr("id").replace("_"+b,"");a("ul."+taxname+"-checklist :checkbox",d).val(f.split(","))}});a(".tags_input",g).each(function(){var f=a(this).text();if(f){taxname=a(this).attr("id").replace("_"+b,"");a("textarea.tax_input_"+taxname,d).val(f);a("textarea.tax_input_"+taxname,d).suggest("admin-ajax.php?action=ajax-tag-search&tax="+taxname,{delay:500,minchars:2,multiple:true,multipleSep:", "})}});i=a("._status",g).text();if("future"!=i){a('select[name="_status"] option[value="future"]',d).remove()}if("private"==i){a('input[name="keep_private"]',d).prop("checked",true);a("input.inline-edit-password-input").val("").prop("disabled",true)}h=a('select[name="post_parent"] option[value="'+b+'"]',d);if(h.length>0){m=h[0].className.split("-")[1];l=h;while(c){l=l.next("option");if(l.length==0){break}p=l[0].className.split("-")[1];if(p<=m){c=false}else{l.remove();l=h}}h.remove()}a(d).attr("id","edit-"+b).addClass("inline-editor").show();a(".ptitle",d).focus();return false},save:function(e){var d,b,c=a(".post_status_page").val()||"";if(typeof(e)=="object"){e=this.getId(e)}a("table.widefat .inline-edit-save .waiting").show();d={action:"inline-save",post_type:typenow,post_ID:e,edit_date:"true",post_status:c};b=a("#edit-"+e+" :input").serialize();d=b+"&"+a.param(d);a.post("admin-ajax.php",d,function(f){a("table.widefat .inline-edit-save .waiting").hide();if(f){if(-1!=f.indexOf("<tr")){a(inlineEditPost.what+e).remove();a("#edit-"+e).before(f).remove();a(inlineEditPost.what+e).hide().fadeIn()}else{f=f.replace(/<.[^<>]*?>/g,"");a("#edit-"+e+" .inline-edit-save .error").html(f).show()}}else{a("#edit-"+e+" .inline-edit-save .error").html(inlineEditL10n.error).show()}},"html");return false},revert:function(){var b=a("table.widefat tr.inline-editor").attr("id");if(b){a("table.widefat .inline-edit-save .waiting").hide();if("bulk-edit"==b){a("table.widefat #bulk-edit").removeClass("inline-editor").hide();a("#bulk-titles").html("");a("#inlineedit").append(a("#bulk-edit"))}else{a("#"+b).remove();b=b.substr(b.lastIndexOf("-")+1);a(this.what+b).show()}}return false},getId:function(c){var d=a(c).closest("tr").attr("id"),b=d.split("-");return b[b.length-1]}};a(document).ready(function(){inlineEditPost.init()})})(jQuery);
\ No newline at end of file
+(function(a){inlineEditPost={init:function(){var c=this,d=a("#inline-edit"),b=a("#bulk-edit");c.type=a("table.widefat").hasClass("pages")?"page":"post";c.what="#post-";d.keyup(function(f){if(f.which==27){return inlineEditPost.revert()}});b.keyup(function(f){if(f.which==27){return inlineEditPost.revert()}});a("a.cancel",d).click(function(){return inlineEditPost.revert()});a("a.save",d).click(function(){return inlineEditPost.save(this)});a("td",d).keydown(function(f){if(f.which==13){return inlineEditPost.save(this)}});a("a.cancel",b).click(function(){return inlineEditPost.revert()});a('#inline-edit .inline-edit-private input[value="private"]').click(function(){var e=a("input.inline-edit-password-input");if(a(this).prop("checked")){e.val("").prop("disabled",true)}else{e.prop("disabled",false)}});a("a.editinline").live("click",function(){inlineEditPost.edit(this);return false});a("#bulk-title-div").parents("fieldset").after(a("#inline-edit fieldset.inline-edit-categories").clone()).siblings("fieldset:last").prepend(a("#inline-edit label.inline-edit-tags").clone());a("span.catshow").click(function(){a(this).hide().next().show().parent().next().addClass("cat-hover")});a("span.cathide").click(function(){a(this).hide().prev().show().parent().next().removeClass("cat-hover")});a('select[name="_status"] option[value="future"]',b).remove();a("#doaction, #doaction2").click(function(f){var g=a(this).attr("id").substr(2);if(a('select[name="'+g+'"]').val()=="edit"){f.preventDefault();c.setBulk()}else{if(a("form#posts-filter tr.inline-editor").length>0){c.revert()}}});a("#post-query-submit").mousedown(function(f){c.revert();a('select[name^="action"]').val("-1")})},toggle:function(c){var b=this;a(b.what+b.getId(c)).css("display")=="none"?b.revert():b.edit(c)},setBulk:function(){var e="",d=this.type,b,f=true;this.revert();a("#bulk-edit td").attr("colspan",a(".widefat:first thead th:visible").length);a("table.widefat tbody").prepend(a("#bulk-edit"));a("#bulk-edit").addClass("inline-editor").show();a('tbody th.check-column input[type="checkbox"]').each(function(g){if(a(this).prop("checked")){f=false;var h=a(this).val(),c;c=a("#inline_"+h+" .post_title").text()||inlineEditL10n.notitle;e+='<div id="ttle'+h+'"><a id="_'+h+'" class="ntdelbutton" title="'+inlineEditL10n.ntdeltitle+'">X</a>'+c+"</div>"}});if(f){return this.revert()}a("#bulk-titles").html(e);a("#bulk-titles a").click(function(){var c=a(this).attr("id").substr(1);a('table.widefat input[value="'+c+'"]').prop("checked",false);a("#ttle"+c).remove()});if("post"==d){b="post_tag";a('tr.inline-editor textarea[name="tax_input['+b+']"]').suggest("admin-ajax.php?action=ajax-tag-search&tax="+b,{delay:500,minchars:2,multiple:true,multipleSep:", "})}a("html, body").animate({scrollTop:0},"fast")},edit:function(c){var n=this,j,e,g,i,h,m,l,d=true,o,b,k;n.revert();if(typeof(c)=="object"){c=n.getId(c)}j=["post_title","post_name","post_author","_status","jj","mm","aa","hh","mn","ss","post_password","post_format"];if(n.type=="page"){j.push("post_parent","menu_order","page_template")}e=a("#inline-edit").clone(true);a("td",e).attr("colspan",a(".widefat:first thead th:visible").length);if(a(n.what+c).hasClass("alternate")){a(e).addClass("alternate")}a(n.what+c).hide().after(e);g=a("#inline_"+c);if(!a(':input[name="post_author"] option[value="'+a(".post_author",g).text()+'"]',e).val()){a(':input[name="post_author"]',e).prepend('<option value="'+a(".post_author",g).text()+'">'+a("#"+n.type+"-"+c+" .author").text()+"</option>")}if(a(':input[name="post_author"] option',e).length==1){a("label.inline-edit-author",e).hide()}b=a(".post_format",g).text();a("option.unsupported",e).each(function(){var f=a(this);if(f.val()!=b){f.remove()}});for(k=0;k<j.length;k++){a(':input[name="'+j[k]+'"]',e).val(a("."+j[k],g).text())}if(a(".comment_status",g).text()=="open"){a('input[name="comment_status"]',e).prop("checked",true)}if(a(".ping_status",g).text()=="open"){a('input[name="ping_status"]',e).prop("checked",true)}if(a(".sticky",g).text()=="sticky"){a('input[name="sticky"]',e).prop("checked",true)}a(".post_category",g).each(function(){var f=a(this).text();if(f){taxname=a(this).attr("id").replace("_"+c,"");a("ul."+taxname+"-checklist :checkbox",e).val(f.split(","))}});a(".tags_input",g).each(function(){var p=a(this).text(),q=a(this).attr("id").replace("_"+c,""),f=a("textarea.tax_input_"+q,e);if(p){f.val(p)}f.suggest("admin-ajax.php?action=ajax-tag-search&tax="+q,{delay:500,minchars:2,multiple:true,multipleSep:", "})});i=a("._status",g).text();if("future"!=i){a('select[name="_status"] option[value="future"]',e).remove()}if("private"==i){a('input[name="keep_private"]',e).prop("checked",true);a("input.inline-edit-password-input").val("").prop("disabled",true)}h=a('select[name="post_parent"] option[value="'+c+'"]',e);if(h.length>0){m=h[0].className.split("-")[1];l=h;while(d){l=l.next("option");if(l.length==0){break}o=l[0].className.split("-")[1];if(o<=m){d=false}else{l.remove();l=h}}h.remove()}a(e).attr("id","edit-"+c).addClass("inline-editor").show();a(".ptitle",e).focus();return false},save:function(e){var d,b,c=a(".post_status_page").val()||"";if(typeof(e)=="object"){e=this.getId(e)}a("table.widefat .inline-edit-save .waiting").show();d={action:"inline-save",post_type:typenow,post_ID:e,edit_date:"true",post_status:c};b=a("#edit-"+e+" :input").serialize();d=b+"&"+a.param(d);a.post("admin-ajax.php",d,function(f){a("table.widefat .inline-edit-save .waiting").hide();if(f){if(-1!=f.indexOf("<tr")){a(inlineEditPost.what+e).remove();a("#edit-"+e).before(f).remove();a(inlineEditPost.what+e).hide().fadeIn()}else{f=f.replace(/<.[^<>]*?>/g,"");a("#edit-"+e+" .inline-edit-save .error").html(f).show()}}else{a("#edit-"+e+" .inline-edit-save .error").html(inlineEditL10n.error).show()}},"html");return false},revert:function(){var b=a("table.widefat tr.inline-editor").attr("id");if(b){a("table.widefat .inline-edit-save .waiting").hide();if("bulk-edit"==b){a("table.widefat #bulk-edit").removeClass("inline-editor").hide();a("#bulk-titles").html("");a("#inlineedit").append(a("#bulk-edit"))}else{a("#"+b).remove();b=b.substr(b.lastIndexOf("-")+1);a(this.what+b).show()}}return false},getId:function(c){var d=a(c).closest("tr").attr("id"),b=d.split("-");return b[b.length-1]}};a(document).ready(function(){inlineEditPost.init()})})(jQuery);
\ No newline at end of file
index b19f2922194b3bf963d5338c92fcc3d1bf9ef287..488e3a01f21c48a67126560fe2f9fed7065a39eb 100644 (file)
@@ -1,8 +1,25 @@
 // send html to the post editor
 // send html to the post editor
+
+var wpActiveEditor;
+
 function send_to_editor(h) {
 function send_to_editor(h) {
-       var ed;
+       var ed, mce = typeof(tinymce) != 'undefined', qt = typeof(QTags) != 'undefined';
+
+       if ( !wpActiveEditor ) {
+               if ( mce && tinymce.activeEditor ) {
+                       ed = tinymce.activeEditor;
+                       wpActiveEditor = ed.id;
+               } else if ( !qt ) {
+                       return false;
+               }
+       } else if ( mce ) {
+               if ( tinymce.activeEditor && (tinymce.activeEditor.id == 'mce_fullscreen' || tinymce.activeEditor.id == 'wp_mce_fullscreen') )
+                       ed = tinymce.activeEditor;
+               else
+                       ed = tinymce.get(wpActiveEditor);
+       }
 
 
-       if ( typeof tinyMCE != 'undefined' && ( ed = tinyMCE.activeEditor ) && !ed.isHidden() ) {
+       if ( ed && !ed.isHidden() ) {
                // restore caret position on IE
                if ( tinymce.isIE && ed.windowManager.insertimagebookmark )
                        ed.selection.moveToBookmark(ed.windowManager.insertimagebookmark);
                // restore caret position on IE
                if ( tinymce.isIE && ed.windowManager.insertimagebookmark )
                        ed.selection.moveToBookmark(ed.windowManager.insertimagebookmark);
@@ -19,14 +36,13 @@ function send_to_editor(h) {
                }
 
                ed.execCommand('mceInsertContent', false, h);
                }
 
                ed.execCommand('mceInsertContent', false, h);
-
-       } else if ( typeof edInsertContent == 'function' ) {
-               edInsertContent(edCanvas, h);
+       } else if ( qt ) {
+               QTags.insertContent(h);
        } else {
        } else {
-               jQuery( edCanvas ).val( jQuery( edCanvas ).val() + h );
+               document.getElementById(wpActiveEditor).value += h;
        }
 
        }
 
-       tb_remove();
+       try{tb_remove();}catch(e){};
 }
 
 // thickbox settings
 }
 
 // thickbox settings
@@ -62,7 +78,7 @@ var tb_position;
                $('a.thickbox').click(function(){
                        var ed;
 
                $('a.thickbox').click(function(){
                        var ed;
 
-                       if ( typeof tinyMCE != 'undefined' && tinymce.isIE && ( ed = tinyMCE.activeEditor ) && !ed.isHidden() ) {
+                       if ( typeof(tinymce) != 'undefined' && tinymce.isIE && ( ed = tinymce.get(wpActiveEditor) ) && !ed.isHidden() ) {
                                ed.focus();
                                ed.windowManager.insertimagebookmark = ed.selection.getBookmark();
                        }
                                ed.focus();
                                ed.windowManager.insertimagebookmark = ed.selection.getBookmark();
                        }
index 201f6abc2cb7ad1e26b4ff28e18c44c0fb207caf..618d92b3700dae05ddae5e0b63c01114bcc7bc9c 100644 (file)
@@ -1 +1 @@
-function send_to_editor(b){var a;if(typeof tinyMCE!="undefined"&&(a=tinyMCE.activeEditor)&&!a.isHidden()){if(tinymce.isIE&&a.windowManager.insertimagebookmark){a.selection.moveToBookmark(a.windowManager.insertimagebookmark)}if(b.indexOf("[caption")===0){if(a.plugins.wpeditimage){b=a.plugins.wpeditimage._do_shcode(b)}}else{if(b.indexOf("[gallery")===0){if(a.plugins.wpgallery){b=a.plugins.wpgallery._do_gallery(b)}}else{if(b.indexOf("[embed")===0){if(a.plugins.wordpress){b=a.plugins.wordpress._setEmbed(b)}}}}a.execCommand("mceInsertContent",false,b)}else{if(typeof edInsertContent=="function"){edInsertContent(edCanvas,b)}else{jQuery(edCanvas).val(jQuery(edCanvas).val()+b)}}tb_remove()}var tb_position;(function(a){tb_position=function(){var f=a("#TB_window"),e=a(window).width(),d=a(window).height(),c=(720<e)?720:e,b=0;if(a("body.admin-bar").length){b=28}if(f.size()){f.width(c-50).height(d-45-b);a("#TB_iframeContent").width(c-50).height(d-75-b);f.css({"margin-left":"-"+parseInt(((c-50)/2),10)+"px"});if(typeof document.body.style.maxWidth!="undefined"){f.css({top:20+b+"px","margin-top":"0"})}}return a("a.thickbox").each(function(){var g=a(this).attr("href");if(!g){return}g=g.replace(/&width=[0-9]+/g,"");g=g.replace(/&height=[0-9]+/g,"");a(this).attr("href",g+"&width="+(c-80)+"&height="+(d-85-b))})};a(window).resize(function(){tb_position()});a(document).ready(function(b){b("a.thickbox").click(function(){var c;if(typeof tinyMCE!="undefined"&&tinymce.isIE&&(c=tinyMCE.activeEditor)&&!c.isHidden()){c.focus();c.windowManager.insertimagebookmark=c.selection.getBookmark()}})})})(jQuery);
\ No newline at end of file
+var wpActiveEditor;function send_to_editor(c){var b,a=typeof(tinymce)!="undefined",f=typeof(QTags)!="undefined";if(!wpActiveEditor){if(a&&tinymce.activeEditor){b=tinymce.activeEditor;wpActiveEditor=b.id}else{if(!f){return false}}}else{if(a){if(tinymce.activeEditor&&(tinymce.activeEditor.id=="mce_fullscreen"||tinymce.activeEditor.id=="wp_mce_fullscreen")){b=tinymce.activeEditor}else{b=tinymce.get(wpActiveEditor)}}}if(b&&!b.isHidden()){if(tinymce.isIE&&b.windowManager.insertimagebookmark){b.selection.moveToBookmark(b.windowManager.insertimagebookmark)}if(c.indexOf("[caption")===0){if(b.plugins.wpeditimage){c=b.plugins.wpeditimage._do_shcode(c)}}else{if(c.indexOf("[gallery")===0){if(b.plugins.wpgallery){c=b.plugins.wpgallery._do_gallery(c)}}else{if(c.indexOf("[embed")===0){if(b.plugins.wordpress){c=b.plugins.wordpress._setEmbed(c)}}}}b.execCommand("mceInsertContent",false,c)}else{if(f){QTags.insertContent(c)}else{document.getElementById(wpActiveEditor).value+=c}}try{tb_remove()}catch(d){}}var tb_position;(function(a){tb_position=function(){var f=a("#TB_window"),e=a(window).width(),d=a(window).height(),c=(720<e)?720:e,b=0;if(a("body.admin-bar").length){b=28}if(f.size()){f.width(c-50).height(d-45-b);a("#TB_iframeContent").width(c-50).height(d-75-b);f.css({"margin-left":"-"+parseInt(((c-50)/2),10)+"px"});if(typeof document.body.style.maxWidth!="undefined"){f.css({top:20+b+"px","margin-top":"0"})}}return a("a.thickbox").each(function(){var g=a(this).attr("href");if(!g){return}g=g.replace(/&width=[0-9]+/g,"");g=g.replace(/&height=[0-9]+/g,"");a(this).attr("href",g+"&width="+(c-80)+"&height="+(d-85-b))})};a(window).resize(function(){tb_position()});a(document).ready(function(b){b("a.thickbox").click(function(){var c;if(typeof(tinymce)!="undefined"&&tinymce.isIE&&(c=tinymce.get(wpActiveEditor))&&!c.isHidden()){c.focus();c.windowManager.insertimagebookmark=c.selection.getBookmark()}})})})(jQuery);
\ No newline at end of file
index 33cc6cf258e6a670ed8700afcea835b84f488deb..136683987790413cd5dfc4150c26c4400e93ada6 100644 (file)
@@ -427,6 +427,12 @@ var wpNavMenu;
                                        }
                                }
                        });
                                        }
                                }
                        });
+                       $('#add-custom-links input[type="text"]').keypress(function(e){
+                               if ( e.keyCode === 13 ) {
+                                       e.preventDefault();
+                                       $("#submit-customlinkdiv").click();
+                               }
+                       });
                },
 
                /**
                },
 
                /**
index db66d672ec3f33d97da4ad59d8efa9077d47d379..e4263dc3c1107fdb2c51ddf4b3ed5a237ea11f0b 100644 (file)
@@ -1 +1 @@
-var wpNavMenu;(function(b){var a=wpNavMenu={options:{menuItemDepthPerLevel:30,globalMaxDepth:11},menuList:undefined,targetList:undefined,menusChanged:false,isRTL:!!("undefined"!=typeof isRtl&&isRtl),negateIfRTL:("undefined"!=typeof isRtl&&isRtl)?-1:1,init:function(){a.menuList=b("#menu-to-edit");a.targetList=a.menuList;this.jQueryExtensions();this.attachMenuEditListeners();this.setupInputWithDefaultTitle();this.attachQuickSearchListeners();this.attachThemeLocationsListeners();this.attachTabsPanelListeners();this.attachUnsavedChangesListener();if(a.menuList.length){this.initSortables()}this.initToggles();this.initTabManager()},jQueryExtensions:function(){b.fn.extend({menuItemDepth:function(){var c=a.isRTL?this.eq(0).css("margin-right"):this.eq(0).css("margin-left");return a.pxToDepth(c&&-1!=c.indexOf("px")?c.slice(0,-2):0)},updateDepthClass:function(d,c){return this.each(function(){var e=b(this);c=c||e.menuItemDepth();b(this).removeClass("menu-item-depth-"+c).addClass("menu-item-depth-"+d)})},shiftDepthClass:function(c){return this.each(function(){var d=b(this),e=d.menuItemDepth();b(this).removeClass("menu-item-depth-"+e).addClass("menu-item-depth-"+(e+c))})},childMenuItems:function(){var c=b();this.each(function(){var d=b(this),f=d.menuItemDepth(),e=d.next();while(e.length&&e.menuItemDepth()>f){c=c.add(e);e=e.next()}});return c},updateParentMenuItemDBId:function(){return this.each(function(){var e=b(this),c=e.find(".menu-item-data-parent-id"),f=e.menuItemDepth(),d=e.prev();if(f==0){c.val(0)}else{while(!d[0]||!d[0].className||-1==d[0].className.indexOf("menu-item")||(d.menuItemDepth()!=f-1)){d=d.prev()}c.val(d.find(".menu-item-data-db-id").val())}})},hideAdvancedMenuItemFields:function(){return this.each(function(){var c=b(this);b(".hide-column-tog").not(":checked").each(function(){c.find(".field-"+b(this).val()).addClass("hidden-field")})})},addSelectedToMenu:function(c){if(0==b("#menu-to-edit").length){return false}return this.each(function(){var e=b(this),d={},g=e.find(".tabs-panel-active .categorychecklist li input:checked"),f=new RegExp("menu-item\\[([^\\]]*)");c=c||a.addMenuItemToBottom;if(!g.length){return false}e.find("img.waiting").show();b(g).each(function(){var i=b(this),h=f.exec(i.attr("name")),j="undefined"==typeof h[1]?0:parseInt(h[1],10);if(this.className&&-1!=this.className.indexOf("add-to-top")){c=a.addMenuItemToTop}d[j]=i.closest("li").getItemData("add-menu-item",j)});a.addItemToMenu(d,c,function(){g.removeAttr("checked");e.find("img.waiting").hide()})})},getItemData:function(f,g){f=f||"menu-item";var d={},e,c=["menu-item-db-id","menu-item-object-id","menu-item-object","menu-item-parent-id","menu-item-position","menu-item-type","menu-item-title","menu-item-url","menu-item-description","menu-item-attr-title","menu-item-target","menu-item-classes","menu-item-xfn"];if(!g&&f=="menu-item"){g=this.find(".menu-item-data-db-id").val()}if(!g){return d}this.find("input").each(function(){var h;e=c.length;while(e--){if(f=="menu-item"){h=c[e]+"["+g+"]"}else{if(f=="add-menu-item"){h="menu-item["+g+"]["+c[e]+"]"}}if(this.name&&h==this.name){d[c[e]]=this.value}}});return d},setItemData:function(c,d,e){d=d||"menu-item";if(!e&&d=="menu-item"){e=b(".menu-item-data-db-id",this).val()}if(!e){return this}this.find("input").each(function(){var f=b(this),g;b.each(c,function(h,i){if(d=="menu-item"){g=h+"["+e+"]"}else{if(d=="add-menu-item"){g="menu-item["+e+"]["+h+"]"}}if(g==f.attr("name")){f.val(i)}})});return this}})},initToggles:function(){postboxes.add_postbox_toggles("nav-menus");columns.useCheckboxesForHidden();columns.checked=function(c){b(".field-"+c).removeClass("hidden-field")};columns.unchecked=function(c){b(".field-"+c).addClass("hidden-field")};a.menuList.hideAdvancedMenuItemFields()},initSortables:function(){var p=0,e,t,d,l,o,f,c,i,s,m=a.menuList.offset().left,h=b("body"),q,n=r();m+=a.isRTL?a.menuList.width():0;a.menuList.sortable({handle:".menu-item-handle",placeholder:"sortable-placeholder",start:function(A,z){var u,x,w,v,y;if(a.isRTL){z.item[0].style.right="auto"}s=z.item.children(".menu-item-transport");e=z.item.menuItemDepth();j(z,e);w=(z.item.next()[0]==z.placeholder[0])?z.item.next():z.item;v=w.childMenuItems();s.append(v);u=s.outerHeight();u+=(u>0)?(z.placeholder.css("margin-top").slice(0,-2)*1):0;u+=z.helper.outerHeight();i=u;u-=2;z.placeholder.height(u);q=e;v.each(function(){var B=b(this).menuItemDepth();q=(B>q)?B:q});x=z.helper.find(".menu-item-handle").outerWidth();x+=a.depthToPx(q-e);x-=2;z.placeholder.width(x);y=z.placeholder.next();y.css("margin-top",i+"px");z.placeholder.detach();b(this).sortable("refresh");z.item.after(z.placeholder);y.css("margin-top",0);k(z)},stop:function(x,w){var v,u=p-e;v=s.children().insertAfter(w.item);if(u!=0){w.item.updateDepthClass(p);v.shiftDepthClass(u);g(u)}a.registerChange();w.item.updateParentMenuItemDBId();w.item[0].style.top=0;if(a.isRTL){w.item[0].style.left="auto";w.item[0].style.right=0}a.refreshMenuTabs(true)},change:function(v,u){if(!u.placeholder.parent().hasClass("menu")){(l.length)?l.after(u.placeholder):a.menuList.prepend(u.placeholder)}k(u)},sort:function(w,v){var y=v.helper.offset(),u=a.isRTL?y.left+v.helper.width():y.left,x=a.negateIfRTL*a.pxToDepth(u-m);if(x>d||y.top<f){x=d}else{if(x<t){x=t}}if(x!=p){j(v,x)}if(c&&y.top+i>c){o.after(v.placeholder);k(v);b(this).sortable("refreshPositions")}}});function k(u){var v;l=u.placeholder.prev();o=u.placeholder.next();if(l[0]==u.item[0]){l=l.prev()}if(o[0]==u.item[0]){o=o.next()}f=(l.length)?l.offset().top+l.height():0;c=(o.length)?o.offset().top+o.height()/3:0;t=(o.length)?o.menuItemDepth():0;if(l.length){d=((v=l.menuItemDepth()+1)>a.options.globalMaxDepth)?a.options.globalMaxDepth:v}else{d=0}}function j(u,v){u.placeholder.updateDepthClass(v,p);p=v}function r(){if(!h[0].className){return 0}var u=h[0].className.match(/menu-max-depth-(\d+)/);return u&&u[1]?parseInt(u[1]):0}function g(u){var v,w=n;if(u===0){return}else{if(u>0){v=q+u;if(v>n){w=v}}else{if(u<0&&q==n){while(!b(".menu-item-depth-"+w,a.menuList).length&&w>0){w--}}}}h.removeClass("menu-max-depth-"+n).addClass("menu-max-depth-"+w);n=w}},attachMenuEditListeners:function(){var c=this;b("#update-nav-menu").bind("click",function(d){if(d.target&&d.target.className){if(-1!=d.target.className.indexOf("item-edit")){return c.eventOnClickEditLink(d.target)}else{if(-1!=d.target.className.indexOf("menu-save")){return c.eventOnClickMenuSave(d.target)}else{if(-1!=d.target.className.indexOf("menu-delete")){return c.eventOnClickMenuDelete(d.target)}else{if(-1!=d.target.className.indexOf("item-delete")){return c.eventOnClickMenuItemDelete(d.target)}else{if(-1!=d.target.className.indexOf("item-cancel")){return c.eventOnClickCancelLink(d.target)}}}}}}})},setupInputWithDefaultTitle:function(){var c="input-with-default-title";b("."+c).each(function(){var f=b(this),e=f.attr("title"),d=f.val();f.data(c,e);if(""==d){f.val(e)}else{if(e==d){return}else{f.removeClass(c)}}}).focus(function(){var d=b(this);if(d.val()==d.data(c)){d.val("").removeClass(c)}}).blur(function(){var d=b(this);if(""==d.val()){d.addClass(c).val(d.data(c))}})},attachThemeLocationsListeners:function(){var d=b("#nav-menu-theme-locations"),c={};c.action="menu-locations-save";c["menu-settings-column-nonce"]=b("#menu-settings-column-nonce").val();d.find('input[type="submit"]').click(function(){d.find("select").each(function(){c[this.name]=b(this).val()});d.find(".waiting").show();b.post(ajaxurl,c,function(e){d.find(".waiting").hide()});return false})},attachQuickSearchListeners:function(){var c;b(".quick-search").keypress(function(f){var d=b(this);if(13==f.which){a.updateQuickSearchResults(d);return false}if(c){clearTimeout(c)}c=setTimeout(function(){a.updateQuickSearchResults(d)},400)}).attr("autocomplete","off")},updateQuickSearchResults:function(d){var c,g,e=2,f=d.val();if(f.length<e){return}c=d.parents(".tabs-panel");g={action:"menu-quick-search","response-format":"markup",menu:b("#menu").val(),"menu-settings-column-nonce":b("#menu-settings-column-nonce").val(),q:f,type:d.attr("name")};b("img.waiting",c).show();b.post(ajaxurl,g,function(h){a.processQuickSearchQueryResponse(h,g,c)})},addCustomLink:function(c){var e=b("#custom-menu-item-url").val(),d=b("#custom-menu-item-name").val();c=c||a.addMenuItemToBottom;if(""==e||"http://"==e){return false}b(".customlinkdiv img.waiting").show();this.addLinkToMenu(e,d,c,function(){b(".customlinkdiv img.waiting").hide();b("#custom-menu-item-name").val("").blur();b("#custom-menu-item-url").val("http://")})},addLinkToMenu:function(e,d,c,f){c=c||a.addMenuItemToBottom;f=f||function(){};a.addItemToMenu({"-1":{"menu-item-type":"custom","menu-item-url":e,"menu-item-title":d}},c,f)},addItemToMenu:function(e,c,g){var f=b("#menu").val(),d=b("#menu-settings-column-nonce").val();c=c||function(){};g=g||function(){};params={action:"add-menu-item",menu:f,"menu-settings-column-nonce":d,"menu-item":e};b.post(ajaxurl,params,function(h){var i=b("#menu-instructions");c(h,params);if(!i.hasClass("menu-instructions-inactive")&&i.siblings().length){i.addClass("menu-instructions-inactive")}g()})},addMenuItemToBottom:function(c,d){b(c).hideAdvancedMenuItemFields().appendTo(a.targetList)},addMenuItemToTop:function(c,d){b(c).hideAdvancedMenuItemFields().prependTo(a.targetList)},attachUnsavedChangesListener:function(){b("#menu-management input, #menu-management select, #menu-management, #menu-management textarea").change(function(){a.registerChange()});if(0!=b("#menu-to-edit").length){window.onbeforeunload=function(){if(a.menusChanged){return navMenuL10n.saveAlert}}}else{b("#menu-settings-column").find("input,select").prop("disabled",true).end().find("a").attr("href","#").unbind("click")}},registerChange:function(){a.menusChanged=true},attachTabsPanelListeners:function(){b("#menu-settings-column").bind("click",function(h){var f,d,i,c,g=b(h.target);if(g.hasClass("nav-tab-link")){d=/#(.*)$/.exec(h.target.href);if(d&&d[1]){d=d[1]}else{return false}i=g.parents(".inside").first();b("input",i).removeAttr("checked");b(".tabs-panel-active",i).removeClass("tabs-panel-active").addClass("tabs-panel-inactive");b("#"+d,i).removeClass("tabs-panel-inactive").addClass("tabs-panel-active");b(".tabs",i).removeClass("tabs");g.parent().addClass("tabs");b(".quick-search",i).focus();return false}else{if(g.hasClass("select-all")){f=/#(.*)$/.exec(h.target.href);if(f&&f[1]){c=b("#"+f[1]+" .tabs-panel-active .menu-item-title input");if(c.length===c.filter(":checked").length){c.removeAttr("checked")}else{c.prop("checked",true)}return false}}else{if(g.hasClass("submit-add-to-menu")){a.registerChange();if(h.target.id&&"submit-customlinkdiv"==h.target.id){a.addCustomLink(a.addMenuItemToBottom)}else{if(h.target.id&&-1!=h.target.id.indexOf("submit-")){b("#"+h.target.id.replace(/submit-/,"")).addSelectedToMenu(a.addMenuItemToBottom)}}return false}else{if(g.hasClass("page-numbers")){b.post(ajaxurl,h.target.href.replace(/.*\?/,"").replace(/action=([^&]*)/,"")+"&action=menu-get-metabox",function(m){if(-1==m.indexOf("replace-id")){return}var l=b.parseJSON(m),e=document.getElementById(l["replace-id"]),k=document.createElement("div"),j=document.createElement("div");if(!l.markup||!e){return}j.innerHTML=l.markup?l.markup:"";e.parentNode.insertBefore(k,e);k.parentNode.removeChild(e);k.parentNode.insertBefore(j,k);k.parentNode.removeChild(k)});return false}}}}})},initTabManager:function(){var h=b(".nav-tabs-wrapper"),j=h.children(".nav-tabs"),g=j.children(".nav-tab-active"),m=j.children(".nav-tab"),e=0,o,f,l,d,k,i={},c=a.isRTL?"margin-right":"margin-left",p=a.isRTL?"margin-left":"margin-right",n=2;a.refreshMenuTabs=function(q){var t=h.width(),s=0,r={};f=h.offset().left;o=f+t;if(!q){g.makeTabVisible()}if(m.last().isTabVisible()){s=h.width()-e;s=s>0?0:s;r[c]=s+"px";j.animate(r,100,"linear")}if(t>e){l.add(d).hide()}else{l.add(d).show()}};b.fn.extend({makeTabVisible:function(){var u=this.eq(0),v,s,r={},q=0;if(!u.length){return this}v=u.offset().left;s=v+u.outerWidth();if(s>o){q=o-s}else{if(v<f){q=f-v}}if(!q){return this}r[c]="+="+a.negateIfRTL*q+"px";j.animate(r,Math.abs(q)*n,"linear");return this},isTabVisible:function(){var r=this.eq(0),s=r.offset().left,q=s+r.outerWidth();return(q<=o&&s>=f)?true:false}});m.each(function(){e+=b(this).outerWidth(true)});i.padding=0;i[p]=(-1*e)+"px";j.css(i);l=b('<div class="nav-tabs-arrow nav-tabs-arrow-left"><a>&laquo;</a></div>');d=b('<div class="nav-tabs-arrow nav-tabs-arrow-right"><a>&raquo;</a></div>');h.wrap('<div class="nav-tabs-nav"/>').parent().prepend(l).append(d);a.refreshMenuTabs();b(window).resize(function(){if(k){clearTimeout(k)}k=setTimeout(a.refreshMenuTabs,200)});b.each([{arrow:l,next:"next",last:"first",operator:"+="},{arrow:d,next:"prev",last:"last",operator:"-="}],function(){var q=this;this.arrow.mousedown(function(){var t=Math.abs(parseInt(j.css(c))),r=t,s={};if("-="==q.operator){r=Math.abs(e-h.width())-t}if(!r){return}s[c]=q.operator+r+"px";j.animate(s,r*n,"linear")}).mouseup(function(){var s,r;j.stop(true);s=m[q.last]();while((r=s[q.next]())&&r.length&&!r.isTabVisible()){s=r}s.makeTabVisible()})})},eventOnClickEditLink:function(d){var c,e,f=/#(.*)$/.exec(d.href);if(f&&f[1]){c=b("#"+f[1]);e=c.parent();if(0!=e.length){if(e.hasClass("menu-item-edit-inactive")){if(!c.data("menu-item-data")){c.data("menu-item-data",c.getItemData())}c.slideDown("fast");e.removeClass("menu-item-edit-inactive").addClass("menu-item-edit-active")}else{c.slideUp("fast");e.removeClass("menu-item-edit-active").addClass("menu-item-edit-inactive")}return false}}},eventOnClickCancelLink:function(d){var c=b(d).closest(".menu-item-settings");c.setItemData(c.data("menu-item-data"));return false},eventOnClickMenuSave:function(e){var f="",c=b("#menu-name"),d=c.val();if(!d||d==c.attr("title")||!d.replace(/\s+/,"")){c.parent().addClass("form-invalid");return false}b("#nav-menu-theme-locations select").each(function(){f+='<input type="hidden" name="'+this.name+'" value="'+b(this).val()+'" />'});b("#update-nav-menu").append(f);a.menuList.find(".menu-item-data-position").val(function(g){return g+1});window.onbeforeunload=null;return true},eventOnClickMenuDelete:function(c){if(confirm(navMenuL10n.warnDeleteMenu)){window.onbeforeunload=null;return true}return false},eventOnClickMenuItemDelete:function(c){var d=parseInt(c.id.replace("delete-",""),10);a.removeMenuItem(b("#menu-item-"+d));a.registerChange();return false},processQuickSearchQueryResponse:function(g,k,c){var e,i,f={},d=document.getElementById("nav-menu-meta"),j=new RegExp("menu-item\\[([^\\]]*)","g"),h=b("<div>").html(g).find("li"),l;if(!h.length){b(".categorychecklist",c).html("<li><p>"+navMenuL10n.noResultsFound+"</p></li>");b("img.waiting",c).hide();return}h.each(function(){l=b(this);e=j.exec(l.html());if(e&&e[1]){i=e[1];while(d.elements["menu-item["+i+"][menu-item-type]"]||f[i]){i--}f[i]=true;if(i!=e[1]){l.html(l.html().replace(new RegExp("menu-item\\["+e[1]+"\\]","g"),"menu-item["+i+"]"))}}});b(".categorychecklist",c).html(h);b("img.waiting",c).hide()},removeMenuItem:function(d){var c=d.childMenuItems();d.addClass("deleting").animate({opacity:0,height:0},350,function(){var e=b("#menu-instructions");d.remove();c.shiftDepthClass(-1).updateParentMenuItemDBId();if(!e.siblings().length){e.removeClass("menu-instructions-inactive")}})},depthToPx:function(c){return c*a.options.menuItemDepthPerLevel},pxToDepth:function(c){return Math.floor(c/a.options.menuItemDepthPerLevel)}};b(document).ready(function(){wpNavMenu.init()})})(jQuery);
\ No newline at end of file
+var wpNavMenu;(function(b){var a=wpNavMenu={options:{menuItemDepthPerLevel:30,globalMaxDepth:11},menuList:undefined,targetList:undefined,menusChanged:false,isRTL:!!("undefined"!=typeof isRtl&&isRtl),negateIfRTL:("undefined"!=typeof isRtl&&isRtl)?-1:1,init:function(){a.menuList=b("#menu-to-edit");a.targetList=a.menuList;this.jQueryExtensions();this.attachMenuEditListeners();this.setupInputWithDefaultTitle();this.attachQuickSearchListeners();this.attachThemeLocationsListeners();this.attachTabsPanelListeners();this.attachUnsavedChangesListener();if(a.menuList.length){this.initSortables()}this.initToggles();this.initTabManager()},jQueryExtensions:function(){b.fn.extend({menuItemDepth:function(){var c=a.isRTL?this.eq(0).css("margin-right"):this.eq(0).css("margin-left");return a.pxToDepth(c&&-1!=c.indexOf("px")?c.slice(0,-2):0)},updateDepthClass:function(d,c){return this.each(function(){var e=b(this);c=c||e.menuItemDepth();b(this).removeClass("menu-item-depth-"+c).addClass("menu-item-depth-"+d)})},shiftDepthClass:function(c){return this.each(function(){var d=b(this),e=d.menuItemDepth();b(this).removeClass("menu-item-depth-"+e).addClass("menu-item-depth-"+(e+c))})},childMenuItems:function(){var c=b();this.each(function(){var d=b(this),f=d.menuItemDepth(),e=d.next();while(e.length&&e.menuItemDepth()>f){c=c.add(e);e=e.next()}});return c},updateParentMenuItemDBId:function(){return this.each(function(){var e=b(this),c=e.find(".menu-item-data-parent-id"),f=e.menuItemDepth(),d=e.prev();if(f==0){c.val(0)}else{while(!d[0]||!d[0].className||-1==d[0].className.indexOf("menu-item")||(d.menuItemDepth()!=f-1)){d=d.prev()}c.val(d.find(".menu-item-data-db-id").val())}})},hideAdvancedMenuItemFields:function(){return this.each(function(){var c=b(this);b(".hide-column-tog").not(":checked").each(function(){c.find(".field-"+b(this).val()).addClass("hidden-field")})})},addSelectedToMenu:function(c){if(0==b("#menu-to-edit").length){return false}return this.each(function(){var e=b(this),d={},g=e.find(".tabs-panel-active .categorychecklist li input:checked"),f=new RegExp("menu-item\\[([^\\]]*)");c=c||a.addMenuItemToBottom;if(!g.length){return false}e.find("img.waiting").show();b(g).each(function(){var i=b(this),h=f.exec(i.attr("name")),j="undefined"==typeof h[1]?0:parseInt(h[1],10);if(this.className&&-1!=this.className.indexOf("add-to-top")){c=a.addMenuItemToTop}d[j]=i.closest("li").getItemData("add-menu-item",j)});a.addItemToMenu(d,c,function(){g.removeAttr("checked");e.find("img.waiting").hide()})})},getItemData:function(f,g){f=f||"menu-item";var d={},e,c=["menu-item-db-id","menu-item-object-id","menu-item-object","menu-item-parent-id","menu-item-position","menu-item-type","menu-item-title","menu-item-url","menu-item-description","menu-item-attr-title","menu-item-target","menu-item-classes","menu-item-xfn"];if(!g&&f=="menu-item"){g=this.find(".menu-item-data-db-id").val()}if(!g){return d}this.find("input").each(function(){var h;e=c.length;while(e--){if(f=="menu-item"){h=c[e]+"["+g+"]"}else{if(f=="add-menu-item"){h="menu-item["+g+"]["+c[e]+"]"}}if(this.name&&h==this.name){d[c[e]]=this.value}}});return d},setItemData:function(c,d,e){d=d||"menu-item";if(!e&&d=="menu-item"){e=b(".menu-item-data-db-id",this).val()}if(!e){return this}this.find("input").each(function(){var f=b(this),g;b.each(c,function(h,i){if(d=="menu-item"){g=h+"["+e+"]"}else{if(d=="add-menu-item"){g="menu-item["+e+"]["+h+"]"}}if(g==f.attr("name")){f.val(i)}})});return this}})},initToggles:function(){postboxes.add_postbox_toggles("nav-menus");columns.useCheckboxesForHidden();columns.checked=function(c){b(".field-"+c).removeClass("hidden-field")};columns.unchecked=function(c){b(".field-"+c).addClass("hidden-field")};a.menuList.hideAdvancedMenuItemFields()},initSortables:function(){var p=0,e,t,d,l,o,f,c,i,s,m=a.menuList.offset().left,h=b("body"),q,n=r();m+=a.isRTL?a.menuList.width():0;a.menuList.sortable({handle:".menu-item-handle",placeholder:"sortable-placeholder",start:function(A,z){var u,x,w,v,y;if(a.isRTL){z.item[0].style.right="auto"}s=z.item.children(".menu-item-transport");e=z.item.menuItemDepth();j(z,e);w=(z.item.next()[0]==z.placeholder[0])?z.item.next():z.item;v=w.childMenuItems();s.append(v);u=s.outerHeight();u+=(u>0)?(z.placeholder.css("margin-top").slice(0,-2)*1):0;u+=z.helper.outerHeight();i=u;u-=2;z.placeholder.height(u);q=e;v.each(function(){var B=b(this).menuItemDepth();q=(B>q)?B:q});x=z.helper.find(".menu-item-handle").outerWidth();x+=a.depthToPx(q-e);x-=2;z.placeholder.width(x);y=z.placeholder.next();y.css("margin-top",i+"px");z.placeholder.detach();b(this).sortable("refresh");z.item.after(z.placeholder);y.css("margin-top",0);k(z)},stop:function(x,w){var v,u=p-e;v=s.children().insertAfter(w.item);if(u!=0){w.item.updateDepthClass(p);v.shiftDepthClass(u);g(u)}a.registerChange();w.item.updateParentMenuItemDBId();w.item[0].style.top=0;if(a.isRTL){w.item[0].style.left="auto";w.item[0].style.right=0}a.refreshMenuTabs(true)},change:function(v,u){if(!u.placeholder.parent().hasClass("menu")){(l.length)?l.after(u.placeholder):a.menuList.prepend(u.placeholder)}k(u)},sort:function(w,v){var y=v.helper.offset(),u=a.isRTL?y.left+v.helper.width():y.left,x=a.negateIfRTL*a.pxToDepth(u-m);if(x>d||y.top<f){x=d}else{if(x<t){x=t}}if(x!=p){j(v,x)}if(c&&y.top+i>c){o.after(v.placeholder);k(v);b(this).sortable("refreshPositions")}}});function k(u){var v;l=u.placeholder.prev();o=u.placeholder.next();if(l[0]==u.item[0]){l=l.prev()}if(o[0]==u.item[0]){o=o.next()}f=(l.length)?l.offset().top+l.height():0;c=(o.length)?o.offset().top+o.height()/3:0;t=(o.length)?o.menuItemDepth():0;if(l.length){d=((v=l.menuItemDepth()+1)>a.options.globalMaxDepth)?a.options.globalMaxDepth:v}else{d=0}}function j(u,v){u.placeholder.updateDepthClass(v,p);p=v}function r(){if(!h[0].className){return 0}var u=h[0].className.match(/menu-max-depth-(\d+)/);return u&&u[1]?parseInt(u[1]):0}function g(u){var v,w=n;if(u===0){return}else{if(u>0){v=q+u;if(v>n){w=v}}else{if(u<0&&q==n){while(!b(".menu-item-depth-"+w,a.menuList).length&&w>0){w--}}}}h.removeClass("menu-max-depth-"+n).addClass("menu-max-depth-"+w);n=w}},attachMenuEditListeners:function(){var c=this;b("#update-nav-menu").bind("click",function(d){if(d.target&&d.target.className){if(-1!=d.target.className.indexOf("item-edit")){return c.eventOnClickEditLink(d.target)}else{if(-1!=d.target.className.indexOf("menu-save")){return c.eventOnClickMenuSave(d.target)}else{if(-1!=d.target.className.indexOf("menu-delete")){return c.eventOnClickMenuDelete(d.target)}else{if(-1!=d.target.className.indexOf("item-delete")){return c.eventOnClickMenuItemDelete(d.target)}else{if(-1!=d.target.className.indexOf("item-cancel")){return c.eventOnClickCancelLink(d.target)}}}}}}});b('#add-custom-links input[type="text"]').keypress(function(d){if(d.keyCode===13){d.preventDefault();b("#submit-customlinkdiv").click()}})},setupInputWithDefaultTitle:function(){var c="input-with-default-title";b("."+c).each(function(){var f=b(this),e=f.attr("title"),d=f.val();f.data(c,e);if(""==d){f.val(e)}else{if(e==d){return}else{f.removeClass(c)}}}).focus(function(){var d=b(this);if(d.val()==d.data(c)){d.val("").removeClass(c)}}).blur(function(){var d=b(this);if(""==d.val()){d.addClass(c).val(d.data(c))}})},attachThemeLocationsListeners:function(){var d=b("#nav-menu-theme-locations"),c={};c.action="menu-locations-save";c["menu-settings-column-nonce"]=b("#menu-settings-column-nonce").val();d.find('input[type="submit"]').click(function(){d.find("select").each(function(){c[this.name]=b(this).val()});d.find(".waiting").show();b.post(ajaxurl,c,function(e){d.find(".waiting").hide()});return false})},attachQuickSearchListeners:function(){var c;b(".quick-search").keypress(function(f){var d=b(this);if(13==f.which){a.updateQuickSearchResults(d);return false}if(c){clearTimeout(c)}c=setTimeout(function(){a.updateQuickSearchResults(d)},400)}).attr("autocomplete","off")},updateQuickSearchResults:function(d){var c,g,e=2,f=d.val();if(f.length<e){return}c=d.parents(".tabs-panel");g={action:"menu-quick-search","response-format":"markup",menu:b("#menu").val(),"menu-settings-column-nonce":b("#menu-settings-column-nonce").val(),q:f,type:d.attr("name")};b("img.waiting",c).show();b.post(ajaxurl,g,function(h){a.processQuickSearchQueryResponse(h,g,c)})},addCustomLink:function(c){var e=b("#custom-menu-item-url").val(),d=b("#custom-menu-item-name").val();c=c||a.addMenuItemToBottom;if(""==e||"http://"==e){return false}b(".customlinkdiv img.waiting").show();this.addLinkToMenu(e,d,c,function(){b(".customlinkdiv img.waiting").hide();b("#custom-menu-item-name").val("").blur();b("#custom-menu-item-url").val("http://")})},addLinkToMenu:function(e,d,c,f){c=c||a.addMenuItemToBottom;f=f||function(){};a.addItemToMenu({"-1":{"menu-item-type":"custom","menu-item-url":e,"menu-item-title":d}},c,f)},addItemToMenu:function(e,c,g){var f=b("#menu").val(),d=b("#menu-settings-column-nonce").val();c=c||function(){};g=g||function(){};params={action:"add-menu-item",menu:f,"menu-settings-column-nonce":d,"menu-item":e};b.post(ajaxurl,params,function(h){var i=b("#menu-instructions");c(h,params);if(!i.hasClass("menu-instructions-inactive")&&i.siblings().length){i.addClass("menu-instructions-inactive")}g()})},addMenuItemToBottom:function(c,d){b(c).hideAdvancedMenuItemFields().appendTo(a.targetList)},addMenuItemToTop:function(c,d){b(c).hideAdvancedMenuItemFields().prependTo(a.targetList)},attachUnsavedChangesListener:function(){b("#menu-management input, #menu-management select, #menu-management, #menu-management textarea").change(function(){a.registerChange()});if(0!=b("#menu-to-edit").length){window.onbeforeunload=function(){if(a.menusChanged){return navMenuL10n.saveAlert}}}else{b("#menu-settings-column").find("input,select").prop("disabled",true).end().find("a").attr("href","#").unbind("click")}},registerChange:function(){a.menusChanged=true},attachTabsPanelListeners:function(){b("#menu-settings-column").bind("click",function(h){var f,d,i,c,g=b(h.target);if(g.hasClass("nav-tab-link")){d=/#(.*)$/.exec(h.target.href);if(d&&d[1]){d=d[1]}else{return false}i=g.parents(".inside").first();b("input",i).removeAttr("checked");b(".tabs-panel-active",i).removeClass("tabs-panel-active").addClass("tabs-panel-inactive");b("#"+d,i).removeClass("tabs-panel-inactive").addClass("tabs-panel-active");b(".tabs",i).removeClass("tabs");g.parent().addClass("tabs");b(".quick-search",i).focus();return false}else{if(g.hasClass("select-all")){f=/#(.*)$/.exec(h.target.href);if(f&&f[1]){c=b("#"+f[1]+" .tabs-panel-active .menu-item-title input");if(c.length===c.filter(":checked").length){c.removeAttr("checked")}else{c.prop("checked",true)}return false}}else{if(g.hasClass("submit-add-to-menu")){a.registerChange();if(h.target.id&&"submit-customlinkdiv"==h.target.id){a.addCustomLink(a.addMenuItemToBottom)}else{if(h.target.id&&-1!=h.target.id.indexOf("submit-")){b("#"+h.target.id.replace(/submit-/,"")).addSelectedToMenu(a.addMenuItemToBottom)}}return false}else{if(g.hasClass("page-numbers")){b.post(ajaxurl,h.target.href.replace(/.*\?/,"").replace(/action=([^&]*)/,"")+"&action=menu-get-metabox",function(m){if(-1==m.indexOf("replace-id")){return}var l=b.parseJSON(m),e=document.getElementById(l["replace-id"]),k=document.createElement("div"),j=document.createElement("div");if(!l.markup||!e){return}j.innerHTML=l.markup?l.markup:"";e.parentNode.insertBefore(k,e);k.parentNode.removeChild(e);k.parentNode.insertBefore(j,k);k.parentNode.removeChild(k)});return false}}}}})},initTabManager:function(){var h=b(".nav-tabs-wrapper"),j=h.children(".nav-tabs"),g=j.children(".nav-tab-active"),m=j.children(".nav-tab"),e=0,o,f,l,d,k,i={},c=a.isRTL?"margin-right":"margin-left",p=a.isRTL?"margin-left":"margin-right",n=2;a.refreshMenuTabs=function(q){var t=h.width(),s=0,r={};f=h.offset().left;o=f+t;if(!q){g.makeTabVisible()}if(m.last().isTabVisible()){s=h.width()-e;s=s>0?0:s;r[c]=s+"px";j.animate(r,100,"linear")}if(t>e){l.add(d).hide()}else{l.add(d).show()}};b.fn.extend({makeTabVisible:function(){var u=this.eq(0),v,s,r={},q=0;if(!u.length){return this}v=u.offset().left;s=v+u.outerWidth();if(s>o){q=o-s}else{if(v<f){q=f-v}}if(!q){return this}r[c]="+="+a.negateIfRTL*q+"px";j.animate(r,Math.abs(q)*n,"linear");return this},isTabVisible:function(){var r=this.eq(0),s=r.offset().left,q=s+r.outerWidth();return(q<=o&&s>=f)?true:false}});m.each(function(){e+=b(this).outerWidth(true)});i.padding=0;i[p]=(-1*e)+"px";j.css(i);l=b('<div class="nav-tabs-arrow nav-tabs-arrow-left"><a>&laquo;</a></div>');d=b('<div class="nav-tabs-arrow nav-tabs-arrow-right"><a>&raquo;</a></div>');h.wrap('<div class="nav-tabs-nav"/>').parent().prepend(l).append(d);a.refreshMenuTabs();b(window).resize(function(){if(k){clearTimeout(k)}k=setTimeout(a.refreshMenuTabs,200)});b.each([{arrow:l,next:"next",last:"first",operator:"+="},{arrow:d,next:"prev",last:"last",operator:"-="}],function(){var q=this;this.arrow.mousedown(function(){var t=Math.abs(parseInt(j.css(c))),r=t,s={};if("-="==q.operator){r=Math.abs(e-h.width())-t}if(!r){return}s[c]=q.operator+r+"px";j.animate(s,r*n,"linear")}).mouseup(function(){var s,r;j.stop(true);s=m[q.last]();while((r=s[q.next]())&&r.length&&!r.isTabVisible()){s=r}s.makeTabVisible()})})},eventOnClickEditLink:function(d){var c,e,f=/#(.*)$/.exec(d.href);if(f&&f[1]){c=b("#"+f[1]);e=c.parent();if(0!=e.length){if(e.hasClass("menu-item-edit-inactive")){if(!c.data("menu-item-data")){c.data("menu-item-data",c.getItemData())}c.slideDown("fast");e.removeClass("menu-item-edit-inactive").addClass("menu-item-edit-active")}else{c.slideUp("fast");e.removeClass("menu-item-edit-active").addClass("menu-item-edit-inactive")}return false}}},eventOnClickCancelLink:function(d){var c=b(d).closest(".menu-item-settings");c.setItemData(c.data("menu-item-data"));return false},eventOnClickMenuSave:function(e){var f="",c=b("#menu-name"),d=c.val();if(!d||d==c.attr("title")||!d.replace(/\s+/,"")){c.parent().addClass("form-invalid");return false}b("#nav-menu-theme-locations select").each(function(){f+='<input type="hidden" name="'+this.name+'" value="'+b(this).val()+'" />'});b("#update-nav-menu").append(f);a.menuList.find(".menu-item-data-position").val(function(g){return g+1});window.onbeforeunload=null;return true},eventOnClickMenuDelete:function(c){if(confirm(navMenuL10n.warnDeleteMenu)){window.onbeforeunload=null;return true}return false},eventOnClickMenuItemDelete:function(c){var d=parseInt(c.id.replace("delete-",""),10);a.removeMenuItem(b("#menu-item-"+d));a.registerChange();return false},processQuickSearchQueryResponse:function(g,k,c){var e,i,f={},d=document.getElementById("nav-menu-meta"),j=new RegExp("menu-item\\[([^\\]]*)","g"),h=b("<div>").html(g).find("li"),l;if(!h.length){b(".categorychecklist",c).html("<li><p>"+navMenuL10n.noResultsFound+"</p></li>");b("img.waiting",c).hide();return}h.each(function(){l=b(this);e=j.exec(l.html());if(e&&e[1]){i=e[1];while(d.elements["menu-item["+i+"][menu-item-type]"]||f[i]){i--}f[i]=true;if(i!=e[1]){l.html(l.html().replace(new RegExp("menu-item\\["+e[1]+"\\]","g"),"menu-item["+i+"]"))}}});b(".categorychecklist",c).html(h);b("img.waiting",c).hide()},removeMenuItem:function(d){var c=d.childMenuItems();d.addClass("deleting").animate({opacity:0,height:0},350,function(){var e=b("#menu-instructions");d.remove();c.shiftDepthClass(-1).updateParentMenuItemDBId();if(!e.siblings().length){e.removeClass("menu-instructions-inactive")}})},depthToPx:function(c){return c*a.options.menuItemDepthPerLevel},pxToDepth:function(c){return Math.floor(c/a.options.menuItemDepthPerLevel)}};b(document).ready(function(){wpNavMenu.init()})})(jQuery);
\ No newline at end of file
index 51bee06cd6b7ca6a7069a17677b9182ca7bb4916..dd038d8983bf7f16d282c09881846684ede8e365 100644 (file)
@@ -547,6 +547,9 @@ jQuery(document).ready( function($) {
                        b.html('<a href="#" class="save button">'+postL10n.ok+'</a> <a class="cancel" href="#">'+postL10n.cancel+'</a>');
                        b.children('.save').click(function() {
                                var new_slug = e.children('input').val();
                        b.html('<a href="#" class="save button">'+postL10n.ok+'</a> <a class="cancel" href="#">'+postL10n.cancel+'</a>');
                        b.children('.save').click(function() {
                                var new_slug = e.children('input').val();
+                               if ( new_slug == $('#editable-post-name-full').text() ) {
+                                       return $('.cancel', '#edit-slug-buttons').click();
+                               }
                                $.post(ajaxurl, {
                                        action: 'sample-permalink',
                                        post_id: post_id,
                                $.post(ajaxurl, {
                                        action: 'sample-permalink',
                                        post_id: post_id,
index f4ea0cc2d7514705be574f57926c95044e025f86..c37e6daef79cffde92fb84dee7fc3296b5bb81aa 100644 (file)
@@ -1 +1 @@
-var tagBox,commentsBox,editPermalink,makeSlugeditClickable,WPSetThumbnailHTML,WPSetThumbnailID,WPRemoveThumbnail,wptitlehint;function array_unique_noempty(b){var c=[];jQuery.each(b,function(a,d){d=jQuery.trim(d);if(d&&jQuery.inArray(d,c)==-1){c.push(d)}});return c}(function(a){tagBox={clean:function(b){return b.replace(/\s*,\s*/g,",").replace(/,+/g,",").replace(/[,\s]+$/,"").replace(/^[,\s]+/,"")},parseTags:function(e){var h=e.id,b=h.split("-check-num-")[1],d=a(e).closest(".tagsdiv"),g=d.find(".the-tags"),c=g.val().split(","),f=[];delete c[b];a.each(c,function(i,j){j=a.trim(j);if(j){f.push(j)}});g.val(this.clean(f.join(",")));this.quickClicks(d);return false},quickClicks:function(d){var g=a(".the-tags",d),e=a(".tagchecklist",d),f=a(d).attr("id"),b,c;if(!g.length){return}c=g.prop("disabled");b=g.val().split(",");e.empty();a.each(b,function(i,k){var j,h;k=a.trim(k);if(!k){return}j=a("<span />").text(k);if(!c){h=a('<a id="'+f+"-check-num-"+i+'" class="ntdelbutton">X</a>');h.click(function(){tagBox.parseTags(this)});j.prepend("&nbsp;").prepend(h)}e.append(j)})},flushTags:function(e,b,g){b=b||false;var i,c=a(".the-tags",e),h=a("input.newtag",e),d;i=b?a(b).text():h.val();tagsval=c.val();d=tagsval?tagsval+","+i:i;d=this.clean(d);d=array_unique_noempty(d.split(",")).join(",");c.val(d);this.quickClicks(e);if(!b){h.val("")}if("undefined"==typeof(g)){h.focus()}return false},get:function(c){var b=c.substr(c.indexOf("-")+1);a.post(ajaxurl,{action:"get-tagcloud",tax:b},function(e,d){if(0==e||"success"!=d){e=wpAjax.broken}e=a('<p id="tagcloud-'+b+'" class="the-tagcloud">'+e+"</p>");a("a",e).click(function(){tagBox.flushTags(a(this).closest(".inside").children(".tagsdiv"),this);return false});a("#"+c).after(e)})},init:function(){var b=this,c=a("div.ajaxtag");a(".tagsdiv").each(function(){tagBox.quickClicks(this)});a("input.tagadd",c).click(function(){b.flushTags(a(this).closest(".tagsdiv"))});a("div.taghint",c).click(function(){a(this).css("visibility","hidden").parent().siblings(".newtag").focus()});a("input.newtag",c).blur(function(){if(this.value==""){a(this).parent().siblings(".taghint").css("visibility","")}}).focus(function(){a(this).parent().siblings(".taghint").css("visibility","hidden")}).keyup(function(d){if(13==d.which){tagBox.flushTags(a(this).closest(".tagsdiv"));return false}}).keypress(function(d){if(13==d.which){d.preventDefault();return false}}).each(function(){var d=a(this).closest("div.tagsdiv").attr("id");a(this).suggest(ajaxurl+"?action=ajax-tag-search&tax="+d,{delay:500,minchars:2,multiple:true,multipleSep:","})});a("#post").submit(function(){a("div.tagsdiv").each(function(){tagBox.flushTags(this,false,1)})});a("a.tagcloud-link").click(function(){tagBox.get(a(this).attr("id"));a(this).unbind().click(function(){a(this).siblings(".the-tagcloud").toggle();return false});return false})}};commentsBox={st:0,get:function(d,c){var b=this.st,e;if(!c){c=20}this.st+=c;this.total=d;a("#commentsdiv img.waiting").show();e={action:"get-comments",mode:"single",_ajax_nonce:a("#add_comment_nonce").val(),p:a("#post_ID").val(),start:b,number:c};a.post(ajaxurl,e,function(f){f=wpAjax.parseAjaxResponse(f);a("#commentsdiv .widefat").show();a("#commentsdiv img.waiting").hide();if("object"==typeof f&&f.responses[0]){a("#the-comment-list").append(f.responses[0].data);theList=theExtraList=null;a("a[className*=':']").unbind();if(commentsBox.st>commentsBox.total){a("#show-comments").hide()}else{a("#show-comments").html(postL10n.showcomm)}return}else{if(1==f){a("#show-comments").parent().html(postL10n.endcomm);return}}a("#the-comment-list").append('<tr><td colspan="2">'+wpAjax.broken+"</td></tr>")});return false}};WPSetThumbnailHTML=function(b){a(".inside","#postimagediv").html(b)};WPSetThumbnailID=function(c){var b=a('input[value="_thumbnail_id"]',"#list-table");if(b.size()>0){a("#meta\\["+b.attr("id").match(/[0-9]+/)+"\\]\\[value\\]").text(c)}};WPRemoveThumbnail=function(b){a.post(ajaxurl,{action:"set-post-thumbnail",post_id:a("#post_ID").val(),thumbnail_id:-1,_ajax_nonce:b,cookie:encodeURIComponent(document.cookie)},function(c){if(c=="0"){alert(setPostThumbnailL10n.error)}else{WPSetThumbnailHTML(c)}})}})(jQuery);jQuery(document).ready(function(f){var b,a,g="",e=0,h=f("#content");postboxes.add_postbox_toggles(pagenow);if(f("#tagsdiv-post_tag").length){tagBox.init()}else{f("#side-sortables, #normal-sortables, #advanced-sortables").children("div.postbox").each(function(){if(this.id.indexOf("tagsdiv-")===0){tagBox.init();return false}})}f(".categorydiv").each(function(){var n=f(this).attr("id"),j=false,m,o,l,i,k;l=n.split("-");l.shift();i=l.join("-");k=i+"_tab";if(i=="category"){k="cats"}f("a","#"+i+"-tabs").click(function(){var p=f(this).attr("href");f(this).parent().addClass("tabs").siblings("li").removeClass("tabs");f("#"+i+"-tabs").siblings(".tabs-panel").hide();f(p).show();if("#"+i+"-all"==p){deleteUserSetting(k)}else{setUserSetting(k,"pop")}return false});if(getUserSetting(k)){f('a[href="#'+i+'-pop"]',"#"+i+"-tabs").click()}f("#new"+i).one("focus",function(){f(this).val("").removeClass("form-input-tip")});f("#"+i+"-add-submit").click(function(){f("#new"+i).focus()});m=function(){if(j){return}j=true;var p=jQuery(this),r=p.is(":checked"),q=p.val().toString();f("#in-"+i+"-"+q+", #in-"+i+"-category-"+q).prop("checked",r);j=false};catAddBefore=function(p){if(!f("#new"+i).val()){return false}p.data+="&"+f(":checked","#"+i+"checklist").serialize();return p};o=function(u,t){var q,p=f("#new"+i+"_parent");if("undefined"!=t.parsed.responses[0]&&(q=t.parsed.responses[0].supplemental.newcat_parent)){p.before(q);p.remove()}};f("#"+i+"checklist").wpList({alt:"",response:i+"-ajax-response",addBefore:catAddBefore,addAfter:o});f("#"+i+"-add-toggle").click(function(){f("#"+i+"-adder").toggleClass("wp-hidden-children");f('a[href="#'+i+'-all"]',"#"+i+"-tabs").click();f("#new"+i).focus();return false});f("#"+i+"checklist li.popular-category :checkbox, #"+i+"checklist-pop :checkbox").live("click",function(){var p=f(this),r=p.is(":checked"),q=p.val();if(q&&p.parents("#taxonomy-"+i).length){f("#in-"+i+"-"+q+", #in-popular-"+i+"-"+q).prop("checked",r)}})});if(f("#postcustom").length){f("#the-list").wpList({addAfter:function(i,j){f("table#list-table").show()},addBefore:function(i){i.data+="&post_id="+f("#post_ID").val();return i}})}if(f("#submitdiv").length){b=f("#timestamp").html();a=f("#post-visibility-display").html();function d(){var i=f("#post-visibility-select");if(f("input:radio:checked",i).val()!="public"){f("#sticky").prop("checked",false);f("#sticky-span").hide()}else{f("#sticky-span").show()}if(f("input:radio:checked",i).val()!="password"){f("#password-span").hide()}else{f("#password-span").show()}}function c(){var p,q,j,s,r=f("#post_status"),k=f('option[value="publish"]',r),i=f("#aa").val(),n=f("#mm").val(),o=f("#jj").val(),m=f("#hh").val(),l=f("#mn").val();p=new Date(i,n-1,o,m,l);q=new Date(f("#hidden_aa").val(),f("#hidden_mm").val()-1,f("#hidden_jj").val(),f("#hidden_hh").val(),f("#hidden_mn").val());j=new Date(f("#cur_aa").val(),f("#cur_mm").val()-1,f("#cur_jj").val(),f("#cur_hh").val(),f("#cur_mn").val());if(p.getFullYear()!=i||(1+p.getMonth())!=n||p.getDate()!=o||p.getMinutes()!=l){f(".timestamp-wrap","#timestampdiv").addClass("form-invalid");return false}else{f(".timestamp-wrap","#timestampdiv").removeClass("form-invalid")}if(p>j&&f("#original_post_status").val()!="future"){s=postL10n.publishOnFuture;f("#publish").val(postL10n.schedule)}else{if(p<=j&&f("#original_post_status").val()!="publish"){s=postL10n.publishOn;f("#publish").val(postL10n.publish)}else{s=postL10n.publishOnPast;f("#publish").val(postL10n.update)}}if(q.toUTCString()==p.toUTCString()){f("#timestamp").html(b)}else{f("#timestamp").html(s+" <b>"+f('option[value="'+f("#mm").val()+'"]',"#mm").text()+" "+o+", "+i+" @ "+m+":"+l+"</b> ")}if(f("input:radio:checked","#post-visibility-select").val()=="private"){f("#publish").val(postL10n.update);if(k.length==0){r.append('<option value="publish">'+postL10n.privatelyPublished+"</option>")}else{k.html(postL10n.privatelyPublished)}f('option[value="publish"]',r).prop("selected",true);f(".edit-post-status","#misc-publishing-actions").hide()}else{if(f("#original_post_status").val()=="future"||f("#original_post_status").val()=="draft"){if(k.length){k.remove();r.val(f("#hidden_post_status").val())}}else{k.html(postL10n.published)}if(r.is(":hidden")){f(".edit-post-status","#misc-publishing-actions").show()}}f("#post-status-display").html(f("option:selected",r).text());if(f("option:selected",r).val()=="private"||f("option:selected",r).val()=="publish"){f("#save-post").hide()}else{f("#save-post").show();if(f("option:selected",r).val()=="pending"){f("#save-post").show().val(postL10n.savePending)}else{f("#save-post").show().val(postL10n.saveDraft)}}return true}f(".edit-visibility","#visibility").click(function(){if(f("#post-visibility-select").is(":hidden")){d();f("#post-visibility-select").slideDown("fast");f(this).hide()}return false});f(".cancel-post-visibility","#post-visibility-select").click(function(){f("#post-visibility-select").slideUp("fast");f("#visibility-radio-"+f("#hidden-post-visibility").val()).prop("checked",true);f("#post_password").val(f("#hidden_post_password").val());f("#sticky").prop("checked",f("#hidden-post-sticky").prop("checked"));f("#post-visibility-display").html(a);f(".edit-visibility","#visibility").show();c();return false});f(".save-post-visibility","#post-visibility-select").click(function(){var i=f("#post-visibility-select");i.slideUp("fast");f(".edit-visibility","#visibility").show();c();if(f("input:radio:checked",i).val()!="public"){f("#sticky").prop("checked",false)}if(true==f("#sticky").prop("checked")){g="Sticky"}else{g=""}f("#post-visibility-display").html(postL10n[f("input:radio:checked",i).val()+g]);return false});f("input:radio","#post-visibility-select").change(function(){d()});f("#timestampdiv").siblings("a.edit-timestamp").click(function(){if(f("#timestampdiv").is(":hidden")){f("#timestampdiv").slideDown("fast");f(this).hide()}return false});f(".cancel-timestamp","#timestampdiv").click(function(){f("#timestampdiv").slideUp("fast");f("#mm").val(f("#hidden_mm").val());f("#jj").val(f("#hidden_jj").val());f("#aa").val(f("#hidden_aa").val());f("#hh").val(f("#hidden_hh").val());f("#mn").val(f("#hidden_mn").val());f("#timestampdiv").siblings("a.edit-timestamp").show();c();return false});f(".save-timestamp","#timestampdiv").click(function(){if(c()){f("#timestampdiv").slideUp("fast");f("#timestampdiv").siblings("a.edit-timestamp").show()}return false});f("#post-status-select").siblings("a.edit-post-status").click(function(){if(f("#post-status-select").is(":hidden")){f("#post-status-select").slideDown("fast");f(this).hide()}return false});f(".save-post-status","#post-status-select").click(function(){f("#post-status-select").slideUp("fast");f("#post-status-select").siblings("a.edit-post-status").show();c();return false});f(".cancel-post-status","#post-status-select").click(function(){f("#post-status-select").slideUp("fast");f("#post_status").val(f("#hidden_post_status").val());f("#post-status-select").siblings("a.edit-post-status").show();c();return false})}if(f("#edit-slug-box").length){editPermalink=function(j){var k,n=0,m=f("#editable-post-name"),o=m.html(),r=f("#post_name"),s=r.val(),p=f("#edit-slug-buttons"),q=p.html(),l=f("#editable-post-name-full").html();f("#view-post-btn").hide();p.html('<a href="#" class="save button">'+postL10n.ok+'</a> <a class="cancel" href="#">'+postL10n.cancel+"</a>");p.children(".save").click(function(){var i=m.children("input").val();f.post(ajaxurl,{action:"sample-permalink",post_id:j,new_slug:i,new_title:f("#title").val(),samplepermalinknonce:f("#samplepermalinknonce").val()},function(t){f("#edit-slug-box").html(t);p.html(q);r.val(i);makeSlugeditClickable();f("#view-post-btn").show()});return false});f(".cancel","#edit-slug-buttons").click(function(){f("#view-post-btn").show();m.html(o);p.html(q);r.val(s);return false});for(k=0;k<l.length;++k){if("%"==l.charAt(k)){n++}}slug_value=(n>l.length/4)?"":l;m.html('<input type="text" id="new-post-slug" value="'+slug_value+'" />').children("input").keypress(function(t){var i=t.keyCode||0;if(13==i){p.children(".save").click();return false}if(27==i){p.children(".cancel").click();return false}r.val(this.value)}).focus()};makeSlugeditClickable=function(){f("#editable-post-name").click(function(){f("#edit-slug-buttons").children(".edit-slug").click()})};makeSlugeditClickable()}if(typeof(wpWordCount)!="undefined"){f(document).triggerHandler("wpcountwords",[h.val()]);h.keyup(function(j){var i=j.keyCode||j.charCode;if(i==e){return true}if(13==i||8==e||46==e){f(document).triggerHandler("wpcountwords",[h.val()])}e=i;return true})}wptitlehint=function(k){k=k||"title";var i=f("#"+k),j=f("#"+k+"-prompt-text");if(i.val()==""){j.css("visibility","")}j.click(function(){f(this).css("visibility","hidden");i.focus()});i.blur(function(){if(this.value==""){j.css("visibility","")}}).focus(function(){j.css("visibility","hidden")}).keydown(function(l){j.css("visibility","hidden");f(this).unbind(l)})};wptitlehint()});
\ No newline at end of file
+var tagBox,commentsBox,editPermalink,makeSlugeditClickable,WPSetThumbnailHTML,WPSetThumbnailID,WPRemoveThumbnail,wptitlehint;function array_unique_noempty(a){var out=[];jQuery.each(a,function(key,val){val=jQuery.trim(val);if(val&&jQuery.inArray(val,out)==-1){out.push(val);}});return out;}(function($){tagBox={clean:function(tags){return tags.replace(/\s*,\s*/g,",").replace(/,+/g,",").replace(/[,\s]+$/,"").replace(/^[,\s]+/,"");},parseTags:function(el){var id=el.id,num=id.split("-check-num-")[1],taxbox=$(el).closest(".tagsdiv"),thetags=taxbox.find(".the-tags"),current_tags=thetags.val().split(","),new_tags=[];delete current_tags[num];$.each(current_tags,function(key,val){val=$.trim(val);if(val){new_tags.push(val);}});thetags.val(this.clean(new_tags.join(",")));this.quickClicks(taxbox);return false;},quickClicks:function(el){var thetags=$(".the-tags",el),tagchecklist=$(".tagchecklist",el),id=$(el).attr("id"),current_tags,disabled;if(!thetags.length){return;}disabled=thetags.prop("disabled");current_tags=thetags.val().split(",");tagchecklist.empty();$.each(current_tags,function(key,val){var span,xbutton;val=$.trim(val);if(!val){return;}span=$("<span />").text(val);if(!disabled){xbutton=$('<a id="'+id+"-check-num-"+key+'" class="ntdelbutton">X</a>');xbutton.click(function(){tagBox.parseTags(this);});span.prepend("&nbsp;").prepend(xbutton);}tagchecklist.append(span);});},flushTags:function(el,a,f){a=a||false;var text,tags=$(".the-tags",el),newtag=$("input.newtag",el),newtags;text=a?$(a).text():newtag.val();tagsval=tags.val();newtags=tagsval?tagsval+","+text:text;newtags=this.clean(newtags);newtags=array_unique_noempty(newtags.split(",")).join(",");tags.val(newtags);this.quickClicks(el);if(!a){newtag.val("");}if("undefined"==typeof(f)){newtag.focus();}return false;},get:function(id){var tax=id.substr(id.indexOf("-")+1);$.post(ajaxurl,{action:"get-tagcloud",tax:tax},function(r,stat){if(0==r||"success"!=stat){r=wpAjax.broken;}r=$('<p id="tagcloud-'+tax+'" class="the-tagcloud">'+r+"</p>");$("a",r).click(function(){tagBox.flushTags($(this).closest(".inside").children(".tagsdiv"),this);return false;});$("#"+id).after(r);});},init:function(){var t=this,ajaxtag=$("div.ajaxtag");$(".tagsdiv").each(function(){tagBox.quickClicks(this);});$("input.tagadd",ajaxtag).click(function(){t.flushTags($(this).closest(".tagsdiv"));});$("div.taghint",ajaxtag).click(function(){$(this).css("visibility","hidden").parent().siblings(".newtag").focus();});$("input.newtag",ajaxtag).blur(function(){if(this.value==""){$(this).parent().siblings(".taghint").css("visibility","");}}).focus(function(){$(this).parent().siblings(".taghint").css("visibility","hidden");}).keyup(function(e){if(13==e.which){tagBox.flushTags($(this).closest(".tagsdiv"));return false;}}).keypress(function(e){if(13==e.which){e.preventDefault();return false;}}).each(function(){var tax=$(this).closest("div.tagsdiv").attr("id");$(this).suggest(ajaxurl+"?action=ajax-tag-search&tax="+tax,{delay:500,minchars:2,multiple:true,multipleSep:","});});$("#post").submit(function(){$("div.tagsdiv").each(function(){tagBox.flushTags(this,false,1);});});$("a.tagcloud-link").click(function(){tagBox.get($(this).attr("id"));$(this).unbind().click(function(){$(this).siblings(".the-tagcloud").toggle();return false;});return false;});}};commentsBox={st:0,get:function(total,num){var st=this.st,data;if(!num){num=20;}this.st+=num;this.total=total;$("#commentsdiv img.waiting").show();data={action:"get-comments",mode:"single",_ajax_nonce:$("#add_comment_nonce").val(),p:$("#post_ID").val(),start:st,number:num};$.post(ajaxurl,data,function(r){r=wpAjax.parseAjaxResponse(r);$("#commentsdiv .widefat").show();$("#commentsdiv img.waiting").hide();if("object"==typeof r&&r.responses[0]){$("#the-comment-list").append(r.responses[0].data);theList=theExtraList=null;$("a[className*=':']").unbind();if(commentsBox.st>commentsBox.total){$("#show-comments").hide();}else{$("#show-comments").html(postL10n.showcomm);}return;}else{if(1==r){$("#show-comments").parent().html(postL10n.endcomm);return;}}$("#the-comment-list").append('<tr><td colspan="2">'+wpAjax.broken+"</td></tr>");});return false;}};WPSetThumbnailHTML=function(html){$(".inside","#postimagediv").html(html);};WPSetThumbnailID=function(id){var field=$('input[value="_thumbnail_id"]',"#list-table");if(field.size()>0){$("#meta\\["+field.attr("id").match(/[0-9]+/)+"\\]\\[value\\]").text(id);}};WPRemoveThumbnail=function(nonce){$.post(ajaxurl,{action:"set-post-thumbnail",post_id:$("#post_ID").val(),thumbnail_id:-1,_ajax_nonce:nonce,cookie:encodeURIComponent(document.cookie)},function(str){if(str=="0"){alert(setPostThumbnailL10n.error);}else{WPSetThumbnailHTML(str);}});};})(jQuery);jQuery(document).ready(function($){var stamp,visibility,sticky="",last=0,co=$("#content");postboxes.add_postbox_toggles(pagenow);if($("#tagsdiv-post_tag").length){tagBox.init();}else{$("#side-sortables, #normal-sortables, #advanced-sortables").children("div.postbox").each(function(){if(this.id.indexOf("tagsdiv-")===0){tagBox.init();return false;}});}$(".categorydiv").each(function(){var this_id=$(this).attr("id"),noSyncChecks=false,syncChecks,catAddAfter,taxonomyParts,taxonomy,settingName;taxonomyParts=this_id.split("-");taxonomyParts.shift();taxonomy=taxonomyParts.join("-");settingName=taxonomy+"_tab";if(taxonomy=="category"){settingName="cats";}$("a","#"+taxonomy+"-tabs").click(function(){var t=$(this).attr("href");$(this).parent().addClass("tabs").siblings("li").removeClass("tabs");$("#"+taxonomy+"-tabs").siblings(".tabs-panel").hide();$(t).show();if("#"+taxonomy+"-all"==t){deleteUserSetting(settingName);}else{setUserSetting(settingName,"pop");}return false;});if(getUserSetting(settingName)){$('a[href="#'+taxonomy+'-pop"]',"#"+taxonomy+"-tabs").click();}$("#new"+taxonomy).one("focus",function(){$(this).val("").removeClass("form-input-tip");});$("#"+taxonomy+"-add-submit").click(function(){$("#new"+taxonomy).focus();});syncChecks=function(){if(noSyncChecks){return;}noSyncChecks=true;var th=jQuery(this),c=th.is(":checked"),id=th.val().toString();$("#in-"+taxonomy+"-"+id+", #in-"+taxonomy+"-category-"+id).prop("checked",c);noSyncChecks=false;};catAddBefore=function(s){if(!$("#new"+taxonomy).val()){return false;}s.data+="&"+$(":checked","#"+taxonomy+"checklist").serialize();return s;};catAddAfter=function(r,s){var sup,drop=$("#new"+taxonomy+"_parent");if("undefined"!=s.parsed.responses[0]&&(sup=s.parsed.responses[0].supplemental.newcat_parent)){drop.before(sup);drop.remove();}};$("#"+taxonomy+"checklist").wpList({alt:"",response:taxonomy+"-ajax-response",addBefore:catAddBefore,addAfter:catAddAfter});$("#"+taxonomy+"-add-toggle").click(function(){$("#"+taxonomy+"-adder").toggleClass("wp-hidden-children");$('a[href="#'+taxonomy+'-all"]',"#"+taxonomy+"-tabs").click();$("#new"+taxonomy).focus();return false;});$("#"+taxonomy+"checklist li.popular-category :checkbox, #"+taxonomy+"checklist-pop :checkbox").live("click",function(){var t=$(this),c=t.is(":checked"),id=t.val();if(id&&t.parents("#taxonomy-"+taxonomy).length){$("#in-"+taxonomy+"-"+id+", #in-popular-"+taxonomy+"-"+id).prop("checked",c);}});});if($("#postcustom").length){$("#the-list").wpList({addAfter:function(xml,s){$("table#list-table").show();},addBefore:function(s){s.data+="&post_id="+$("#post_ID").val();return s;}});}if($("#submitdiv").length){stamp=$("#timestamp").html();visibility=$("#post-visibility-display").html();function updateVisibility(){var pvSelect=$("#post-visibility-select");if($("input:radio:checked",pvSelect).val()!="public"){$("#sticky").prop("checked",false);$("#sticky-span").hide();}else{$("#sticky-span").show();}if($("input:radio:checked",pvSelect).val()!="password"){$("#password-span").hide();}else{$("#password-span").show();}}function updateText(){var attemptedDate,originalDate,currentDate,publishOn,postStatus=$("#post_status"),optPublish=$('option[value="publish"]',postStatus),aa=$("#aa").val(),mm=$("#mm").val(),jj=$("#jj").val(),hh=$("#hh").val(),mn=$("#mn").val();attemptedDate=new Date(aa,mm-1,jj,hh,mn);originalDate=new Date($("#hidden_aa").val(),$("#hidden_mm").val()-1,$("#hidden_jj").val(),$("#hidden_hh").val(),$("#hidden_mn").val());currentDate=new Date($("#cur_aa").val(),$("#cur_mm").val()-1,$("#cur_jj").val(),$("#cur_hh").val(),$("#cur_mn").val());if(attemptedDate.getFullYear()!=aa||(1+attemptedDate.getMonth())!=mm||attemptedDate.getDate()!=jj||attemptedDate.getMinutes()!=mn){$(".timestamp-wrap","#timestampdiv").addClass("form-invalid");return false;}else{$(".timestamp-wrap","#timestampdiv").removeClass("form-invalid");}if(attemptedDate>currentDate&&$("#original_post_status").val()!="future"){publishOn=postL10n.publishOnFuture;$("#publish").val(postL10n.schedule);}else{if(attemptedDate<=currentDate&&$("#original_post_status").val()!="publish"){publishOn=postL10n.publishOn;$("#publish").val(postL10n.publish);}else{publishOn=postL10n.publishOnPast;$("#publish").val(postL10n.update);}}if(originalDate.toUTCString()==attemptedDate.toUTCString()){$("#timestamp").html(stamp);}else{$("#timestamp").html(publishOn+" <b>"+$('option[value="'+$("#mm").val()+'"]',"#mm").text()+" "+jj+", "+aa+" @ "+hh+":"+mn+"</b> ");}if($("input:radio:checked","#post-visibility-select").val()=="private"){$("#publish").val(postL10n.update);if(optPublish.length==0){postStatus.append('<option value="publish">'+postL10n.privatelyPublished+"</option>");}else{optPublish.html(postL10n.privatelyPublished);}$('option[value="publish"]',postStatus).prop("selected",true);$(".edit-post-status","#misc-publishing-actions").hide();}else{if($("#original_post_status").val()=="future"||$("#original_post_status").val()=="draft"){if(optPublish.length){optPublish.remove();postStatus.val($("#hidden_post_status").val());}}else{optPublish.html(postL10n.published);}if(postStatus.is(":hidden")){$(".edit-post-status","#misc-publishing-actions").show();}}$("#post-status-display").html($("option:selected",postStatus).text());if($("option:selected",postStatus).val()=="private"||$("option:selected",postStatus).val()=="publish"){$("#save-post").hide();}else{$("#save-post").show();if($("option:selected",postStatus).val()=="pending"){$("#save-post").show().val(postL10n.savePending);}else{$("#save-post").show().val(postL10n.saveDraft);}}return true;}$(".edit-visibility","#visibility").click(function(){if($("#post-visibility-select").is(":hidden")){updateVisibility();$("#post-visibility-select").slideDown("fast");$(this).hide();}return false;});$(".cancel-post-visibility","#post-visibility-select").click(function(){$("#post-visibility-select").slideUp("fast");$("#visibility-radio-"+$("#hidden-post-visibility").val()).prop("checked",true);$("#post_password").val($("#hidden_post_password").val());$("#sticky").prop("checked",$("#hidden-post-sticky").prop("checked"));$("#post-visibility-display").html(visibility);$(".edit-visibility","#visibility").show();updateText();return false;});$(".save-post-visibility","#post-visibility-select").click(function(){var pvSelect=$("#post-visibility-select");pvSelect.slideUp("fast");$(".edit-visibility","#visibility").show();updateText();if($("input:radio:checked",pvSelect).val()!="public"){$("#sticky").prop("checked",false);}if(true==$("#sticky").prop("checked")){sticky="Sticky";}else{sticky="";}$("#post-visibility-display").html(postL10n[$("input:radio:checked",pvSelect).val()+sticky]);return false;});$("input:radio","#post-visibility-select").change(function(){updateVisibility();});$("#timestampdiv").siblings("a.edit-timestamp").click(function(){if($("#timestampdiv").is(":hidden")){$("#timestampdiv").slideDown("fast");$(this).hide();}return false;});$(".cancel-timestamp","#timestampdiv").click(function(){$("#timestampdiv").slideUp("fast");$("#mm").val($("#hidden_mm").val());$("#jj").val($("#hidden_jj").val());$("#aa").val($("#hidden_aa").val());$("#hh").val($("#hidden_hh").val());$("#mn").val($("#hidden_mn").val());$("#timestampdiv").siblings("a.edit-timestamp").show();updateText();return false;});$(".save-timestamp","#timestampdiv").click(function(){if(updateText()){$("#timestampdiv").slideUp("fast");$("#timestampdiv").siblings("a.edit-timestamp").show();}return false;});$("#post-status-select").siblings("a.edit-post-status").click(function(){if($("#post-status-select").is(":hidden")){$("#post-status-select").slideDown("fast");$(this).hide();}return false;});$(".save-post-status","#post-status-select").click(function(){$("#post-status-select").slideUp("fast");$("#post-status-select").siblings("a.edit-post-status").show();updateText();return false;});$(".cancel-post-status","#post-status-select").click(function(){$("#post-status-select").slideUp("fast");$("#post_status").val($("#hidden_post_status").val());$("#post-status-select").siblings("a.edit-post-status").show();updateText();return false;});}if($("#edit-slug-box").length){editPermalink=function(post_id){var i,c=0,e=$("#editable-post-name"),revert_e=e.html(),real_slug=$("#post_name"),revert_slug=real_slug.val(),b=$("#edit-slug-buttons"),revert_b=b.html(),full=$("#editable-post-name-full").html();$("#view-post-btn").hide();b.html('<a href="#" class="save button">'+postL10n.ok+'</a> <a class="cancel" href="#">'+postL10n.cancel+"</a>");b.children(".save").click(function(){var new_slug=e.children("input").val();if(new_slug==$("#editable-post-name-full").text()){return $(".cancel","#edit-slug-buttons").click();}$.post(ajaxurl,{action:"sample-permalink",post_id:post_id,new_slug:new_slug,new_title:$("#title").val(),samplepermalinknonce:$("#samplepermalinknonce").val()},function(data){$("#edit-slug-box").html(data);b.html(revert_b);real_slug.val(new_slug);makeSlugeditClickable();$("#view-post-btn").show();});return false;});$(".cancel","#edit-slug-buttons").click(function(){$("#view-post-btn").show();e.html(revert_e);b.html(revert_b);real_slug.val(revert_slug);return false;});for(i=0;i<full.length;++i){if("%"==full.charAt(i)){c++;}}slug_value=(c>full.length/4)?"":full;e.html('<input type="text" id="new-post-slug" value="'+slug_value+'" />').children("input").keypress(function(e){var key=e.keyCode||0;if(13==key){b.children(".save").click();return false;}if(27==key){b.children(".cancel").click();return false;}real_slug.val(this.value);}).focus();};makeSlugeditClickable=function(){$("#editable-post-name").click(function(){$("#edit-slug-buttons").children(".edit-slug").click();});};makeSlugeditClickable();}if(typeof(wpWordCount)!="undefined"){$(document).triggerHandler("wpcountwords",[co.val()]);co.keyup(function(e){var k=e.keyCode||e.charCode;if(k==last){return true;}if(13==k||8==last||46==last){$(document).triggerHandler("wpcountwords",[co.val()]);}last=k;return true;});}wptitlehint=function(id){id=id||"title";var title=$("#"+id),titleprompt=$("#"+id+"-prompt-text");if(title.val()==""){titleprompt.css("visibility","");}titleprompt.click(function(){$(this).css("visibility","hidden");title.focus();});title.blur(function(){if(this.value==""){titleprompt.css("visibility","");}}).focus(function(){titleprompt.css("visibility","hidden");}).keydown(function(e){titleprompt.css("visibility","hidden");$(this).unbind(e);});};wptitlehint();});
\ No newline at end of file
index b367d916ac8967014b34d02c00713fd49ed15732..e95b75627e4cbbf8380fec52ac03eaaf976d730f 100644 (file)
@@ -1,31 +1,38 @@
-var postboxes;
+var postboxes, is_iPad = navigator.userAgent.match(/iPad/);
+
 (function($) {
        postboxes = {
 (function($) {
        postboxes = {
-               add_postbox_toggles : function(page,args) {
-                       this.init(page,args);
-                       $('.postbox h3, .postbox .handlediv').click( function() {
+               add_postbox_toggles : function(page, args) {
+                       this.init(page, args);
+
+                       $('.postbox h3, .postbox .handlediv').bind('click.postboxes', function() {
                                var p = $(this).parent('.postbox'), id = p.attr('id');
                                var p = $(this).parent('.postbox'), id = p.attr('id');
+
                                if ( 'dashboard_browser_nag' == id )
                                        return;
 
                                p.toggleClass('closed');
                                postboxes.save_state(page);
                                if ( 'dashboard_browser_nag' == id )
                                        return;
 
                                p.toggleClass('closed');
                                postboxes.save_state(page);
+
                                if ( id ) {
                                        if ( !p.hasClass('closed') && $.isFunction(postboxes.pbshow) )
                                                postboxes.pbshow(id);
                                        else if ( p.hasClass('closed') && $.isFunction(postboxes.pbhide) )
                                                postboxes.pbhide(id);
                                }
                                if ( id ) {
                                        if ( !p.hasClass('closed') && $.isFunction(postboxes.pbshow) )
                                                postboxes.pbshow(id);
                                        else if ( p.hasClass('closed') && $.isFunction(postboxes.pbhide) )
                                                postboxes.pbhide(id);
                                }
-                       } );
+                       });
+
                        $('.postbox h3 a').click( function(e) {
                                e.stopPropagation();
                        $('.postbox h3 a').click( function(e) {
                                e.stopPropagation();
-                       } );
-                       $('.postbox a.dismiss').click( function(e) {
+                       });
+
+                       $('.postbox a.dismiss').bind('click.postboxes', function(e) {
                                var hide_id = $(this).parents('.postbox').attr('id') + '-hide';
                                $( '#' + hide_id ).prop('checked', false).triggerHandler('click');
                                return false;
                                var hide_id = $(this).parents('.postbox').attr('id') + '-hide';
                                $( '#' + hide_id ).prop('checked', false).triggerHandler('click');
                                return false;
-                       } );
-                       $('.hide-postbox-tog').click( function() {
+                       });
+
+                       $('.hide-postbox-tog').bind('click.postboxes', function() {
                                var box = $(this).val();
 
                                if ( $(this).prop('checked') ) {
                                var box = $(this).val();
 
                                if ( $(this).prop('checked') ) {
@@ -38,52 +45,17 @@ var postboxes;
                                                postboxes.pbhide( box );
                                }
                                postboxes.save_state(page);
                                                postboxes.pbhide( box );
                                }
                                postboxes.save_state(page);
-                       } );
-                       $('.columns-prefs input[type="radio"]').click(function(){
-                               var num = $(this).val(), i, el, p = $('#poststuff');
-
-                               if ( p.length ) { // write pages
-                                       if ( num == 2 ) {
-                                               p.addClass('has-right-sidebar');
-                                               $('#side-sortables').addClass('temp-border');
-                                       } else if ( num == 1 ) {
-                                               p.removeClass('has-right-sidebar');
-                                               $('#normal-sortables').append($('#side-sortables').children('.postbox'));
-                                       }
-                               } else { // dashboard
-                                       for ( i = 4; ( i > num && i > 1 ); i-- ) {
-                                               el = $('#' + colname(i) + '-sortables');
-                                               $('#' + colname(i-1) + '-sortables').append(el.children('.postbox'));
-                                               el.parent().hide();
-                                       }
-                                       for ( i = 1; i <= num; i++ ) {
-                                               el = $('#' + colname(i) + '-sortables');
-                                               if ( el.parent().is(':hidden') )
-                                                       el.addClass('temp-border').parent().show();
-                                       }
-                                       $('.postbox-container:visible').css('width', 98/num + '%');
-                               }
-                               postboxes.save_order(page);
+                               postboxes._mark_area();
                        });
 
                        });
 
-                       function colname(n) {
-                               switch (n) {
-                                       case 1:
-                                               return 'normal';
-                                               break
-                                       case 2:
-                                               return 'side';
-                                               break
-                                       case 3:
-                                               return 'column3';
-                                               break
-                                       case 4:
-                                               return 'column4';
-                                               break
-                                       default:
-                                               return '';
+                       $('.columns-prefs input[type="radio"]').bind('click.postboxes', function(){
+                               var n = parseInt($(this).val(), 10), pb = postboxes;
+
+                               if ( n ) {
+                                       pb._pb_edit(n);
+                                       pb.save_order(page);
                                }
                                }
-                       }
+                       });
                },
 
                init : function(page, args) {
                },
 
                init : function(page, args) {
@@ -107,13 +79,21 @@ var postboxes;
                                        }
 
                                        postboxes.save_order(page);
                                        }
 
                                        postboxes.save_order(page);
-                                       ui.item.parent().removeClass('temp-border');
                                },
                                receive: function(e,ui) {
                                        if ( 'dashboard_browser_nag' == ui.item[0].id )
                                                $(ui.sender).sortable('cancel');
                                },
                                receive: function(e,ui) {
                                        if ( 'dashboard_browser_nag' == ui.item[0].id )
                                                $(ui.sender).sortable('cancel');
+
+                                       postboxes._mark_area();
                                }
                        });
                                }
                        });
+
+                       if ( navigator.userAgent.match(/iPad/) ) {
+                               $(document.body).bind('orientationchange', function(){ postboxes._pb_change(); });
+                               this._pb_change();
+                       }
+
+                       this._mark_area();
                },
 
                save_state : function(page) {
                },
 
                save_state : function(page) {
@@ -144,6 +124,115 @@ var postboxes;
                        $.post( ajaxurl, postVars );
                },
 
                        $.post( ajaxurl, postVars );
                },
 
+               _colname : function(n) {
+                       switch (n) {
+                               case 1:
+                                       return 'normal';
+                                       break
+                               case 2:
+                                       return 'side';
+                                       break
+                               case 3:
+                                       return 'column3';
+                                       break
+                               case 4:
+                                       return 'column4';
+                                       break
+                               default:
+                                       return '';
+                       }
+               },
+
+               _mark_area : function() {
+                       $('#side-info-column .meta-box-sortables:visible, #dashboard-widgets .meta-box-sortables:visible').each(function(n, el){
+                               var t = $(this);
+
+                               if ( !t.children('.postbox:visible').length )
+                                       t.addClass('empty-container');
+                               else
+                                       t.removeClass('empty-container');
+                       });
+               },
+
+               _pb_edit : function(n) {
+                       var ps = $('#poststuff'), i, el, done, pb = postboxes, visible = $('.postbox-container:visible').length;
+
+                       if ( n == visible )
+                               return;
+
+                       if ( ps.length ) {
+                               if ( n == 2 ) {
+                                       $('.wrap').removeClass('columns-1').addClass('columns-2');
+                                       ps.addClass('has-right-sidebar');
+
+                                       if ( !$('#side-info-column #side-sortables').length )
+                                               $('#side-info-column').append( $('#side-sortables') );
+
+                               } else if ( n == 1 ) {
+                                       $('.wrap').removeClass('columns-2').addClass('columns-1');
+                                       ps.removeClass('has-right-sidebar');
+
+                                       if ( !$('#post-body-content #side-sortables').length )
+                                               $('#normal-sortables').before( $('#side-sortables') );
+                               }
+                       } else {
+                               for ( i = 4; ( i > n && i > 1 ); i-- ) {
+                                       el = $('#' + postboxes._colname(i) + '-sortables');
+                                       $('#' + postboxes._colname(i-1) + '-sortables').append(el.children('.postbox'));
+                                       el.parent().hide();
+                               }
+
+                               for ( i = n; i > 0; i-- ) {
+                                       el = $('#' + postboxes._colname(i) + '-sortables');
+                                       done = false;
+
+                                       if ( el.parent().is(':hidden') ) {
+                                               switch ( i ) {
+                                                       case 4:
+                                                               done = pb._move_one( el, $('.postbox:visible', $('#column3-sortables')) );
+                                                       case 3:
+                                                               if ( !done )
+                                                                       done = pb._move_one( el, $('.postbox:visible', $('#side-sortables')) );
+                                                       case 2:
+                                                               if ( !done )
+                                                                       done = pb._move_one( el, $('.postbox:visible', $('#normal-sortables')) );
+                                                       default:
+                                                               if ( !done )
+                                                                       el.addClass('empty-container')
+                                               }
+
+                                               el.parent().show();
+                                       }
+                               }
+
+                               $('.postbox-container:visible').css('width', 100/n + '%');
+                       }
+               },
+
+               _pb_change : function() {
+                       switch ( window.orientation ) {
+                               case 90:
+                               case -90:
+                                       this._pb_edit(2);
+                                       break;
+                               case 0:
+                               case 180:
+                                       if ( $('#poststuff').length )
+                                               this._pb_edit(1);
+                                       else
+                                               this._pb_edit(2);
+                                       break;
+                       }
+               },
+
+               _move_one : function(el, move) {
+                       if ( move.length > 1 ) {
+                               el.append( move.last() );
+                               return true;
+                       }
+                       return false;
+               },
+
                /* Callbacks */
                pbshow : false,
 
                /* Callbacks */
                pbshow : false,
 
index 99a1f00388a2d2ae8f62ae5dae48489a78a58315..2c5fe99f977126efa4984690171e089cf9ab3237 100644 (file)
@@ -1 +1 @@
-var postboxes;(function(a){postboxes={add_postbox_toggles:function(c,b){this.init(c,b);a(".postbox h3, .postbox .handlediv").click(function(){var e=a(this).parent(".postbox"),f=e.attr("id");if("dashboard_browser_nag"==f){return}e.toggleClass("closed");postboxes.save_state(c);if(f){if(!e.hasClass("closed")&&a.isFunction(postboxes.pbshow)){postboxes.pbshow(f)}else{if(e.hasClass("closed")&&a.isFunction(postboxes.pbhide)){postboxes.pbhide(f)}}}});a(".postbox h3 a").click(function(f){f.stopPropagation()});a(".postbox a.dismiss").click(function(g){var f=a(this).parents(".postbox").attr("id")+"-hide";a("#"+f).prop("checked",false).triggerHandler("click");return false});a(".hide-postbox-tog").click(function(){var e=a(this).val();if(a(this).prop("checked")){a("#"+e).show();if(a.isFunction(postboxes.pbshow)){postboxes.pbshow(e)}}else{a("#"+e).hide();if(a.isFunction(postboxes.pbhide)){postboxes.pbhide(e)}}postboxes.save_state(c)});a('.columns-prefs input[type="radio"]').click(function(){var e=a(this).val(),f,g,h=a("#poststuff");if(h.length){if(e==2){h.addClass("has-right-sidebar");a("#side-sortables").addClass("temp-border")}else{if(e==1){h.removeClass("has-right-sidebar");a("#normal-sortables").append(a("#side-sortables").children(".postbox"))}}}else{for(f=4;(f>e&&f>1);f--){g=a("#"+d(f)+"-sortables");a("#"+d(f-1)+"-sortables").append(g.children(".postbox"));g.parent().hide()}for(f=1;f<=e;f++){g=a("#"+d(f)+"-sortables");if(g.parent().is(":hidden")){g.addClass("temp-border").parent().show()}}a(".postbox-container:visible").css("width",98/e+"%")}postboxes.save_order(c)});function d(e){switch(e){case 1:return"normal";break;case 2:return"side";break;case 3:return"column3";break;case 4:return"column4";break;default:return""}}},init:function(c,b){a.extend(this,b||{});a("#wpbody-content").css("overflow","hidden");a(".meta-box-sortables").sortable({placeholder:"sortable-placeholder",connectWith:".meta-box-sortables",items:".postbox",handle:".hndle",cursor:"move",distance:2,tolerance:"pointer",forcePlaceholderSize:true,helper:"clone",opacity:0.65,stop:function(f,d){if(a(this).find("#dashboard_browser_nag").is(":visible")&&"dashboard_browser_nag"!=this.firstChild.id){a(this).sortable("cancel");return}postboxes.save_order(c);d.item.parent().removeClass("temp-border")},receive:function(f,d){if("dashboard_browser_nag"==d.item[0].id){a(d.sender).sortable("cancel")}}})},save_state:function(d){var b=a(".postbox").filter(".closed").map(function(){return this.id}).get().join(","),c=a(".postbox").filter(":hidden").map(function(){return this.id}).get().join(",");a.post(ajaxurl,{action:"closed-postboxes",closed:b,hidden:c,closedpostboxesnonce:jQuery("#closedpostboxesnonce").val(),page:d})},save_order:function(c){var b,d=a(".columns-prefs input:checked").val()||0;b={action:"meta-box-order",_ajax_nonce:a("#meta-box-order-nonce").val(),page_columns:d,page:c};a(".meta-box-sortables").each(function(){b["order["+this.id.split("-")[0]+"]"]=a(this).sortable("toArray").join(",")});a.post(ajaxurl,b)},pbshow:false,pbhide:false}}(jQuery));
\ No newline at end of file
+var postboxes,is_iPad=navigator.userAgent.match(/iPad/);(function(a){postboxes={add_postbox_toggles:function(c,b){this.init(c,b);a(".postbox h3, .postbox .handlediv").bind("click.postboxes",function(){var d=a(this).parent(".postbox"),e=d.attr("id");if("dashboard_browser_nag"==e){return}d.toggleClass("closed");postboxes.save_state(c);if(e){if(!d.hasClass("closed")&&a.isFunction(postboxes.pbshow)){postboxes.pbshow(e)}else{if(d.hasClass("closed")&&a.isFunction(postboxes.pbhide)){postboxes.pbhide(e)}}}});a(".postbox h3 a").click(function(d){d.stopPropagation()});a(".postbox a.dismiss").bind("click.postboxes",function(f){var d=a(this).parents(".postbox").attr("id")+"-hide";a("#"+d).prop("checked",false).triggerHandler("click");return false});a(".hide-postbox-tog").bind("click.postboxes",function(){var d=a(this).val();if(a(this).prop("checked")){a("#"+d).show();if(a.isFunction(postboxes.pbshow)){postboxes.pbshow(d)}}else{a("#"+d).hide();if(a.isFunction(postboxes.pbhide)){postboxes.pbhide(d)}}postboxes.save_state(c);postboxes._mark_area()});a('.columns-prefs input[type="radio"]').bind("click.postboxes",function(){var e=parseInt(a(this).val(),10),d=postboxes;if(e){d._pb_edit(e);d.save_order(c)}})},init:function(c,b){a.extend(this,b||{});a("#wpbody-content").css("overflow","hidden");a(".meta-box-sortables").sortable({placeholder:"sortable-placeholder",connectWith:".meta-box-sortables",items:".postbox",handle:".hndle",cursor:"move",distance:2,tolerance:"pointer",forcePlaceholderSize:true,helper:"clone",opacity:0.65,stop:function(f,d){if(a(this).find("#dashboard_browser_nag").is(":visible")&&"dashboard_browser_nag"!=this.firstChild.id){a(this).sortable("cancel");return}postboxes.save_order(c)},receive:function(f,d){if("dashboard_browser_nag"==d.item[0].id){a(d.sender).sortable("cancel")}postboxes._mark_area()}});if(navigator.userAgent.match(/iPad/)){a(document.body).bind("orientationchange",function(){postboxes._pb_change()});this._pb_change()}this._mark_area()},save_state:function(d){var b=a(".postbox").filter(".closed").map(function(){return this.id}).get().join(","),c=a(".postbox").filter(":hidden").map(function(){return this.id}).get().join(",");a.post(ajaxurl,{action:"closed-postboxes",closed:b,hidden:c,closedpostboxesnonce:jQuery("#closedpostboxesnonce").val(),page:d})},save_order:function(c){var b,d=a(".columns-prefs input:checked").val()||0;b={action:"meta-box-order",_ajax_nonce:a("#meta-box-order-nonce").val(),page_columns:d,page:c};a(".meta-box-sortables").each(function(){b["order["+this.id.split("-")[0]+"]"]=a(this).sortable("toArray").join(",")});a.post(ajaxurl,b)},_colname:function(b){switch(b){case 1:return"normal";break;case 2:return"side";break;case 3:return"column3";break;case 4:return"column4";break;default:return""}},_mark_area:function(){a("#side-info-column .meta-box-sortables:visible, #dashboard-widgets .meta-box-sortables:visible").each(function(d,c){var b=a(this);if(!b.children(".postbox:visible").length){b.addClass("empty-container")}else{b.removeClass("empty-container")}})},_pb_edit:function(h){var g=a("#poststuff"),d,e,b,c=postboxes,f=a(".postbox-container:visible").length;if(h==f){return}if(g.length){if(h==2){a(".wrap").removeClass("columns-1").addClass("columns-2");g.addClass("has-right-sidebar");if(!a("#side-info-column #side-sortables").length){a("#side-info-column").append(a("#side-sortables"))}}else{if(h==1){a(".wrap").removeClass("columns-2").addClass("columns-1");g.removeClass("has-right-sidebar");if(!a("#post-body-content #side-sortables").length){a("#normal-sortables").before(a("#side-sortables"))}}}}else{for(d=4;(d>h&&d>1);d--){e=a("#"+postboxes._colname(d)+"-sortables");a("#"+postboxes._colname(d-1)+"-sortables").append(e.children(".postbox"));e.parent().hide()}for(d=h;d>0;d--){e=a("#"+postboxes._colname(d)+"-sortables");b=false;if(e.parent().is(":hidden")){switch(d){case 4:b=c._move_one(e,a(".postbox:visible",a("#column3-sortables")));case 3:if(!b){b=c._move_one(e,a(".postbox:visible",a("#side-sortables")))}case 2:if(!b){b=c._move_one(e,a(".postbox:visible",a("#normal-sortables")))}default:if(!b){e.addClass("empty-container")}}e.parent().show()}}a(".postbox-container:visible").css("width",100/h+"%")}},_pb_change:function(){switch(window.orientation){case 90:case -90:this._pb_edit(2);break;case 0:case 180:if(a("#poststuff").length){this._pb_edit(1)}else{this._pb_edit(2)}break}},_move_one:function(c,b){if(b.length>1){c.append(b.last());return true}return false},pbshow:false,pbhide:false}}(jQuery));
\ No newline at end of file
index 457e50b003d2bede81db811f119291d3ffb345c6..73b7eeb70b7635675efd7373cac4408b4d44ea2a 100644 (file)
@@ -5,7 +5,7 @@ wpWidgets = {
 
        init : function() {
                var rem, sidebars = $('div.widgets-sortables'), isRTL = !! ( 'undefined' != typeof isRtl && isRtl ),
 
        init : function() {
                var rem, sidebars = $('div.widgets-sortables'), isRTL = !! ( 'undefined' != typeof isRtl && isRtl ),
-                       margin = ( isRtl ? 'marginRight' : 'marginLeft' );
+                       margin = ( isRtl ? 'marginRight' : 'marginLeft' ), the_id;
 
                $('#widgets-right').children('.widgets-holder-wrap').children('.sidebar-name').click(function(){
                        var c = $(this).siblings('.widgets-sortables'), p = $(this).parent();
 
                $('#widgets-right').children('.widgets-holder-wrap').children('.sidebar-name').click(function(){
                        var c = $(this).siblings('.widgets-sortables'), p = $(this).parent();
@@ -19,10 +19,13 @@ wpWidgets = {
                });
 
                $('#widgets-left').children('.widgets-holder-wrap').children('.sidebar-name').click(function() {
                });
 
                $('#widgets-left').children('.widgets-holder-wrap').children('.sidebar-name').click(function() {
-                       $(this).siblings('.widget-holder').parent().toggleClass('closed');
+                       $(this).parent().toggleClass('closed');
                });
 
                });
 
-               sidebars.not('#wp_inactive_widgets').each(function(){
+               sidebars.each(function(){
+                       if ( $(this).parent().hasClass('inactive') )
+                               return true;
+
                        var h = 50, H = $(this).children('.widget').length;
                        h = h + parseInt(H * 48, 10);
                        $(this).css( 'minHeight', h + 'px' );
                        var h = 50, H = $(this).children('.widget').length;
                        h = h + parseInt(H * 48, 10);
                        $(this).css( 'minHeight', h + 'px' );
@@ -77,14 +80,14 @@ wpWidgets = {
                        zIndex: 5,
                        containment: 'document',
                        start: function(e,ui) {
                        zIndex: 5,
                        containment: 'document',
                        start: function(e,ui) {
-                               wpWidgets.fixWebkit(1);
                                ui.helper.find('div.widget-description').hide();
                                ui.helper.find('div.widget-description').hide();
+                               the_id = this.id;
                        },
                        stop: function(e,ui) {
                                if ( rem )
                                        $(rem).hide();
                        },
                        stop: function(e,ui) {
                                if ( rem )
                                        $(rem).hide();
+
                                rem = '';
                                rem = '';
-                               wpWidgets.fixWebkit();
                        }
                });
 
                        }
                });
 
@@ -96,7 +99,6 @@ wpWidgets = {
                        distance: 2,
                        containment: 'document',
                        start: function(e,ui) {
                        distance: 2,
                        containment: 'document',
                        start: function(e,ui) {
-                               wpWidgets.fixWebkit(1);
                                ui.item.children('.widget-inside').hide();
                                ui.item.css({margin:'', 'width':''});
                        },
                                ui.item.children('.widget-inside').hide();
                                ui.item.css({margin:'', 'width':''});
                        },
@@ -112,15 +114,16 @@ wpWidgets = {
 
                                var add = ui.item.find('input.add_new').val(),
                                        n = ui.item.find('input.multi_number').val(),
 
                                var add = ui.item.find('input.add_new').val(),
                                        n = ui.item.find('input.multi_number').val(),
-                                       id = ui.item.attr('id'),
+                                       id = the_id,
                                        sb = $(this).attr('id');
 
                                ui.item.css({margin:'', 'width':''});
                                        sb = $(this).attr('id');
 
                                ui.item.css({margin:'', 'width':''});
-                               wpWidgets.fixWebkit();
+                               the_id = '';
+
                                if ( add ) {
                                        if ( 'multi' == add ) {
                                                ui.item.html( ui.item.html().replace(/<[^<>]+>/g, function(m){ return m.replace(/__i__|%i%/g, n); }) );
                                if ( add ) {
                                        if ( 'multi' == add ) {
                                                ui.item.html( ui.item.html().replace(/<[^<>]+>/g, function(m){ return m.replace(/__i__|%i%/g, n); }) );
-                                               ui.item.attr( 'id', id.replace(/__i__|%i%/g, n) );
+                                               ui.item.attr( 'id', id.replace('__i__', n) );
                                                n++;
                                                $('div#' + id).find('input.multi_number').val(n);
                                        } else if ( 'single' == add ) {
                                                n++;
                                                $('div#' + id).find('input.multi_number').val(n);
                                        } else if ( 'single' == add ) {
@@ -134,9 +137,15 @@ wpWidgets = {
                                }
                                wpWidgets.saveOrder(sb);
                        },
                                }
                                wpWidgets.saveOrder(sb);
                        },
-                       receive: function(e,ui) {
-                               if ( !$(this).is(':visible') )
-                                       $(this).sortable('cancel');
+                       receive: function(e, ui) {
+                               var sender = $(ui.sender);
+
+                               if ( !$(this).is(':visible') || this.id.indexOf('orphaned_widgets') != -1 )
+                                       sender.sortable('cancel');
+
+                               if ( sender.attr('id').indexOf('orphaned_widgets') != -1 && !sender.children('.widget').length ) {
+                                       sender.parents('.orphan-sidebar').slideUp(400, function(){ $(this).remove(); });
+                               }
                        }
                }).sortable('option', 'connectWith', 'div.widgets-sortables').parent().filter('.closed').children('.widgets-sortables').sortable('disable');
 
                        }
                }).sortable('option', 'connectWith', 'div.widgets-sortables').parent().filter('.closed').children('.widgets-sortables').sortable('disable');
 
@@ -176,7 +185,8 @@ wpWidgets = {
                };
 
                $('div.widgets-sortables').each( function() {
                };
 
                $('div.widgets-sortables').each( function() {
-                       a['sidebars[' + $(this).attr('id') + ']'] = $(this).sortable('toArray').join(',');
+                       if ( $(this).sortable )
+                               a['sidebars[' + $(this).attr('id') + ']'] = $(this).sortable('toArray').join(',');
                });
 
                $.post( ajaxurl, a, function() {
                });
 
                $.post( ajaxurl, a, function() {
@@ -247,22 +257,17 @@ wpWidgets = {
        },
 
        resize : function() {
        },
 
        resize : function() {
-               $('div.widgets-sortables').not('#wp_inactive_widgets').each(function(){
+               $('div.widgets-sortables').each(function(){
+                       if ( $(this).parent().hasClass('inactive') )
+                               return true;
+
                        var h = 50, H = $(this).children('.widget').length;
                        h = h + parseInt(H * 48, 10);
                        $(this).css( 'minHeight', h + 'px' );
                });
        },
 
                        var h = 50, H = $(this).children('.widget').length;
                        h = h + parseInt(H * 48, 10);
                        $(this).css( 'minHeight', h + 'px' );
                });
        },
 
-    fixWebkit : function(n) {
-        n = n ? 'none' : '';
-        $('body').css({
-                       WebkitUserSelect: n,
-                       KhtmlUserSelect: n
-               });
-    },
-
-    fixLabels : function(widget) {
+       fixLabels : function(widget) {
                widget.children('.widget-inside').find('label').each(function(){
                        var f = $(this).attr('for');
                        if ( f && f == $('input', this).attr('id') )
                widget.children('.widget-inside').find('label').each(function(){
                        var f = $(this).attr('for');
                        if ( f && f == $('input', this).attr('id') )
@@ -270,7 +275,7 @@ wpWidgets = {
                });
        },
 
                });
        },
 
-    close : function(widget) {
+       close : function(widget) {
                widget.children('.widget-inside').slideUp('fast', function(){
                        widget.css({'width':'', margin:''});
                });
                widget.children('.widget-inside').slideUp('fast', function(){
                        widget.css({'width':'', margin:''});
                });
index a0e1ee075cd4093d237e5e94a7db76b87408c39a..f88994f1dadbb093ebf52cd2543bedeea3d32f4a 100644 (file)
@@ -1 +1 @@
-var wpWidgets;(function(a){wpWidgets={init:function(){var e,c=a("div.widgets-sortables"),b=!!("undefined"!=typeof isRtl&&isRtl),d=(isRtl?"marginRight":"marginLeft");a("#widgets-right").children(".widgets-holder-wrap").children(".sidebar-name").click(function(){var g=a(this).siblings(".widgets-sortables"),f=a(this).parent();if(!f.hasClass("closed")){g.sortable("disable");f.addClass("closed")}else{f.removeClass("closed");g.sortable("enable").sortable("refresh")}});a("#widgets-left").children(".widgets-holder-wrap").children(".sidebar-name").click(function(){a(this).siblings(".widget-holder").parent().toggleClass("closed")});c.not("#wp_inactive_widgets").each(function(){var g=50,f=a(this).children(".widget").length;g=g+parseInt(f*48,10);a(this).css("minHeight",g+"px")});a("a.widget-action").live("click",function(){var h={},i=a(this).closest("div.widget"),f=i.children(".widget-inside"),g=parseInt(i.find("input.widget-width").val(),10);if(f.is(":hidden")){if(g>250&&f.closest("div.widgets-sortables").length){h.width=g+30+"px";if(f.closest("div.widget-liquid-right").length){h[d]=235-g+"px"}i.css(h)}wpWidgets.fixLabels(i);f.slideDown("fast")}else{f.slideUp("fast",function(){i.css({width:"",margin:""})})}return false});a("input.widget-control-save").live("click",function(){wpWidgets.save(a(this).closest("div.widget"),0,1,0);return false});a("a.widget-control-remove").live("click",function(){wpWidgets.save(a(this).closest("div.widget"),1,1,0);return false});a("a.widget-control-close").live("click",function(){wpWidgets.close(a(this).closest("div.widget"));return false});c.children(".widget").each(function(){wpWidgets.appendTitle(this);if(a("p.widget-error",this).length){a("a.widget-action",this).click()}});a("#widget-list").children(".widget").draggable({connectToSortable:"div.widgets-sortables",handle:"> .widget-top > .widget-title",distance:2,helper:"clone",zIndex:5,containment:"document",start:function(g,f){wpWidgets.fixWebkit(1);f.helper.find("div.widget-description").hide()},stop:function(g,f){if(e){a(e).hide()}e="";wpWidgets.fixWebkit()}});c.sortable({placeholder:"widget-placeholder",items:"> .widget",handle:"> .widget-top > .widget-title",cursor:"move",distance:2,containment:"document",start:function(g,f){wpWidgets.fixWebkit(1);f.item.children(".widget-inside").hide();f.item.css({margin:"",width:""})},stop:function(h,f){if(f.item.hasClass("ui-draggable")&&f.item.data("draggable")){f.item.draggable("destroy")}if(f.item.hasClass("deleting")){wpWidgets.save(f.item,1,0,1);f.item.remove();return}var g=f.item.find("input.add_new").val(),k=f.item.find("input.multi_number").val(),j=f.item.attr("id"),i=a(this).attr("id");f.item.css({margin:"",width:""});wpWidgets.fixWebkit();if(g){if("multi"==g){f.item.html(f.item.html().replace(/<[^<>]+>/g,function(l){return l.replace(/__i__|%i%/g,k)}));f.item.attr("id",j.replace(/__i__|%i%/g,k));k++;a("div#"+j).find("input.multi_number").val(k)}else{if("single"==g){f.item.attr("id","new-"+j);e="div#"+j}}wpWidgets.save(f.item,0,0,1);f.item.find("input.add_new").val("");f.item.find("a.widget-action").click();return}wpWidgets.saveOrder(i)},receive:function(g,f){if(!a(this).is(":visible")){a(this).sortable("cancel")}}}).sortable("option","connectWith","div.widgets-sortables").parent().filter(".closed").children(".widgets-sortables").sortable("disable");a("#available-widgets").droppable({tolerance:"pointer",accept:function(f){return a(f).parent().attr("id")!="widget-list"},drop:function(g,f){f.draggable.addClass("deleting");a("#removing-widget").hide().children("span").html("")},over:function(g,f){f.draggable.addClass("deleting");a("div.widget-placeholder").hide();if(f.draggable.hasClass("ui-sortable-helper")){a("#removing-widget").show().children("span").html(f.draggable.find("div.widget-title").children("h4").html())}},out:function(g,f){f.draggable.removeClass("deleting");a("div.widget-placeholder").show();a("#removing-widget").hide().children("span").html("")}})},saveOrder:function(c){if(c){a("#"+c).closest("div.widgets-holder-wrap").find("img.ajax-feedback").css("visibility","visible")}var b={action:"widgets-order",savewidgets:a("#_wpnonce_widgets").val(),sidebars:[]};a("div.widgets-sortables").each(function(){b["sidebars["+a(this).attr("id")+"]"]=a(this).sortable("toArray").join(",")});a.post(ajaxurl,b,function(){a("img.ajax-feedback").css("visibility","hidden")});this.resize()},save:function(g,d,e,b){var h=g.closest("div.widgets-sortables").attr("id"),f=g.find("form").serialize(),c;g=a(g);a(".ajax-feedback",g).css("visibility","visible");c={action:"save-widget",savewidgets:a("#_wpnonce_widgets").val(),sidebar:h};if(d){c.delete_widget=1}f+="&"+a.param(c);a.post(ajaxurl,f,function(i){var j;if(d){if(!a("input.widget_number",g).val()){j=a("input.widget-id",g).val();a("#available-widgets").find("input.widget-id").each(function(){if(a(this).val()==j){a(this).closest("div.widget").show()}})}if(e){b=0;g.slideUp("fast",function(){a(this).remove();wpWidgets.saveOrder()})}else{g.remove();wpWidgets.resize()}}else{a(".ajax-feedback").css("visibility","hidden");if(i&&i.length>2){a("div.widget-content",g).html(i);wpWidgets.appendTitle(g);wpWidgets.fixLabels(g)}}if(b){wpWidgets.saveOrder()}})},appendTitle:function(b){var c=a('input[id*="-title"]',b);if(c=c.val()){c=c.replace(/<[^<>]+>/g,"").replace(/</g,"&lt;").replace(/>/g,"&gt;");a(b).children(".widget-top").children(".widget-title").children().children(".in-widget-title").html(": "+c)}},resize:function(){a("div.widgets-sortables").not("#wp_inactive_widgets").each(function(){var c=50,b=a(this).children(".widget").length;c=c+parseInt(b*48,10);a(this).css("minHeight",c+"px")})},fixWebkit:function(b){b=b?"none":"";a("body").css({WebkitUserSelect:b,KhtmlUserSelect:b})},fixLabels:function(b){b.children(".widget-inside").find("label").each(function(){var c=a(this).attr("for");if(c&&c==a("input",this).attr("id")){a(this).removeAttr("for")}})},close:function(b){b.children(".widget-inside").slideUp("fast",function(){b.css({width:"",margin:""})})}};a(document).ready(function(b){wpWidgets.init()})})(jQuery);
\ No newline at end of file
+var wpWidgets;(function(a){wpWidgets={init:function(){var f,d=a("div.widgets-sortables"),c=!!("undefined"!=typeof isRtl&&isRtl),e=(isRtl?"marginRight":"marginLeft"),b;a("#widgets-right").children(".widgets-holder-wrap").children(".sidebar-name").click(function(){var h=a(this).siblings(".widgets-sortables"),g=a(this).parent();if(!g.hasClass("closed")){h.sortable("disable");g.addClass("closed")}else{g.removeClass("closed");h.sortable("enable").sortable("refresh")}});a("#widgets-left").children(".widgets-holder-wrap").children(".sidebar-name").click(function(){a(this).parent().toggleClass("closed")});d.each(function(){if(a(this).parent().hasClass("inactive")){return true}var i=50,g=a(this).children(".widget").length;i=i+parseInt(g*48,10);a(this).css("minHeight",i+"px")});a("a.widget-action").live("click",function(){var i={},j=a(this).closest("div.widget"),g=j.children(".widget-inside"),h=parseInt(j.find("input.widget-width").val(),10);if(g.is(":hidden")){if(h>250&&g.closest("div.widgets-sortables").length){i.width=h+30+"px";if(g.closest("div.widget-liquid-right").length){i[e]=235-h+"px"}j.css(i)}wpWidgets.fixLabels(j);g.slideDown("fast")}else{g.slideUp("fast",function(){j.css({width:"",margin:""})})}return false});a("input.widget-control-save").live("click",function(){wpWidgets.save(a(this).closest("div.widget"),0,1,0);return false});a("a.widget-control-remove").live("click",function(){wpWidgets.save(a(this).closest("div.widget"),1,1,0);return false});a("a.widget-control-close").live("click",function(){wpWidgets.close(a(this).closest("div.widget"));return false});d.children(".widget").each(function(){wpWidgets.appendTitle(this);if(a("p.widget-error",this).length){a("a.widget-action",this).click()}});a("#widget-list").children(".widget").draggable({connectToSortable:"div.widgets-sortables",handle:"> .widget-top > .widget-title",distance:2,helper:"clone",zIndex:5,containment:"document",start:function(h,g){g.helper.find("div.widget-description").hide();b=this.id},stop:function(h,g){if(f){a(f).hide()}f=""}});d.sortable({placeholder:"widget-placeholder",items:"> .widget",handle:"> .widget-top > .widget-title",cursor:"move",distance:2,containment:"document",start:function(h,g){g.item.children(".widget-inside").hide();g.item.css({margin:"",width:""})},stop:function(i,g){if(g.item.hasClass("ui-draggable")&&g.item.data("draggable")){g.item.draggable("destroy")}if(g.item.hasClass("deleting")){wpWidgets.save(g.item,1,0,1);g.item.remove();return}var h=g.item.find("input.add_new").val(),l=g.item.find("input.multi_number").val(),k=b,j=a(this).attr("id");g.item.css({margin:"",width:""});b="";if(h){if("multi"==h){g.item.html(g.item.html().replace(/<[^<>]+>/g,function(n){return n.replace(/__i__|%i%/g,l)}));g.item.attr("id",k.replace("__i__",l));l++;a("div#"+k).find("input.multi_number").val(l)}else{if("single"==h){g.item.attr("id","new-"+k);f="div#"+k}}wpWidgets.save(g.item,0,0,1);g.item.find("input.add_new").val("");g.item.find("a.widget-action").click();return}wpWidgets.saveOrder(j)},receive:function(i,h){var g=a(h.sender);if(!a(this).is(":visible")||this.id.indexOf("orphaned_widgets")!=-1){g.sortable("cancel")}if(g.attr("id").indexOf("orphaned_widgets")!=-1&&!g.children(".widget").length){g.parents(".orphan-sidebar").slideUp(400,function(){a(this).remove()})}}}).sortable("option","connectWith","div.widgets-sortables").parent().filter(".closed").children(".widgets-sortables").sortable("disable");a("#available-widgets").droppable({tolerance:"pointer",accept:function(g){return a(g).parent().attr("id")!="widget-list"},drop:function(h,g){g.draggable.addClass("deleting");a("#removing-widget").hide().children("span").html("")},over:function(h,g){g.draggable.addClass("deleting");a("div.widget-placeholder").hide();if(g.draggable.hasClass("ui-sortable-helper")){a("#removing-widget").show().children("span").html(g.draggable.find("div.widget-title").children("h4").html())}},out:function(h,g){g.draggable.removeClass("deleting");a("div.widget-placeholder").show();a("#removing-widget").hide().children("span").html("")}})},saveOrder:function(c){if(c){a("#"+c).closest("div.widgets-holder-wrap").find("img.ajax-feedback").css("visibility","visible")}var b={action:"widgets-order",savewidgets:a("#_wpnonce_widgets").val(),sidebars:[]};a("div.widgets-sortables").each(function(){if(a(this).sortable){b["sidebars["+a(this).attr("id")+"]"]=a(this).sortable("toArray").join(",")}});a.post(ajaxurl,b,function(){a("img.ajax-feedback").css("visibility","hidden")});this.resize()},save:function(g,d,e,b){var h=g.closest("div.widgets-sortables").attr("id"),f=g.find("form").serialize(),c;g=a(g);a(".ajax-feedback",g).css("visibility","visible");c={action:"save-widget",savewidgets:a("#_wpnonce_widgets").val(),sidebar:h};if(d){c.delete_widget=1}f+="&"+a.param(c);a.post(ajaxurl,f,function(i){var j;if(d){if(!a("input.widget_number",g).val()){j=a("input.widget-id",g).val();a("#available-widgets").find("input.widget-id").each(function(){if(a(this).val()==j){a(this).closest("div.widget").show()}})}if(e){b=0;g.slideUp("fast",function(){a(this).remove();wpWidgets.saveOrder()})}else{g.remove();wpWidgets.resize()}}else{a(".ajax-feedback").css("visibility","hidden");if(i&&i.length>2){a("div.widget-content",g).html(i);wpWidgets.appendTitle(g);wpWidgets.fixLabels(g)}}if(b){wpWidgets.saveOrder()}})},appendTitle:function(b){var c=a('input[id*="-title"]',b);if(c=c.val()){c=c.replace(/<[^<>]+>/g,"").replace(/</g,"&lt;").replace(/>/g,"&gt;");a(b).children(".widget-top").children(".widget-title").children().children(".in-widget-title").html(": "+c)}},resize:function(){a("div.widgets-sortables").each(function(){if(a(this).parent().hasClass("inactive")){return true}var c=50,b=a(this).children(".widget").length;c=c+parseInt(b*48,10);a(this).css("minHeight",c+"px")})},fixLabels:function(b){b.children(".widget-inside").find("label").each(function(){var c=a(this).attr("for");if(c&&c==a("input",this).attr("id")){a(this).removeAttr("for")}})},close:function(b){b.children(".widget-inside").slideUp("fast",function(){b.css({width:"",margin:""})})}};a(document).ready(function(b){wpWidgets.init()})})(jQuery);
\ No newline at end of file
index 3bf5e5ef3d69bc77b95ed37d4eec7c7730928892..9ebfb6ae6c5ff1682adf27eb1469c59967c8a54d 100644 (file)
@@ -77,7 +77,7 @@ PubSub.prototype.publish = function( topic, args ) {
                visible : false,
                mode : 'tinymce',
                editor_id : 'content',
                visible : false,
                mode : 'tinymce',
                editor_id : 'content',
-               title_id : 'title',
+               title_id : '',
                timer : 0,
                toolbar_shown : false
        }
                timer : 0,
                toolbar_shown : false
        }
@@ -137,7 +137,25 @@ PubSub.prototype.publish = function( topic, args ) {
                if ( s.visible )
                        return;
 
                if ( s.visible )
                        return;
 
+               // Settings can be added or changed by defining "wp_fullscreen_settings" JS object.
+               // This can be done by defining it as PHP associative array, json encoding it and passing it to JS with:
+               // wp_add_script_before( 'wp-fullscreen', 'wp_fullscreen_settings = ' . $json_encoded_array . ';' );
+               if ( typeof(wp_fullscreen_settings) == 'object' )
+                       $.extend( s, wp_fullscreen_settings );
+
+               s.editor_id = wpActiveEditor || 'content';
+
+               if ( !s.title_id ) {
+                       if ( $('input#title').length && s.editor_id == 'content' )
+                               s.title_id = 'title';
+                       else if ( $('input#' + s.editor_id + '-title').length ) // the title input field should have [editor_id]-title HTML ID to be auto detected
+                               s.title_id = s.editor_id + '-title';
+                       else
+                               $('#wp-fullscreen-title, #wp-fullscreen-title-prompt-text').hide();
+               }
+
                s.mode = $('#' + s.editor_id).is(':hidden') ? 'tinymce' : 'html';
                s.mode = $('#' + s.editor_id).is(':hidden') ? 'tinymce' : 'html';
+               s.qt_canvas = $('#' + s.editor_id).get(0);
 
                if ( ! s.element )
                        api.ui.init();
 
                if ( ! s.element )
                        api.ui.init();
@@ -218,7 +236,8 @@ PubSub.prototype.publish = function( topic, args ) {
        api.savecontent = function() {
                var ed, content;
 
        api.savecontent = function() {
                var ed, content;
 
-               $('#' + s.title_id).val( $('#wp-fullscreen-title').val() );
+               if ( s.title_id )
+                       $('#' + s.title_id).val( $('#wp-fullscreen-title').val() );
 
                if ( s.mode === 'tinymce' && (ed = tinyMCE.get('wp_mce_fullscreen')) ) {
                        content = ed.save();
 
                if ( s.mode === 'tinymce' && (ed = tinyMCE.get('wp_mce_fullscreen')) ) {
                        content = ed.save();
@@ -278,19 +297,20 @@ PubSub.prototype.publish = function( topic, args ) {
        });
 
        ps.subscribe( 'show', function() { // This event occurs before the overlay blocks the UI.
        });
 
        ps.subscribe( 'show', function() { // This event occurs before the overlay blocks the UI.
-               var title = $('#wp-fullscreen-title').val( $('#' + s.title_id).val() );
+               var title;
+
+               if ( s.title_id ) {
+                       title = $('#wp-fullscreen-title').val( $('#' + s.title_id).val() );
+                       set_title_hint( title );
+               }
 
 
-               set_title_hint( title );
                $('#wp-fullscreen-save input').attr( 'title',  $('#last-edit').text() );
 
                $('#wp-fullscreen-save input').attr( 'title',  $('#last-edit').text() );
 
-               s.textarea_obj.value = edCanvas.value;
+               s.textarea_obj.value = s.qt_canvas.value;
 
                if ( s.has_tinymce && s.mode === 'tinymce' )
                        tinyMCE.execCommand('wpFullScreenInit');
 
 
                if ( s.has_tinymce && s.mode === 'tinymce' )
                        tinyMCE.execCommand('wpFullScreenInit');
 
-               s._edCanvas = edCanvas;
-               edCanvas = s.textarea_obj;
-
                s.orig_y = $(window).scrollTop();
        });
 
                s.orig_y = $(window).scrollTop();
        });
 
@@ -312,34 +332,42 @@ PubSub.prototype.publish = function( topic, args ) {
        });
 
        ps.subscribe( 'shown', function() { // This event occurs after the DFW overlay is shown
        });
 
        ps.subscribe( 'shown', function() { // This event occurs after the DFW overlay is shown
+               var interim_init;
+
                s.visible = true;
 
                // init the standard TinyMCE instance if missing
                if ( s.has_tinymce && ! s.is_mce_on ) {
                s.visible = true;
 
                // init the standard TinyMCE instance if missing
                if ( s.has_tinymce && ! s.is_mce_on ) {
-                       htmled = document.getElementById(s.editor_id), old_val = htmled.value;
 
 
-                       htmled.value = switchEditors.wpautop( old_val );
+                       interim_init = function(mce, ed) {
+                               var el = ed.getElement(), old_val = el.value, settings = tinyMCEPreInit.mceInit[s.editor_id];
+
+                               if ( settings && settings.wpautop && typeof(switchEditors) != 'undefined' )
+                                       el.value = switchEditors.wpautop( el.value );
 
 
-                       tinyMCE.settings.setup = function(ed) {
                                ed.onInit.add(function(ed) {
                                        ed.hide();
                                ed.onInit.add(function(ed) {
                                        ed.hide();
-                                       delete tinyMCE.settings.setup;
                                        ed.getElement().value = old_val;
                                        ed.getElement().value = old_val;
+                                       tinymce.onAddEditor.remove(interim_init);
                                });
                                });
-                       }
+                       };
+
+                       tinymce.onAddEditor.add(interim_init);
+                       tinyMCE.init(tinyMCEPreInit.mceInit[s.editor_id]);
 
 
-                       tinyMCE.execCommand("mceAddControl", false, s.editor_id);
                        s.is_mce_on = true;
                }
                        s.is_mce_on = true;
                }
+
+               wpActiveEditor = 'wp_mce_fullscreen';
        });
 
        ps.subscribe( 'hide', function() { // This event occurs before the overlay blocks DFW.
        });
 
        ps.subscribe( 'hide', function() { // This event occurs before the overlay blocks DFW.
-
+               var htmled_is_hidden = $('#' + s.editor_id).is(':hidden');
                // Make sure the correct editor is displaying.
                // Make sure the correct editor is displaying.
-               if ( s.has_tinymce && s.mode === 'tinymce' && $('#' + s.editor_id).is(':visible') ) {
-                       switchEditors.go( s.editor_id, 'tinymce' );
-               } else if ( s.mode === 'html' && $('#' + s.editor_id).is(':hidden') ) {
-                       switchEditors.go( s.editor_id, 'html' );
+               if ( s.has_tinymce && s.mode === 'tinymce' && !htmled_is_hidden ) {
+                       switchEditors.go(s.editor_id, 'tmce');
+               } else if ( s.mode === 'html' && htmled_is_hidden ) {
+                       switchEditors.go(s.editor_id, 'html');
                }
 
                // Save content must be after switchEditors or content will be overwritten. See #17229.
                }
 
                // Save content must be after switchEditors or content will be overwritten. See #17229.
@@ -351,11 +379,10 @@ PubSub.prototype.publish = function( topic, args ) {
                if ( s.has_tinymce && s.mode === 'tinymce' )
                        tinyMCE.execCommand('wpFullScreenSave');
 
                if ( s.has_tinymce && s.mode === 'tinymce' )
                        tinyMCE.execCommand('wpFullScreenSave');
 
-               set_title_hint( $('#' + s.title_id) );
+               if ( s.title_id )
+                       set_title_hint( $('#' + s.title_id) );
 
 
-               // Restore and update edCanvas.
-               edCanvas = s._edCanvas;
-               edCanvas.value = s.textarea_obj.value;
+               s.qt_canvas.value = s.textarea_obj.value;
        });
 
        ps.subscribe( 'hiding', function() { // This event occurs while the overlay blocks the DFW UI.
        });
 
        ps.subscribe( 'hiding', function() { // This event occurs while the overlay blocks the DFW UI.
@@ -367,13 +394,14 @@ PubSub.prototype.publish = function( topic, args ) {
 
        ps.subscribe( 'hidden', function() { // This event occurs after DFW is removed.
                s.visible = false;
 
        ps.subscribe( 'hidden', function() { // This event occurs after DFW is removed.
                s.visible = false;
-               $('#wp_mce_fullscreen').removeAttr('style');
+               $('#wp_mce_fullscreen, #wp-fullscreen-title').removeAttr('style');
 
                if ( s.has_tinymce && s.is_mce_on )
                        tinyMCE.execCommand('wpFullScreenClose');
 
                s.textarea_obj.value = '';
                api.oldheight = 0;
 
                if ( s.has_tinymce && s.is_mce_on )
                        tinyMCE.execCommand('wpFullScreenClose');
 
                s.textarea_obj.value = '';
                api.oldheight = 0;
+               wpActiveEditor = s.editor_id;
        });
 
        ps.subscribe( 'switchMode', function( from, to ) {
        });
 
        ps.subscribe( 'switchMode', function( from, to ) {
@@ -385,7 +413,9 @@ PubSub.prototype.publish = function( topic, args ) {
                ed = tinyMCE.get('wp_mce_fullscreen');
 
                if ( from === 'html' && to === 'tinymce' ) {
                ed = tinyMCE.get('wp_mce_fullscreen');
 
                if ( from === 'html' && to === 'tinymce' ) {
-                       s.textarea_obj.value = switchEditors.wpautop( s.textarea_obj.value );
+
+                       if ( tinyMCE.get(s.editor_id).getParam('wpautop') && typeof(switchEditors) != 'undefined' )
+                               s.textarea_obj.value = switchEditors.wpautop( s.textarea_obj.value );
 
                        if ( 'undefined' == typeof(ed) )
                                tinyMCE.execCommand('wpFullScreenInit');
 
                        if ( 'undefined' == typeof(ed) )
                                tinyMCE.execCommand('wpFullScreenInit');
@@ -455,6 +485,17 @@ PubSub.prototype.publish = function( topic, args ) {
                        tinyMCE.execCommand('mceBlockQuote');
        }
 
                        tinyMCE.execCommand('mceBlockQuote');
        }
 
+       api.medialib = function() {
+               if ( s.has_tinymce && 'tinymce' === s.mode ) {
+                       tinyMCE.execCommand('WP_Medialib');
+               } else {
+                       var href = $('#wp-' + s.editor_id + '-media-buttons a.thickbox').attr('href') || '';
+
+                       if ( href )
+                               tb_show('', href);
+               }
+       }
+
        api.refresh_buttons = function( fade ) {
                fade = fade || false;
 
        api.refresh_buttons = function( fade ) {
                fade = fade || false;
 
@@ -488,15 +529,16 @@ PubSub.prototype.publish = function( topic, args ) {
        api.ui = {
                init: function() {
                        var topbar = $('#fullscreen-topbar'), txtarea = $('#wp_mce_fullscreen'), last = 0;
        api.ui = {
                init: function() {
                        var topbar = $('#fullscreen-topbar'), txtarea = $('#wp_mce_fullscreen'), last = 0;
+
                        s.toolbars = topbar.add( $('#wp-fullscreen-status') );
                        s.element = $('#fullscreen-fader');
                        s.textarea_obj = txtarea[0];
                        s.toolbars = topbar.add( $('#wp-fullscreen-status') );
                        s.element = $('#fullscreen-fader');
                        s.textarea_obj = txtarea[0];
-                       s.has_tinymce = typeof(tinyMCE) != 'undefined';
+                       s.has_tinymce = typeof(tinymce) != 'undefined';
 
                        if ( !s.has_tinymce )
                                $('#wp-fullscreen-mode-bar').hide();
 
 
                        if ( !s.has_tinymce )
                                $('#wp-fullscreen-mode-bar').hide();
 
-                       if ( wptitlehint )
+                       if ( wptitlehint && $('#wp-fullscreen-title').length )
                                wptitlehint('wp-fullscreen-title');
 
                        $(document).keyup(function(e){
                                wptitlehint('wp-fullscreen-title');
 
                        $(document).keyup(function(e){
index c5bf4868febf07edbedb3e67d08ba4c395acd73a..6ac49b93b42aeacc72f1a179358eac304a9b8f61 100644 (file)
@@ -1 +1 @@
-var PubSub,fullscreen,wptitlehint;PubSub=function(){this.topics={}};PubSub.prototype.subscribe=function(a,b){if(!this.topics[a]){this.topics[a]=[]}this.topics[a].push(b);return b};PubSub.prototype.unsubscribe=function(b,e){var c,a,d=this.topics[b];if(!d){return e||[]}if(e){for(c=0,a=d.length;c<a;c++){if(e==d[c]){d.splice(c,1)}}return e}else{this.topics[b]=[];return d}};PubSub.prototype.publish=function(c,b){var d,a,e,f=this.topics[c];if(!f){return}b=b||[];for(d=0,a=f.length;d<a;d++){e=(f[d].apply(null,b)===false||e)}return !e};(function(c){var b,e,d,a;fullscreen=b={};e=b.pubsub=new PubSub();timer=0;block=false;a=b.settings={visible:false,mode:"tinymce",editor_id:"content",title_id:"title",timer:0,toolbar_shown:false};d=b.bounder=function(l,h,g,j){var k,i;g=g||1250;if(j){k=j.pageY||j.clientY||j.offsetY;i=c(document).scrollTop();if(!j.isDefaultPrevented){k=135+k}if(k-i>120){return}}if(block){return}block=true;setTimeout(function(){block=false},400);if(a.timer){clearTimeout(a.timer)}else{e.publish(l)}function f(){e.publish(h);a.timer=0}a.timer=setTimeout(f,g)};b.on=function(){if(a.visible){return}a.mode=c("#"+a.editor_id).is(":hidden")?"tinymce":"html";if(!a.element){b.ui.init()}a.is_mce_on=a.has_tinymce&&typeof(tinyMCE.get(a.editor_id))!="undefined";b.ui.fade("show","showing","shown")};b.off=function(){if(!a.visible){return}b.ui.fade("hide","hiding","hidden")};b.switchmode=function(g){var f=a.mode;if(!g||!a.visible||!a.has_tinymce){return f}if(f==g){return f}e.publish("switchMode",[f,g]);a.mode=g;e.publish("switchedMode",[f,g]);return g};b.save=function(){var h=c("#hiddenaction"),f=h.val(),i=c("#wp-fullscreen-save img"),g=c("#wp-fullscreen-save span");i.show();b.savecontent();h.val("wp-fullscreen-save-post");c.post(ajaxurl,c("form#post").serialize(),function(j){i.hide();g.show();setTimeout(function(){g.fadeOut(1000)},3000);if(j.last_edited){c("#wp-fullscreen-save input").attr("title",j.last_edited)}},"json");h.val(f)};b.savecontent=function(){var f,g;c("#"+a.title_id).val(c("#wp-fullscreen-title").val());if(a.mode==="tinymce"&&(f=tinyMCE.get("wp_mce_fullscreen"))){g=f.save()}else{g=c("#wp_mce_fullscreen").val()}c("#"+a.editor_id).val(g);c(document).triggerHandler("wpcountwords",[g])};set_title_hint=function(f){if(!f.val().length){f.siblings("label").css("visibility","")}else{f.siblings("label").css("visibility","hidden")}};b.dfw_width=function(h){var g=c("#wp-fullscreen-wrap"),f=g.width();if(!h){g.width(c("#wp-fullscreen-central-toolbar").width());deleteUserSetting("dfw_width");return}f=h+f;if(f<200||f>1200){return}g.width(f);setUserSetting("dfw_width",f)};e.subscribe("showToolbar",function(){a.toolbars.removeClass("fade-1000").addClass("fade-300");b.fade.In(a.toolbars,300,function(){e.publish("toolbarShown")},true);c("#wp-fullscreen-body").addClass("wp-fullscreen-focus");a.toolbar_shown=true});e.subscribe("hideToolbar",function(){a.toolbars.removeClass("fade-300").addClass("fade-1000");b.fade.Out(a.toolbars,1000,function(){e.publish("toolbarHidden")},true);c("#wp-fullscreen-body").removeClass("wp-fullscreen-focus")});e.subscribe("toolbarShown",function(){a.toolbars.removeClass("fade-300")});e.subscribe("toolbarHidden",function(){a.toolbars.removeClass("fade-1000");a.toolbar_shown=false});e.subscribe("show",function(){var f=c("#wp-fullscreen-title").val(c("#"+a.title_id).val());set_title_hint(f);c("#wp-fullscreen-save input").attr("title",c("#last-edit").text());a.textarea_obj.value=edCanvas.value;if(a.has_tinymce&&a.mode==="tinymce"){tinyMCE.execCommand("wpFullScreenInit")}a._edCanvas=edCanvas;edCanvas=a.textarea_obj;a.orig_y=c(window).scrollTop()});e.subscribe("showing",function(){c(document.body).addClass("fullscreen-active");b.refresh_buttons();c(document).bind("mousemove.fullscreen",function(f){d("showToolbar","hideToolbar",2000,f)});d("showToolbar","hideToolbar",2000);b.bind_resize();setTimeout(b.resize_textarea,200);scrollTo(0,0);c("#wpadminbar").hide()});e.subscribe("shown",function(){a.visible=true;if(a.has_tinymce&&!a.is_mce_on){htmled=document.getElementById(a.editor_id),old_val=htmled.value;htmled.value=switchEditors.wpautop(old_val);tinyMCE.settings.setup=function(f){f.onInit.add(function(g){g.hide();delete tinyMCE.settings.setup;g.getElement().value=old_val})};tinyMCE.execCommand("mceAddControl",false,a.editor_id);a.is_mce_on=true}});e.subscribe("hide",function(){if(a.has_tinymce&&a.mode==="tinymce"&&c("#"+a.editor_id).is(":visible")){switchEditors.go(a.editor_id,"tinymce")}else{if(a.mode==="html"&&c("#"+a.editor_id).is(":hidden")){switchEditors.go(a.editor_id,"html")}}b.savecontent();c(document).unbind(".fullscreen");c(a.textarea_obj).unbind(".grow");if(a.has_tinymce&&a.mode==="tinymce"){tinyMCE.execCommand("wpFullScreenSave")}set_title_hint(c("#"+a.title_id));edCanvas=a._edCanvas;edCanvas.value=a.textarea_obj.value});e.subscribe("hiding",function(){c(document.body).removeClass("fullscreen-active");scrollTo(0,a.orig_y);c("#wpadminbar").show()});e.subscribe("hidden",function(){a.visible=false;c("#wp_mce_fullscreen").removeAttr("style");if(a.has_tinymce&&a.is_mce_on){tinyMCE.execCommand("wpFullScreenClose")}a.textarea_obj.value="";b.oldheight=0});e.subscribe("switchMode",function(h,g){var f;if(!a.has_tinymce||!a.is_mce_on){return}f=tinyMCE.get("wp_mce_fullscreen");if(h==="html"&&g==="tinymce"){a.textarea_obj.value=switchEditors.wpautop(a.textarea_obj.value);if("undefined"==typeof(f)){tinyMCE.execCommand("wpFullScreenInit")}else{f.show()}}else{if(h==="tinymce"&&g==="html"){if(f){f.hide()}}}});e.subscribe("switchedMode",function(g,f){b.refresh_buttons(true);if(f==="html"){setTimeout(b.resize_textarea,200)}});b.b=function(){if(a.has_tinymce&&"tinymce"===a.mode){tinyMCE.execCommand("Bold")}};b.i=function(){if(a.has_tinymce&&"tinymce"===a.mode){tinyMCE.execCommand("Italic")}};b.ul=function(){if(a.has_tinymce&&"tinymce"===a.mode){tinyMCE.execCommand("InsertUnorderedList")}};b.ol=function(){if(a.has_tinymce&&"tinymce"===a.mode){tinyMCE.execCommand("InsertOrderedList")}};b.link=function(){if(a.has_tinymce&&"tinymce"===a.mode){tinyMCE.execCommand("WP_Link")}else{wpLink.open()}};b.unlink=function(){if(a.has_tinymce&&"tinymce"===a.mode){tinyMCE.execCommand("unlink")}};b.atd=function(){if(a.has_tinymce&&"tinymce"===a.mode){tinyMCE.execCommand("mceWritingImprovementTool")}};b.help=function(){if(a.has_tinymce&&"tinymce"===a.mode){tinyMCE.execCommand("WP_Help")}};b.blockquote=function(){if(a.has_tinymce&&"tinymce"===a.mode){tinyMCE.execCommand("mceBlockQuote")}};b.refresh_buttons=function(f){f=f||false;if(a.mode==="html"){c("#wp-fullscreen-mode-bar").removeClass("wp-tmce-mode").addClass("wp-html-mode");if(f){c("#wp-fullscreen-button-bar").fadeOut(150,function(){c(this).addClass("wp-html-mode").fadeIn(150)})}else{c("#wp-fullscreen-button-bar").addClass("wp-html-mode")}}else{if(a.mode==="tinymce"){c("#wp-fullscreen-mode-bar").removeClass("wp-html-mode").addClass("wp-tmce-mode");if(f){c("#wp-fullscreen-button-bar").fadeOut(150,function(){c(this).removeClass("wp-html-mode").fadeIn(150)})}else{c("#wp-fullscreen-button-bar").removeClass("wp-html-mode")}}}};b.ui={init:function(){var f=c("#fullscreen-topbar"),h=c("#wp_mce_fullscreen"),g=0;a.toolbars=f.add(c("#wp-fullscreen-status"));a.element=c("#fullscreen-fader");a.textarea_obj=h[0];a.has_tinymce=typeof(tinyMCE)!="undefined";if(!a.has_tinymce){c("#wp-fullscreen-mode-bar").hide()}if(wptitlehint){wptitlehint("wp-fullscreen-title")}c(document).keyup(function(k){var l=k.keyCode||k.charCode,i,j;if(!fullscreen.settings.visible){return true}if(navigator.platform&&navigator.platform.indexOf("Mac")!=-1){i=k.ctrlKey}else{i=k.altKey}if(27==l){j={event:k,what:"dfw",cb:fullscreen.off,condition:function(){if(c("#TB_window").is(":visible")||c(".wp-dialog").is(":visible")){return false}return true}};if(!jQuery(document).triggerHandler("wp_CloseOnEscape",[j])){fullscreen.off()}}if(i&&(61==l||107==l||187==l)){b.dfw_width(25)}if(i&&(45==l||109==l||189==l)){b.dfw_width(-25)}if(i&&48==l){b.dfw_width(0)}return false});if(typeof(wpWordCount)!="undefined"){h.keyup(function(j){var i=j.keyCode||j.charCode;if(i==g){return true}if(13==i||8==g||46==g){c(document).triggerHandler("wpcountwords",[h.val()])}g=i;return true})}f.mouseenter(function(i){a.toolbars.addClass("fullscreen-make-sticky");c(document).unbind(".fullscreen");clearTimeout(a.timer);a.timer=0}).mouseleave(function(i){a.toolbars.removeClass("fullscreen-make-sticky");if(a.visible){c(document).bind("mousemove.fullscreen",function(j){d("showToolbar","hideToolbar",2000,j)})}})},fade:function(g,f,h){if(!a.element){b.ui.init()}if(g&&!e.publish(g)){return}b.fade.In(a.element,600,function(){if(f){e.publish(f)}b.fade.Out(a.element,600,function(){if(h){e.publish(h)}})})}};b.fade={transitionend:"transitionend webkitTransitionEnd oTransitionEnd",sensitivity:100,In:function(g,h,i,f){i=i||c.noop;h=h||400;f=f||false;if(b.fade.transitions){if(g.is(":visible")){g.addClass("fade-trigger");return g}g.show();g.first().one(this.transitionend,function(){i()});setTimeout(function(){g.addClass("fade-trigger")},this.sensitivity)}else{if(f){g.stop()}g.css("opacity",1);g.first().fadeIn(h,i);if(g.length>1){g.not(":first").fadeIn(h)}}return g},Out:function(g,h,i,f){i=i||c.noop;h=h||400;f=f||false;if(!g.is(":visible")){return g}if(b.fade.transitions){g.first().one(b.fade.transitionend,function(){if(g.hasClass("fade-trigger")){return}g.hide();i()});setTimeout(function(){g.removeClass("fade-trigger")},this.sensitivity)}else{if(f){g.stop()}g.first().fadeOut(h,i);if(g.length>1){g.not(":first").fadeOut(h)}}return g},transitions:(function(){var f=document.documentElement.style;return(typeof(f.WebkitTransition)=="string"||typeof(f.MozTransition)=="string"||typeof(f.OTransition)=="string"||typeof(f.transition)=="string")})()};b.bind_resize=function(){c(a.textarea_obj).bind("keypress.grow click.grow paste.grow",function(){setTimeout(b.resize_textarea,200)})};b.oldheight=0;b.resize_textarea=function(){var f=a.textarea_obj,g;g=f.scrollHeight>300?f.scrollHeight:300;if(g!=b.oldheight){f.style.height=g+"px";b.oldheight=g}}})(jQuery);
\ No newline at end of file
+var PubSub,fullscreen,wptitlehint;PubSub=function(){this.topics={}};PubSub.prototype.subscribe=function(a,b){if(!this.topics[a]){this.topics[a]=[]}this.topics[a].push(b);return b};PubSub.prototype.unsubscribe=function(b,e){var c,a,d=this.topics[b];if(!d){return e||[]}if(e){for(c=0,a=d.length;c<a;c++){if(e==d[c]){d.splice(c,1)}}return e}else{this.topics[b]=[];return d}};PubSub.prototype.publish=function(c,b){var d,a,e,f=this.topics[c];if(!f){return}b=b||[];for(d=0,a=f.length;d<a;d++){e=(f[d].apply(null,b)===false||e)}return !e};(function(c){var b,e,d,a;fullscreen=b={};e=b.pubsub=new PubSub();timer=0;block=false;a=b.settings={visible:false,mode:"tinymce",editor_id:"content",title_id:"",timer:0,toolbar_shown:false};d=b.bounder=function(l,h,g,j){var k,i;g=g||1250;if(j){k=j.pageY||j.clientY||j.offsetY;i=c(document).scrollTop();if(!j.isDefaultPrevented){k=135+k}if(k-i>120){return}}if(block){return}block=true;setTimeout(function(){block=false},400);if(a.timer){clearTimeout(a.timer)}else{e.publish(l)}function f(){e.publish(h);a.timer=0}a.timer=setTimeout(f,g)};b.on=function(){if(a.visible){return}if(typeof(wp_fullscreen_settings)=="object"){c.extend(a,wp_fullscreen_settings)}a.editor_id=wpActiveEditor||"content";if(!a.title_id){if(c("input#title").length&&a.editor_id=="content"){a.title_id="title"}else{if(c("input#"+a.editor_id+"-title").length){a.title_id=a.editor_id+"-title"}else{c("#wp-fullscreen-title, #wp-fullscreen-title-prompt-text").hide()}}}a.mode=c("#"+a.editor_id).is(":hidden")?"tinymce":"html";a.qt_canvas=c("#"+a.editor_id).get(0);if(!a.element){b.ui.init()}a.is_mce_on=a.has_tinymce&&typeof(tinyMCE.get(a.editor_id))!="undefined";b.ui.fade("show","showing","shown")};b.off=function(){if(!a.visible){return}b.ui.fade("hide","hiding","hidden")};b.switchmode=function(g){var f=a.mode;if(!g||!a.visible||!a.has_tinymce){return f}if(f==g){return f}e.publish("switchMode",[f,g]);a.mode=g;e.publish("switchedMode",[f,g]);return g};b.save=function(){var h=c("#hiddenaction"),f=h.val(),i=c("#wp-fullscreen-save img"),g=c("#wp-fullscreen-save span");i.show();b.savecontent();h.val("wp-fullscreen-save-post");c.post(ajaxurl,c("form#post").serialize(),function(j){i.hide();g.show();setTimeout(function(){g.fadeOut(1000)},3000);if(j.last_edited){c("#wp-fullscreen-save input").attr("title",j.last_edited)}},"json");h.val(f)};b.savecontent=function(){var f,g;if(a.title_id){c("#"+a.title_id).val(c("#wp-fullscreen-title").val())}if(a.mode==="tinymce"&&(f=tinyMCE.get("wp_mce_fullscreen"))){g=f.save()}else{g=c("#wp_mce_fullscreen").val()}c("#"+a.editor_id).val(g);c(document).triggerHandler("wpcountwords",[g])};set_title_hint=function(f){if(!f.val().length){f.siblings("label").css("visibility","")}else{f.siblings("label").css("visibility","hidden")}};b.dfw_width=function(h){var g=c("#wp-fullscreen-wrap"),f=g.width();if(!h){g.width(c("#wp-fullscreen-central-toolbar").width());deleteUserSetting("dfw_width");return}f=h+f;if(f<200||f>1200){return}g.width(f);setUserSetting("dfw_width",f)};e.subscribe("showToolbar",function(){a.toolbars.removeClass("fade-1000").addClass("fade-300");b.fade.In(a.toolbars,300,function(){e.publish("toolbarShown")},true);c("#wp-fullscreen-body").addClass("wp-fullscreen-focus");a.toolbar_shown=true});e.subscribe("hideToolbar",function(){a.toolbars.removeClass("fade-300").addClass("fade-1000");b.fade.Out(a.toolbars,1000,function(){e.publish("toolbarHidden")},true);c("#wp-fullscreen-body").removeClass("wp-fullscreen-focus")});e.subscribe("toolbarShown",function(){a.toolbars.removeClass("fade-300")});e.subscribe("toolbarHidden",function(){a.toolbars.removeClass("fade-1000");a.toolbar_shown=false});e.subscribe("show",function(){var f;if(a.title_id){f=c("#wp-fullscreen-title").val(c("#"+a.title_id).val());set_title_hint(f)}c("#wp-fullscreen-save input").attr("title",c("#last-edit").text());a.textarea_obj.value=a.qt_canvas.value;if(a.has_tinymce&&a.mode==="tinymce"){tinyMCE.execCommand("wpFullScreenInit")}a.orig_y=c(window).scrollTop()});e.subscribe("showing",function(){c(document.body).addClass("fullscreen-active");b.refresh_buttons();c(document).bind("mousemove.fullscreen",function(f){d("showToolbar","hideToolbar",2000,f)});d("showToolbar","hideToolbar",2000);b.bind_resize();setTimeout(b.resize_textarea,200);scrollTo(0,0);c("#wpadminbar").hide()});e.subscribe("shown",function(){var f;a.visible=true;if(a.has_tinymce&&!a.is_mce_on){f=function(g,h){var k=h.getElement(),i=k.value,j=tinyMCEPreInit.mceInit[a.editor_id];if(j&&j.wpautop&&typeof(switchEditors)!="undefined"){k.value=switchEditors.wpautop(k.value)}h.onInit.add(function(l){l.hide();l.getElement().value=i;tinymce.onAddEditor.remove(f)})};tinymce.onAddEditor.add(f);tinyMCE.init(tinyMCEPreInit.mceInit[a.editor_id]);a.is_mce_on=true}wpActiveEditor="wp_mce_fullscreen"});e.subscribe("hide",function(){var f=c("#"+a.editor_id).is(":hidden");if(a.has_tinymce&&a.mode==="tinymce"&&!f){switchEditors.go(a.editor_id,"tmce")}else{if(a.mode==="html"&&f){switchEditors.go(a.editor_id,"html")}}b.savecontent();c(document).unbind(".fullscreen");c(a.textarea_obj).unbind(".grow");if(a.has_tinymce&&a.mode==="tinymce"){tinyMCE.execCommand("wpFullScreenSave")}if(a.title_id){set_title_hint(c("#"+a.title_id))}a.qt_canvas.value=a.textarea_obj.value});e.subscribe("hiding",function(){c(document.body).removeClass("fullscreen-active");scrollTo(0,a.orig_y);c("#wpadminbar").show()});e.subscribe("hidden",function(){a.visible=false;c("#wp_mce_fullscreen, #wp-fullscreen-title").removeAttr("style");if(a.has_tinymce&&a.is_mce_on){tinyMCE.execCommand("wpFullScreenClose")}a.textarea_obj.value="";b.oldheight=0;wpActiveEditor=a.editor_id});e.subscribe("switchMode",function(h,g){var f;if(!a.has_tinymce||!a.is_mce_on){return}f=tinyMCE.get("wp_mce_fullscreen");if(h==="html"&&g==="tinymce"){if(tinyMCE.get(a.editor_id).getParam("wpautop")&&typeof(switchEditors)!="undefined"){a.textarea_obj.value=switchEditors.wpautop(a.textarea_obj.value)}if("undefined"==typeof(f)){tinyMCE.execCommand("wpFullScreenInit")}else{f.show()}}else{if(h==="tinymce"&&g==="html"){if(f){f.hide()}}}});e.subscribe("switchedMode",function(g,f){b.refresh_buttons(true);if(f==="html"){setTimeout(b.resize_textarea,200)}});b.b=function(){if(a.has_tinymce&&"tinymce"===a.mode){tinyMCE.execCommand("Bold")}};b.i=function(){if(a.has_tinymce&&"tinymce"===a.mode){tinyMCE.execCommand("Italic")}};b.ul=function(){if(a.has_tinymce&&"tinymce"===a.mode){tinyMCE.execCommand("InsertUnorderedList")}};b.ol=function(){if(a.has_tinymce&&"tinymce"===a.mode){tinyMCE.execCommand("InsertOrderedList")}};b.link=function(){if(a.has_tinymce&&"tinymce"===a.mode){tinyMCE.execCommand("WP_Link")}else{wpLink.open()}};b.unlink=function(){if(a.has_tinymce&&"tinymce"===a.mode){tinyMCE.execCommand("unlink")}};b.atd=function(){if(a.has_tinymce&&"tinymce"===a.mode){tinyMCE.execCommand("mceWritingImprovementTool")}};b.help=function(){if(a.has_tinymce&&"tinymce"===a.mode){tinyMCE.execCommand("WP_Help")}};b.blockquote=function(){if(a.has_tinymce&&"tinymce"===a.mode){tinyMCE.execCommand("mceBlockQuote")}};b.medialib=function(){if(a.has_tinymce&&"tinymce"===a.mode){tinyMCE.execCommand("WP_Medialib")}else{var f=c("#wp-"+a.editor_id+"-media-buttons a.thickbox").attr("href")||"";if(f){tb_show("",f)}}};b.refresh_buttons=function(f){f=f||false;if(a.mode==="html"){c("#wp-fullscreen-mode-bar").removeClass("wp-tmce-mode").addClass("wp-html-mode");if(f){c("#wp-fullscreen-button-bar").fadeOut(150,function(){c(this).addClass("wp-html-mode").fadeIn(150)})}else{c("#wp-fullscreen-button-bar").addClass("wp-html-mode")}}else{if(a.mode==="tinymce"){c("#wp-fullscreen-mode-bar").removeClass("wp-html-mode").addClass("wp-tmce-mode");if(f){c("#wp-fullscreen-button-bar").fadeOut(150,function(){c(this).removeClass("wp-html-mode").fadeIn(150)})}else{c("#wp-fullscreen-button-bar").removeClass("wp-html-mode")}}}};b.ui={init:function(){var f=c("#fullscreen-topbar"),h=c("#wp_mce_fullscreen"),g=0;a.toolbars=f.add(c("#wp-fullscreen-status"));a.element=c("#fullscreen-fader");a.textarea_obj=h[0];a.has_tinymce=typeof(tinymce)!="undefined";if(!a.has_tinymce){c("#wp-fullscreen-mode-bar").hide()}if(wptitlehint&&c("#wp-fullscreen-title").length){wptitlehint("wp-fullscreen-title")}c(document).keyup(function(k){var l=k.keyCode||k.charCode,i,j;if(!fullscreen.settings.visible){return true}if(navigator.platform&&navigator.platform.indexOf("Mac")!=-1){i=k.ctrlKey}else{i=k.altKey}if(27==l){j={event:k,what:"dfw",cb:fullscreen.off,condition:function(){if(c("#TB_window").is(":visible")||c(".wp-dialog").is(":visible")){return false}return true}};if(!jQuery(document).triggerHandler("wp_CloseOnEscape",[j])){fullscreen.off()}}if(i&&(61==l||107==l||187==l)){b.dfw_width(25)}if(i&&(45==l||109==l||189==l)){b.dfw_width(-25)}if(i&&48==l){b.dfw_width(0)}return false});if(typeof(wpWordCount)!="undefined"){h.keyup(function(j){var i=j.keyCode||j.charCode;if(i==g){return true}if(13==i||8==g||46==g){c(document).triggerHandler("wpcountwords",[h.val()])}g=i;return true})}f.mouseenter(function(i){a.toolbars.addClass("fullscreen-make-sticky");c(document).unbind(".fullscreen");clearTimeout(a.timer);a.timer=0}).mouseleave(function(i){a.toolbars.removeClass("fullscreen-make-sticky");if(a.visible){c(document).bind("mousemove.fullscreen",function(j){d("showToolbar","hideToolbar",2000,j)})}})},fade:function(g,f,h){if(!a.element){b.ui.init()}if(g&&!e.publish(g)){return}b.fade.In(a.element,600,function(){if(f){e.publish(f)}b.fade.Out(a.element,600,function(){if(h){e.publish(h)}})})}};b.fade={transitionend:"transitionend webkitTransitionEnd oTransitionEnd",sensitivity:100,In:function(g,h,i,f){i=i||c.noop;h=h||400;f=f||false;if(b.fade.transitions){if(g.is(":visible")){g.addClass("fade-trigger");return g}g.show();g.first().one(this.transitionend,function(){i()});setTimeout(function(){g.addClass("fade-trigger")},this.sensitivity)}else{if(f){g.stop()}g.css("opacity",1);g.first().fadeIn(h,i);if(g.length>1){g.not(":first").fadeIn(h)}}return g},Out:function(g,h,i,f){i=i||c.noop;h=h||400;f=f||false;if(!g.is(":visible")){return g}if(b.fade.transitions){g.first().one(b.fade.transitionend,function(){if(g.hasClass("fade-trigger")){return}g.hide();i()});setTimeout(function(){g.removeClass("fade-trigger")},this.sensitivity)}else{if(f){g.stop()}g.first().fadeOut(h,i);if(g.length>1){g.not(":first").fadeOut(h)}}return g},transitions:(function(){var f=document.documentElement.style;return(typeof(f.WebkitTransition)=="string"||typeof(f.MozTransition)=="string"||typeof(f.OTransition)=="string"||typeof(f.transition)=="string")})()};b.bind_resize=function(){c(a.textarea_obj).bind("keypress.grow click.grow paste.grow",function(){setTimeout(b.resize_textarea,200)})};b.oldheight=0;b.resize_textarea=function(){var f=a.textarea_obj,g;g=f.scrollHeight>300?f.scrollHeight:300;if(g!=b.oldheight){f.style.height=g+"px";b.oldheight=g}}})(jQuery);
\ No newline at end of file
index bb03b3888be10769dc9a9115df3973f19e10eeab..92194f039213c40289d86b1752b5937dff94da78 100644 (file)
@@ -40,11 +40,22 @@ $wp_list_table->prepare_items();
 $title = __('Links');
 $this_file = $parent_file = 'link-manager.php';
 
 $title = __('Links');
 $this_file = $parent_file = 'link-manager.php';
 
-add_contextual_help( $current_screen,
+get_current_screen()->add_help_tab( array(
+'id'           => 'overview',
+'title'                => __('Overview'),
+'content'      =>
        '<p>' . sprintf(__('You can add links here to be displayed on your site, usually using <a href="%s">Widgets</a>. By default, links to several sites in the WordPress community are included as examples.'), 'widgets.php') . '</p>' .
        '<p>' . sprintf(__('You can add links here to be displayed on your site, usually using <a href="%s">Widgets</a>. By default, links to several sites in the WordPress community are included as examples.'), 'widgets.php') . '</p>' .
-    '<p>' . __('Links may be separated into categories; these are different than the categories used on your posts.') . '</p>' .
-    '<p>' . __('You can customize the display of this screen using the Screen Options tab and/or the dropdown filters above the links table.') . '</p>' .
-    '<p>' . __('If you delete a link, it will be removed permanently, as Links do not have a Trash function yet.') . '</p>' .
+    '<p>' . __('Links may be separated into Link Categories; these are different than the categories used on your posts.') . '</p>' .
+    '<p>' . __('You can customize the display of this screen using the Screen Options tab and/or the dropdown filters above the links table.') . '</p>'
+) );
+get_current_screen()->add_help_tab( array(
+'id'           => 'deleting-links',
+'title'                => __('Deleting Links'),
+'content'      =>
+    '<p>' . __('If you delete a link, it will be removed permanently, as Links do not have a Trash function yet.') . '</p>'
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Links_Screen" target="_blank">Documentation on Managing Links</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Links_Screen" target="_blank">Documentation on Managing Links</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
index be781e299be2827ff231313c265a55ad40bb73ab..4adc3677fb6c6805bedc7db72ae2ac6047ddc3ec 100644 (file)
@@ -125,7 +125,12 @@ foreach( $load as $handle ) {
                $content .= get_file($rtl_path) . "\n";
        }
 
                $content .= get_file($rtl_path) . "\n";
        }
 
-       $out .= str_replace( '../images/', 'images/', $content );
+       if ( strpos( $style->src, '/wp-includes/css/' ) === 0 ) {
+               $content = str_replace( '../images/', '../wp-includes/images/', $content );
+               $out .= str_replace( '../js/tinymce/', '../wp-includes/js/tinymce/', $content );
+       } else {
+               $out .= str_replace( '../images/', 'images/', $content );
+       }
 }
 
 header('Content-Type: text/css');
 }
 
 header('Content-Type: text/css');
index c3430a7fb555c226fdef72cb92de872178f16840..3f5718876d92fba8cccd9b75d8cfb982392844c7 100644 (file)
@@ -6,7 +6,7 @@ require_once('../../wp-load.php');
 
 header( 'Content-Type: text/html; charset=utf-8' );
 ?>
 
 header( 'Content-Type: text/html; charset=utf-8' );
 ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html>
 <html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>>
 <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>>
 <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
@@ -21,7 +21,6 @@ header( 'Content-Type: text/html; charset=utf-8' );
 if ( !defined('WP_ALLOW_REPAIR') ) {
        echo '<p>'.__('To allow use of this page to automatically repair database problems, please add the following line to your wp-config.php file.  Once this line is added to your config, reload this page.')."</p><code>define('WP_ALLOW_REPAIR', true);</code>";
 } elseif ( isset($_GET['repair']) ) {
 if ( !defined('WP_ALLOW_REPAIR') ) {
        echo '<p>'.__('To allow use of this page to automatically repair database problems, please add the following line to your wp-config.php file.  Once this line is added to your config, reload this page.')."</p><code>define('WP_ALLOW_REPAIR', true);</code>";
 } elseif ( isset($_GET['repair']) ) {
-       $problems = array();
        check_admin_referer('repair_db');
 
        if ( 2 == $_GET['repair'] )
        check_admin_referer('repair_db');
 
        if ( 2 == $_GET['repair'] )
@@ -30,38 +29,60 @@ if ( !defined('WP_ALLOW_REPAIR') ) {
                $optimize = false;
 
        $okay = true;
                $optimize = false;
 
        $okay = true;
+       $problems = array();
 
        $tables = $wpdb->tables();
 
        $tables = $wpdb->tables();
+
        // Sitecategories may not exist if global terms are disabled.
        if ( is_multisite() && ! $wpdb->get_var( "SHOW TABLES LIKE '$wpdb->sitecategories'" ) )
                unset( $tables['sitecategories'] );
        // Sitecategories may not exist if global terms are disabled.
        if ( is_multisite() && ! $wpdb->get_var( "SHOW TABLES LIKE '$wpdb->sitecategories'" ) )
                unset( $tables['sitecategories'] );
+
        $tables = array_merge( $tables, (array) apply_filters( 'tables_to_repair', array() ) ); // Return tables with table prefixes.
        $tables = array_merge( $tables, (array) apply_filters( 'tables_to_repair', array() ) ); // Return tables with table prefixes.
+
        // Loop over the tables, checking and repairing as needed.
        foreach ( $tables as $table ) {
                $check = $wpdb->get_row("CHECK TABLE $table");
        // Loop over the tables, checking and repairing as needed.
        foreach ( $tables as $table ) {
                $check = $wpdb->get_row("CHECK TABLE $table");
+
+               echo '<p>';
                if ( 'OK' == $check->Msg_text ) {
                if ( 'OK' == $check->Msg_text ) {
-                       echo "<p>The $table table is okay.";
+                       /* translators: %s: table name */
+                       printf( __( 'The %s table is okay.' ), $table );
                } else {
                } else {
-                       echo "<p>The $table table is not okay. It is reporting the following error: <code>$check->Msg_text</code>.  WordPress will attempt to repair this table&hellip;";
+                       /* translators: 1: table name, 2: error message, */
+                       printf( __( 'The %1$s table is not okay. It is reporting the following error: %2$s.  WordPress will attempt to repair this table&hellip;' ) , $table, "<code>$check->Msg_text</code>" );
+
                        $repair = $wpdb->get_row("REPAIR TABLE $table");
                        $repair = $wpdb->get_row("REPAIR TABLE $table");
+
+                       echo '<br />&nbsp;&nbsp;&nbsp;&nbsp;';
                        if ( 'OK' == $check->Msg_text ) {
                        if ( 'OK' == $check->Msg_text ) {
-                               echo "<br />&nbsp;&nbsp;&nbsp;&nbsp;Successfully repaired the $table table.";
+                               /* translators: %s: table name */
+                               printf( __( 'Successfully repaired the %s table.' ), $table );
                        } else {
                        } else {
-                               echo "<br />&nbsp;&nbsp;&nbsp;&nbsp;Failed to repair the $table table. Error: $check->Msg_text<br />";
-                               $problems["$table"] = $check->Msg_text;
+                               /* translators: 1: table name, 2: error message, */
+                               echo sprintf( __( 'Failed to repair the  %1$s table. Error: %2$s' ), $table, "<code>$check->Msg_text</code>" ) . '<br />';
+                               $problems[$table] = $check->Msg_text;
                                $okay = false;
                        }
                }
                                $okay = false;
                        }
                }
+
                if ( $okay && $optimize ) {
                        $check = $wpdb->get_row("ANALYZE TABLE $table");
                if ( $okay && $optimize ) {
                        $check = $wpdb->get_row("ANALYZE TABLE $table");
+
+                       echo '<br />&nbsp;&nbsp;&nbsp;&nbsp';
                        if ( 'Table is already up to date' == $check->Msg_text )  {
                        if ( 'Table is already up to date' == $check->Msg_text )  {
-                               echo "<br />&nbsp;&nbsp;&nbsp;&nbsp;The $table table is already optimized.";
+                               /* translators: %s: table name */
+                               printf( __( 'The %s table is already optimized.' ), $table );
                        } else {
                                $check = $wpdb->get_row("OPTIMIZE TABLE $table");
                        } else {
                                $check = $wpdb->get_row("OPTIMIZE TABLE $table");
-                               if ( 'OK' == $check->Msg_text || 'Table is already up to date' == $check->Msg_text )
-                                       echo "<br />&nbsp;&nbsp;&nbsp;&nbsp;Successfully optimized the $table table.";
-                               else
-                                       echo "<br />&nbsp;&nbsp;&nbsp;&nbsp;Failed to optimize the $table table. Error: $check->Msg_text";
+
+                               echo '<br />&nbsp;&nbsp;&nbsp;&nbsp';
+                               if ( 'OK' == $check->Msg_text || 'Table is already up to date' == $check->Msg_text ) {
+                                       /* translators: %s: table name */
+                                       printf( __( 'Successfully optimized the %s table.' ), $table );
+                               } else {
+                                       /* translators: 1: table name, 2: error message, */
+                                       printf( __( 'Failed to optimize the %1$s table. Error: %2$s' ), $table, "<code>$check->Msg_text</code>" );
+                               }
                        }
                }
                echo '</p>';
                        }
                }
                echo '</p>';
@@ -89,4 +110,4 @@ if ( !defined('WP_ALLOW_REPAIR') ) {
 }
 ?>
 </body>
 }
 ?>
 </body>
-</html>
\ No newline at end of file
+</html>
index d4e3cabf414dad1b96cb3de4ebac22b7c2e5e1a2..a257f94589727273bae415543e981e537f6c9e60 100644 (file)
@@ -6,9 +6,14 @@
  * @subpackage Administration
  */
 
  * @subpackage Administration
  */
 
+global $is_iphone;
+
+if ( $is_iphone ) // cannot upload files from iPhone/iPad
+       return;
+
 $_GET['inline'] = 'true';
 /** Administration bootstrap */
 require_once('./admin.php');
 require_once('./media-upload.php');
 
 $_GET['inline'] = 'true';
 /** Administration bootstrap */
 require_once('./admin.php');
 require_once('./media-upload.php');
 
-?>
\ No newline at end of file
+?>
index b33b0d51c48dcbe51e3fc5a4e30f6aad757bfcc5..666c3f37e252a178b0797a1dc235ba7f2bbfa869 100644 (file)
@@ -18,8 +18,7 @@ require_once('./admin.php');
 if (!current_user_can('upload_files'))
        wp_die(__('You do not have permission to upload files.'));
 
 if (!current_user_can('upload_files'))
        wp_die(__('You do not have permission to upload files.'));
 
-wp_enqueue_script('swfupload-all');
-wp_enqueue_script('swfupload-handlers');
+wp_enqueue_script('plupload-handlers');
 wp_enqueue_script('image-edit');
 wp_enqueue_script('set-post-thumbnail' );
 wp_enqueue_style('imgareaselect');
 wp_enqueue_script('image-edit');
 wp_enqueue_script('set-post-thumbnail' );
 wp_enqueue_style('imgareaselect');
@@ -61,21 +60,36 @@ if ( isset($_GET['inline']) ) {
 
        $title = __('Upload New Media');
        $parent_file = 'upload.php';
 
        $title = __('Upload New Media');
        $parent_file = 'upload.php';
-
-       add_contextual_help( $current_screen,
-'<p>' . __('You can upload media files here without creating a post first. This allows you to upload files to use with posts and pages later and/or to get a web link for a particular file that you can share.') . '</p>' .
-               '<p>' . __('There are two options for uploading files: <em>Select Files</em> will open the Flash-based uploader (multiple file upload allowed), or you can use the <em>Browser Uploader</em>. Clicking <em>Select Files</em> opens a navigation window showing you files in your operating system. Selecting <em>Open</em> after clicking on the file you want activates a progress bar on the uploader screen. Basic image editing is available after upload is complete. Make sure you click <em>Save</em> before leaving this screen.') . '</p>' .
+       get_current_screen()->add_help_tab( array(
+       'id'            => 'overview',
+       'title'         => __('Overview'),
+       'content'       =>
+               '<p>' . __('You can upload media files here without creating a post first. This allows you to upload files to use with posts and pages later and/or to get a web link for a particular file that you can share. There are three options for uploading files:') . '</p>' .
+               '<ul>' .
+                       '<li>' . __('<strong>Drag and drop</strong> your files into the area below. Multiple files are allowed.') . '</li>' .
+                       '<li>' . __('<strong>Select Files</strong> will open the multi-file uploader, or you can use the <strong>Browser Uploader</strong>.') . '</li>' .
+                       '<li>' . __('Clicking <strong>Select Files</strong> opens a navigation window showing you files in your operating system. Selecting <strong>Open</strong> after clicking on the file you want activates a progress bar on the uploader screen.') . '</li>' .
+               '</ul>' .
+               '<p>' . __('Basic image editing is available after upload is complete. Make sure you click Save before leaving this screen.') . '</p>'
+       ) );
+       get_current_screen()->set_help_sidebar(
                '<p><strong>' . __('For more information:') . '</strong></p>' .
                '<p>' . __('<a href="http://codex.wordpress.org/Media_Add_New_Screen" target="_blank">Documentation on Uploading Media Files</a>') . '</p>' .
                '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        );
 
                '<p><strong>' . __('For more information:') . '</strong></p>' .
                '<p>' . __('<a href="http://codex.wordpress.org/Media_Add_New_Screen" target="_blank">Documentation on Uploading Media Files</a>') . '</p>' .
                '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        );
 
-       require_once('./admin-header.php'); ?>
+       require_once('./admin-header.php');
+
+       $form_class = 'media-upload-form type-form validate';
+
+       if ( get_user_setting('uploader') )
+               $form_class .= ' html-uploader';
+       ?>
        <div class="wrap">
        <?php screen_icon(); ?>
        <h2><?php echo esc_html( $title ); ?></h2>
 
        <div class="wrap">
        <?php screen_icon(); ?>
        <h2><?php echo esc_html( $title ); ?></h2>
 
-       <form enctype="multipart/form-data" method="post" action="<?php echo admin_url('media-upload.php?inline=&amp;upload-page-form='); ?>" class="media-upload-form type-form validate" id="file-form">
+       <form enctype="multipart/form-data" method="post" action="<?php echo admin_url('media-upload.php?inline=&amp;upload-page-form='); ?>" class="<?php echo $form_class; ?>" id="file-form">
 
        <?php media_upload_form(); ?>
 
 
        <?php media_upload_form(); ?>
 
@@ -92,8 +106,8 @@ if ( isset($_GET['inline']) ) {
        </script>
        <input type="hidden" name="post_id" id="post_id" value="0" />
        <?php wp_nonce_field('media-form'); ?>
        </script>
        <input type="hidden" name="post_id" id="post_id" value="0" />
        <?php wp_nonce_field('media-form'); ?>
-       <div id="media-items" class="hide-if-no-js"> </div>
-       <?php submit_button( __( 'Save all changes' ), 'button savebutton hide-if-no-js', 'save' ); ?>
+       <div id="media-items" class="hide-if-no-js"></div>
+       <?php submit_button( __( 'Save all changes' ), 'button savebutton hidden', 'save' ); ?>
        </form>
        </div>
 
        </form>
        </div>
 
@@ -117,7 +131,7 @@ if ( isset($_GET['inline']) ) {
        $body_id = 'media-upload';
 
        // let the action code decide how to handle the request
        $body_id = 'media-upload';
 
        // let the action code decide how to handle the request
-       if ( $tab == 'type' || $tab == 'type_url' )
+       if ( $tab == 'type' || $tab == 'type_url' || ! array_key_exists( $tab , media_upload_tabs() ) )
                do_action("media_upload_$type");
        else
                do_action("media_upload_$tab");
                do_action("media_upload_$type");
        else
                do_action("media_upload_$tab");
index 8626674f463388b18b5fc086d75814c90d340d68..1b750d585a7218919f16d8c1b10fbbfeb7d96400 100644 (file)
@@ -67,15 +67,21 @@ case 'edit' :
        wp_enqueue_script('image-edit');
        wp_enqueue_style('imgareaselect');
 
        wp_enqueue_script('image-edit');
        wp_enqueue_style('imgareaselect');
 
-       add_contextual_help( $current_screen,
-       '<p>' . __('This screen allows you to edit five fields for metadata in a file within the media library.') . '</p>' .
-       '<p>' . __('For images only, you can click on Edit Image under the thumbnail to expand out an inline image editor with icons for cropping, rotating, or flipping the image as well as for undoing and redoing. The boxes on the right give you more options for scaling the image, for cropping it, and for cropping the thumbnail in a different way than you crop the original image. You can click on Help in those boxes to get more information.') . '</p>' .
-       '<p>' . __('Note that you crop the image by clicking on it (the Crop icon is already selected) and dragging the cropping frame to select the desired part. Then click Save to retain the cropping.') . '</p>' .
-       '<p>' . __('Remember to click Update Media to save metadata entered or changed.') . '</p>' .
+       get_current_screen()->add_help_tab( array(
+               'id'      => 'overview',
+               'title'   => __('Overview'),
+               'content' =>
+                       '<p>' . __('This screen allows you to edit five fields for metadata in a file within the media library.') . '</p>' .
+                       '<p>' . __('For images only, you can click on Edit Image under the thumbnail to expand out an inline image editor with icons for cropping, rotating, or flipping the image as well as for undoing and redoing. The boxes on the right give you more options for scaling the image, for cropping it, and for cropping the thumbnail in a different way than you crop the original image. You can click on Help in those boxes to get more information.') . '</p>' .
+                       '<p>' . __('Note that you crop the image by clicking on it (the Crop icon is already selected) and dragging the cropping frame to select the desired part. Then click Save to retain the cropping.') . '</p>' .
+                       '<p>' . __('Remember to click Update Media to save metadata entered or changed.') . '</p>'
+       ) );
+
+       get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Media_Add_New_Screen#Edit_Media" target="_blank">Documentation on Edit Media</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Media_Add_New_Screen#Edit_Media" target="_blank">Documentation on Edit Media</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
-);
+       );
 
        require( './admin-header.php' );
 
 
        require( './admin-header.php' );
 
index 54ff1901f48d760e31a02aac269dbfd5217a9b1b..cdd81b2ad7da57964ba1dbd2dc5c753e69cca45b 100644 (file)
@@ -36,87 +36,82 @@ get_admin_page_parent();
 function _wp_menu_output( $menu, $submenu, $submenu_as_parent = true ) {
        global $self, $parent_file, $submenu_file, $plugin_page, $pagenow, $typenow;
 
 function _wp_menu_output( $menu, $submenu, $submenu_as_parent = true ) {
        global $self, $parent_file, $submenu_file, $plugin_page, $pagenow, $typenow;
 
-       $menu_setting_increment = -1;
-       $user_settings = get_all_user_settings();
-
        $first = true;
        // 0 = name, 1 = capability, 2 = file, 3 = class, 4 = id, 5 = icon src
        foreach ( $menu as $key => $item ) {
                $admin_is_parent = false;
                $class = array();
        $first = true;
        // 0 = name, 1 = capability, 2 = file, 3 = class, 4 = id, 5 = icon src
        foreach ( $menu as $key => $item ) {
                $admin_is_parent = false;
                $class = array();
+               $aria_attributes = 'tabindex="1"';
+
                if ( $first ) {
                        $class[] = 'wp-first-item';
                        $first = false;
                }
                if ( $first ) {
                        $class[] = 'wp-first-item';
                        $first = false;
                }
-               if ( !empty($submenu[$item[2]]) ) {
+
+               $submenu_items = false;
+               if ( ! empty( $submenu[$item[2]] ) ) {
                        $class[] = 'wp-has-submenu';
                        $class[] = 'wp-has-submenu';
-                       $menu_setting_increment++;
+                       $submenu_items = $submenu[$item[2]];
                }
 
                if ( ( $parent_file && $item[2] == $parent_file ) || ( empty($typenow) && $self == $item[2] ) ) {
                }
 
                if ( ( $parent_file && $item[2] == $parent_file ) || ( empty($typenow) && $self == $item[2] ) ) {
-                       if ( !empty($submenu[$item[2]]) )
-                               $class[] = 'wp-has-current-submenu wp-menu-open';
-                       else
-                               $class[] = 'current';
-               } elseif ( ! empty( $submenu[ $item[2] ] ) && isset( $user_settings[ 'm' . $menu_setting_increment ] ) && 'o' == $user_settings[ 'm' . $menu_setting_increment ] ) {
-                               $class[] = 'wp-menu-open';
+                       $class[] = ! empty( $submenu_items ) ? 'wp-has-current-submenu wp-menu-open' : 'current';
+               } else {
+                       $class[] = 'wp-not-current-submenu';
+                       if ( ! empty( $submenu_items ) )
+                               $aria_attributes .= ' aria-haspopup="true"';
                }
 
                }
 
-               if ( ! empty($item[4]) )
+               if ( ! empty( $item[4] ) )
                        $class[] = $item[4];
 
                $class = $class ? ' class="' . join( ' ', $class ) . '"' : '';
                        $class[] = $item[4];
 
                $class = $class ? ' class="' . join( ' ', $class ) . '"' : '';
-               $tabindex = ' tabindex="1"';
-               $id = ! empty($item[5]) ? ' id="' . preg_replace( '|[^a-zA-Z0-9_:.]|', '-', $item[5] ) . '"' : '';
+               $id = ! empty( $item[5] ) ? ' id="' . preg_replace( '|[^a-zA-Z0-9_:.]|', '-', $item[5] ) . '"' : '';
                $img = '';
                $img = '';
-               if ( ! empty($item[6]) ) {
-                       if ( 'div' === $item[6] )
-                               $img = '<br />';
-                       else
-                               $img = '<img src="' . $item[6] . '" alt="" />';
-               }
-               $toggle = '<div class="wp-menu-toggle"><br /></div>';
+               if ( ! empty( $item[6] ) )
+                       $img = ( 'div' === $item[6] ) ? '<br />' : '<img src="' . $item[6] . '" alt="" />';
                $arrow = '<div class="wp-menu-arrow"><div></div></div>';
 
                $arrow = '<div class="wp-menu-arrow"><div></div></div>';
 
-               $title = wptexturize($item[0]);
+               $title = wptexturize( $item[0] );
 
                echo "\n\t<li$class$id>";
 
                if ( false !== strpos( $class, 'wp-menu-separator' ) ) {
                        echo '<div class="separator"></div>';
 
                echo "\n\t<li$class$id>";
 
                if ( false !== strpos( $class, 'wp-menu-separator' ) ) {
                        echo '<div class="separator"></div>';
-               } elseif ( $submenu_as_parent && !empty($submenu[$item[2]]) ) {
-                       $submenu[$item[2]] = array_values($submenu[$item[2]]);  // Re-index.
-                       $menu_hook = get_plugin_page_hook($submenu[$item[2]][0][2], $item[2]);
-                       $menu_file = $submenu[$item[2]][0][2];
-                       if ( false !== $pos = strpos($menu_file, '?') )
-                               $menu_file = substr($menu_file, 0, $pos);
-                       if ( ( ('index.php' != $submenu[$item[2]][0][2]) && file_exists(WP_PLUGIN_DIR . "/$menu_file") ) || !empty($menu_hook)) {
+               } elseif ( $submenu_as_parent && ! empty( $submenu_items ) ) {
+                       $submenu_items = array_values( $submenu_items );  // Re-index.
+                       $menu_hook = get_plugin_page_hook( $submenu_items[0][2], $item[2] );
+                       $menu_file = $submenu_items[0][2];
+                       if ( false !== ( $pos = strpos( $menu_file, '?' ) ) )
+                               $menu_file = substr( $menu_file, 0, $pos );
+                       if ( ! empty( $menu_hook ) || ( ('index.php' != $submenu_items[0][2]) && file_exists( WP_PLUGIN_DIR . "/$menu_file" ) ) ) {
                                $admin_is_parent = true;
                                $admin_is_parent = true;
-                               echo "<div class='wp-menu-image'><a href='admin.php?page={$submenu[$item[2]][0][2]}'>$img</a></div>$arrow$toggle<a href='admin.php?page={$submenu[$item[2]][0][2]}'$class$tabindex>$title</a>";
+                               echo "<div class='wp-menu-image'><a href='admin.php?page={$submenu_items[0][2]}'>$img</a></div>$arrow<a href='admin.php?page={$submenu_items[0][2]}'$class $aria_attributes>$title</a>";
                        } else {
                        } else {
-                               echo "\n\t<div class='wp-menu-image'><a href='{$submenu[$item[2]][0][2]}'>$img</a></div>$arrow$toggle<a href='{$submenu[$item[2]][0][2]}'$class$tabindex>$title</a>";
+                               echo "\n\t<div class='wp-menu-image'><a href='{$submenu_items[0][2]}'>$img</a></div>$arrow<a href='{$submenu_items[0][2]}'$class $aria_attributes>$title</a>";
                        }
                        }
-               } else if ( !empty($item[2]) && current_user_can($item[1]) ) {
-                       $menu_hook = get_plugin_page_hook($item[2], 'admin.php');
+               } elseif ( ! empty( $item[2] ) && current_user_can( $item[1] ) ) {
+                       $menu_hook = get_plugin_page_hook( $item[2], 'admin.php' );
                        $menu_file = $item[2];
                        $menu_file = $item[2];
-                       if ( false !== $pos = strpos($menu_file, '?') )
-                               $menu_file = substr($menu_file, 0, $pos);
-                       if ( ('index.php' != $item[2]) && file_exists(WP_PLUGIN_DIR . "/$menu_file") || !empty($menu_hook) ) {
+                       if ( false !== ( $pos = strpos( $menu_file, '?' ) ) )
+                               $menu_file = substr( $menu_file, 0, $pos );
+                       if ( ! empty( $menu_hook ) || ( ('index.php' != $item[2]) && file_exists( WP_PLUGIN_DIR . "/$menu_file" ) ) ) {
                                $admin_is_parent = true;
                                $admin_is_parent = true;
-                               echo "\n\t<div class='wp-menu-image'><a href='admin.php?page={$item[2]}'>$img</a></div>$arrow$toggle<a href='admin.php?page={$item[2]}'$class$tabindex>{$item[0]}</a>";
+                               echo "\n\t<div class='wp-menu-image'><a href='admin.php?page={$item[2]}'>$img</a></div>$arrow<a href='admin.php?page={$item[2]}'$class $aria_attributes>{$item[0]}</a>";
                        } else {
                        } else {
-                               echo "\n\t<div class='wp-menu-image'><a href='{$item[2]}'>$img</a></div>$arrow$toggle<a href='{$item[2]}'$class$tabindex>{$item[0]}</a>";
+                               echo "\n\t<div class='wp-menu-image'><a href='{$item[2]}'>$img</a></div>$arrow<a href='{$item[2]}'$class $aria_attributes>{$item[0]}</a>";
                        }
                }
 
                        }
                }
 
-               if ( !empty($submenu[$item[2]]) ) {
+               if ( ! empty( $submenu_items ) ) {
                        echo "\n\t<div class='wp-submenu'><div class='wp-submenu-wrap'>";
                        echo "<div class='wp-submenu-head'>{$item[0]}</div><ul>";
                        $first = true;
                        echo "\n\t<div class='wp-submenu'><div class='wp-submenu-wrap'>";
                        echo "<div class='wp-submenu-head'>{$item[0]}</div><ul>";
                        $first = true;
-                       foreach ( $submenu[$item[2]] as $sub_key => $sub_item ) {
-                               if ( !current_user_can($sub_item[1]) )
+                       foreach ( $submenu_items as $sub_key => $sub_item ) {
+                               if ( ! current_user_can( $sub_item[1] ) )
                                        continue;
 
                                        continue;
 
+                               $aria_attributes = 'tabindex="1"';
                                $class = array();
                                if ( $first ) {
                                        $class[] = 'wp-first-item';
                                $class = array();
                                if ( $first ) {
                                        $class[] = 'wp-first-item';
@@ -125,21 +120,21 @@ function _wp_menu_output( $menu, $submenu, $submenu_as_parent = true ) {
 
                                $menu_file = $item[2];
 
 
                                $menu_file = $item[2];
 
-                               if ( false !== $pos = strpos($menu_file, '?') )
-                                       $menu_file = substr($menu_file, 0, $pos);
+                               if ( false !== ( $pos = strpos( $menu_file, '?' ) ) )
+                                       $menu_file = substr( $menu_file, 0, $pos );
 
                                // Handle current for post_type=post|page|foo pages, which won't match $self.
 
                                // Handle current for post_type=post|page|foo pages, which won't match $self.
-                               if ( !empty($typenow) )
-                                       $self_type = $self . '?post_type=' . $typenow;
-                               else
-                                       $self_type = 'nothing';
+                               $self_type = ! empty( $typenow ) ? $self . '?post_type=' . $typenow : 'nothing';
 
 
-                               if ( isset($submenu_file) ) {
+                               if ( isset( $submenu_file ) ) {
                                        if ( $submenu_file == $sub_item[2] )
                                                $class[] = 'current';
                                // If plugin_page is set the parent must either match the current page or not physically exist.
                                // This allows plugin pages with the same hook to exist under different parents.
                                        if ( $submenu_file == $sub_item[2] )
                                                $class[] = 'current';
                                // If plugin_page is set the parent must either match the current page or not physically exist.
                                // This allows plugin pages with the same hook to exist under different parents.
-                               } else if ( (isset($plugin_page) && $plugin_page == $sub_item[2] && (!file_exists($menu_file) || ($item[2] == $self) || ($item[2] == $self_type))) || (!isset($plugin_page) && $self == $sub_item[2]) ) {
+                               } else if (
+                                       ( ! isset( $plugin_page ) && $self == $sub_item[2] ) ||
+                                       ( isset( $plugin_page ) && $plugin_page == $sub_item[2] && ( $item[2] == $self_type || $item[2] == $self || file_exists($menu_file) === false ) )
+                               ) {
                                        $class[] = 'current';
                                }
 
                                        $class[] = 'current';
                                }
 
@@ -147,21 +142,22 @@ function _wp_menu_output( $menu, $submenu, $submenu_as_parent = true ) {
 
                                $menu_hook = get_plugin_page_hook($sub_item[2], $item[2]);
                                $sub_file = $sub_item[2];
 
                                $menu_hook = get_plugin_page_hook($sub_item[2], $item[2]);
                                $sub_file = $sub_item[2];
-                               if ( false !== $pos = strpos($sub_file, '?') )
+                               if ( false !== ( $pos = strpos( $sub_file, '?' ) ) )
                                        $sub_file = substr($sub_file, 0, $pos);
 
                                $title = wptexturize($sub_item[0]);
 
                                        $sub_file = substr($sub_file, 0, $pos);
 
                                $title = wptexturize($sub_item[0]);
 
-                               if ( ( ('index.php' != $sub_item[2]) && file_exists(WP_PLUGIN_DIR . "/$sub_file") ) || ! empty($menu_hook) ) {
+                               if ( ! empty( $menu_hook ) || ( ('index.php' != $sub_item[2]) && file_exists( WP_PLUGIN_DIR . "/$sub_file" ) ) ) {
                                        // If admin.php is the current page or if the parent exists as a file in the plugins or admin dir
                                        if ( (!$admin_is_parent && file_exists(WP_PLUGIN_DIR . "/$menu_file") && !is_dir(WP_PLUGIN_DIR . "/{$item[2]}")) || file_exists($menu_file) )
                                                $sub_item_url = add_query_arg( array('page' => $sub_item[2]), $item[2] );
                                        else
                                                $sub_item_url = add_query_arg( array('page' => $sub_item[2]), 'admin.php' );
                                        // If admin.php is the current page or if the parent exists as a file in the plugins or admin dir
                                        if ( (!$admin_is_parent && file_exists(WP_PLUGIN_DIR . "/$menu_file") && !is_dir(WP_PLUGIN_DIR . "/{$item[2]}")) || file_exists($menu_file) )
                                                $sub_item_url = add_query_arg( array('page' => $sub_item[2]), $item[2] );
                                        else
                                                $sub_item_url = add_query_arg( array('page' => $sub_item[2]), 'admin.php' );
-                                       $sub_item_url = esc_url($sub_item_url);
-                                       echo "<li$class><a href='$sub_item_url'$class$tabindex>$title</a></li>";
+
+                                       $sub_item_url = esc_url( $sub_item_url );
+                                       echo "<li$class><a href='$sub_item_url'$class $aria_attributes>$title</a></li>";
                                } else {
                                } else {
-                                       echo "<li$class><a href='{$sub_item[2]}'$class$tabindex>$title</a></li>";
+                                       echo "<li$class><a href='{$sub_item[2]}'$class $aria_attributes>$title</a></li>";
                                }
                        }
                        echo "</ul></div></div>";
                                }
                        }
                        echo "</ul></div></div>";
@@ -179,7 +175,7 @@ function _wp_menu_output( $menu, $submenu, $submenu_as_parent = true ) {
 <div id="adminmenuback"></div>
 <div id="adminmenuwrap">
 <div id="adminmenushadow"></div>
 <div id="adminmenuback"></div>
 <div id="adminmenuwrap">
 <div id="adminmenushadow"></div>
-<ul id="adminmenu">
+<ul id="adminmenu" role="navigation">
 
 <?php
 
 
 <?php
 
index a5859d99bef87abe4be17d13926eddbbb8dcda5c..050bbd1666a929e919a244e2af13cbc7f1f7eb49 100644 (file)
@@ -30,45 +30,13 @@ if ( is_multisite() ) {
        $submenu[ 'index.php' ][5] = array( __('My Sites'), 'read', 'my-sites.php' );
 }
 
        $submenu[ 'index.php' ][5] = array( __('My Sites'), 'read', 'my-sites.php' );
 }
 
-if ( ! is_multisite() || is_super_admin() ) {
-       $plugin_update_count = $theme_update_count = $wordpress_update_count = 0;
-
-       if ( current_user_can( 'update_plugins' ) ) {
-               $update_plugins = get_site_transient( 'update_plugins' );
-               if ( ! empty( $update_plugins->response ) )
-                       $plugin_update_count = count( $update_plugins->response );
-       }
-
-       if ( current_user_can( 'update_themes' ) ) {
-               $update_themes = get_site_transient( 'update_themes' );
-               if ( !empty($update_themes->response) )
-                       $theme_update_count = count( $update_themes->response );
-       }
-
-       if ( current_user_can( 'update_core' ) ) {
-               $update_wordpress = get_core_updates( array('dismissed' => false) );
-               if ( !empty($update_wordpress) && !in_array( $update_wordpress[0]->response, array('development', 'latest') ) && current_user_can('update_core') )
-                       $wordpress_update_count = 1;
-       }
-
-       $total_update_count = $plugin_update_count + $theme_update_count + $wordpress_update_count;
-       $update_title = array();
-       if ( $wordpress_update_count )
-               $update_title[] = sprintf(__('%d WordPress Update'), $wordpress_update_count);
-       if ( $plugin_update_count )
-               $update_title[] = sprintf(_n('%d Plugin Update', '%d Plugin Updates', $plugin_update_count), $plugin_update_count);
-       if ( $theme_update_count )
-               $update_title[] = sprintf(_n('%d Theme Update', '%d Theme Updates', $theme_update_count), $theme_update_count);
-
-       $update_title = !empty($update_title) ? esc_attr(implode(', ', $update_title)) : '';
-}
+if ( ! is_multisite() || is_super_admin() )
+       $update_data = wp_get_update_data();
 
 if ( ! is_multisite() ) {
 
 if ( ! is_multisite() ) {
-       $submenu[ 'index.php' ][10] = array( sprintf( __('Updates %s'), "<span class='update-plugins count-$total_update_count' title='$update_title'><span class='update-count'>" . number_format_i18n($total_update_count) . "</span></span>" ), 'update_core',  'update-core.php');
+       $submenu[ 'index.php' ][10] = array( sprintf( __('Updates %s'), "<span class='update-plugins count-{$update_data['counts']['total']}' title='{$update_data['title']}'><span class='update-count'>" . number_format_i18n($update_data['counts']['total']) . "</span></span>" ), 'update_core',  'update-core.php');
 }
 
 }
 
-unset($theme_update_count, $wordpress_update_count, $update_themes, $update_plugins, $update_wordpress);
-
 $menu[4] = array( '', 'read', 'separator1', '', 'wp-menu-separator' );
 
 $menu[5] = array( __('Posts'), 'edit_posts', 'edit.php', '', 'open-if-no-js menu-top menu-icon-post', 'menu-posts', 'div' );
 $menu[4] = array( '', 'read', 'separator1', '', 'wp-menu-separator' );
 
 $menu[5] = array( __('Posts'), 'edit_posts', 'edit.php', '', 'open-if-no-js menu-top menu-icon-post', 'menu-posts', 'div' );
@@ -88,10 +56,11 @@ $menu[5] = array( __('Posts'), 'edit_posts', 'edit.php', '', 'open-if-no-js menu
 $menu[10] = array( __('Media'), 'upload_files', 'upload.php', '', 'menu-top menu-icon-media', 'menu-media', 'div' );
        $submenu['upload.php'][5] = array( __('Library'), 'upload_files', 'upload.php');
        /* translators: add new file */
 $menu[10] = array( __('Media'), 'upload_files', 'upload.php', '', 'menu-top menu-icon-media', 'menu-media', 'div' );
        $submenu['upload.php'][5] = array( __('Library'), 'upload_files', 'upload.php');
        /* translators: add new file */
-       $submenu['upload.php'][10] = array( _x('Add New', 'file'), 'upload_files', 'media-new.php');
+       if ( !$is_iphone )
+               $submenu['upload.php'][10] = array( _x('Add New', 'file'), 'upload_files', 'media-new.php');
 
 $menu[15] = array( __('Links'), 'manage_links', 'link-manager.php', '', 'menu-top menu-icon-links', 'menu-links', 'div' );
 
 $menu[15] = array( __('Links'), 'manage_links', 'link-manager.php', '', 'menu-top menu-icon-links', 'menu-links', 'div' );
-       $submenu['link-manager.php'][5] = array( __('All Links'), 'manage_links', 'link-manager.php' );
+       $submenu['link-manager.php'][5] = array( _x('All Links', 'admin menu'), 'manage_links', 'link-manager.php' );
        /* translators: add new links */
        $submenu['link-manager.php'][10] = array( _x('Add New', 'link'), 'manage_links', 'link-add.php' );
        $submenu['link-manager.php'][15] = array( __('Link Categories'), 'manage_categories', 'edit-tags.php?taxonomy=link_category' );
        /* translators: add new links */
        $submenu['link-manager.php'][10] = array( _x('Add New', 'link'), 'manage_links', 'link-add.php' );
        $submenu['link-manager.php'][15] = array( __('Link Categories'), 'manage_categories', 'edit-tags.php?taxonomy=link_category' );
@@ -166,7 +135,7 @@ if ( current_user_can( 'switch_themes') ) {
                        $submenu['themes.php'][10] = array(__('Menus'), 'edit_theme_options', 'nav-menus.php' );
 }
 
                        $submenu['themes.php'][10] = array(__('Menus'), 'edit_theme_options', 'nav-menus.php' );
 }
 
-// Add 'Editor' to the bottom of the Appearence menu.
+// Add 'Editor' to the bottom of the Appearance menu.
 if ( ! is_multisite() )
        add_action('admin_menu', '_add_themes_utility_last', 101);
 function _add_themes_utility_last() {
 if ( ! is_multisite() )
        add_action('admin_menu', '_add_themes_utility_last', 101);
 function _add_themes_utility_last() {
@@ -176,9 +145,12 @@ function _add_themes_utility_last() {
 
 $menu_perms = get_site_option( 'menu_items', array() );
 if ( ! is_multisite() || is_super_admin() || ! empty( $menu_perms['plugins'] ) ) {
 
 $menu_perms = get_site_option( 'menu_items', array() );
 if ( ! is_multisite() || is_super_admin() || ! empty( $menu_perms['plugins'] ) ) {
+       if ( ! isset( $update_data ) )
+               $update_data = wp_get_update_data();
+
        $count = '';
        if ( ! is_multisite() && current_user_can( 'update_plugins' ) )
        $count = '';
        if ( ! is_multisite() && current_user_can( 'update_plugins' ) )
-               $count = "<span class='update-plugins count-$plugin_update_count'><span class='plugin-count'>" . number_format_i18n($plugin_update_count) . "</span></span>";
+               $count = "<span class='update-plugins count-{$update_data['counts']['plugins']}'><span class='plugin-count'>" . number_format_i18n($update_data['counts']['plugins']) . "</span></span>";
 
        $menu[65] = array( sprintf( __('Plugins %s'), $count ), 'activate_plugins', 'plugins.php', '', 'menu-top menu-icon-plugins', 'menu-plugins', 'div' );
 
 
        $menu[65] = array( sprintf( __('Plugins %s'), $count ), 'activate_plugins', 'plugins.php', '', 'menu-top menu-icon-plugins', 'menu-plugins', 'div' );
 
@@ -190,7 +162,7 @@ if ( ! is_multisite() || is_super_admin() || ! empty( $menu_perms['plugins'] ) )
                        $submenu['plugins.php'][15] = array( _x('Editor', 'plugin editor'), 'edit_plugins', 'plugin-editor.php' );
                }
 }
                        $submenu['plugins.php'][15] = array( _x('Editor', 'plugin editor'), 'edit_plugins', 'plugin-editor.php' );
                }
 }
-unset($menu_perms, $update_plugins, $plugin_update_count);
+unset($menu_perms, $update_data);
 
 if ( current_user_can('list_users') )
        $menu[70] = array( __('Users'), 'list_users', 'users.php', '', 'menu-top menu-icon-users', 'menu-users', 'div' );
 
 if ( current_user_can('list_users') )
        $menu[70] = array( __('Users'), 'list_users', 'users.php', '', 'menu-top menu-icon-users', 'menu-users', 'div' );
index 9f5928287d0e9918b61b8b15815a8a17d783b3c1..873b03cf954346fea8d7b1c504f548036ca0d849 100644 (file)
@@ -17,10 +17,7 @@ if ( ! current_user_can('read') )
 
 $action = isset( $_POST['action'] ) ? $_POST['action'] : 'splash';
 
 
 $action = isset( $_POST['action'] ) ? $_POST['action'] : 'splash';
 
-$blogs = get_blogs_of_user( $current_user->id );
-
-if ( empty( $blogs ) )
-       wp_die( __( 'You must be a member of at least one site to use this page.' ) );
+$blogs = get_blogs_of_user( $current_user->ID );
 
 $updated = false;
 if ( 'updateblogsettings' == $action && isset( $_POST['primary_blog'] ) ) {
 
 $updated = false;
 if ( 'updateblogsettings' == $action && isset( $_POST['primary_blog'] ) ) {
@@ -28,7 +25,7 @@ if ( 'updateblogsettings' == $action && isset( $_POST['primary_blog'] ) ) {
 
        $blog = get_blog_details( (int) $_POST['primary_blog'] );
        if ( $blog && isset( $blog->domain ) ) {
 
        $blog = get_blog_details( (int) $_POST['primary_blog'] );
        if ( $blog && isset( $blog->domain ) ) {
-               update_user_option( $current_user->id, 'primary_blog', (int) $_POST['primary_blog'], true );
+               update_user_option( $current_user->ID, 'primary_blog', (int) $_POST['primary_blog'], true );
                $updated = true;
        } else {
                wp_die( __( 'The primary site you chose does not exist.' ) );
                $updated = true;
        } else {
                wp_die( __( 'The primary site you chose does not exist.' ) );
@@ -38,9 +35,15 @@ if ( 'updateblogsettings' == $action && isset( $_POST['primary_blog'] ) ) {
 $title = __( 'My Sites' );
 $parent_file = 'index.php';
 
 $title = __( 'My Sites' );
 $parent_file = 'index.php';
 
-add_contextual_help($current_screen,
-       '<p>' . __('This screen shows an individual user all of their sites in this network, and also allows that user to set a primary site. He or she can use the links under each site to visit either the frontend or the dashboard for that site.') . '</p>' .
-       '<p>' . __('Up until WordPress version 3.0, what is now called a Multi-site Network had to be installed separately as WordPress MU (multi-user).') . '</p>' .
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' =>
+               '<p>' . __('This screen shows an individual user all of their sites in this network, and also allows that user to set a primary site. He or she can use the links under each site to visit either the frontend or the dashboard for that site.') . '</p>' .
+               '<p>' . __('Up until WordPress version 3.0, what is now called a Multisite Network had to be installed separately as WordPress MU (multi-user).') . '</p>'
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Dashboard_My_Sites_Screen" target="_blank">Documentation on My Sites</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Dashboard_My_Sites_Screen" target="_blank">Documentation on My Sites</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
@@ -55,6 +58,13 @@ if ( $updated ) { ?>
 <div class="wrap">
 <?php screen_icon(); ?>
 <h2><?php echo esc_html( $title ); ?></h2>
 <div class="wrap">
 <?php screen_icon(); ?>
 <h2><?php echo esc_html( $title ); ?></h2>
+<?php
+if ( empty( $blogs ) ) :
+       echo '<p>';
+       _e( 'You must be a member of at least one site to use this page.' );
+       echo '</p>';
+else :
+?>
 <form id="myblogs" action="" method="post">
        <?php
        choose_primary_blog();
 <form id="myblogs" action="" method="post">
        <?php
        choose_primary_blog();
@@ -104,6 +114,7 @@ if ( $updated ) { ?>
        <?php wp_nonce_field( 'update-my-sites' ); ?>
        <?php submit_button(); ?>
        </form>
        <?php wp_nonce_field( 'update-my-sites' ); ?>
        <?php submit_button(); ?>
        </form>
+<?php endif; ?>
        </div>
 <?php
 include( './admin-footer.php' );
        </div>
 <?php
 include( './admin-footer.php' );
index 42bfb5b40c914bd9bd08fb83168a22334ceefa85..90a1e873a9f43df5f77e1fd16cc33165fca931f8 100644 (file)
@@ -22,11 +22,7 @@ if ( ! current_theme_supports( 'menus' ) && ! current_theme_supports( 'widgets'
 if ( ! current_user_can('edit_theme_options') )
        wp_die( __( 'Cheatin&#8217; uh?' ) );
 
 if ( ! current_user_can('edit_theme_options') )
        wp_die( __( 'Cheatin&#8217; uh?' ) );
 
-// Nav Menu CSS
-wp_admin_css( 'nav-menu' );
-
 // jQuery
 // jQuery
-wp_enqueue_script( 'jquery' );
 wp_enqueue_script( 'jquery-ui-draggable' );
 wp_enqueue_script( 'jquery-ui-droppable' );
 wp_enqueue_script( 'jquery-ui-sortable' );
 wp_enqueue_script( 'jquery-ui-draggable' );
 wp_enqueue_script( 'jquery-ui-droppable' );
 wp_enqueue_script( 'jquery-ui-sortable' );
@@ -436,12 +432,12 @@ $_wp_nav_menu_max_depth = 0;
 if ( is_nav_menu( $nav_menu_selected_id ) )
        $edit_markup = wp_get_nav_menu_to_edit( $nav_menu_selected_id  );
 
 if ( is_nav_menu( $nav_menu_selected_id ) )
        $edit_markup = wp_get_nav_menu_to_edit( $nav_menu_selected_id  );
 
-function wp_nav_menu_max_depth() {
+function wp_nav_menu_max_depth($classes) {
        global $_wp_nav_menu_max_depth;
        global $_wp_nav_menu_max_depth;
-       return "menu-max-depth-$_wp_nav_menu_max_depth";
+       return "$classes menu-max-depth-$_wp_nav_menu_max_depth";
 }
 
 }
 
-add_action('admin_body_class','wp_nav_menu_max_depth');
+add_filter('admin_body_class', 'wp_nav_menu_max_depth');
 
 wp_nav_menu_setup();
 wp_initial_nav_menu_meta_boxes();
 
 wp_nav_menu_setup();
 wp_initial_nav_menu_meta_boxes();
@@ -449,14 +445,26 @@ wp_initial_nav_menu_meta_boxes();
 if ( ! current_theme_supports( 'menus' ) && ! wp_get_nav_menus() )
        $messages[] = '<div id="message" class="updated"><p>' . __('The current theme does not natively support menus, but you can use the &#8220;Custom Menu&#8221; widget to add any menus you create here to the theme&#8217;s sidebar.') . '</p></div>';
 
 if ( ! current_theme_supports( 'menus' ) && ! wp_get_nav_menus() )
        $messages[] = '<div id="message" class="updated"><p>' . __('The current theme does not natively support menus, but you can use the &#8220;Custom Menu&#8221; widget to add any menus you create here to the theme&#8217;s sidebar.') . '</p></div>';
 
-$help =  '<p>' . __('This feature allows you to use a custom menu in place of your theme&#8217;s default menus. If your theme does not support the custom menus feature yet (the new and old default themes, Twenty Eleven and Twenty Ten, do), you can learn about adding this support by following the Documentation link in this tab. You can still use the &#8220;Custom Menu&#8221; widget to add menus to a sidebar.') . '</p>';
-$help .= '<p>' . __('You can create custom menus for your site. These menus may contain links to pages, categories, custom links or other content types (use the Screen Options tab to decide which ones to show on the screen). You can specify a different navigation label for a menu item as well as other attributes. You can create multiple menus. If your theme includes more than one menu, you can choose which custom menu to associate with each. You can also use custom menus in conjunction with the Custom Menus widget.') . '</p>';
-$help .= '<p>' . __('To create a new custom menu, click on the + tab, give the menu a name, and click Create Menu. Next, add menu items from the appropriate boxes. You&#8217;ll be able to edit the information for each menu item, and can drag and drop to put them in order. You can also drag a menu item a little to the right to make it a submenu, to create menus with hierarchy. Drop the item into its new nested placement when the dotted rectangle target shifts over, also a little to the right. Don&#8217;t forget to click Save when you&#8217;re finished.') . '</p>';
-$help .= '<p><strong>' . __('For more information:') . '</strong></p>';
-$help .= '<p>' . __('<a href="http://codex.wordpress.org/Appearance_Menus_Screen" target="_blank">Documentation on Menus</a>') . '</p>';
-$help .= '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>';
-
-add_contextual_help($current_screen, $help);
+get_current_screen()->add_help_tab( array(
+'id'           => 'overview',
+'title'                => __('Overview'),
+'content'      =>
+       '<p>' . __('This feature allows you to use a custom menu in place of your theme&#8217;s default menus.') . '</p>' .
+       '<p>' . __('Custom menus may contain links to pages, categories, custom links or other content types (use the Screen Options tab to decide which ones to show on the screen). You can specify a different navigation label for a menu item as well as other attributes. You can create multiple menus. If your theme includes more than one menu, you can choose which custom menu to associate with each. You can also use custom menus in conjunction with the Custom Menus widget.') . '</p>' .
+       '<p>' . __('If your theme does not support the custom menus feature yet (the default themes, Twenty Eleven and Twenty Ten, do), you can learn about adding this support by following the Documentation link to the side.') . '</p>'
+) );
+get_current_screen()->add_help_tab( array(
+'id'           => 'create-menus',
+'title'                => __('Create Menus'),
+'content'      =>
+       '<p>' . __('To create a new custom menu, click on the + tab, give the menu a name, and click Create Menu. Next, add menu items from the appropriate boxes. You&#8217;ll be able to edit the information for each menu item, and can drag and drop to put them in order. You can also drag a menu item a little to the right to make it a submenu, to create menus with hierarchy. Drop the item into its new nested placement when the dotted rectangle target shifts over, also a little to the right. Don&#8217;t forget to click Save when you&#8217;re finished.') . '</p>'
+) );
+
+get_current_screen()->set_help_sidebar(
+       '<p><strong>' . __('For more information:') . '</strong></p>' .
+       '<p>' . __('<a href="http://codex.wordpress.org/Appearance_Menus_Screen" target="_blank">Documentation on Menus</a>') . '</p>' .
+       '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
+);
 
 // Get the admin header
 require_once( './admin-header.php' );
 
 // Get the admin header
 require_once( './admin-header.php' );
index 6f259acfe1fa3b62a3525a38f7efb97d543d1600..a3b09e8182ec0bf15627c9e3cc69e78f9e138a74 100644 (file)
@@ -10,7 +10,7 @@
  * @subpackage Administration
  */
 
  * @subpackage Administration
  */
 
-define( 'WP_NETWORK_ADMIN_PAGE', true );
+define( 'WP_INSTALLING_NETWORK', true );
 
 /** WordPress Administration Bootstrap */
 require_once( './admin.php' );
 
 /** WordPress Administration Bootstrap */
 require_once( './admin.php' );
@@ -103,13 +103,23 @@ if ( is_network_admin() ) {
        $parent_file = 'tools.php';
 }
 
        $parent_file = 'tools.php';
 }
 
-add_contextual_help($current_screen,
-       '<p>' . __('This screen allows you to configure a network as having subdomains (<code>site1.example.com</code>) or subdirectories (<code>example.com/site1</code>). Subdomains require wildcard subdomains to be enabled in Apache and DNS records, if your host allows it.') . '</p>' .
+$network_help = '<p>' . __('This screen allows you to configure a network as having subdomains (<code>site1.example.com</code>) or subdirectories (<code>example.com/site1</code>). Subdomains require wildcard subdomains to be enabled in Apache and DNS records, if your host allows it.') . '</p>' .
        '<p>' . __('Choose subdomains or subdirectories; this can only be switched afterwards by reconfiguring your install. Fill out the network details, and click install. If this does not work, you may have to add a wildcard DNS record (for subdomains) or change to another setting in Permalinks (for subdirectories).') . '</p>' .
        '<p>' . __('The next screen for Network Setup will give you individually-generated lines of code to add to your wp-config.php and .htaccess files. Make sure the settings of your FTP client make files starting with a dot visible, so that you can find .htaccess; you may have to create this file if it really is not there. Make backup copies of those two files.') . '</p>' .
        '<p>' . __('Add a <code>blogs.dir</code> directory under <code>/wp-content</code> and add the designated lines of code to wp-config.php (just before <code>/*...stop editing...*/</code>) and <code>.htaccess</code> (replacing the existing WordPress rules).') . '</p>' .
        '<p>' . __('Choose subdomains or subdirectories; this can only be switched afterwards by reconfiguring your install. Fill out the network details, and click install. If this does not work, you may have to add a wildcard DNS record (for subdomains) or change to another setting in Permalinks (for subdirectories).') . '</p>' .
        '<p>' . __('The next screen for Network Setup will give you individually-generated lines of code to add to your wp-config.php and .htaccess files. Make sure the settings of your FTP client make files starting with a dot visible, so that you can find .htaccess; you may have to create this file if it really is not there. Make backup copies of those two files.') . '</p>' .
        '<p>' . __('Add a <code>blogs.dir</code> directory under <code>/wp-content</code> and add the designated lines of code to wp-config.php (just before <code>/*...stop editing...*/</code>) and <code>.htaccess</code> (replacing the existing WordPress rules).') . '</p>' .
-       '<p>' . __('Once you add this code and refresh your browser, multisite should be enabled. This screen will keep an archive of the added code. You can toggle between Network Admin and Site Admin by clicking on the Howdy (Username) dropdown in the upper right of the administration area.') . '</p>' .
-       '<p>' . __('The choice of subdirectory sites is disabled if this setup is more than a month old because of permalink problems with &#8220;/blog/&#8221; from the main site. This disabling will be addressed soon in a future version.') . '</p>' .
+       '<p>' . __('Once you add this code and refresh your browser, multisite should be enabled. This screen, now in the Network Admin navigation menu, will keep an archive of the added code. You can toggle between Network Admin and Site Admin by clicking on the Network Admin or an individual site name under the My Sites dropdown in the Toolbar.') . '</p>' .
+       '<p>' . __('The choice of subdirectory sites is disabled if this setup is more than a month old because of permalink problems with &#8220;/blog/&#8221; from the main site. This disabling will be addressed in a future version.') . '</p>' .
+       '<p><strong>' . __('For more information:') . '</strong></p>' .
+       '<p>' . __('<a href="http://codex.wordpress.org/Create_A_Network" target="_blank">Documentation on Creating a Network</a>') . '</p>' .
+       '<p>' . __('<a href="http://codex.wordpress.org/Tools_Network_Screen" target="_blank">Documentation on the Network Screen</a>') . '</p>';
+
+get_current_screen()->add_help_tab( array(
+       'id'      => 'network',
+       'title'   => __('Network'),
+       'content' => $network_help,
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Create_A_Network" target="_blank">Documentation on Creating a Network</a>') . '</p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Tools_Network_Screen" target="_blank">Documentation on the Network Screen</a>') . '</p>' .
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Create_A_Network" target="_blank">Documentation on Creating a Network</a>') . '</p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Tools_Network_Screen" target="_blank">Documentation on the Network Screen</a>') . '</p>' .
@@ -135,14 +145,14 @@ function network_step1( $errors = false ) {
        global $is_apache;
 
        if ( get_option( 'siteurl' ) != get_option( 'home' ) ) {
        global $is_apache;
 
        if ( get_option( 'siteurl' ) != get_option( 'home' ) ) {
-               echo '<div class="error"><p><strong>' . __('Error:') . '</strong> ' . sprintf( __( 'Your <strong>WordPress address</strong> must match your <strong>Site address</strong> before creating a Network. See <a href="%s">General Settings</a>.' ), esc_url( admin_url( 'options-general.php' ) ) ) . '</p></div>';
+               echo '<div class="error"><p><strong>' . __('ERROR:') . '</strong> ' . sprintf( __( 'Your <strong>WordPress address</strong> must match your <strong>Site address</strong> before creating a Network. See <a href="%s">General Settings</a>.' ), esc_url( admin_url( 'options-general.php' ) ) ) . '</p></div>';
                echo '</div>';
                include ( ABSPATH . 'wp-admin/admin-footer.php' );
                die();
        }
 
        if ( defined('DO_NOT_UPGRADE_GLOBAL_TABLES') ) {
                echo '</div>';
                include ( ABSPATH . 'wp-admin/admin-footer.php' );
                die();
        }
 
        if ( defined('DO_NOT_UPGRADE_GLOBAL_TABLES') ) {
-               echo '<div class="error"><p><strong>' . __('Error:') . '</strong> ' . __( 'The constant DO_NOT_UPGRADE_GLOBAL_TABLES cannot be defined when creating a network.' ) . '</p></div>';
+               echo '<div class="error"><p><strong>' . __('ERROR:') . '</strong> ' . __( 'The constant DO_NOT_UPGRADE_GLOBAL_TABLES cannot be defined when creating a network.' ) . '</p></div>';
                echo '</div>';
                include ( ABSPATH . 'wp-admin/admin-footer.php' );
                die();
                echo '</div>';
                include ( ABSPATH . 'wp-admin/admin-footer.php' );
                die();
@@ -159,7 +169,7 @@ function network_step1( $errors = false ) {
        $hostname = get_clean_basedomain();
        $has_ports = strstr( $hostname, ':' );
        if ( ( false !== $has_ports && ! in_array( $has_ports, array( ':80', ':443' ) ) ) ) {
        $hostname = get_clean_basedomain();
        $has_ports = strstr( $hostname, ':' );
        if ( ( false !== $has_ports && ! in_array( $has_ports, array( ':80', ':443' ) ) ) ) {
-               echo '<div class="error"><p><strong>' . __( 'Error:') . '</strong> ' . __( 'You cannot install a network of sites with your server address.' ) . '</p></div>';
+               echo '<div class="error"><p><strong>' . __( 'ERROR:') . '</strong> ' . __( 'You cannot install a network of sites with your server address.' ) . '</p></div>';
                echo '<p>' . sprintf( __( 'You cannot use port numbers such as <code>%s</code>.' ), $has_ports ) . '</p>';
                echo '<a href="' . esc_url( admin_url() ) . '">' . __( 'Return to Dashboard' ) . '</a>';
                echo '</div>';
                echo '<p>' . sprintf( __( 'You cannot use port numbers such as <code>%s</code>.' ), $has_ports ) . '</p>';
                echo '<a href="' . esc_url( admin_url() ) . '">' . __( 'Return to Dashboard' ) . '</a>';
                echo '</div>';
@@ -229,7 +239,7 @@ function network_step1( $errors = false ) {
                if ( $is_www ) :
                ?>
                <h3><?php esc_html_e( 'Server Address' ); ?></h3>
                if ( $is_www ) :
                ?>
                <h3><?php esc_html_e( 'Server Address' ); ?></h3>
-               <p><?php printf( __( 'We recommend you change your siteurl to <code>%1$s</code> before enabling the network feature. It will still be possible to visit your site using the <code>www</code> prefix with an address like <code>%2$s</code> but any links will not have the <code>www</code> prefix.' ), substr( $hostname, 4 ), $hostname ); ?></h3>
+               <p><?php printf( __( 'We recommend you change your siteurl to <code>%1$s</code> before enabling the network feature. It will still be possible to visit your site using the <code>www</code> prefix with an address like <code>%2$s</code> but any links will not have the <code>www</code> prefix.' ), substr( $hostname, 4 ), $hostname ); ?></p>
                <table class="form-table">
                        <tr>
                                <th scope='row'><?php esc_html_e( 'Server Address' ); ?></th>
                <table class="form-table">
                        <tr>
                                <th scope='row'><?php esc_html_e( 'Server Address' ); ?></th>
@@ -353,7 +363,7 @@ function network_step2( $errors = false ) {
                        <li><p><?php
                                printf( __( 'Create a <code>blogs.dir</code> directory at <code>%s/blogs.dir</code>. This directory is used to store uploaded media for your additional sites and must be writeable by the web server.' ), WP_CONTENT_DIR );
                                if ( WP_CONTENT_DIR != ABSPATH . 'wp-content' )
                        <li><p><?php
                                printf( __( 'Create a <code>blogs.dir</code> directory at <code>%s/blogs.dir</code>. This directory is used to store uploaded media for your additional sites and must be writeable by the web server.' ), WP_CONTENT_DIR );
                                if ( WP_CONTENT_DIR != ABSPATH . 'wp-content' )
-                                       echo ' <strong>' . __('Warning:') . ' ' . __( 'Networks may not be fully compatible with custom wp-content directories.' ) . '</strong';
+                                       echo ' <strong>' . __('Warning:') . ' ' . __( 'Networks may not be fully compatible with custom wp-content directories.' ) . '</strong>';
                        ?></p></li>
                        <li><p><?php printf( __( 'Add the following to your <code>wp-config.php</code> file in <code>%s</code> <strong>above</strong> the line reading <code>/* That&#8217;s all, stop editing! Happy blogging. */</code>:' ), ABSPATH ); ?></p>
                                <textarea class="code" readonly="readonly" cols="100" rows="7">
                        ?></p></li>
                        <li><p><?php printf( __( 'Add the following to your <code>wp-config.php</code> file in <code>%s</code> <strong>above</strong> the line reading <code>/* That&#8217;s all, stop editing! Happy blogging. */</code>:' ), ABSPATH ); ?></p>
                                <textarea class="code" readonly="readonly" cols="100" rows="7">
@@ -455,7 +465,7 @@ define( 'BLOG_ID_CURRENT_SITE', 1 );</textarea>
                 </rule>
                 <rule name="WordPress Rule 5" stopProcessing="true">
                     <match url="^[_0-9a-zA-Z-]+/(wp-(content|admin|includes).*)" ignoreCase="false" />
                 </rule>
                 <rule name="WordPress Rule 5" stopProcessing="true">
                     <match url="^[_0-9a-zA-Z-]+/(wp-(content|admin|includes).*)" ignoreCase="false" />
-                    <action type="Rewrite" url="{R:2}" />
+                    <action type="Rewrite" url="{R:1}" />
                 </rule>
                 <rule name="WordPress Rule 6" stopProcessing="true">
                     <match url="^([_0-9a-zA-Z-]+/)?(.*\.php)$" ignoreCase="false" />
                 </rule>
                 <rule name="WordPress Rule 6" stopProcessing="true">
                     <match url="^([_0-9a-zA-Z-]+/)?(.*\.php)$" ignoreCase="false" />
@@ -523,7 +533,7 @@ if ( $_POST ) {
        // create network tables
        install_network();
        $hostname = get_clean_basedomain();
        // create network tables
        install_network();
        $hostname = get_clean_basedomain();
-       $subdomain_install = !allow_subdomain_install() ? false : (bool) $_POST['subdomain_install'];
+       $subdomain_install = allow_subdomain_install() ? !empty( $_POST['subdomain_install'] ) : false;
        if ( ! network_domain_check() ) {
                $result = populate_network( 1, get_clean_basedomain(), sanitize_email( $_POST['email'] ), stripslashes( $_POST['sitename'] ), $base, $subdomain_install );
                if ( is_wp_error( $result ) ) {
        if ( ! network_domain_check() ) {
                $result = populate_network( 1, get_clean_basedomain(), sanitize_email( $_POST['email'] ), stripslashes( $_POST['sitename'] ), $base, $subdomain_install );
                if ( is_wp_error( $result ) ) {
index 2d3f9522686cbca25a9da25d68f60ba54179c9a0..5ccba2a0c7c8303a4dcc0805c796f44b93c9a533 100644 (file)
@@ -14,469 +14,16 @@ if ( ! is_multisite() )
        wp_die( __( 'Multisite support is not enabled.' ) );
 
 if ( empty( $_GET['action'] ) ) {
        wp_die( __( 'Multisite support is not enabled.' ) );
 
 if ( empty( $_GET['action'] ) ) {
-       wp_redirect( admin_url( 'index.php' ) );
+       wp_redirect( network_admin_url() );
        exit;
 }
 
        exit;
 }
 
-function confirm_delete_users( $users ) {
-       $current_user = wp_get_current_user();
-       if ( !is_array( $users ) )
-               return false;
+do_action( 'wpmuadminedit' , '' );
 
 
-       screen_icon();
-       ?>
-       <h2><?php esc_html_e( 'Users' ); ?></h2>
-       <p><?php _e( 'Transfer or delete posts and links before deleting users.' ); ?></p>
-       <form action="edit.php?action=dodelete" method="post">
-       <input type="hidden" name="dodelete" />
-       <?php
-       wp_nonce_field( 'ms-users-delete' );
-       $site_admins = get_super_admins();
-       $admin_out = "<option value='$current_user->ID'>$current_user->user_login</option>";
+// Let plugins use us as a post handler easily
+do_action( 'network_admin_edit_' . $_GET['action'] );
 
 
-       foreach ( ( $allusers = (array) $_POST['allusers'] ) as $key => $val ) {
-               if ( $val != '' && $val != '0' ) {
-                       $delete_user = new WP_User( $val );
+wp_redirect( network_admin_url() );
+exit();
 
 
-                       if ( ! current_user_can( 'delete_user', $delete_user->ID ) )
-                               wp_die( sprintf( __( 'Warning! User %s cannot be deleted.' ), $delete_user->user_login ) );
-
-                       if ( in_array( $delete_user->user_login, $site_admins ) )
-                               wp_die( sprintf( __( 'Warning! User cannot be deleted. The user %s is a network admnistrator.' ), $delete_user->user_login ) );
-
-                       echo "<input type='hidden' name='user[]' value='{$val}'/>\n";
-                       $blogs = get_blogs_of_user( $val, true );
-
-                       if ( !empty( $blogs ) ) {
-                               ?>
-                               <br /><fieldset><p><legend><?php printf( __( "What should be done with posts and links owned by <em>%s</em>?" ), $delete_user->user_login ); ?></legend></p>
-                               <?php
-                               foreach ( (array) $blogs as $key => $details ) {
-                                       $blog_users = get_users( array( 'blog_id' => $details->userblog_id ) );
-                                       if ( is_array( $blog_users ) && !empty( $blog_users ) ) {
-                                               $user_site = "<a href='" . esc_url( get_home_url( $details->userblog_id ) ) . "'>{$details->blogname}</a>";
-                                               $user_dropdown = "<select name='blog[$val][{$key}]'>";
-                                               $user_list = '';
-                                               foreach ( $blog_users as $user ) {
-                                                       if ( ! in_array( $user->ID, $allusers ) )
-                                                               $user_list .= "<option value='{$user->ID}'>{$user->user_login}</option>";
-                                               }
-                                               if ( '' == $user_list )
-                                                       $user_list = $admin_out;
-                                               $user_dropdown .= $user_list;
-                                               $user_dropdown .= "</select>\n";
-                                               ?>
-                                               <ul style="list-style:none;">
-                                                       <li><?php printf( __( 'Site: %s' ), $user_site ); ?></li>
-                                                       <li><label><input type="radio" id="delete_option0" name="delete[<?php echo $details->userblog_id . '][' . $delete_user->ID ?>]" value="delete" checked="checked" />
-                                                       <?php _e( 'Delete all posts and links.' ); ?></label></li>
-                                                       <li><label><input type="radio" id="delete_option1" name="delete[<?php echo $details->userblog_id . '][' . $delete_user->ID ?>]" value="reassign" />
-                                                       <?php echo __( 'Attribute all posts and links to:' ) . '</label>' . $user_dropdown; ?></li>
-                                               </ul>
-                                               <?php
-                                       }
-                               }
-                               echo "</fieldset>";
-                       }
-               }
-       }
-
-       submit_button( __('Confirm Deletion'), 'delete' );
-       ?>
-       </form>
-    <?php
-       return true;
-}
-
-do_action( 'wpmuadminedit' , '');
-
-if ( isset( $_GET['id' ]) )
-       $id = intval( $_GET['id'] );
-elseif ( isset( $_POST['id'] ) )
-       $id = intval( $_POST['id'] );
-
-switch ( $_GET['action'] ) {
-       case 'siteoptions':
-               check_admin_referer( 'siteoptions' );
-               if ( ! current_user_can( 'manage_network_options' ) )
-                       wp_die( __( 'You do not have permission to access this page.' ) );
-
-               if ( empty( $_POST ) )
-                       wp_die( sprintf( __( 'You probably need to go back to the <a href="%s">options page</a>.' ), esc_url( admin_url( 'settings.php' ) ) ) );
-
-               if ( isset($_POST['WPLANG']) && ( '' === $_POST['WPLANG'] || in_array( $_POST['WPLANG'], get_available_languages() ) ) )
-                       update_site_option( 'WPLANG', $_POST['WPLANG'] );
-
-               if ( is_email( $_POST['admin_email'] ) )
-                       update_site_option( 'admin_email', $_POST['admin_email'] );
-
-               $illegal_names = split( ' ', $_POST['illegal_names'] );
-               foreach ( (array) $illegal_names as $name ) {
-                       $name = trim( $name );
-                       if ( $name != '' )
-                               $names[] = trim( $name );
-               }
-               update_site_option( 'illegal_names', $names );
-
-               if ( $_POST['limited_email_domains'] != '' ) {
-                       $limited_email_domains = str_replace( ' ', "\n", $_POST['limited_email_domains'] );
-                       $limited_email_domains = split( "\n", stripslashes( $limited_email_domains ) );
-                       $limited_email = array();
-                       foreach ( (array) $limited_email_domains as $domain ) {
-                                       $domain = trim( $domain );
-                               if ( ! preg_match( '/(--|\.\.)/', $domain ) && preg_match( '|^([a-zA-Z0-9-\.])+$|', $domain ) )
-                                       $limited_email[] = trim( $domain );
-                       }
-                       update_site_option( 'limited_email_domains', $limited_email );
-               } else {
-                       update_site_option( 'limited_email_domains', '' );
-               }
-
-               if ( $_POST['banned_email_domains'] != '' ) {
-                       $banned_email_domains = split( "\n", stripslashes( $_POST['banned_email_domains'] ) );
-                       $banned = array();
-                       foreach ( (array) $banned_email_domains as $domain ) {
-                               $domain = trim( $domain );
-                               if ( ! preg_match( '/(--|\.\.)/', $domain ) && preg_match( '|^([a-zA-Z0-9-\.])+$|', $domain ) )
-                                       $banned[] = trim( $domain );
-                       }
-                       update_site_option( 'banned_email_domains', $banned );
-               } else {
-                       update_site_option( 'banned_email_domains', '' );
-               }
-
-               $options = array( 'registrationnotification', 'registration', 'add_new_users', 'menu_items', 'mu_media_buttons', 'upload_space_check_disabled', 'blog_upload_space', 'upload_filetypes', 'site_name', 'first_post', 'first_page', 'first_comment', 'first_comment_url', 'first_comment_author', 'welcome_email', 'welcome_user_email', 'fileupload_maxk', 'global_terms_enabled' );
-               $checked_options = array( 'mu_media_buttons' => array(), 'menu_items' => array(), 'registrationnotification' => 'no', 'upload_space_check_disabled' => 1, 'add_new_users' => 0 );
-               foreach ( $checked_options as $option_name => $option_unchecked_value ) {
-                       if ( ! isset( $_POST[$option_name] ) )
-                               $_POST[$option_name] = $option_unchecked_value;
-               }
-               foreach ( $options as $option_name ) {
-                       if ( ! isset($_POST[$option_name]) )
-                               continue;
-                       $value = stripslashes_deep( $_POST[$option_name] );
-                       update_site_option( $option_name, $value );
-               }
-
-               // Update more options here
-               do_action( 'update_wpmu_options' );
-
-               wp_redirect( add_query_arg( 'updated', 'true', network_admin_url( 'settings.php' ) ) );
-               exit();
-       break;
-
-       case 'updateblog':
-               // No longer used.
-       break;
-
-       case 'deleteblog':
-               check_admin_referer('deleteblog');
-               if ( ! ( current_user_can( 'manage_sites' ) && current_user_can( 'delete_sites' ) ) )
-                       wp_die( __( 'You do not have permission to access this page.' ) );
-
-               if ( $id != '0' && $id != $current_site->blog_id && current_user_can( 'delete_site', $id ) ) {
-                       wpmu_delete_blog( $id, true );
-                       wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'delete' ), wp_get_referer() ) );
-               } else {
-                       wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'not_deleted' ), wp_get_referer() ) );
-               }
-
-               exit();
-       break;
-
-       case 'allblogs':
-               if ( ( isset( $_POST['action'] ) || isset( $_POST['action2'] ) ) && isset( $_POST['allblogs'] ) ) {
-                       check_admin_referer( 'bulk-sites' );
-
-                       if ( ! current_user_can( 'manage_sites' ) )
-                               wp_die( __( 'You do not have permission to access this page.' ) );
-
-                       if ( $_GET['action'] != -1 || $_POST['action2'] != -1 )
-                               $doaction = $_POST['action'] != -1 ? $_POST['action'] : $_POST['action2'];
-
-                       $blogfunction = '';
-
-                       foreach ( (array) $_POST['allblogs'] as $key => $val ) {
-                               if ( $val != '0' && $val != $current_site->blog_id ) {
-                                       switch ( $doaction ) {
-                                               case 'delete':
-                                                       if ( ! current_user_can( 'delete_site', $val ) )
-                                                               wp_die( __( 'You are not allowed to delete the site.' ) );
-                                                       $blogfunction = 'all_delete';
-                                                       wpmu_delete_blog( $val, true );
-                                               break;
-
-                                               case 'spam':
-                                                       $blogfunction = 'all_spam';
-                                                       update_blog_status( $val, 'spam', '1' );
-                                                       set_time_limit( 60 );
-                                               break;
-
-                                               case 'notspam':
-                                                       $blogfunction = 'all_notspam';
-                                                       update_blog_status( $val, 'spam', '0' );
-                                                       set_time_limit( 60 );
-                                               break;
-                                       }
-                               } else {
-                                       wp_die( __( 'You are not allowed to change the current site.' ) );
-                               }
-                       }
-
-                       wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => $blogfunction ), wp_get_referer() ) );
-               } else {
-                       wp_redirect( network_admin_url( 'sites.php' ) );
-               }
-               exit();
-       break;
-
-       case 'archiveblog':
-               check_admin_referer( 'archiveblog' );
-               if ( ! current_user_can( 'manage_sites' ) )
-                       wp_die( __( 'You do not have permission to access this page.' ) );
-
-               update_blog_status( $id, 'archived', '1' );
-               wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'archive' ), wp_get_referer() ) );
-               exit();
-       break;
-
-       case 'unarchiveblog':
-               check_admin_referer( 'unarchiveblog' );
-               if ( ! current_user_can( 'manage_sites' ) )
-                       wp_die( __( 'You do not have permission to access this page.' ) );
-
-               update_blog_status( $id, 'archived', '0' );
-               wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'unarchive' ), wp_get_referer() ) );
-               exit();
-       break;
-
-       case 'activateblog':
-               check_admin_referer( 'activateblog' );
-               if ( ! current_user_can( 'manage_sites' ) )
-                       wp_die( __( 'You do not have permission to access this page.' ) );
-
-               update_blog_status( $id, 'deleted', '0' );
-               do_action( 'activate_blog', $id );
-               wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'activate' ), wp_get_referer() ) );
-               exit();
-       break;
-
-       case 'deactivateblog':
-               check_admin_referer( 'deactivateblog' );
-               if ( ! current_user_can( 'manage_sites' ) )
-                       wp_die( __( 'You do not have permission to access this page.' ) );
-
-               do_action( 'deactivate_blog', $id );
-               update_blog_status( $id, 'deleted', '1' );
-               wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'deactivate' ), wp_get_referer() ) );
-               exit();
-       break;
-
-       case 'unspamblog':
-               check_admin_referer( 'unspamblog' );
-               if ( ! current_user_can( 'manage_sites' ) )
-                       wp_die( __( 'You do not have permission to access this page.' ) );
-
-               update_blog_status( $id, 'spam', '0' );
-               wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'unspam' ), wp_get_referer() ) );
-               exit();
-       break;
-
-       case 'spamblog':
-               check_admin_referer( 'spamblog' );
-               if ( ! current_user_can( 'manage_sites' ) )
-                       wp_die( __( 'You do not have permission to access this page.' ) );
-
-               update_blog_status( $id, 'spam', '1' );
-               wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'spam' ), wp_get_referer() ) );
-               exit();
-       break;
-
-       case 'unmatureblog':
-               check_admin_referer( 'unmatureblog' );
-               if ( ! current_user_can( 'manage_sites' ) )
-                       wp_die( __( 'You do not have permission to access this page.' ) );
-
-               update_blog_status( $id, 'mature', '0' );
-               wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'unmature' ), wp_get_referer() ) );
-               exit();
-       break;
-
-       case 'matureblog':
-               check_admin_referer( 'matureblog' );
-               if ( ! current_user_can( 'manage_sites' ) )
-                       wp_die( __( 'You do not have permission to access this page.' ) );
-
-               update_blog_status( $id, 'mature', '1' );
-               wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'mature' ), wp_get_referer() ) );
-               exit();
-       break;
-
-       // Common
-       case 'confirm':
-               check_admin_referer( 'confirm' );
-               if ( !headers_sent() ) {
-                       nocache_headers();
-                       header( 'Content-Type: text/html; charset=utf-8' );
-               }
-               if ( $current_site->blog_id == $id )
-                       wp_die( __( 'You are not allowed to change the current site.' ) );
-               ?>
-               <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-               <html xmlns="http://www.w3.org/1999/xhtml" <?php if ( function_exists( 'language_attributes' ) ) language_attributes(); ?>>
-                       <head>
-                               <title><?php _e( 'WordPress &rsaquo; Confirm your action' ); ?></title>
-
-                               <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-                               <?php
-                               wp_admin_css( 'install', true );
-                               wp_admin_css( 'ie', true );
-                               ?>
-                       </head>
-                       <body>
-                               <h1 id="logo"><img alt="WordPress" src="<?php echo esc_attr( admin_url( 'images/wordpress-logo.png' ) ); ?>" /></h1>
-                               <form action="edit.php?action=<?php echo esc_attr( $_GET['action2'] ) ?>" method="post">
-                                       <input type="hidden" name="action" value="<?php echo esc_attr( $_GET['action2'] ) ?>" />
-                                       <input type="hidden" name="id" value="<?php echo esc_attr( $id ); ?>" />
-                                       <input type="hidden" name="_wp_http_referer" value="<?php echo esc_attr( wp_get_referer() ); ?>" />
-                                       <?php wp_nonce_field( $_GET['action2'], '_wpnonce', false ); ?>
-                                       <p><?php echo esc_html( stripslashes( $_GET['msg'] ) ); ?></p>
-                                       <?php submit_button( __('Confirm'), 'button' ); ?>
-                               </form>
-                       </body>
-               </html>
-               <?php
-               exit();
-       break;
-
-       // Users
-       case 'deleteuser':
-               if ( ! current_user_can( 'manage_network_users' ) )
-                       wp_die( __( 'You do not have permission to access this page.' ) );
-
-               check_admin_referer( 'deleteuser' );
-
-               if ( $id != '0' && $id != '1' ) {
-                       $_POST['allusers'] = array( $id ); // confirm_delete_users() can only handle with arrays
-                       $title = __( 'Users' );
-                       $parent_file = 'users.php';
-                       require_once( '../admin-header.php' );
-                       echo '<div class="wrap">';
-                       confirm_delete_users( $_POST['allusers'] );
-                       echo '</div>';
-            require_once( '../admin-footer.php' );
-               } else {
-                       wp_redirect( network_admin_url( 'users.php' ) );
-               }
-               exit();
-       break;
-
-       case 'allusers':
-               if ( !current_user_can( 'manage_network_users' ) )
-                       wp_die( __( 'You do not have permission to access this page.' ) );
-
-               if ( ( isset( $_POST['action']) || isset($_POST['action2'] ) ) && isset( $_POST['allusers'] ) ) {
-                       check_admin_referer( 'bulk-users-network' );
-
-                       if ( $_GET['action'] != -1 || $_POST['action2'] != -1 )
-                               $doaction = $_POST['action'] != -1 ? $_POST['action'] : $_POST['action2'];
-
-                       $userfunction = '';
-
-                       foreach ( (array) $_POST['allusers'] as $key => $val ) {
-                               if ( !empty( $val ) ) {
-                                       switch ( $doaction ) {
-                                               case 'delete':
-                                                       if ( ! current_user_can( 'delete_users' ) )
-                                                               wp_die( __( 'You do not have permission to access this page.' ) );
-                                                       $title = __( 'Users' );
-                                                       $parent_file = 'users.php';
-                                                       require_once( '../admin-header.php' );
-                                                       echo '<div class="wrap">';
-                                                       confirm_delete_users( $_POST['allusers'] );
-                                                       echo '</div>';
-                                           require_once( '../admin-footer.php' );
-                                           exit();
-                                               break;
-
-                                               case 'spam':
-                                                       $user = new WP_User( $val );
-                                                       if ( in_array( $user->user_login, get_super_admins() ) )
-                                                               wp_die( sprintf( __( 'Warning! User cannot be modified. The user %s is a network administrator.' ), esc_html( $user->user_login ) ) );
-
-                                                       $userfunction = 'all_spam';
-                                                       $blogs = get_blogs_of_user( $val, true );
-                                                       foreach ( (array) $blogs as $key => $details ) {
-                                                               if ( $details->userblog_id != $current_site->blog_id ) // main blog not a spam !
-                                                                       update_blog_status( $details->userblog_id, 'spam', '1' );
-                                                       }
-                                                       update_user_status( $val, 'spam', '1' );
-                                               break;
-
-                                               case 'notspam':
-                                                       $userfunction = 'all_notspam';
-                                                       $blogs = get_blogs_of_user( $val, true );
-                                                       foreach ( (array) $blogs as $key => $details )
-                                                               update_blog_status( $details->userblog_id, 'spam', '0' );
-
-                                                       update_user_status( $val, 'spam', '0' );
-                                               break;
-                                       }
-                               }
-                       }
-
-                       wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => $userfunction ), wp_get_referer() ) );
-               } else {
-                       $location = network_admin_url( 'users.php' );
-
-                       if ( ! empty( $_REQUEST['paged'] ) )
-                               $location = add_query_arg( 'paged', (int) $_REQUEST['paged'], $location );
-                       wp_redirect( $location );
-               }
-               exit();
-       break;
-
-       case 'dodelete':
-               check_admin_referer( 'ms-users-delete' );
-               if ( ! ( current_user_can( 'manage_network_users' ) && current_user_can( 'delete_users' ) ) )
-                       wp_die( __( 'You do not have permission to access this page.' ) );
-
-               if ( ! empty( $_POST['blog'] ) && is_array( $_POST['blog'] ) ) {
-                       foreach ( $_POST['blog'] as $id => $users ) {
-                               foreach ( $users as $blogid => $user_id ) {
-                                       if ( ! current_user_can( 'delete_user', $id ) )
-                                               continue;
-
-                                       if ( ! empty( $_POST['delete'] ) && 'reassign' == $_POST['delete'][$blogid][$id] )
-                                               remove_user_from_blog( $id, $blogid, $user_id );
-                                       else
-                                               remove_user_from_blog( $id, $blogid );
-                               }
-                       }
-               }
-               $i = 0;
-               if ( is_array( $_POST['user'] ) && ! empty( $_POST['user'] ) )
-                       foreach( $_POST['user'] as $id ) {
-                               if ( ! current_user_can( 'delete_user', $id ) )
-                                       continue;
-                               wpmu_delete_user( $id );
-                               $i++;
-                       }
-
-               if ( $i == 1 )
-                       $deletefunction = 'delete';
-               else
-                       $deletefunction = 'all_delete';
-
-               wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => $deletefunction ), network_admin_url( 'users.php' ) ) );
-               exit();
-       break;
-
-       default:
-               // Let plugins use us as a post handler easily
-               do_action( 'network_admin_edit_' . $_GET['action'] );
-               wp_redirect( network_admin_url( 'index.php' ) );
-               exit();
-       break;
-}
 ?>
 ?>
index 3ab39317c70cfc8efee8e46bdda026f5b25afc95..d2875f3e83fa3d71c4dd82dd8d2d3a3517a67ea6 100644 (file)
@@ -22,11 +22,17 @@ if ( ! current_user_can( 'manage_network' ) )
 $title = __( 'Dashboard' );
 $parent_file = 'index.php';
 
 $title = __( 'Dashboard' );
 $parent_file = 'index.php';
 
-add_contextual_help($current_screen,
-       '<p>' . __('Until WordPress 3.0, running multiple sites required using WordPress MU instead of regular WordPress. In version 3.0, these applications have merged. If you are a former MU user, you should be aware of the following changes:') . '</p>' .
-       '<ul><li>' . __('Site Admin is now Super Admin (we highly encourage you to get yourself a cape!).') . '</li>' .
-       '<li>' . __('Blogs are now called Sites; Site is now called Network.') . '</li></ul>' .
-       '<p>' . __('The Right Now box provides the network administrator with links to the screens to either create a new site or user, or to search existing users and sites. Screen for Sites and Users are also accessible through the left-hand navigation in the Network Admin section.') . '</p>' .
+       get_current_screen()->add_help_tab( array(
+               'id'      => 'overview',
+               'title'   => __('Overview'),
+               'content' =>
+                       '<p>' . __('Until WordPress 3.0, running multiple sites required using WordPress MU instead of regular WordPress. In version 3.0, these applications have merged. If you are a former MU user, you should be aware of the following changes:') . '</p>' .
+                       '<ul><li>' . __('Site Admin is now Super Admin (we highly encourage you to get yourself a cape!).') . '</li>' .
+                       '<li>' . __('Blogs are now called Sites; Site is now called Network.') . '</li></ul>' .
+                       '<p>' . __('The Right Now box provides the network administrator with links to the screens to either create a new site or user, or to search existing users and sites. Screens for Sites and Users are also accessible through the left-hand navigation in the Network Admin section.') . '</p>'
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin" target="_blank">Documentation on the Network Admin</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/forum/multisite/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin" target="_blank">Documentation on the Network Admin</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/forum/multisite/" target="_blank">Support Forums</a>') . '</p>'
@@ -36,8 +42,6 @@ wp_dashboard_setup();
 
 wp_enqueue_script( 'dashboard' );
 wp_enqueue_script( 'plugin-install' );
 
 wp_enqueue_script( 'dashboard' );
 wp_enqueue_script( 'plugin-install' );
-wp_admin_css( 'dashboard' );
-wp_admin_css( 'plugin-install' );
 add_thickbox();
 
 add_screen_option('layout_columns', array('max' => 4, 'default' => 2) );
 add_thickbox();
 
 add_screen_option('layout_columns', array('max' => 4, 'default' => 2) );
index c33d47a38a59f24ff1c8b872d666e2e0486e3acc..449e1b37a860e01f4a8e5189ddae0a446747462d 100644 (file)
@@ -8,7 +8,7 @@
  */
 
 /* translators: Network menu item */
  */
 
 /* translators: Network menu item */
-$menu[0] = array(__('Dashboard'), 'manage_network', 'index.php', '', 'menu-top menu-top-first menu-icon-dashboard', 'menu-dashboard', 'div');
+$menu[2] = array(__('Dashboard'), 'manage_network', 'index.php', '', 'menu-top menu-top-first menu-icon-dashboard', 'menu-dashboard', 'div');
 
 $menu[4] = array( '', 'read', 'separator1', '', 'wp-menu-separator' );
 
 
 $menu[4] = array( '', 'read', 'separator1', '', 'wp-menu-separator' );
 
@@ -21,12 +21,10 @@ $menu[10] = array(__('Users'), 'manage_network_users', 'users.php', '', 'menu-to
 $submenu['users.php'][5]  = array( __('All Users'), 'manage_network_users', 'users.php' );
 $submenu['users.php'][10]  = array( _x('Add New', 'user'), 'create_users', 'user-new.php' );
 
 $submenu['users.php'][5]  = array( __('All Users'), 'manage_network_users', 'users.php' );
 $submenu['users.php'][10]  = array( _x('Add New', 'user'), 'create_users', 'user-new.php' );
 
-if ( current_user_can( 'update_themes' ) ) {
-       $plugin_update_count = $theme_update_count = $wordpress_update_count = 0;
-       $update_themes = get_site_transient( 'update_themes' );
-       if ( !empty($update_themes->response) )
-               $theme_update_count = count( $update_themes->response );
-       $menu[15] = array(sprintf( __( 'Themes %s' ), "<span class='update-plugins count-$theme_update_count'><span class='theme-count'>" . number_format_i18n( $theme_update_count ) . "</span></span>" ), 'manage_network_themes', 'themes.php', '', 'menu-top menu-icon-appearance', 'menu-appearance', 'div' );
+$update_data = wp_get_update_data();
+
+if ( $update_data['counts']['themes'] ) {
+       $menu[15] = array(sprintf( __( 'Themes %s' ), "<span class='update-plugins count-{$update_data['counts']['themes']}'><span class='theme-count'>" . number_format_i18n( $update_data['counts']['themes'] ) . "</span></span>" ), 'manage_network_themes', 'themes.php', '', 'menu-top menu-icon-appearance', 'menu-appearance', 'div' );
 } else {
        $menu[15] = array( __( 'Themes' ), 'manage_network_themes', 'themes.php', '', 'menu-top menu-icon-appearance', 'menu-appearance', 'div' );
 }
 } else {
        $menu[15] = array( __( 'Themes' ), 'manage_network_themes', 'themes.php', '', 'menu-top menu-icon-appearance', 'menu-appearance', 'div' );
 }
@@ -35,10 +33,7 @@ $submenu['themes.php'][10] = array( _x('Add New', 'theme'), 'install_themes', 't
 $submenu['themes.php'][15] = array( _x('Editor', 'theme editor'), 'edit_themes', 'theme-editor.php' );
 
 if ( current_user_can( 'update_plugins' ) ) {
 $submenu['themes.php'][15] = array( _x('Editor', 'theme editor'), 'edit_themes', 'theme-editor.php' );
 
 if ( current_user_can( 'update_plugins' ) ) {
-       $update_plugins = get_site_transient( 'update_plugins' );
-       if ( !empty($update_plugins->response) )
-               $plugin_update_count = count( $update_plugins->response );
-       $menu[20] = array( sprintf( __( 'Plugins %s' ), "<span class='update-plugins count-$plugin_update_count'><span class='plugin-count'>" . number_format_i18n( $plugin_update_count ) . "</span></span>" ), 'manage_network_plugins', 'plugins.php', '', 'menu-top menu-icon-plugins', 'menu-plugins', 'div');
+       $menu[20] = array( sprintf( __( 'Plugins %s' ), "<span class='update-plugins count-{$update_data['counts']['plugins']}'><span class='plugin-count'>" . number_format_i18n( $update_data['counts']['plugins'] ) . "</span></span>" ), 'manage_network_plugins', 'plugins.php', '', 'menu-top menu-icon-plugins', 'menu-plugins', 'div');
 } else {
        $menu[20] = array( __('Plugins'), 'manage_network_plugins', 'plugins.php', '', 'menu-top menu-icon-plugins', 'menu-plugins', 'div' );
 }
 } else {
        $menu[20] = array( __('Plugins'), 'manage_network_plugins', 'plugins.php', '', 'menu-top menu-icon-plugins', 'menu-plugins', 'div' );
 }
@@ -53,34 +48,19 @@ if ( defined( 'MULTISITE' ) && defined( 'WP_ALLOW_MULTISITE' ) && WP_ALLOW_MULTI
        $submenu['settings.php'][10] = array( __('Network Setup'), 'manage_network_options', 'setup.php' );
 }
 
        $submenu['settings.php'][10] = array( __('Network Setup'), 'manage_network_options', 'setup.php' );
 }
 
-if ( current_user_can( 'update_core' ) ) {
-       $update_wordpress = get_core_updates( array('dismissed' => false) );
-       if ( !empty($update_wordpress) && !in_array( $update_wordpress[0]->response, array('development', 'latest') ) )
-               $wordpress_update_count = 1;
-       
-       $update_count = $plugin_update_count + $theme_update_count + $wordpress_update_count;
-       $update_title = array();
-       if ( $wordpress_update_count )
-               $update_title[] = sprintf(__('%d WordPress Update'), $wordpress_update_count);
-       if ( $plugin_update_count )
-               $update_title[] = sprintf(_n('%d Plugin Update', '%d Plugin Updates', $plugin_update_count), $plugin_update_count);
-       if ( $theme_update_count )
-               $update_title[] = sprintf(_n('%d Theme Update', '%d Theme Updates', $theme_update_count), $theme_update_count);
-       
-       $update_title = !empty($update_title) ? esc_attr(implode(', ', $update_title)) : '';
-       
-       $menu[30] = array( sprintf( __( 'Updates %s' ), "<span class='update-plugins count-$update_count' title='$update_title'><span class='update-count'>" . number_format_i18n($update_count) . "</span></span>" ), 'manage_network', 'upgrade.php', '', 'menu-top menu-icon-tools', 'menu-update', 'div' );
+if ( $update_data['counts']['total'] ) {
+       $menu[30] = array( sprintf( __( 'Updates %s' ), "<span class='update-plugins count-{$update_data['counts']['total']}' title='{$update_data['title']}'><span class='update-count'>" . number_format_i18n($update_data['counts']['total']) . "</span></span>" ), 'manage_network', 'upgrade.php', '', 'menu-top menu-icon-tools', 'menu-update', 'div' );
 } else {
        $menu[30] = array( __( 'Updates' ), 'manage_network', 'upgrade.php', '', 'menu-top menu-icon-tools', 'menu-update', 'div' );
 }
 
 } else {
        $menu[30] = array( __( 'Updates' ), 'manage_network', 'upgrade.php', '', 'menu-top menu-icon-tools', 'menu-update', 'div' );
 }
 
+unset($update_data);
+
 $submenu[ 'upgrade.php' ][10] = array( __( 'Available Updates' ), 'update_core',  'update-core.php' );
 $submenu[ 'upgrade.php' ][15] = array( __( 'Update Network' ), 'manage_network', 'upgrade.php' );
 $submenu[ 'upgrade.php' ][10] = array( __( 'Available Updates' ), 'update_core',  'update-core.php' );
 $submenu[ 'upgrade.php' ][15] = array( __( 'Update Network' ), 'manage_network', 'upgrade.php' );
-unset($plugin_update_count, $theme_update_count, $wordpress_update_count, $update_count, $update_title, $update_themes, $update_plugins, $update_wordpress);
-
 
 $menu[99] = array( '', 'read', 'separator-last', '', 'wp-menu-separator-last' );
 
 require_once(ABSPATH . 'wp-admin/includes/menu.php');
 
 
 $menu[99] = array( '', 'read', 'separator-last', '', 'wp-menu-separator-last' );
 
 require_once(ABSPATH . 'wp-admin/includes/menu.php');
 
-?>
\ No newline at end of file
+?>
index e727e6268354a7561ee39d30d0c8473dc92f89e5..7f04e1a5af8af2fef897d8db4b11fe71f432b310 100644 (file)
@@ -16,37 +16,107 @@ if ( ! is_multisite() )
 if ( ! current_user_can( 'manage_network_options' ) )
        wp_die( __( 'You do not have permission to access this page.' ) );
 
 if ( ! current_user_can( 'manage_network_options' ) )
        wp_die( __( 'You do not have permission to access this page.' ) );
 
-$title = __( 'Settings' );
+$title = __( 'Network Settings' );
 $parent_file = 'settings.php';
 
 $parent_file = 'settings.php';
 
-add_contextual_help($current_screen,
-       '<p>' . __('This screen sets and changes options for the network as a whole. The first site is the main site in the network and network options are pulled from that original site&#8217;s options.') . '</p>' .
-       '<p>' . __('Operational settings has fields for the network&#8217;s name and admin email.') . '</p>' .
-       '<p>' . __('Dashboard Site is an option to give a site to users who do not have a site on the system. Their default role is Subscriber, but that default can be changed. The Admin Notice Feed can provide a notice on all dashboards of the latest post via RSS or Atom, or provide no such notice if left blank.') . '</p>' .
-       '<p>' . __('Registration settings can disable/enable public signups. If you let others sign up for a site, install spam plugins. Spaces, not commas, should separate names banned as sites for this network.') . '</p>' .
-       '<p>' . __('New site settings are defaults applied when a new site is created in the network. These include welcome email for when a new site or user account is registered, and what&#8127;s put in the first post, page, comment, comment author, and comment URL.') . '</p>' .
-       '<p>' . __('Upload settings control the size of the uploaded files and the amount of available upload space for each site. You can change the default value for specific sites when you edit a particular site. Allowed file types are also listed (space separated only).') . '</p>' .
-       '<p>' . __('Checkboxes for media upload buttons set which are shown in the visual editor. If unchecked, a generic upload button is still visible; other media types can still be uploaded if on the allowed file types list.') . '</p>' .
-       '<p>' . __('Menu setting enables/disables the plugin menus from appearing for non super admins, so that only super admins, not site admins, have access to activate plugins.') . '</p>' .
-       '<p>' . __('Super admins can no longer be added on the Options screen. You must now go to the list of existing users on Network Admin > Users and click on Username or the Edit action link below that name. This goes to an Edit User page where you can check a box to grant super admin privileges.') . '</p>' .
+get_current_screen()->add_help_tab( array(
+               'id'      => 'overview',
+               'title'   => __('Overview'),
+               'content' =>
+                       '<p>' . __('This screen sets and changes options for the network as a whole. The first site is the main site in the network and network options are pulled from that original site&#8217;s options.') . '</p>' .
+                       '<p>' . __('Operational settings has fields for the network&#8217;s name and admin email.') . '</p>' .
+                       '<p>' . __('Dashboard Site is an option to give a site to users who do not have a site on the system. Their default role is Subscriber, but that default can be changed. The Admin Notice Feed can provide a notice on all dashboards of the latest post via RSS or Atom, or provide no such notice if left blank.') . '</p>' .
+                       '<p>' . __('Registration settings can disable/enable public signups. If you let others sign up for a site, install spam plugins. Spaces, not commas, should separate names banned as sites for this network.') . '</p>' .
+                       '<p>' . __('New site settings are defaults applied when a new site is created in the network. These include welcome email for when a new site or user account is registered, and what&#8127;s put in the first post, page, comment, comment author, and comment URL.') . '</p>' .
+                       '<p>' . __('Upload settings control the size of the uploaded files and the amount of available upload space for each site. You can change the default value for specific sites when you edit a particular site. Allowed file types are also listed (space separated only).') . '</p>' .
+                       '<p>' . __('Checkboxes for media upload buttons set which are shown in the visual editor. If unchecked, a generic upload button is still visible; other media types can still be uploaded if on the allowed file types list.') . '</p>' .
+                       '<p>' . __('Menu setting enables/disables the plugin menus from appearing for non super admins, so that only super admins, not site admins, have access to activate plugins.') . '</p>' .
+                       '<p>' . __('Super admins can no longer be added on the Options screen. You must now go to the list of existing users on Network Admin > Users and click on Username or the Edit action link below that name. This goes to an Edit User page where you can check a box to grant super admin privileges.') . '</p>'
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin_Settings_Screen" target="_blank">Documentation on Network Settings</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
 );
 
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin_Settings_Screen" target="_blank">Documentation on Network Settings</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
 );
 
+if ( $_POST ) {
+       do_action( 'wpmuadminedit' , '' );
+
+       check_admin_referer( 'siteoptions' );
+
+       if ( isset( $_POST['WPLANG'] ) && ( '' === $_POST['WPLANG'] || in_array( $_POST['WPLANG'], get_available_languages() ) ) )
+               update_site_option( 'WPLANG', $_POST['WPLANG'] );
+
+       if ( is_email( $_POST['admin_email'] ) )
+               update_site_option( 'admin_email', $_POST['admin_email'] );
+
+       $illegal_names = split( ' ', $_POST['illegal_names'] );
+       foreach ( (array) $illegal_names as $name ) {
+               $name = trim( $name );
+               if ( $name != '' )
+                       $names[] = trim( $name );
+               }
+       update_site_option( 'illegal_names', $names );
+
+       if ( $_POST['limited_email_domains'] != '' ) {
+               $limited_email_domains = str_replace( ' ', "\n", $_POST['limited_email_domains'] );
+               $limited_email_domains = split( "\n", stripslashes( $limited_email_domains ) );
+               $limited_email = array();
+               foreach ( (array) $limited_email_domains as $domain ) {
+                       $domain = trim( $domain );
+                       if ( ! preg_match( '/(--|\.\.)/', $domain ) && preg_match( '|^([a-zA-Z0-9-\.])+$|', $domain ) )
+                               $limited_email[] = trim( $domain );
+               }
+               update_site_option( 'limited_email_domains', $limited_email );
+       } else {
+                       update_site_option( 'limited_email_domains', '' );
+       }
+
+       if ( $_POST['banned_email_domains'] != '' ) {
+               $banned_email_domains = split( "\n", stripslashes( $_POST['banned_email_domains'] ) );
+               $banned = array();
+               foreach ( (array) $banned_email_domains as $domain ) {
+                       $domain = trim( $domain );
+                       if ( ! preg_match( '/(--|\.\.)/', $domain ) && preg_match( '|^([a-zA-Z0-9-\.])+$|', $domain ) )
+                               $banned[] = trim( $domain );
+               }
+               update_site_option( 'banned_email_domains', $banned );
+       } else {
+               update_site_option( 'banned_email_domains', '' );
+       }
+
+       $options = array( 'registrationnotification', 'registration', 'add_new_users', 'menu_items', 'upload_space_check_disabled', 'blog_upload_space', 'upload_filetypes', 'site_name', 'first_post', 'first_page', 'first_comment', 'first_comment_url', 'first_comment_author', 'welcome_email', 'welcome_user_email', 'fileupload_maxk', 'global_terms_enabled' );
+       $checked_options = array( 'menu_items' => array(), 'registrationnotification' => 'no', 'upload_space_check_disabled' => 1, 'add_new_users' => 0 );
+       foreach ( $checked_options as $option_name => $option_unchecked_value ) {
+               if ( ! isset( $_POST[$option_name] ) )
+                       $_POST[$option_name] = $option_unchecked_value;
+       }
+       foreach ( $options as $option_name ) {
+               if ( ! isset($_POST[$option_name]) )
+                       continue;
+               $value = stripslashes_deep( $_POST[$option_name] );
+               update_site_option( $option_name, $value );
+       }
+
+       // Update more options here
+       do_action( 'update_wpmu_options' );
+
+       wp_redirect( add_query_arg( 'updated', 'true', network_admin_url( 'settings.php' ) ) );
+       exit();
+}
+
 include( '../admin-header.php' );
 
 include( '../admin-header.php' );
 
-if (isset($_GET['updated'])) {
-       ?>
-       <div id="message" class="updated"><p><?php _e( 'Options saved.' ) ?></p></div>
-       <?php
+if ( isset( $_GET['updated'] ) ) {
+       ?><div id="message" class="updated"><p><?php _e( 'Options saved.' ) ?></p></div><?php
 }
 ?>
 
 <div class="wrap">
        <?php screen_icon('options-general'); ?>
 }
 ?>
 
 <div class="wrap">
        <?php screen_icon('options-general'); ?>
-       <h2><?php _e( 'Settings' ) ?></h2>
-       <form method="post" action="edit.php?action=siteoptions">
+       <h2><?php echo esc_html( $title ); ?></h2>
+       <form method="post" action="settings.php">
                <?php wp_nonce_field( 'siteoptions' ); ?>
                <h3><?php _e( 'Operational Settings' ); ?></h3>
                <table class="form-table">
                <?php wp_nonce_field( 'siteoptions' ); ?>
                <h3><?php _e( 'Operational Settings' ); ?></h3>
                <table class="form-table">
@@ -205,15 +275,6 @@ if (isset($_GET['updated'])) {
                </table>
                <h3><?php _e( 'Upload Settings' ); ?></h3>
                <table class="form-table">
                </table>
                <h3><?php _e( 'Upload Settings' ); ?></h3>
                <table class="form-table">
-                       <tr valign="top">
-                               <th scope="row"><?php _e( 'Media upload buttons' ) ?></th>
-                               <?php $mu_media_buttons = get_site_option( 'mu_media_buttons', array() ); ?>
-                               <td><label><input type="checkbox" id="mu_media_buttons_image" name="mu_media_buttons[image]" value="1"<?php checked( ! empty( $mu_media_buttons['image'] ) ) ?>/> <?php _e( 'Images' ); ?></label><br />
-                               <label><input type="checkbox" id="mu_media_buttons_video" name="mu_media_buttons[video]" value="1"<?php checked( ! empty( $mu_media_buttons['video'] ) ) ?>/> <?php _e( 'Videos' ); ?></label><br />
-                               <label><input type="checkbox" id="mu_media_buttons_audio" name="mu_media_buttons[audio]" value="1"<?php checked( ! empty( $mu_media_buttons['audio'] ) ) ?>/> <?php _e( 'Music' ); ?></label><br />
-                               <?php _e( 'The media upload buttons to display on the &#8220;Write Post&#8221; page. Make sure you update the allowed upload file types below as well.' ); ?></td>
-                       </tr>
-
                        <tr valign="top">
                                <th scope="row"><?php _e( 'Site upload space' ) ?></th>
                                <td>
                        <tr valign="top">
                                <th scope="row"><?php _e( 'Site upload space' ) ?></th>
                                <td>
index 2f14f97dd5faaf9044d9f999c18ac7f7d6135b1f..8cf9a5ee6ba0bf0955a1193d284241a879dc8f45 100644 (file)
@@ -16,12 +16,18 @@ if ( ! is_multisite() )
 if ( ! current_user_can( 'manage_sites' ) )
        wp_die( __( 'You do not have sufficient permissions to edit this site.' ) );
 
 if ( ! current_user_can( 'manage_sites' ) )
        wp_die( __( 'You do not have sufficient permissions to edit this site.' ) );
 
-add_contextual_help($current_screen,
-       '<p>' . __('The menu is for editing information specific to individual sites, particularly if the admin area of a site is unavailable.') . '</p>' .
-       '<p>' . __('<strong>Info</strong> - The domain and path are rarely edited as this can cause the site to not work properly. The Registered date and Last Updated date are displayed. Network admins can mark a site as archived, spam, deleted and mature, to remove from public listings or disable.') . '</p>' .
-       '<p>' . __('<strong>Users</strong> - This displays the users associated with this site. You can also change their role, reset their password, or remove them from the site. Removing the user from the site does not remove the user from the network.') . '</p>' .
-       '<p>' . sprintf( __('<strong>Themes</strong> - This area shows themes that are not already enabled across the network. Enabling a theme in this menu makes it accessible to this site. It does not activate the theme, but allows it to show in the site&#8217;s Appearance menu. To enable a theme for the entire network, see the <a href="%s">Network Themes</a> screen.' ), network_admin_url( 'themes.php' ) ) . '</p>' .
-       '<p>' . __('<strong>Settings</strong> - This page shows a list of all settings associated with this site. Some are created by WordPress and others are created by plugins you activate. Note that some fields are grayed out and say Serialized Data. You cannot modify these values due to the way the setting is stored in the database.') . '</p>' .
+       get_current_screen()->add_help_tab( array(
+               'id'      => 'overview',
+               'title'   => __('Overview'),
+               'content' =>
+                       '<p>' . __('The menu is for editing information specific to individual sites, particularly if the admin area of a site is unavailable.') . '</p>' .
+                       '<p>' . __('<strong>Info</strong> - The domain and path are rarely edited as this can cause the site to not work properly. The Registered date and Last Updated date are displayed. Network admins can mark a site as archived, spam, deleted and mature, to remove from public listings or disable.') . '</p>' .
+                       '<p>' . __('<strong>Users</strong> - This displays the users associated with this site. You can also change their role, reset their password, or remove them from the site. Removing the user from the site does not remove the user from the network.') . '</p>' .
+                       '<p>' . sprintf( __('<strong>Themes</strong> - This area shows themes that are not already enabled across the network. Enabling a theme in this menu makes it accessible to this site. It does not activate the theme, but allows it to show in the site&#8217;s Appearance menu. To enable a theme for the entire network, see the <a href="%s">Network Themes</a> screen.' ), network_admin_url( 'themes.php' ) ) . '</p>' .
+                       '<p>' . __('<strong>Settings</strong> - This page shows a list of all settings associated with this site. Some are created by WordPress and others are created by plugins you activate. Note that some fields are grayed out and say Serialized Data. You cannot modify these values due to the way the setting is stored in the database.') . '</p>'
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin_Sites_Screens" target="_blank">Documentation on Site Management</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/forum/multisite/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin_Sites_Screens" target="_blank">Documentation on Site Management</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/forum/multisite/" target="_blank">Support Forums</a>') . '</p>'
index a94aaf348d083946db3172a8715a6650e01bce7a..3abcca1a4b21f390db88d30269c35ae7b4789475 100644 (file)
@@ -16,9 +16,15 @@ if ( ! is_multisite() )
 if ( ! current_user_can( 'manage_sites' ) )
        wp_die( __( 'You do not have sufficient permissions to add sites to this network.' ) );
 
 if ( ! current_user_can( 'manage_sites' ) )
        wp_die( __( 'You do not have sufficient permissions to add sites to this network.' ) );
 
-add_contextual_help($current_screen,
-       '<p>' . __('This screen is for Super Admins to add new sites to the network. This is not affected by the registration settings.') . '</p>' .
-       '<p>' . __('If the admin email for the new site does not exist in the database, a new user will also be created.') . '</p>' .
+       get_current_screen()->add_help_tab( array(
+               'id'      => 'overview',
+               'title'   => __('Overview'),
+               'content' =>
+                       '<p>' . __('This screen is for Super Admins to add new sites to the network. This is not affected by the registration settings.') . '</p>' .
+                       '<p>' . __('If the admin email for the new site does not exist in the database, a new user will also be created.') . '</p>'
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin_Sites_Screens" target="_blank">Documentation on Site Management</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/forum/multisite/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin_Sites_Screens" target="_blank">Documentation on Site Management</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/forum/multisite/" target="_blank">Support Forums</a>') . '</p>'
@@ -34,7 +40,7 @@ if ( isset($_REQUEST['action']) && 'add-site' == $_REQUEST['action'] ) {
                wp_die( __( 'Can&#8217;t create an empty site.' ) );
        $blog = $_POST['blog'];
        $domain = '';
                wp_die( __( 'Can&#8217;t create an empty site.' ) );
        $blog = $_POST['blog'];
        $domain = '';
-       if ( ! preg_match( '/(--)/', $blog['domain'] ) && preg_match( '|^([a-zA-Z0-9-])+$|', $blog['domain'] ) )
+       if ( preg_match( '|^([a-zA-Z0-9-])+$|', $blog['domain'] ) )
                $domain = strtolower( $blog['domain'] );
 
        // If not a subdomain install, make sure the domain isn't a reserved word
                $domain = strtolower( $blog['domain'] );
 
        // If not a subdomain install, make sure the domain isn't a reserved word
@@ -79,10 +85,10 @@ if ( isset($_REQUEST['action']) && 'add-site' == $_REQUEST['action'] ) {
        if ( !is_wp_error( $id ) ) {
                if ( !is_super_admin( $user_id ) && !get_user_option( 'primary_blog', $user_id ) )
                        update_user_option( $user_id, 'primary_blog', $id, true );
        if ( !is_wp_error( $id ) ) {
                if ( !is_super_admin( $user_id ) && !get_user_option( 'primary_blog', $user_id ) )
                        update_user_option( $user_id, 'primary_blog', $id, true );
-               $content_mail = sprintf( __( "New site created by %1s\n\nAddress: http://%2s\nName: %3s"), $current_user->user_login , $newdomain . $path, stripslashes( $title ) );
+               $content_mail = sprintf( __( "New site created by %1s\n\nAddress: %2s\nName: %3s"), $current_user->user_login , get_site_url( $id ), stripslashes( $title ) );
                wp_mail( get_site_option('admin_email'), sprintf( __( '[%s] New Site Created' ), $current_site->site_name ), $content_mail, 'From: "Site Admin" <' . get_site_option( 'admin_email' ) . '>' );
                wpmu_welcome_notification( $id, $user_id, $password, $title, array( 'public' => 1 ) );
                wp_mail( get_site_option('admin_email'), sprintf( __( '[%s] New Site Created' ), $current_site->site_name ), $content_mail, 'From: "Site Admin" <' . get_site_option( 'admin_email' ) . '>' );
                wpmu_welcome_notification( $id, $user_id, $password, $title, array( 'public' => 1 ) );
-               wp_redirect( add_query_arg( array('update' => 'added'), 'site-new.php' ) );
+               wp_redirect( add_query_arg( array( 'update' => 'added', 'id' => $id ), 'site-new.php' ) );
                exit;
        } else {
                wp_die( $id->get_error_message() );
                exit;
        } else {
                wp_die( $id->get_error_message() );
@@ -92,7 +98,7 @@ if ( isset($_REQUEST['action']) && 'add-site' == $_REQUEST['action'] ) {
 if ( isset($_GET['update']) ) {
        $messages = array();
        if ( 'added' == $_GET['update'] )
 if ( isset($_GET['update']) ) {
        $messages = array();
        if ( 'added' == $_GET['update'] )
-               $messages[] = __('Site added.');
+               $messages[] = sprintf( __( 'Site added. <a href="%1$s">Visit Dashboard</a> or <a href="%2$s">Edit Site</a>' ), esc_url( get_admin_url( absint( $_GET['id'] ) ) ), network_admin_url( 'site-info.php?id=' . absint( $_GET['id'] ) ) );
 }
 
 $title = __('Add New Site');
 }
 
 $title = __('Add New Site');
@@ -117,9 +123,9 @@ if ( ! empty( $messages ) ) {
                        <th scope="row"><?php _e( 'Site Address' ) ?></th>
                        <td>
                        <?php if ( is_subdomain_install() ) { ?>
                        <th scope="row"><?php _e( 'Site Address' ) ?></th>
                        <td>
                        <?php if ( is_subdomain_install() ) { ?>
-                               <input name="blog[domain]" type="text" class="regular-text" title="<?php _e( 'Domain' ) ?>"/>.<?php echo preg_replace( '|^www\.|', '', $current_site->domain );?>
+                               <input name="blog[domain]" type="text" class="regular-text" title="<?php esc_attr_e( 'Domain' ) ?>"/>.<?php echo preg_replace( '|^www\.|', '', $current_site->domain );?>
                        <?php } else {
                        <?php } else {
-                               echo $current_site->domain . $current_site->path ?><input name="blog[domain]" class="regular-text" type="text" title="<?php _e( 'Domain' ) ?>"/>
+                               echo $current_site->domain . $current_site->path ?><input name="blog[domain]" class="regular-text" type="text" title="<?php esc_attr_e( 'Domain' ) ?>"/>
                        <?php }
                        echo '<p>' . __( 'Only the characters a-z and 0-9 recommended.' ) . '</p>';
                        ?>
                        <?php }
                        echo '<p>' . __( 'Only the characters a-z and 0-9 recommended.' ) . '</p>';
                        ?>
@@ -127,11 +133,11 @@ if ( ! empty( $messages ) ) {
                </tr>
                <tr class="form-field form-required">
                        <th scope="row"><?php _e( 'Site Title' ) ?></th>
                </tr>
                <tr class="form-field form-required">
                        <th scope="row"><?php _e( 'Site Title' ) ?></th>
-                       <td><input name="blog[title]" type="text" class="regular-text" title="<?php _e( 'Title' ) ?>"/></td>
+                       <td><input name="blog[title]" type="text" class="regular-text" title="<?php esc_attr_e( 'Title' ) ?>"/></td>
                </tr>
                <tr class="form-field form-required">
                        <th scope="row"><?php _e( 'Admin Email' ) ?></th>
                </tr>
                <tr class="form-field form-required">
                        <th scope="row"><?php _e( 'Admin Email' ) ?></th>
-                       <td><input name="blog[email]" type="text" class="regular-text" title="<?php _e( 'Email' ) ?>"/></td>
+                       <td><input name="blog[email]" type="text" class="regular-text" title="<?php esc_attr_e( 'Email' ) ?>"/></td>
                </tr>
                <tr class="form-field">
                        <td colspan="2"><?php _e( 'A new user will be created if the above email address is not in the database.' ) ?><br /><?php _e( 'The username and password will be mailed to this email address.' ) ?></td>
                </tr>
                <tr class="form-field">
                        <td colspan="2"><?php _e( 'A new user will be created if the above email address is not in the database.' ) ?><br /><?php _e( 'The username and password will be mailed to this email address.' ) ?></td>
index 35bcb4365c0f47785dc2bbf4b70cb277a646d2c0..09ebeaad7db39ace4df1976c937055bfcbfa715f 100644 (file)
@@ -16,12 +16,18 @@ if ( ! is_multisite() )
 if ( ! current_user_can( 'manage_sites' ) )
        wp_die( __( 'You do not have sufficient permissions to edit this site.' ) );
 
 if ( ! current_user_can( 'manage_sites' ) )
        wp_die( __( 'You do not have sufficient permissions to edit this site.' ) );
 
-add_contextual_help($current_screen,
-       '<p>' . __('The menu is for editing information specific to individual sites, particularly if the admin area of a site is unavailable.') . '</p>' .
-       '<p>' . __('<strong>Info</strong> - The domain and path are rarely edited as this can cause the site to not work properly. The Registered date and Last Updated date are displayed. Network admins can mark a site as archived, spam, deleted and mature, to remove from public listings or disable.') . '</p>' .
-       '<p>' . __('<strong>Users</strong> - This displays the users associated with this site. You can also change their role, reset their password, or remove them from the site. Removing the user from the site does not remove the user from the network.') . '</p>' .
-       '<p>' . sprintf( __('<strong>Themes</strong> - This area shows themes that are not already enabled across the network. Enabling a theme in this menu makes it accessible to this site. It does not activate the theme, but allows it to show in the site&#8217;s Appearance menu. To enable a theme for the entire network, see the <a href="%s">Network Themes</a> screen.' ), network_admin_url( 'themes.php' ) ) . '</p>' .
-       '<p>' . __('<strong>Settings</strong> - This page shows a list of all settings associated with this site. Some are created by WordPress and others are created by plugins you activate. Note that some fields are grayed out and say Serialized Data. You cannot modify these values due to the way the setting is stored in the database.') . '</p>' .
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' =>
+               '<p>' . __('The menu is for editing information specific to individual sites, particularly if the admin area of a site is unavailable.') . '</p>' .
+               '<p>' . __('<strong>Info</strong> - The domain and path are rarely edited as this can cause the site to not work properly. The Registered date and Last Updated date are displayed. Network admins can mark a site as archived, spam, deleted and mature, to remove from public listings or disable.') . '</p>' .
+               '<p>' . __('<strong>Users</strong> - This displays the users associated with this site. You can also change their role, reset their password, or remove them from the site. Removing the user from the site does not remove the user from the network.') . '</p>' .
+               '<p>' . sprintf( __('<strong>Themes</strong> - This area shows themes that are not already enabled across the network. Enabling a theme in this menu makes it accessible to this site. It does not activate the theme, but allows it to show in the site&#8217;s Appearance menu. To enable a theme for the entire network, see the <a href="%s">Network Themes</a> screen.' ), network_admin_url( 'themes.php' ) ) . '</p>' .
+               '<p>' . __('<strong>Settings</strong> - This page shows a list of all settings associated with this site. Some are created by WordPress and others are created by plugins you activate. Note that some fields are grayed out and say Serialized Data. You cannot modify these values due to the way the setting is stored in the database.') . '</p>'
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin_Sites_Screens" target="_blank">Documentation on Site Management</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/forum/multisite/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin_Sites_Screens" target="_blank">Documentation on Site Management</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/forum/multisite/" target="_blank">Support Forums</a>') . '</p>'
index 867984576ab2de286f431334354f74a9ae4f1dbc..0ff479acb7947d2390ebef9861b19c37c177928e 100644 (file)
@@ -21,12 +21,18 @@ if ( empty( $menu_perms['themes'] ) && ! is_super_admin() )
 if ( ! current_user_can( 'manage_sites' ) )
        wp_die( __( 'You do not have sufficient permissions to manage themes for this site.' ) );
 
 if ( ! current_user_can( 'manage_sites' ) )
        wp_die( __( 'You do not have sufficient permissions to manage themes for this site.' ) );
 
-add_contextual_help($current_screen,
-       '<p>' . __('The menu is for editing information specific to individual sites, particularly if the admin area of a site is unavailable.') . '</p>' .
-       '<p>' . __('<strong>Info</strong> - The domain and path are rarely edited as this can cause the site to not work properly. The Registered date and Last Updated date are displayed. Network admins can mark a site as archived, spam, deleted and mature, to remove from public listings or disable.') . '</p>' .
-       '<p>' . __('<strong>Users</strong> - This displays the users associated with this site. You can also change their role, reset their password, or remove them from the site. Removing the user from the site does not remove the user from the network.') . '</p>' .
-       '<p>' . sprintf( __('<strong>Themes</strong> - This area shows themes that are not already enabled across the network. Enabling a theme in this menu makes it accessible to this site. It does not activate the theme, but allows it to show in the site&#8217;s Appearance menu. To enable a theme for the entire network, see the <a href="%s">Network Themes</a> screen.' ), network_admin_url( 'themes.php' ) ) . '</p>' .
-       '<p>' . __('<strong>Settings</strong> - This page shows a list of all settings associated with this site. Some are created by WordPress and others are created by plugins you activate. Note that some fields are grayed out and say Serialized Data. You cannot modify these values due to the way the setting is stored in the database.') . '</p>' .
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' =>
+               '<p>' . __('The menu is for editing information specific to individual sites, particularly if the admin area of a site is unavailable.') . '</p>' .
+               '<p>' . __('<strong>Info</strong> - The domain and path are rarely edited as this can cause the site to not work properly. The Registered date and Last Updated date are displayed. Network admins can mark a site as archived, spam, deleted and mature, to remove from public listings or disable.') . '</p>' .
+               '<p>' . __('<strong>Users</strong> - This displays the users associated with this site. You can also change their role, reset their password, or remove them from the site. Removing the user from the site does not remove the user from the network.') . '</p>' .
+               '<p>' . sprintf( __('<strong>Themes</strong> - This area shows themes that are not already enabled across the network. Enabling a theme in this menu makes it accessible to this site. It does not activate the theme, but allows it to show in the site&#8217;s Appearance menu. To enable a theme for the entire network, see the <a href="%s">Network Themes</a> screen.' ), network_admin_url( 'themes.php' ) ) . '</p>' .
+               '<p>' . __('<strong>Settings</strong> - This page shows a list of all settings associated with this site. Some are created by WordPress and others are created by plugins you activate. Note that some fields are grayed out and say Serialized Data. You cannot modify these values due to the way the setting is stored in the database.') . '</p>'
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin_Sites_Screens" target="_blank">Documentation on Site Management</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/forum/multisite/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin_Sites_Screens" target="_blank">Documentation on Site Management</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/forum/multisite/" target="_blank">Support Forums</a>') . '</p>'
@@ -39,8 +45,8 @@ $action = $wp_list_table->current_action();
 $s = isset($_REQUEST['s']) ? $_REQUEST['s'] : '';
 
 // Clean up request URI from temporary args for screen options/paging uri's to work as expected.
 $s = isset($_REQUEST['s']) ? $_REQUEST['s'] : '';
 
 // Clean up request URI from temporary args for screen options/paging uri's to work as expected.
-$temp_args = array( 'enabled', 'disabled', 'error' ); 
-$_SERVER['REQUEST_URI'] = remove_query_arg( $temp_args, $_SERVER['REQUEST_URI'] ); 
+$temp_args = array( 'enabled', 'disabled', 'error' );
+$_SERVER['REQUEST_URI'] = remove_query_arg( $temp_args, $_SERVER['REQUEST_URI'] );
 $referer = remove_query_arg( $temp_args, wp_get_referer() );
 
 $id = isset( $_REQUEST['id'] ) ? intval( $_REQUEST['id'] ) : 0;
 $referer = remove_query_arg( $temp_args, wp_get_referer() );
 
 $id = isset( $_REQUEST['id'] ) ? intval( $_REQUEST['id'] ) : 0;
@@ -75,7 +81,7 @@ if ( $action ) {
                        check_admin_referer( 'disable-theme_' . $_GET['theme'] );
                        $theme = $_GET['theme'];
                        $action = 'disabled';
                        check_admin_referer( 'disable-theme_' . $_GET['theme'] );
                        $theme = $_GET['theme'];
                        $action = 'disabled';
-                       $n = 1;                 
+                       $n = 1;
                        if ( !$allowed_themes )
                                $allowed_themes = array();
                        else
                        if ( !$allowed_themes )
                                $allowed_themes = array();
                        else
@@ -108,16 +114,16 @@ if ( $action ) {
                        }
                        break;
        }
                        }
                        break;
        }
-       
+
        update_option( 'allowedthemes', $allowed_themes );
        restore_current_blog();
        update_option( 'allowedthemes', $allowed_themes );
        restore_current_blog();
-       
-       wp_redirect( add_query_arg( $action, $n, $referer ) );
-       exit;   
+
+       wp_safe_redirect( add_query_arg( array( 'id' => $id, $action => $n ), $referer ) );
+       exit;
 }
 
 if ( isset( $_GET['action'] ) && 'update-site' == $_GET['action'] ) {
 }
 
 if ( isset( $_GET['action'] ) && 'update-site' == $_GET['action'] ) {
-       wp_redirect( $referer );
+       wp_safe_redirect( $referer );
        exit();
 }
 
        exit();
 }
 
@@ -152,13 +158,13 @@ foreach ( $tabs as $tab_id => $tab ) {
 </h3><?php
 
 if ( isset( $_GET['enabled'] ) ) {
 </h3><?php
 
 if ( isset( $_GET['enabled'] ) ) {
-       $_GET['enabled'] = absint( $_GET['enabled'] ); 
-       echo '<div id="message" class="updated"><p>' . sprintf( _n( 'Theme enabled.', '%s themes enabled.', $_GET['enabled'] ), number_format_i18n( $_GET['enabled'] ) ) . '</p></div>'; 
-} elseif ( isset( $_GET['disabled'] ) ) { 
-       $_GET['disabled'] = absint( $_GET['disabled'] ); 
-       echo '<div id="message" class="updated"><p>' . sprintf( _n( 'Theme disabled.', '%s themes disabled.', $_GET['disabled'] ), number_format_i18n( $_GET['disabled'] ) ) . '</p></div>'; 
-} elseif ( isset( $_GET['error'] ) && 'none' == $_GET['error'] ) { 
-       echo '<div id="message" class="error"><p>' . __( 'No theme selected.' ) . '</p></div>'; 
+       $_GET['enabled'] = absint( $_GET['enabled'] );
+       echo '<div id="message" class="updated"><p>' . sprintf( _n( 'Theme enabled.', '%s themes enabled.', $_GET['enabled'] ), number_format_i18n( $_GET['enabled'] ) ) . '</p></div>';
+} elseif ( isset( $_GET['disabled'] ) ) {
+       $_GET['disabled'] = absint( $_GET['disabled'] );
+       echo '<div id="message" class="updated"><p>' . sprintf( _n( 'Theme disabled.', '%s themes disabled.', $_GET['disabled'] ), number_format_i18n( $_GET['disabled'] ) ) . '</p></div>';
+} elseif ( isset( $_GET['error'] ) && 'none' == $_GET['error'] ) {
+       echo '<div id="message" class="error"><p>' . __( 'No theme selected.' ) . '</p></div>';
 } ?>
 
 <p><?php _e( 'Network enabled themes are not shown on this screen.' ) ?></p>
 } ?>
 
 <p><?php _e( 'Network enabled themes are not shown on this screen.' ) ?></p>
index 82788afc2820bbc9da79b11e0612b05d40b9ad37..743e9053e0b6ec5136466a50bb11f9e86029a3fd 100644 (file)
@@ -19,19 +19,26 @@ if ( ! current_user_can('manage_sites') )
 $wp_list_table = _get_list_table('WP_Users_List_Table');
 $wp_list_table->prepare_items();
 
 $wp_list_table = _get_list_table('WP_Users_List_Table');
 $wp_list_table->prepare_items();
 
-$action = $wp_list_table->current_action();
-
-add_contextual_help($current_screen,
-       '<p>' . __('The menu is for editing information specific to individual sites, particularly if the admin area of a site is unavailable.') . '</p>' .
-       '<p>' . __('<strong>Info</strong> - The domain and path are rarely edited as this can cause the site to not work properly. The Registered date and Last Updated date are displayed. Network admins can mark a site as archived, spam, deleted and mature, to remove from public listings or disable.') . '</p>' .
-       '<p>' . __('<strong>Users</strong> - This displays the users associated with this site. You can also change their role, reset their password, or remove them from the site. Removing the user from the site does not remove the user from the network.') . '</p>' .
-       '<p>' . sprintf( __('<strong>Themes</strong> - This area shows themes that are not already enabled across the network. Enabling a theme in this menu makes it accessible to this site. It does not activate the theme, but allows it to show in the site&#8217;s Appearance menu. To enable a theme for the entire network, see the <a href="%s">Network Themes</a> screen.' ), network_admin_url( 'themes.php' ) ) . '</p>' .
-       '<p>' . __('<strong>Settings</strong> - This page shows a list of all settings associated with this site. Some are created by WordPress and others are created by plugins you activate. Note that some fields are grayed out and say Serialized Data. You cannot modify these values due to the way the setting is stored in the database.') . '</p>' .
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' =>
+               '<p>' . __('The menu is for editing information specific to individual sites, particularly if the admin area of a site is unavailable.') . '</p>' .
+               '<p>' . __('<strong>Info</strong> - The domain and path are rarely edited as this can cause the site to not work properly. The Registered date and Last Updated date are displayed. Network admins can mark a site as archived, spam, deleted and mature, to remove from public listings or disable.') . '</p>' .
+               '<p>' . __('<strong>Users</strong> - This displays the users associated with this site. You can also change their role, reset their password, or remove them from the site. Removing the user from the site does not remove the user from the network.') . '</p>' .
+               '<p>' . sprintf( __('<strong>Themes</strong> - This area shows themes that are not already enabled across the network. Enabling a theme in this menu makes it accessible to this site. It does not activate the theme, but allows it to show in the site&#8217;s Appearance menu. To enable a theme for the entire network, see the <a href="%s">Network Themes</a> screen.' ), network_admin_url( 'themes.php' ) ) . '</p>' .
+               '<p>' . __('<strong>Settings</strong> - This page shows a list of all settings associated with this site. Some are created by WordPress and others are created by plugins you activate. Note that some fields are grayed out and say Serialized Data. You cannot modify these values due to the way the setting is stored in the database.') . '</p>'
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin_Sites_Screens" target="_blank">Documentation on Site Management</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/forum/multisite/" target="_blank">Support Forums</a>') . '</p>'
 );
 
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin_Sites_Screens" target="_blank">Documentation on Site Management</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/forum/multisite/" target="_blank">Support Forums</a>') . '</p>'
 );
 
+$_SERVER['REQUEST_URI'] = remove_query_arg( 'update', $_SERVER['REQUEST_URI'] );
+$referer = remove_query_arg( 'update', wp_get_referer() );
+
 $id = isset( $_REQUEST['id'] ) ? intval( $_REQUEST['id'] ) : 0;
 
 if ( ! $id )
 $id = isset( $_REQUEST['id'] ) ? intval( $_REQUEST['id'] ) : 0;
 
 if ( ! $id )
@@ -59,7 +66,7 @@ $action = $wp_list_table->current_action();
 
 if ( $action ) {
        switch_to_blog( $id );
 
 if ( $action ) {
        switch_to_blog( $id );
-       
+
        switch ( $action ) {
                case 'newuser':
                        check_admin_referer( 'add-user', '_wpnonce_add-new-user' );
        switch ( $action ) {
                case 'newuser':
                        check_admin_referer( 'add-user', '_wpnonce_add-new-user' );
@@ -84,7 +91,7 @@ if ( $action ) {
                        check_admin_referer( 'add-user', '_wpnonce_add-user' );
                        if ( !empty( $_POST['newuser'] ) ) {
                                $update = 'adduser';
                        check_admin_referer( 'add-user', '_wpnonce_add-user' );
                        if ( !empty( $_POST['newuser'] ) ) {
                                $update = 'adduser';
-                               $newuser = $_POST['newuser'];                           
+                               $newuser = $_POST['newuser'];
                                $userid = $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM " . $wpdb->users . " WHERE user_login = %s", $newuser ) );
                                if ( $userid ) {
                                        $user = $wpdb->get_var( "SELECT user_id FROM " . $wpdb->usermeta . " WHERE user_id='$userid' AND meta_key='{$blog_prefix}capabilities'" );
                                $userid = $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM " . $wpdb->users . " WHERE user_login = %s", $newuser ) );
                                if ( $userid ) {
                                        $user = $wpdb->get_var( "SELECT user_id FROM " . $wpdb->usermeta . " WHERE user_id='$userid' AND meta_key='{$blog_prefix}capabilities'" );
@@ -99,12 +106,12 @@ if ( $action ) {
                                $update = 'err_add_notfound';
                        }
                        break;
                                $update = 'err_add_notfound';
                        }
                        break;
-               
+
                case 'remove':
                        if ( !current_user_can('remove_users')  )
                                die(__('You can&#8217;t remove users.'));
                        check_admin_referer( 'bulk-users' );
                case 'remove':
                        if ( !current_user_can('remove_users')  )
                                die(__('You can&#8217;t remove users.'));
                        check_admin_referer( 'bulk-users' );
-                       
+
                        $update = 'remove';
                        if ( isset( $_REQUEST['users'] ) ) {
                                $userids = $_REQUEST['users'];
                        $update = 'remove';
                        if ( isset( $_REQUEST['users'] ) ) {
                                $userids = $_REQUEST['users'];
@@ -144,14 +151,14 @@ if ( $action ) {
                        }
                        break;
        }
                        }
                        break;
        }
-       
+
        restore_current_blog();
        restore_current_blog();
-       wp_redirect( add_query_arg( 'update', $update, wp_get_referer() ) );
+       wp_safe_redirect( add_query_arg( 'update', $update, $referer ) );
        exit();
 }
 
 if ( isset( $_GET['action'] ) && 'update-site' == $_GET['action'] ) {
        exit();
 }
 
 if ( isset( $_GET['action'] ) && 'update-site' == $_GET['action'] ) {
-       wp_redirect( wp_get_referer() );
+       wp_safe_redirect( $referer );
        exit();
 }
 
        exit();
 }
 
index ee76a970beb065b034c3ec0c35489804d1308429..95902ebbd42dd7209a39fce3917a4786131f532d 100644 (file)
@@ -24,17 +24,23 @@ $parent_file = 'sites.php';
 
 add_screen_option( 'per_page', array('label' => _x( 'Sites', 'sites per page (screen options)' )) );
 
 
 add_screen_option( 'per_page', array('label' => _x( 'Sites', 'sites per page (screen options)' )) );
 
-add_contextual_help($current_screen,
-       '<p>' . __('Add New takes you to the Add New Site screen. You can search for a site by Name, ID number, or IP address. Screen Options allows you to choose how many sites to display on one page.') . '</p>' .
-       '<p>' . __('This is the main table of all sites on this network. Switch between list and excerpt views by using the icons above the right side of the table.') . '</p>' .
-       '<p>' . __('Hovering over each site reveals seven options (three for the primary site):') . '</p>' .
-       '<ul><li>' . __('An Edit link to a separate Edit Site screen.') . '</li>' .
-       '<li>' . __('Dashboard leads to the Dashboard for that site.') . '</li>' .
-       '<li>' . __('Deactivate, Archive, and Spam which lead to confirmation screens. These actions can be reversed later.') . '</li>' .
-       '<li>' . __('Delete which is a permanent action after the confirmation screens.') . '</li>' .
-       '<li>' . __('Visit to go to the frontend site live.') . '</li></ul>' .
-       '<p>' . __('The site ID is used internally, and is not shown on the front end of the site or to users/viewers.') . '</p>' .
-       '<p>' . __('Clicking on bold headings can re-sort this table.') . '</p>' .
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' =>
+               '<p>' . __('Add New takes you to the Add New Site screen. You can search for a site by Name, ID number, or IP address. Screen Options allows you to choose how many sites to display on one page.') . '</p>' .
+               '<p>' . __('This is the main table of all sites on this network. Switch between list and excerpt views by using the icons above the right side of the table.') . '</p>' .
+               '<p>' . __('Hovering over each site reveals seven options (three for the primary site):') . '</p>' .
+               '<ul><li>' . __('An Edit link to a separate Edit Site screen.') . '</li>' .
+               '<li>' . __('Dashboard leads to the Dashboard for that site.') . '</li>' .
+               '<li>' . __('Deactivate, Archive, and Spam which lead to confirmation screens. These actions can be reversed later.') . '</li>' .
+               '<li>' . __('Delete which is a permanent action after the confirmation screens.') . '</li>' .
+               '<li>' . __('Visit to go to the frontend site live.') . '</li></ul>' .
+               '<p>' . __('The site ID is used internally, and is not shown on the front end of the site or to users/viewers.') . '</p>' .
+               '<p>' . __('Clicking on bold headings can re-sort this table.') . '</p>'
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin_Sites_Screens" target="_blank">Documentation on Site Management</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/forum/multisite/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin_Sites_Screens" target="_blank">Documentation on Site Management</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/forum/multisite/" target="_blank">Support Forums</a>') . '</p>'
@@ -42,6 +48,196 @@ add_contextual_help($current_screen,
 
 $id = isset( $_REQUEST['id'] ) ? intval( $_REQUEST['id'] ) : 0;
 
 
 $id = isset( $_REQUEST['id'] ) ? intval( $_REQUEST['id'] ) : 0;
 
+if ( isset( $_GET['action'] ) ) {
+       do_action( 'wpmuadminedit' , '' );
+
+       switch ( $_GET['action'] ) {
+               case 'updateblog':
+                       // No longer used.
+               break;
+
+               case 'deleteblog':
+                       check_admin_referer('deleteblog');
+                       if ( ! ( current_user_can( 'manage_sites' ) && current_user_can( 'delete_sites' ) ) )
+                               wp_die( __( 'You do not have permission to access this page.' ) );
+
+                       if ( $id != '0' && $id != $current_site->blog_id && current_user_can( 'delete_site', $id ) ) {
+                               wpmu_delete_blog( $id, true );
+                               wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'delete' ), wp_get_referer() ) );
+                       } else {
+                               wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'not_deleted' ), wp_get_referer() ) );
+                       }
+
+                       exit();
+               break;
+
+               case 'allblogs':
+                       if ( ( isset( $_POST['action'] ) || isset( $_POST['action2'] ) ) && isset( $_POST['allblogs'] ) ) {
+                               check_admin_referer( 'bulk-sites' );
+
+                               if ( ! current_user_can( 'manage_sites' ) )
+                                       wp_die( __( 'You do not have permission to access this page.' ) );
+
+                               if ( $_GET['action'] != -1 || $_POST['action2'] != -1 )
+                                       $doaction = $_POST['action'] != -1 ? $_POST['action'] : $_POST['action2'];
+
+                               $blogfunction = '';
+
+                               foreach ( (array) $_POST['allblogs'] as $key => $val ) {
+                                       if ( $val != '0' && $val != $current_site->blog_id ) {
+                                               switch ( $doaction ) {
+                                                       case 'delete':
+                                                               if ( ! current_user_can( 'delete_site', $val ) )
+                                                                       wp_die( __( 'You are not allowed to delete the site.' ) );
+                                                               $blogfunction = 'all_delete';
+                                                               wpmu_delete_blog( $val, true );
+                                                       break;
+
+                                                       case 'spam':
+                                                               $blogfunction = 'all_spam';
+                                                               update_blog_status( $val, 'spam', '1' );
+                                                               set_time_limit( 60 );
+                                                       break;
+
+                                                       case 'notspam':
+                                                               $blogfunction = 'all_notspam';
+                                                               update_blog_status( $val, 'spam', '0' );
+                                                               set_time_limit( 60 );
+                                                       break;
+                                               }
+                                       } else {
+                                               wp_die( __( 'You are not allowed to change the current site.' ) );
+                                       }
+                               }
+
+                               wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => $blogfunction ), wp_get_referer() ) );
+                       } else {
+                               wp_redirect( network_admin_url( 'sites.php' ) );
+                       }
+                       exit();
+               break;
+
+               case 'archiveblog':
+                       check_admin_referer( 'archiveblog' );
+                       if ( ! current_user_can( 'manage_sites' ) )
+                               wp_die( __( 'You do not have permission to access this page.' ) );
+
+                       update_blog_status( $id, 'archived', '1' );
+                       wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'archive' ), wp_get_referer() ) );
+                       exit();
+               break;
+
+               case 'unarchiveblog':
+                       check_admin_referer( 'unarchiveblog' );
+                       if ( ! current_user_can( 'manage_sites' ) )
+                               wp_die( __( 'You do not have permission to access this page.' ) );
+
+                       update_blog_status( $id, 'archived', '0' );
+                       wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'unarchive' ), wp_get_referer() ) );
+                       exit();
+               break;
+
+               case 'activateblog':
+                       check_admin_referer( 'activateblog' );
+                       if ( ! current_user_can( 'manage_sites' ) )
+                               wp_die( __( 'You do not have permission to access this page.' ) );
+
+                       update_blog_status( $id, 'deleted', '0' );
+                       do_action( 'activate_blog', $id );
+                       wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'activate' ), wp_get_referer() ) );
+                       exit();
+               break;
+
+               case 'deactivateblog':
+                       check_admin_referer( 'deactivateblog' );
+                       if ( ! current_user_can( 'manage_sites' ) )
+                               wp_die( __( 'You do not have permission to access this page.' ) );
+
+                       do_action( 'deactivate_blog', $id );
+                       update_blog_status( $id, 'deleted', '1' );
+                       wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'deactivate' ), wp_get_referer() ) );
+                       exit();
+               break;
+
+               case 'unspamblog':
+                       check_admin_referer( 'unspamblog' );
+                       if ( ! current_user_can( 'manage_sites' ) )
+                               wp_die( __( 'You do not have permission to access this page.' ) );
+
+                       update_blog_status( $id, 'spam', '0' );
+                       wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'unspam' ), wp_get_referer() ) );
+                       exit();
+               break;
+
+               case 'spamblog':
+                       check_admin_referer( 'spamblog' );
+                       if ( ! current_user_can( 'manage_sites' ) )
+                               wp_die( __( 'You do not have permission to access this page.' ) );
+
+                       update_blog_status( $id, 'spam', '1' );
+                       wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'spam' ), wp_get_referer() ) );
+                       exit();
+               break;
+
+               case 'unmatureblog':
+                       check_admin_referer( 'unmatureblog' );
+                       if ( ! current_user_can( 'manage_sites' ) )
+                               wp_die( __( 'You do not have permission to access this page.' ) );
+
+                       update_blog_status( $id, 'mature', '0' );
+                       wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'unmature' ), wp_get_referer() ) );
+                       exit();
+               break;
+
+               case 'matureblog':
+                       check_admin_referer( 'matureblog' );
+                       if ( ! current_user_can( 'manage_sites' ) )
+                               wp_die( __( 'You do not have permission to access this page.' ) );
+
+                       update_blog_status( $id, 'mature', '1' );
+                       wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => 'mature' ), wp_get_referer() ) );
+                       exit();
+               break;
+
+               // Common
+               case 'confirm':
+                       check_admin_referer( 'confirm' );
+                       if ( !headers_sent() ) {
+                               nocache_headers();
+                               header( 'Content-Type: text/html; charset=utf-8' );
+                       }
+                       if ( $current_site->blog_id == $id )
+                               wp_die( __( 'You are not allowed to change the current site.' ) );
+                       ?>
+                       <!DOCTYPE html>
+                       <html xmlns="http://www.w3.org/1999/xhtml" <?php if ( function_exists( 'language_attributes' ) ) language_attributes(); ?>>
+                               <head>
+                                       <title><?php _e( 'WordPress &rsaquo; Confirm your action' ); ?></title>
+
+                                       <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+                                       <?php
+                                       wp_admin_css( 'install', true );
+                                       wp_admin_css( 'ie', true );
+                                       ?>
+                               </head>
+                               <body>
+                                       <h1 id="logo"><img alt="WordPress" src="<?php echo esc_attr( admin_url( 'images/wordpress-logo.png' ) ); ?>" /></h1>
+                                       <form action="sites.php?action=<?php echo esc_attr( $_GET['action2'] ) ?>" method="post">
+                                               <input type="hidden" name="action" value="<?php echo esc_attr( $_GET['action2'] ) ?>" />
+                                               <input type="hidden" name="id" value="<?php echo esc_attr( $id ); ?>" />
+                                               <input type="hidden" name="_wp_http_referer" value="<?php echo esc_attr( wp_get_referer() ); ?>" />
+                                               <?php wp_nonce_field( $_GET['action2'], '_wpnonce', false ); ?>
+                                               <p><?php echo esc_html( stripslashes( $_GET['msg'] ) ); ?></p>
+                                               <?php submit_button( __('Confirm'), 'button' ); ?>
+                                       </form>
+                               </body>
+                       </html>
+                       <?php
+                       exit();
+               break;
+       }
+}
+
 $msg = '';
 if ( isset( $_REQUEST['updated'] ) && $_REQUEST['updated'] == 'true' && ! empty( $_REQUEST['action'] ) ) {
        switch ( $_REQUEST['action'] ) {
 $msg = '';
 if ( isset( $_REQUEST['updated'] ) && $_REQUEST['updated'] == 'true' && ! empty( $_REQUEST['action'] ) ) {
        switch ( $_REQUEST['action'] ) {
@@ -109,7 +305,7 @@ require_once( '../admin-header.php' );
 <input type="hidden" name="action" value="blogs" />
 </form>
 
 <input type="hidden" name="action" value="blogs" />
 </form>
 
-<form id="form-site-list" action="edit.php?action=allblogs" method="post">
+<form id="form-site-list" action="sites.php?action=allblogs" method="post">
        <?php $wp_list_table->display(); ?>
 </form>
 </div>
        <?php $wp_list_table->display(); ?>
 </form>
 </div>
index a5196a8850ae2261b58431aeb65529f080843525..611c0957f462ea8da68c99d2c156841b1adbe091 100644 (file)
@@ -34,46 +34,74 @@ $_SERVER['REQUEST_URI'] = remove_query_arg( $temp_args, $_SERVER['REQUEST_URI']
 $referer = remove_query_arg( $temp_args, wp_get_referer() );
 
 if ( $action ) {
 $referer = remove_query_arg( $temp_args, wp_get_referer() );
 
 if ( $action ) {
-       $allowed_themes = get_site_option( 'allowedthemes' );   
+       $allowed_themes = get_site_option( 'allowedthemes' );
        switch ( $action ) {
                case 'enable':
                        check_admin_referer('enable-theme_' . $_GET['theme']);
                        $allowed_themes[ $_GET['theme'] ] = true;
                        update_site_option( 'allowedthemes', $allowed_themes );
        switch ( $action ) {
                case 'enable':
                        check_admin_referer('enable-theme_' . $_GET['theme']);
                        $allowed_themes[ $_GET['theme'] ] = true;
                        update_site_option( 'allowedthemes', $allowed_themes );
-                       wp_redirect( add_query_arg( 'enabled', '1', $referer ) );
+                       wp_redirect( network_admin_url( 'themes.php?enabled=1' ) );
                        exit;
                        break;
                case 'disable':
                        check_admin_referer('disable-theme_' . $_GET['theme']);
                        unset( $allowed_themes[ $_GET['theme'] ] );
                        update_site_option( 'allowedthemes', $allowed_themes );
                        exit;
                        break;
                case 'disable':
                        check_admin_referer('disable-theme_' . $_GET['theme']);
                        unset( $allowed_themes[ $_GET['theme'] ] );
                        update_site_option( 'allowedthemes', $allowed_themes );
-                       wp_redirect( add_query_arg( 'disabled', '1', $referer ) );
+                       wp_safe_redirect( add_query_arg( 'disabled', '1', $referer ) );
                        exit;
                        break;
                case 'enable-selected':
                        check_admin_referer('bulk-themes');
                        $themes = isset( $_POST['checked'] ) ? (array) $_POST['checked'] : array();
                        if ( empty($themes) ) {
                        exit;
                        break;
                case 'enable-selected':
                        check_admin_referer('bulk-themes');
                        $themes = isset( $_POST['checked'] ) ? (array) $_POST['checked'] : array();
                        if ( empty($themes) ) {
-                               wp_redirect( add_query_arg( 'error', 'none', $referer ) );
+                               wp_safe_redirect( add_query_arg( 'error', 'none', $referer ) );
                                exit;
                        }
                        foreach( (array) $themes as $theme )
                                $allowed_themes[ $theme ] = true;
                        update_site_option( 'allowedthemes', $allowed_themes );
                                exit;
                        }
                        foreach( (array) $themes as $theme )
                                $allowed_themes[ $theme ] = true;
                        update_site_option( 'allowedthemes', $allowed_themes );
-                       wp_redirect( add_query_arg( 'enabled', count( $themes ), $referer ) );
+                       wp_safe_redirect( add_query_arg( 'enabled', count( $themes ), $referer ) );
                        exit;
                        break;
                case 'disable-selected':
                        check_admin_referer('bulk-themes');
                        $themes = isset( $_POST['checked'] ) ? (array) $_POST['checked'] : array();
                        if ( empty($themes) ) {
                        exit;
                        break;
                case 'disable-selected':
                        check_admin_referer('bulk-themes');
                        $themes = isset( $_POST['checked'] ) ? (array) $_POST['checked'] : array();
                        if ( empty($themes) ) {
-                               wp_redirect( add_query_arg( 'error', 'none', $referer ) );
+                               wp_safe_redirect( add_query_arg( 'error', 'none', $referer ) );
                                exit;
                        }
                        foreach( (array) $themes as $theme )
                                unset( $allowed_themes[ $theme ] );
                        update_site_option( 'allowedthemes', $allowed_themes );
                                exit;
                        }
                        foreach( (array) $themes as $theme )
                                unset( $allowed_themes[ $theme ] );
                        update_site_option( 'allowedthemes', $allowed_themes );
-                       wp_redirect( add_query_arg( 'disabled', count( $themes ), $referer ) );
+                       wp_safe_redirect( add_query_arg( 'disabled', count( $themes ), $referer ) );
+                       exit;
+                       break;
+               case 'update-selected' :
+                       check_admin_referer( 'bulk-themes' );
+
+                       if ( isset( $_GET['themes'] ) )
+                               $themes = explode( ',', $_GET['themes'] );
+                       elseif ( isset( $_POST['checked'] ) )
+                               $themes = (array) $_POST['checked'];
+                       else
+                               $themes = array();
+
+                       $title = __( 'Update Themes' );
+                       $parent_file = 'themes.php';
+
+                       require_once(ABSPATH . 'wp-admin/admin-header.php');
+
+                       echo '<div class="wrap">';
+                       screen_icon();
+                       echo '<h2>' . esc_html( $title ) . '</h2>';
+
+
+                       $url = self_admin_url('update.php?action=update-selected-themes&amp;themes=' . urlencode( join(',', $themes) ));
+                       $url = wp_nonce_url($url, 'bulk-update-themes');
+
+                       echo "<iframe src='$url' style='width: 100%; height:100%; min-height:850px;'></iframe>";
+                       echo '</div>';
+                       require_once(ABSPATH . 'wp-admin/admin-footer.php');
                        exit;
                        break;
                case 'delete-selected':
                        exit;
                        break;
                case 'delete-selected':
@@ -89,7 +117,7 @@ if ( $action ) {
                                unset( $themes[ get_option( 'stylesheet' ) ] );
 
                        if ( empty( $themes ) ) {
                                unset( $themes[ get_option( 'stylesheet' ) ] );
 
                        if ( empty( $themes ) ) {
-                               wp_redirect( add_query_arg( 'error', 'none', $referer ) );
+                               wp_safe_redirect( add_query_arg( 'error', 'none', $referer ) );
                                exit;
                        }
 
                                exit;
                        }
 
@@ -100,13 +128,13 @@ if ( $action ) {
                                if ( $data['Name'] == $main_theme ) {
                                        unset( $themes[$key] );
                                } else {
                                if ( $data['Name'] == $main_theme ) {
                                        unset( $themes[$key] );
                                } else {
-                                       $files_to_delete = array_merge( $files_to_delete, list_files( WP_CONTENT_DIR . "/themes/$theme" ) );                                    
+                                       $files_to_delete = array_merge( $files_to_delete, list_files( WP_CONTENT_DIR . "/themes/$theme" ) );
                                        $theme_info[ $theme ] = $data;
                                }
                        }
                                        $theme_info[ $theme ] = $data;
                                }
                        }
-                       
+
                        if ( empty( $themes ) ) {
                        if ( empty( $themes ) ) {
-                               wp_redirect( add_query_arg( 'error', 'main', $referer ) );
+                               wp_safe_redirect( add_query_arg( 'error', 'main', $referer ) );
                                exit;
                        }
 
                                exit;
                        }
 
@@ -162,7 +190,7 @@ if ( $action ) {
 
                        foreach ( $themes as $theme )
                                $delete_result = delete_theme( $theme, esc_url( add_query_arg( array('verify-delete' => 1), $_SERVER['REQUEST_URI'] ) ) );
 
                        foreach ( $themes as $theme )
                                $delete_result = delete_theme( $theme, esc_url( add_query_arg( array('verify-delete' => 1), $_SERVER['REQUEST_URI'] ) ) );
-                       $paged = ( $_REQUEST['paged'] ) ? $_REQUEST['paged'] : 1; 
+                       $paged = ( $_REQUEST['paged'] ) ? $_REQUEST['paged'] : 1;
                        wp_redirect( network_admin_url( "themes.php?deleted=".count( $themes )."&paged=$paged&s=$s" ) );
                        exit;
                        break;
                        wp_redirect( network_admin_url( "themes.php?deleted=".count( $themes )."&paged=$paged&s=$s" ) );
                        exit;
                        break;
@@ -175,10 +203,16 @@ add_thickbox();
 
 add_screen_option( 'per_page', array('label' => _x( 'Themes', 'themes per page (screen options)' )) );
 
 
 add_screen_option( 'per_page', array('label' => _x( 'Themes', 'themes per page (screen options)' )) );
 
-add_contextual_help($current_screen,
-       '<p>' . __('This screen enables and disables the inclusion of themes available to choose in the Appearance menu for each site. It does not activate or deactivate which theme a site is currently using.') . '</p>' .
-       '<p>' . __('If the network admin disables a theme that is in use, it can still remain selected on that site. If another theme is chosen, the disabled theme will not appear in the site&#8217;s Appearance > Themes screen.') . '</p>' .
-       '<p>' . __('Themes can be enabled on a site by site basis by the network admin on the Edit Site screen (which has a Themes tab); get there via the Edit action link on the All Sites screen. Only network admins are able to install or edit themes.') . '</p>' .
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' =>
+               '<p>' . __('This screen enables and disables the inclusion of themes available to choose in the Appearance menu for each site. It does not activate or deactivate which theme a site is currently using.') . '</p>' .
+               '<p>' . __('If the network admin disables a theme that is in use, it can still remain selected on that site. If another theme is chosen, the disabled theme will not appear in the site&#8217;s Appearance > Themes screen.') . '</p>' .
+               '<p>' . __('Themes can be enabled on a site by site basis by the network admin on the Edit Site screen (which has a Themes tab); get there via the Edit action link on the All Sites screen. Only network admins are able to install or edit themes.') . '</p>'
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin_Themes_Screen" target="_blank">Documentation on Network Themes</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin_Themes_Screen" target="_blank">Documentation on Network Themes</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
@@ -194,8 +228,8 @@ require_once(ABSPATH . 'wp-admin/admin-header.php');
 <div class="wrap">
 <?php screen_icon('themes'); ?>
 <h2><?php echo esc_html( $title ); if ( current_user_can('install_themes') ) { ?> <a href="theme-install.php" class="add-new-h2"><?php echo esc_html_x('Add New', 'theme'); ?></a><?php }
 <div class="wrap">
 <?php screen_icon('themes'); ?>
 <h2><?php echo esc_html( $title ); if ( current_user_can('install_themes') ) { ?> <a href="theme-install.php" class="add-new-h2"><?php echo esc_html_x('Add New', 'theme'); ?></a><?php }
-if ( $s ) 
-       printf( '<span class="subtitle">' . __('Search results for &#8220;%s&#8221;') . '</span>', esc_html( $s ) ); ?> 
+if ( $s )
+       printf( '<span class="subtitle">' . __('Search results for &#8220;%s&#8221;') . '</span>', esc_html( $s ) ); ?>
 </h2>
 
 <?php
 </h2>
 
 <?php
index 560407948a0c078f78f6493c7261a183f9646e92..d556e13cdab80ab674fee17dae33b3031c5e9f17 100644 (file)
@@ -18,10 +18,16 @@ require_once( ABSPATH . WPINC . '/http.php' );
 $title = __( 'Update Network' );
 $parent_file = 'upgrade.php';
 
 $title = __( 'Update Network' );
 $parent_file = 'upgrade.php';
 
-add_contextual_help($current_screen,
-       '<p>' . __('Only use this screen once you have updated to a new version of WordPress through Updates/Available Updates (via the Network Administration navigation menu or the Admin Bar). Clicking the Update Network button will step through each site in the network, five at a time, and make sure any database updates are applied.') . '</p>' .
-       '<p>' . __('If a version update to core has not happened, clicking this button won&#8217;t affect anything.') . '</p>' .
-       '<p>' . __('If this process fails for any reason, users logging in to their sites will force the same update.') . '</p>' .
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' =>
+               '<p>' . __('Only use this screen once you have updated to a new version of WordPress through Updates/Available Updates (via the Network Administration navigation menu or the Toolbar). Clicking the Update Network button will step through each site in the network, five at a time, and make sure any database updates are applied.') . '</p>' .
+               '<p>' . __('If a version update to core has not happened, clicking this button won&#8217;t affect anything.') . '</p>' .
+               '<p>' . __('If this process fails for any reason, users logging in to their sites will force the same update.') . '</p>'
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin_Updates_Screen" target="_blank">Documentation on Update Network</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin_Updates_Screen" target="_blank">Documentation on Update Network</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
index 6690d994c25f618331c94fc246dc452329aaaa62..03dadce8c35e7c06d7f806c841a6b31517802dd6 100644 (file)
@@ -17,9 +17,15 @@ if ( ! current_user_can('create_users') )
        wp_die(__('You do not have sufficient permissions to add users to this network.'));
 
 
        wp_die(__('You do not have sufficient permissions to add users to this network.'));
 
 
-add_contextual_help($current_screen,
-       '<p>' . __('Add User will set up a new user account on the network and send that person an email with username and password.') . '</p>' .
-       '<p>' . __('Users who are signed up to the network without a site are added as subscribers to the main or primary dashboard site, giving them profile pages to manage their accounts. These users will only see Dashboard and My Sites in the main navigation until a site is created for them.') . '</p>' .
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' =>
+               '<p>' . __('Add User will set up a new user account on the network and send that person an email with username and password.') . '</p>' .
+               '<p>' . __('Users who are signed up to the network without a site are added as subscribers to the main or primary dashboard site, giving them profile pages to manage their accounts. These users will only see Dashboard and My Sites in the main navigation until a site is created for them.') . '</p>'
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin_Users_Screen" target="_blank">Documentation on Network Users</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/forum/multisite/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin_Users_Screen" target="_blank">Documentation on Network Users</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/forum/multisite/" target="_blank">Support Forums</a>') . '</p>'
@@ -35,7 +41,7 @@ if ( isset($_REQUEST['action']) && 'add-user' == $_REQUEST['action'] ) {
 
        $user = $_POST['user'];
 
 
        $user = $_POST['user'];
 
-       $user_details = wpmu_validate_user_signup( $user['username'], $user['email'] ); 
+       $user_details = wpmu_validate_user_signup( $user['username'], $user['email'] );
        if ( is_wp_error( $user_details[ 'errors' ] ) && ! empty( $user_details[ 'errors' ]->errors ) ) {
                $add_user_errors = $user_details[ 'errors' ];
        } else {
        if ( is_wp_error( $user_details[ 'errors' ] ) && ! empty( $user_details[ 'errors' ]->errors ) ) {
                $add_user_errors = $user_details[ 'errors' ];
        } else {
@@ -80,7 +86,7 @@ if ( isset( $add_user_errors ) && is_wp_error( $add_user_errors ) ) { ?>
                ?>
        </div>
 <?php } ?>
                ?>
        </div>
 <?php } ?>
-       <form action="<?php echo network_admin_url('user-new.php?action=add-user'); ?>" id="adduser" method="post">     
+       <form action="<?php echo network_admin_url('user-new.php?action=add-user'); ?>" id="adduser" method="post">
        <table class="form-table">
                <tr class="form-field form-required">
                        <th scope="row"><?php _e( 'Username' ) ?></th>
        <table class="form-table">
                <tr class="form-field form-required">
                        <th scope="row"><?php _e( 'Username' ) ?></th>
index 44a6c9c6e90e89e213e0e51a3b34662b2a5cd859..25d853d9f0be930fea064c3b0088ce3d777ab5a7 100644 (file)
@@ -16,6 +16,205 @@ if ( ! is_multisite() )
 if ( ! current_user_can( 'manage_network_users' ) )
        wp_die( __( 'You do not have permission to access this page.' ) );
 
 if ( ! current_user_can( 'manage_network_users' ) )
        wp_die( __( 'You do not have permission to access this page.' ) );
 
+function confirm_delete_users( $users ) {
+       $current_user = wp_get_current_user();
+       if ( !is_array( $users ) )
+               return false;
+
+       screen_icon();
+       ?>
+       <h2><?php esc_html_e( 'Users' ); ?></h2>
+       <p><?php _e( 'Transfer or delete posts and links before deleting users.' ); ?></p>
+       <form action="users.php?action=dodelete" method="post">
+       <input type="hidden" name="dodelete" />
+       <?php
+       wp_nonce_field( 'ms-users-delete' );
+       $site_admins = get_super_admins();
+       $admin_out = "<option value='$current_user->ID'>$current_user->user_login</option>";
+
+       foreach ( ( $allusers = (array) $_POST['allusers'] ) as $key => $val ) {
+               if ( $val != '' && $val != '0' ) {
+                       $delete_user = new WP_User( $val );
+
+                       if ( ! current_user_can( 'delete_user', $delete_user->ID ) )
+                               wp_die( sprintf( __( 'Warning! User %s cannot be deleted.' ), $delete_user->user_login ) );
+
+                       if ( in_array( $delete_user->user_login, $site_admins ) )
+                               wp_die( sprintf( __( 'Warning! User cannot be deleted. The user %s is a network admnistrator.' ), $delete_user->user_login ) );
+
+                       echo "<input type='hidden' name='user[]' value='{$val}'/>\n";
+                       $blogs = get_blogs_of_user( $val, true );
+
+                       if ( !empty( $blogs ) ) {
+                               ?>
+                               <br /><fieldset><p><legend><?php printf( __( "What should be done with posts and links owned by <em>%s</em>?" ), $delete_user->user_login ); ?></legend></p>
+                               <?php
+                               foreach ( (array) $blogs as $key => $details ) {
+                                       $blog_users = get_users( array( 'blog_id' => $details->userblog_id ) );
+                                       if ( is_array( $blog_users ) && !empty( $blog_users ) ) {
+                                               $user_site = "<a href='" . esc_url( get_home_url( $details->userblog_id ) ) . "'>{$details->blogname}</a>";
+                                               $user_dropdown = "<select name='blog[$val][{$key}]'>";
+                                               $user_list = '';
+                                               foreach ( $blog_users as $user ) {
+                                                       if ( ! in_array( $user->ID, $allusers ) )
+                                                               $user_list .= "<option value='{$user->ID}'>{$user->user_login}</option>";
+                                               }
+                                               if ( '' == $user_list )
+                                                       $user_list = $admin_out;
+                                               $user_dropdown .= $user_list;
+                                               $user_dropdown .= "</select>\n";
+                                               ?>
+                                               <ul style="list-style:none;">
+                                                       <li><?php printf( __( 'Site: %s' ), $user_site ); ?></li>
+                                                       <li><label><input type="radio" id="delete_option0" name="delete[<?php echo $details->userblog_id . '][' . $delete_user->ID ?>]" value="delete" checked="checked" />
+                                                       <?php _e( 'Delete all posts and links.' ); ?></label></li>
+                                                       <li><label><input type="radio" id="delete_option1" name="delete[<?php echo $details->userblog_id . '][' . $delete_user->ID ?>]" value="reassign" />
+                                                       <?php echo __( 'Attribute all posts and links to:' ) . '</label>' . $user_dropdown; ?></li>
+                                               </ul>
+                                               <?php
+                                       }
+                               }
+                               echo "</fieldset>";
+                       }
+               }
+       }
+
+       submit_button( __('Confirm Deletion'), 'delete' );
+       ?>
+       </form>
+    <?php
+       return true;
+}
+
+if ( isset( $_GET['action'] ) ) {
+       do_action( 'wpmuadminedit' , '' );
+
+       switch ( $_GET['action'] ) {
+               case 'deleteuser':
+                       if ( ! current_user_can( 'manage_network_users' ) )
+                               wp_die( __( 'You do not have permission to access this page.' ) );
+
+                       check_admin_referer( 'deleteuser' );
+
+                       $id = intval( $_GET['id'] );
+                       if ( $id != '0' && $id != '1' ) {
+                               $_POST['allusers'] = array( $id ); // confirm_delete_users() can only handle with arrays
+                               $title = __( 'Users' );
+                               $parent_file = 'users.php';
+                               require_once( '../admin-header.php' );
+                               echo '<div class="wrap">';
+                               confirm_delete_users( $_POST['allusers'] );
+                               echo '</div>';
+                   require_once( '../admin-footer.php' );
+                       } else {
+                               wp_redirect( network_admin_url( 'users.php' ) );
+                       }
+                       exit();
+               break;
+
+               case 'allusers':
+                       if ( !current_user_can( 'manage_network_users' ) )
+                               wp_die( __( 'You do not have permission to access this page.' ) );
+
+                       if ( ( isset( $_POST['action']) || isset($_POST['action2'] ) ) && isset( $_POST['allusers'] ) ) {
+                               check_admin_referer( 'bulk-users-network' );
+
+                               if ( $_GET['action'] != -1 || $_POST['action2'] != -1 )
+                                       $doaction = $_POST['action'] != -1 ? $_POST['action'] : $_POST['action2'];
+
+                               $userfunction = '';
+
+                               foreach ( (array) $_POST['allusers'] as $key => $val ) {
+                                       if ( !empty( $val ) ) {
+                                               switch ( $doaction ) {
+                                                       case 'delete':
+                                                               if ( ! current_user_can( 'delete_users' ) )
+                                                                       wp_die( __( 'You do not have permission to access this page.' ) );
+                                                               $title = __( 'Users' );
+                                                               $parent_file = 'users.php';
+                                                               require_once( '../admin-header.php' );
+                                                               echo '<div class="wrap">';
+                                                               confirm_delete_users( $_POST['allusers'] );
+                                                               echo '</div>';
+                                                   require_once( '../admin-footer.php' );
+                                                   exit();
+                                               break;
+
+                                                       case 'spam':
+                                                               $user = new WP_User( $val );
+                                                               if ( in_array( $user->user_login, get_super_admins() ) )
+                                                                       wp_die( sprintf( __( 'Warning! User cannot be modified. The user %s is a network administrator.' ), esc_html( $user->user_login ) ) );
+
+                                                               $userfunction = 'all_spam';
+                                                               $blogs = get_blogs_of_user( $val, true );
+                                                               foreach ( (array) $blogs as $key => $details ) {
+                                                                       if ( $details->userblog_id != $current_site->blog_id ) // main blog not a spam !
+                                                                               update_blog_status( $details->userblog_id, 'spam', '1' );
+                                                               }
+                                                               update_user_status( $val, 'spam', '1' );
+                                                       break;
+
+                                                       case 'notspam':
+                                                               $userfunction = 'all_notspam';
+                                                               $blogs = get_blogs_of_user( $val, true );
+                                                               foreach ( (array) $blogs as $key => $details )
+                                                                       update_blog_status( $details->userblog_id, 'spam', '0' );
+
+                                                               update_user_status( $val, 'spam', '0' );
+                                                       break;
+                                               }
+                                       }
+                               }
+
+                               wp_safe_redirect( add_query_arg( array( 'updated' => 'true', 'action' => $userfunction ), wp_get_referer() ) );
+                       } else {
+                               $location = network_admin_url( 'users.php' );
+
+                               if ( ! empty( $_REQUEST['paged'] ) )
+                                       $location = add_query_arg( 'paged', (int) $_REQUEST['paged'], $location );
+                               wp_redirect( $location );
+                       }
+                       exit();
+               break;
+
+               case 'dodelete':
+                       check_admin_referer( 'ms-users-delete' );
+                       if ( ! ( current_user_can( 'manage_network_users' ) && current_user_can( 'delete_users' ) ) )
+                               wp_die( __( 'You do not have permission to access this page.' ) );
+
+                       if ( ! empty( $_POST['blog'] ) && is_array( $_POST['blog'] ) ) {
+                               foreach ( $_POST['blog'] as $id => $users ) {
+                                       foreach ( $users as $blogid => $user_id ) {
+                                               if ( ! current_user_can( 'delete_user', $id ) )
+                                                       continue;
+
+                                               if ( ! empty( $_POST['delete'] ) && 'reassign' == $_POST['delete'][$blogid][$id] )
+                                                       remove_user_from_blog( $id, $blogid, $user_id );
+                                               else
+                                                       remove_user_from_blog( $id, $blogid );
+                                       }
+                               }
+                       }
+                       $i = 0;
+                       if ( is_array( $_POST['user'] ) && ! empty( $_POST['user'] ) )
+                               foreach( $_POST['user'] as $id ) {
+                                       if ( ! current_user_can( 'delete_user', $id ) )
+                                               continue;
+                                       wpmu_delete_user( $id );
+                                       $i++;
+                               }
+
+                       if ( $i == 1 )
+                               $deletefunction = 'delete';
+                       else
+                               $deletefunction = 'all_delete';
+
+                       wp_redirect( add_query_arg( array( 'updated' => 'true', 'action' => $deletefunction ), network_admin_url( 'users.php' ) ) );
+                       exit();
+               break;
+       }
+}
+
 $wp_list_table = _get_list_table('WP_MS_Users_List_Table');
 $pagenum = $wp_list_table->get_pagenum();
 $wp_list_table->prepare_items();
 $wp_list_table = _get_list_table('WP_MS_Users_List_Table');
 $pagenum = $wp_list_table->get_pagenum();
 $wp_list_table->prepare_items();
@@ -30,13 +229,19 @@ $parent_file = 'users.php';
 
 add_screen_option( 'per_page', array('label' => _x( 'Users', 'users per page (screen options)' )) );
 
 
 add_screen_option( 'per_page', array('label' => _x( 'Users', 'users per page (screen options)' )) );
 
-add_contextual_help($current_screen,
-       '<p>' . __('This table shows all users across the network and the sites to which they are assigned.') . '</p>' .
-       '<p>' . __('Hover over any user on the list to make the edit links appear. The Edit link on the left will take you to his or her Edit User profile page; the Edit link on the right by any site name goes to an Edit Site screen for that site.') . '</p>' .
-       '<p>' . __('You can also go to the user&#8217;s profile page by clicking on the individual username.') . '</p>' .
-       '<p>' . __('You can sort the table by clicking on any of the bold headings and switch between list and excerpt views by using the icons in the upper right.') . '</p>' .
-       '<p>' . __('The bulk action will permanently delete selected users, or mark/unmark those selected as spam. Spam users will have posts removed and will be unable to sign up again with the same email addresses.') . '</p>' .
-       '<p>' . __('You can make an existing user an additional super admin by going to the Edit User profile page and checking the box to grant that privilege.') . '</p>' .
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' =>
+               '<p>' . __('This table shows all users across the network and the sites to which they are assigned.') . '</p>' .
+               '<p>' . __('Hover over any user on the list to make the edit links appear. The Edit link on the left will take you to his or her Edit User profile page; the Edit link on the right by any site name goes to an Edit Site screen for that site.') . '</p>' .
+               '<p>' . __('You can also go to the user&#8217;s profile page by clicking on the individual username.') . '</p>' .
+               '<p>' . __('You can sort the table by clicking on any of the bold headings and switch between list and excerpt views by using the icons in the upper right.') . '</p>' .
+               '<p>' . __('The bulk action will permanently delete selected users, or mark/unmark those selected as spam. Spam users will have posts removed and will be unable to sign up again with the same email addresses.') . '</p>' .
+               '<p>' . __('You can make an existing user an additional super admin by going to the Edit User profile page and checking the box to grant that privilege.') . '</p>'
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin_Users_Screen" target="_blank">Documentation on Network Users</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/forum/multisite/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Network_Admin_Users_Screen" target="_blank">Documentation on Network Users</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/forum/multisite/" target="_blank">Support Forums</a>') . '</p>'
@@ -76,7 +281,7 @@ if ( isset( $_REQUEST['updated'] ) && $_REQUEST['updated'] == 'true' && ! empty(
        if ( current_user_can( 'create_users') ) : ?>
                <a href="<?php echo network_admin_url('user-new.php'); ?>" class="add-new-h2"><?php echo esc_html_x( 'Add New', 'user' ); ?></a><?php
        endif;
        if ( current_user_can( 'create_users') ) : ?>
                <a href="<?php echo network_admin_url('user-new.php'); ?>" class="add-new-h2"><?php echo esc_html_x( 'Add New', 'user' ); ?></a><?php
        endif;
-       
+
        if ( !empty( $usersearch ) )
        printf( '<span class="subtitle">' . __( 'Search results for &#8220;%s&#8221;' ) . '</span>', esc_html( $usersearch ) );
        ?>
        if ( !empty( $usersearch ) )
        printf( '<span class="subtitle">' . __( 'Search results for &#8220;%s&#8221;' ) . '</span>', esc_html( $usersearch ) );
        ?>
@@ -88,7 +293,7 @@ if ( isset( $_REQUEST['updated'] ) && $_REQUEST['updated'] == 'true' && ! empty(
                <?php $wp_list_table->search_box( __( 'Search Users' ), 'user' ); ?>
        </form>
 
                <?php $wp_list_table->search_box( __( 'Search Users' ), 'user' ); ?>
        </form>
 
-       <form id="form-user-list" action='edit.php?action=allusers' method='post'>
+       <form id="form-user-list" action='users.php?action=allusers' method='post'>
                <?php $wp_list_table->display(); ?>
        </form>
 </div>
                <?php $wp_list_table->display(); ?>
        </form>
 </div>
index 862b002dd59bcd2b6335654aed0d29f60c4939a3..6270f99f98e79de878bf3b3fb3cf344774fb8ddb 100644 (file)
@@ -15,9 +15,14 @@ if ( ! current_user_can( 'manage_options' ) )
 $title = __('Discussion Settings');
 $parent_file = 'options-general.php';
 
 $title = __('Discussion Settings');
 $parent_file = 'options-general.php';
 
-add_contextual_help($current_screen,
-       '<p>' . __('This screen provides many options for controlling the management and display of comments and links to your posts/pages. So many, in fact, they won&#8217;t all fit here! :) Use the documentation link below to get information on what each discussion setting does.') . '</p>' .
-       '<p>' . __('You must click the Save Changes button at the bottom of the screen for new settings to take effect.') . '</p>' .
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' => '<p>' . __('This screen provides many options for controlling the management and display of comments and links to your posts/pages. So many, in fact, they won&#8217;t all fit here! :) Use the documentation links to get information on what each discussion setting does.') . '</p>' .
+               '<p>' . __('You must click the Save Changes button at the bottom of the screen for new settings to take effect.') . '</p>',
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Settings_Discussion_Screen" target="_blank">Documentation on Discussion Settings</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Settings_Discussion_Screen" target="_blank">Documentation on Discussion Settings</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
@@ -35,38 +40,38 @@ include('./admin-header.php');
 
 <table class="form-table">
 <tr valign="top">
 
 <table class="form-table">
 <tr valign="top">
-<th scope="row"><?php _e('Default article settings') ?></th>
-<td><fieldset><legend class="screen-reader-text"><span><?php _e('Default article settings') ?></span></legend>
+<th scope="row"><?php _e('Default article settings'); ?></th>
+<td><fieldset><legend class="screen-reader-text"><span><?php _e('Default article settings'); ?></span></legend>
 <label for="default_pingback_flag">
 <input name="default_pingback_flag" type="checkbox" id="default_pingback_flag" value="1" <?php checked('1', get_option('default_pingback_flag')); ?> />
 <label for="default_pingback_flag">
 <input name="default_pingback_flag" type="checkbox" id="default_pingback_flag" value="1" <?php checked('1', get_option('default_pingback_flag')); ?> />
-<?php _e('Attempt to notify any blogs linked to from the article.') ?></label>
+<?php _e('Attempt to notify any blogs linked to from the article'); ?></label>
 <br />
 <label for="default_ping_status">
 <input name="default_ping_status" type="checkbox" id="default_ping_status" value="open" <?php checked('open', get_option('default_ping_status')); ?> />
 <br />
 <label for="default_ping_status">
 <input name="default_ping_status" type="checkbox" id="default_ping_status" value="open" <?php checked('open', get_option('default_ping_status')); ?> />
-<?php _e('Allow link notifications from other blogs (pingbacks and trackbacks.)') ?></label>
+<?php _e('Allow link notifications from other blogs (pingbacks and trackbacks)'); ?></label>
 <br />
 <label for="default_comment_status">
 <input name="default_comment_status" type="checkbox" id="default_comment_status" value="open" <?php checked('open', get_option('default_comment_status')); ?> />
 <br />
 <label for="default_comment_status">
 <input name="default_comment_status" type="checkbox" id="default_comment_status" value="open" <?php checked('open', get_option('default_comment_status')); ?> />
-<?php _e('Allow people to post comments on new articles') ?></label>
+<?php _e('Allow people to post comments on new articles'); ?></label>
 <br />
 <small><em><?php echo '(' . __('These settings may be overridden for individual articles.') . ')'; ?></em></small>
 </fieldset></td>
 </tr>
 <tr valign="top">
 <br />
 <small><em><?php echo '(' . __('These settings may be overridden for individual articles.') . ')'; ?></em></small>
 </fieldset></td>
 </tr>
 <tr valign="top">
-<th scope="row"><?php _e('Other comment settings') ?></th>
-<td><fieldset><legend class="screen-reader-text"><span><?php _e('Other comment settings') ?></span></legend>
-<label for="require_name_email"><input type="checkbox" name="require_name_email" id="require_name_email" value="1" <?php checked('1', get_option('require_name_email')); ?> /> <?php _e('Comment author must fill out name and e-mail') ?></label>
+<th scope="row"><?php _e('Other comment settings'); ?></th>
+<td><fieldset><legend class="screen-reader-text"><span><?php _e('Other comment settings'); ?></span></legend>
+<label for="require_name_email"><input type="checkbox" name="require_name_email" id="require_name_email" value="1" <?php checked('1', get_option('require_name_email')); ?> /> <?php _e('Comment author must fill out name and e-mail'); ?></label>
 <br />
 <label for="comment_registration">
 <input name="comment_registration" type="checkbox" id="comment_registration" value="1" <?php checked('1', get_option('comment_registration')); ?> />
 <br />
 <label for="comment_registration">
 <input name="comment_registration" type="checkbox" id="comment_registration" value="1" <?php checked('1', get_option('comment_registration')); ?> />
-<?php _e('Users must be registered and logged in to comment') ?>
+<?php _e('Users must be registered and logged in to comment'); ?>
 <?php if ( !get_option( 'users_can_register' ) && is_multisite() ) echo ' ' . __( '(Signup has been disabled. Only members of this site can comment.)' ); ?>
 </label>
 <br />
 
 <label for="close_comments_for_old_posts">
 <input name="close_comments_for_old_posts" type="checkbox" id="close_comments_for_old_posts" value="1" <?php checked('1', get_option('close_comments_for_old_posts')); ?> />
 <?php if ( !get_option( 'users_can_register' ) && is_multisite() ) echo ' ' . __( '(Signup has been disabled. Only members of this site can comment.)' ); ?>
 </label>
 <br />
 
 <label for="close_comments_for_old_posts">
 <input name="close_comments_for_old_posts" type="checkbox" id="close_comments_for_old_posts" value="1" <?php checked('1', get_option('close_comments_for_old_posts')); ?> />
-<?php printf( __('Automatically close comments on articles older than %s days'), '</label><input name="close_comments_days_old" type="text" id="close_comments_days_old" value="' . esc_attr(get_option('close_comments_days_old')) . '" class="small-text" />') ?>
+<?php printf( __('Automatically close comments on articles older than %s days'), '</label><input name="close_comments_days_old" type="text" id="close_comments_days_old" value="' . esc_attr(get_option('close_comments_days_old')) . '" class="small-text" />'); ?>
 <br />
 <label for="thread_comments">
 <input name="thread_comments" type="checkbox" id="thread_comments" value="1" <?php checked('1', get_option('thread_comments')); ?> />
 <br />
 <label for="thread_comments">
 <input name="thread_comments" type="checkbox" id="thread_comments" value="1" <?php checked('1', get_option('thread_comments')); ?> />
@@ -113,42 +118,42 @@ printf( __('Comments should be displayed with the %s comments at the top of each
 </fieldset></td>
 </tr>
 <tr valign="top">
 </fieldset></td>
 </tr>
 <tr valign="top">
-<th scope="row"><?php _e('E-mail me whenever') ?></th>
-<td><fieldset><legend class="screen-reader-text"><span><?php _e('E-mail me whenever') ?></span></legend>
+<th scope="row"><?php _e('E-mail me whenever'); ?></th>
+<td><fieldset><legend class="screen-reader-text"><span><?php _e('E-mail me whenever'); ?></span></legend>
 <label for="comments_notify">
 <input name="comments_notify" type="checkbox" id="comments_notify" value="1" <?php checked('1', get_option('comments_notify')); ?> />
 <label for="comments_notify">
 <input name="comments_notify" type="checkbox" id="comments_notify" value="1" <?php checked('1', get_option('comments_notify')); ?> />
-<?php _e('Anyone posts a comment') ?> </label>
+<?php _e('Anyone posts a comment'); ?> </label>
 <br />
 <label for="moderation_notify">
 <input name="moderation_notify" type="checkbox" id="moderation_notify" value="1" <?php checked('1', get_option('moderation_notify')); ?> />
 <br />
 <label for="moderation_notify">
 <input name="moderation_notify" type="checkbox" id="moderation_notify" value="1" <?php checked('1', get_option('moderation_notify')); ?> />
-<?php _e('A comment is held for moderation') ?> </label>
+<?php _e('A comment is held for moderation'); ?> </label>
 </fieldset></td>
 </tr>
 <tr valign="top">
 </fieldset></td>
 </tr>
 <tr valign="top">
-<th scope="row"><?php _e('Before a comment appears') ?></th>
-<td><fieldset><legend class="screen-reader-text"><span><?php _e('Before a comment appears') ?></span></legend>
+<th scope="row"><?php _e('Before a comment appears'); ?></th>
+<td><fieldset><legend class="screen-reader-text"><span><?php _e('Before a comment appears'); ?></span></legend>
 <label for="comment_moderation">
 <input name="comment_moderation" type="checkbox" id="comment_moderation" value="1" <?php checked('1', get_option('comment_moderation')); ?> />
 <label for="comment_moderation">
 <input name="comment_moderation" type="checkbox" id="comment_moderation" value="1" <?php checked('1', get_option('comment_moderation')); ?> />
-<?php _e('An administrator must always approve the comment') ?> </label>
+<?php _e('An administrator must always approve the comment'); ?> </label>
 <br />
 <br />
-<label for="comment_whitelist"><input type="checkbox" name="comment_whitelist" id="comment_whitelist" value="1" <?php checked('1', get_option('comment_whitelist')); ?> /> <?php _e('Comment author must have a previously approved comment') ?></label>
+<label for="comment_whitelist"><input type="checkbox" name="comment_whitelist" id="comment_whitelist" value="1" <?php checked('1', get_option('comment_whitelist')); ?> /> <?php _e('Comment author must have a previously approved comment'); ?></label>
 </fieldset></td>
 </tr>
 <tr valign="top">
 </fieldset></td>
 </tr>
 <tr valign="top">
-<th scope="row"><?php _e('Comment Moderation') ?></th>
-<td><fieldset><legend class="screen-reader-text"><span><?php _e('Comment Moderation') ?></span></legend>
-<p><label for="comment_max_links"><?php printf(__('Hold a comment in the queue if it contains %s or more links. (A common characteristic of comment spam is a large number of hyperlinks.)'), '<input name="comment_max_links" type="text" id="comment_max_links" value="' . esc_attr(get_option('comment_max_links')) . '" class="small-text" />' ) ?></label></p>
+<th scope="row"><?php _e('Comment Moderation'); ?></th>
+<td><fieldset><legend class="screen-reader-text"><span><?php _e('Comment Moderation'); ?></span></legend>
+<p><label for="comment_max_links"><?php printf(__('Hold a comment in the queue if it contains %s or more links. (A common characteristic of comment spam is a large number of hyperlinks.)'), '<input name="comment_max_links" type="text" id="comment_max_links" value="' . esc_attr(get_option('comment_max_links')) . '" class="small-text" />' ); ?></label></p>
 
 
-<p><label for="moderation_keys"><?php _e('When a comment contains any of these words in its content, name, URL, e-mail, or IP, it will be held in the <a href="edit-comments.php?comment_status=moderated">moderation queue</a>. One word or IP per line. It will match inside words, so &#8220;press&#8221; will match &#8220;WordPress&#8221;.') ?></label></p>
+<p><label for="moderation_keys"><?php _e('When a comment contains any of these words in its content, name, URL, e-mail, or IP, it will be held in the <a href="edit-comments.php?comment_status=moderated">moderation queue</a>. One word or IP per line. It will match inside words, so &#8220;press&#8221; will match &#8220;WordPress&#8221;.'); ?></label></p>
 <p>
 <textarea name="moderation_keys" rows="10" cols="50" id="moderation_keys" class="large-text code"><?php echo esc_textarea( get_option( 'moderation_keys' ) ); ?></textarea>
 </p>
 </fieldset></td>
 </tr>
 <tr valign="top">
 <p>
 <textarea name="moderation_keys" rows="10" cols="50" id="moderation_keys" class="large-text code"><?php echo esc_textarea( get_option( 'moderation_keys' ) ); ?></textarea>
 </p>
 </fieldset></td>
 </tr>
 <tr valign="top">
-<th scope="row"><?php _e('Comment Blacklist') ?></th>
-<td><fieldset><legend class="screen-reader-text"><span><?php _e('Comment Blacklist') ?></span></legend>
-<p><label for="blacklist_keys"><?php _e('When a comment contains any of these words in its content, name, URL, e-mail, or IP, it will be marked as spam. One word or IP per line. It will match inside words, so &#8220;press&#8221; will match &#8220;WordPress&#8221;.') ?></label></p>
+<th scope="row"><?php _e('Comment Blacklist'); ?></th>
+<td><fieldset><legend class="screen-reader-text"><span><?php _e('Comment Blacklist'); ?></span></legend>
+<p><label for="blacklist_keys"><?php _e('When a comment contains any of these words in its content, name, URL, e-mail, or IP, it will be marked as spam. One word or IP per line. It will match inside words, so &#8220;press&#8221; will match &#8220;WordPress&#8221;.'); ?></label></p>
 <p>
 <textarea name="blacklist_keys" rows="10" cols="50" id="blacklist_keys" class="large-text code"><?php echo esc_textarea( get_option( 'blacklist_keys' ) ); ?></textarea>
 </p>
 <p>
 <textarea name="blacklist_keys" rows="10" cols="50" id="blacklist_keys" class="large-text code"><?php echo esc_textarea( get_option( 'blacklist_keys' ) ); ?></textarea>
 </p>
@@ -157,7 +162,7 @@ printf( __('Comments should be displayed with the %s comments at the top of each
 <?php do_settings_fields('discussion', 'default'); ?>
 </table>
 
 <?php do_settings_fields('discussion', 'default'); ?>
 </table>
 
-<h3><?php _e('Avatars') ?></h3>
+<h3><?php _e('Avatars'); ?></h3>
 
 <p><?php _e('An avatar is an image that follows you from weblog to weblog appearing beside your name when you comment on avatar enabled sites.  Here you can enable the display of avatars for people who comment on your site.'); ?></p>
 
 
 <p><?php _e('An avatar is an image that follows you from weblog to weblog appearing beside your name when you comment on avatar enabled sites.  Here you can enable the display of avatars for people who comment on your site.'); ?></p>
 
@@ -165,8 +170,8 @@ printf( __('Comments should be displayed with the %s comments at the top of each
 
 <table class="form-table">
 <tr valign="top">
 
 <table class="form-table">
 <tr valign="top">
-<th scope="row"><?php _e('Avatar Display') ?></th>
-<td><fieldset><legend class="screen-reader-text"><span><?php _e('Avatar Display') ?></span></legend>
+<th scope="row"><?php _e('Avatar Display'); ?></th>
+<td><fieldset><legend class="screen-reader-text"><span><?php _e('Avatar Display'); ?></span></legend>
 <?php
        $yesorno = array( 0 => __( 'Don&#8217;t show Avatars' ), 1 => __( 'Show Avatars' ) );
        foreach ( $yesorno as $key => $value) {
 <?php
        $yesorno = array( 0 => __( 'Don&#8217;t show Avatars' ), 1 => __( 'Show Avatars' ) );
        foreach ( $yesorno as $key => $value) {
@@ -177,8 +182,8 @@ printf( __('Comments should be displayed with the %s comments at the top of each
 </fieldset></td>
 </tr>
 <tr valign="top">
 </fieldset></td>
 </tr>
 <tr valign="top">
-<th scope="row"><?php _e('Maximum Rating') ?></th>
-<td><fieldset><legend class="screen-reader-text"><span><?php _e('Maximum Rating') ?></span></legend>
+<th scope="row"><?php _e('Maximum Rating'); ?></th>
+<td><fieldset><legend class="screen-reader-text"><span><?php _e('Maximum Rating'); ?></span></legend>
 
 <?php
 $ratings = array(
 
 <?php
 $ratings = array(
@@ -200,8 +205,8 @@ endforeach;
 </fieldset></td>
 </tr>
 <tr valign="top">
 </fieldset></td>
 </tr>
 <tr valign="top">
-<th scope="row"><?php _e('Default Avatar') ?></th>
-<td class="defaultavatarpicker"><fieldset><legend class="screen-reader-text"><span><?php _e('Default Avatar') ?></span></legend>
+<th scope="row"><?php _e('Default Avatar'); ?></th>
+<td class="defaultavatarpicker"><fieldset><legend class="screen-reader-text"><span><?php _e('Default Avatar'); ?></span></legend>
 
 <?php _e('For users without a custom avatar of their own, you can either display a generic logo or a generated one based on their e-mail address.'); ?><br />
 
 
 <?php _e('For users without a custom avatar of their own, you can either display a generic logo or a generated one based on their e-mail address.'); ?><br />
 
index 3f8a7b7ebb3e2891327f2ecd746e8c733fb98ca1..fff360c62fbd6b1ab6382b08bcf51df8f20c83a5 100644 (file)
@@ -58,13 +58,24 @@ function add_js() {
 }
 add_action('admin_head', 'add_js');
 
 }
 add_action('admin_head', 'add_js');
 
-add_contextual_help($current_screen,
-       '<p>' . __('The fields on this screen determine some of the basics of your site setup.') . '</p>' .
-       '<p>' . __('Most themes display the site title at the top of every page, in the title bar of the browser, and as the identifying name for syndicated feeds. The tagline is also displayed by many themes.') . '</p>' .
-       '<p>' . __('The WordPress URL and the Site URL can be the same (example.com) or different; for example, having the WordPress core files (example.com/wordpress) in a subdirectory instead of the root directory.') . '</p>' .
-       '<p>' . __('If you want site visitors to be able to register themselves, as opposed to being registered by the site administrator, check the membership box. A default user role can be set for all new users, whether self-registered or registered by the site administrator.') . '</p>' .
-       '<p>' . __('UTC means Coordinated Universal Time.') . '</p>' .
-       '<p>' . __('Remember to click the Save Changes button at the bottom of the screen for new settings to take effect.') . '</p>' .
+$options_help = '<p>' . __('The fields on this screen determine some of the basics of your site setup.') . '</p>' .
+       '<p>' . __('Most themes display the site title at the top of every page, in the title bar of the browser, and as the identifying name for syndicated feeds. The tagline is also displayed by many themes.') . '</p>';
+
+if ( ! is_multisite() ) {
+       $options_help .= '<p>' . __('The WordPress URL and the Site URL can be the same (example.com) or different; for example, having the WordPress core files (example.com/wordpress) in a subdirectory instead of the root directory.') . '</p>' .
+               '<p>' . __('If you want site visitors to be able to register themselves, as opposed to by the site administrator, check the membership box. A default user role can be set for all new users, whether self-registered or registered by the site admin.') . '</p>';
+}
+
+$options_help .= '<p>' . __('UTC means Coordinated Universal Time.') . '</p>' .
+       '<p>' . __( 'You must click the Save Changes button at the bottom of the screen for new settings to take effect.' ) . '</p>';
+
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' => $options_help,
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Settings_General_Screen" target="_blank">Documentation on General Settings</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Settings_General_Screen" target="_blank">Documentation on General Settings</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
@@ -92,16 +103,16 @@ include('./admin-header.php');
 </tr>
 <?php if ( !is_multisite() ) { ?>
 <tr valign="top">
 </tr>
 <?php if ( !is_multisite() ) { ?>
 <tr valign="top">
-<th scope="row"><label for="siteurl"><?php _e('WordPress address (URL)') ?></label></th>
+<th scope="row"><label for="siteurl"><?php _e('WordPress Address (URL)') ?></label></th>
 <td><input name="siteurl" type="text" id="siteurl" value="<?php form_option('siteurl'); ?>"<?php disabled( defined( 'WP_SITEURL' ) ); ?> class="regular-text code<?php if ( defined( 'WP_SITEURL' ) ) echo ' disabled' ?>" /></td>
 </tr>
 <tr valign="top">
 <td><input name="siteurl" type="text" id="siteurl" value="<?php form_option('siteurl'); ?>"<?php disabled( defined( 'WP_SITEURL' ) ); ?> class="regular-text code<?php if ( defined( 'WP_SITEURL' ) ) echo ' disabled' ?>" /></td>
 </tr>
 <tr valign="top">
-<th scope="row"><label for="home"><?php _e('Site address (URL)') ?></label></th>
+<th scope="row"><label for="home"><?php _e('Site Address (URL)') ?></label></th>
 <td><input name="home" type="text" id="home" value="<?php form_option('home'); ?>"<?php disabled( defined( 'WP_HOME' ) ); ?> class="regular-text code<?php if ( defined( 'WP_HOME' ) ) echo ' disabled' ?>" />
 <span class="description"><?php _e('Enter the address here if you want your site homepage <a href="http://codex.wordpress.org/Giving_WordPress_Its_Own_Directory">to be different from the directory</a> you installed WordPress.'); ?></span></td>
 </tr>
 <tr valign="top">
 <td><input name="home" type="text" id="home" value="<?php form_option('home'); ?>"<?php disabled( defined( 'WP_HOME' ) ); ?> class="regular-text code<?php if ( defined( 'WP_HOME' ) ) echo ' disabled' ?>" />
 <span class="description"><?php _e('Enter the address here if you want your site homepage <a href="http://codex.wordpress.org/Giving_WordPress_Its_Own_Directory">to be different from the directory</a> you installed WordPress.'); ?></span></td>
 </tr>
 <tr valign="top">
-<th scope="row"><label for="admin_email"><?php _e('E-mail address') ?> </label></th>
+<th scope="row"><label for="admin_email"><?php _e('E-mail Address') ?> </label></th>
 <td><input name="admin_email" type="text" id="admin_email" value="<?php form_option('admin_email'); ?>" class="regular-text" />
 <span class="description"><?php _e('This address is used for admin purposes, like new user notification.') ?></span></td>
 </tr>
 <td><input name="admin_email" type="text" id="admin_email" value="<?php form_option('admin_email'); ?>" class="regular-text" />
 <span class="description"><?php _e('This address is used for admin purposes, like new user notification.') ?></span></td>
 </tr>
@@ -120,7 +131,7 @@ include('./admin-header.php');
 </tr>
 <?php } else { ?>
 <tr valign="top">
 </tr>
 <?php } else { ?>
 <tr valign="top">
-<th scope="row"><label for="new_admin_email"><?php _e('E-mail address') ?> </label></th>
+<th scope="row"><label for="new_admin_email"><?php _e('E-mail Address') ?> </label></th>
 <td><input name="new_admin_email" type="text" id="new_admin_email" value="<?php form_option('admin_email'); ?>" class="regular-text code" />
 <span class="description"><?php _e('This address is used for admin purposes. If you change this we will send you an e-mail at your new address to confirm it. <strong>The new address will not become active until confirmed.</strong>') ?></span>
 <?php
 <td><input name="new_admin_email" type="text" id="new_admin_email" value="<?php form_option('admin_email'); ?>" class="regular-text code" />
 <span class="description"><?php _e('This address is used for admin purposes. If you change this we will send you an e-mail at your new address to confirm it. <strong>The new address will not become active until confirmed.</strong>') ?></span>
 <?php
@@ -296,7 +307,7 @@ endfor;
        if ( is_multisite() && !empty( $languages ) ):
 ?>
        <tr valign="top">
        if ( is_multisite() && !empty( $languages ) ):
 ?>
        <tr valign="top">
-               <th width="33%" scope="row"><?php _e('Site language:') ?></th>
+               <th width="33%" scope="row"><?php _e('Site Language') ?></th>
                <td>
                        <select name="WPLANG" id="WPLANG">
                                <?php mu_dropdown_languages( $languages, get_option('WPLANG') ); ?>
                <td>
                        <select name="WPLANG" id="WPLANG">
                                <?php mu_dropdown_languages( $languages, get_option('WPLANG') ); ?>
index 6e3a29cecf331c8168166cad63dc232d70e352c8..83eacabed517ea2bfe5356e60ce5d80c54dab9d3 100644 (file)
@@ -15,11 +15,27 @@ if ( ! current_user_can( 'manage_options' ) )
 $title = __('Media Settings');
 $parent_file = 'options-general.php';
 
 $title = __('Media Settings');
 $parent_file = 'options-general.php';
 
-add_contextual_help($current_screen,
-       '<p>' . __('You can set maximum sizes for images inserted into your written content; you can also insert an image as Full Size.') . '</p>' .
-       '<p>' . __('The Embed option allows you embed a video, image, or other media content into your content automatically by typing the URL (of the web page where the file lives) on its own line when you create your content.') . '</p>' .
-       ( is_multisite() ? '' : '<p>' . __('Uploading Options gives you folder and path choices for storing your files in your installation&#8217;s directory.') . '</p>' ) .
-       '<p>' . __('You must click the Save Changes button at the bottom of the screen for new settings to take effect.') . '</p>' .
+$media_options_help = '<p>' . __('You can set maximum sizes for images inserted into your written content; you can also insert an image as Full Size.') . '</p>' .
+       '<p>' . __('The Embed option allows you embed a video, image, or other media content into your content automatically by typing the URL (of the web page where the file lives) on its own line when you create your content.');
+
+if ( ! empty( $content_width ) )
+       $media_options_help .= ' ' . __( 'If you do not set the maximum embed size, it will be automatically sized to fit into your content area.' );
+
+$media_options_help .= '</p>';
+
+if ( ! is_multisite() ) {
+       $media_options_help .= '<p>' . __('Uploading Files allows you to choose the folder and path for storing your uploaded files.') . '</p>';
+}
+
+$media_options_help .= '<p>' . __('You must click the Save Changes button at the bottom of the screen for new settings to take effect.') . '</p>';
+
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' => $media_options_help,
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Settings_Media_Screen" target="_blank">Documentation on Media Settings</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Settings_Media_Screen" target="_blank">Documentation on Media Settings</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
index 50aa32e1a82cd8d724218349c4eb36c5e3ca5f52..7db14487f12bebbe9f7c01944ce18c0f872e3a3a 100644 (file)
@@ -15,13 +15,31 @@ if ( ! current_user_can( 'manage_options' ) )
 $title = __('Permalink Settings');
 $parent_file = 'options-general.php';
 
 $title = __('Permalink Settings');
 $parent_file = 'options-general.php';
 
-add_contextual_help($current_screen,
-       '<p>' . __('This screen provides some common options for your default permalinks URL structure.') . '</p>' .
-       '<p>' . __('If you pick an option other than Default, your general URL path with structure tags, terms surrounded by <code>%</code>, will also appear in the custom structure field and your path can be further modified there.') . '</p>' .
-       '<p>' . __('When you assign multiple categories or tags to a post, only one can show up in the permalink: the lowest numbered category. This applies if your custom structure includes <code>%category%</code> or <code>%tag%</code>.') . '</p>' .
-       '<p>' . __('Note that permalinks beginning with the category, tag, author or postname structure tags require more advanced server resources. Double-check your hosting details to make sure those are in place or start your permalinks with other structure tags.') . '</p>' .
-       '<p>' . __('The Optional fields let you customize the &#8220;category&#8221; and &#8220;tag&#8221; base names that will appear in archive URLs. For example, the page listing all posts in the &#8220;Uncategorized&#8221; category could be <code>/topics/uncategorized</code> instead of <code>/category/uncategorized</code>.') . '</p>' .
-       '<p>' . __('You must click the Save Changes button at the bottom of the screen for new settings to take effect.') . '</p>' .
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' => '<p>' . __('Permalinks are the permanent URLs to your individual pages and blog posts, as well as your category and tag archives. A permalink is the web address used to link to your content. The URL to each post should be permanent, and never change &#8212; hence the name permalink.') . '</p>' .
+               '<p>' . __('This screen allows you to choose your default permalink structure. You can choose from common settings or create custom URL structures.') . '</p>' .
+               '<p>' . __('You must click the Save Changes button at the bottom of the screen for new settings to take effect.') . '</p>',
+) );
+
+get_current_screen()->add_help_tab( array(
+       'id'      => 'common-settings',
+       'title'   => __('Common Settings'),
+       'content' => '<p>' . __('Many people choose to use &#8220;pretty permalinks,&#8221; URLs that contain useful information such as the post title rather than generic post ID numbers. You can choose from any of the permalink formats under Common Settings, or can craft your own if you select Custom Structure.') . '</p>' .
+               '<p>' . __('If you pick an option other than Default, your general URL path with structure tags, terms surrounded by <code>%</code>, will also appear in the custom structure field and your path can be further modified there.') . '</p>' .
+               '<p>' . __('When you assign multiple categories or tags to a post, only one can show up in the permalink: the lowest numbered category. This applies if your custom structure includes <code>%category%</code> or <code>%tag%</code>.') . '</p>' .
+               '<p>' . __('You must click the Save Changes button at the bottom of the screen for new settings to take effect.') . '</p>',
+) );
+
+get_current_screen()->add_help_tab( array(
+       'id'      => 'custom-structures',
+       'title'   => __('Custom Structures'),
+       'content' => '<p>' . __('The Optional fields let you customize the &#8220;category&#8221; and &#8220;tag&#8221; base names that will appear in archive URLs. For example, the page listing all posts in the &#8220;Uncategorized&#8221; category could be <code>/topics/uncategorized</code> instead of <code>/category/uncategorized</code>.') . '</p>' .
+               '<p>' . __('You must click the Save Changes button at the bottom of the screen for new settings to take effect.') . '</p>',
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Settings_Permalinks_Screen" target="_blank">Documentation on Permalinks Settings</a>') . '</p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Using_Permalinks" target="_blank">Documentation on Using Permalinks</a>') . '</p>' .
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Settings_Permalinks_Screen" target="_blank">Documentation on Permalinks Settings</a>') . '</p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Using_Permalinks" target="_blank">Documentation on Using Permalinks</a>') . '</p>' .
@@ -165,13 +183,14 @@ if ( is_multisite() && !is_subdomain_install() && is_main_site() ) {
 }
 
 $structures = array(
 }
 
 $structures = array(
-       '',
-       $prefix . '/%year%/%monthnum%/%day%/%postname%/',
-       $prefix . '/%year%/%monthnum%/%postname%/',
-       $prefix . '/archives/%post_id%'
-       );
+       0 => '',
+       1 => $prefix . '/%year%/%monthnum%/%day%/%postname%/',
+       2 => $prefix . '/%year%/%monthnum%/%postname%/',
+       3 => $prefix . '/' . _x( 'archives', 'sample permalink base' ) . '/%post_id%',
+       4 => $prefix . '/%postname%/',
+);
 ?>
 ?>
-<h3><?php _e('Common settings'); ?></h3>
+<h3><?php _e('Common Settings'); ?></h3>
 <table class="form-table">
        <tr>
                <th><label><input name="selection" type="radio" value="" class="tog" <?php checked('', $permalink_structure); ?> /> <?php _e('Default'); ?></label></th>
 <table class="form-table">
        <tr>
                <th><label><input name="selection" type="radio" value="" class="tog" <?php checked('', $permalink_structure); ?> /> <?php _e('Default'); ?></label></th>
@@ -179,15 +198,19 @@ $structures = array(
        </tr>
        <tr>
                <th><label><input name="selection" type="radio" value="<?php echo esc_attr($structures[1]); ?>" class="tog" <?php checked($structures[1], $permalink_structure); ?> /> <?php _e('Day and name'); ?></label></th>
        </tr>
        <tr>
                <th><label><input name="selection" type="radio" value="<?php echo esc_attr($structures[1]); ?>" class="tog" <?php checked($structures[1], $permalink_structure); ?> /> <?php _e('Day and name'); ?></label></th>
-               <td><code><?php echo get_option('home') . $blog_prefix . $prefix . '/' . date('Y') . '/' . date('m') . '/' . date('d') . '/sample-post/'; ?></code></td>
+               <td><code><?php echo get_option('home') . $blog_prefix . $prefix . '/' . date('Y') . '/' . date('m') . '/' . date('d') . '/' . _x( 'sample-post', 'sample permalink structure' ) . '/'; ?></code></td>
        </tr>
        <tr>
                <th><label><input name="selection" type="radio" value="<?php echo esc_attr($structures[2]); ?>" class="tog" <?php checked($structures[2], $permalink_structure); ?> /> <?php _e('Month and name'); ?></label></th>
        </tr>
        <tr>
                <th><label><input name="selection" type="radio" value="<?php echo esc_attr($structures[2]); ?>" class="tog" <?php checked($structures[2], $permalink_structure); ?> /> <?php _e('Month and name'); ?></label></th>
-               <td><code><?php echo get_option('home') . $blog_prefix . $prefix . '/' . date('Y') . '/' . date('m') . '/sample-post/'; ?></code></td>
+               <td><code><?php echo get_option('home') . $blog_prefix . $prefix . '/' . date('Y') . '/' . date('m') . '/' . _x( 'sample-post', 'sample permalink structure' ) . '/'; ?></code></td>
        </tr>
        <tr>
                <th><label><input name="selection" type="radio" value="<?php echo esc_attr($structures[3]); ?>" class="tog" <?php checked($structures[3], $permalink_structure); ?> /> <?php _e('Numeric'); ?></label></th>
        </tr>
        <tr>
                <th><label><input name="selection" type="radio" value="<?php echo esc_attr($structures[3]); ?>" class="tog" <?php checked($structures[3], $permalink_structure); ?> /> <?php _e('Numeric'); ?></label></th>
-               <td><code><?php echo get_option('home') . $blog_prefix . $prefix; ?>/archives/123</code></td>
+               <td><code><?php echo get_option('home') . $blog_prefix . $prefix . '/' . _x( 'archives', 'sample permalink base' ) . '/123'; ?></code></td>
+       </tr>
+       <tr>
+               <th><label><input name="selection" type="radio" value="<?php echo esc_attr($structures[4]); ?>" class="tog" <?php checked($structures[4], $permalink_structure); ?> /> <?php _e('Post name'); ?></label></th>
+               <td><code><?php echo get_option('home') . $blog_prefix . $prefix . '/' . _x( 'sample-post', 'sample permalink structure' ) . '/'; ?></code></td>
        </tr>
        <tr>
                <th>
        </tr>
        <tr>
                <th>
index 9fd25bc96f06848460fb3eaefcdb3c301fb2ba40..d0d4336e28c301456d944c50aaa096bc6a292dc3 100644 (file)
@@ -15,10 +15,14 @@ if ( ! current_user_can( 'manage_options' ) )
 $title = __('Privacy Settings');
 $parent_file = 'options-general.php';
 
 $title = __('Privacy Settings');
 $parent_file = 'options-general.php';
 
-add_contextual_help($current_screen,
-       '<p>' . __('You can choose whether or not your site will be crawled by robots, ping services, and spiders. If you want those services to ignore your site, click the second option here. Note that your privacy is not complete; your site is still visible on the web.') . '</p>' .
-       '<p>' . __('When this setting is in effect a reminder is shown in the Right Now box of the Dashboard that says, &#8220;Search Engines Blocked,&#8221; to remind you that your site is not being crawled.') . '</p>' .
-       '<p>' . __('You must click the Save Changes button at the bottom of the screen for new settings to take effect.') . '</p>' .
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' => '<p>' . __('You can choose whether or not your site will be crawled by robots, ping services, and spiders. If you want those services to ignore your site, click the radio button next to &#8220;Ask search engines not to index this site&#8221; and click the Save Changes button at the bottom of the screen. Note that your privacy is not complete; your site is still visible on the web.') . '</p>' .
+               '<p>' . __('When this setting is in effect a reminder is shown in the Right Now box of the Dashboard that says, &#8220;Search Engines Blocked,&#8221; to remind you that your site is not being crawled.') . '</p>',
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Settings_Privacy_Screen" target="_blank">Documentation on Privacy Settings</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Settings_Privacy_Screen" target="_blank">Documentation on Privacy Settings</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
@@ -36,12 +40,13 @@ include('./admin-header.php');
 
 <table class="form-table">
 <tr valign="top">
 
 <table class="form-table">
 <tr valign="top">
-<th scope="row"><?php _e('Site Visibility') ?> </th>
-<td><fieldset><legend class="screen-reader-text"><span><?php _e('Site Visibility') ?> </span></legend>
+<th scope="row"><?php _e( 'Site Visibility' ); ?> </th>
+<td><fieldset><legend class="screen-reader-text"><span><?php _e( 'Site Visibility' ); ?> </span></legend>
 <input id="blog-public" type="radio" name="blog_public" value="1" <?php checked('1', get_option('blog_public')); ?> />
 <input id="blog-public" type="radio" name="blog_public" value="1" <?php checked('1', get_option('blog_public')); ?> />
-<label for="blog-public"><?php _e('I would like my site to be visible to everyone, including search engines (like Google, Bing, Technorati) and archivers');?></label><br/>
+<label for="blog-public"><?php _e( 'Allow search engines to index this site.' );?></label><br/>
 <input id="blog-norobots" type="radio" name="blog_public" value="0" <?php checked('0', get_option('blog_public')); ?> />
 <input id="blog-norobots" type="radio" name="blog_public" value="0" <?php checked('0', get_option('blog_public')); ?> />
-<label for="blog-norobots"><?php _e('I would like to block search engines, but allow normal visitors'); ?></label>
+<label for="blog-norobots"><?php _e( 'Ask search engines not to index this site.' ); ?></label>
+<p class="description"><?php _e( 'Note: Neither of these options blocks access to your site &mdash; it is up to search engines to honor your request.' ); ?></p>
 <?php do_action('blog_privacy_selector'); ?>
 </fieldset></td>
 </tr>
 <?php do_action('blog_privacy_selector'); ?>
 </fieldset></td>
 </tr>
index 08c408ec2214ad8f01f8cbfe2c4f5e3ccbca987c..e87348095cd0ee9bbda82dd1bc7ca596b21e32db 100644 (file)
@@ -41,11 +41,16 @@ function add_js() {
 }
 add_action('admin_head', 'add_js');
 
 }
 add_action('admin_head', 'add_js');
 
-add_contextual_help($current_screen,
-       '<p>' . __('This screen contains the settings that affect the display of your content.') . '</p>' .
-       '<p>' . sprintf(__('You can choose what&#8217;s displayed on the front page of your site. It can be posts in reverse chronological order (classic blog), or a fixed/static page. To set a static home page, you first need to create two <a href="%s">Pages</a>. One will become the front page, and the other will be where your posts are displayed.'), 'post-new.php?post_type=page') . '</p>' .
-       '<p>' . __('You can also control the display of your content in RSS feeds, including the maximum numbers of posts to display, whether to show full text or a summary, and the character set encoding.') . '</p>' .
-       '<p>' . __('You must click the Save Changes button at the bottom of the screen for new settings to take effect.') . '</p>' .
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' => '<p>' . __('This screen contains the settings that affect the display of your content.') . '</p>' .
+               '<p>' . sprintf(__('You can choose what&#8217;s displayed on the front page of your site. It can be posts in reverse chronological order (classic blog), or a fixed/static page. To set a static home page, you first need to create two <a href="%s">Pages</a>. One will become the front page, and the other will be where your posts are displayed.'), 'post-new.php?post_type=page') . '</p>' .
+               '<p>' . __('You can also control the display of your content in RSS feeds, including the maximum numbers of posts to display, whether to show full text or a summary, and the character set encoding.') . '</p>' .
+               '<p>' . __('You must click the Save Changes button at the bottom of the screen for new settings to take effect.') . '</p>',
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Settings_Reading_Screen" target="_blank">Documentation on Reading Settings</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Settings_Reading_Screen" target="_blank">Documentation on Reading Settings</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
index 115e1435db66689b95a9b3f1b8fe1c03d6612865..15fd1d1115fe742675f419f64efde24ff52e6510 100644 (file)
@@ -15,9 +15,45 @@ if ( ! current_user_can( 'manage_options' ) )
 $title = __('Writing Settings');
 $parent_file = 'options-general.php';
 
 $title = __('Writing Settings');
 $parent_file = 'options-general.php';
 
-add_contextual_help($current_screen,
-       '<p>' . __('You can submit content in several different ways; this screen holds the settings for all of them. The top section controls the editor within these administration screens, while the rest control external publishing methods. For more information on any of these methods, use the documentation links below.') . '</p>' .
-       '<p>' . __('You must click the Save Changes button at the bottom of the screen for new settings to take effect.') . '</p>' .
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' => '<p>' . __('You can submit content in several different ways; this screen holds the settings for all of them. The top section controls the editor within the dashboard, while the rest control external publishing methods. For more information on any of these methods, use the documentation links.') . '</p>' .
+               '<p>' . __('You must click the Save Changes button at the bottom of the screen for new settings to take effect.') . '</p>',
+) );
+
+get_current_screen()->add_help_tab( array(
+       'id'      => 'options-press',
+       'title'   => __('Press This'),
+       'content' => '<p>' . __('Press This is a bookmarklet that makes it easy to blog about something you come across on the web. You can use it to just grab a link, or to post an excerpt. Press This will even allow you to choose from images included on the page and use them in your post. Just drag the Press This link on this screen to your bookmarks bar in your browser, and you&#8217;ll be on your way to easier content creation. Clicking on it while on another website opens a popup window with all these options.') . '</p>',
+) );
+
+
+if ( is_multisite() ) {
+       $post_email_help = '<p>' . __('Due to security issues, you cannot use Post By Email on Multisite Installs.') . '</p>';
+} else {
+       $post_email_help = '<p>' . __('Post via email settings allow you to send your WordPress install an email with the content of your post.  You must set up a secret e-mail account with POP3 access to use this, and any mail received at this address will be posted, so it&#8217;s a good idea to keep this address very secret.') . '</p>';
+}
+
+get_current_screen()->add_help_tab( array(
+       'id'      => 'options-postemail',
+       'title'   => __('Post Via Email'),
+       'content' => $post_email_help,
+) );
+
+get_current_screen()->add_help_tab( array(
+       'id'      => 'options-remote',
+       'title'   => __('Remote Publishing'),
+       'content' => '<p>' . __('Remote Publishing allows you to use an external editor (like the iOS or Android app) to write your posts.') . '</p>',
+) );
+
+get_current_screen()->add_help_tab( array(
+       'id'      => 'options-services',
+       'title'   => __('Update Services'),
+       'content' => '<p>' . __('If desired, WordPress will automatically alert various services of your new posts.') . '</p>',
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Settings_Writing_Screen" target="_blank">Documentation on Writing Settings</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Settings_Writing_Screen" target="_blank">Documentation on Writing Settings</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
@@ -89,7 +125,7 @@ wp_dropdown_categories(array('hide_empty' => 0, 'name' => 'default_link_category
 <p><?php _e('Press This is a bookmarklet: a little app that runs in your browser and lets you grab bits of the web.');?></p>
 <p><?php _e('Use Press This to clip text, images and videos from any web page. Then edit and add more straight from Press This before you save or publish it in a post on your site.'); ?></p>
 <p><?php _e('Drag-and-drop the following link to your bookmarks bar or right click it and add it to your favorites for a posting shortcut.') ?></p>
 <p><?php _e('Press This is a bookmarklet: a little app that runs in your browser and lets you grab bits of the web.');?></p>
 <p><?php _e('Use Press This to clip text, images and videos from any web page. Then edit and add more straight from Press This before you save or publish it in a post on your site.'); ?></p>
 <p><?php _e('Drag-and-drop the following link to your bookmarks bar or right click it and add it to your favorites for a posting shortcut.') ?></p>
-<p class="pressthis"><a onclick="return false;" oncontextmenu="if(window.navigator.userAgent.indexOf('WebKit')!=-1)jQuery('.pressthis-code').show().find('textarea').focus().select();return false;" href="<?php echo htmlspecialchars( get_shortcut_link() ); ?>"><span><?php _e('Press This') ?></span></a></p>
+<p class="pressthis"><a onclick="return false;" oncontextmenu="if(window.navigator.userAgent.indexOf('WebKit')!=-1||window.navigator.userAgent.indexOf('MSIE')!=-1)jQuery('.pressthis-code').show().find('textarea').focus().select();return false;" href="<?php echo htmlspecialchars( get_shortcut_link() ); ?>"><span><?php _e('Press This') ?></span></a></p>
 <div class="pressthis-code" style="display:none;">
        <p class="description"><?php _e('If your bookmarks toolbar is hidden: copy the code below, open your Bookmarks manager, create new bookmark, type Press This into the name field and paste the code into the URL field.') ?></p>
        <p><textarea rows="5" cols="120" readonly="readonly"><?php echo htmlspecialchars( get_shortcut_link() ); ?></textarea></p>
 <div class="pressthis-code" style="display:none;">
        <p class="description"><?php _e('If your bookmarks toolbar is hidden: copy the code below, open your Bookmarks manager, create new bookmark, type Press This into the name field and paste the code into the URL field.') ?></p>
        <p><textarea rows="5" cols="120" readonly="readonly"><?php echo htmlspecialchars( get_shortcut_link() ); ?></textarea></p>
@@ -154,7 +190,7 @@ wp_dropdown_categories(array('hide_empty' => 0, 'name' => 'default_email_categor
 <?php if ( apply_filters( 'enable_update_services_configuration', true ) ) { ?>
 <h3><?php _e('Update Services') ?></h3>
 
 <?php if ( apply_filters( 'enable_update_services_configuration', true ) ) { ?>
 <h3><?php _e('Update Services') ?></h3>
 
-<?php if ( get_option('blog_public') ) : ?>
+<?php if ( 1 == get_option('blog_public') ) : ?>
 
 <p><label for="ping_sites"><?php _e('When you publish a new post, WordPress automatically notifies the following site update services. For more about this, see <a href="http://codex.wordpress.org/Update_Services">Update Services</a> on the Codex. Separate multiple service <abbr title="Universal Resource Locator">URL</abbr>s with line breaks.') ?></label></p>
 
 
 <p><label for="ping_sites"><?php _e('When you publish a new post, WordPress automatically notifies the following site update services. For more about this, see <a href="http://codex.wordpress.org/Update_Services">Update Services</a> on the Codex. Separate multiple service <abbr title="Universal Resource Locator">URL</abbr>s with line breaks.') ?></label></p>
 
index 069dcb90f414ac7e956b8e482ecaa477394967be..8eb283a84bfa673ff511b5276bc292c021418f0c 100644 (file)
@@ -110,7 +110,7 @@ if ( 'update' == $action ) {
        }
 
        if ( !isset( $whitelist_options[ $option_page ] ) )
        }
 
        if ( !isset( $whitelist_options[ $option_page ] ) )
-               wp_die( __( 'Error: options page not found.' ) );
+               wp_die( __( '<strong>ERROR</strong>: options page not found.' ) );
 
        if ( 'options' == $option_page ) {
                if ( is_multisite() && ! is_super_admin() )
 
        if ( 'options' == $option_page ) {
                if ( is_multisite() && ! is_super_admin() )
index 2c710dff3244f7524a8c930496d99ce74b4d8c7f..ef2c641010da0adbe9128103cf43005d582e5013 100644 (file)
@@ -22,8 +22,6 @@ $parent_file = 'plugins.php';
 
 wp_reset_vars(array('action', 'redirect', 'profile', 'error', 'warning', 'a', 'file', 'plugin'));
 
 
 wp_reset_vars(array('action', 'redirect', 'profile', 'error', 'warning', 'a', 'file', 'plugin'));
 
-wp_admin_css( 'theme-editor' );
-
 $plugins = get_plugins();
 
 if ( empty($plugins) )
 $plugins = get_plugins();
 
 if ( empty($plugins) )
@@ -112,12 +110,18 @@ default:
                }
        }
 
                }
        }
 
-       add_contextual_help($current_screen,
+       get_current_screen()->add_help_tab( array(
+       'id'            => 'overview',
+       'title'         => __('Overview'),
+       'content'       =>
                '<p>' . __('You can use the editor to make changes to any of your plugins&#8217; individual PHP files. Be aware that if you make changes, plugins updates will overwrite your customizations.') . '</p>' .
                '<p>' . __('Choose a plugin to edit from the menu in the upper right and click the Select button. Click once on any file name to load it in the editor, and make your changes. Don&#8217;t forget to save your changes (Update File) when you&#8217;re finished.') . '</p>' .
                '<p>' . __('The Documentation menu below the editor lists the PHP functions recognized in the plugin file. Clicking Lookup takes you to a web page about that particular function.') . '</p>' .
                '<p>' . __('If you want to make changes but don&#8217;t want them to be overwritten when the plugin is updated, you may be ready to think about writing your own plugin. For information on how to edit plugins, write your own from scratch, or just better understand their anatomy, check out the links below.') . '</p>' .
                '<p>' . __('You can use the editor to make changes to any of your plugins&#8217; individual PHP files. Be aware that if you make changes, plugins updates will overwrite your customizations.') . '</p>' .
                '<p>' . __('Choose a plugin to edit from the menu in the upper right and click the Select button. Click once on any file name to load it in the editor, and make your changes. Don&#8217;t forget to save your changes (Update File) when you&#8217;re finished.') . '</p>' .
                '<p>' . __('The Documentation menu below the editor lists the PHP functions recognized in the plugin file. Clicking Lookup takes you to a web page about that particular function.') . '</p>' .
                '<p>' . __('If you want to make changes but don&#8217;t want them to be overwritten when the plugin is updated, you may be ready to think about writing your own plugin. For information on how to edit plugins, write your own from scratch, or just better understand their anatomy, check out the links below.') . '</p>' .
-               ( is_network_admin() ? '<p>' . __('Any edits to files from this screen will be reflected on all sites in the network.') . '</p>' : '' ) .
+               ( is_network_admin() ? '<p>' . __('Any edits to files from this screen will be reflected on all sites in the network.') . '</p>' : '' )
+       ) );
+
+       get_current_screen()->set_help_sidebar(
                '<p><strong>' . __('For more information:') . '</strong></p>' .
                '<p>' . __('<a href="http://codex.wordpress.org/Plugins_Editor_Screen" target="_blank">Documentation on Editing Plugins</a>') . '</p>' .
                '<p>' . __('<a href="http://codex.wordpress.org/Writing_a_Plugin" target="_blank">Documentation on Writing Plugins</a>') . '</p>' .
                '<p><strong>' . __('For more information:') . '</strong></p>' .
                '<p>' . __('<a href="http://codex.wordpress.org/Plugins_Editor_Screen" target="_blank">Documentation on Editing Plugins</a>') . '</p>' .
                '<p>' . __('<a href="http://codex.wordpress.org/Writing_a_Plugin" target="_blank">Documentation on Writing Plugins</a>') . '</p>' .
index 42cd8e411876c3887bf78daaf1cfa4545cc9cf39..87f563b09a83186dfc6bc0e9a07325ce55118d50 100644 (file)
@@ -27,7 +27,6 @@ $wp_list_table->prepare_items();
 $title = __('Install Plugins');
 $parent_file = 'plugins.php';
 
 $title = __('Install Plugins');
 $parent_file = 'plugins.php';
 
-wp_enqueue_style( 'plugin-install' );
 wp_enqueue_script( 'plugin-install' );
 if ( 'plugin-information' != $tab )
        add_thickbox();
 wp_enqueue_script( 'plugin-install' );
 if ( 'plugin-information' != $tab )
        add_thickbox();
@@ -36,11 +35,22 @@ $body_id = $tab;
 
 do_action('install_plugins_pre_' . $tab); //Used to override the general interface, Eg, install or plugin information.
 
 
 do_action('install_plugins_pre_' . $tab); //Used to override the general interface, Eg, install or plugin information.
 
-add_contextual_help($current_screen,
-       '<p>' . sprintf(__('Plugins hook into WordPress to extend its functionality with custom features. Plugins are developed independently from WordPress core by thousands of developers all over the world. All plugins in the official <a href="%s" target="_blank">WordPress.org Plugin Directory</a> are compatible with the license WordPress uses. You can find new plugins to install by searching or browsing the Directory right here in your own Plugins section.'), 'http://wordpress.org/extend/plugins/') . '</p>' .
+get_current_screen()->add_help_tab( array(
+'id'           => 'overview',
+'title'                => __('Overview'),
+'content'      =>
+       '<p>' . sprintf(__('Plugins hook into WordPress to extend its functionality with custom features. Plugins are developed independently from the core WordPress application by thousands of developers all over the world. All plugins in the official <a href="%s" target="_blank">WordPress.org Plugin Directory</a> are compatible with the license WordPress uses. You can find new plugins to install by searching or browsing the Directory right here in your own Plugins section.'), 'http://wordpress.org/extend/plugins/') . '</p>'
+) );
+get_current_screen()->add_help_tab( array(
+'id'           => 'adding-plugins',
+'title'                => __('Adding Plugins'),
+'content'      =>
        '<p>' . __('If you know what you&#8217;re looking for, Search is your best bet. The Search screen has options to search the WordPress.org Plugin Directory for a particular Term, Author, or Tag. You can also search the directory by selecting a popular tags. Tags in larger type mean more plugins have been labeled with that tag.') . '</p>' .
        '<p>' . __('If you just want to get an idea of what&#8217;s available, you can browse Featured, Popular, Newest, and Recently Updated plugins by using the links in the upper left of the screen. These sections rotate regularly.') . '</p>' .
        '<p>' . __('If you know what you&#8217;re looking for, Search is your best bet. The Search screen has options to search the WordPress.org Plugin Directory for a particular Term, Author, or Tag. You can also search the directory by selecting a popular tags. Tags in larger type mean more plugins have been labeled with that tag.') . '</p>' .
        '<p>' . __('If you just want to get an idea of what&#8217;s available, you can browse Featured, Popular, Newest, and Recently Updated plugins by using the links in the upper left of the screen. These sections rotate regularly.') . '</p>' .
-       '<p>' . __('If you want to install a plugin that you&#8217;ve downloaded elsewhere, click Upload in the upper left. You will be prompted to upload the .zip package, and once uploaded, you can activate the new plugin.') . '</p>' .
+       '<p>' . __('If you want to install a plugin that you&#8217;ve downloaded elsewhere, click the Upload in the upper left. You will be prompted to upload the .zip package, and once uploaded, you can activate the new plugin.') . '</p>'
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Plugins_Add_New_Screen" target="_blank">Documentation on Installing Plugins</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Plugins_Add_New_Screen" target="_blank">Documentation on Installing Plugins</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
index 76c6377a8e574033964a81c42ae24ff530e46065..00b53afe6e31d2b6f4b892b91197af20d5a2b2b6 100644 (file)
@@ -25,7 +25,7 @@ $pagenum = $wp_list_table->get_pagenum();
 $action = $wp_list_table->current_action();
 
 $plugin = isset($_REQUEST['plugin']) ? $_REQUEST['plugin'] : '';
 $action = $wp_list_table->current_action();
 
 $plugin = isset($_REQUEST['plugin']) ? $_REQUEST['plugin'] : '';
-$s = isset($_REQUEST['s']) ? $_REQUEST['s'] : '';
+$s = isset($_REQUEST['s']) ? urlencode($_REQUEST['s']) : '';
 
 // Clean up request URI from temporary args for screen options/paging uri's to work as expected.
 $_SERVER['REQUEST_URI'] = remove_query_arg(array('error', 'deleted', 'activate', 'activate-multi', 'deactivate', 'deactivate-multi', '_error_nonce'), $_SERVER['REQUEST_URI']);
 
 // Clean up request URI from temporary args for screen options/paging uri's to work as expected.
 $_SERVER['REQUEST_URI'] = remove_query_arg(array('error', 'deleted', 'activate', 'activate-multi', 'deactivate', 'deactivate-multi', '_error_nonce'), $_SERVER['REQUEST_URI']);
@@ -316,13 +316,24 @@ $wp_list_table->prepare_items();
 wp_enqueue_script('plugin-install');
 add_thickbox();
 
 wp_enqueue_script('plugin-install');
 add_thickbox();
 
-add_screen_option( 'per_page', array('label' => _x( 'Plugins', 'plugins per page (screen options)' )) );
+add_screen_option( 'per_page', array('label' => _x( 'Plugins', 'plugins per page (screen options)' ), 'default' => 999 ) );
 
 
-add_contextual_help($current_screen,
+get_current_screen()->add_help_tab( array(
+'id'           => 'overview',
+'title'                => __('Overview'),
+'content'      =>
        '<p>' . __('Plugins extend and expand the functionality of WordPress. Once a plugin is installed, you may activate it or deactivate it here.') . '</p>' .
        '<p>' . __('Plugins extend and expand the functionality of WordPress. Once a plugin is installed, you may activate it or deactivate it here.') . '</p>' .
-       '<p>' . sprintf(__('You can find additional plugins for your site by using the <a href="%1$s">Plugin Browser/Installer</a> functionality or by browsing the <a href="%2$s" target="_blank">WordPress Plugin Directory</a> directly and installing new plugins manually. To manually install a plugin you generally just need to upload the plugin file into your <code>/wp-content/plugins</code> directory. Once a plugin has been installed, you can activate it here.'), 'plugin-install.php', 'http://wordpress.org/extend/plugins/') . '</p>' .
+       '<p>' . sprintf(__('You can find additional plugins for your site by using the <a href="%1$s">Plugin Browser/Installer</a> functionality or by browsing the <a href="%2$s" target="_blank">WordPress Plugin Directory</a> directly and installing new plugins manually. To manually install a plugin you generally just need to upload the plugin file into your <code>/wp-content/plugins</code> directory. Once a plugin has been installed, you can activate it here.'), 'plugin-install.php', 'http://wordpress.org/extend/plugins/') . '</p>'
+) );
+get_current_screen()->add_help_tab( array(
+'id'           => 'compatibility-problems',
+'title'                => __('Troubleshooting'),
+'content'      =>
        '<p>' . __('Most of the time, plugins play nicely with the core of WordPress and with other plugins. Sometimes, though, a plugin&#8217;s code will get in the way of another plugin, causing compatibility issues. If your site starts doing strange things, this may be the problem. Try deactivating all your plugins and re-activating them in various combinations until you isolate which one(s) caused the issue.') . '</p>' .
        '<p>' . __('Most of the time, plugins play nicely with the core of WordPress and with other plugins. Sometimes, though, a plugin&#8217;s code will get in the way of another plugin, causing compatibility issues. If your site starts doing strange things, this may be the problem. Try deactivating all your plugins and re-activating them in various combinations until you isolate which one(s) caused the issue.') . '</p>' .
-       '<p>' . sprintf( __('If something goes wrong with a plugin and you can&#8217;t use WordPress, delete or rename that file in the <code>%s</code> directory and it will be automatically deactivated.'), WP_PLUGIN_DIR) . '</p>' .
+       '<p>' . sprintf( __('If something goes wrong with a plugin and you can&#8217;t use WordPress, delete or rename that file in the <code>%s</code> directory and it will be automatically deactivated.'), WP_PLUGIN_DIR) . '</p>'
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Managing_Plugins#Plugin_Management" target="_blank">Documentation on Managing Plugins</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Managing_Plugins#Plugin_Management" target="_blank">Documentation on Managing Plugins</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
@@ -391,9 +402,11 @@ if ( $s )
 
 <?php $wp_list_table->views(); ?>
 
 
 <?php $wp_list_table->views(); ?>
 
-<form method="post" action="">
-
+<form method="get" action="">
 <?php $wp_list_table->search_box( __( 'Search Installed Plugins' ), 'plugin' ); ?>
 <?php $wp_list_table->search_box( __( 'Search Installed Plugins' ), 'plugin' ); ?>
+</form>
+
+<form method="post" action="">
 
 <input type="hidden" name="plugin_status" value="<?php echo esc_attr($status) ?>" />
 <input type="hidden" name="paged" value="<?php echo esc_attr($page) ?>" />
 
 <input type="hidden" name="plugin_status" value="<?php echo esc_attr($status) ?>" />
 <input type="hidden" name="paged" value="<?php echo esc_attr($page) ?>" />
index 20374efa08ba45382e385f5e69e507ee98cc5bd6..a5d74e8b5be9d821d27864303a32c6d18ac79b55 100644 (file)
@@ -16,16 +16,22 @@ elseif ( in_array( $_GET['post_type'], get_post_types( array('show_ui' => true )
 else
        wp_die( __('Invalid post type') );
 
 else
        wp_die( __('Invalid post type') );
 
-if ( 'post' != $post_type ) {
-       $parent_file = "edit.php?post_type=$post_type";
-       $submenu_file = "post-new.php?post_type=$post_type";
-} else {
+$post_type_object = get_post_type_object( $post_type );
+
+if ( 'post' == $post_type ) {
        $parent_file = 'edit.php';
        $submenu_file = 'post-new.php';
        $parent_file = 'edit.php';
        $submenu_file = 'post-new.php';
+} else {
+       $submenu_file = "post-new.php?post_type=$post_type";
+       if ( isset( $post_type_object ) && $post_type_object->show_in_menu && $post_type_object->show_in_menu !== true ) {
+               $parent_file = $post_type_object->show_in_menu;
+               if ( ! isset( $_registered_pages[ get_plugin_page_hookname( "post-new.php?post_type=$post_type", $post_type_object->show_in_menu ) ] ) )
+                       $submenu_file = $parent_file;
+       } else {
+               $parent_file = "edit.php?post_type=$post_type";
+       }
 }
 
 }
 
-$post_type_object = get_post_type_object($post_type);
-
 $title = $post_type_object->labels->add_new_item;
 
 $editing = true;
 $title = $post_type_object->labels->add_new_item;
 
 $editing = true;
index df9e5a528cf16e2dcc47366d03363d42f17a3d3d..c3bca7020f3c117a271fb32ccadb4789f88cb0e2 100644 (file)
@@ -16,33 +16,21 @@ $submenu_file = 'edit.php';
 
 wp_reset_vars(array('action', 'safe_mode', 'withcomments', 'posts', 'content', 'edited_post_title', 'comment_error', 'profile', 'trackback_url', 'excerpt', 'showcomments', 'commentstart', 'commentend', 'commentorder'));
 
 
 wp_reset_vars(array('action', 'safe_mode', 'withcomments', 'posts', 'content', 'edited_post_title', 'comment_error', 'profile', 'trackback_url', 'excerpt', 'showcomments', 'commentstart', 'commentend', 'commentorder'));
 
-if ( isset($_GET['post']) )
-       $post_id = (int) $_GET['post'];
-elseif ( isset($_POST['post_ID']) )
-       $post_id = (int) $_POST['post_ID'];
+if ( isset( $_GET['post'] ) )
+       $post_id = $post_ID = (int) $_GET['post'];
+elseif ( isset( $_POST['post_ID'] ) )
+       $post_id = $post_ID = (int) $_POST['post_ID'];
 else
 else
-       $post_id = 0;
-$post_ID = $post_id;
-$post = null;
-$post_type_object = null;
-$post_type = null;
-if ( $post_id ) {
-       $post = get_post($post_id);
-       if ( $post ) {
-               $post_type_object = get_post_type_object($post->post_type);
-               if ( $post_type_object ) {
-                       $post_type = $post->post_type;
-                       $current_screen->post_type = $post->post_type;
-                       $current_screen->id = $current_screen->post_type;
-               }
-       }
-} elseif ( isset($_POST['post_type']) ) {
-       $post_type_object = get_post_type_object($_POST['post_type']);
-       if ( $post_type_object ) {
-               $post_type = $post_type_object->name;
-               $current_screen->post_type = $post_type;
-               $current_screen->id = $current_screen->post_type;
-       }
+       $post_id = $post_ID = 0;
+
+$post = $post_type = $post_type_object = null;
+
+if ( $post_id )
+       $post = get_post( $post_id );
+
+if ( $post ) {
+       $post_type = $post->post_type;
+       $post_type_object = get_post_type_object( $post_type );
 }
 
 /**
 }
 
 /**
@@ -94,9 +82,11 @@ elseif ( isset($_POST['wp-preview']) && 'dopreview' == $_POST['wp-preview'] )
        $action = 'preview';
 
 $sendback = wp_get_referer();
        $action = 'preview';
 
 $sendback = wp_get_referer();
-if ( strpos($sendback, 'post.php') !== false || strpos($sendback, 'post-new.php') !== false ) {
-       $sendback = admin_url('edit.php');
-       $sendback .= ( !empty( $post_type ) ) ? '?post_type=' . $post_type : '';
+if ( ! $sendback ||
+     strpos( $sendback, 'post.php' ) !== false ||
+     strpos( $sendback, 'post-new.php' ) !== false ) {
+       $sendback = admin_url( 'edit.php' );
+       $sendback .= ( ! empty( $post_type ) ) ? '?post_type=' . $post_type : '';
 } else {
        $sendback = remove_query_arg( array('trashed', 'untrashed', 'deleted', 'ids'), $sendback );
 }
 } else {
        $sendback = remove_query_arg( array('trashed', 'untrashed', 'deleted', 'ids'), $sendback );
 }
@@ -114,10 +104,6 @@ case 'post-quickpress-save':
        if ( 'post-quickpress-publish' == $action || 'post-quickpress-save' == $action ) {
                $_POST['comment_status'] = get_option('default_comment_status');
                $_POST['ping_status'] = get_option('default_ping_status');
        if ( 'post-quickpress-publish' == $action || 'post-quickpress-save' == $action ) {
                $_POST['comment_status'] = get_option('default_comment_status');
                $_POST['ping_status'] = get_option('default_ping_status');
-       }
-
-       if ( !empty( $_POST['quickpress_post_ID'] ) ) {
-               $_POST['post_ID'] = (int) $_POST['quickpress_post_ID'];
                $post_id = edit_post();
        } else {
                $post_id = 'postajaxpost' == $action ? edit_post() : write_post();
                $post_id = edit_post();
        } else {
                $post_id = 'postajaxpost' == $action ? edit_post() : write_post();
@@ -174,7 +160,7 @@ case 'edit':
        if ( $last = wp_check_post_lock( $post->ID ) ) {
                add_action('admin_notices', '_admin_notice_post_locked' );
        } else {
        if ( $last = wp_check_post_lock( $post->ID ) ) {
                add_action('admin_notices', '_admin_notice_post_locked' );
        } else {
-               wp_set_post_lock( $post->ID );
+               $active_post_lock = wp_set_post_lock( $post->ID );
                wp_enqueue_script('autosave');
        }
 
                wp_enqueue_script('autosave');
        }
 
index 70f1808a3af4e91827989fae574dc3ce5702e88f..0c36dbf7de1e9b6bee2666f59d1d3e5f2d2d54fc 100644 (file)
@@ -26,19 +26,17 @@ if ( ! current_user_can('edit_posts') )
  * @return int Post ID
  */
 function press_it() {
  * @return int Post ID
  */
 function press_it() {
-       // define some basic variables
-       $quick = array();
-       $quick['post_status'] = 'draft'; // set as draft first
-       $quick['post_category'] = isset($_POST['post_category']) ? $_POST['post_category'] : null;
-       $quick['tax_input'] = isset($_POST['tax_input']) ? $_POST['tax_input'] : null;
-       $quick['post_title'] = ( trim($_POST['title']) != '' ) ? $_POST['title'] : '  ';
-       $quick['post_content'] = isset($_POST['post_content']) ? $_POST['post_content'] : '';
-
-       // insert the post with nothing in it, to get an ID
-       $post_ID = wp_insert_post($quick, true);
-       if ( is_wp_error($post_ID) )
-               wp_die($post_ID);
 
 
+       $post = get_default_post_to_edit();
+       $post = get_object_vars($post);
+       $post_ID = $post['ID'] = (int) $_POST['post_id'];
+
+       if ( !current_user_can('edit_post', $post_ID) )
+               wp_die(__('You are not allowed to edit this post.'));
+
+       $post['post_category'] = isset($_POST['post_category']) ? $_POST['post_category'] : '';
+       $post['tax_input'] = isset($_POST['tax_input']) ? $_POST['tax_input'] : '';
+       $post['post_title'] = isset($_POST['title']) ? $_POST['title'] : '';
        $content = isset($_POST['content']) ? $_POST['content'] : '';
 
        $upload = false;
        $content = isset($_POST['content']) ? $_POST['content'] : '';
 
        $upload = false;
@@ -56,43 +54,40 @@ function press_it() {
                }
        }
        // set the post_content and status
                }
        }
        // set the post_content and status
+       $post['post_content'] = $content;
        if ( isset( $_POST['publish'] ) && current_user_can( 'publish_posts' ) )
        if ( isset( $_POST['publish'] ) && current_user_can( 'publish_posts' ) )
-               $quick['post_status'] = 'publish';
+               $post['post_status'] = 'publish';
        elseif ( isset( $_POST['review'] ) )
        elseif ( isset( $_POST['review'] ) )
-               $quick['post_status'] = 'pending';
+               $post['post_status'] = 'pending';
        else
        else
-               $quick['post_status'] = 'draft';
-       $quick['post_content'] = $content;
+               $post['post_status'] = 'draft';
+
        // error handling for media_sideload
        if ( is_wp_error($upload) ) {
                wp_delete_post($post_ID);
                wp_die($upload);
        } else {
                // Post formats
        // error handling for media_sideload
        if ( is_wp_error($upload) ) {
                wp_delete_post($post_ID);
                wp_die($upload);
        } else {
                // Post formats
-               if ( current_theme_supports( 'post-formats' ) && isset( $_POST['post_format'] ) ) {
-                       $post_formats = get_theme_support( 'post-formats' );
-                       if ( is_array( $post_formats ) ) {
-                               $post_formats = $post_formats[0];
-                               if ( in_array( $_POST['post_format'], $post_formats ) )
-                                       set_post_format( $post_ID, $_POST['post_format'] );
-                               elseif ( '0' == $_POST['post_format'] )
-                                       set_post_format( $post_ID, false );
-                       }
+               if ( isset( $_POST['post_format'] ) ) {
+                       if ( current_theme_supports( 'post-formats', $_POST['post_format'] ) )
+                               set_post_format( $post_ID, $_POST['post_format'] );
+                       elseif ( '0' == $_POST['post_format'] )
+                               set_post_format( $post_ID, false );
                }
 
                }
 
-               $quick['ID'] = $post_ID;
-               wp_update_post($quick);
+               $post_ID = wp_update_post($post);
        }
        }
+
        return $post_ID;
 }
 
 // For submitted posts.
 if ( isset($_REQUEST['action']) && 'post' == $_REQUEST['action'] ) {
        check_admin_referer('press-this');
        return $post_ID;
 }
 
 // For submitted posts.
 if ( isset($_REQUEST['action']) && 'post' == $_REQUEST['action'] ) {
        check_admin_referer('press-this');
-       $post_ID = press_it();
-       $posted =  $post_ID;
+       $posted = $post_ID = press_it();
 } else {
 } else {
-       $post_ID = 0;
+       $post = get_default_post_to_edit('post', true);
+       $post_ID = $post->ID;
 }
 
 // Set Variables
 }
 
 // Set Variables
@@ -144,19 +139,19 @@ if ( !empty($_REQUEST['ajax']) ) {
                                        tb_remove();
                                });
                                jQuery('.select').click(function() {
                                        tb_remove();
                                });
                                jQuery('.select').click(function() {
-                                       image_selector();
+                                       image_selector(this);
                                });
                                /* ]]> */
                        </script>
                                });
                                /* ]]> */
                        </script>
-                       <h3 class="tb"><label for="this_photo_description"><?php _e('Description') ?></label></h3>
+                       <h3 class="tb"><label for="tb_this_photo_description"><?php _e('Description') ?></label></h3>
                        <div class="titlediv">
                                <div class="titlewrap">
                        <div class="titlediv">
                                <div class="titlewrap">
-                                       <input id="this_photo_description" name="photo_description" class="tbtitle text" onkeypress="if(event.keyCode==13) image_selector();" value="<?php echo esc_attr($title);?>"/>
+                                       <input id="tb_this_photo_description" name="photo_description" class="tb_this_photo_description tbtitle text" onkeypress="if(event.keyCode==13) image_selector(this);" value="<?php echo esc_attr($title);?>"/>
                                </div>
                        </div>
 
                        <p class="centered">
                                </div>
                        </div>
 
                        <p class="centered">
-                               <input type="hidden" name="this_photo" value="<?php echo esc_attr($image); ?>" id="this_photo" />
+                               <input type="hidden" name="this_photo" value="<?php echo esc_attr($image); ?>" id="tb_this_photo" class="tb_this_photo" />
                                <a href="#" class="select">
                                        <img src="<?php echo esc_url($image); ?>" alt="<?php echo esc_attr(__('Click to insert.')); ?>" title="<?php echo esc_attr(__('Click to insert.')); ?>" />
                                </a>
                                <a href="#" class="select">
                                        <img src="<?php echo esc_url($image); ?>" alt="<?php echo esc_attr(__('Click to insert.')); ?>" title="<?php echo esc_attr(__('Click to insert.')); ?>" />
                                </a>
@@ -164,34 +159,6 @@ if ( !empty($_REQUEST['ajax']) ) {
 
                        <p id="options"><a href="#" class="select button"><?php _e('Insert Image'); ?></a> <a href="#" class="cancel button"><?php _e('Cancel'); ?></a></p>
                        <?php break;
 
                        <p id="options"><a href="#" class="select button"><?php _e('Insert Image'); ?></a> <a href="#" class="cancel button"><?php _e('Cancel'); ?></a></p>
                        <?php break;
-
-               case 'photo_thickbox_url': ?>
-                       <script type="text/javascript" charset="utf-8">
-                               /* <![CDATA[ */
-                               jQuery('.cancel').click(function() {
-                                       tb_remove();
-                               });
-
-                               jQuery('.select').click(function() {
-                                       image_selector();
-                               });
-                               /* ]]> */
-                       </script>
-                       <h3 class="tb"><label for="this_photo"><?php _e('URL') ?></label></h3>
-                       <div class="titlediv">
-                               <div class="titlewrap">
-                                       <input id="this_photo" name="this_photo" class="tbtitle text" onkeypress="if(event.keyCode==13) image_selector();" />
-                               </div>
-                       </div>
-                       <h3 class="tb"><label for="photo_description"><?php _e('Description') ?></label></h3>
-                       <div id="titlediv">
-                               <div class="titlewrap">
-                                       <input id="this_photo_description" name="photo_description" class="tbtitle text" onkeypress="if(event.keyCode==13) image_selector();" value="<?php echo esc_attr($title);?>"/>
-                               </div>
-                       </div>
-
-                       <p id="options"><a href="#" class="select"><?php _e('Insert Image'); ?></a> | <a href="#" class="cancel"><?php _e('Cancel'); ?></a></p>
-                       <?php break;
        case 'photo_images':
                /**
                 * Retrieve all image URLs from given URI.
        case 'photo_images':
                /**
                 * Retrieve all image URLs from given URI.
@@ -303,36 +270,36 @@ if ( !empty($_REQUEST['ajax']) ) {
                        return false;
                }
 
                        return false;
                }
 
-               function image_selector() {
+               function image_selector(el) {
+                       var desc, src, parent = jQuery(el).closest('#photo-add-url-div');
+
+                       if ( parent.length ) {
+                               desc = parent.find('input.tb_this_photo_description').val() || '';
+                               src = parent.find('input.tb_this_photo').val() || ''
+                       } else {
+                               desc = jQuery('#tb_this_photo_description').val() || '';
+                               src = jQuery('#tb_this_photo').val() || ''
+                       }
+
                        tb_remove();
                        tb_remove();
-                       desc = jQuery('#this_photo_description').val();
-                       src = jQuery('#this_photo').val();
                        pick(src, desc);
                        jQuery('#extra-fields').hide();
                        jQuery('#extra-fields').html('');
                        return false;
                }
                        pick(src, desc);
                        jQuery('#extra-fields').hide();
                        jQuery('#extra-fields').html('');
                        return false;
                }
-                       jQuery('#extra-fields').html('<div class="postbox"><h2><?php _e( 'Add Photos' ); ?> <small id="photo_directions">(<?php _e("click images to select") ?>)</small></h2><ul class="actions"><li><a href="#" id="photo-add-url" class="thickbox button"><?php _e("Add from URL") ?> +</a></li></ul><div class="inside"><div class="titlewrap"><div id="img_container"></div></div><p id="options"><a href="#" class="close button"><?php _e('Cancel'); ?></a><a href="#" class="refresh button"><?php _e('Refresh'); ?></a></p></div>');
-                       jQuery('#img_container').html(strtoappend);
+
+               jQuery('#extra-fields').html('<div class="postbox"><h2><?php _e( 'Add Photos' ); ?> <small id="photo_directions">(<?php _e("click images to select") ?>)</small></h2><ul class="actions"><li><a href="#" id="photo-add-url" class="button"><?php _e("Add from URL") ?> +</a></li></ul><div class="inside"><div class="titlewrap"><div id="img_container"></div></div><p id="options"><a href="#" class="close button"><?php _e('Cancel'); ?></a><a href="#" class="refresh button"><?php _e('Refresh'); ?></a></p></div>');
+               jQuery('#img_container').html(strtoappend);
                <?php break;
 }
 die;
 }
 
                <?php break;
 }
 die;
 }
 
-?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" <?php do_action('admin_xml_ns'); ?> <?php language_attributes(); ?>>
-<head>
-       <meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php echo get_option('blog_charset'); ?>" />
-       <title><?php _e('Press This') ?></title>
-
-<?php
-       add_thickbox();
-       wp_enqueue_style( 'press-this' );
-       wp_enqueue_style( 'press-this-ie');
        wp_enqueue_style( 'colors' );
        wp_enqueue_script( 'post' );
        wp_enqueue_style( 'colors' );
        wp_enqueue_script( 'post' );
+       _wp_admin_html_begin();
 ?>
 ?>
+<title><?php _e('Press This') ?></title>
 <script type="text/javascript">
 //<![CDATA[
 addLoadEvent = function(func){if(typeof jQuery!="undefined")jQuery(document).ready(func);else if(typeof wpOnload!='function'){wpOnload=func;}else{var oldonload=wpOnload;wpOnload=function(){oldonload();func();}}};
 <script type="text/javascript">
 //<![CDATA[
 addLoadEvent = function(func){if(typeof jQuery!="undefined")jQuery(document).ready(func);else if(typeof wpOnload!='function'){wpOnload=func;}else{var oldonload=wpOnload;wpOnload=function(){oldonload();func();}}};
@@ -348,13 +315,18 @@ var photostorage = false;
        do_action('admin_head');
 ?>
        <script type="text/javascript">
        do_action('admin_head');
 ?>
        <script type="text/javascript">
+       var wpActiveEditor = 'content';
+
        function insert_plain_editor(text) {
        function insert_plain_editor(text) {
-               edCanvas = document.getElementById('content');
-               edInsertContent(edCanvas, text);
+               if ( typeof(QTags) != 'undefined' )
+                       QTags.insertContent(text);
        }
        function set_editor(text) {
        }
        function set_editor(text) {
-               if ( '' == text || '<p></p>' == text ) text = '<p><br /></p>';
-               if ( tinyMCE.activeEditor ) tinyMCE.execCommand('mceSetContent', false, text);
+               if ( '' == text || '<p></p>' == text )
+                       text = '<p><br /></p>';
+
+               if ( tinyMCE.activeEditor )
+                       tinyMCE.execCommand('mceSetContent', false, text);
        }
        function insert_editor(text) {
                if ( '' != text && tinyMCE.activeEditor && ! tinyMCE.activeEditor.isHidden()) {
        }
        function insert_editor(text) {
                if ( '' != text && tinyMCE.activeEditor && ! tinyMCE.activeEditor.isHidden()) {
@@ -404,18 +376,30 @@ var photostorage = false;
                                function setup_photo_actions() {
                                        jQuery('.close').click(function() {
                                                jQuery('#extra-fields').hide();
                                function setup_photo_actions() {
                                        jQuery('.close').click(function() {
                                                jQuery('#extra-fields').hide();
+                                               jQuery('body').append( jQuery('#photo-add-url-div') );
                                                jQuery('#extra-fields').html('');
                                        });
                                        jQuery('.refresh').click(function() {
                                                photostorage = false;
                                                jQuery('#extra-fields').html('');
                                        });
                                        jQuery('.refresh').click(function() {
                                                photostorage = false;
+                                               jQuery('body').append( jQuery('#photo-add-url-div') );
                                                show('photo');
                                        });
                                                show('photo');
                                        });
-                                       jQuery('#photo-add-url').attr('href', '?ajax=photo_thickbox_url&height=200&width=500');
+                                       jQuery('#photo-add-url').click(function(){
+                                               var container = jQuery('#img_container');
+
+                                               if ( container.children('#photo-add-url-div:visible').length ) {
+                                                       container.children('a').show();
+                                                       jQuery('#photo-add-url-div').hide();
+                                               } else {
+                                                       container.children('a').hide();
+                                                       container.append( jQuery('#photo-add-url-div').show() );
+                                               }
+                                       });
                                        jQuery('#waiting').hide();
                                        jQuery('#extra-fields').show();
                                }
                                        jQuery('#waiting').hide();
                                        jQuery('#extra-fields').show();
                                }
-                               jQuery('#extra-fields').before('<div id="waiting"><img src="<?php echo esc_url( admin_url( 'images/wpspin_light.gif' ) ); ?>" alt="" /> <?php echo esc_js( __( 'Loading...' ) ); ?></div>');
 
 
+                               jQuery('#waiting').show();
                                if(photostorage == false) {
                                        jQuery.ajax({
                                                type: "GET",
                                if(photostorage == false) {
                                        jQuery.ajax({
                                                type: "GET",
@@ -439,7 +423,7 @@ var photostorage = false;
        }
        jQuery(document).ready(function($) {
                //resize screen
        }
        jQuery(document).ready(function($) {
                //resize screen
-               window.resizeTo(720,540);
+               window.resizeTo(720,580);
                // set button actions
                jQuery('#photo_button').click(function() { show('photo'); return false; });
                jQuery('#video_button').click(function() { show('video'); return false; });
                // set button actions
                jQuery('#photo_button').click(function() { show('photo'); return false; });
                jQuery('#video_button').click(function() { show('video'); return false; });
@@ -461,26 +445,22 @@ var photostorage = false;
 </script>
 </head>
 <body class="press-this wp-admin">
 </script>
 </head>
 <body class="press-this wp-admin">
-<?php
-if ( user_can_richedit() ) {
-       wp_tiny_mce( true, array( 'height' => '370' ) );
-}
-?>
 <form action="press-this.php?action=post" method="post">
 <div id="poststuff" class="metabox-holder">
 <form action="press-this.php?action=post" method="post">
 <div id="poststuff" class="metabox-holder">
-       <div id="side-info-column">
+       <div id="side-sortables" class="press-this-sidebar">
                <div class="sleeve">
                        <?php wp_nonce_field('press-this') ?>
                        <input type="hidden" name="post_type" id="post_type" value="text"/>
                        <input type="hidden" name="autosave" id="autosave" />
                        <input type="hidden" id="original_post_status" name="original_post_status" value="draft" />
                        <input type="hidden" id="prev_status" name="prev_status" value="draft" />
                <div class="sleeve">
                        <?php wp_nonce_field('press-this') ?>
                        <input type="hidden" name="post_type" id="post_type" value="text"/>
                        <input type="hidden" name="autosave" id="autosave" />
                        <input type="hidden" id="original_post_status" name="original_post_status" value="draft" />
                        <input type="hidden" id="prev_status" name="prev_status" value="draft" />
+                       <input type="hidden" id="post_id" name="post_id" value="<?php echo (int) $post_ID; ?>" />
 
                        <!-- This div holds the photo metadata -->
                        <div class="photolist"></div>
 
                        <div id="submitdiv" class="postbox">
 
                        <!-- This div holds the photo metadata -->
                        <div class="photolist"></div>
 
                        <div id="submitdiv" class="postbox">
-                               <div class="handlediv" title="<?php _e( 'Click to toggle' ); ?>"><br /></div>
+                               <div class="handlediv" title="<?php esc_attr_e( 'Click to toggle' ); ?>"><br /></div>
                                <h3 class="hndle"><?php _e('Press This') ?></h3>
                                <div class="inside">
                                        <p id="publishing-actions">
                                <h3 class="hndle"><?php _e('Press This') ?></h3>
                                <div class="inside">
                                        <p id="publishing-actions">
@@ -502,7 +482,7 @@ if ( user_can_richedit() ) {
                                        <p>
                                                <label for="post_format"><?php _e( 'Post Format:' ); ?>
                                                <select name="post_format" id="post_format">
                                        <p>
                                                <label for="post_format"><?php _e( 'Post Format:' ); ?>
                                                <select name="post_format" id="post_format">
-                                                       <option value="0"><?php _e( 'Standard' ); ?></option>
+                                                       <option value="0"><?php _ex( 'Standard', 'Post format' ); ?></option>
                                                <?php foreach ( $post_formats[0] as $format ): ?>
                                                        <option<?php selected( $default_format, $format ); ?> value="<?php echo esc_attr( $format ); ?>"> <?php echo esc_html( get_post_format_string( $format ) ); ?></option>
                                                <?php endforeach; ?>
                                                <?php foreach ( $post_formats[0] as $format ): ?>
                                                        <option<?php selected( $default_format, $format ); ?> value="<?php echo esc_attr( $format ); ?>"> <?php echo esc_html( get_post_format_string( $format ) ); ?></option>
                                                <?php endforeach; ?>
@@ -514,7 +494,7 @@ if ( user_can_richedit() ) {
 
                        <?php $tax = get_taxonomy( 'category' ); ?>
                        <div id="categorydiv" class="postbox">
 
                        <?php $tax = get_taxonomy( 'category' ); ?>
                        <div id="categorydiv" class="postbox">
-                               <div class="handlediv" title="<?php _e( 'Click to toggle' ); ?>"><br /></div>
+                               <div class="handlediv" title="<?php esc_attr_e( 'Click to toggle' ); ?>"><br /></div>
                                <h3 class="hndle"><?php _e('Categories') ?></h3>
                                <div class="inside">
                                <div id="taxonomy-category" class="categorydiv">
                                <h3 class="hndle"><?php _e('Categories') ?></h3>
                                <div class="inside">
                                <div id="taxonomy-category" class="categorydiv">
@@ -564,20 +544,18 @@ if ( user_can_richedit() ) {
                        </div>
 
                        <div id="tagsdiv-post_tag" class="postbox">
                        </div>
 
                        <div id="tagsdiv-post_tag" class="postbox">
-                               <div class="handlediv" title="<?php _e( 'Click to toggle' ); ?>">
-                                       <br/>
-                               </div>
-                               <h3><span><?php _e('Post Tags'); ?></span></h3>
+                               <div class="handlediv" title="<?php esc_attr_e( 'Click to toggle' ); ?>"><br /></div>
+                               <h3><span><?php _e('Tags'); ?></span></h3>
                                <div class="inside">
                                        <div class="tagsdiv" id="post_tag">
                                <div class="inside">
                                        <div class="tagsdiv" id="post_tag">
-                                               <p class="jaxtag">
-                                                       <label class="screen-reader-text" for="newtag"><?php _e('Post Tags'); ?></label>
+                                               <div class="jaxtag">
+                                                       <label class="screen-reader-text" for="newtag"><?php _e('Tags'); ?></label>
                                                        <input type="hidden" name="tax_input[post_tag]" class="the-tags" id="tax-input[post_tag]" value="" />
                                                        <div class="ajaxtag">
                                                                <input type="text" name="newtag[post_tag]" class="newtag form-input-tip" size="16" autocomplete="off" value="" />
                                                                <input type="button" class="button tagadd" value="<?php esc_attr_e('Add'); ?>" tabindex="3" />
                                                        </div>
                                                        <input type="hidden" name="tax_input[post_tag]" class="the-tags" id="tax-input[post_tag]" value="" />
                                                        <div class="ajaxtag">
                                                                <input type="text" name="newtag[post_tag]" class="newtag form-input-tip" size="16" autocomplete="off" value="" />
                                                                <input type="button" class="button tagadd" value="<?php esc_attr_e('Add'); ?>" tabindex="3" />
                                                        </div>
-                                               </p>
+                                               </div>
                                                <div class="tagchecklist"></div>
                                        </div>
                                        <p class="tagcloud-link"><a href="#titlediv" class="tagcloud-link" id="link-post_tag"><?php _e('Choose from the most used tags'); ?></a></p>
                                                <div class="tagchecklist"></div>
                                        </div>
                                        <p class="tagcloud-link"><a href="#titlediv" class="tagcloud-link" id="link-post_tag"><?php _e('Choose from the most used tags'); ?></a></p>
@@ -596,8 +574,15 @@ if ( user_can_richedit() ) {
                        </h1>
                </div>
 
                        </h1>
                </div>
 
-               <?php if ( isset($posted) && intval($posted) ) { $post_ID = intval($posted); ?>
-               <div id="message" class="updated"><p><strong><?php _e('Your post has been saved.'); ?></strong> <a onclick="window.opener.location.replace(this.href); window.close();" href="<?php echo get_permalink( $post_ID); ?>"><?php _e('View post'); ?></a> | <a href="<?php echo get_edit_post_link( $post_ID ); ?>" onclick="window.opener.location.replace(this.href); window.close();"><?php _e('Edit Post'); ?></a> | <a href="#" onclick="window.close();"><?php _e('Close Window'); ?></a></p></div>
+               <?php
+               if ( isset($posted) && intval($posted) ) {
+                       $post_ID = intval($posted); ?>
+                       <div id="message" class="updated">
+                       <p><strong><?php _e('Your post has been saved.'); ?></strong>
+                       <a onclick="window.opener.location.replace(this.href); window.close();" href="<?php echo get_permalink($post_ID); ?>"><?php _e('View post'); ?></a>
+                       | <a href="<?php echo get_edit_post_link( $post_ID ); ?>" onclick="window.opener.location.replace(this.href); window.close();"><?php _e('Edit Post'); ?></a>
+                       | <a href="#" onclick="window.close();"><?php _e('Close Window'); ?></a></p>
+                       </div>
                <?php } ?>
 
                <div id="titlediv">
                <?php } ?>
 
                <div id="titlediv">
@@ -606,47 +591,69 @@ if ( user_can_richedit() ) {
                        </div>
                </div>
 
                        </div>
                </div>
 
+               <div id="waiting" style="display: none"><img src="<?php echo esc_url( admin_url( 'images/wpspin_light.gif' ) ); ?>" alt="" /> <?php esc_html_e( 'Loading...' ); ?></div>
+
                <div id="extra-fields" style="display: none"></div>
 
                <div class="postdivrich">
                <div id="extra-fields" style="display: none"></div>
 
                <div class="postdivrich">
-                       <div id="editor-toolbar">
-                               <?php if ( user_can_richedit() ) :
-                                       wp_print_scripts( 'quicktags' );
-                                       add_filter('the_editor_content', 'wp_richedit_pre'); ?>
-                                       <a id="edButtonHTML" onclick="switchEditors.go('content', 'html');"><?php _e('HTML'); ?></a>
-                                       <a id="edButtonPreview" class="active" onclick="switchEditors.go('content', 'tinymce');"><?php _e('Visual'); ?></a>
-                                       <div class="zerosize"><input accesskey="e" type="button" onclick="switchEditors.go('content')" /></div>
-                               <?php endif; ?>
-
-                               <div id="media-buttons">
-                                       <?php
-                                       _e( 'Add:' );
+               <?php
 
 
-                                       if ( current_user_can('upload_files') ) : ?>
-                                               <a id="photo_button" title="<?php _e('Insert an Image'); ?>" href="#">
-<img alt="<?php _e('Insert an Image'); ?>" src="<?php echo esc_url( admin_url( 'images/media-button-image.gif?ver=20100531' ) ); ?>"/></a><?php
-                                       endif;
-                                       ?><a id="video_button" title="<?php _e('Embed a Video'); ?>" href="#"><img alt="<?php _e('Embed a Video'); ?>" src="<?php echo esc_url( admin_url( 'images/media-button-video.gif?ver=20100531' ) ); ?>"/></a>
-                               </div>
-                       </div>
-                       <div id="quicktags"></div>
-                       <div class="editor-container">
-                               <textarea name="content" id="content" style="width:100%;" class="theEditor" rows="15"><?php
-                                       if ( $selection )
-                                               echo wp_richedit_pre($selection);
-                                       if ( $url ) {
-                                               echo '<p>';
-                                               if ( $selection )
-                                                       _e('via ');
-                                               printf( "<a href='%s'>%s</a>.</p>", esc_url( $url ), esc_html( $title ) );
-                                       }
-                               ?></textarea>
-                       </div>
+               $editor_settings = array(
+                       'teeny' => true,
+                       'textarea_rows' => '15'
+               );
+
+               $content = '';
+               if ( $selection )
+                       $content .=  $selection;
+
+               if ( $url ) {
+                       $content .= '<p>';
+
+                       if ( $selection )
+                               $content .= __('via ');
+
+                       $content .= sprintf( "<a href='%s'>%s</a>.</p>", esc_url( $url ), esc_html( $title ) );
+               }
+
+               remove_action( 'media_buttons', 'media_buttons' );
+               add_action( 'media_buttons', 'press_this_media_buttons' );
+               function press_this_media_buttons() {
+                       _e( 'Add:' );
+
+                       if ( current_user_can('upload_files') ) {
+                               ?>
+                               <a id="photo_button" title="<?php esc_attr_e('Insert an Image'); ?>" href="#">
+                               <img alt="<?php esc_attr_e('Insert an Image'); ?>" src="<?php echo esc_url( admin_url( 'images/media-button-image.gif?ver=20100531' ) ); ?>"/></a>
+                               <?php
+                       }
+                       ?>
+                       <a id="video_button" title="<?php esc_attr_e('Embed a Video'); ?>" href="#"><img alt="<?php esc_attr_e('Embed a Video'); ?>" src="<?php echo esc_url( admin_url( 'images/media-button-video.gif?ver=20100531' ) ); ?>"/></a>
+                       <?php
+               }
+
+               wp_editor( $content, 'content', $editor_settings );
+
+               ?>
                </div>
        </div>
 </div>
 </form>
                </div>
        </div>
 </div>
 </form>
-<?php do_action('admin_print_footer_scripts'); ?>
+<div id="photo-add-url-div" style="display:none;">
+       <table><tr>
+       <td><label for="this_photo"><?php _e('URL') ?></label></td>
+       <td><input type="text" id="this_photo" name="this_photo" class="tb_this_photo text" onkeypress="if(event.keyCode==13) image_selector(this);" /></td>
+       </tr><tr>
+       <td><label for="this_photo_description"><?php _e('Description') ?></label></td>
+       <td><input type="text" id="this_photo_description" name="photo_description" class="tb_this_photo_description text" onkeypress="if(event.keyCode==13) image_selector(this);" value="<?php echo esc_attr($title);?>"/></td>
+       </tr><tr>
+       <td><input type="button" class="button" onclick="image_selector(this)" value="<?php esc_attr_e('Insert Image'); ?>" /></td>
+       </tr></table>
+</div>
+<?php
+do_action('admin_footer');
+do_action('admin_print_footer_scripts');
+?>
 <script type="text/javascript">if(typeof wpOnload=='function')wpOnload();</script>
 </body>
 </html>
 <script type="text/javascript">if(typeof wpOnload=='function')wpOnload();</script>
 </body>
 </html>
index acd65e7aa5b1c6a1feef089ed3a9d167be6b145b..efc158fc8978acd30bb4166156ccff347bd12340 100644 (file)
@@ -78,7 +78,7 @@ else
 function display_header() {
        header( 'Content-Type: text/html; charset=utf-8' );
 ?>
 function display_header() {
        header( 'Content-Type: text/html; charset=utf-8' );
 ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html>
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
@@ -130,7 +130,7 @@ switch($step) {
                <tr>
                        <th scope="row"><label for="pwd">Password</label></th>
                        <td><input name="pwd" id="pwd" type="text" size="25" value="password" /></td>
                <tr>
                        <th scope="row"><label for="pwd">Password</label></th>
                        <td><input name="pwd" id="pwd" type="text" size="25" value="password" /></td>
-                       <td>...and MySQL password.</td>
+                       <td>...and your MySQL password.</td>
                </tr>
                <tr>
                        <th scope="row"><label for="dbhost">Database Host</label></th>
                </tr>
                <tr>
                        <th scope="row"><label for="dbhost">Database Host</label></th>
@@ -139,7 +139,7 @@ switch($step) {
                </tr>
                <tr>
                        <th scope="row"><label for="prefix">Table Prefix</label></th>
                </tr>
                <tr>
                        <th scope="row"><label for="prefix">Table Prefix</label></th>
-                       <td><input name="prefix" id="prefix" type="text" id="prefix" value="wp_" size="25" /></td>
+                       <td><input name="prefix" id="prefix" type="text" value="wp_" size="25" /></td>
                        <td>If you want to run multiple WordPress installations in a single database, change this.</td>
                </tr>
        </table>
                        <td>If you want to run multiple WordPress installations in a single database, change this.</td>
                </tr>
        </table>
index c41f0c8347b7eb2605a76b589a4f7718971cc58e..7b31745b4d43de3a3a2de9f2a37bc443beb6dedd 100644 (file)
@@ -20,26 +20,30 @@ if ( !current_user_can('edit_themes') )
 $title = __("Edit Themes");
 $parent_file = 'themes.php';
 
 $title = __("Edit Themes");
 $parent_file = 'themes.php';
 
-$help = '<p>' . __('You can use the Theme Editor to edit the individual CSS and PHP files which make up your theme.') . '</p>';
-$help .= '<p>' . __('Begin by choosing a theme to edit from the dropdown menu and clicking Select. A list then appears of all the template files. Clicking once on any file name causes the file to appear in the large Editor box.') . '</p>';
-$help .= '<p>' . __('For PHP files, you can use the Documentation dropdown to select from functions recognized in that file. Lookup takes you to a web page with reference material about that particular function.') . '</p>';
-$help .= '<p>' . __('After typing in your edits, click Update File.') . '</p>';
-$help .= '<p>' . __('<strong>Advice:</strong> think very carefully about your site crashing if you are live-editing the theme currently in use.') . '</p>';
-$help .= '<p>' . __('Upgrading to a newer version of the same theme will override changes made here. To avoid this, consider creating a <a href="http://codex.wordpress.org/Child_Themes" target="_blank">child theme</a> instead.') . '</p>';
-if ( is_network_admin() )
-       $help .= '<p>' . __('Any edits to files from this screen will be reflected on all sites in the network.') . '</p>';
-$help .= '<p><strong>' . __('For more information:') . '</strong></p>';
-$help .= '<p>' . __('<a href="http://codex.wordpress.org/Theme_Development" target="_blank">Documentation on Theme Development</a>') . '</p>';
-$help .= '<p>' . __('<a href="http://codex.wordpress.org/Using_Themes" target="_blank">Documentation on Using Themes</a>') . '</p>';
-$help .= '<p>' . __('<a href="http://codex.wordpress.org/Editing_Files" target="_blank">Documentation on Editing Files</a>') . '</p>';
-$help .= '<p>' . __('<a href="http://codex.wordpress.org/Template_Tags" target="_blank">Documentation on Template Tags</a>') . '</p>';
-$help .= '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>';
-add_contextual_help($current_screen, $help);
+get_current_screen()->add_help_tab( array(
+'id'           => 'overview',
+'title'                => __('Overview'),
+'content'      =>
+       '<p>' . __('You can use the Theme Editor to edit the individual CSS and PHP files which make up your theme.') . '</p>
+       <p>' . __('Begin by choosing a theme to edit from the dropdown menu and clicking Select. A list then appears of all the template files. Clicking once on any file name causes the file to appear in the large Editor box.') . '</p>
+       <p>' . __('For PHP files, you can use the Documentation dropdown to select from functions recognized in that file. Lookup takes you to a web page with reference material about that particular function.') . '</p>
+       <p>' . __('After typing in your edits, click Update File.') . '</p>
+       <p>' . __('<strong>Advice:</strong> think very carefully about your site crashing if you are live-editing the theme currently in use.') . '</p>
+       <p>' . __('Upgrading to a newer version of the same theme will override changes made here. To avoid this, consider creating a <a href="http://codex.wordpress.org/Child_Themes" target="_blank">child theme</a> instead.') . '</p>' .
+       ( is_network_admin() ? '<p>' . __('Any edits to files from this screen will be reflected on all sites in the network.') . '</p>' : '' )
+) );
+
+get_current_screen()->set_help_sidebar(
+       '<p><strong>' . __('For more information:') . '</strong></p>' .
+       '<p>' . __('<a href="http://codex.wordpress.org/Theme_Development" target="_blank">Documentation on Theme Development</a>') . '</p>' .
+       '<p>' . __('<a href="http://codex.wordpress.org/Using_Themes" target="_blank">Documentation on Using Themes</a>') . '</p>' .
+       '<p>' . __('<a href="http://codex.wordpress.org/Editing_Files" target="_blank">Documentation on Editing Files</a>') . '</p>' .
+       '<p>' . __('<a href="http://codex.wordpress.org/Template_Tags" target="_blank">Documentation on Template Tags</a>') . '</p>' .
+       '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
+);
 
 wp_reset_vars(array('action', 'redirect', 'profile', 'error', 'warning', 'a', 'file', 'theme', 'dir'));
 
 
 wp_reset_vars(array('action', 'redirect', 'profile', 'error', 'warning', 'a', 'file', 'theme', 'dir'));
 
-wp_admin_css( 'theme-editor' );
-
 $themes = get_themes();
 
 if (empty($theme)) {
 $themes = get_themes();
 
 if (empty($theme)) {
index 6f1a89306bd1245b3ea812e5b31a9d9d7c4331e9..333ac44f01081c36fa2af3f4546100a4633e23da 100644 (file)
@@ -29,7 +29,6 @@ $parent_file = 'themes.php';
 if ( !is_network_admin() )
        $submenu_file = 'themes.php';
 
 if ( !is_network_admin() )
        $submenu_file = 'themes.php';
 
-wp_enqueue_style( 'theme-install' );
 wp_enqueue_script( 'theme-install' );
 
 add_thickbox();
 wp_enqueue_script( 'theme-install' );
 
 add_thickbox();
@@ -42,10 +41,18 @@ do_action('install_themes_pre_' . $tab); //Used to override the general interfac
 $help = '<p>' . sprintf(__('You can find additional themes for your site by using the Theme Browser/Installer on this screen, which will display themes from the <a href="%s" target="_blank">WordPress.org Theme Directory</a>. These themes are designed and developed by third parties, are available free of charge, and are compatible with the license WordPress uses.'), 'http://wordpress.org/extend/themes/') . '</p>';
 $help .= '<p>' . __('You can Search for themes by keyword, author, or tag, or can get more specific and search by criteria listed in the feature filter. Alternately, you can browse the themes that are Featured, Newest, or Recently Updated. When you find a theme you like, you can preview it or install it.') . '</p>';
 $help .= '<p>' . __('You can Upload a theme manually if you have already downloaded its ZIP archive onto your computer (make sure it is from a trusted and original source). You can also do it the old-fashioned way and copy a downloaded theme&#8217;s folder via FTP into your <code>/wp-content/themes</code> directory.') . '</p>';
 $help = '<p>' . sprintf(__('You can find additional themes for your site by using the Theme Browser/Installer on this screen, which will display themes from the <a href="%s" target="_blank">WordPress.org Theme Directory</a>. These themes are designed and developed by third parties, are available free of charge, and are compatible with the license WordPress uses.'), 'http://wordpress.org/extend/themes/') . '</p>';
 $help .= '<p>' . __('You can Search for themes by keyword, author, or tag, or can get more specific and search by criteria listed in the feature filter. Alternately, you can browse the themes that are Featured, Newest, or Recently Updated. When you find a theme you like, you can preview it or install it.') . '</p>';
 $help .= '<p>' . __('You can Upload a theme manually if you have already downloaded its ZIP archive onto your computer (make sure it is from a trusted and original source). You can also do it the old-fashioned way and copy a downloaded theme&#8217;s folder via FTP into your <code>/wp-content/themes</code> directory.') . '</p>';
-$help .= '<p><strong>' . __('For more information:') . '</strong></p>';
-$help .= '<p>' . __('<a href="http://codex.wordpress.org/Using_Themes#Adding_New_Themes" target="_blank">Documentation on Adding New Themes</a>') . '</p>';
-$help .= '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>';
-add_contextual_help($current_screen, $help);
+
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' => $help
+) );
+
+get_current_screen()->set_help_sidebar(
+       '<p><strong>' . __('For more information:') . '</strong></p>' .
+       '<p>' . __('<a href="http://codex.wordpress.org/Using_Themes#Adding_New_Themes" target="_blank">Documentation on Adding New Themes</a>') . '</p>' .
+       '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
+);
 
 include(ABSPATH . 'wp-admin/admin-header.php');
 ?>
 
 include(ABSPATH . 'wp-admin/admin-header.php');
 ?>
index b845e69b55eedd5e2db91b385e92ddf8ad3363ef..bb84ca114361fa4c69c028524d4378b2aec958a9 100644 (file)
@@ -37,20 +37,38 @@ $parent_file = 'themes.php';
 
 if ( current_user_can( 'switch_themes' ) ) :
 
 
 if ( current_user_can( 'switch_themes' ) ) :
 
-$help = '<p>' . __('Aside from the default theme included with your WordPress installation, themes are designed and developed by third parties.') . '</p>';
-$help .= '<p>' . __('You can see your active theme at the top of the screen. Below are the other themes you have installed that are not currently in use. You can see what your site would look like with one of these themes by clicking the Preview link. To change themes, click the Activate link.') . '</p>';
-if ( current_user_can('install_themes') )
-       $help .= '<p>' . sprintf(__('If you would like to see more themes to choose from, click on the &#8220;Install Themes&#8221; tab and you will be able to browse or search for additional themes from the <a href="%s" target="_blank">WordPress.org Theme Directory</a>. Themes in the WordPress.org Theme Directory are designed and developed by third parties, and are compatible with the license WordPress uses. Oh, and they&#8217;re free!'), 'http://wordpress.org/extend/themes/') . '</p>';
+$help_manage = '<p>' . __('Aside from the default theme included with your WordPress installation, themes are designed and developed by third parties.') . '</p>' .
+       '<p>' . __('You can see your active theme at the top of the screen. Below are the other themes you have installed that are not currently in use. You can see what your site would look like with one of these themes by clicking the Preview link. To change themes, click the Activate link.') . '</p>';
+
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' => $help_manage,
+) );
+
+if ( current_user_can( 'install_themes' ) ) {
+       if ( is_multisite() ) {
+               $help_install = '<p>' . __('Installing themes on Multisite can only be done from the Network Admin section.') . '</p>';
+       } else {
+               $help_install = '<p>' . sprintf( __('If you would like to see more themes to choose from, click on the &#8220;Install Themes&#8221; tab and you will be able to browse or search for additional themes from the <a href="%s" target="_blank">WordPress.org Theme Directory</a>. Themes in the WordPress.org Theme Directory are designed and developed by third parties, and are compatible with the license WordPress uses. Oh, and they&#8217;re free!'), 'http://wordpress.org/extend/themes/' ) . '</p>';
+       }
+
+       get_current_screen()->add_help_tab( array(
+               'id'      => 'adding-themes',
+               'title'   => __('Adding Themes'),
+               'content' => $help_install,
+       ) );
+}
 
 
-$help .= '<p><strong>' . __('For more information:') . '</strong></p>';
-$help .= '<p>' . __('<a href="http://codex.wordpress.org/Using_Themes" target="_blank">Documentation on Using Themes</a>') . '</p>';
-$help .= '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>';
-add_contextual_help($current_screen, $help);
+get_current_screen()->set_help_sidebar(
+       '<p><strong>' . __('For more information:') . '</strong></p>' .
+       '<p>' . __('<a href="http://codex.wordpress.org/Using_Themes" target="_blank">Documentation on Using Themes</a>') . '</p>' .
+       '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
+);
 
 add_thickbox();
 wp_enqueue_script( 'theme-preview' );
 wp_enqueue_script( 'theme' );
 
 add_thickbox();
 wp_enqueue_script( 'theme-preview' );
 wp_enqueue_script( 'theme' );
-wp_enqueue_style( 'theme-install' );
 
 endif;
 
 
 endif;
 
@@ -82,7 +100,7 @@ if ( ! is_multisite() && current_user_can( 'install_themes' ) ) : ?>
 <h3><?php _e('Current Theme'); ?></h3>
 <div id="current-theme">
 <?php if ( $ct->screenshot ) : ?>
 <h3><?php _e('Current Theme'); ?></h3>
 <div id="current-theme">
 <?php if ( $ct->screenshot ) : ?>
-<img src="<?php echo $ct->theme_root_uri . '/' . $ct->stylesheet . '/' . $ct->screenshot; ?>" alt="<?php _e('Current theme preview'); ?>" />
+<img src="<?php echo $ct->theme_root_uri . '/' . $ct->stylesheet . '/' . $ct->screenshot; ?>" alt="<?php esc_attr_e('Current theme preview'); ?>" />
 <?php endif; ?>
 <h4><?php
        /* translators: 1: theme title, 2: theme version, 3: theme author */
 <?php endif; ?>
 <h4><?php
        /* translators: 1: theme title, 2: theme version, 3: theme author */
@@ -104,7 +122,7 @@ if ( ! is_multisite() && current_user_can( 'install_themes' ) ) : ?>
                        if ( !empty($submenu[$item[2]]) ) {
                                $submenu[$item[2]] = array_values($submenu[$item[2]]);  // Re-index.
                                $menu_hook = get_plugin_page_hook($submenu[$item[2]][0][2], $item[2]);
                        if ( !empty($submenu[$item[2]]) ) {
                                $submenu[$item[2]] = array_values($submenu[$item[2]]);  // Re-index.
                                $menu_hook = get_plugin_page_hook($submenu[$item[2]][0][2], $item[2]);
-                               if ( file_exists(ABSPATH . PLUGINDIR . "/{$submenu[$item[2]][0][2]}") || !empty($menu_hook))
+                               if ( file_exists(WP_PLUGIN_DIR . "/{$submenu[$item[2]][0][2]}") || !empty($menu_hook))
                                        $options[] = "<a href='admin.php?page={$submenu[$item[2]][0][2]}'$class>{$item[0]}</a>";
                                else
                                        $options[] = "<a href='{$submenu[$item[2]][0][2]}'$class>{$item[0]}</a>";
                                        $options[] = "<a href='admin.php?page={$submenu[$item[2]][0][2]}'$class>{$item[0]}</a>";
                                else
                                        $options[] = "<a href='{$submenu[$item[2]][0][2]}'$class>{$item[0]}</a>";
index 48528ae51302e85d92e6d454033d925cc88d8ba8..788972775290bc963c7519f6e112a272f3e8a695 100644 (file)
@@ -11,10 +11,19 @@ require_once('./admin.php');
 
 $title = __('Tools');
 
 
 $title = __('Tools');
 
-add_contextual_help($current_screen,
-       '<p>' . __('Press This is a bookmarklet that makes it easy to blog about something you come across on the web. You can use it to just grab a link, or to post an excerpt. Press This will even allow you to choose from images included on the page and use them in your post. Just drag the Press This link on this screen to your bookmarks bar in your browser, and you&#8217;ll be on your way to easier content creation. Clicking on it while on another website opens a popup window with all these options.') . '</p>' .
-       '<p>' . __('The Use This link for the Categories and Tags Converter will take you to the Import page, where that Converter is one of the plugins you can download. Once that plugin is installed, the link on this page takes you to a screen where you can choose conversion either way.') . '</p>' .
-       '<p>' . __('Note: Turbo/Gears is no longer promoted on this screen as it was in previous versions due to the fact that Google has discontinued support for it.') . '</p>' .
+get_current_screen()->add_help_tab( array(
+       'id'      => 'press-this',
+       'title'   => __('Press This'),
+       'content' => '<p>' . __('Press This is a bookmarklet that makes it easy to blog about something you come across on the web. You can use it to just grab a link, or to post an excerpt. Press This will even allow you to choose from images included on the page and use them in your post. Just drag the Press This link on this screen to your bookmarks bar in your browser, and you&#8217;ll be on your way to easier content creation. Clicking on it while on another website opens a popup window with all these options.') . '</p>',
+) );
+get_current_screen()->add_help_tab( array(
+       'id'      => 'converter',
+       'title'   => __('Categories and Tags Converter'),
+       'content' => '<p>' . __('Categories have hierarchy, meaning that you can nest sub-categories. Tags do not have hierachy and cannot be nested. Sometimes people start out using one on their posts, then later realize that the other would work better for their content.' ) . '</p>' .
+       '<p>' . __( 'The Categories and Tags Converter link on this screen will take you to the Import screen, where that Converter is one of the plugins you can install. Once that plugin is installed, return to this screen  and the link will take you to a screen where you can choose to convert tags into categories or vice versa.' ) . '</p>',
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Tools_Screen" target="_blank">Documentation on Tools</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Tools_Screen" target="_blank">Documentation on Tools</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
@@ -34,7 +43,7 @@ require_once('./admin-header.php');
 
        <p><?php _e('Use Press This to clip text, images and videos from any web page. Then edit and add more straight from Press This before you save or publish it in a post on your site.'); ?></p>
        <p class="description"><?php _e('Drag-and-drop the following link to your bookmarks bar or right click it and add it to your favorites for a posting shortcut.') ?></p>
 
        <p><?php _e('Use Press This to clip text, images and videos from any web page. Then edit and add more straight from Press This before you save or publish it in a post on your site.'); ?></p>
        <p class="description"><?php _e('Drag-and-drop the following link to your bookmarks bar or right click it and add it to your favorites for a posting shortcut.') ?></p>
-       <p class="pressthis"><a onclick="return false;" oncontextmenu="if(window.navigator.userAgent.indexOf('WebKit')!=-1)jQuery('.pressthis-code').show().find('textarea').focus().select();return false;" href="<?php echo htmlspecialchars( get_shortcut_link() ); ?>"><span><?php _e('Press This') ?></span></a></p>
+       <p class="pressthis"><a onclick="return false;" oncontextmenu="if(window.navigator.userAgent.indexOf('WebKit')!=-1||window.navigator.userAgent.indexOf('MSIE')!=-1)jQuery('.pressthis-code').show().find('textarea').focus().select();return false;" href="<?php echo htmlspecialchars( get_shortcut_link() ); ?>"><span><?php _e('Press This') ?></span></a></p>
        <div class="pressthis-code" style="display:none;">
        <p class="description"><?php _e('If your bookmarks toolbar is hidden: copy the code below, open your Bookmarks manager, create new bookmark, type Press This into the name field and paste the code into the URL field.') ?></p>
        <p><textarea rows="5" cols="120" readonly="readonly"><?php echo htmlspecialchars( get_shortcut_link() ); ?></textarea></p>
        <div class="pressthis-code" style="display:none;">
        <p class="description"><?php _e('If your bookmarks toolbar is hidden: copy the code below, open your Bookmarks manager, create new bookmark, type Press This into the name field and paste the code into the URL field.') ?></p>
        <p><textarea rows="5" cols="120" readonly="readonly"><?php echo htmlspecialchars( get_shortcut_link() ); ?></textarea></p>
@@ -49,7 +58,7 @@ $tags = get_taxonomy('post_tag');
 if ( current_user_can($cats->cap->manage_terms) || current_user_can($tags->cap->manage_terms) ) : ?>
 <div class="tool-box">
     <h3 class="title"><?php _e( 'Categories and Tags Converter' ) ?></h3>
 if ( current_user_can($cats->cap->manage_terms) || current_user_can($tags->cap->manage_terms) ) : ?>
 <div class="tool-box">
     <h3 class="title"><?php _e( 'Categories and Tags Converter' ) ?></h3>
-    <p><?php printf( __('<a href="%s">Use this</a> to convert categories to tags or tags to categories.'), 'import.php' ); ?></p>
+    <p><?php printf( __('If you want to convert your categories to tags (or vice versa), use the <a href="%s">Categories and Tags Converter</a> available from the Import screen.'), 'import.php' ); ?></p>
 </div>
 <?php
 endif;
 </div>
 <?php
 endif;
index 85c70a419d5c883567bef2a4ffa15ad66de40c66..c071dc23822df128a792314be3d80b5eea2fed7f 100644 (file)
@@ -9,6 +9,10 @@
 /** WordPress Administration Bootstrap */
 require_once('./admin.php');
 
 /** WordPress Administration Bootstrap */
 require_once('./admin.php');
 
+wp_enqueue_style( 'plugin-install' );
+wp_enqueue_script( 'plugin-install' );
+add_thickbox();
+
 if ( is_multisite() && ! is_network_admin() ) {
        wp_redirect( network_admin_url( 'update-core.php' ) );
        exit();
 if ( is_multisite() && ! is_network_admin() ) {
        wp_redirect( network_admin_url( 'update-core.php' ) );
        exit();
@@ -41,7 +45,11 @@ function list_core_update( $update ) {
                        $form_action = 'update-core.php?action=do-core-reinstall';
                } else {
                        $php_compat     = version_compare( $php_version, $update->php_version, '>=' );
                        $form_action = 'update-core.php?action=do-core-reinstall';
                } else {
                        $php_compat     = version_compare( $php_version, $update->php_version, '>=' );
-                       $mysql_compat   = version_compare( $mysql_version, $update->mysql_version, '>=' ) || file_exists( WP_CONTENT_DIR . '/db.php' );
+                       if ( file_exists( WP_CONTENT_DIR . '/db.php' ) && empty( $wpdb->is_mysql ) )
+                               $mysql_compat = true;
+                       else
+                               $mysql_compat = version_compare( $mysql_version, $update->mysql_version, '>=' );
+
                        if ( !$mysql_compat && !$php_compat )
                                $message = sprintf( __('You cannot update because <a href="http://codex.wordpress.org/Version_%1$s">WordPress %1$s</a> requires PHP version %2$s or higher and MySQL version %3$s or higher. You are running PHP version %4$s and MySQL version %5$s.'), $update->current, $update->php_version, $update->mysql_version, $php_version, $mysql_version );
                        elseif ( !$php_compat )
                        if ( !$mysql_compat && !$php_compat )
                                $message = sprintf( __('You cannot update because <a href="http://codex.wordpress.org/Version_%1$s">WordPress %1$s</a> requires PHP version %2$s or higher and MySQL version %3$s or higher. You are running PHP version %4$s and MySQL version %5$s.'), $update->current, $update->php_version, $update->mysql_version, $php_version, $mysql_version );
                        elseif ( !$php_compat )
@@ -66,7 +74,7 @@ function list_core_update( $update ) {
        echo '<input name="locale" value="'. esc_attr($update->locale) .'" type="hidden"/>';
        if ( $show_buttons ) {
                if ( $first_pass ) {
        echo '<input name="locale" value="'. esc_attr($update->locale) .'" type="hidden"/>';
        if ( $show_buttons ) {
                if ( $first_pass ) {
-                       submit_button( $submit, 'button button-primary', 'upgrade', false );
+                       submit_button( $submit, $current ? 'button' : 'primary', 'upgrade', false );
                        $first_pass = false;
                } else {
                        submit_button( $submit, 'button', 'upgrade', false );
                        $first_pass = false;
                } else {
                        submit_button( $submit, 'button', 'upgrade', false );
@@ -123,7 +131,7 @@ function dismissed_updates() {
  * @return null
  */
 function core_upgrade_preamble() {
  * @return null
  */
 function core_upgrade_preamble() {
-       global $upgrade_error;
+       global $upgrade_error, $wp_version;
 
        $updates = get_core_updates();
 ?>
 
        $updates = get_core_updates();
 ?>
@@ -168,7 +176,12 @@ function core_upgrade_preamble() {
                echo '</li>';
        }
        echo '</ul>';
                echo '</li>';
        }
        echo '</ul>';
-       echo '<p>' . __( 'While your site is being updated, it will be in maintenance mode. As soon as your updates are complete, your site will return to normal.' ) . '</p>';
+       if ( $updates ) {
+               echo '<p>' . __( 'While your site is being updated, it will be in maintenance mode. As soon as your updates are complete, your site will return to normal.' ) . '</p>';
+       } else {
+               list( $normalized_version ) = explode( '-', $wp_version );
+               echo '<p>' . sprintf( __( '<a href="%s">Learn more about WordPress %s</a>.' ), esc_url( admin_url( 'about.php' ) ), $normalized_version ) . '</p>';
+       }
        dismissed_updates();
 
        if ( current_user_can( 'update_plugins' ) )
        dismissed_updates();
 
        if ( current_user_can( 'update_plugins' ) )
@@ -246,10 +259,15 @@ function list_plugin_updates() {
                } else {
                        $upgrade_notice = '';
                }
                } else {
                        $upgrade_notice = '';
                }
+
+               $details_url = self_admin_url('plugin-install.php?tab=plugin-information&plugin=' . $plugin_data->update->slug . '&TB_iframe=true&width=640&height=662');
+               $details_text = sprintf(__('View version %1$s details'), $plugin_data->update->new_version);
+               $details = sprintf('<a href="%1$s" class="thickbox" title="%2$s">%3$s</a>.', esc_url($details_url), esc_attr($plugin_data->Name), $details_text);
+
                echo "
        <tr class='active'>
                <th scope='row' class='check-column'><input type='checkbox' name='checked[]' value='" . esc_attr($plugin_file) . "' /></th>
                echo "
        <tr class='active'>
                <th scope='row' class='check-column'><input type='checkbox' name='checked[]' value='" . esc_attr($plugin_file) . "' /></th>
-               <td><strong>{$plugin_data->Name}</strong><br />" . sprintf(__('You have version %1$s installed. Update to %2$s.'), $plugin_data->Version, $plugin_data->update->new_version) . $compat . $upgrade_notice . "</td>
+               <td><p><strong>{$plugin_data->Name}</strong><br />" . sprintf(__('You have version %1$s installed. Update to %2$s.'), $plugin_data->Version, $plugin_data->update->new_version) . ' ' . $details . $compat . $upgrade_notice . "</p></td>
        </tr>";
        }
 ?>
        </tr>";
        }
 ?>
@@ -299,7 +317,7 @@ function list_theme_updates() {
                echo "
        <tr class='active'>
                <th scope='row' class='check-column'><input type='checkbox' name='checked[]' value='" . esc_attr($stylesheet) . "' /></th>
                echo "
        <tr class='active'>
                <th scope='row' class='check-column'><input type='checkbox' name='checked[]' value='" . esc_attr($stylesheet) . "' /></th>
-               <td class='plugin-title'><img src='$screenshot' width='64' height='64' style='float:left; padding: 5px' /><strong>{$theme_data->Name}</strong>" .  sprintf(__('You have version %1$s installed. Update to %2$s.'), $theme_data->Version, $theme_data->update['new_version']) . "</td>
+               <td class='plugin-title'><img src='$screenshot' width='64' height='64' style='float:left; padding: 0 5px 5px' /><strong>{$theme_data->Name}</strong>" .  sprintf(__('You have version %1$s installed. Update to %2$s.'), $theme_data->Version, $theme_data->update['new_version']) . "</td>
        </tr>";
        }
 ?>
        </tr>";
        }
 ?>
@@ -360,11 +378,19 @@ function do_core_upgrade( $reinstall = false ) {
                show_message($result);
                if ('up_to_date' != $result->get_error_code() )
                        show_message( __('Installation Failed') );
                show_message($result);
                if ('up_to_date' != $result->get_error_code() )
                        show_message( __('Installation Failed') );
-       } else {
-               show_message( __('WordPress updated successfully') );
-               show_message( '<a href="' . esc_url( self_admin_url() ) . '">' . __('Go to Dashboard') . '</a>' );
+               echo '</div>';
+               return;
        }
        }
-       echo '</div>';
+
+       show_message( __('WordPress updated successfully') );
+       show_message( '<span class="hide-if-no-js">' . sprintf( __( 'Welcome to WordPress %1$s. You will be redirected to the About WordPress screen. If not, click <a href="%s">here</a>.' ), $result, esc_url( admin_url( 'about.php?updated' ) ) ) . '</span>' );
+       show_message( '<span class="hide-if-js">' . sprintf( __( 'Welcome to WordPress %1$s. <a href="%2$s">Learn more</a>.' ), $result, esc_url( admin_url( 'about.php?updated' ) ) ) . '</span>' );
+       ?>
+       </div>
+       <script type="text/javascript">
+       window.location = '<?php echo admin_url( 'about.php?upgraded' ); ?>';
+       </script>
+       <?php
 }
 
 function do_dismiss_core_update() {
 }
 
 function do_dismiss_core_update() {
@@ -405,10 +431,24 @@ if ( ( 'do-theme-upgrade' == $action || ( 'do-plugin-upgrade' == $action && ! is
 $title = __('WordPress Updates');
 $parent_file = 'tools.php';
 
 $title = __('WordPress Updates');
 $parent_file = 'tools.php';
 
-add_contextual_help($current_screen,
-       '<p>' . __('This screen lets you update to the latest version of WordPress as well as update your themes and plugins from the WordPress.org repository. When updates are available, the number of available updates will appear in a bubble on the left hand menu as a notification. It is very important to keep your WordPress installation up to date for security reasons, so when you see a number appear, make sure you take the time to update, which is an easy process.') . '</p>' .
+get_current_screen()->add_help_tab( array(
+'id'           => 'overview',
+'title'                => __('Overview'),
+'content'      =>
+       '<p>' . __('This screen lets you update to the latest version of WordPress as well as update your themes and plugins from the WordPress.org repository. When updates are available, the number of available updates will appear in a bubble on the left hand menu as a notification.') . '</p>' .
+       '<p>' . __('It is very important to keep your WordPress installation up to date for security reasons, so when you see a number appear, make sure you take the time to update, which is an easy process.') . '</p>'
+) );
+
+get_current_screen()->add_help_tab( array(
+'id'           => 'how-to-update',
+'title'                => __('How to Update'),
+'content'      =>
        '<p>' . __('Updating your WordPress installation is a simple one-click procedure; just click on the Update button when it says a new version is available.') . '</p>' .
        '<p>' . __('Updating your WordPress installation is a simple one-click procedure; just click on the Update button when it says a new version is available.') . '</p>' .
-       '<p>' . __('To update themes or plugins from this screen, use the checkboxes to make your selection and click on the appropriate Update button. Check the box at the top of the Themes or Plugins section to select all and update them all at once.') . '</p>' .
+       '<p>' . __('To update themes or plugins from this screen, use the checkboxes to make your selection and click on the appropriate Update button. Check the box at the top of the Themes or Plugins section to select all and update them all at once.') . '</p>'
+) );
+
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Dashboard_Updates_Screen" target="_blank">Documentation on Updating WordPress</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
        '<p><strong>' . __('For more information:') . '</strong></p>' .
        '<p>' . __('<a href="http://codex.wordpress.org/Dashboard_Updates_Screen" target="_blank">Documentation on Updating WordPress</a>') . '</p>' .
        '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
index e529064eed2ce5521b95cc9133674cf83624934c..71708d044b0a692ba0bbc69967afdf6ad0fc86e3 100644 (file)
@@ -134,11 +134,14 @@ if ( isset($_GET['action']) ) {
 
                $title = sprintf( __('Installing Plugin from uploaded file: %s'), basename( $file_upload->filename ) );
                $nonce = 'plugin-upload';
 
                $title = sprintf( __('Installing Plugin from uploaded file: %s'), basename( $file_upload->filename ) );
                $nonce = 'plugin-upload';
-               $url = add_query_arg(array('package' => $file_upload->filename ), 'update.php?action=upload-plugin');
+               $url = add_query_arg(array('package' => $file_upload->id), 'update.php?action=upload-plugin');
                $type = 'upload'; //Install plugin type, From Web or an Upload.
 
                $upgrader = new Plugin_Upgrader( new Plugin_Installer_Skin( compact('type', 'title', 'nonce', 'url') ) );
                $type = 'upload'; //Install plugin type, From Web or an Upload.
 
                $upgrader = new Plugin_Upgrader( new Plugin_Installer_Skin( compact('type', 'title', 'nonce', 'url') ) );
-               $upgrader->install( $file_upload->package );
+               $result = $upgrader->install( $file_upload->package );
+
+               if ( $result || is_wp_error($result) )
+                       $file_upload->cleanup();
 
                include(ABSPATH . 'wp-admin/admin-footer.php');
 
 
                include(ABSPATH . 'wp-admin/admin-footer.php');
 
@@ -236,11 +239,14 @@ if ( isset($_GET['action']) ) {
 
                $title = sprintf( __('Installing Theme from uploaded file: %s'), basename( $file_upload->filename ) );
                $nonce = 'theme-upload';
 
                $title = sprintf( __('Installing Theme from uploaded file: %s'), basename( $file_upload->filename ) );
                $nonce = 'theme-upload';
-               $url = add_query_arg(array('package' => $file_upload->filename), 'update.php?action=upload-theme');
+               $url = add_query_arg(array('package' => $file_upload->id), 'update.php?action=upload-theme');
                $type = 'upload'; //Install plugin type, From Web or an Upload.
 
                $upgrader = new Theme_Upgrader( new Theme_Installer_Skin( compact('type', 'title', 'nonce', 'url') ) );
                $type = 'upload'; //Install plugin type, From Web or an Upload.
 
                $upgrader = new Theme_Upgrader( new Theme_Installer_Skin( compact('type', 'title', 'nonce', 'url') ) );
-               $upgrader->install( $file_upload->package );
+               $result = $upgrader->install( $file_upload->package );
+
+               if ( $result || is_wp_error($result) )
+                       $file_upload->cleanup();
 
                include(ABSPATH . 'wp-admin/admin-footer.php');
 
 
                include(ABSPATH . 'wp-admin/admin-footer.php');
 
index 794b55b6405cb58ba56b0dbb544607759c710f7c..4a2a0f42589ddf58e609ce884974bce99c6ce2cf 100644 (file)
@@ -38,11 +38,14 @@ $step = (int) $step;
 $php_version    = phpversion();
 $mysql_version  = $wpdb->db_version();
 $php_compat     = version_compare( $php_version, $required_php_version, '>=' );
 $php_version    = phpversion();
 $mysql_version  = $wpdb->db_version();
 $php_compat     = version_compare( $php_version, $required_php_version, '>=' );
-$mysql_compat   = version_compare( $mysql_version, $required_mysql_version, '>=' ) || file_exists( WP_CONTENT_DIR . '/db.php' );
+if ( file_exists( WP_CONTENT_DIR . '/db.php' ) && empty( $wpdb->is_mysql ) )
+       $mysql_compat = true;
+else
+       $mysql_compat = version_compare( $mysql_version, $required_mysql_version, '>=' );
 
 @header( 'Content-Type: ' . get_option( 'html_type' ) . '; charset=' . get_option( 'blog_charset' ) );
 ?>
 
 @header( 'Content-Type: ' . get_option( 'html_type' ) . '; charset=' . get_option( 'blog_charset' ) );
 ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html>
 <html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>>
 <head>
        <meta http-equiv="Content-Type" content="<?php bloginfo( 'html_type' ); ?>; charset=<?php echo get_option( 'blog_charset' ); ?>" />
 <html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>>
 <head>
        <meta http-equiv="Content-Type" content="<?php bloginfo( 'html_type' ); ?>; charset=<?php echo get_option( 'blog_charset' ); ?>" />
index e121207010ded397f733882b28b26f9b0a76fbf5..63771a83aac25010a10547353e4d5d79077b5e69 100644 (file)
@@ -90,6 +90,8 @@ if ( $doaction ) {
                        }
                        break;
                case 'trash':
                        }
                        break;
                case 'trash':
+                       if ( !isset( $post_ids ) )
+                               break;
                        foreach ( (array) $post_ids as $post_id ) {
                                if ( !current_user_can( 'delete_post', $post_id ) )
                                        wp_die( __( 'You are not allowed to move this post to the trash.' ) );
                        foreach ( (array) $post_ids as $post_id ) {
                                if ( !current_user_can( 'delete_post', $post_id ) )
                                        wp_die( __( 'You are not allowed to move this post to the trash.' ) );
@@ -100,6 +102,8 @@ if ( $doaction ) {
                        $location = add_query_arg( array( 'trashed' => count( $post_ids ), 'ids' => join( ',', $post_ids ) ), $location );
                        break;
                case 'untrash':
                        $location = add_query_arg( array( 'trashed' => count( $post_ids ), 'ids' => join( ',', $post_ids ) ), $location );
                        break;
                case 'untrash':
+                       if ( !isset( $post_ids ) )
+                               break;
                        foreach ( (array) $post_ids as $post_id ) {
                                if ( !current_user_can( 'delete_post', $post_id ) )
                                        wp_die( __( 'You are not allowed to move this post out of the trash.' ) );
                        foreach ( (array) $post_ids as $post_id ) {
                                if ( !current_user_can( 'delete_post', $post_id ) )
                                        wp_die( __( 'You are not allowed to move this post out of the trash.' ) );
@@ -110,6 +114,8 @@ if ( $doaction ) {
                        $location = add_query_arg( 'untrashed', count( $post_ids ), $location );
                        break;
                case 'delete':
                        $location = add_query_arg( 'untrashed', count( $post_ids ), $location );
                        break;
                case 'delete':
+                       if ( !isset( $post_ids ) )
+                               break;
                        foreach ( (array) $post_ids as $post_id_del ) {
                                if ( !current_user_can( 'delete_post', $post_id_del ) )
                                        wp_die( __( 'You are not allowed to delete this post.' ) );
                        foreach ( (array) $post_ids as $post_id_del ) {
                                if ( !current_user_can( 'delete_post', $post_id_del ) )
                                        wp_die( __( 'You are not allowed to delete this post.' ) );
@@ -139,11 +145,27 @@ wp_enqueue_script( 'media' );
 
 add_screen_option( 'per_page', array('label' => _x( 'Media items', 'items per page (screen options)' )) );
 
 
 add_screen_option( 'per_page', array('label' => _x( 'Media items', 'items per page (screen options)' )) );
 
-add_contextual_help( $current_screen,
-       '<p>' . __( 'All the files you&#8217;ve uploaded are listed in the Media Library, with the most recent uploads listed first. You can use the <em>Screen Options</em> tab to customize the display of this screen.' ) . '</p>' .
-       '<p>' . __( 'You can narrow the list by file type/status using the text link filters at the top of the screen. You also can refine the list by date using the dropdown menu above the media table.' ) . '</p>' .
-       '<p>' . __( 'Hovering over a row reveals action links: <em>Edit</em>, <em>Delete Permanently</em>, and <em>View</em>. Clicking <em>Edit</em> or on the media file&#8217;s name displays a simple screen to edit that individual file&#8217;s metadata. Clicking <em>Delete Permanently</em> will delete the file from the media library (as well as from any posts to which it is currently attached). <em>View</em> will take you to the display page for that file.' ) . '</p>' .
-       '<p>' . __( 'If a media file has not been attached to any post, you will see that in the <em>Attached To</em> column, and can click on <em>Attach File</em> to launch a small popup that will allow you to search for a post and attach the file.' ) . '</p>' .
+get_current_screen()->add_help_tab( array(
+'id'           => 'overview',
+'title'                => __('Overview'),
+'content'      =>
+       '<p>' . __( 'All the files you&#8217;ve uploaded are listed in the Media Library, with the most recent uploads listed first. You can use the Screen Options tab to customize the display of this screen.' ) . '</p>' .
+       '<p>' . __( 'You can narrow the list by file type/status using the text link filters at the top of the screen. You also can refine the list by date using the dropdown menu above the media table.' ) . '</p>'
+) );
+get_current_screen()->add_help_tab( array(
+'id'           => 'actions-links',
+'title'                => __('Available Actions'),
+'content'      =>
+       '<p>' . __( 'Hovering over a row reveals action links: Edit, Delete Permanently, and View. Clicking Edit or on the media file&#8217;s name displays a simple screen to edit that individual file&#8217;s metadata. Clicking Delete Permanently will delete the file from the media library (as well as from any posts to which it is currently attached). View will take you to the display page for that file.' ) . '</p>'
+) );
+get_current_screen()->add_help_tab( array(
+'id'           => 'attaching-files',
+'title'                => __('Attaching Files'),
+'content'      =>
+       '<p>' . __( 'If a media file has not been attached to any post, you will see that in the Attached To column, and can click on Attach File to launch a small popup that will allow you to search for a post and attach the file.' ) . '</p>'
+) );
+
+get_current_screen()->set_help_sidebar(
        '<p><strong>' . __( 'For more information:' ) . '</strong></p>' .
        '<p>' . __( '<a href="http://codex.wordpress.org/Media_Library_Screen" target="_blank">Documentation on Media Library</a>' ) . '</p>' .
        '<p>' . __( '<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>' ) . '</p>'
        '<p><strong>' . __( 'For more information:' ) . '</strong></p>' .
        '<p>' . __( '<a href="http://codex.wordpress.org/Media_Library_Screen" target="_blank">Documentation on Media Library</a>' ) . '</p>' .
        '<p>' . __( '<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>' ) . '</p>'
@@ -155,36 +177,35 @@ require_once('./admin-header.php');
 <div class="wrap">
 <?php screen_icon(); ?>
 <h2><?php echo esc_html( $title ); ?> <a href="media-new.php" class="add-new-h2"><?php echo esc_html_x('Add New', 'file'); ?></a> <?php
 <div class="wrap">
 <?php screen_icon(); ?>
 <h2><?php echo esc_html( $title ); ?> <a href="media-new.php" class="add-new-h2"><?php echo esc_html_x('Add New', 'file'); ?></a> <?php
-if ( isset($_REQUEST['s']) && $_REQUEST['s'] )
+if ( ! empty( $_REQUEST['s'] ) )
        printf( '<span class="subtitle">' . __('Search results for &#8220;%s&#8221;') . '</span>', get_search_query() ); ?>
 </h2>
 
 <?php
 $message = '';
        printf( '<span class="subtitle">' . __('Search results for &#8220;%s&#8221;') . '</span>', get_search_query() ); ?>
 </h2>
 
 <?php
 $message = '';
-if ( isset($_GET['posted']) && (int) $_GET['posted'] ) {
+if ( ! empty( $_GET['posted'] ) ) {
        $message = __('Media attachment updated.');
        $_SERVER['REQUEST_URI'] = remove_query_arg(array('posted'), $_SERVER['REQUEST_URI']);
 }
 
        $message = __('Media attachment updated.');
        $_SERVER['REQUEST_URI'] = remove_query_arg(array('posted'), $_SERVER['REQUEST_URI']);
 }
 
-if ( isset($_GET['attached']) && (int) $_GET['attached'] ) {
-       $attached = (int) $_GET['attached'];
+if ( ! empty( $_GET['attached'] ) && $attached = absint( $_GET['attached'] ) ) {
        $message = sprintf( _n('Reattached %d attachment.', 'Reattached %d attachments.', $attached), $attached );
        $_SERVER['REQUEST_URI'] = remove_query_arg(array('attached'), $_SERVER['REQUEST_URI']);
 }
 
        $message = sprintf( _n('Reattached %d attachment.', 'Reattached %d attachments.', $attached), $attached );
        $_SERVER['REQUEST_URI'] = remove_query_arg(array('attached'), $_SERVER['REQUEST_URI']);
 }
 
-if ( isset($_GET['deleted']) && (int) $_GET['deleted'] ) {
-       $message = sprintf( _n( 'Media attachment permanently deleted.', '%d media attachments permanently deleted.', $_GET['deleted'] ), number_format_i18n( $_GET['deleted'] ) );
+if ( ! empty( $_GET['deleted'] ) && $deleted = absint( $_GET['deleted'] ) ) {
+       $message = sprintf( _n( 'Media attachment permanently deleted.', '%d media attachments permanently deleted.', $deleted ), number_format_i18n( $_GET['deleted'] ) );
        $_SERVER['REQUEST_URI'] = remove_query_arg(array('deleted'), $_SERVER['REQUEST_URI']);
 }
 
        $_SERVER['REQUEST_URI'] = remove_query_arg(array('deleted'), $_SERVER['REQUEST_URI']);
 }
 
-if ( isset($_GET['trashed']) && (int) $_GET['trashed'] ) {
-       $message = sprintf( _n( 'Media attachment moved to the trash.', '%d media attachments moved to the trash.', $_GET['trashed'] ), number_format_i18n( $_GET['trashed'] ) );
+if ( ! empty( $_GET['trashed'] ) && $trashed = absint( $_GET['trashed'] ) ) {
+       $message = sprintf( _n( 'Media attachment moved to the trash.', '%d media attachments moved to the trash.', $trashed ), number_format_i18n( $_GET['trashed'] ) );
        $message .= ' <a href="' . esc_url( wp_nonce_url( 'upload.php?doaction=undo&action=untrash&ids='.(isset($_GET['ids']) ? $_GET['ids'] : ''), "bulk-media" ) ) . '">' . __('Undo') . '</a>';
        $_SERVER['REQUEST_URI'] = remove_query_arg(array('trashed'), $_SERVER['REQUEST_URI']);
 }
 
        $message .= ' <a href="' . esc_url( wp_nonce_url( 'upload.php?doaction=undo&action=untrash&ids='.(isset($_GET['ids']) ? $_GET['ids'] : ''), "bulk-media" ) ) . '">' . __('Undo') . '</a>';
        $_SERVER['REQUEST_URI'] = remove_query_arg(array('trashed'), $_SERVER['REQUEST_URI']);
 }
 
-if ( isset($_GET['untrashed']) && (int) $_GET['untrashed'] ) {
-       $message = sprintf( _n( 'Media attachment restored from the trash.', '%d media attachments restored from the trash.', $_GET['untrashed'] ), number_format_i18n( $_GET['untrashed'] ) );
+if ( ! empty( $_GET['untrashed'] ) && $untrashed = absint( $_GET['untrashed'] ) ) {
+       $message = sprintf( _n( 'Media attachment restored from the trash.', '%d media attachments restored from the trash.', $untrashed ), number_format_i18n( $_GET['untrashed'] ) );
        $_SERVER['REQUEST_URI'] = remove_query_arg(array('untrashed'), $_SERVER['REQUEST_URI']);
 }
 
        $_SERVER['REQUEST_URI'] = remove_query_arg(array('untrashed'), $_SERVER['REQUEST_URI']);
 }
 
@@ -194,8 +215,8 @@ $messages[3] = __('Error saving media attachment.');
 $messages[4] = __('Media moved to the trash.') . ' <a href="' . esc_url( wp_nonce_url( 'upload.php?doaction=undo&action=untrash&ids='.(isset($_GET['ids']) ? $_GET['ids'] : ''), "bulk-media" ) ) . '">' . __('Undo') . '</a>';
 $messages[5] = __('Media restored from the trash.');
 
 $messages[4] = __('Media moved to the trash.') . ' <a href="' . esc_url( wp_nonce_url( 'upload.php?doaction=undo&action=untrash&ids='.(isset($_GET['ids']) ? $_GET['ids'] : ''), "bulk-media" ) ) . '">' . __('Undo') . '</a>';
 $messages[5] = __('Media restored from the trash.');
 
-if ( isset($_GET['message']) && (int) $_GET['message'] ) {
-       $message = $messages[$_GET['message']];
+if ( ! empty( $_GET['message'] ) && isset( $messages[ $_GET['message'] ] ) ) {
+       $message = $messages[ $_GET['message'] ];
        $_SERVER['REQUEST_URI'] = remove_query_arg(array('message'), $_SERVER['REQUEST_URI']);
 }
 
        $_SERVER['REQUEST_URI'] = remove_query_arg(array('message'), $_SERVER['REQUEST_URI']);
 }
 
index 6334ed8198d5e8a9bce332c5a8f3f3bade23956c..5f3d07e0ff90b2fa361f2c30ffc97d9c592ec8fa 100644 (file)
@@ -36,19 +36,25 @@ if ( current_user_can('edit_users') && !is_user_admin() )
 else
        $parent_file = 'profile.php';
 
 else
        $parent_file = 'profile.php';
 
-// contextual help - choose Help on the top right of admin panel to preview this.
-add_contextual_help($current_screen,
-    '<p>' . __('Your profile contains information about you (your &#8220;account&#8221;) as well as some personal options related to using WordPress.') . '</p>' .
-    '<p>' . __('You can change your password, turn on keyboard shortcuts, change the color scheme of your WordPress administration screens, and turn off the WYSIWYG (Visual) editor, among other things.') . '</p>' .
-    '<p>' . __('Your username cannot be changed, but you can use other fields to enter your real name or a nickname, and change which name to display on your posts.') . '</p>' .
-    '<p>' . __('Required fields are indicated; the rest are optional. Profile information will only be displayed if your theme is set up to do so.') . '</p>' .
-    '<p>' . __('Remember to click the Update Profile button when you are finished.') . '</p>' .
+
+$profile_help = '<p>' . __('Your profile contains information about you (your &#8220;account&#8221;) as well as some personal options related to using WordPress.') . '</p>' .
+       '<p>' . __('You can change your password, turn on keyboard shortcuts, change the color scheme of your WordPress administration screens, and turn off the WYSIWYG (Visual) editor, among other things. You can hide the Toolbar (formerly called the Admin Bar) from the front end of your site, however it cannot be disabled on the admin screens.') . '</p>' .
+       '<p>' . __('Your username cannot be changed, but you can use other fields to enter your real name or a nickname, and change which name to display on your posts.') . '</p>' .
+       '<p>' . __('Required fields are indicated; the rest are optional. Profile information will only be displayed if your theme is set up to do so.') . '</p>' .
+       '<p>' . __('Remember to click the Update Profile button when you are finished.') . '</p>';
+
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' => $profile_help,
+) );
+
+get_current_screen()->set_help_sidebar(
     '<p><strong>' . __('For more information:') . '</strong></p>' .
     '<p>' . __('<a href="http://codex.wordpress.org/Users_Your_Profile_Screen" target="_blank">Documentation on User Profiles</a>') . '</p>' .
     '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
 );
 
     '<p><strong>' . __('For more information:') . '</strong></p>' .
     '<p>' . __('<a href="http://codex.wordpress.org/Users_Your_Profile_Screen" target="_blank">Documentation on User Profiles</a>') . '</p>' .
     '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
 );
 
-
 $wp_http_referer = remove_query_arg(array('update', 'delete_count'), stripslashes($wp_http_referer));
 
 $user_can_edit = current_user_can( 'edit_posts' ) || current_user_can( 'edit_pages' );
 $wp_http_referer = remove_query_arg(array('update', 'delete_count'), stripslashes($wp_http_referer));
 
 $user_can_edit = current_user_can( 'edit_posts' ) || current_user_can( 'edit_pages' );
@@ -156,7 +162,11 @@ include (ABSPATH . 'wp-admin/admin-header.php');
 <?php } ?>
 <?php if ( isset($_GET['updated']) ) : ?>
 <div id="message" class="updated">
 <?php } ?>
 <?php if ( isset($_GET['updated']) ) : ?>
 <div id="message" class="updated">
+       <?php if ( IS_PROFILE_PAGE ) : ?>
+       <p><strong><?php _e('Profile updated.') ?></strong></p>
+       <?php else: ?>
        <p><strong><?php _e('User updated.') ?></strong></p>
        <p><strong><?php _e('User updated.') ?></strong></p>
+       <?php endif; ?>
        <?php if ( $wp_http_referer && !IS_PROFILE_PAGE ) : ?>
        <p><a href="<?php echo esc_url( $wp_http_referer ); ?>"><?php _e('&larr; Back to Users'); ?></a></p>
        <?php endif; ?>
        <?php if ( $wp_http_referer && !IS_PROFILE_PAGE ) : ?>
        <p><a href="<?php echo esc_url( $wp_http_referer ); ?>"><?php _e('&larr; Back to Users'); ?></a></p>
        <?php endif; ?>
@@ -213,14 +223,12 @@ if ( !( IS_PROFILE_PAGE && !$user_can_edit ) ) : ?>
 </tr>
 <?php endif; ?>
 <tr class="show-admin-bar">
 </tr>
 <?php endif; ?>
 <tr class="show-admin-bar">
-<th scope="row"><?php _e('Show Admin Bar')?></th>
-<td><fieldset><legend class="screen-reader-text"><span><?php _e('Show Admin Bar') ?></span></legend>
+<th scope="row"><?php _e('Toolbar')?></th>
+<td><fieldset><legend class="screen-reader-text"><span><?php _e('Toolbar') ?></span></legend>
 <label for="admin_bar_front">
 <label for="admin_bar_front">
-<input name="admin_bar_front" type="checkbox" id="admin_bar_front" value="1" <?php checked( _get_admin_bar_pref( 'front', $profileuser->ID ) ); ?> />
-<?php /* translators: Show admin bar when viewing site */ _e( 'when viewing site' ); ?></label><br />
-<label for="admin_bar_admin">
-<input name="admin_bar_admin" type="checkbox" id="admin_bar_admin" value="1" <?php checked( _get_admin_bar_pref( 'admin', $profileuser->ID ) ); ?> />
-<?php /* translators: Show admin bar in dashboard */ _e( 'in dashboard' ); ?></label></fieldset>
+<input name="admin_bar_front" type="checkbox" id="admin_bar_front" value="1"<?php checked( _get_admin_bar_pref( 'front', $profileuser->ID ) ); ?> />
+<?php _e( 'Show Toolbar when viewing site' ); ?></label><br />
+</fieldset>
 </td>
 </tr>
 <?php do_action('personal_options', $profileuser); ?>
 </td>
 </tr>
 <?php do_action('personal_options', $profileuser); ?>
@@ -256,7 +264,7 @@ if ( $user_role )
 else
        echo '<option value="" selected="selected">' . __('&mdash; No role for this site &mdash;') . '</option>';
 ?>
 else
        echo '<option value="" selected="selected">' . __('&mdash; No role for this site &mdash;') . '</option>';
 ?>
-</select>
+</select></td></tr>
 <?php endif; //!IS_PROFILE_PAGE
 
 if ( is_multisite() && is_network_admin() && ! IS_PROFILE_PAGE && current_user_can( 'manage_network_options' ) && !isset($super_admins) ) { ?>
 <?php endif; //!IS_PROFILE_PAGE
 
 if ( is_multisite() && is_network_admin() && ! IS_PROFILE_PAGE && current_user_can( 'manage_network_options' ) && !isset($super_admins) ) { ?>
index cef46a3b76cfa4e38433a7444517f668f8160ce1..43c37033e0ec42dba47c09a99efa2d9fd28a7da5 100644 (file)
@@ -21,7 +21,7 @@ if ( is_multisite() ) {
                /* translators: 1: Site name, 2: site URL, 3: role */
                return sprintf( __( 'Hi,
 You\'ve been invited to join \'%1$s\' at
                /* translators: 1: Site name, 2: site URL, 3: role */
                return sprintf( __( 'Hi,
 You\'ve been invited to join \'%1$s\' at
-%2$s as a %3$s.
+%2$s with the role of %3$s.
 If you do not want to join this site please ignore
 this email. This invitation will expire in a few days.
 
 If you do not want to join this site please ignore
 this email. This invitation will expire in a few days.
 
@@ -59,7 +59,7 @@ if ( isset($_REQUEST['action']) && 'adduser' == $_REQUEST['action'] ) {
                wp_die(__('Cheatin&#8217; uh?'));
 
        // Adding an existing user to this blog
                wp_die(__('Cheatin&#8217; uh?'));
 
        // Adding an existing user to this blog
-       $new_user_email = esc_html(trim($_REQUEST['email']));
+       $new_user_email = $user_details->user_email;
        $redirect = 'user-new.php';
        $username = $user_details->user_login;
        $user_id = $user_details->ID;
        $redirect = 'user-new.php';
        $username = $user_details->user_login;
        $user_id = $user_details->ID;
@@ -72,7 +72,14 @@ if ( isset($_REQUEST['action']) && 'adduser' == $_REQUEST['action'] ) {
                } else {
                        $newuser_key = substr( md5( $user_id ), 0, 5 );
                        add_option( 'new_user_' . $newuser_key, array( 'user_id' => $user_id, 'email' => $user_details->user_email, 'role' => $_REQUEST[ 'role' ] ) );
                } else {
                        $newuser_key = substr( md5( $user_id ), 0, 5 );
                        add_option( 'new_user_' . $newuser_key, array( 'user_id' => $user_id, 'email' => $user_details->user_email, 'role' => $_REQUEST[ 'role' ] ) );
-                       $message = __("Hi,\n\nYou have been invited to join '%s' at\n%s as a %s.\nPlease click the following link to confirm the invite:\n%s\n");
+                       /* translators: 1: Site name, 2: site URL, 3: role, 4: activation URL */
+                       $message = __( 'Hi,
+
+You\'ve been invited to join \'%1$s\' at
+%2$s with the role of %3$s.
+
+Please click the following link to confirm the invite:
+%4$s' );
                        wp_mail( $new_user_email, sprintf( __( '[%s] Joining confirmation' ), get_option( 'blogname' ) ),  sprintf($message, get_option('blogname'), site_url(), $_REQUEST[ 'role' ], site_url("/newbloguser/$newuser_key/")));
                        $redirect = add_query_arg( array('update' => 'add'), 'user-new.php' );
                }
                        wp_mail( $new_user_email, sprintf( __( '[%s] Joining confirmation' ), get_option( 'blogname' ) ),  sprintf($message, get_option('blogname'), site_url(), $_REQUEST[ 'role' ], site_url("/newbloguser/$newuser_key/")));
                        $redirect = add_query_arg( array('update' => 'add'), 'user-new.php' );
                }
@@ -125,7 +132,6 @@ if ( isset($_REQUEST['action']) && 'adduser' == $_REQUEST['action'] ) {
        }
 }
 
        }
 }
 
-
 $title = __('Add New User');
 $parent_file = 'users.php';
 
 $title = __('Add New User');
 $parent_file = 'users.php';
 
@@ -133,18 +139,38 @@ $do_both = false;
 if ( is_multisite() && current_user_can('promote_users') && current_user_can('create_users') )
        $do_both = true;
 
 if ( is_multisite() && current_user_can('promote_users') && current_user_can('create_users') )
        $do_both = true;
 
-add_contextual_help($current_screen,
-    '<p>' . __('To add a new user to your site, fill in the form on this screen. If you&#8217;re not sure which role to assign, you can use the link below to review the different roles and their capabilities. Here is a basic overview of roles:') . '</p>' .
-    '<ul>' .
-        '<li>' . __('Administrators have access to all the administration features.') . '</li>' .
-        '<li>' . __('Editors can publish posts, manage posts as well as manage other people&#8217;s posts, etc.')  . '</li>' .
-        '<li>' . __('Authors can publish and manage their own posts.') . '</li>' .
-        '<li>' . __('Contributors can write and manage their posts but not publish posts or upload media files.') . '</li>' .
-        '<li>' . __('Subscribers can read comments/comment/receive newsletters, etc.') . '</li>' .
-    '</ul>' .
-    '<p>' . __('You must assign a password to the new user, but don&#8217;t worry; when they log in for the first time they will be prompted to change it. The username, however, cannot be changed.') . '</p>' .
-    '<p>' . __('New users will receive an email letting them know they&#8217;ve been added as a user for your site. By default, this email will also contain their password. Uncheck the box if you don&#8217;t want the password to be included in the welcome email.') . '</p>' .
-    '<p>' . __('Remember to click the Add User button at the bottom of this screen when you are finished.') . '</p>' .
+$help = '<p>' . __('To add a new user to your site, fill in the form on this screen and click the Add New User button at the bottom.') . '</p>';
+
+if ( is_multisite() ) {
+       $help .= '<p>' . __('Because this is a multisite installation, you may add accounts that already exist on the Network by specifying a username or email, and defining a role. For more options, such as specifying a password, you have to be a Network Administrator and use the hover link under an existing user&#8217;s name to Edit the user profile under Network Admin > All Users.') . '</p>' .
+       '<p>' . __('New users will receive an email letting them know they&#8217;ve been added as a user for your site. This email will also contain their password. Check the box if you don&#8217;t want the user to recieve a welcome email.') . '</p>';
+} else {
+       $help .= '<p>' . __('You must assign a password to the new user, which they can change after logging in. The username, however, cannot be changed.') . '</p>' .
+       '<p>' . __('New users will receive an email letting them know they&#8217;ve been added as a user for your site. By default, this email will also contain their password. Uncheck the box if you don&#8217;t want the password to be included in the welcome email.') . '</p>';
+}
+
+$help .= '<p>' . __('Remember to click the Add New User button at the bottom of this screen when you are finished.') . '</p>';
+
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' => $help,
+) );
+
+get_current_screen()->add_help_tab( array(
+'id'      => 'user-roles',
+'title'   => __('User Roles'),
+'content' => '<p>' . __('Here is a basic overview of the different user roles and the permissions associated with each one:') . '</p>' .
+                               '<ul>' .
+                               '<li>' . __('Administrators have access to all the administration features.') . '</li>' .
+                               '<li>' . __('Editors can publish posts, manage posts as well as manage other people&#8217;s posts, etc.')  . '</li>' .
+                               '<li>' . __('Authors can publish and manage their own posts, and are able to upload files.') . '</li>' .
+                               '<li>' . __('Contributors can write and manage their posts but not publish posts or upload media files.') . '</li>' .
+                               '<li>' . __('Subscribers can read comments/comment/receive newsletters, etc. but cannot create regular site content.') . '</li>' .
+                               '</ul>'
+) );
+
+get_current_screen()->set_help_sidebar(
     '<p><strong>' . __('For more information:') . '</strong></p>' .
     '<p>' . __('<a href="http://codex.wordpress.org/Users_Add_New_Screen" target="_blank">Documentation on Adding New Users</a>') . '</p>' .
     '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
     '<p><strong>' . __('For more information:') . '</strong></p>' .
     '<p>' . __('<a href="http://codex.wordpress.org/Users_Add_New_Screen" target="_blank">Documentation on Adding New Users</a>') . '</p>' .
     '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
index fd43cd66a191459bc4d4c5f3a7a00c8eb457c735..5f9e4f6482b4f6689bf970b931dbd488d79f217d 100644 (file)
@@ -7,7 +7,7 @@
  * @since 3.1.0
  */
 
  * @since 3.1.0
  */
 
-$menu[0] = array(__('Dashboard'), 'exist', 'index.php', '', 'menu-top menu-top-first menu-icon-dashboard', 'menu-dashboard', 'div');
+$menu[2] = array(__('Dashboard'), 'exist', 'index.php', '', 'menu-top menu-top-first menu-icon-dashboard', 'menu-dashboard', 'div');
 
 $menu[4] = array( '', 'exist', 'separator1', '', 'wp-menu-separator' );
 
 
 $menu[4] = array( '', 'exist', 'separator1', '', 'wp-menu-separator' );
 
@@ -21,4 +21,4 @@ $submenu = array();
 
 require_once(ABSPATH . 'wp-admin/includes/menu.php');
 
 
 require_once(ABSPATH . 'wp-admin/includes/menu.php');
 
-?>
\ No newline at end of file
+?>
index 1bdeadefe84e03f9553ff4cb594441fb9e6c2b2d..f124b9ca912e684fd65fe0735982c364c77a86d0 100644 (file)
@@ -20,10 +20,43 @@ $parent_file = 'users.php';
 add_screen_option( 'per_page', array('label' => _x( 'Users', 'users per page (screen options)' )) );
 
 // contextual help - choose Help on the top right of admin panel to preview this.
 add_screen_option( 'per_page', array('label' => _x( 'Users', 'users per page (screen options)' )) );
 
 // contextual help - choose Help on the top right of admin panel to preview this.
-add_contextual_help($current_screen,
-    '<p>' . __('This screen lists all the existing users for your site. Each user has one of five defined roles as set by the site admin: Site Administrator, Editor, Author, Contributor, or Subscriber. Users with roles other than Administrator will see fewer options in the dashboard navigation when they are logged in, based on their role.') . '</p>' .
-    '<p>' . __('You can customize the display of information on this screen as you can on other screens, by using the Screen Options tab and the on-screen filters.') . '</p>' .
-    '<p>' . __('To add a new user for your site, click the Add New button at the top of the screen or Add New in the Users menu section.') . '</p>' .
+get_current_screen()->add_help_tab( array(
+       'id'      => 'overview',
+       'title'   => __('Overview'),
+       'content' => '<p>' . __('This screen lists all the existing users for your site. Each user has one of five defined roles as set by the site admin: Site Administrator, Editor, Author, Contributor, or Subscriber. Users with roles other than Administrator will see fewer options in the dashboard navigation when they are logged in, based on their role.') . '</p>' .
+                                '<p>' . __('To add a new user for your site, click the Add New button at the top of the screen or Add New in the Users menu section.') . '</p>'
+) ) ;
+
+get_current_screen()->add_help_tab( array(
+       'id'      => 'screen-display',
+       'title'   => __('Screen Display'),
+       'content' => '<p>' . __('You can customize the display of this screen in a number of ways:') . '</p>' .
+                                       '<ul>' .
+                                       '<li>' . __('You can hide/display columns based on your needs and decide how many users to list per screen using the Screen Options tab.') . '</li>' .
+                                       '<li>' . __('You can filter the list of users by User Role using the text links in the upper left to show All, Administrator, Editor, Author, Contributor, or Subscriber. The default view is to show all users.  Unused User Roles are not listed.') . '</li>' .
+                                       '<li>' . __('You can view all posts made by a user by clicking on the number under the Posts column.') . '</li>' .
+                                       '</ul>'
+) );
+
+$help = '<p>' . __('Hovering over a row in the users list will display action links that allow you to manage users. You can perform the following actions:') . '</p>' .
+       '<ul>' .
+       '<li>' . __('Edit takes you to the editable profile screen for that user. You can also reach that screen by clicking on the username.') . '</li>';
+
+if ( is_multisite() )
+       $help .= '<li>' . __( 'Remove allows you to remove a user from your site. It does not delete their posts. You can also remove multiple users at once by using Bulk Actions.' ) . '</li>';
+else
+       $help .= '<li>' . __( 'Delete brings you to the Delete Users screen for confirmation, where you can permanently remove a user from your site and delete their posts. You can also delete multiple users at once by using Bulk Actions.' ) . '</li>';
+
+$help .= '</ul>';
+
+get_current_screen()->add_help_tab( array(
+       'id'      => 'actions',
+       'title'   => __('Actions'),
+       'content' => $help,
+) );
+unset( $help );
+
+get_current_screen()->set_help_sidebar(
     '<p><strong>' . __('For more information:') . '</strong></p>' .
     '<p>' . __('<a href="http://codex.wordpress.org/Users_Screen" target="_blank">Documentation on Managing Users</a>') . '</p>' .
     '<p>' . __('<a href="http://codex.wordpress.org/Roles_and_Capabilities" target="_blank">Descriptions of Roles and Capabilities</a>') . '</p>' .
     '<p><strong>' . __('For more information:') . '</strong></p>' .
     '<p>' . __('<a href="http://codex.wordpress.org/Users_Screen" target="_blank">Documentation on Managing Users</a>') . '</p>' .
     '<p>' . __('<a href="http://codex.wordpress.org/Roles_and_Capabilities" target="_blank">Descriptions of Roles and Capabilities</a>') . '</p>' .
@@ -67,8 +100,8 @@ case 'promote':
 
                if ( ! current_user_can('promote_user', $id) )
                        wp_die(__('You can&#8217;t edit that user.'));
 
                if ( ! current_user_can('promote_user', $id) )
                        wp_die(__('You can&#8217;t edit that user.'));
-               // The new role of the current user must also have promote_users caps
-               if ( $id == $current_user->ID && !$wp_roles->role_objects[$_REQUEST['new_role']]->has_cap('promote_users') ) {
+               // The new role of the current user must also have the promote_users cap or be a super admin
+               if ( $id == $current_user->ID && ! is_super_admin() && ! $wp_roles->role_objects[ $_REQUEST['new_role'] ]->has_cap('promote_users') ) {
                        $update = 'err_admin_role';
                        continue;
                }
                        $update = 'err_admin_role';
                        continue;
                }
@@ -216,7 +249,7 @@ case 'doremove':
        $update = 'remove';
        foreach ( $userids as $id ) {
                $id = (int) $id;
        $update = 'remove';
        foreach ( $userids as $id ) {
                $id = (int) $id;
-               if ( $id == $current_user->id && !is_super_admin() ) {
+               if ( $id == $current_user->ID && !is_super_admin() ) {
                        $update = 'err_admin_remove';
                        continue;
                }
                        $update = 'err_admin_remove';
                        continue;
                }
@@ -269,7 +302,7 @@ case 'remove':
        foreach ( $userids as $id ) {
                $id = (int) $id;
                $user = new WP_User($id);
        foreach ( $userids as $id ) {
                $id = (int) $id;
                $user = new WP_User($id);
-               if ( $id == $current_user->id && !is_super_admin() ) {
+               if ( $id == $current_user->ID && !is_super_admin() ) {
                        echo "<li>" . sprintf(__('ID #%1s: %2s <strong>The current user will not be removed.</strong>'), $id, $user->user_login) . "</li>\n";
                } elseif ( !current_user_can('remove_user', $id) ) {
                        echo "<li>" . sprintf(__('ID #%1s: %2s <strong>You don\'t have permission to remove this user.</strong>'), $id, $user->user_login) . "</li>\n";
                        echo "<li>" . sprintf(__('ID #%1s: %2s <strong>The current user will not be removed.</strong>'), $id, $user->user_login) . "</li>\n";
                } elseif ( !current_user_can('remove_user', $id) ) {
                        echo "<li>" . sprintf(__('ID #%1s: %2s <strong>You don\'t have permission to remove this user.</strong>'), $id, $user->user_login) . "</li>\n";
index e5c2cf29f59e6b19af29ea6027aff35842748ae3..6c05e533033564b21af22938928634738830de69 100644 (file)
@@ -15,16 +15,18 @@ require_once(ABSPATH . 'wp-admin/includes/widgets.php');
 if ( ! current_user_can('edit_theme_options') )
        wp_die( __( 'Cheatin&#8217; uh?' ));
 
 if ( ! current_user_can('edit_theme_options') )
        wp_die( __( 'Cheatin&#8217; uh?' ));
 
-wp_admin_css( 'widgets' );
-
 $widgets_access = get_user_setting( 'widgets_access' );
 if ( isset($_GET['widgets-access']) ) {
        $widgets_access = 'on' == $_GET['widgets-access'] ? 'on' : 'off';
        set_user_setting( 'widgets_access', $widgets_access );
 }
 
 $widgets_access = get_user_setting( 'widgets_access' );
 if ( isset($_GET['widgets-access']) ) {
        $widgets_access = 'on' == $_GET['widgets-access'] ? 'on' : 'off';
        set_user_setting( 'widgets_access', $widgets_access );
 }
 
+function wp_widgets_access_body_class($classes) {
+       return "$classes widgets_access ";
+}
+
 if ( 'on' == $widgets_access )
 if ( 'on' == $widgets_access )
-       add_filter( 'admin_body_class', create_function('', '{return " widgets_access ";}') );
+       add_filter( 'admin_body_class', 'wp_widgets_access_body_class' );
 else
        wp_enqueue_script('admin-widgets');
 
 else
        wp_enqueue_script('admin-widgets');
 
@@ -33,106 +35,37 @@ do_action( 'sidebar_admin_setup' );
 $title = __( 'Widgets' );
 $parent_file = 'themes.php';
 
 $title = __( 'Widgets' );
 $parent_file = 'themes.php';
 
-$help = '
-       <p>' . __('Widgets are independent sections of content that can be placed into any widgetized area provided by your theme (commonly called sidebars). To populate your sidebars/widget areas with individual widgets, drag and drop the title bars into the desired area. By default, only the first widget area is expanded. To populate additional widget areas, click on their title bars to expand them.') . '</p>
-       <p>' . __('The Available Widgets section contains all the widgets you can choose from. Once you drag a widget into a sidebar, it will open to allow you to configure its settings. When you are happy with the widget settings, click the Save button and the widget will go live on your site. If you click Delete, it will remove the widget.') . '</p>
-       <p>' . __('If you want to remove the widget but save its setting for possible future use, just drag it into the Inactive Widgets area. You can add them back anytime from there. This is especially helpful when you switch to a theme with fewer or different widget areas.') . '</p>
+get_current_screen()->add_help_tab( array(
+'id'           => 'overview',
+'title'                => __('Overview'),
+'content'      =>
+       '<p>' . __('Widgets are independent sections of content that can be placed into any widgetized area provided by your theme (commonly called sidebars). To populate your sidebars/widget areas with individual widgets, drag and drop the title bars into the desired area. By default, only the first widget area is expanded. To populate additional widget areas, click on their title bars to expand them.') . '</p>
+       <p>' . __('The Available Widgets section contains all the widgets you can choose from. Once you drag a widget into a sidebar, it will open to allow you to configure its settings. When you are happy with the widget settings, click the Save button and the widget will go live on your site. If you click Delete, it will remove the widget.') . '</p>'
+) );
+get_current_screen()->add_help_tab( array(
+'id'           => 'removing-reusing',
+'title'                => __('Removing and Reusing'),
+'content'      =>
+       '<p>' . __('If you want to remove the widget but save its setting for possible future use, just drag it into the Inactive Widgets area. You can add them back anytime from there. This is especially helpful when you switch to a theme with fewer or different widget areas.') . '</p>
        <p>' . __('Widgets may be used multiple times. You can give each widget a title, to display on your site, but it&#8217;s not required.') . '</p>
        <p>' . __('Widgets may be used multiple times. You can give each widget a title, to display on your site, but it&#8217;s not required.') . '</p>
-       <p>' . __('Enabling Accessibility Mode, via Screen Options, allows you to use Add and Edit buttons instead of using drag and drop.') . '</p>
-       <p>' . __('Many themes show some sidebar widgets by default until you edit your sidebars, but they are not automatically displayed in your sidebar management tool. After you make your first widget change, you can re-add the default widgets by adding them from the Available Widgets area.') . '</p>
-';
-$help .= '<p><strong>' . __('For more information:') . '</strong></p>';
-$help .= '<p>' . __('<a href="http://codex.wordpress.org/Appearance_Widgets_Screen" target="_blank">Documentation on Widgets</a>') . '</p>';
-$help .= '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>';
-add_contextual_help($current_screen, $help);
-
-// register the inactive_widgets area as sidebar
-register_sidebar(array(
-       'name' => __('Inactive Widgets'),
-       'id' => 'wp_inactive_widgets',
-       'description' => '',
-       'before_widget' => '',
-       'after_widget' => '',
-       'before_title' => '',
-       'after_title' => '',
-));
-
-// These are the widgets grouped by sidebar
-$sidebars_widgets = wp_get_sidebars_widgets();
-if ( empty( $sidebars_widgets ) )
-       $sidebars_widgets = wp_get_widget_defaults();
-
-// look for "lost" widgets, this has to run at least on each theme change
-function retrieve_widgets() {
-       global $wp_registered_widget_updates, $wp_registered_sidebars, $sidebars_widgets, $wp_registered_widgets;
-
-       $_sidebars_widgets = array();
-       $sidebars = array_keys($wp_registered_sidebars);
-
-       unset( $sidebars_widgets['array_version'] );
-
-       $old = array_keys($sidebars_widgets);
-       sort($old);
-       sort($sidebars);
-
-       if ( $old == $sidebars )
-               return;
-
-       // Move the known-good ones first
-       foreach ( $sidebars as $id ) {
-               if ( array_key_exists( $id, $sidebars_widgets ) ) {
-                       $_sidebars_widgets[$id] = $sidebars_widgets[$id];
-                       unset($sidebars_widgets[$id], $sidebars[$id]);
-               }
-       }
-
-       // if new theme has less sidebars than the old theme
-       if ( !empty($sidebars_widgets) ) {
-               foreach ( $sidebars_widgets as $lost => $val ) {
-                       if ( is_array($val) )
-                               $_sidebars_widgets['wp_inactive_widgets'] = array_merge( (array) $_sidebars_widgets['wp_inactive_widgets'], $val );
-               }
-       }
-
-       // discard invalid, theme-specific widgets from sidebars
-       $shown_widgets = array();
-       foreach ( $_sidebars_widgets as $sidebar => $widgets ) {
-               if ( !is_array($widgets) )
-                       continue;
-
-               $_widgets = array();
-               foreach ( $widgets as $widget ) {
-                       if ( isset($wp_registered_widgets[$widget]) )
-                               $_widgets[] = $widget;
-               }
-               $_sidebars_widgets[$sidebar] = $_widgets;
-               $shown_widgets = array_merge($shown_widgets, $_widgets);
-       }
-
-       $sidebars_widgets = $_sidebars_widgets;
-       unset($_sidebars_widgets, $_widgets);
-
-       // find hidden/lost multi-widget instances
-       $lost_widgets = array();
-       foreach ( $wp_registered_widgets as $key => $val ) {
-               if ( in_array($key, $shown_widgets, true) )
-                       continue;
-
-               $number = preg_replace('/.+?-([0-9]+)$/', '$1', $key);
-
-               if ( 2 > (int) $number )
-                       continue;
-
-               $lost_widgets[] = $key;
-       }
-
-       $sidebars_widgets['wp_inactive_widgets'] = array_merge($lost_widgets, (array) $sidebars_widgets['wp_inactive_widgets']);
-       wp_set_sidebars_widgets($sidebars_widgets);
-}
-retrieve_widgets();
+       <p>' . __('Enabling Accessibility Mode, via Screen Options, allows you to use Add and Edit buttons instead of using drag and drop.') . '</p>'
+) );
+get_current_screen()->add_help_tab( array(
+'id'           => 'missing-widgets',
+'title'                => __('Missing Widgets'),
+'content'      =>
+       '<p>' . __('Many themes show some sidebar widgets by default until you edit your sidebars, but they are not automatically displayed in your sidebar management tool. After you make your first widget change, you can re-add the default widgets by adding them from the Available Widgets area.') . '</p>' .
+               '<p>' . __('When changing themes, there is often some variation in the number and setup of widget areas/sidebars and sometimes these conflicts make the transition a bit less smooth. If you changed themes and seem to be missing widgets, scroll down on this screen to the Inactive area, where all your widgets and their settings will have been saved.') . '</p>'
+) );
+
+get_current_screen()->set_help_sidebar(
+       '<p><strong>' . __('For more information:') . '</strong></p>' .
+       '<p>' . __('<a href="http://codex.wordpress.org/Appearance_Widgets_Screen" target="_blank">Documentation on Widgets</a>') . '</p>' .
+       '<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
+);
 
 
-if ( count($wp_registered_sidebars) == 1 ) {
-       // If only "wp_inactive_widgets" is defined the theme has no sidebars, die.
+if ( empty($wp_registered_sidebars) ) {
+       // the theme has no sidebars, die.
        require_once( './admin-header.php' );
 ?>
 
        require_once( './admin-header.php' );
 ?>
 
@@ -150,6 +83,48 @@ if ( count($wp_registered_sidebars) == 1 ) {
        exit;
 }
 
        exit;
 }
 
+// These are the widgets grouped by sidebar
+$sidebars_widgets = wp_get_sidebars_widgets();
+
+if ( empty( $sidebars_widgets ) )
+       $sidebars_widgets = wp_get_widget_defaults();
+
+foreach ( $sidebars_widgets as $sidebar_id => $widgets ) {
+       if ( 'wp_inactive_widgets' == $sidebar_id )
+               continue;
+
+       if ( !isset( $wp_registered_sidebars[ $sidebar_id ] ) ) {
+               if ( ! empty( $widgets ) ) { // register the inactive_widgets area as sidebar
+                       register_sidebar(array(
+                               'name' => __( 'Inactive Sidebar (not used)' ),
+                               'id' => $sidebar_id,
+                               'class' => 'inactive-sidebar orphan-sidebar',
+                               'description' => __( 'This sidebar is no longer available and does not show anywhere on your site. Remove each of the widgets below to fully remove this inactive sidebar.' ),
+                               'before_widget' => '',
+                               'after_widget' => '',
+                               'before_title' => '',
+                               'after_title' => '',
+                       ));
+               } else {
+                       unset( $sidebars_widgets[ $sidebar_id ] );
+               }
+       }
+}
+
+// register the inactive_widgets area as sidebar
+register_sidebar(array(
+       'name' => __('Inactive Widgets'),
+       'id' => 'wp_inactive_widgets',
+       'class' => 'inactive-sidebar',
+       'description' => __( 'Drag widgets here to remove them from the sidebar but keep their settings.' ),
+       'before_widget' => '',
+       'after_widget' => '',
+       'before_title' => '',
+       'after_title' => '',
+));
+
+retrieve_widgets();
+
 // We're saving a widget without js
 if ( isset($_POST['savewidget']) || isset($_POST['removewidget']) ) {
        $widget_id = $_POST['widget-id'];
 // We're saving a widget without js
 if ( isset($_POST['savewidget']) || isset($_POST['removewidget']) ) {
        $widget_id = $_POST['widget-id'];
@@ -279,7 +254,7 @@ if ( isset($_GET['editwidget']) && $_GET['editwidget'] ) {
 <?php
        foreach ( $wp_registered_sidebars as $sbname => $sbvalue ) {
                echo "\t\t<tr><td><label><input type='radio' name='sidebar' value='" . esc_attr($sbname) . "'" . checked( $sbname, $sidebar, false ) . " /> $sbvalue[name]</label></td><td>";
 <?php
        foreach ( $wp_registered_sidebars as $sbname => $sbvalue ) {
                echo "\t\t<tr><td><label><input type='radio' name='sidebar' value='" . esc_attr($sbname) . "'" . checked( $sbname, $sidebar, false ) . " /> $sbvalue[name]</label></td><td>";
-               if ( 'wp_inactive_widgets' == $sbname ) {
+               if ( 'wp_inactive_widgets' == $sbname || 'orphaned_widgets' == substr( $sbname, 0, 16 ) ) {
                        echo '&nbsp;';
                } else {
                        if ( !isset($sidebars_widgets[$sbname]) || !is_array($sidebars_widgets[$sbname]) ) {
                        echo '&nbsp;';
                } else {
                        if ( !isset($sidebars_widgets[$sbname]) || !is_array($sidebars_widgets[$sbname]) ) {
@@ -368,17 +343,32 @@ require_once( './admin-header.php' ); ?>
                <br class="clear" />
        </div>
 
                <br class="clear" />
        </div>
 
-       <div class="widgets-holder-wrap">
-               <div class="sidebar-name">
-               <div class="sidebar-name-arrow"><br /></div>
-               <h3><?php _e('Inactive Widgets'); ?>
-               <span><img src="<?php echo esc_url( admin_url( 'images/wpspin_light.gif' ) ); ?>" class="ajax-feedback" title="" alt="" /></span></h3></div>
-               <div class="widget-holder inactive">
-               <p class="description"><?php _e('Drag widgets here to remove them from the sidebar but keep their settings.'); ?></p>
-               <?php wp_list_widget_controls('wp_inactive_widgets'); ?>
-               <br class="clear" />
+<?php
+foreach ( $wp_registered_sidebars as $sidebar => $registered_sidebar ) {
+       if ( false !== strpos( $registered_sidebar['class'], 'inactive-sidebar' ) || 'orphaned_widgets' == substr( $sidebar, 0, 16 ) ) {
+               $wrap_class = 'widgets-holder-wrap';
+               if ( !empty( $registered_sidebar['class'] ) )
+                       $wrap_class .= ' ' . $registered_sidebar['class'];
+
+?>
+
+               <div class="<?php echo esc_attr( $wrap_class ); ?>">
+                       <div class="sidebar-name">
+                               <div class="sidebar-name-arrow"><br /></div>
+                               <h3><?php echo esc_html( $registered_sidebar['name'] ); ?>
+                                       <span><img src="<?php echo esc_url( admin_url( 'images/wpspin_light.gif' ) ); ?>" class="ajax-feedback" title="" alt="" /></span>
+                               </h3>
+                       </div>
+                       <div class="widget-holder inactive">
+                               <?php wp_list_widget_controls( $registered_sidebar['id'] ); ?>
+                               <br class="clear" />
+                       </div>
                </div>
                </div>
-       </div>
+<?php
+       }
+}
+?>
+
 </div>
 </div>
 
 </div>
 </div>
 
@@ -387,10 +377,17 @@ require_once( './admin-header.php' ); ?>
 <?php
 $i = 0;
 foreach ( $wp_registered_sidebars as $sidebar => $registered_sidebar ) {
 <?php
 $i = 0;
 foreach ( $wp_registered_sidebars as $sidebar => $registered_sidebar ) {
-       if ( 'wp_inactive_widgets' == $sidebar )
+       if ( false !== strpos( $registered_sidebar['class'], 'inactive-sidebar' ) || 'orphaned_widgets' == substr( $sidebar, 0, 16 ) )
                continue;
                continue;
-       $closed = $i ? ' closed' : ''; ?>
-       <div class="widgets-holder-wrap<?php echo $closed; ?>">
+
+       $wrap_class = 'widgets-holder-wrap';
+       if ( !empty( $registered_sidebar['class'] ) )
+               $wrap_class .= ' sidebar-' . $registered_sidebar['class'];
+
+       if ( $i )
+               $wrap_class .= ' closed'; ?>
+
+       <div class="<?php echo esc_attr( $wrap_class ); ?>">
        <div class="sidebar-name">
        <div class="sidebar-name-arrow"><br /></div>
        <h3><?php echo esc_html( $registered_sidebar['name'] ); ?>
        <div class="sidebar-name">
        <div class="sidebar-name-arrow"><br /></div>
        <h3><?php echo esc_html( $registered_sidebar['name'] ); ?>
index ec35b4120c2de2ba2964f5ed6e4f576713ea68aa..323f832a8ba1d48e00f83f606cdc126d99abc56e 100644 (file)
@@ -223,7 +223,8 @@ class AtomServer {
         */
        function __construct() {
 
         */
        function __construct() {
 
-               $this->script_name = array_pop( explode( '/', $_SERVER['SCRIPT_NAME'] ) );
+               $var_by_ref = explode( '/', $_SERVER['SCRIPT_NAME'] );
+               $this->script_name = array_pop( $var_by_ref );
                $this->app_base = site_url( $this->script_name . '/' );
 
                $this->selectors = array(
                $this->app_base = site_url( $this->script_name . '/' );
 
                $this->selectors = array(
diff --git a/wp-atom.php b/wp-atom.php
deleted file mode 100644 (file)
index a83ac7d..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-/**
- * Redirects to the Atom feed
- * This file is deprecated and only exists for backwards compatibility
- *
- * @package WordPress
- */
-
-require( './wp-load.php' );
-wp_redirect( get_bloginfo( 'atom_url' ), 301 );
-exit;
-?>
index 9c17a355b27a4b6167c33129d9d71d92008f7898..648388f4d1450e402ac0b6a7e070d2caf3f3c6d2 100644 (file)
@@ -75,13 +75,13 @@ $comment_type = '';
 
 if ( get_option('require_name_email') && !$user->ID ) {
        if ( 6 > strlen($comment_author_email) || '' == $comment_author )
 
 if ( get_option('require_name_email') && !$user->ID ) {
        if ( 6 > strlen($comment_author_email) || '' == $comment_author )
-               wp_die( __('Error: please fill the required fields (name, email).') );
+               wp_die( __('<strong>ERROR</strong>: please fill the required fields (name, email).') );
        elseif ( !is_email($comment_author_email))
        elseif ( !is_email($comment_author_email))
-               wp_die( __('Error: please enter a valid email address.') );
+               wp_die( __('<strong>ERROR</strong>: please enter a valid email address.') );
 }
 
 if ( '' == $comment_content )
 }
 
 if ( '' == $comment_content )
-       wp_die( __('Error: please type a comment.') );
+       wp_die( __('<strong>ERROR</strong>: please type a comment.') );
 
 $comment_parent = isset($_POST['comment_parent']) ? absint($_POST['comment_parent']) : 0;
 
 
 $comment_parent = isset($_POST['comment_parent']) ? absint($_POST['comment_parent']) : 0;
 
diff --git a/wp-commentsrss2.php b/wp-commentsrss2.php
deleted file mode 100644 (file)
index 280766e..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-/**
- * Redirects to the Comments RSS2 feed
- * This file is deprecated and only exists for backwards compatibility
- *
- * @package WordPress
- */
-
-require( './wp-load.php' );
-wp_redirect( get_bloginfo( 'comments_rss2_url' ), 301 );
-exit;
-?>
index 22873b67ed3d009aa62c30c852f3d6ee0abb9e99..13390e22954c58a6b1dcf72733e80e1e7480057f 100644 (file)
@@ -24,9 +24,9 @@ get_header(); ?>
                                                <?php if ( is_day() ) : ?>
                                                        <?php printf( __( 'Daily Archives: %s', 'twentyeleven' ), '<span>' . get_the_date() . '</span>' ); ?>
                                                <?php elseif ( is_month() ) : ?>
                                                <?php if ( is_day() ) : ?>
                                                        <?php printf( __( 'Daily Archives: %s', 'twentyeleven' ), '<span>' . get_the_date() . '</span>' ); ?>
                                                <?php elseif ( is_month() ) : ?>
-                                                       <?php printf( __( 'Monthly Archives: %s', 'twentyeleven' ), '<span>' . get_the_date( 'F Y' ) . '</span>' ); ?>
+                                                       <?php printf( __( 'Monthly Archives: %s', 'twentyeleven' ), '<span>' . get_the_date( _x( 'F Y', 'monthly archives date format', 'twentyeleven' ) ) . '</span>' ); ?>
                                                <?php elseif ( is_year() ) : ?>
                                                <?php elseif ( is_year() ) : ?>
-                                                       <?php printf( __( 'Yearly Archives: %s', 'twentyeleven' ), '<span>' . get_the_date( 'Y' ) . '</span>' ); ?>
+                                                       <?php printf( __( 'Yearly Archives: %s', 'twentyeleven' ), '<span>' . get_the_date( _x( 'Y', 'yearly archives date format', 'twentyeleven' ) ) . '</span>' ); ?>
                                                <?php else : ?>
                                                        <?php _e( 'Blog Archives', 'twentyeleven' ); ?>
                                                <?php endif; ?>
                                                <?php else : ?>
                                                        <?php _e( 'Blog Archives', 'twentyeleven' ); ?>
                                                <?php endif; ?>
index c2b35e81cd8c8e62a6a593f9327df354f7b5f34f..b9dacce23817c23fb870c9add406021daa9ecb1a 100644 (file)
@@ -458,6 +458,11 @@ section.recent-posts .other-recent-posts .comments-link a:hover {
 .comment-meta {
        color: #999;
 }
 .comment-meta {
        color: #999;
 }
+.commentlist .avatar {
+       -webkit-box-shadow: 0 1px 2px #222;
+       -moz-box-shadow: 0 1px 2px #222;
+       box-shadow: 0 1px 2px #222;
+}
 a.comment-reply-link {
        background: #242424;
        color: #bbb;
 a.comment-reply-link {
        background: #242424;
        color: #bbb;
index 302a51e11947677c413c0d52fba51be06deeb0d5..1b3e8c933896748601e83fde4b55dafdf2dd7c82 100644 (file)
@@ -84,7 +84,7 @@
                <?php if ( $show_sep ) : ?>
                <span class="sep"> | </span>
                <?php endif; // End if $show_sep ?>
                <?php if ( $show_sep ) : ?>
                <span class="sep"> | </span>
                <?php endif; // End if $show_sep ?>
-               <span class="comments-link"><?php comments_popup_link( '<span class="leave-reply">' . __( 'Leave a Reply', 'twentyeleven' ) . '</span>', __( '<b>1</b> Reply', 'twentyeleven' ), __( '<b>%</b> Replies', 'twentyeleven' ) ); ?></span>
+               <span class="comments-link"><?php comments_popup_link( '<span class="leave-reply">' . __( 'Leave a reply', 'twentyeleven' ) . '</span>', __( '<b>1</b> Reply', 'twentyeleven' ), __( '<b>%</b> Replies', 'twentyeleven' ) ); ?></span>
                <?php endif; // End if comments_open() ?>
 
                <?php edit_post_link( __( 'Edit', 'twentyeleven' ), '<span class="edit-link">', '</span>' ); ?>
                <?php endif; // End if comments_open() ?>
 
                <?php edit_post_link( __( 'Edit', 'twentyeleven' ), '<span class="edit-link">', '</span>' ); ?>
index 58aaf129d7c84f9b159ba1b6ab1d470c4c38abb2..c26eb637dc88ca64b19677aacf8ee90a7f9dc42a 100644 (file)
@@ -36,7 +36,7 @@
                                                get_the_date( 'c' ),
                                                get_the_date(),
                                                esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ),
                                                get_the_date( 'c' ),
                                                get_the_date(),
                                                esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ),
-                                               sprintf( esc_attr__( 'View all posts by %s', 'twentyeleven' ), get_the_author() ),
+                                               esc_attr( sprintf( __( 'View all posts by %s', 'twentyeleven' ), get_the_author() ) ),
                                                get_the_author()
                                        );
                                ?>
                                                get_the_author()
                                        );
                                ?>
@@ -61,7 +61,7 @@
                                <?php endif; // End if $tags_list ?>
 
                                <?php if ( comments_open() ) : ?>
                                <?php endif; // End if $tags_list ?>
 
                                <?php if ( comments_open() ) : ?>
-                               <span class="comments-link"><?php comments_popup_link( '<span class="leave-reply">' . __( 'Reply', 'twentyeleven' ) . '</span>', __( '<strong>1</strong> Reply', 'twentyeleven' ), __( '<strong>%</strong> Replies', 'twentyeleven' ) ); ?></span>
+                               <span class="comments-link"><?php comments_popup_link( '<span class="leave-reply">' . __( 'Leave a reply', 'twentyeleven' ) . '</span>', __( '<b>1</b> Reply', 'twentyeleven' ), __( '<b>%</b> Replies', 'twentyeleven' ) ); ?></span>
                                <?php endif; // End if comments_open() ?>
                        </div><!-- .entry-meta -->
 
                                <?php endif; // End if comments_open() ?>
                        </div><!-- .entry-meta -->
 
index c246b74a17326a8d27de526924196f0a0d9836ce..4cd26adc41a81552da3699d5b9746b19c396d135 100644 (file)
                ?>
                <?php edit_post_link( __( 'Edit', 'twentyeleven' ), '<span class="edit-link">', '</span>' ); ?>
 
                ?>
                <?php edit_post_link( __( 'Edit', 'twentyeleven' ), '<span class="edit-link">', '</span>' ); ?>
 
-               <?php if ( get_the_author_meta( 'description' ) && is_multi_author() ) : // If a user has filled out their description and this is a multi-author blog, show a bio on their entries ?>
+               <?php if ( get_the_author_meta( 'description' ) && ( ! function_exists( 'is_multi_author' ) || is_multi_author() ) ) : // If a user has filled out their description and this is a multi-author blog, show a bio on their entries ?>
                <div id="author-info">
                        <div id="author-avatar">
                                <?php echo get_avatar( get_the_author_meta( 'user_email' ), apply_filters( 'twentyeleven_author_bio_avatar_size', 68 ) ); ?>
                        </div><!-- #author-avatar -->
                        <div id="author-description">
                <div id="author-info">
                        <div id="author-avatar">
                                <?php echo get_avatar( get_the_author_meta( 'user_email' ), apply_filters( 'twentyeleven_author_bio_avatar_size', 68 ) ); ?>
                        </div><!-- #author-avatar -->
                        <div id="author-description">
-                               <h2><?php printf( esc_attr__( 'About %s', 'twentyeleven' ), get_the_author() ); ?></h2>
+                               <h2><?php printf( __( 'About %s', 'twentyeleven' ), get_the_author() ); ?></h2>
                                <?php the_author_meta( 'description' ); ?>
                                <div id="author-link">
                                        <a href="<?php echo esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ); ?>" rel="author">
                                <?php the_author_meta( 'description' ); ?>
                                <div id="author-link">
                                        <a href="<?php echo esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ); ?>" rel="author">
index 5783776931e12a6f064ce573f239950792c7c72c..2146645adde749e93fb2e6298a99b477f1c35d4b 100644 (file)
@@ -8,7 +8,7 @@ html .mceContentBody {
        direction: rtl;
        unicode-bidi: embed;
        float: right;
        direction: rtl;
        unicode-bidi: embed;
        float: right;
-       max-width: 584px;
+       width: 584px;
 }
 * {
        font-family: Arial, Tahoma, sans-serif;
 }
 * {
        font-family: Arial, Tahoma, sans-serif;
index 9fa6225ddd8b0e3d280780e83f0f105efcdf0314..da9a70a89bfaa8c45b2627034d8cf9f210a40ebf 100644 (file)
@@ -18,7 +18,8 @@
                                /* A sidebar in the footer? Yep. You can can customize
                                 * your footer with three columns of widgets.
                                 */
                                /* A sidebar in the footer? Yep. You can can customize
                                 * your footer with three columns of widgets.
                                 */
-                               get_sidebar( 'footer' );
+                               if ( ! is_404() )
+                                       get_sidebar( 'footer' );
                        ?>
 
                        <div id="site-generator">
                        ?>
 
                        <div id="site-generator">
index 1997eb2bd73a179d4b8446c627e756bd48ec22ed..9858126b6aa06daa7dcaaca04e82e97c278d489e 100644 (file)
@@ -78,10 +78,10 @@ function twentyeleven_setup() {
         * If you're building a theme based on Twenty Eleven, use a find and replace
         * to change 'twentyeleven' to the name of your theme in all the template files.
         */
         * If you're building a theme based on Twenty Eleven, use a find and replace
         * to change 'twentyeleven' to the name of your theme in all the template files.
         */
-       load_theme_textdomain( 'twentyeleven', TEMPLATEPATH . '/languages' );
+       load_theme_textdomain( 'twentyeleven', get_template_directory() . '/languages' );
 
        $locale = get_locale();
 
        $locale = get_locale();
-       $locale_file = TEMPLATEPATH . "/languages/$locale.php";
+       $locale_file = get_template_directory() . "/languages/$locale.php";
        if ( is_readable( $locale_file ) )
                require_once( $locale_file );
 
        if ( is_readable( $locale_file ) )
                require_once( $locale_file );
 
@@ -89,10 +89,10 @@ function twentyeleven_setup() {
        add_editor_style();
 
        // Load up our theme options page and related code.
        add_editor_style();
 
        // Load up our theme options page and related code.
-       require( dirname( __FILE__ ) . '/inc/theme-options.php' );
+       require( get_template_directory() . '/inc/theme-options.php' );
 
        // Grab Twenty Eleven's Ephemera widget.
 
        // Grab Twenty Eleven's Ephemera widget.
-       require( dirname( __FILE__ ) . '/inc/widgets.php' );
+       require( get_template_directory() . '/inc/widgets.php' );
 
        // Add default posts and comments RSS feed links to <head>.
        add_theme_support( 'automatic-feed-links' );
 
        // Add default posts and comments RSS feed links to <head>.
        add_theme_support( 'automatic-feed-links' );
@@ -421,6 +421,7 @@ function twentyeleven_widgets_init() {
 }
 add_action( 'widgets_init', 'twentyeleven_widgets_init' );
 
 }
 add_action( 'widgets_init', 'twentyeleven_widgets_init' );
 
+if ( ! function_exists( 'twentyeleven_content_nav' ) ) :
 /**
  * Display navigation to next/previous pages when applicable
  */
 /**
  * Display navigation to next/previous pages when applicable
  */
@@ -435,6 +436,7 @@ function twentyeleven_content_nav( $nav_id ) {
                </nav><!-- #nav-above -->
        <?php endif;
 }
                </nav><!-- #nav-above -->
        <?php endif;
 }
+endif; // twentyeleven_content_nav
 
 /**
  * Return the URL for the first link found in the post content.
 
 /**
  * Return the URL for the first link found in the post content.
@@ -565,8 +567,8 @@ function twentyeleven_posted_on() {
                esc_attr( get_the_date( 'c' ) ),
                esc_html( get_the_date() ),
                esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ),
                esc_attr( get_the_date( 'c' ) ),
                esc_html( get_the_date() ),
                esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ),
-               sprintf( esc_attr__( 'View all posts by %s', 'twentyeleven' ), get_the_author() ),
-               esc_html( get_the_author() )
+               esc_attr( sprintf( __( 'View all posts by %s', 'twentyeleven' ), get_the_author() ) ),
+               get_the_author()
        );
 }
 endif;
        );
 }
 endif;
@@ -580,9 +582,8 @@ endif;
  */
 function twentyeleven_body_classes( $classes ) {
 
  */
 function twentyeleven_body_classes( $classes ) {
 
-       if ( ! is_multi_author() ) {
+       if ( function_exists( 'is_multi_author' ) && ! is_multi_author() )
                $classes[] = 'single-author';
                $classes[] = 'single-author';
-       }
 
        if ( is_singular() && ! is_home() && ! is_page_template( 'showcase.php' ) && ! is_page_template( 'sidebar-page.php' ) )
                $classes[] = 'singular';
 
        if ( is_singular() && ! is_home() && ! is_page_template( 'showcase.php' ) && ! is_page_template( 'sidebar-page.php' ) )
                $classes[] = 'singular';
index c6c8544b12a85ea9db8b34f2e5989001cbe09594..3db208ef36650dc02e30b99ee4cd64d1e91abfbd 100644 (file)
@@ -12,40 +12,41 @@ get_header(); ?>
                <div id="primary" class="image-attachment">
                        <div id="content" role="main">
 
                <div id="primary" class="image-attachment">
                        <div id="content" role="main">
 
-                       <?php the_post(); ?>
-
-                       <nav id="nav-single">
-                               <h3 class="assistive-text"><?php _e( 'Image navigation', 'twentyeleven' ); ?></h3>
-                               <span class="nav-previous"><?php previous_image_link( false, __( '&larr; Previous' , 'twentyeleven' ) ); ?></span>
-                               <span class="nav-next"><?php next_image_link( false, __( 'Next &rarr;' , 'twentyeleven' ) ); ?></span>
-                       </nav><!-- #nav-single -->
-
-                               <article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
-                                       <header class="entry-header">
-                                               <h1 class="entry-title"><?php the_title(); ?></h1>
-
-                                               <div class="entry-meta">
-                                                       <?php
-                                                               $metadata = wp_get_attachment_metadata();
-                                                               printf( __( '<span class="meta-prep meta-prep-entry-date">Published </span> <span class="entry-date"><abbr class="published" title="%1$s">%2$s</abbr></span> at <a href="%3$s" title="Link to full-size image">%4$s &times; %5$s</a> in <a href="%6$s" title="Return to %7$s" rel="gallery">%7$s</a>', 'twentyeleven' ),
-                                                                       esc_attr( get_the_time() ),
-                                                                       get_the_date(),
-                                                                       esc_url( wp_get_attachment_url() ),
-                                                                       $metadata['width'],
-                                                                       $metadata['height'],
-                                                                       esc_url( get_permalink( $post->post_parent ) ),
-                                                                       get_the_title( $post->post_parent )
-                                                               );
-                                                       ?>
-                                                       <?php edit_post_link( __( 'Edit', 'twentyeleven' ), '<span class="edit-link">', '</span>' ); ?>
-                                               </div><!-- .entry-meta -->
-
-                                       </header><!-- .entry-header -->
-
-                                       <div class="entry-content">
-
-                                               <div class="entry-attachment">
-                                                       <div class="attachment">
+                       <?php while ( have_posts() ) : the_post(); ?>
+
+                               <nav id="nav-single">
+                                       <h3 class="assistive-text"><?php _e( 'Image navigation', 'twentyeleven' ); ?></h3>
+                                       <span class="nav-previous"><?php previous_image_link( false, __( '&larr; Previous' , 'twentyeleven' ) ); ?></span>
+                                       <span class="nav-next"><?php next_image_link( false, __( 'Next &rarr;' , 'twentyeleven' ) ); ?></span>
+                               </nav><!-- #nav-single -->
+
+                                       <article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
+                                               <header class="entry-header">
+                                                       <h1 class="entry-title"><?php the_title(); ?></h1>
+
+                                                       <div class="entry-meta">
+                                                               <?php
+                                                                       $metadata = wp_get_attachment_metadata();
+                                                                       printf( __( '<span class="meta-prep meta-prep-entry-date">Published </span> <span class="entry-date"><abbr class="published" title="%1$s">%2$s</abbr></span> at <a href="%3$s" title="Link to full-size image">%4$s &times; %5$s</a> in <a href="%6$s" title="Return to %7$s" rel="gallery">%8$s</a>', 'twentyeleven' ),
+                                                                               esc_attr( get_the_time() ),
+                                                                               get_the_date(),
+                                                                               esc_url( wp_get_attachment_url() ),
+                                                                               $metadata['width'],
+                                                                               $metadata['height'],
+                                                                               esc_url( get_permalink( $post->post_parent ) ),
+                                                                               esc_attr( strip_tags( get_the_title( $post->post_parent ) ) ),
+                                                                               get_the_title( $post->post_parent )
+                                                                       );
+                                                               ?>
+                                                               <?php edit_post_link( __( 'Edit', 'twentyeleven' ), '<span class="edit-link">', '</span>' ); ?>
+                                                       </div><!-- .entry-meta -->
+
+                                               </header><!-- .entry-header -->
+
+                                               <div class="entry-content">
+
+                                                       <div class="entry-attachment">
+                                                               <div class="attachment">
 <?php
        /**
         * Grab the IDs of all the image attachments in a gallery so we can get the URL of the next adjacent image in a gallery,
 <?php
        /**
         * Grab the IDs of all the image attachments in a gallery so we can get the URL of the next adjacent image in a gallery,
@@ -70,30 +71,32 @@ get_header(); ?>
                $next_attachment_url = wp_get_attachment_url();
        }
 ?>
                $next_attachment_url = wp_get_attachment_url();
        }
 ?>
-                                                               <a href="<?php echo esc_url( $next_attachment_url ); ?>" title="<?php echo esc_attr( get_the_title() ); ?>" rel="attachment"><?php
-                                                               $attachment_size = apply_filters( 'twentyeleven_attachment_size', 848 );
-                                                               echo wp_get_attachment_image( $post->ID, array( $attachment_size, 1024 ) ); // filterable image width with 1024px limit for image height.
-                                                               ?></a>
+                                                                       <a href="<?php echo esc_url( $next_attachment_url ); ?>" title="<?php the_title_attribute(); ?>" rel="attachment"><?php
+                                                                       $attachment_size = apply_filters( 'twentyeleven_attachment_size', 848 );
+                                                                       echo wp_get_attachment_image( $post->ID, array( $attachment_size, 1024 ) ); // filterable image width with 1024px limit for image height.
+                                                                       ?></a>
 
 
-                                                               <?php if ( ! empty( $post->post_excerpt ) ) : ?>
-                                                               <div class="entry-caption">
-                                                                       <?php the_excerpt(); ?>
-                                                               </div>
-                                                               <?php endif; ?>
-                                                       </div><!-- .attachment -->
+                                                                       <?php if ( ! empty( $post->post_excerpt ) ) : ?>
+                                                                       <div class="entry-caption">
+                                                                               <?php the_excerpt(); ?>
+                                                                       </div>
+                                                                       <?php endif; ?>
+                                                               </div><!-- .attachment -->
 
 
-                                               </div><!-- .entry-attachment -->
+                                                       </div><!-- .entry-attachment -->
 
 
-                                               <div class="entry-description">
-                                                       <?php the_content(); ?>
-                                                       <?php wp_link_pages( array( 'before' => '<div class="page-link"><span>' . __( 'Pages:', 'twentyeleven' ) . '</span>', 'after' => '</div>' ) ); ?>
-                                               </div><!-- .entry-description -->
+                                                       <div class="entry-description">
+                                                               <?php the_content(); ?>
+                                                               <?php wp_link_pages( array( 'before' => '<div class="page-link"><span>' . __( 'Pages:', 'twentyeleven' ) . '</span>', 'after' => '</div>' ) ); ?>
+                                                       </div><!-- .entry-description -->
 
 
-                                       </div><!-- .entry-content -->
+                                               </div><!-- .entry-content -->
 
 
-                               </article><!-- #post-<?php the_ID(); ?> -->
+                                       </article><!-- #post-<?php the_ID(); ?> -->
 
 
-                               <?php comments_template(); ?>
+                                       <?php comments_template(); ?>
+
+                               <?php endwhile; // end of the loop. ?>
 
                        </div><!-- #content -->
                </div><!-- #primary -->
 
                        </div><!-- #content -->
                </div><!-- #primary -->
index 34e29f7a07380f3565527f461a9be8aa15f9f692..f1d6c4b3d8c3f3a9206fdfdda397c2574bcff86a 100644 (file)
@@ -42,10 +42,30 @@ function twentyeleven_theme_options_init() {
                add_option( 'twentyeleven_theme_options', twentyeleven_get_default_theme_options() );
 
        register_setting(
                add_option( 'twentyeleven_theme_options', twentyeleven_get_default_theme_options() );
 
        register_setting(
-               'twentyeleven_options',       // Options group, see settings_fields() call in theme_options_render_page()
+               'twentyeleven_options',       // Options group, see settings_fields() call in twentyeleven_theme_options_render_page()
                'twentyeleven_theme_options', // Database option, see twentyeleven_get_theme_options()
                'twentyeleven_theme_options_validate' // The sanitization callback, see twentyeleven_theme_options_validate()
        );
                'twentyeleven_theme_options', // Database option, see twentyeleven_get_theme_options()
                'twentyeleven_theme_options_validate' // The sanitization callback, see twentyeleven_theme_options_validate()
        );
+
+       // Register our settings field group
+       add_settings_section(
+               'general', // Unique identifier for the settings section
+               '', // Section title (we don't want one)
+               '__return_false', // Section callback (we don't want anything)
+               'theme_options' // Menu slug, used to uniquely identify the page; see twentyeleven_theme_options_add_page()
+       );
+
+       // Register our individual settings fields
+       add_settings_field(
+               'color_scheme',  // Unique identifier for the field for this section
+               __( 'Color Scheme', 'twentyeleven' ), // Setting field label
+               'twentyeleven_settings_field_color_scheme', // Function that renders the settings field
+               'theme_options', // Menu slug, used to uniquely identify the page; see twentyeleven_theme_options_add_page()
+               'general' // Settings section. Same as the first argument in the add_settings_section() above
+       );
+
+       add_settings_field( 'link_color', __( 'Link Color',     'twentyeleven' ), 'twentyeleven_settings_field_link_color', 'theme_options', 'general' );
+       add_settings_field( 'layout',     __( 'Default Layout', 'twentyeleven' ), 'twentyeleven_settings_field_layout',     'theme_options', 'general' );
 }
 add_action( 'admin_init', 'twentyeleven_theme_options_init' );
 
 }
 add_action( 'admin_init', 'twentyeleven_theme_options_init' );
 
@@ -87,20 +107,41 @@ function twentyeleven_theme_options_add_page() {
        if ( ! $theme_page )
                return;
 
        if ( ! $theme_page )
                return;
 
+       add_action( "load-$theme_page", 'twentyeleven_theme_options_help' );
+}
+add_action( 'admin_menu', 'twentyeleven_theme_options_add_page' );
+
+function twentyeleven_theme_options_help() {
+
        $help = '<p>' . __( 'Some themes provide customization options that are grouped together on a Theme Options screen. If you change themes, options may change or disappear, as they are theme-specific. Your current theme, Twenty Eleven, provides the following Theme Options:', 'twentyeleven' ) . '</p>' .
                        '<ol>' .
                                '<li>' . __( '<strong>Color Scheme</strong>: You can choose a color palette of "Light" (light background with dark text) or "Dark" (dark background with light text) for your site.', 'twentyeleven' ) . '</li>' .
                                '<li>' . __( '<strong>Link Color</strong>: You can choose the color used for text links on your site. You can enter the HTML color or hex code, or you can choose visually by clicking the "Select a Color" button to pick from a color wheel.', 'twentyeleven' ) . '</li>' .
                                '<li>' . __( '<strong>Default Layout</strong>: You can choose if you want your site&#8217;s default layout to have a sidebar on the left, the right, or not at all.', 'twentyeleven' ) . '</li>' .
                        '</ol>' .
        $help = '<p>' . __( 'Some themes provide customization options that are grouped together on a Theme Options screen. If you change themes, options may change or disappear, as they are theme-specific. Your current theme, Twenty Eleven, provides the following Theme Options:', 'twentyeleven' ) . '</p>' .
                        '<ol>' .
                                '<li>' . __( '<strong>Color Scheme</strong>: You can choose a color palette of "Light" (light background with dark text) or "Dark" (dark background with light text) for your site.', 'twentyeleven' ) . '</li>' .
                                '<li>' . __( '<strong>Link Color</strong>: You can choose the color used for text links on your site. You can enter the HTML color or hex code, or you can choose visually by clicking the "Select a Color" button to pick from a color wheel.', 'twentyeleven' ) . '</li>' .
                                '<li>' . __( '<strong>Default Layout</strong>: You can choose if you want your site&#8217;s default layout to have a sidebar on the left, the right, or not at all.', 'twentyeleven' ) . '</li>' .
                        '</ol>' .
-                       '<p>' . __( 'Remember to click "Save Changes" to save any changes you have made to the theme options.', 'twentyeleven' ) . '</p>' .
-                       '<p><strong>' . __( 'For more information:', 'twentyeleven' ) . '</strong></p>' .
-                       '<p>' . __( '<a href="http://codex.wordpress.org/Appearance_Theme_Options_Screen" target="_blank">Documentation on Theme Options</a>', 'twentyeleven' ) . '</p>' .
-                       '<p>' . __( '<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>', 'twentyeleven' ) . '</p>';
-
-       add_contextual_help( $theme_page, $help );
+                       '<p>' . __( 'Remember to click "Save Changes" to save any changes you have made to the theme options.', 'twentyeleven' ) . '</p>';
+
+       $sidebar = '<p><strong>' . __( 'For more information:', 'twentyeleven' ) . '</strong></p>' .
+               '<p>' . __( '<a href="http://codex.wordpress.org/Appearance_Theme_Options_Screen" target="_blank">Documentation on Theme Options</a>', 'twentyeleven' ) . '</p>' .
+               '<p>' . __( '<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>', 'twentyeleven' ) . '</p>';
+
+       $screen = get_current_screen();
+
+       if ( method_exists( $screen, 'add_help_tab' ) ) {
+               // WordPress 3.3
+               $screen->add_help_tab( array(
+                       'title' => __( 'Overview', 'twentyeleven' ),
+                       'id' => 'theme-options-help',
+                       'content' => $help,
+                       )
+               );
+
+               $screen->set_help_sidebar( $sidebar );
+       } else {
+               // WordPress 3.2
+               add_contextual_help( $screen, $help . $sidebar );
+       }
 }
 }
-add_action( 'admin_menu', 'twentyeleven_theme_options_add_page' );
 
 /**
  * Returns an array of color schemes registered for Twenty Eleven.
 
 /**
  * Returns an array of color schemes registered for Twenty Eleven.
@@ -201,6 +242,69 @@ function twentyeleven_get_theme_options() {
        return get_option( 'twentyeleven_theme_options', twentyeleven_get_default_theme_options() );
 }
 
        return get_option( 'twentyeleven_theme_options', twentyeleven_get_default_theme_options() );
 }
 
+/**
+ * Renders the Color Scheme setting field.
+ *
+ * @since Twenty Eleven 1.3
+ */
+function twentyeleven_settings_field_color_scheme() {
+       $options = twentyeleven_get_theme_options();
+
+       foreach ( twentyeleven_color_schemes() as $scheme ) {
+       ?>
+       <div class="layout image-radio-option color-scheme">
+       <label class="description">
+               <input type="radio" name="twentyeleven_theme_options[color_scheme]" value="<?php echo esc_attr( $scheme['value'] ); ?>" <?php checked( $options['color_scheme'], $scheme['value'] ); ?> />
+               <input type="hidden" id="default-color-<?php echo esc_attr( $scheme['value'] ); ?>" value="<?php echo esc_attr( $scheme['default_link_color'] ); ?>" />
+               <span>
+                       <img src="<?php echo esc_url( $scheme['thumbnail'] ); ?>" width="136" height="122" alt="" />
+                       <?php echo $scheme['label']; ?>
+               </span>
+       </label>
+       </div>
+       <?php
+       }
+}
+
+/**
+ * Renders the Link Color setting field.
+ *
+ * @since Twenty Eleven 1.3
+ */
+function twentyeleven_settings_field_link_color() {
+       $options = twentyeleven_get_theme_options();
+       ?>
+       <input type="text" name="twentyeleven_theme_options[link_color]" id="link-color" value="<?php echo esc_attr( $options['link_color'] ); ?>" />
+       <a href="#" class="pickcolor hide-if-no-js" id="link-color-example"></a>
+       <input type="button" class="pickcolor button hide-if-no-js" value="<?php esc_attr_e( 'Select a Color', 'twentyeleven' ); ?>" />
+       <div id="colorPickerDiv" style="z-index: 100; background:#eee; border:1px solid #ccc; position:absolute; display:none;"></div>
+       <br />
+       <span><?php printf( __( 'Default color: %s', 'twentyeleven' ), '<span id="default-color">' . twentyeleven_get_default_link_color( $options['color_scheme'] ) . '</span>' ); ?></span>
+       <?php
+}
+
+/**
+ * Renders the Layout setting field.
+ *
+ * @since Twenty Eleven 1.3
+ */
+function twentyeleven_settings_field_layout() {
+       $options = twentyeleven_get_theme_options();
+       foreach ( twentyeleven_layouts() as $layout ) {
+               ?>
+               <div class="layout image-radio-option theme-layout">
+               <label class="description">
+                       <input type="radio" name="twentyeleven_theme_options[theme_layout]" value="<?php echo esc_attr( $layout['value'] ); ?>" <?php checked( $options['theme_layout'], $layout['value'] ); ?> />
+                       <span>
+                               <img src="<?php echo esc_url( $layout['thumbnail'] ); ?>" width="136" height="122" alt="" />
+                               <?php echo $layout['label']; ?>
+                       </span>
+               </label>
+               </div>
+               <?php
+       }
+}
+
 /**
  * Returns the options array for Twenty Eleven.
  *
 /**
  * Returns the options array for Twenty Eleven.
  *
@@ -216,72 +320,9 @@ function twentyeleven_theme_options_render_page() {
                <form method="post" action="options.php">
                        <?php
                                settings_fields( 'twentyeleven_options' );
                <form method="post" action="options.php">
                        <?php
                                settings_fields( 'twentyeleven_options' );
-                               $options = twentyeleven_get_theme_options();
-                               $default_options = twentyeleven_get_default_theme_options();
+                               do_settings_sections( 'theme_options' );
+                               submit_button();
                        ?>
                        ?>
-
-                       <table class="form-table">
-
-                               <tr valign="top" class="image-radio-option color-scheme"><th scope="row"><?php _e( 'Color Scheme', 'twentyeleven' ); ?></th>
-                                       <td>
-                                               <fieldset><legend class="screen-reader-text"><span><?php _e( 'Color Scheme', 'twentyeleven' ); ?></span></legend>
-                                               <?php
-                                                       foreach ( twentyeleven_color_schemes() as $scheme ) {
-                                                               ?>
-                                                               <div class="layout">
-                                                               <label class="description">
-                                                                       <input type="radio" name="twentyeleven_theme_options[color_scheme]" value="<?php echo esc_attr( $scheme['value'] ); ?>" <?php checked( $options['color_scheme'], $scheme['value'] ); ?> />
-                                                                       <input type="hidden" id="default-color-<?php echo esc_attr( $scheme['value'] ); ?>" value="<?php echo esc_attr( $scheme['default_link_color'] ); ?>" />
-                                                                       <span>
-                                                                               <img src="<?php echo esc_url( $scheme['thumbnail'] ); ?>" width="136" height="122" alt="" />
-                                                                               <?php echo $scheme['label']; ?>
-                                                                       </span>
-                                                               </label>
-                                                               </div>
-                                                               <?php
-                                                       }
-                                               ?>
-                                               </fieldset>
-                                       </td>
-                               </tr>
-
-                               <tr valign="top"><th scope="row"><?php _e( 'Link Color', 'twentyeleven' ); ?></th>
-                                       <td>
-                                               <fieldset><legend class="screen-reader-text"><span><?php _e( 'Link Color', 'twentyeleven' ); ?></span></legend>
-                                                       <input type="text" name="twentyeleven_theme_options[link_color]" id="link-color" value="<?php echo esc_attr( $options['link_color'] ); ?>" />
-                                                       <a href="#" class="pickcolor hide-if-no-js" id="link-color-example"></a>
-                                                       <input type="button" class="pickcolor button hide-if-no-js" value="<?php esc_attr_e( 'Select a Color', 'twentyeleven' ); ?>" />
-                                                       <div id="colorPickerDiv" style="z-index: 100; background:#eee; border:1px solid #ccc; position:absolute; display:none;"></div>
-                                                       <br />
-                                                       <span><?php printf( __( 'Default color: %s', 'twentyeleven' ), '<span id="default-color">' . twentyeleven_get_default_link_color( $options['color_scheme'] ) . '</span>' ); ?></span>
-                                               </fieldset>
-                                       </td>
-                               </tr>
-
-                               <tr valign="top" class="image-radio-option theme-layout"><th scope="row"><?php _e( 'Default Layout', 'twentyeleven' ); ?></th>
-                                       <td>
-                                               <fieldset><legend class="screen-reader-text"><span><?php _e( 'Color Scheme', 'twentyeleven' ); ?></span></legend>
-                                               <?php
-                                                       foreach ( twentyeleven_layouts() as $layout ) {
-                                                               ?>
-                                                               <div class="layout">
-                                                               <label class="description">
-                                                                       <input type="radio" name="twentyeleven_theme_options[theme_layout]" value="<?php echo esc_attr( $layout['value'] ); ?>" <?php checked( $options['theme_layout'], $layout['value'] ); ?> />
-                                                                       <span>
-                                                                               <img src="<?php echo esc_url( $layout['thumbnail'] ); ?>" width="136" height="122" alt="" />
-                                                                               <?php echo $layout['label']; ?>
-                                                                       </span>
-                                                               </label>
-                                                               </div>
-                                                               <?php
-                                                       }
-                                               ?>
-                                               </fieldset>
-                                       </td>
-                               </tr>
-                       </table>
-
-                       <?php submit_button(); ?>
                </form>
        </div>
        <?php
                </form>
        </div>
        <?php
index 3ea38e57ba9e72f099a4e190b172cce953101d1e..aac42f06b061746adf493f93c1289f4cdbebb919 100644 (file)
@@ -75,51 +75,49 @@ class Twenty_Eleven_Ephemera_Widget extends WP_Widget {
                $ephemera = new WP_Query( $ephemera_args );
 
                if ( $ephemera->have_posts() ) :
                $ephemera = new WP_Query( $ephemera_args );
 
                if ( $ephemera->have_posts() ) :
-
-               echo $before_widget;
-               echo $before_title;
-               echo $title; // Can set this with a widget option, or omit altogether
-               echo $after_title;
-
-               ?>
-               <ol>
-               <?php while ( $ephemera->have_posts() ) : $ephemera->the_post(); ?>
-
-                       <?php if ( 'link' != get_post_format() ) : ?>
-
-                       <li class="widget-entry-title">
-                               <a href="<?php echo esc_url( get_permalink() ); ?>" title="<?php printf( esc_attr__( 'Permalink to %s', 'twentyeleven' ), the_title_attribute( 'echo=0' ) ); ?>" rel="bookmark"><?php the_title(); ?></a>
-                               <span class="comments-link">
-                                       <?php comments_popup_link( __( '0 <span class="reply">comments &rarr;</span>', 'twentyeleven' ), __( '1 <span class="reply">comment &rarr;</span>', 'twentyeleven' ), __( '% <span class="reply">comments &rarr;</span>', 'twentyeleven' ) ); ?>
-                               </span>
-                       </li>
-
-                       <?php else : ?>
-
-                       <li class="widget-entry-title">
-                               <?php
-                                       // Grab first link from the post content. If none found, use the post permalink as fallback.
-                                       $link_url = twentyeleven_url_grabber();
-
-                                       if ( empty( $link_url ) )
-                                               $link_url = get_permalink();
-                               ?>
-                               <a href="<?php echo esc_url( $link_url ); ?>" title="<?php printf( esc_attr__( 'Link to %s', 'twentyeleven' ), the_title_attribute( 'echo=0' ) ); ?>" rel="bookmark"><?php the_title(); ?>&nbsp;<span>&rarr;</span></a>
-                               <span class="comments-link">
-                                       <?php comments_popup_link( __( '0 <span class="reply">comments &rarr;</span>', 'twentyeleven' ), __( '1 <span class="reply">comment &rarr;</span>', 'twentyeleven' ), __( '% <span class="reply">comments &rarr;</span>', 'twentyeleven' ) ); ?>
-                               </span>
-                       </li>
-
-                       <?php endif; ?>
-
-               <?php endwhile; ?>
-               </ol>
-               <?php
-
-               echo $after_widget;
-
-               // Reset the post globals as this query will have stomped on it
-               wp_reset_postdata();
+                       echo $before_widget;
+                       echo $before_title;
+                       echo $title; // Can set this with a widget option, or omit altogether
+                       echo $after_title;
+                       ?>
+                       <ol>
+                       <?php while ( $ephemera->have_posts() ) : $ephemera->the_post(); ?>
+
+                               <?php if ( 'link' != get_post_format() ) : ?>
+
+                               <li class="widget-entry-title">
+                                       <a href="<?php echo esc_url( get_permalink() ); ?>" title="<?php printf( esc_attr__( 'Permalink to %s', 'twentyeleven' ), the_title_attribute( 'echo=0' ) ); ?>" rel="bookmark"><?php the_title(); ?></a>
+                                       <span class="comments-link">
+                                               <?php comments_popup_link( __( '0 <span class="reply">comments &rarr;</span>', 'twentyeleven' ), __( '1 <span class="reply">comment &rarr;</span>', 'twentyeleven' ), __( '% <span class="reply">comments &rarr;</span>', 'twentyeleven' ) ); ?>
+                                       </span>
+                               </li>
+
+                               <?php else : ?>
+
+                               <li class="widget-entry-title">
+                                       <?php
+                                               // Grab first link from the post content. If none found, use the post permalink as fallback.
+                                               $link_url = twentyeleven_url_grabber();
+
+                                               if ( empty( $link_url ) )
+                                                       $link_url = get_permalink();
+                                       ?>
+                                       <a href="<?php echo esc_url( $link_url ); ?>" title="<?php printf( esc_attr__( 'Link to %s', 'twentyeleven' ), the_title_attribute( 'echo=0' ) ); ?>" rel="bookmark"><?php the_title(); ?>&nbsp;<span>&rarr;</span></a>
+                                       <span class="comments-link">
+                                               <?php comments_popup_link( __( '0 <span class="reply">comments &rarr;</span>', 'twentyeleven' ), __( '1 <span class="reply">comment &rarr;</span>', 'twentyeleven' ), __( '% <span class="reply">comments &rarr;</span>', 'twentyeleven' ) ); ?>
+                                       </span>
+                               </li>
+
+                               <?php endif; ?>
+
+                       <?php endwhile; ?>
+                       </ol>
+                       <?php
+
+                       echo $after_widget;
+
+                       // Reset the post globals as this query will have stomped on it
+                       wp_reset_postdata();
 
                // end check for ephemeral posts
                endif;
 
                // end check for ephemeral posts
                endif;
index 1cdd5e26cb17720d960f72a3a2197b65ebacf36d..77bf8d29fe4f2cdd58f6e51c581082ab1f292ceb 100644 (file)
@@ -2,9 +2,9 @@
 # This file is distributed under the same license as the Twenty Eleven package.
 msgid ""
 msgstr ""
 # This file is distributed under the same license as the Twenty Eleven package.
 msgid ""
 msgstr ""
-"Project-Id-Version: Twenty Eleven 1.0\n"
+"Project-Id-Version: Twenty Eleven 1.3\n"
 "Report-Msgid-Bugs-To: http://wordpress.org/tag/twentyeleven\n"
 "Report-Msgid-Bugs-To: http://wordpress.org/tag/twentyeleven\n"
-"POT-Creation-Date: 2011-06-30 22:47:23+00:00\n"
+"POT-Creation-Date: 2011-12-10 19:47:15+00:00\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -12,10 +12,10 @@ msgstr ""
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
 
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
 
-#: content-quote.php:14 showcase.php:113 showcase.php:192 content.php:15
+#: content-quote.php:14 showcase.php:115 showcase.php:194 content.php:15
 #: content.php:19 content-image.php:15 content-gallery.php:16
 #: content-gallery.php:48 content-aside.php:16 content-status.php:15
 #: content.php:19 content-image.php:15 content-gallery.php:16
 #: content-gallery.php:48 content-aside.php:16 content-status.php:15
-#: inc/widgets.php:91 content-link.php:16 content-featured.php:14
+#: inc/widgets.php:89 content-link.php:16 content-featured.php:14
 msgid "Permalink to %s"
 msgstr ""
 
 msgid "Permalink to %s"
 msgstr ""
 
@@ -24,8 +24,7 @@ msgid "Quote"
 msgstr ""
 
 #: content-quote.php:24 content.php:30 content-image.php:21
 msgstr ""
 
 #: content-quote.php:24 content.php:30 content-image.php:21
-#: content-image.php:64 content-aside.php:22 content-status.php:21
-#: content-link.php:22
+#: content-aside.php:22 content-status.php:21 content-link.php:22
 msgid "Reply"
 msgstr ""
 
 msgid "Reply"
 msgstr ""
 
@@ -49,7 +48,7 @@ msgstr ""
 
 #: content-quote.php:36 content.php:42 content-image.php:28
 #: content-single.php:24 content-intro.php:18 content-gallery.php:54
 
 #: content-quote.php:36 content.php:42 content-image.php:28
 #: content-single.php:24 content-intro.php:18 content-gallery.php:54
-#: content-aside.php:34 image.php:89 content-status.php:35 content-page.php:18
+#: content-aside.php:34 image.php:90 content-status.php:35 content-page.php:18
 #: content-link.php:34 content-featured.php:23
 msgid "Pages:"
 msgstr ""
 #: content-link.php:34 content-featured.php:23
 msgid "Pages:"
 msgstr ""
@@ -72,38 +71,41 @@ msgstr ""
 msgid "<span class=\"%1$s\">Tagged</span> %2$s"
 msgstr ""
 
 msgid "<span class=\"%1$s\">Tagged</span> %2$s"
 msgstr ""
 
-#: content-quote.php:69 showcase.php:194 content.php:77 content-aside.php:42
-#: content-status.php:43 content-link.php:42
+#: content-quote.php:69 showcase.php:196 content.php:77 content-image.php:64
+#: content-gallery.php:87 content-aside.php:42 content-status.php:43
+#: content-link.php:42
 msgid "Leave a reply"
 msgstr ""
 
 msgid "Leave a reply"
 msgstr ""
 
-#: content-quote.php:69 showcase.php:194 content.php:77 content-gallery.php:87
-#: content-aside.php:42 content-status.php:43 content-link.php:42
+#: content-quote.php:69 showcase.php:196 content.php:77 content-image.php:64
+#: content-gallery.php:87 content-aside.php:42 content-status.php:43
+#: content-link.php:42
 msgid "<b>1</b> Reply"
 msgstr ""
 
 msgid "<b>1</b> Reply"
 msgstr ""
 
-#: content-quote.php:69 showcase.php:194 content.php:77 content-gallery.php:87
-#: content-aside.php:42 content-status.php:43 content-link.php:42
+#: content-quote.php:69 showcase.php:196 content.php:77 content-image.php:64
+#: content-gallery.php:87 content-aside.php:42 content-status.php:43
+#: content-link.php:42
 msgid "<b>%</b> Replies"
 msgstr ""
 
 #: content-quote.php:72 content.php:80 content-image.php:68
 #: content-single.php:52 content-intro.php:19 content-gallery.php:90
 msgid "<b>%</b> Replies"
 msgstr ""
 
 #: content-quote.php:72 content.php:80 content-image.php:68
 #: content-single.php:52 content-intro.php:19 content-gallery.php:90
-#: content-aside.php:44 image.php:40 functions.php:503 functions.php:531
+#: content-aside.php:44 image.php:41 functions.php:505 functions.php:533
 #: content-status.php:45 content-page.php:21 content-link.php:44
 #: content-featured.php:45
 msgid "Edit"
 msgstr ""
 
 #: content-status.php:45 content-page.php:21 content-link.php:44
 #: content-featured.php:45
 msgid "Edit"
 msgstr ""
 
-#: showcase.php:70
+#: showcase.php:72
 msgid "Featured Post"
 msgstr ""
 
 msgid "Featured Post"
 msgstr ""
 
-#: showcase.php:143
+#: showcase.php:145
 msgid "Featuring: %s"
 msgstr ""
 
 msgid "Featuring: %s"
 msgstr ""
 
-#: showcase.php:153
+#: showcase.php:155
 msgid "Recent Posts"
 msgstr ""
 
 msgid "Recent Posts"
 msgstr ""
 
@@ -122,17 +124,17 @@ msgstr ""
 msgid "Featured"
 msgstr ""
 
 msgid "Featured"
 msgstr ""
 
-#. #-#-#-#-#  twentyeleven.pot (Twenty Eleven 1.0)  #-#-#-#-#
+#. #-#-#-#-#  twentyeleven.pot (Twenty Eleven 1.3)  #-#-#-#-#
 #. Author URI of the plugin/theme
 #. Author URI of the plugin/theme
-#: footer.php:26
+#: footer.php:27
 msgid "http://wordpress.org/"
 msgstr ""
 
 msgid "http://wordpress.org/"
 msgstr ""
 
-#: footer.php:26
+#: footer.php:27
 msgid "Semantic Personal Publishing Platform"
 msgstr ""
 
 msgid "Semantic Personal Publishing Platform"
 msgstr ""
 
-#: footer.php:26
+#: footer.php:27
 msgid "Proudly powered by %s"
 msgstr ""
 
 msgid "Proudly powered by %s"
 msgstr ""
 
@@ -152,18 +154,10 @@ msgid ""
 "title=\"%5$s\" rel=\"author\">%6$s</a></span></span>"
 msgstr ""
 
 "title=\"%5$s\" rel=\"author\">%6$s</a></span></span>"
 msgstr ""
 
-#: content-image.php:39 functions.php:568
+#: content-image.php:39 functions.php:570
 msgid "View all posts by %s"
 msgstr ""
 
 msgid "View all posts by %s"
 msgstr ""
 
-#: content-image.php:64
-msgid "<strong>1</strong> Reply"
-msgstr ""
-
-#: content-image.php:64
-msgid "<strong>%</strong> Replies"
-msgstr ""
-
 #: sidebar.php:19
 msgid "Archives"
 msgstr ""
 #: sidebar.php:19
 msgid "Archives"
 msgstr ""
@@ -213,10 +207,6 @@ msgid_plural "This gallery contains <a %1$s>%2$s photos</a>."
 msgstr[0] ""
 msgstr[1] ""
 
 msgstr[0] ""
 msgstr[1] ""
 
-#: content-gallery.php:87
-msgid "Leave a Reply"
-msgstr ""
-
 #: comments.php:17
 msgid ""
 "This post is password protected. Enter the password to view any comments."
 #: comments.php:17
 msgid ""
 "This post is password protected. Enter the password to view any comments."
@@ -284,7 +274,7 @@ msgid ""
 "<span class=\"meta-prep meta-prep-entry-date\">Published </span> <span class="
 "\"entry-date\"><abbr class=\"published\" title=\"%1$s\">%2$s</abbr></span> "
 "at <a href=\"%3$s\" title=\"Link to full-size image\">%4$s &times; %5$s</a> "
 "<span class=\"meta-prep meta-prep-entry-date\">Published </span> <span class="
 "\"entry-date\"><abbr class=\"published\" title=\"%1$s\">%2$s</abbr></span> "
 "at <a href=\"%3$s\" title=\"Link to full-size image\">%4$s &times; %5$s</a> "
-"in <a href=\"%6$s\" title=\"Return to %7$s\" rel=\"gallery\">%7$s</a>"
+"in <a href=\"%6$s\" title=\"Return to %7$s\" rel=\"gallery\">%8$s</a>"
 msgstr ""
 
 #: functions.php:101
 msgstr ""
 
 #: functions.php:101
@@ -359,41 +349,41 @@ msgstr ""
 msgid "Footer Area Three"
 msgstr ""
 
 msgid "Footer Area Three"
 msgstr ""
 
-#: functions.php:432 single.php:18
+#: functions.php:433 single.php:18
 msgid "Post navigation"
 msgstr ""
 
 msgid "Post navigation"
 msgstr ""
 
-#: functions.php:433
+#: functions.php:434
 msgid "<span class=\"meta-nav\">&larr;</span> Older posts"
 msgstr ""
 
 msgid "<span class=\"meta-nav\">&larr;</span> Older posts"
 msgstr ""
 
-#: functions.php:434
+#: functions.php:435
 msgid "Newer posts <span class=\"meta-nav\">&rarr;</span>"
 msgstr ""
 
 msgid "Newer posts <span class=\"meta-nav\">&rarr;</span>"
 msgstr ""
 
-#: functions.php:503
+#: functions.php:505
 msgid "Pingback:"
 msgstr ""
 
 #. translators: 1: comment author, 2: date and time
 msgid "Pingback:"
 msgstr ""
 
 #. translators: 1: comment author, 2: date and time
-#: functions.php:520
+#: functions.php:522
 msgid "%1$s on %2$s <span class=\"says\">said:</span>"
 msgstr ""
 
 #. translators: 1: date, 2: time
 msgid "%1$s on %2$s <span class=\"says\">said:</span>"
 msgstr ""
 
 #. translators: 1: date, 2: time
-#: functions.php:526
+#: functions.php:528
 msgid "%1$s at %2$s"
 msgstr ""
 
 msgid "%1$s at %2$s"
 msgstr ""
 
-#: functions.php:535
+#: functions.php:537
 msgid "Your comment is awaiting moderation."
 msgstr ""
 
 msgid "Your comment is awaiting moderation."
 msgstr ""
 
-#: functions.php:544
+#: functions.php:546
 msgid "Reply <span>&darr;</span>"
 msgstr ""
 
 msgid "Reply <span>&darr;</span>"
 msgstr ""
 
-#: functions.php:562
+#: functions.php:564
 msgid ""
 "<span class=\"sep\">Posted on </span><a href=\"%1$s\" title=\"%2$s\" rel="
 "\"bookmark\"><time class=\"entry-date\" datetime=\"%3$s\" pubdate>%4$s</"
 msgid ""
 "<span class=\"sep\">Posted on </span><a href=\"%1$s\" title=\"%2$s\" rel="
 "\"bookmark\"><time class=\"entry-date\" datetime=\"%3$s\" pubdate>%4$s</"
@@ -426,11 +416,23 @@ msgstr ""
 msgid "Status"
 msgstr ""
 
 msgid "Status"
 msgstr ""
 
-#: inc/theme-options.php:80 inc/theme-options.php:81
+#: inc/theme-options.php:61
+msgid "Color Scheme"
+msgstr ""
+
+#: inc/theme-options.php:67
+msgid "Link Color"
+msgstr ""
+
+#: inc/theme-options.php:68
+msgid "Default Layout"
+msgstr ""
+
+#: inc/theme-options.php:100 inc/theme-options.php:101
 msgid "Theme Options"
 msgstr ""
 
 msgid "Theme Options"
 msgstr ""
 
-#: inc/theme-options.php:90
+#: inc/theme-options.php:116
 msgid ""
 "Some themes provide customization options that are grouped together on a "
 "Theme Options screen. If you change themes, options may change or disappear, "
 msgid ""
 "Some themes provide customization options that are grouped together on a "
 "Theme Options screen. If you change themes, options may change or disappear, "
@@ -438,14 +440,14 @@ msgid ""
 "following Theme Options:"
 msgstr ""
 
 "following Theme Options:"
 msgstr ""
 
-#: inc/theme-options.php:92
+#: inc/theme-options.php:118
 msgid ""
 "<strong>Color Scheme</strong>: You can choose a color palette of \"Light"
 "\" (light background with dark text) or \"Dark\" (dark background with light "
 "text) for your site."
 msgstr ""
 
 msgid ""
 "<strong>Color Scheme</strong>: You can choose a color palette of \"Light"
 "\" (light background with dark text) or \"Dark\" (dark background with light "
 "text) for your site."
 msgstr ""
 
-#: inc/theme-options.php:93
+#: inc/theme-options.php:119
 msgid ""
 "<strong>Link Color</strong>: You can choose the color used for text links on "
 "your site. You can enter the HTML color or hex code, or you can choose "
 msgid ""
 "<strong>Link Color</strong>: You can choose the color used for text links on "
 "your site. You can enter the HTML color or hex code, or you can choose "
@@ -453,77 +455,68 @@ msgid ""
 "wheel."
 msgstr ""
 
 "wheel."
 msgstr ""
 
-#: inc/theme-options.php:94
+#: inc/theme-options.php:120
 msgid ""
 "<strong>Default Layout</strong>: You can choose if you want your site&#8217;"
 "s default layout to have a sidebar on the left, the right, or not at all."
 msgstr ""
 
 msgid ""
 "<strong>Default Layout</strong>: You can choose if you want your site&#8217;"
 "s default layout to have a sidebar on the left, the right, or not at all."
 msgstr ""
 
-#: inc/theme-options.php:96
+#: inc/theme-options.php:122
 msgid ""
 "Remember to click \"Save Changes\" to save any changes you have made to the "
 "theme options."
 msgstr ""
 
 msgid ""
 "Remember to click \"Save Changes\" to save any changes you have made to the "
 "theme options."
 msgstr ""
 
-#: inc/theme-options.php:97
+#: inc/theme-options.php:124
 msgid "For more information:"
 msgstr ""
 
 msgid "For more information:"
 msgstr ""
 
-#: inc/theme-options.php:98
+#: inc/theme-options.php:125
 msgid ""
 "<a href=\"http://codex.wordpress.org/Appearance_Theme_Options_Screen\" "
 "target=\"_blank\">Documentation on Theme Options</a>"
 msgstr ""
 
 msgid ""
 "<a href=\"http://codex.wordpress.org/Appearance_Theme_Options_Screen\" "
 "target=\"_blank\">Documentation on Theme Options</a>"
 msgstr ""
 
-#: inc/theme-options.php:99
+#: inc/theme-options.php:126
 msgid ""
 "<a href=\"http://wordpress.org/support/\" target=\"_blank\">Support Forums</"
 "a>"
 msgstr ""
 
 msgid ""
 "<a href=\"http://wordpress.org/support/\" target=\"_blank\">Support Forums</"
 "a>"
 msgstr ""
 
-#: inc/theme-options.php:114
+#: inc/theme-options.php:133
+msgid "Overview"
+msgstr ""
+
+#: inc/theme-options.php:155
 msgid "Light"
 msgstr ""
 
 msgid "Light"
 msgstr ""
 
-#: inc/theme-options.php:120
+#: inc/theme-options.php:161
 msgid "Dark"
 msgstr ""
 
 msgid "Dark"
 msgstr ""
 
-#: inc/theme-options.php:138
+#: inc/theme-options.php:179
 msgid "Content on left"
 msgstr ""
 
 msgid "Content on left"
 msgstr ""
 
-#: inc/theme-options.php:143
+#: inc/theme-options.php:184
 msgid "Content on right"
 msgstr ""
 
 msgid "Content on right"
 msgstr ""
 
-#: inc/theme-options.php:148
+#: inc/theme-options.php:189
 msgid "One-column, no sidebar"
 msgstr ""
 
 msgid "One-column, no sidebar"
 msgstr ""
 
-#: inc/theme-options.php:213
-msgid "%s Theme Options"
-msgstr ""
-
-#: inc/theme-options.php:225 inc/theme-options.php:227
-#: inc/theme-options.php:263
-msgid "Color Scheme"
-msgstr ""
-
-#: inc/theme-options.php:248 inc/theme-options.php:250
-msgid "Link Color"
-msgstr ""
-
-#: inc/theme-options.php:253
+#: inc/theme-options.php:279
 msgid "Select a Color"
 msgstr ""
 
 msgid "Select a Color"
 msgstr ""
 
-#: inc/theme-options.php:256
+#: inc/theme-options.php:282
 msgid "Default color: %s"
 msgstr ""
 
 msgid "Default color: %s"
 msgstr ""
 
-#: inc/theme-options.php:261
-msgid "Default Layout"
+#: inc/theme-options.php:317
+msgid "%s Theme Options"
 msgstr ""
 
 #: inc/widgets.php:19
 msgstr ""
 
 #: inc/widgets.php:19
@@ -539,27 +532,27 @@ msgstr ""
 msgid "Ephemera"
 msgstr ""
 
 msgid "Ephemera"
 msgstr ""
 
-#: inc/widgets.php:93 inc/widgets.php:109
+#: inc/widgets.php:91 inc/widgets.php:107
 msgid "0 <span class=\"reply\">comments &rarr;</span>"
 msgstr ""
 
 msgid "0 <span class=\"reply\">comments &rarr;</span>"
 msgstr ""
 
-#: inc/widgets.php:93 inc/widgets.php:109
+#: inc/widgets.php:91 inc/widgets.php:107
 msgid "1 <span class=\"reply\">comment &rarr;</span>"
 msgstr ""
 
 msgid "1 <span class=\"reply\">comment &rarr;</span>"
 msgstr ""
 
-#: inc/widgets.php:93 inc/widgets.php:109
+#: inc/widgets.php:91 inc/widgets.php:107
 msgid "% <span class=\"reply\">comments &rarr;</span>"
 msgstr ""
 
 msgid "% <span class=\"reply\">comments &rarr;</span>"
 msgstr ""
 
-#: inc/widgets.php:107
+#: inc/widgets.php:105
 msgid "Link to %s"
 msgstr ""
 
 msgid "Link to %s"
 msgstr ""
 
-#: inc/widgets.php:159
+#: inc/widgets.php:157
 msgid "Title:"
 msgstr ""
 
 msgid "Title:"
 msgstr ""
 
-#: inc/widgets.php:162
+#: inc/widgets.php:160
 msgid "Number of posts to show:"
 msgstr ""
 
 msgid "Number of posts to show:"
 msgstr ""
 
@@ -581,10 +574,20 @@ msgstr ""
 msgid "Monthly Archives: %s"
 msgstr ""
 
 msgid "Monthly Archives: %s"
 msgstr ""
 
+#: archive.php:27
+msgctxt "monthly archives date format"
+msgid "F Y"
+msgstr ""
+
 #: archive.php:29
 msgid "Yearly Archives: %s"
 msgstr ""
 
 #: archive.php:29
 msgid "Yearly Archives: %s"
 msgstr ""
 
+#: archive.php:29
+msgctxt "yearly archives date format"
+msgid "Y"
+msgstr ""
+
 #: archive.php:31
 msgid "Blog Archives"
 msgstr ""
 #: archive.php:31
 msgid "Blog Archives"
 msgstr ""
index 3b96e52c9c77aa45f24754d7aaf4577a252aa3ee..5dda4d164fb572c67702190dd08e0d5e9f932dcf 100644 (file)
@@ -17,11 +17,13 @@ get_header(); ?>
                <div id="primary">
                        <div id="content" role="main">
 
                <div id="primary">
                        <div id="content" role="main">
 
-                               <?php the_post(); ?>
+                               <?php while ( have_posts() ) : the_post(); ?>
 
 
-                               <?php get_template_part( 'content', 'page' ); ?>
+                                       <?php get_template_part( 'content', 'page' ); ?>
 
 
-                               <?php comments_template( '', true ); ?>
+                                       <?php comments_template( '', true ); ?>
+
+                               <?php endwhile; // end of the loop. ?>
 
                        </div><!-- #content -->
                </div><!-- #primary -->
 
                        </div><!-- #content -->
                </div><!-- #primary -->
index 7b67e1f23db527ac8a1c5fbb5049a484a141ae56..19ac828adb368100f522c5dde2b37f2054687f78 100644 (file)
@@ -84,8 +84,8 @@ p {
 ul, ol {
        margin: 0 2.5em 1.625em 0;
 }
 ul, ol {
        margin: 0 2.5em 1.625em 0;
 }
-.ltr ul, ol {
-       margin: 0 0 1.625em  2.5em;
+.ltr ul, .ltr ol {
+       margin: 0 0 1.625em 2.5em;
 }
 blockquote {
        font-family: Arial, sans-serif;
 }
 blockquote {
        font-family: Arial, sans-serif;
@@ -334,6 +334,7 @@ section.recent-posts .other-recent-posts a[rel="bookmark"] {
 section.recent-posts .other-recent-posts .comments-link a,
 section.recent-posts .other-recent-posts .comments-link > span {
        padding: 0.3125em 1em 0.3125em 0;
 section.recent-posts .other-recent-posts .comments-link a,
 section.recent-posts .other-recent-posts .comments-link > span {
        padding: 0.3125em 1em 0.3125em 0;
+       right: auto;
        left: 0;
        text-align: left;
 }
        left: 0;
        text-align: left;
 }
index 58e85e21f2d83f508cc913f6a9d12bdf61b47f4e..4f69099240352c36ae14183e424dfe00ef2b3461 100644 (file)
@@ -22,7 +22,7 @@ get_header(); ?>
                <div id="primary" class="showcase">
                        <div id="content" role="main">
 
                <div id="primary" class="showcase">
                        <div id="content" role="main">
 
-                               <?php the_post(); ?>
+                               <?php while ( have_posts() ) : the_post(); ?>
 
                                <?php
                                        /**
 
                                <?php
                                        /**
@@ -33,6 +33,8 @@ get_header(); ?>
                                                get_template_part( 'content', 'intro' );
                                ?>
 
                                                get_template_part( 'content', 'intro' );
                                ?>
 
+                               <?php endwhile; ?>
+
                                <?php
                                        /**
                                         * Begin the featured posts section.
                                <?php
                                        /**
                                         * Begin the featured posts section.
index d47e4eea3189cd2b56a8cb5723a8675db7b5f300..c10d6285867a89d692b1f598b82d8715ac6b0f53 100644 (file)
@@ -13,11 +13,13 @@ get_header(); ?>
                <div id="primary">
                        <div id="content" role="main">
 
                <div id="primary">
                        <div id="content" role="main">
 
-                               <?php the_post(); ?>
+                               <?php while ( have_posts() ) : the_post(); ?>
 
 
-                               <?php get_template_part( 'content', 'page' ); ?>
+                                       <?php get_template_part( 'content', 'page' ); ?>
 
 
-                               <?php comments_template( '', true ); ?>
+                                       <?php comments_template( '', true ); ?>
+
+                               <?php endwhile; // end of the loop. ?>
 
                        </div><!-- #content -->
                </div><!-- #primary -->
 
                        </div><!-- #content -->
                </div><!-- #primary -->
index 68254b5b7ab469a0e766bb3d0d22fb67bb7944ad..40979239a80b88189c8c1e5ec2c251320146d51b 100644 (file)
@@ -4,7 +4,7 @@ Theme URI: http://wordpress.org/extend/themes/twentyeleven
 Author: the WordPress team
 Author URI: http://wordpress.org/
 Description: The 2011 theme for WordPress is sophisticated, lightweight, and adaptable. Make it yours with a custom menu, header image, and background -- then go further with available theme options for light or dark color scheme, custom link colors, and three layout choices. Twenty Eleven comes equipped with a Showcase page template that transforms your front page into a showcase to show off your best content, widget support galore (sidebar, three footer areas, and a Showcase page widget area), and a custom "Ephemera" widget to display your Aside, Link, Quote, or Status posts. Included are styles for print and for the admin editor, support for featured images (as custom header images on posts and pages and as large images on featured "sticky" posts), and special styles for six different post formats.
 Author: the WordPress team
 Author URI: http://wordpress.org/
 Description: The 2011 theme for WordPress is sophisticated, lightweight, and adaptable. Make it yours with a custom menu, header image, and background -- then go further with available theme options for light or dark color scheme, custom link colors, and three layout choices. Twenty Eleven comes equipped with a Showcase page template that transforms your front page into a showcase to show off your best content, widget support galore (sidebar, three footer areas, and a Showcase page widget area), and a custom "Ephemera" widget to display your Aside, Link, Quote, or Status posts. Included are styles for print and for the admin editor, support for featured images (as custom header images on posts and pages and as large images on featured "sticky" posts), and special styles for six different post formats.
-Version: 1.2
+Version: 1.3
 License: GNU General Public License
 License URI: license.txt
 Tags: dark, light, white, black, gray, one-column, two-columns, left-sidebar, right-sidebar, fixed-width, flexible-width, custom-background, custom-colors, custom-header, custom-menu, editor-style, featured-image-header, featured-images, full-width-template, microformats, post-formats, rtl-language-support, sticky-post, theme-options, translation-ready
 License: GNU General Public License
 License URI: license.txt
 Tags: dark, light, white, black, gray, one-column, two-columns, left-sidebar, right-sidebar, fixed-width, flexible-width, custom-background, custom-colors, custom-header, custom-menu, editor-style, featured-image-header, featured-images, full-width-template, microformats, post-formats, rtl-language-support, sticky-post, theme-options, translation-ready
@@ -504,7 +504,7 @@ a:hover {
        border-top: 2px solid #bbb;
        padding-bottom: 10px;
        position: relative;
        border-top: 2px solid #bbb;
        padding-bottom: 10px;
        position: relative;
-       z-index: 2;
+       z-index: 9999;
 }
 #site-title {
        margin-right: 270px;
 }
 #site-title {
        margin-right: 270px;
@@ -614,6 +614,8 @@ a:hover {
 #access ul li:hover > ul {
        display: block;
 }
 #access ul li:hover > ul {
        display: block;
 }
+#access .current-menu-item > a,
+#access .current-menu-ancestor > a,
 #access .current_page_item > a,
 #access .current_page_ancestor > a {
        font-weight: bold;
 #access .current_page_item > a,
 #access .current_page_ancestor > a {
        font-weight: bold;
@@ -853,12 +855,15 @@ dl.gallery-item {
        max-width: 97.5%; /* Fluid images for posts, comments, and widgets */
 }
 img[class*="align"],
        max-width: 97.5%; /* Fluid images for posts, comments, and widgets */
 }
 img[class*="align"],
-img[class*="wp-image-"] {
+img[class*="wp-image-"],
+img[class*="attachment-"] {
        height: auto; /* Make sure images with WordPress-added height and width attributes are scaled correctly */
 }
        height: auto; /* Make sure images with WordPress-added height and width attributes are scaled correctly */
 }
-img.size-full {
+img.size-full,
+img.size-large {
        max-width: 97.5%;
        max-width: 97.5%;
-       width: auto; /* Prevent stretching of full-size images with height and width attributes in IE8 */
+       width: auto; /* Prevent stretching of full-size and large-size images with height and width attributes in IE8 */
+       height: auto; /* Make sure images with WordPress-added height and width attributes are scaled correctly */
 }
 .entry-content img.wp-smiley {
        border: none;
 }
 .entry-content img.wp-smiley {
        border: none;
@@ -956,6 +961,13 @@ a:active img[class*="wp-image-"],
        border-color: #ddd;
 }
 
        border-color: #ddd;
 }
 
+/* Make sure embeds and iframes fit their containers */
+embed,
+iframe,
+object {
+       max-width: 100%;
+}
+
 /* Password Protected Posts */
 .post-password-required .entry-header .comments-link {
        margin: 1.625em 0 0;
 /* Password Protected Posts */
 .post-password-required .entry-header .comments-link {
        margin: 1.625em 0 0;
@@ -1059,6 +1071,9 @@ article.format-link .entry-content,
 article.format-status .entry-content {
        padding: 20px 0 0;
 }
 article.format-status .entry-content {
        padding: 20px 0 0;
 }
+article.format-status .entry-content {
+       min-height: 65px;
+}
 .recent-posts .entry-header .entry-format {
        display: none;
 }
 .recent-posts .entry-header .entry-format {
        display: none;
 }
@@ -1703,7 +1718,6 @@ section.recent-posts .other-recent-posts li:after {
        position: relative;
        top: -0.3em;
        text-align: right;
        position: relative;
        top: -0.3em;
        text-align: right;
-       width: 100%;
        z-index: 1;
 }
 #nav-single .nav-previous,
        z-index: 1;
 }
 #nav-single .nav-previous,
@@ -2348,11 +2362,6 @@ p.comment-form-comment {
                margin-right: 0;
                width: auto;
        }
                margin-right: 0;
                width: auto;
        }
-       /* Make sure embeds fit their containers */
-       embed,
-       object {
-               max-width: 100%;
-       }
 
 }
 @media (max-width: 650px) {
 
 }
 @media (max-width: 650px) {
index 0707e186410be7becfca3b60d9e4f4b1381b4324..3899f0ecded006fa59ce2bcc301d2a97ab6ab09a 100644 (file)
@@ -32,9 +32,9 @@ get_header(); ?>
 <?php if ( is_day() ) : ?>
                                <?php printf( __( 'Daily Archives: <span>%s</span>', 'twentyten' ), get_the_date() ); ?>
 <?php elseif ( is_month() ) : ?>
 <?php if ( is_day() ) : ?>
                                <?php printf( __( 'Daily Archives: <span>%s</span>', 'twentyten' ), get_the_date() ); ?>
 <?php elseif ( is_month() ) : ?>
-                               <?php printf( __( 'Monthly Archives: <span>%s</span>', 'twentyten' ), get_the_date( 'F Y' ) ); ?>
+                               <?php printf( __( 'Monthly Archives: <span>%s</span>', 'twentyten' ), get_the_date( _x( 'F Y', 'monthly archives date format', 'twentyten' ) ) ); ?>
 <?php elseif ( is_year() ) : ?>
 <?php elseif ( is_year() ) : ?>
-                               <?php printf( __( 'Yearly Archives: <span>%s</span>', 'twentyten' ), get_the_date( 'Y' ) ); ?>
+                               <?php printf( __( 'Yearly Archives: <span>%s</span>', 'twentyten' ), get_the_date( _x( 'Y', 'yearly archives date format', 'twentyten' ) ) ); ?>
 <?php else : ?>
                                <?php _e( 'Blog Archives', 'twentyten' ); ?>
 <?php endif; ?>
 <?php else : ?>
                                <?php _e( 'Blog Archives', 'twentyten' ); ?>
 <?php endif; ?>
index 2c69a7c50895c8f6e6f60612f32513a89d0f863d..5868d3c18ff757470f3fc2c0d7f56fcc62e04964 100644 (file)
@@ -5,18 +5,16 @@ Theme Name: Twenty Ten
 Used to style the TinyMCE editor.
 */
 html .mceContentBody{
 Used to style the TinyMCE editor.
 */
 html .mceContentBody{
-       direction:rtl;
-       unicode-bidi:embed;
-       float:right;
+       direction: rtl;
+       unicode-bidi: embed;
+       float: right;
+       width: 640px;
 }
 * {
        font-family: Arial, Tahoma, sans-serif;
 }
 /* Text elements */
 }
 * {
        font-family: Arial, Tahoma, sans-serif;
 }
 /* Text elements */
-ul {
-       margin: 0 -18px 18px 0;
-}
-ol {
+ul, ol {
        margin: 0 -18px 18px 0;
 }
 dd {
        margin: 0 -18px 18px 0;
 }
 dd {
@@ -29,28 +27,3 @@ table {
        text-align: right;
        margin: 0 0 24px -1px;
 }
        text-align: right;
        margin: 0 0 24px -1px;
 }
-html .mceContentBody{
-       direction:rtl;
-       unicode-bidi:embed;
-       float:right;
-}
-* {
-       font-family: Arial, Tahoma, sans-serif;
-}
-/* Text elements */
-ul {
-       margin: 0 -18px 18px 0;
-}
-ol {
-       margin: 0 -18px 18px 0;
-}
-dd {
-       margin-right: 0;
-}
-blockquote {
-       font-style: normal;
-}
-table {
-       text-align: right;
-       margin: 0 0 24px -1px;
-}
\ No newline at end of file
index 7d051355e5d72cb6491ec156a0e7223ea834d653..c397b116c2c200bcb0960d485851bc8543288e41 100644 (file)
@@ -47,13 +47,18 @@ hr {
 p {
        margin-bottom: 18px;
 }
 p {
        margin-bottom: 18px;
 }
+
+ul,
+ol {
+       margin: 0 0 18px 1.5em;
+       padding: 0;
+}
+
 ul {
        list-style: square;
 ul {
        list-style: square;
-       margin: 0 0 18px 1.5em;
 }
 ol {
        list-style: decimal;
 }
 ol {
        list-style: decimal;
-       margin: 0 0 18px 1.5em;
 }
 ol ol {
        list-style: upper-alpha;
 }
 ol ol {
        list-style: upper-alpha;
@@ -289,4 +294,4 @@ img.aligncenter {
 }
 .wp-smiley {
        margin: 0;
 }
 .wp-smiley {
        margin: 0;
-}
\ No newline at end of file
+}
index 36f55066f9df0248f3b935abcfd78b5431d51c0d..5fd5d3ef39732b5ea258194cf6522d7b94a86935 100644 (file)
@@ -88,10 +88,10 @@ function twentyten_setup() {
 
        // Make theme available for translation
        // Translations can be filed in the /languages/ directory
 
        // Make theme available for translation
        // Translations can be filed in the /languages/ directory
-       load_theme_textdomain( 'twentyten', TEMPLATEPATH . '/languages' );
+       load_theme_textdomain( 'twentyten', get_template_directory() . '/languages' );
 
        $locale = get_locale();
 
        $locale = get_locale();
-       $locale_file = TEMPLATEPATH . "/languages/$locale.php";
+       $locale_file = get_template_directory() . "/languages/$locale.php";
        if ( is_readable( $locale_file ) )
                require_once( $locale_file );
 
        if ( is_readable( $locale_file ) )
                require_once( $locale_file );
 
@@ -473,7 +473,7 @@ function twentyten_posted_on() {
                ),
                sprintf( '<span class="author vcard"><a class="url fn n" href="%1$s" title="%2$s">%3$s</a></span>',
                        get_author_posts_url( get_the_author_meta( 'ID' ) ),
                ),
                sprintf( '<span class="author vcard"><a class="url fn n" href="%1$s" title="%2$s">%3$s</a></span>',
                        get_author_posts_url( get_the_author_meta( 'ID' ) ),
-                       sprintf( esc_attr__( 'View all posts by %s', 'twentyten' ), get_the_author() ),
+                       esc_attr( sprintf( __( 'View all posts by %s', 'twentyten' ), get_the_author() ) ),
                        get_the_author()
                )
        );
                        get_the_author()
                )
        );
index 1384ef106879d2494930d303ff7a70323ab67c89..314cbab9e3896cd138ebc50c4382fed927647675 100644 (file)
@@ -2,9 +2,9 @@
 # This file is distributed under the same license as the Twenty Ten package.
 msgid ""
 msgstr ""
 # This file is distributed under the same license as the Twenty Ten package.
 msgid ""
 msgstr ""
-"Project-Id-Version: Twenty Ten 1.2\n"
+"Project-Id-Version: Twenty Ten 1.3\n"
 "Report-Msgid-Bugs-To: http://wordpress.org/tag/twentyten\n"
 "Report-Msgid-Bugs-To: http://wordpress.org/tag/twentyten\n"
-"POT-Creation-Date: 2011-06-13 13:27:43+00:00\n"
+"POT-Creation-Date: 2011-12-10 19:27:25+00:00\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -54,7 +54,7 @@ msgstr ""
 msgid "Pages:"
 msgstr ""
 
 msgid "Pages:"
 msgstr ""
 
-#. #-#-#-#-#  twentyten.pot (Twenty Ten 1.2)  #-#-#-#-#
+#. #-#-#-#-#  twentyten.pot (Twenty Ten 1.3)  #-#-#-#-#
 #. Theme URI of the plugin/theme
 #: footer.php:33
 msgid "http://wordpress.org/"
 #. Theme URI of the plugin/theme
 #: footer.php:33
 msgid "http://wordpress.org/"
@@ -372,10 +372,20 @@ msgstr ""
 msgid "Monthly Archives: <span>%s</span>"
 msgstr ""
 
 msgid "Monthly Archives: <span>%s</span>"
 msgstr ""
 
+#: archive.php:35
+msgctxt "monthly archives date format"
+msgid "F Y"
+msgstr ""
+
 #: archive.php:37
 msgid "Yearly Archives: <span>%s</span>"
 msgstr ""
 
 #: archive.php:37
 msgid "Yearly Archives: <span>%s</span>"
 msgstr ""
 
+#: archive.php:37
+msgctxt "yearly archives date format"
+msgid "Y"
+msgstr ""
+
 #: archive.php:39
 msgid "Blog Archives"
 msgstr ""
 #: archive.php:39
 msgid "Blog Archives"
 msgstr ""
index 7368200ab266321dd460d16b8c4daf980cc6122d..defa104053e0552b8315dca463d23cddff59c541 100644 (file)
@@ -18,7 +18,7 @@
 <?php if ( have_posts() ) while ( have_posts() ) : the_post(); ?>
 
                                <?php if ( ! empty( $post->post_parent ) ) : ?>
 <?php if ( have_posts() ) while ( have_posts() ) : the_post(); ?>
 
                                <?php if ( ! empty( $post->post_parent ) ) : ?>
-                                       <p class="page-title"><a href="<?php echo get_permalink( $post->post_parent ); ?>" title="<?php esc_attr( printf( __( 'Return to %s', 'twentyten' ), get_the_title( $post->post_parent ) ) ); ?>" rel="gallery"><?php
+                                       <p class="page-title"><a href="<?php echo get_permalink( $post->post_parent ); ?>" title="<?php echo esc_attr( sprintf( __( 'Return to %s', 'twentyten' ), strip_tags( get_the_title( $post->post_parent ) ) ) ); ?>" rel="gallery"><?php
                                                /* translators: %s - title of parent post */
                                                printf( __( '<span class="meta-nav">&larr;</span> %s', 'twentyten' ), get_the_title( $post->post_parent ) );
                                        ?></a></p>
                                                /* translators: %s - title of parent post */
                                                printf( __( '<span class="meta-nav">&larr;</span> %s', 'twentyten' ), get_the_title( $post->post_parent ) );
                                        ?></a></p>
@@ -33,7 +33,7 @@
                                                                'meta-prep meta-prep-author',
                                                                sprintf( '<span class="author vcard"><a class="url fn n" href="%1$s" title="%2$s" rel="author">%3$s</a></span>',
                                                                        get_author_posts_url( get_the_author_meta( 'ID' ) ),
                                                                'meta-prep meta-prep-author',
                                                                sprintf( '<span class="author vcard"><a class="url fn n" href="%1$s" title="%2$s" rel="author">%3$s</a></span>',
                                                                        get_author_posts_url( get_the_author_meta( 'ID' ) ),
-                                                                       sprintf( esc_attr__( 'View all posts by %s', 'twentyten' ), get_the_author() ),
+                                                                       esc_attr( sprintf( __( 'View all posts by %s', 'twentyten' ), get_the_author() ) ),
                                                                        get_the_author()
                                                                )
                                                        );
                                                                        get_the_author()
                                                                )
                                                        );
@@ -85,7 +85,7 @@
                $next_attachment_url = wp_get_attachment_url();
        }
 ?>
                $next_attachment_url = wp_get_attachment_url();
        }
 ?>
-                                               <p class="attachment"><a href="<?php echo $next_attachment_url; ?>" title="<?php echo esc_attr( get_the_title() ); ?>" rel="attachment"><?php
+                                               <p class="attachment"><a href="<?php echo $next_attachment_url; ?>" title="<?php the_title_attribute(); ?>" rel="attachment"><?php
                                                        $attachment_width  = apply_filters( 'twentyten_attachment_size', 900 );
                                                        $attachment_height = apply_filters( 'twentyten_attachment_height', 900 );
                                                        echo wp_get_attachment_image( $post->ID, array( $attachment_width, $attachment_height ) ); // filterable image width with, essentially, no limit for image height.
                                                        $attachment_width  = apply_filters( 'twentyten_attachment_size', 900 );
                                                        $attachment_height = apply_filters( 'twentyten_attachment_height', 900 );
                                                        echo wp_get_attachment_image( $post->ID, array( $attachment_width, $attachment_height ) ); // filterable image width with, essentially, no limit for image height.
@@ -96,7 +96,7 @@
                                                        <div class="nav-next"><?php next_image_link( false ); ?></div>
                                                </div><!-- #nav-below -->
 <?php else : ?>
                                                        <div class="nav-next"><?php next_image_link( false ); ?></div>
                                                </div><!-- #nav-below -->
 <?php else : ?>
-                                               <a href="<?php echo wp_get_attachment_url(); ?>" title="<?php echo esc_attr( get_the_title() ); ?>" rel="attachment"><?php echo basename( get_permalink() ); ?></a>
+                                               <a href="<?php echo wp_get_attachment_url(); ?>" title="<?php the_title_attribute(); ?>" rel="attachment"><?php echo basename( get_permalink() ); ?></a>
 <?php endif; ?>
                                                </div><!-- .entry-attachment -->
                                                <div class="entry-caption"><?php if ( !empty( $post->post_excerpt ) ) the_excerpt(); ?></div>
 <?php endif; ?>
                                                </div><!-- .entry-attachment -->
                                                <div class="entry-caption"><?php if ( !empty( $post->post_excerpt ) ) the_excerpt(); ?></div>
index c12d47b2c1b945bc8c21091717203c7ba454b2ef..4d89a6a0dc60077e71f9bbad407fad8bef7f9d39 100644 (file)
@@ -40,7 +40,7 @@
                                                        <?php echo get_avatar( get_the_author_meta( 'user_email' ), apply_filters( 'twentyten_author_bio_avatar_size', 60 ) ); ?>
                                                </div><!-- #author-avatar -->
                                                <div id="author-description">
                                                        <?php echo get_avatar( get_the_author_meta( 'user_email' ), apply_filters( 'twentyten_author_bio_avatar_size', 60 ) ); ?>
                                                </div><!-- #author-avatar -->
                                                <div id="author-description">
-                                                       <h2><?php printf( esc_attr__( 'About %s', 'twentyten' ), get_the_author() ); ?></h2>
+                                                       <h2><?php printf( __( 'About %s', 'twentyten' ), get_the_author() ); ?></h2>
                                                        <?php the_author_meta( 'description' ); ?>
                                                        <div id="author-link">
                                                                <a href="<?php echo get_author_posts_url( get_the_author_meta( 'ID' ) ); ?>" rel="author">
                                                        <?php the_author_meta( 'description' ); ?>
                                                        <div id="author-link">
                                                                <a href="<?php echo get_author_posts_url( get_the_author_meta( 'ID' ) ); ?>" rel="author">
index ee5d61d47a38e96881ad84f4d8ecf6daf5fe74a9..27d92edefaeb019ebc6f615c9333d7d97ae95246 100644 (file)
@@ -3,7 +3,7 @@ Theme Name: Twenty Ten
 Theme URI: http://wordpress.org/
 Description: The 2010 theme for WordPress is stylish, customizable, simple, and readable -- make it yours with a custom menu, header image, and background. Twenty Ten supports six widgetized areas (two in the sidebar, four in the footer) and featured images (thumbnails for gallery posts and custom header images for posts and pages). It includes stylesheets for print and the admin Visual Editor, special styles for posts in the "Asides" and "Gallery" categories, and has an optional one-column page template that removes the sidebar.
 Author: the WordPress team
 Theme URI: http://wordpress.org/
 Description: The 2010 theme for WordPress is stylish, customizable, simple, and readable -- make it yours with a custom menu, header image, and background. Twenty Ten supports six widgetized areas (two in the sidebar, four in the footer) and featured images (thumbnails for gallery posts and custom header images for posts and pages). It includes stylesheets for print and the admin Visual Editor, special styles for posts in the "Asides" and "Gallery" categories, and has an optional one-column page template that removes the sidebar.
 Author: the WordPress team
-Version: 1.2
+Version: 1.3
 License: GNU General Public License
 License URI: license.txt
 Tags: black, blue, white, two-columns, fixed-width, custom-header, custom-background, threaded-comments, sticky-post, translation-ready, microformats, rtl-language-support, editor-style, custom-menu
 License: GNU General Public License
 License URI: license.txt
 Tags: black, blue, white, two-columns, fixed-width, custom-header, custom-background, threaded-comments, sticky-post, translation-ready, microformats, rtl-language-support, editor-style, custom-menu
@@ -285,6 +285,7 @@ pre {
        color: #222;
        line-height: 18px;
        margin-bottom: 18px;
        color: #222;
        line-height: 18px;
        margin-bottom: 18px;
+       overflow: auto;
        padding: 1.5em;
 }
 abbr,
        padding: 1.5em;
 }
 abbr,
index 19427c5c427c6791623a64399023dc76bc24d235..a84c4635df89f9be5d5172370a826b9c8f96031e 100644 (file)
@@ -26,6 +26,24 @@ if ( !defined('ABSPATH') ) {
        require_once('./wp-load.php');
 }
 
        require_once('./wp-load.php');
 }
 
+// Uncached doing_cron transient fetch
+function _get_cron_lock() {
+       global $_wp_using_ext_object_cache, $wpdb;
+
+       $value = 0;
+       if ( $_wp_using_ext_object_cache ) {
+               // Skip local cache and force refetch of doing_cron transient in case
+               // another processs updated the cache
+               $value = wp_cache_get( 'doing_cron', 'transient', true );
+       } else {
+               $row = $wpdb->get_row( $wpdb->prepare( "SELECT option_value FROM $wpdb->options WHERE option_name = %s LIMIT 1", '_transient_doing_cron' ) );
+               if ( is_object( $row ) )
+                       $value = $row->option_value;
+       }
+
+       return $value;
+}
+
 if ( false === $crons = _get_cron_array() )
        die();
 
 if ( false === $crons = _get_cron_array() )
        die();
 
@@ -35,26 +53,52 @@ $local_time = time();
 if ( isset($keys[0]) && $keys[0] > $local_time )
        die();
 
 if ( isset($keys[0]) && $keys[0] > $local_time )
        die();
 
-foreach ($crons as $timestamp => $cronhooks) {
+$doing_cron_transient = get_transient( 'doing_cron');
+
+// Use global $doing_wp_cron lock otherwise use the GET lock. If no lock, trying grabbing a new lock.
+if ( empty( $doing_wp_cron ) ) {
+       if ( empty( $_GET[ 'doing_wp_cron' ] ) ) {
+               // Called from external script/job. Try setting a lock.
+               if ( $doing_cron_transient && ( $doing_cron_transient + WP_CRON_LOCK_TIMEOUT > $local_time ) )
+                       return;
+               $doing_cron_transient = $doing_wp_cron = time();
+               set_transient( 'doing_cron', $doing_wp_cron );
+       } else {
+               $doing_wp_cron = $_GET[ 'doing_wp_cron' ];
+       }
+}
+
+// Check lock
+if ( $doing_cron_transient != $doing_wp_cron )
+       return;
+
+foreach ( $crons as $timestamp => $cronhooks ) {
        if ( $timestamp > $local_time )
                break;
 
        if ( $timestamp > $local_time )
                break;
 
-       foreach ($cronhooks as $hook => $keys) {
+       foreach ( $cronhooks as $hook => $keys ) {
 
 
-               foreach ($keys as $k => $v) {
+               foreach ( $keys as $k => $v ) {
 
                        $schedule = $v['schedule'];
 
 
                        $schedule = $v['schedule'];
 
-                       if ($schedule != false) {
+                       if ( $schedule != false ) {
                                $new_args = array($timestamp, $schedule, $hook, $v['args']);
                                call_user_func_array('wp_reschedule_event', $new_args);
                        }
 
                                $new_args = array($timestamp, $schedule, $hook, $v['args']);
                                call_user_func_array('wp_reschedule_event', $new_args);
                        }
 
-                       wp_unschedule_event($timestamp, $hook, $v['args']);
+                       wp_unschedule_event( $timestamp, $hook, $v['args'] );
+
+                       do_action_ref_array( $hook, $v['args'] );
 
 
-                       do_action_ref_array($hook, $v['args']);
+                       // If the hook ran too long and another cron process stole the lock, quit.
+                       if ( _get_cron_lock() != $doing_wp_cron )
+                               return;
                }
        }
 }
 
                }
        }
 }
 
+if ( _get_cron_lock() == $doing_wp_cron )
+       delete_transient( 'doing_cron' );
+
 die();
 die();
diff --git a/wp-feed.php b/wp-feed.php
deleted file mode 100644 (file)
index afce8cd..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-/**
- * Redirects to the default feed
- * This file is deprecated and only exists for backwards compatibility
- *
- * @package WordPress
- */
-
-require( './wp-load.php' );
-wp_redirect( get_bloginfo( get_default_feed() . '_url' ), 301 );
-exit;
-?>
index 99caaa7f9f40c6c61941dbcf9465da1098f79a12..ff959bb72e5201e3a4d3f6e6a9930d5b60dcd561 100644 (file)
@@ -55,8 +55,6 @@ function wp_admin_bar_render() {
        if ( ! is_admin_bar_showing() || ! is_object( $wp_admin_bar ) )
                return false;
 
        if ( ! is_admin_bar_showing() || ! is_object( $wp_admin_bar ) )
                return false;
 
-       $wp_admin_bar->load_user_locale_translations();
-
        do_action_ref_array( 'admin_bar_menu', array( &$wp_admin_bar ) );
 
        do_action( 'wp_before_admin_bar_render' );
        do_action_ref_array( 'admin_bar_menu', array( &$wp_admin_bar ) );
 
        do_action( 'wp_before_admin_bar_render' );
@@ -64,50 +62,204 @@ function wp_admin_bar_render() {
        $wp_admin_bar->render();
 
        do_action( 'wp_after_admin_bar_render' );
        $wp_admin_bar->render();
 
        do_action( 'wp_after_admin_bar_render' );
-
-       $wp_admin_bar->unload_user_locale_translations();
 }
 add_action( 'wp_footer', 'wp_admin_bar_render', 1000 );
 add_action( 'admin_footer', 'wp_admin_bar_render', 1000 );
 
 /**
 }
 add_action( 'wp_footer', 'wp_admin_bar_render', 1000 );
 add_action( 'admin_footer', 'wp_admin_bar_render', 1000 );
 
 /**
- * Add the "My Account" menu and all submenus.
+ * Add the WordPress logo menu.
+ *
+ * @since 3.3.0
+ */
+function wp_admin_bar_wp_menu( $wp_admin_bar ) {
+       $wp_admin_bar->add_menu( array(
+               'id'    => 'wp-logo',
+               'title' => '<span class="ab-icon"></span>',
+               'href'  => admin_url( 'about.php' ),
+               'meta'  => array(
+                       'title' => __('About WordPress'),
+               ),
+       ) );
+
+       if ( is_user_logged_in() ) {
+               // Add "About WordPress" link
+               $wp_admin_bar->add_menu( array(
+                       'parent' => 'wp-logo',
+                       'id'     => 'about',
+                       'title'  => __('About WordPress'),
+                       'href'   => admin_url('about.php'),
+               ) );
+       }
+
+       // Add WordPress.org link
+       $wp_admin_bar->add_menu( array(
+               'parent'    => 'wp-logo-external',
+               'id'        => 'wporg',
+               'title'     => __('WordPress.org'),
+               'href'      => __('http://wordpress.org'),
+       ) );
+
+       // Add codex link
+       $wp_admin_bar->add_menu( array(
+               'parent'    => 'wp-logo-external',
+               'id'        => 'documentation',
+               'title'     => __('Documentation'),
+               'href'      => __('http://codex.wordpress.org'),
+       ) );
+
+       // Add forums link
+       $wp_admin_bar->add_menu( array(
+               'parent'    => 'wp-logo-external',
+               'id'        => 'support-forums',
+               'title'     => __('Support Forums'),
+               'href'      => __('http://wordpress.org/support/'),
+       ) );
+
+       // Add feedback link
+       $wp_admin_bar->add_menu( array(
+               'parent'    => 'wp-logo-external',
+               'id'        => 'feedback',
+               'title'     => __('Feedback'),
+               'href'      => __('http://wordpress.org/support/forum/requests-and-feedback'),
+       ) );
+}
+
+/**
+ * Add the "My Account" item.
+ *
+ * @since 3.3.0
+ */
+function wp_admin_bar_my_account_item( $wp_admin_bar ) {
+       $user_id      = get_current_user_id();
+       $current_user = wp_get_current_user();
+       $profile_url  = get_edit_profile_url( $user_id );
+
+       if ( ! $user_id )
+               return;
+
+       $avatar = get_avatar( $user_id, 16 );
+       $howdy  = sprintf( __('Howdy, %1$s'), $current_user->display_name );
+       $class  = empty( $avatar ) ? '' : 'with-avatar';
+
+       $wp_admin_bar->add_menu( array(
+               'id'        => 'my-account',
+               'parent'    => 'top-secondary',
+               'title'     => $howdy . $avatar,
+               'href'      => $profile_url,
+               'meta'      => array(
+                       'class'     => $class,
+                       'title'     => __('My Account'),
+               ),
+       ) );
+}
+
+/**
+ * Add the "My Account" submenu items.
  *
  * @since 3.1.0
  */
 function wp_admin_bar_my_account_menu( $wp_admin_bar ) {
  *
  * @since 3.1.0
  */
 function wp_admin_bar_my_account_menu( $wp_admin_bar ) {
-       global $user_identity;
+       $user_id      = get_current_user_id();
+       $current_user = wp_get_current_user();
+       $profile_url  = get_edit_profile_url( $user_id );
+
+       if ( ! $user_id )
+               return;
 
 
-       $user_id = get_current_user_id();
+       $wp_admin_bar->add_group( array(
+               'parent' => 'my-account',
+               'id'     => 'user-actions',
+       ) );
 
 
-       if ( 0 != $user_id ) {
-               /* Add the 'My Account' menu */
-               $avatar = get_avatar( get_current_user_id(), 16 );
-               $id = ( ! empty( $avatar ) ) ? 'my-account-with-avatar' : 'my-account';
+       $user_info  = get_avatar( $user_id, 64 );
+       $user_info .= "<span class='display-name'>{$current_user->display_name}</span>";
 
 
-               $wp_admin_bar->add_menu( array( 'id' => $id, 'title' => $avatar . $user_identity,  'href' => get_edit_profile_url( $user_id ) ) );
+       if ( $current_user->display_name !== $current_user->user_nicename )
+               $user_info .= "<span class='username'>{$current_user->user_nicename}</span>";
 
 
-               /* Add the "My Account" sub menus */
-               $wp_admin_bar->add_menu( array( 'id' => 'edit-profile', 'parent' => $id, 'title' => __( 'Edit My Profile' ), 'href' => get_edit_profile_url( $user_id ) ) );
-               $wp_admin_bar->add_menu( array( 'id' => 'logout', 'parent' => $id, 'title' => __( 'Log Out' ), 'href' => wp_logout_url() ) );
-       }
+       $wp_admin_bar->add_menu( array(
+               'parent' => 'user-actions',
+               'id'     => 'user-info',
+               'title'  => $user_info,
+               'href'   => $profile_url,
+               'meta'   => array(
+                       'tabindex' => -1,
+               ),
+       ) );
+       $wp_admin_bar->add_menu( array(
+               'parent' => 'user-actions',
+               'id'     => 'edit-profile',
+               'title'  => __( 'Edit My Profile' ),
+               'href' => $profile_url,
+       ) );
+       $wp_admin_bar->add_menu( array(
+               'parent' => 'user-actions',
+               'id'     => 'logout',
+               'title'  => __( 'Log Out' ),
+               'href'   => wp_logout_url(),
+       ) );
 }
 
 /**
 }
 
 /**
- * Add the "Dashboard"/"Visit Site" menu.
+ * Add the "Site Name" menu.
  *
  *
- * @since 3.2.0
+ * @since 3.3.0
  */
  */
-function wp_admin_bar_dashboard_view_site_menu( $wp_admin_bar ) {
-       $user_id = get_current_user_id();
-
-       if ( 0 != $user_id ) {
-               if ( is_admin() )
-                       $wp_admin_bar->add_menu( array( 'id' => 'view-site', 'title' => __( 'Visit Site' ), 'href' => home_url() ) );
-               elseif ( is_multisite() )
-                       $wp_admin_bar->add_menu( array( 'id' => 'dashboard', 'title' => __( 'Dashboard' ), 'href' => get_dashboard_url( $user_id ) ) );
-               else
-                       $wp_admin_bar->add_menu( array( 'id' => 'dashboard', 'title' => __( 'Dashboard' ), 'href' => admin_url() ) );
+function wp_admin_bar_site_menu( $wp_admin_bar ) {
+       global $current_site;
+
+       // Don't show for logged out users.
+       if ( ! is_user_logged_in() )
+               return;
+
+       // Show only when the user is a member of this site, or they're a super admin.
+       if ( ! is_user_member_of_blog() && ! is_super_admin() )
+               return;
+
+       $blogname = get_bloginfo('name');
+
+       if ( empty( $blogname ) )
+               $blogname = preg_replace( '#^(https?://)?(www.)?#', '', get_home_url() );
+
+       if ( is_network_admin() ) {
+               $blogname = sprintf( __('Network Admin: %s'), esc_html( $current_site->site_name ) );
+       } elseif ( is_user_admin() ) {
+               $blogname = sprintf( __('Global Dashboard: %s'), esc_html( $current_site->site_name ) );
+       }
+
+       $title = wp_html_excerpt( $blogname, 40 );
+       if ( $title != $blogname )
+               $title = trim( $title ) . '&hellip;';
+
+       $wp_admin_bar->add_menu( array(
+               'id'    => 'site-name',
+               'title' => $title,
+               'href'  => is_admin() ? home_url( '/' ) : admin_url(),
+       ) );
+
+       // Create submenu items.
+
+       if ( is_admin() ) {
+               // Add an option to visit the site.
+               $wp_admin_bar->add_menu( array(
+                       'parent' => 'site-name',
+                       'id'     => 'view-site',
+                       'title'  => __( 'Visit Site' ),
+                       'href'   => home_url( '/' ),
+               ) );
+
+       // We're on the front end, print a copy of the admin menu.
+       } else {
+               // Add the dashboard item.
+               $wp_admin_bar->add_menu( array(
+                       'parent' => 'site-name',
+                       'id'     => 'dashboard',
+                       'title'  => __( 'Dashboard' ),
+                       'href'   => admin_url(),
+               ) );
+
+               // Add the appearance submenu items.
+               wp_admin_bar_appearance_menu( $wp_admin_bar );
        }
 }
 
        }
 }
 
@@ -119,30 +271,113 @@ function wp_admin_bar_dashboard_view_site_menu( $wp_admin_bar ) {
 function wp_admin_bar_my_sites_menu( $wp_admin_bar ) {
        global $wpdb;
 
 function wp_admin_bar_my_sites_menu( $wp_admin_bar ) {
        global $wpdb;
 
-       /* Add the 'My Sites' menu if the user has more than one site. */
-       if ( count( $wp_admin_bar->user->blogs ) <= 1 )
+       // Don't show for logged out users or single site mode.
+       if ( ! is_user_logged_in() || ! is_multisite() )
+               return;
+
+       // Show only when the user has at least one site, or they're a super admin.
+       if ( count( $wp_admin_bar->user->blogs ) < 1 && ! is_super_admin() )
                return;
 
                return;
 
-       $wp_admin_bar->add_menu( array(  'id' => 'my-blogs', 'title' => __( 'My Sites' ),  'href' => admin_url( 'my-sites.php' ) ) );
+       $wp_admin_bar->add_menu( array(
+               'id'    => 'my-sites',
+               'title' => __( 'My Sites' ),
+               'href'  => admin_url( 'my-sites.php' ),
+       ) );
 
 
-       $default = includes_url('images/wpmini-blue.png');
+       if ( is_super_admin() ) {
+               $wp_admin_bar->add_group( array(
+                       'parent' => 'my-sites',
+                       'id'     => 'my-sites-super-admin',
+               ) );
+
+               $wp_admin_bar->add_menu( array(
+                       'parent' => 'my-sites-super-admin',
+                       'id'     => 'network-admin',
+                       'title'  => __('Network Admin'),
+                       'href'   => network_admin_url(),
+               ) );
+
+               $wp_admin_bar->add_menu( array(
+                       'parent' => 'network-admin',
+                       'id'     => 'network-admin-d',
+                       'title'  => __( 'Dashboard' ),
+                       'href'   => network_admin_url(),
+               ) );
+               $wp_admin_bar->add_menu( array(
+                       'parent' => 'network-admin',
+                       'id'     => 'network-admin-s',
+                       'title'  => __( 'Sites' ),
+                       'href'   => network_admin_url( 'sites.php' ),
+               ) );
+               $wp_admin_bar->add_menu( array(
+                       'parent' => 'network-admin',
+                       'id'     => 'network-admin-u',
+                       'title'  => __( 'Users' ),
+                       'href'   => network_admin_url( 'users.php' ),
+               ) );
+               $wp_admin_bar->add_menu( array(
+                       'parent' => 'network-admin',
+                       'id'     => 'network-admin-v',
+                       'title'  => __( 'Visit Network' ),
+                       'href'   => network_home_url(),
+               ) );
+       }
+
+       // Add site links
+       $wp_admin_bar->add_group( array(
+               'parent' => 'my-sites',
+               'id'     => 'my-sites-list',
+               'meta'   => array(
+                       'class' => is_super_admin() ? 'ab-sub-secondary' : '',
+               ),
+       ) );
+
+       $blue_wp_logo_url = includes_url('images/wpmini-blue.png');
 
        foreach ( (array) $wp_admin_bar->user->blogs as $blog ) {
                // @todo Replace with some favicon lookup.
 
        foreach ( (array) $wp_admin_bar->user->blogs as $blog ) {
                // @todo Replace with some favicon lookup.
-               //$blavatar = '<img src="' . esc_url( blavatar_url( blavatar_domain( $blog->siteurl ), 'img', 16, $default ) ) . '" alt="Blavatar" width="16" height="16" />';
-               $blavatar = '<img src="' . esc_url($default) . '" alt="' . esc_attr__( 'Blavatar' ) . '" width="16" height="16" class="blavatar"/>';
+               //$blavatar = '<img src="' . esc_url( blavatar_url( blavatar_domain( $blog->siteurl ), 'img', 16, $blue_wp_logo_url ) ) . '" alt="Blavatar" width="16" height="16" />';
+               $blavatar = '<img src="' . esc_url($blue_wp_logo_url) . '" alt="' . esc_attr__( 'Blavatar' ) . '" width="16" height="16" class="blavatar"/>';
 
                $blogname = empty( $blog->blogname ) ? $blog->domain : $blog->blogname;
 
                $blogname = empty( $blog->blogname ) ? $blog->domain : $blog->blogname;
-
-               $wp_admin_bar->add_menu( array( 'parent' => 'my-blogs', 'id' => 'blog-' . $blog->userblog_id, 'title' => $blavatar . $blogname,  'href' => get_admin_url($blog->userblog_id) ) );
-               $wp_admin_bar->add_menu( array( 'parent' => 'blog-' . $blog->userblog_id, 'id' => 'blog-' . $blog->userblog_id . '-d', 'title' => __( 'Dashboard' ), 'href' => get_admin_url($blog->userblog_id) ) );
+               $menu_id  = 'blog-' . $blog->userblog_id;
+
+               $wp_admin_bar->add_menu( array(
+                       'parent'    => 'my-sites-list',
+                       'id'        => $menu_id,
+                       'title'     => $blavatar . $blogname,
+                       'href'      => get_admin_url( $blog->userblog_id ),
+               ) );
+
+               $wp_admin_bar->add_menu( array(
+                       'parent' => $menu_id,
+                       'id'     => $menu_id . '-d',
+                       'title'  => __( 'Dashboard' ),
+                       'href'   => get_admin_url( $blog->userblog_id ),
+               ) );
 
                if ( current_user_can_for_blog( $blog->userblog_id, 'edit_posts' ) ) {
 
                if ( current_user_can_for_blog( $blog->userblog_id, 'edit_posts' ) ) {
-                       $wp_admin_bar->add_menu( array( 'parent' => 'blog-' . $blog->userblog_id, 'id' => 'blog-' . $blog->userblog_id . '-n', 'title' => __( 'New Post' ), 'href' => get_admin_url($blog->userblog_id, 'post-new.php') ) );
-                       $wp_admin_bar->add_menu( array( 'parent' => 'blog-' . $blog->userblog_id, 'id' => 'blog-' . $blog->userblog_id . '-c', 'title' => __( 'Manage Comments' ), 'href' => get_admin_url($blog->userblog_id, 'edit-comments.php') ) );
+                       $wp_admin_bar->add_menu( array(
+                               'parent' => $menu_id,
+                               'id'     => $menu_id . '-n',
+                               'title'  => __( 'New Post' ),
+                               'href'   => get_admin_url( $blog->userblog_id, 'post-new.php' ),
+                       ) );
+                       $wp_admin_bar->add_menu( array(
+                               'parent' => $menu_id,
+                               'id'     => $menu_id . '-c',
+                               'title'  => __( 'Manage Comments' ),
+                               'href'   => get_admin_url( $blog->userblog_id, 'edit-comments.php' ),
+                       ) );
                }
 
                }
 
-               $wp_admin_bar->add_menu( array( 'parent' => 'blog-' . $blog->userblog_id, 'id' => 'blog-' . $blog->userblog_id . '-v', 'title' => __( 'Visit Site' ), 'href' => get_home_url($blog->userblog_id) ) );
+               $wp_admin_bar->add_menu( array(
+                       'parent' => $menu_id,
+                       'id'     => $menu_id . '-v',
+                       'title'  => __( 'Visit Site' ),
+                       'href'   => get_home_url( $blog->userblog_id, '/' ),
+               ) );
        }
 }
 
        }
 }
 
@@ -174,7 +409,7 @@ function wp_admin_bar_shortlink_menu( $wp_admin_bar ) {
  * @since 3.1.0
  */
 function wp_admin_bar_edit_menu( $wp_admin_bar ) {
  * @since 3.1.0
  */
 function wp_admin_bar_edit_menu( $wp_admin_bar ) {
-       global $post, $tag;
+       global $post, $tag, $wp_the_query;
 
        if ( is_admin() ) {
                $current_screen = get_current_screen();
 
        if ( is_admin() ) {
                $current_screen = get_current_screen();
@@ -202,9 +437,9 @@ function wp_admin_bar_edit_menu( $wp_admin_bar ) {
                        ) );
                }
        } else {
                        ) );
                }
        } else {
-               $current_object = get_queried_object();
+               $current_object = $wp_the_query->get_queried_object();
 
 
-               if ( empty($current_object) )
+               if ( empty( $current_object ) )
                        return;
 
                if ( ! empty( $current_object->post_type )
                        return;
 
                if ( ! empty( $current_object->post_type )
@@ -238,35 +473,60 @@ function wp_admin_bar_edit_menu( $wp_admin_bar ) {
  */
 function wp_admin_bar_new_content_menu( $wp_admin_bar ) {
        $actions = array();
  */
 function wp_admin_bar_new_content_menu( $wp_admin_bar ) {
        $actions = array();
-       foreach ( (array) get_post_types( array( 'show_in_admin_bar' => true ), 'objects' ) as $ptype_obj ) {
-               if ( ! current_user_can( $ptype_obj->cap->edit_posts ) )
-                       continue;
 
 
-               $actions[ 'post-new.php?post_type=' . $ptype_obj->name ] = array( $ptype_obj->labels->name_admin_bar, $ptype_obj->cap->edit_posts, 'new-' . $ptype_obj->name );
+       $cpts = (array) get_post_types( array( 'show_in_admin_bar' => true ), 'objects' );
+
+       if ( isset( $cpts['post'] ) && current_user_can( $cpts['post']->cap->edit_posts ) ) {
+               $actions[ 'post-new.php' ] = array( $cpts['post']->labels->name_admin_bar, 'new-post' );
+               unset( $cpts['post'] );
        }
 
        if ( current_user_can( 'upload_files' ) )
        }
 
        if ( current_user_can( 'upload_files' ) )
-               $actions[ 'media-new.php' ] = array( _x( 'Media', 'add new from admin bar' ), 'upload_files', 'new-media' );
+               $actions[ 'media-new.php' ] = array( _x( 'Media', 'add new from admin bar' ), 'new-media' );
 
        if ( current_user_can( 'manage_links' ) )
 
        if ( current_user_can( 'manage_links' ) )
-               $actions[ 'link-add.php' ] = array( _x( 'Link', 'add new from admin bar' ), 'manage_links', 'new-link' );
+               $actions[ 'link-add.php' ] = array( _x( 'Link', 'add new from admin bar' ), 'new-link' );
 
 
-       if ( current_user_can( 'create_users' ) || current_user_can( 'promote_users' ) )
-               $actions[ 'user-new.php' ] = array( _x( 'User', 'add new from admin bar' ), 'create_users', 'new-user' );
+       if ( isset( $cpts['page'] ) && current_user_can( $cpts['page']->cap->edit_posts ) ) {
+               $actions[ 'post-new.php?post_type=page' ] = array( $cpts['page']->labels->name_admin_bar, 'new-page' );
+               unset( $cpts['page'] );
+       }
 
 
-       if ( ! is_multisite() && current_user_can( 'install_themes' ) )
-               $actions[ 'theme-install.php' ] = array( _x( 'Theme', 'add new from admin bar' ), 'install_themes', 'new-theme' );
+       // Add any additional custom post types.
+       foreach ( $cpts as $cpt ) {
+               if ( ! current_user_can( $cpt->cap->edit_posts ) )
+                       continue;
 
 
-       if ( ! is_multisite() && current_user_can( 'install_plugins' ) )
-               $actions[ 'plugin-install.php' ] = array( _x( 'Plugin', 'add new from admin bar' ), 'install_plugins', 'new-plugin' );
+               $key = 'post-new.php?post_type=' . $cpt->name;
+               $actions[ $key ] = array( $cpt->labels->name_admin_bar, 'new-' . $cpt->name );
+       }
 
 
-       if ( empty( $actions ) )
+       if ( current_user_can( 'create_users' ) || current_user_can( 'promote_users' ) )
+               $actions[ 'user-new.php' ] = array( _x( 'User', 'add new from admin bar' ), 'new-user' );
+
+       if ( ! $actions )
                return;
 
                return;
 
-       $wp_admin_bar->add_menu( array( 'id' => 'new-content', 'title' => _x( 'Add New', 'admin bar menu group label' ), 'href' => admin_url( array_shift( array_keys( $actions ) ) ) ) );
+       $title = '<span class="ab-icon"></span><span class="ab-label">' . _x( 'New', 'admin bar menu group label' ) . '</span>';
+
+       $wp_admin_bar->add_menu( array(
+               'id'    => 'new-content',
+               'title' => $title,
+               'href'  => admin_url( current( array_keys( $actions ) ) ),
+               'meta'  => array(
+                       'title' => _x( 'Add New', 'admin bar menu group label' ),
+               ),
+       ) );
 
        foreach ( $actions as $link => $action ) {
 
        foreach ( $actions as $link => $action ) {
-               $wp_admin_bar->add_menu( array( 'parent' => 'new-content', 'id' => $action[2], 'title' => $action[0], 'href' => admin_url($link) ) );
+               list( $title, $id ) = $action;
+
+               $wp_admin_bar->add_menu( array(
+                       'parent'    => 'new-content',
+                       'id'        => $id,
+                       'title'     => $title,
+                       'href'      => admin_url( $link )
+               ) );
        }
 }
 
        }
 }
 
@@ -281,29 +541,33 @@ function wp_admin_bar_comments_menu( $wp_admin_bar ) {
 
        $awaiting_mod = wp_count_comments();
        $awaiting_mod = $awaiting_mod->moderated;
 
        $awaiting_mod = wp_count_comments();
        $awaiting_mod = $awaiting_mod->moderated;
+       $awaiting_title = esc_attr( sprintf( _n( '%s comment awaiting moderation', '%s comments awaiting moderation', $awaiting_mod ), number_format_i18n( $awaiting_mod ) ) );
+
+       $icon  = '<span class="ab-icon"></span>';
+       $title = '<span id="ab-awaiting-mod" class="ab-label awaiting-mod pending-count count-' . $awaiting_mod . '">' . number_format_i18n( $awaiting_mod ) . '</span>';
 
 
-       $awaiting_mod = $awaiting_mod ? "<span id='ab-awaiting-mod' class='pending-count'>" . number_format_i18n( $awaiting_mod ) . "</span>" : '';
-       $wp_admin_bar->add_menu( array( 'id' => 'comments', 'title' => sprintf( __('Comments %s'), $awaiting_mod ), 'href' => admin_url('edit-comments.php') ) );
+       $wp_admin_bar->add_menu( array(
+               'id'    => 'comments',
+               'title' => $icon . $title,
+               'href'  => admin_url('edit-comments.php'),
+               'meta'  => array( 'title' => $awaiting_title ),
+       ) );
 }
 
 /**
 }
 
 /**
- * Add "Appearance" menu with widget and nav menu submenu.
+ * Add appearance submenu items to the "Site Name" menu.
  *
  * @since 3.1.0
  */
 function wp_admin_bar_appearance_menu( $wp_admin_bar ) {
  *
  * @since 3.1.0
  */
 function wp_admin_bar_appearance_menu( $wp_admin_bar ) {
-       // You can have edit_theme_options but not switch_themes.
-       if ( ! current_user_can('switch_themes') && ! current_user_can( 'edit_theme_options' ) )
-               return;
+       $wp_admin_bar->add_group( array( 'parent' => 'site-name', 'id' => 'appearance' ) );
 
 
-       $wp_admin_bar->add_menu( array( 'id' => 'appearance', 'title' => __('Appearance'), 'href' => admin_url('themes.php') ) );
+       if ( current_user_can( 'switch_themes' ) || current_user_can( 'edit_theme_options' ) )
+               $wp_admin_bar->add_menu( array( 'parent' => 'appearance', 'id' => 'themes', 'title' => __('Themes'), 'href' => admin_url('themes.php') ) );
 
        if ( ! current_user_can( 'edit_theme_options' ) )
                return;
 
 
        if ( ! current_user_can( 'edit_theme_options' ) )
                return;
 
-       if ( current_user_can( 'switch_themes' ) )
-               $wp_admin_bar->add_menu( array( 'parent' => 'appearance', 'id' => 'themes', 'title' => __('Themes'), 'href' => admin_url('themes.php') ) );
-
        if ( current_theme_supports( 'widgets' )  )
                $wp_admin_bar->add_menu( array( 'parent' => 'appearance', 'id' => 'widgets', 'title' => __('Widgets'), 'href' => admin_url('widgets.php') ) );
 
        if ( current_theme_supports( 'widgets' )  )
                $wp_admin_bar->add_menu( array( 'parent' => 'appearance', 'id' => 'widgets', 'title' => __('Widgets'), 'href' => admin_url('widgets.php') ) );
 
@@ -323,42 +587,69 @@ function wp_admin_bar_appearance_menu( $wp_admin_bar ) {
  * @since 3.1.0
  */
 function wp_admin_bar_updates_menu( $wp_admin_bar ) {
  * @since 3.1.0
  */
 function wp_admin_bar_updates_menu( $wp_admin_bar ) {
-       if ( !current_user_can('install_plugins') )
+
+       $update_data = wp_get_update_data();
+
+       if ( !$update_data['counts']['total'] )
                return;
 
                return;
 
-       $plugin_update_count = $theme_update_count = $wordpress_update_count = 0;
-       $update_plugins = get_site_transient( 'update_plugins' );
-       if ( !empty($update_plugins->response) )
-               $plugin_update_count = count( $update_plugins->response );
-       $update_themes = get_site_transient( 'update_themes' );
-       if ( !empty($update_themes->response) )
-               $theme_update_count = count( $update_themes->response );
-       /* @todo get_core_updates() is only available on admin page loads
-       $update_wordpress = get_core_updates( array('dismissed' => false) );
-       if ( !empty($update_wordpress) && !in_array( $update_wordpress[0]->response, array('development', 'latest') ) )
-               $wordpress_update_count = 1;
-       */
-
-       $update_count = $plugin_update_count + $theme_update_count + $wordpress_update_count;
-
-       if ( !$update_count )
+       $title = '<span class="ab-icon"></span><span class="ab-label">' . number_format_i18n( $update_data['counts']['total'] ) . '</span>';
+
+       $wp_admin_bar->add_menu( array(
+               'id'    => 'updates',
+               'title' => $title,
+               'href'  => network_admin_url( 'update-core.php' ),
+               'meta'  => array(
+                       'title' => $update_data['title'],
+               ),
+       ) );
+}
+
+/**
+ * Add search form.
+ *
+ * @since 3.3.0
+ */
+function wp_admin_bar_search_menu( $wp_admin_bar ) {
+       if ( is_admin() )
                return;
 
                return;
 
-       $update_title = array();
-       if ( $wordpress_update_count )
-               $update_title[] = sprintf(__('%d WordPress Update'), $wordpress_update_count);
-       if ( $plugin_update_count )
-               $update_title[] = sprintf(_n('%d Plugin Update', '%d Plugin Updates', $plugin_update_count), $plugin_update_count);
-       if ( $theme_update_count )
-               $update_title[] = sprintf(_n('%d Theme Update', '%d Theme Updates', $theme_update_count), $theme_update_count);
+       $form  = '<form action="' . esc_url( home_url( '/' ) ) . '" method="get" id="adminbarsearch">';
+       $form .= '<input class="adminbar-input" name="s" id="adminbar-search" tabindex="10" type="text" value="" maxlength="150" />';
+       $form .= '<input type="submit" class="adminbar-button" value="' . __('Search') . '"/>';
+       $form .= '</form>';
 
 
-       $update_title = !empty($update_title) ? esc_attr(implode(', ', $update_title)) : '';
+       $wp_admin_bar->add_menu( array(
+               'parent' => 'top-secondary',
+               'id'     => 'search',
+               'title'  => $form,
+               'meta'   => array(
+                       'class'    => 'admin-bar-search',
+                       'tabindex' => -1,
+               )
+       ) );
+}
 
 
-       $update_title = "<span title='$update_title'>";
-       $update_title .= sprintf( __('Updates %s'), "<span id='ab-updates' class='update-count'>" . number_format_i18n($update_count) . '</span>' );
-       $update_title .= '</span>';
+/**
+ * Add secondary menus.
+ *
+ * @since 3.3.0
+ */
+function wp_admin_bar_add_secondary_groups( $wp_admin_bar ) {
+       $wp_admin_bar->add_group( array(
+               'id'     => 'top-secondary',
+               'meta'   => array(
+                       'class' => 'ab-top-secondary',
+               ),
+       ) );
 
 
-       $wp_admin_bar->add_menu( array( 'id' => 'updates', 'title' => $update_title, 'href' => network_admin_url( 'update-core.php' ) ) );
+       $wp_admin_bar->add_group( array(
+               'parent' => 'wp-logo',
+               'id'     => 'wp-logo-external',
+               'meta'   => array(
+                       'class' => 'ab-sub-secondary',
+               ),
+       ) );
 }
 
 /**
 }
 
 /**
@@ -411,16 +702,19 @@ function show_admin_bar( $show ) {
 function is_admin_bar_showing() {
        global $show_admin_bar, $pagenow;
 
 function is_admin_bar_showing() {
        global $show_admin_bar, $pagenow;
 
-       /* For all these types of request we never want an admin bar period */
+       // For all these types of requests, we never want an admin bar.
        if ( defined('XMLRPC_REQUEST') || defined('APP_REQUEST') || defined('DOING_AJAX') || defined('IFRAME_REQUEST') )
                return false;
 
        if ( defined('XMLRPC_REQUEST') || defined('APP_REQUEST') || defined('DOING_AJAX') || defined('IFRAME_REQUEST') )
                return false;
 
+       // Integrated into the admin.
+       if ( is_admin() )
+               return true;
+
        if ( ! isset( $show_admin_bar ) ) {
                if ( ! is_user_logged_in() || 'wp-login.php' == $pagenow ) {
                        $show_admin_bar = false;
                } else {
        if ( ! isset( $show_admin_bar ) ) {
                if ( ! is_user_logged_in() || 'wp-login.php' == $pagenow ) {
                        $show_admin_bar = false;
                } else {
-                       $context = is_admin() ? 'admin' : 'front';
-                       $show_admin_bar = _get_admin_bar_pref( $context );
+                       $show_admin_bar = _get_admin_bar_pref();
                }
        }
 
                }
        }
 
@@ -430,21 +724,22 @@ function is_admin_bar_showing() {
 }
 
 /**
 }
 
 /**
- * Retrieve the admin bar display preference of a user based on context.
+ * Retrieve the admin bar display preference of a user.
  *
  * @since 3.1.0
  * @access private
  *
  *
  * @since 3.1.0
  * @access private
  *
- * @param string $context Context of this preference check, either 'admin' or 'front'.
+ * @param string $context Context of this preference check. Defaults to 'front'. The 'admin'
+ *     preference is no longer used.
  * @param int $user Optional. ID of the user to check, defaults to 0 for current user.
  * @return bool Whether the admin bar should be showing for this user.
  */
  * @param int $user Optional. ID of the user to check, defaults to 0 for current user.
  * @return bool Whether the admin bar should be showing for this user.
  */
-function _get_admin_bar_pref( $context, $user = 0 ) {
+function _get_admin_bar_pref( $context = 'front', $user = 0 ) {
        $pref = get_user_option( "show_admin_bar_{$context}", $user );
        if ( false === $pref )
        $pref = get_user_option( "show_admin_bar_{$context}", $user );
        if ( false === $pref )
-               return 'admin' != $context || is_multisite();
+               return true;
 
        return 'true' === $pref;
 }
 
 
        return 'true' === $pref;
 }
 
-?>
\ No newline at end of file
+?>
index f082fb24c4d173281506c09cac0eed8df7b5168d..4b21e446e34502f5afc3d3eb4d36706ed9fcb3f2 100644 (file)
@@ -38,7 +38,7 @@ function get_the_author($deprecated = '') {
  * still use the old behavior will also pass the value from get_the_author().
  *
  * The normal, expected behavior of this function is to echo the author and not
  * still use the old behavior will also pass the value from get_the_author().
  *
  * The normal, expected behavior of this function is to echo the author and not
- * return it. However, backwards compatiability has to be maintained.
+ * return it. However, backwards compatibility has to be maintained.
  *
  * @since 0.71
  * @see get_the_author()
  *
  * @since 0.71
  * @see get_the_author()
@@ -385,7 +385,7 @@ function is_multi_author() {
                wp_cache_set('is_multi_author', $is_multi_author, 'posts');
        }
 
                wp_cache_set('is_multi_author', $is_multi_author, 'posts');
        }
 
-       return (bool) $is_multi_author;
+       return apply_filters( 'is_multi_author', (bool) $is_multi_author );
 }
 
 /**
 }
 
 /**
index e1184231c445ddab03756e9a53ad1e96c5edcb15..c965d4c8db67b9c151bad73c60ec494bad13735e 100644 (file)
@@ -227,8 +227,11 @@ function get_bookmarks($args = '') {
                        $orderparams = array();
                        foreach ( explode(',', $orderby) as $ordparam ) {
                                $ordparam = trim($ordparam);
                        $orderparams = array();
                        foreach ( explode(',', $orderby) as $ordparam ) {
                                $ordparam = trim($ordparam);
-                               if ( in_array( $ordparam, array( 'name', 'url', 'visible', 'rating', 'owner', 'updated' ) ) )
+                               $keys = array( 'link_id', 'link_name', 'link_url', 'link_visible', 'link_rating', 'link_owner', 'link_updated', 'link_notes' );
+                               if ( in_array( 'link_' . $ordparam, $keys ) )
                                        $orderparams[] = 'link_' . $ordparam;
                                        $orderparams[] = 'link_' . $ordparam;
+                               elseif ( in_array( $ordparam, $keys ) )
+                                       $orderparams[] = $ordparam;
                        }
                        $orderby = implode(',', $orderparams);
        }
                        }
                        $orderby = implode(',', $orderparams);
        }
index f73f02bf65abdca641675020e22302b6c9bd26d8..f285be3a9093da1e0d9d70ccba0264eca613c00e 100644 (file)
@@ -9,29 +9,29 @@
  */
 
 /**
  */
 
 /**
- * Adds data to the cache, if the cache key doesn't aleady exist.
+ * Adds data to the cache, if the cache key doesn't already exist.
  *
  * @since 2.0.0
  * @uses $wp_object_cache Object Cache Class
  * @see WP_Object_Cache::add()
  *
  *
  * @since 2.0.0
  * @uses $wp_object_cache Object Cache Class
  * @see WP_Object_Cache::add()
  *
- * @param int|string $key The cache ID to use for retrieval later
+ * @param int|string $key The cache key to use for retrieval later
  * @param mixed $data The data to add to the cache store
  * @param mixed $data The data to add to the cache store
- * @param string $flag The group to add the cache to
+ * @param string $group The group to add the cache to
  * @param int $expire When the cache data should be expired
  * @return unknown
  */
  * @param int $expire When the cache data should be expired
  * @return unknown
  */
-function wp_cache_add($key, $data, $flag = '', $expire = 0) {
+function wp_cache_add($key, $data, $group = '', $expire = 0) {
        global $wp_object_cache;
 
        global $wp_object_cache;
 
-       return $wp_object_cache->add($key, $data, $flag, $expire);
+       return $wp_object_cache->add($key, $data, $group, $expire);
 }
 
 /**
  * Closes the cache.
  *
  * This function has ceased to do anything since WordPress 2.5. The
 }
 
 /**
  * Closes the cache.
  *
  * This function has ceased to do anything since WordPress 2.5. The
- * functionality was removed along with the rest of the persistant cache. This
+ * functionality was removed along with the rest of the persistent cache. This
  * does not mean that plugins can't implement this function when they need to
  * make sure that the cache is cleaned up after WordPress no longer needs it.
  *
  * does not mean that plugins can't implement this function when they need to
  * make sure that the cache is cleaned up after WordPress no longer needs it.
  *
@@ -44,20 +44,38 @@ function wp_cache_close() {
 }
 
 /**
 }
 
 /**
- * Removes the cache contents matching ID and flag.
+ * Decrement numeric cache item's value
+ *
+ * @since 3.3.0
+ * @uses $wp_object_cache Object Cache Class
+ * @see WP_Object_Cache::decr()
+ *
+ * @param int|string $key The cache key to increment
+ * @param int $offset The amount by which to decrement the item's value.  Default is 1.
+ * @param string $group The group the key is in.
+ * @return false|int False on failure, the item's new value on success.
+ */
+function wp_cache_decr( $key, $offset = 1, $group = '' ) {
+       global $wp_object_cache;
+
+       return $wp_object_cache->decr( $key, $offset, $group );
+}
+
+/**
+ * Removes the cache contents matching key and group.
  *
  * @since 2.0.0
  * @uses $wp_object_cache Object Cache Class
  * @see WP_Object_Cache::delete()
  *
  *
  * @since 2.0.0
  * @uses $wp_object_cache Object Cache Class
  * @see WP_Object_Cache::delete()
  *
- * @param int|string $id What the contents in the cache are called
- * @param string $flag Where the cache contents are grouped
+ * @param int|string $key What the contents in the cache are called
+ * @param string $group Where the cache contents are grouped
  * @return bool True on successful removal, false on failure
  */
  * @return bool True on successful removal, false on failure
  */
-function wp_cache_delete($id, $flag = '') {
+function wp_cache_delete($key, $group = '') {
        global $wp_object_cache;
 
        global $wp_object_cache;
 
-       return $wp_object_cache->delete($id, $flag);
+       return $wp_object_cache->delete($key, $group);
 }
 
 /**
 }
 
 /**
@@ -76,21 +94,40 @@ function wp_cache_flush() {
 }
 
 /**
 }
 
 /**
- * Retrieves the cache contents from the cache by ID and flag.
+ * Retrieves the cache contents from the cache by key and group.
  *
  * @since 2.0.0
  * @uses $wp_object_cache Object Cache Class
  * @see WP_Object_Cache::get()
  *
  *
  * @since 2.0.0
  * @uses $wp_object_cache Object Cache Class
  * @see WP_Object_Cache::get()
  *
- * @param int|string $id What the contents in the cache are called
- * @param string $flag Where the cache contents are grouped
+ * @param int|string $key What the contents in the cache are called
+ * @param string $group Where the cache contents are grouped
+ * @param bool $force Whether to force an update of the local cache from the persistent cache (default is false)
  * @return bool|mixed False on failure to retrieve contents or the cache
  *             contents on success
  */
  * @return bool|mixed False on failure to retrieve contents or the cache
  *             contents on success
  */
-function wp_cache_get($id, $flag = '') {
+function wp_cache_get( $key, $group = '', $force = false ) {
+       global $wp_object_cache;
+
+       return $wp_object_cache->get( $key, $group, $force );
+}
+
+/**
+ * Increment numeric cache item's value
+ *
+ * @since 3.3.0
+ * @uses $wp_object_cache Object Cache Class
+ * @see WP_Object_Cache::incr()
+ *
+ * @param int|string $key The cache key to increment
+ * @param int $offset The amount by which to increment the item's value.  Default is 1.
+ * @param string $group The group the key is in.
+ * @return false|int False on failure, the item's new value on success.
+ */
+function wp_cache_incr( $key, $offset = 1, $group = '' ) {
        global $wp_object_cache;
 
        global $wp_object_cache;
 
-       return $wp_object_cache->get($id, $flag);
+       return $wp_object_cache->incr( $key, $offset, $group );
 }
 
 /**
 }
 
 /**
@@ -100,7 +137,7 @@ function wp_cache_get($id, $flag = '') {
  * @global WP_Object_Cache $wp_object_cache WordPress Object Cache
  */
 function wp_cache_init() {
  * @global WP_Object_Cache $wp_object_cache WordPress Object Cache
  */
 function wp_cache_init() {
-       $GLOBALS['wp_object_cache'] =& new WP_Object_Cache();
+       $GLOBALS['wp_object_cache'] = new WP_Object_Cache();
 }
 
 /**
 }
 
 /**
@@ -112,14 +149,14 @@ function wp_cache_init() {
  *
  * @param int|string $key What to call the contents in the cache
  * @param mixed $data The contents to store in the cache
  *
  * @param int|string $key What to call the contents in the cache
  * @param mixed $data The contents to store in the cache
- * @param string $flag Where to group the cache contents
+ * @param string $group Where to group the cache contents
  * @param int $expire When to expire the cache contents
  * @param int $expire When to expire the cache contents
- * @return bool False if cache ID and group already exists, true on success
+ * @return bool False if cache key and group already exist, true on success
  */
  */
-function wp_cache_replace($key, $data, $flag = '', $expire = 0) {
+function wp_cache_replace($key, $data, $group = '', $expire = 0) {
        global $wp_object_cache;
 
        global $wp_object_cache;
 
-       return $wp_object_cache->replace($key, $data, $flag, $expire);
+       return $wp_object_cache->replace($key, $data, $group, $expire);
 }
 
 /**
 }
 
 /**
@@ -131,14 +168,14 @@ function wp_cache_replace($key, $data, $flag = '', $expire = 0) {
  *
  * @param int|string $key What to call the contents in the cache
  * @param mixed $data The contents to store in the cache
  *
  * @param int|string $key What to call the contents in the cache
  * @param mixed $data The contents to store in the cache
- * @param string $flag Where to group the cache contents
+ * @param string $group Where to group the cache contents
  * @param int $expire When to expire the cache contents
  * @param int $expire When to expire the cache contents
- * @return bool False if cache ID and group already exists, true on success
+ * @return bool False if cache key and group already exist, true on success
  */
  */
-function wp_cache_set($key, $data, $flag = '', $expire = 0) {
+function wp_cache_set($key, $data, $group = '', $expire = 0) {
        global $wp_object_cache;
 
        global $wp_object_cache;
 
-       return $wp_object_cache->set($key, $data, $flag, $expire);
+       return $wp_object_cache->set($key, $data, $group, $expire);
 }
 
 /**
 }
 
 /**
@@ -205,15 +242,6 @@ class WP_Object_Cache {
         */
        var $cache = array ();
 
         */
        var $cache = array ();
 
-       /**
-        * Cache objects that do not exist in the cache
-        *
-        * @var array
-        * @access private
-        * @since 2.0.0
-        */
-       var $non_existent_objects = array ();
-
        /**
         * The amount of times the cache data was already stored in the cache.
         *
        /**
         * The amount of times the cache data was already stored in the cache.
         *
@@ -246,24 +274,27 @@ class WP_Object_Cache {
         *
         * @uses WP_Object_Cache::get Checks to see if the cache already has data.
         * @uses WP_Object_Cache::set Sets the data after the checking the cache
         *
         * @uses WP_Object_Cache::get Checks to see if the cache already has data.
         * @uses WP_Object_Cache::set Sets the data after the checking the cache
-        *              contents existance.
+        *              contents existence.
         *
         * @since 2.0.0
         *
         *
         * @since 2.0.0
         *
-        * @param int|string $id What to call the contents in the cache
+        * @param int|string $key What to call the contents in the cache
         * @param mixed $data The contents to store in the cache
         * @param string $group Where to group the cache contents
         * @param int $expire When to expire the cache contents
         * @param mixed $data The contents to store in the cache
         * @param string $group Where to group the cache contents
         * @param int $expire When to expire the cache contents
-        * @return bool False if cache ID and group already exists, true on success
+        * @return bool False if cache key and group already exist, true on success
         */
         */
-       function add( $id, $data, $group = 'default', $expire = '' ) {
+       function add( $key, $data, $group = 'default', $expire = '' ) {
+               if ( wp_suspend_cache_addition() )
+                       return false;
+
                if ( empty ($group) )
                        $group = 'default';
 
                if ( empty ($group) )
                        $group = 'default';
 
-               if (false !== $this->get($id, $group))
+               if (false !== $this->get($key, $group))
                        return false;
 
                        return false;
 
-               return $this->set($id, $data, $group, $expire);
+               return $this->set($key, $data, $group, $expire);
        }
 
        /**
        }
 
        /**
@@ -281,32 +312,55 @@ class WP_Object_Cache {
        }
 
        /**
        }
 
        /**
-        * Remove the contents of the cache ID in the group
+        * Decrement numeric cache item's value
+        *
+        * @since 3.3.0
+        *
+        * @param int|string $key The cache key to increment
+        * @param int $offset The amount by which to decrement the item's value.  Default is 1.
+        * @param string $group The group the key is in.
+        * @return false|int False on failure, the item's new value on success.
+        */
+       function decr( $key, $offset = 1, $group = 'default' ) {
+               if ( ! isset( $this->cache[ $group ][ $key ] ) )
+                       return false;
+
+               if ( ! is_numeric( $this->cache[ $group ][ $key ] ) )
+                       $this->cache[ $group ][ $key ] = 0;
+
+               $offset = (int) $offset;
+
+               $this->cache[ $group ][ $key ] -= $offset;
+
+               if ( $this->cache[ $group ][ $key ] < 0 )
+                       $this->cache[ $group ][ $key ] = 0;
+
+               return $this->cache[ $group ][ $key ];
+       }
+
+       /**
+        * Remove the contents of the cache key in the group
         *
         *
-        * If the cache ID does not exist in the group and $force parameter is set
+        * If the cache key does not exist in the group and $force parameter is set
         * to false, then nothing will happen. The $force parameter is set to false
         * by default.
         *
         * to false, then nothing will happen. The $force parameter is set to false
         * by default.
         *
-        * On success the group and the id will be added to the
-        * $non_existent_objects property in the class.
-        *
         * @since 2.0.0
         *
         * @since 2.0.0
         *
-        * @param int|string $id What the contents in the cache are called
+        * @param int|string $key What the contents in the cache are called
         * @param string $group Where the cache contents are grouped
         * @param bool $force Optional. Whether to force the unsetting of the cache
         * @param string $group Where the cache contents are grouped
         * @param bool $force Optional. Whether to force the unsetting of the cache
-        *              ID in the group
+        *              key in the group
         * @return bool False if the contents weren't deleted and true on success
         */
         * @return bool False if the contents weren't deleted and true on success
         */
-       function delete($id, $group = 'default', $force = false) {
+       function delete($key, $group = 'default', $force = false) {
                if (empty ($group))
                        $group = 'default';
 
                if (empty ($group))
                        $group = 'default';
 
-               if (!$force && false === $this->get($id, $group))
+               if (!$force && false === $this->get($key, $group))
                        return false;
 
                        return false;
 
-               unset ($this->cache[$group][$id]);
-               $this->non_existent_objects[$group][$id] = true;
+               unset ($this->cache[$group][$key]);
                return true;
        }
 
                return true;
        }
 
@@ -327,62 +381,82 @@ class WP_Object_Cache {
         * Retrieves the cache contents, if it exists
         *
         * The contents will be first attempted to be retrieved by searching by the
         * Retrieves the cache contents, if it exists
         *
         * The contents will be first attempted to be retrieved by searching by the
-        * ID in the cache group. If the cache is hit (success) then the contents
+        * key in the cache group. If the cache is hit (success) then the contents
         * are returned.
         *
         * are returned.
         *
-        * On failure, the $non_existent_objects property is checked and if the
-        * cache group and ID exist in there the cache misses will not be
-        * incremented. If not in the nonexistent objects property, then the cache
-        * misses will be incremented and the cache group and ID will be added to
-        * the nonexistent objects.
+        * On failure, the number of cache misses will be incremented.
         *
         * @since 2.0.0
         *
         *
         * @since 2.0.0
         *
-        * @param int|string $id What the contents in the cache are called
+        * @param int|string $key What the contents in the cache are called
         * @param string $group Where the cache contents are grouped
         * @param string $group Where the cache contents are grouped
+        * @param string $force Whether to force a refetch rather than relying on the local cache (default is false)
         * @return bool|mixed False on failure to retrieve contents or the cache
         *              contents on success
         */
         * @return bool|mixed False on failure to retrieve contents or the cache
         *              contents on success
         */
-       function get($id, $group = 'default') {
+       function get( $key, $group = 'default', $force = false) {
                if ( empty ($group) )
                        $group = 'default';
 
                if ( empty ($group) )
                        $group = 'default';
 
-               if ( isset ($this->cache[$group][$id]) ) {
+               if ( isset ($this->cache[$group][$key]) ) {
                        $this->cache_hits += 1;
                        $this->cache_hits += 1;
-                       if ( is_object($this->cache[$group][$id]) )
-                               return clone $this->cache[$group][$id];
+                       if ( is_object($this->cache[$group][$key]) )
+                               return clone $this->cache[$group][$key];
                        else
                        else
-                               return $this->cache[$group][$id];
+                               return $this->cache[$group][$key];
                }
 
                }
 
-               if ( isset ($this->non_existent_objects[$group][$id]) )
-                       return false;
-
-               $this->non_existent_objects[$group][$id] = true;
                $this->cache_misses += 1;
                return false;
        }
 
                $this->cache_misses += 1;
                return false;
        }
 
+       /**
+        * Increment numeric cache item's value
+        *
+        * @since 3.3.0
+        *
+        * @param int|string $key The cache key to increment
+        * @param int $offset The amount by which to increment the item's value.  Default is 1.
+        * @param string $group The group the key is in.
+        * @return false|int False on failure, the item's new value on success.
+        */
+       function incr( $key, $offset = 1, $group = 'default' ) {
+               if ( ! isset( $this->cache[ $group ][ $key ] ) )
+                       return false;
+
+               if ( ! is_numeric( $this->cache[ $group ][ $key ] ) )
+                       $this->cache[ $group ][ $key ] = 0;
+
+               $offset = (int) $offset;
+
+               $this->cache[ $group ][ $key ] += $offset;
+
+               if ( $this->cache[ $group ][ $key ] < 0 )
+                       $this->cache[ $group ][ $key ] = 0;
+
+               return $this->cache[ $group ][ $key ];
+       }
+
        /**
         * Replace the contents in the cache, if contents already exist
         *
         * @since 2.0.0
         * @see WP_Object_Cache::set()
         *
        /**
         * Replace the contents in the cache, if contents already exist
         *
         * @since 2.0.0
         * @see WP_Object_Cache::set()
         *
-        * @param int|string $id What to call the contents in the cache
+        * @param int|string $key What to call the contents in the cache
         * @param mixed $data The contents to store in the cache
         * @param string $group Where to group the cache contents
         * @param int $expire When to expire the cache contents
         * @return bool False if not exists, true if contents were replaced
         */
         * @param mixed $data The contents to store in the cache
         * @param string $group Where to group the cache contents
         * @param int $expire When to expire the cache contents
         * @return bool False if not exists, true if contents were replaced
         */
-       function replace($id, $data, $group = 'default', $expire = '') {
+       function replace($key, $data, $group = 'default', $expire = '') {
                if (empty ($group))
                        $group = 'default';
 
                if (empty ($group))
                        $group = 'default';
 
-               if ( false === $this->get($id, $group) )
+               if ( false === $this->get($key, $group) )
                        return false;
 
                        return false;
 
-               return $this->set($id, $data, $group, $expire);
+               return $this->set($key, $data, $group, $expire);
        }
 
        /**
        }
 
        /**
@@ -402,7 +476,7 @@ class WP_Object_Cache {
         * Sets the data contents into the cache
         *
         * The cache contents is grouped by the $group parameter followed by the
         * Sets the data contents into the cache
         *
         * The cache contents is grouped by the $group parameter followed by the
-        * $id. This allows for duplicate ids in unique groups. Therefore, naming of
+        * $key. This allows for duplicate ids in unique groups. Therefore, naming of
         * the group should be used with care and should follow normal function
         * naming guidelines outside of core WordPress usage.
         *
         * the group should be used with care and should follow normal function
         * naming guidelines outside of core WordPress usage.
         *
@@ -412,13 +486,13 @@ class WP_Object_Cache {
         *
         * @since 2.0.0
         *
         *
         * @since 2.0.0
         *
-        * @param int|string $id What to call the contents in the cache
+        * @param int|string $key What to call the contents in the cache
         * @param mixed $data The contents to store in the cache
         * @param string $group Where to group the cache contents
         * @param int $expire Not Used
         * @return bool Always returns true
         */
         * @param mixed $data The contents to store in the cache
         * @param string $group Where to group the cache contents
         * @param int $expire Not Used
         * @return bool Always returns true
         */
-       function set($id, $data, $group = 'default', $expire = '') {
+       function set($key, $data, $group = 'default', $expire = '') {
                if ( empty ($group) )
                        $group = 'default';
 
                if ( empty ($group) )
                        $group = 'default';
 
@@ -428,11 +502,7 @@ class WP_Object_Cache {
                if ( is_object($data) )
                        $data = clone $data;
 
                if ( is_object($data) )
                        $data = clone $data;
 
-               $this->cache[$group][$id] = $data;
-
-               if ( isset($this->non_existent_objects[$group][$id]) )
-                       unset ($this->non_existent_objects[$group][$id]);
-
+               $this->cache[$group][$key] = $data;
                return true;
        }
 
                return true;
        }
 
index 453641a2b777514c1bd06332e2e0b8522afd53d0..ea3bb77692910185457dc0b54cfa8a951f57e304 100644 (file)
@@ -14,7 +14,7 @@
  *
  * Search engines consider www.somedomain.com and somedomain.com to be two
  * different URLs when they both go to the same location. This SEO enhancement
  *
  * Search engines consider www.somedomain.com and somedomain.com to be two
  * different URLs when they both go to the same location. This SEO enhancement
- * prevents penality for duplicate content by redirecting all incoming links to
+ * prevents penalty for duplicate content by redirecting all incoming links to
  * one or the other.
  *
  * Prevents redirection for feeds, trackbacks, searches, comment popup, and
  * one or the other.
  *
  * Prevents redirection for feeds, trackbacks, searches, comment popup, and
@@ -175,10 +175,10 @@ function redirect_canonical( $requested_url = null, $do_redirect = true ) {
 
                                                // Create the destination url for this taxonomy
                                                $tax_url = parse_url($tax_url);
 
                                                // Create the destination url for this taxonomy
                                                $tax_url = parse_url($tax_url);
-                                               if ( ! empty($tax_url['query']) ) { // Taxonomy accessable via ?taxonomy=..&term=.. or any custom qv..
+                                               if ( ! empty($tax_url['query']) ) { // Taxonomy accessible via ?taxonomy=..&term=.. or any custom qv..
                                                        parse_str($tax_url['query'], $query_vars);
                                                        $redirect['query'] = add_query_arg($query_vars, $redirect['query']);
                                                        parse_str($tax_url['query'], $query_vars);
                                                        $redirect['query'] = add_query_arg($query_vars, $redirect['query']);
-                                               } else { // Taxonomy is accessable via a "pretty-URL"
+                                               } else { // Taxonomy is accessible via a "pretty-URL"
                                                        $redirect['path'] = $tax_url['path'];
                                                }
 
                                                        $redirect['path'] = $tax_url['path'];
                                                }
 
@@ -218,8 +218,25 @@ function redirect_canonical( $requested_url = null, $do_redirect = true ) {
                                $addl_path = !empty( $addl_path ) ? trailingslashit($addl_path) : '';
                                if ( get_query_var( 'withcomments' ) )
                                        $addl_path .= 'comments/';
                                $addl_path = !empty( $addl_path ) ? trailingslashit($addl_path) : '';
                                if ( get_query_var( 'withcomments' ) )
                                        $addl_path .= 'comments/';
-                               $addl_path .= user_trailingslashit( 'feed/' . ( ( get_default_feed() ==  get_query_var('feed') || 'feed' == get_query_var('feed') ) ? '' : get_query_var('feed') ), 'feed' );
+                               if ( ( 'rss' == get_default_feed() && 'feed' == get_query_var('feed') ) || 'rss' == get_query_var('feed') )
+                                       $addl_path .= user_trailingslashit( 'feed/' . ( ( get_default_feed() == 'rss2' ) ? '' : 'rss2' ), 'feed' );
+                               else
+                                       $addl_path .= user_trailingslashit( 'feed/' . ( ( get_default_feed() ==  get_query_var('feed') || 'feed' == get_query_var('feed') ) ? '' : get_query_var('feed') ), 'feed' );
                                $redirect['query'] = remove_query_arg( 'feed', $redirect['query'] );
                                $redirect['query'] = remove_query_arg( 'feed', $redirect['query'] );
+                       } elseif ( is_feed() && 'old' == get_query_var('feed') ) {
+                               $old_feed_files = array(
+                                       'wp-atom.php'         => 'atom',
+                                       'wp-commentsrss2.php' => 'comments_rss2',
+                                       'wp-feed.php'         => get_default_feed(),
+                                       'wp-rdf.php'          => 'rdf',
+                                       'wp-rss.php'          => 'rss2',
+                                       'wp-rss2.php'         => 'rss2',
+                               );
+                               if ( isset( $old_feed_files[ basename( $redirect['path'] ) ] ) ) {
+                                       $redirect_url = get_feed_link( $old_feed_files[ basename( $redirect['path'] ) ] );
+                                       wp_redirect( $redirect_url, 301 );
+                                       die();
+                               }
                        }
 
                        if ( get_query_var('paged') > 0 ) {
                        }
 
                        if ( get_query_var('paged') > 0 ) {
@@ -263,6 +280,7 @@ function redirect_canonical( $requested_url = null, $do_redirect = true ) {
                                unset( $_parsed_query['name'] );
                }
 
                                unset( $_parsed_query['name'] );
                }
 
+               $_parsed_query = array_map( 'rawurlencode', $_parsed_query );
                $redirect_url = add_query_arg( $_parsed_query, $redirect_url );
        }
 
                $redirect_url = add_query_arg( $_parsed_query, $redirect_url );
        }
 
@@ -295,6 +313,9 @@ function redirect_canonical( $requested_url = null, $do_redirect = true ) {
                // Clean up empty query strings
                $redirect['query'] = trim(preg_replace( '#(^|&)(p|page_id|cat|tag)=?(&|$)#', '&', $redirect['query']), '&');
 
                // Clean up empty query strings
                $redirect['query'] = trim(preg_replace( '#(^|&)(p|page_id|cat|tag)=?(&|$)#', '&', $redirect['query']), '&');
 
+               // Redirect obsolete feeds
+               $redirect['query'] = preg_replace( '#(^|&)feed=rss(&|$)#', '$1feed=rss2$3', $redirect['query'] );
+
                // Remove redundant leading ampersands
                $redirect['query'] = preg_replace( '#^\??&*?#', '', $redirect['query'] );
        }
                // Remove redundant leading ampersands
                $redirect['query'] = preg_replace( '#^\??&*?#', '', $redirect['query'] );
        }
index 28e75415527cff258d7f82f1f3ddb3b05472b871..5a8224db877dc5877f7451e659a1f81425f23411 100644 (file)
@@ -205,7 +205,7 @@ class WP_Roles {
         * @param string $role Role name.
         * @return object|null Null, if role does not exist. WP_Role object, if found.
         */
         * @param string $role Role name.
         * @return object|null Null, if role does not exist. WP_Role object, if found.
         */
-       function &get_role( $role ) {
+       function get_role( $role ) {
                if ( isset( $this->role_objects[$role] ) )
                        return $this->role_objects[$role];
                else
                if ( isset( $this->role_objects[$role] ) )
                        return $this->role_objects[$role];
                else
@@ -360,8 +360,6 @@ class WP_User {
        /**
         * User data container.
         *
        /**
         * User data container.
         *
-        * This will be set as properties of the object.
-        *
         * @since 2.0.0
         * @access private
         * @var array
         * @since 2.0.0
         * @access private
         * @var array
@@ -377,17 +375,6 @@ class WP_User {
         */
        var $ID = 0;
 
         */
        var $ID = 0;
 
-       /**
-        * The deprecated user's ID.
-        *
-        * @since 2.0.0
-        * @access public
-        * @deprecated Use WP_User::$ID
-        * @see WP_User::$ID
-        * @var int
-        */
-       var $id = 0;
-
        /**
         * The individual capabilities the user has been given.
         *
        /**
         * The individual capabilities the user has been given.
         *
@@ -424,28 +411,6 @@ class WP_User {
         */
        var $allcaps = array();
 
         */
        var $allcaps = array();
 
-       /**
-        * First name of the user.
-        *
-        * Created to prevent notices.
-        *
-        * @since 2.7.0
-        * @access public
-        * @var string
-        */
-       var $first_name = '';
-
-       /**
-        * Last name of the user.
-        *
-        * Created to prevent notices.
-        *
-        * @since 2.7.0
-        * @access public
-        * @var string
-        */
-       var $last_name = '';
-
        /**
         * The filter context applied to user data fields.
         *
        /**
         * The filter context applied to user data fields.
         *
@@ -455,47 +420,205 @@ class WP_User {
         */
        var $filter = null;
 
         */
        var $filter = null;
 
+       private static $back_compat_keys;
+
        /**
        /**
-        * Constructor - Sets up the object properties.
+        * Constructor
         *
         *
-        * Retrieves the userdata and then assigns all of the data keys to direct
-        * properties of the object. Calls {@link WP_User::_init_caps()} after
-        * setting up the object's user data properties.
+        * Retrieves the userdata and passes it to {@link WP_User::init()}.
         *
         * @since 2.0.0
         * @access public
         *
         *
         * @since 2.0.0
         * @access public
         *
-        * @param int|string $id User's ID or username
-        * @param int $name Optional. User's username
+        * @param int|string $id User's ID
+        * @param string $name Optional. User's username
         * @param int $blog_id Optional Blog ID, defaults to current blog.
         * @return WP_User
         */
         * @param int $blog_id Optional Blog ID, defaults to current blog.
         * @return WP_User
         */
-       function __construct( $id, $name = '', $blog_id = '' ) {
-
-               if ( empty( $id ) && empty( $name ) )
-                       return;
+       function __construct( $id = 0, $name = '', $blog_id = '' ) {
+               if ( ! isset( self::$back_compat_keys ) ) {
+                       $prefix = $GLOBALS['wpdb']->prefix;
+                       self::$back_compat_keys = array(
+                               'user_firstname' => 'first_name',
+                               'user_lastname' => 'last_name',
+                               'user_description' => 'description',
+                               'user_level' => $prefix . 'user_level',
+                               $prefix . 'usersettings' => $prefix . 'user-settings',
+                               $prefix . 'usersettingstime' => $prefix . 'user-settings-time',
+                       );
+               }
 
 
-               if ( ! is_numeric( $id ) ) {
+               if ( ! empty( $id ) && ! is_numeric( $id ) ) {
                        $name = $id;
                        $id = 0;
                }
 
                        $name = $id;
                        $id = 0;
                }
 
-               if ( ! empty( $id ) )
-                       $this->data = get_userdata( $id );
+               if ( $id )
+                       $data = self::get_data_by( 'id', $id );
                else
                else
-                       $this->data = get_userdatabylogin( $name );
+                       $data = self::get_data_by( 'login', $name );
 
 
-               if ( empty( $this->data->ID ) )
-                       return;
+               if ( $data )
+                       $this->init( $data, $blog_id );
+       }
 
 
-               foreach ( get_object_vars( $this->data ) as $key => $value ) {
-                       $this->{$key} = $value;
-               }
+       /**
+        * Sets up object properties, including capabilities.
+        *
+        * @param object $data User DB row object
+        * @param int $blog_id Optional. The blog id to initialize for
+        */
+       function init( $data, $blog_id = '' ) {
+               $this->data = $data;
+               $this->ID = (int) $data->ID;
 
 
-               $this->id = $this->ID;
                $this->for_blog( $blog_id );
        }
 
                $this->for_blog( $blog_id );
        }
 
+       /**
+        * Return only the main user fields
+        *
+        * @since 3.3.0
+        *
+        * @param string $field The field to query against: 'id', 'slug', 'email' or 'login'
+        * @param string|int $value The field value
+        * @return object Raw user object
+        */
+       static function get_data_by( $field, $value ) {
+               global $wpdb;
+
+               if ( 'id' == $field )
+                       $value = absint( $value );
+               else
+                       $value = trim( $value );
+
+               if ( !$value )
+                       return false;
+
+               switch ( $field ) {
+                       case 'id':
+                               $user_id = $value;
+                               $db_field = 'ID';
+                               break;
+                       case 'slug':
+                               $user_id = wp_cache_get($value, 'userslugs');
+                               $db_field = 'user_nicename';
+                               break;
+                       case 'email':
+                               $user_id = wp_cache_get($value, 'useremail');
+                               $db_field = 'user_email';
+                               break;
+                       case 'login':
+                               $value = sanitize_user( $value );
+                               $user_id = wp_cache_get($value, 'userlogins');
+                               $db_field = 'user_login';
+                               break;
+                       default:
+                               return false;
+               }
+
+               if ( false !== $user_id ) {
+                       if ( $user = wp_cache_get( $user_id, 'users' ) )
+                               return $user;
+               }
+
+               if ( !$user = $wpdb->get_row( $wpdb->prepare(
+                       "SELECT * FROM $wpdb->users WHERE $db_field = %s", $value
+               ) ) )
+                       return false;
+
+               update_user_caches( $user );
+
+               return $user;
+       }
+
+       /**
+        * Magic method for checking the existence of a certain custom field
+        *
+        * @since 3.3.0
+        */
+       function __isset( $key ) {
+               if ( 'id' == $key ) {
+                       _deprecated_argument( 'WP_User->id', '2.1', __( 'Use <code>WP_User->ID</code> instead.' ) );
+                       $key = 'ID';
+               }
+
+               if ( isset( $this->data->$key ) )
+                       return true;
+
+               if ( isset( self::$back_compat_keys[ $key ] ) )
+                       $key = self::$back_compat_keys[ $key ];
+
+               return metadata_exists( 'user', $this->ID, $key );
+       }
+
+       /**
+        * Magic method for accessing custom fields
+        *
+        * @since 3.3.0
+        */
+       function __get( $key ) {
+               if ( 'id' == $key ) {
+                       _deprecated_argument( 'WP_User->id', '2.1', __( 'Use <code>WP_User->ID</code> instead.' ) );
+                       return $this->ID;
+               }
+
+               if ( isset( $this->data->$key ) ) {
+                       $value = $this->data->$key;
+               } else {
+                       if ( isset( self::$back_compat_keys[ $key ] ) )
+                               $key = self::$back_compat_keys[ $key ];
+                       $value = get_user_meta( $this->ID, $key, true );
+               }
+
+               if ( $this->filter ) {
+                       $value = sanitize_user_field( $key, $value, $this->ID, $this->filter );
+               }
+
+               return $value;
+       }
+
+       /**
+        * Magic method for setting custom fields
+        *
+        * @since 3.3.0
+        */
+       function __set( $key, $value ) {
+               if ( 'id' == $key ) {
+                       _deprecated_argument( 'WP_User->id', '2.1', __( 'Use <code>WP_User->ID</code> instead.' ) );
+                       $this->ID = $value;
+                       return;
+               }
+
+               $this->data->$key = $value;
+       }
+
+       /**
+        * Retrieve the value of a property or meta key.
+        *
+        * Retrieves from the users and usermeta table.
+        *
+        * @since 3.3.0
+        *
+        * @param string $key Property
+        */
+       function get( $key ) {
+               return $this->__get( $key );
+       }
+
+       /**
+        * Determine whether a property or meta key is set
+        *
+        * Consults the users and usermeta tables.
+        *
+        * @since 3.3.0
+        *
+        * @param string $key Property
+        */
+       function has_prop( $key ) {
+               return $this->__isset( $key );
+       }
+
        /**
         * Set up capability object properties.
         *
        /**
         * Set up capability object properties.
         *
@@ -504,20 +627,24 @@ class WP_User {
         * property matching the 'cap_key' exists and is an array. If so, it will be
         * used.
         *
         * property matching the 'cap_key' exists and is an array. If so, it will be
         * used.
         *
+        * @access protected
         * @since 2.1.0
         *
         * @param string $cap_key Optional capability key
         * @since 2.1.0
         *
         * @param string $cap_key Optional capability key
-        * @access protected
         */
        function _init_caps( $cap_key = '' ) {
                global $wpdb;
         */
        function _init_caps( $cap_key = '' ) {
                global $wpdb;
+
                if ( empty($cap_key) )
                        $this->cap_key = $wpdb->prefix . 'capabilities';
                else
                        $this->cap_key = $cap_key;
                if ( empty($cap_key) )
                        $this->cap_key = $wpdb->prefix . 'capabilities';
                else
                        $this->cap_key = $cap_key;
-               $this->caps = &$this->{$this->cap_key};
+
+               $this->caps = get_user_meta( $this->ID, $this->cap_key, true );
+
                if ( ! is_array( $this->caps ) )
                        $this->caps = array();
                if ( ! is_array( $this->caps ) )
                        $this->caps = array();
+
                $this->get_role_caps();
        }
 
                $this->get_role_caps();
        }
 
@@ -546,7 +673,7 @@ class WP_User {
                //Build $allcaps from role caps, overlay user's $caps
                $this->allcaps = array();
                foreach ( (array) $this->roles as $role ) {
                //Build $allcaps from role caps, overlay user's $caps
                $this->allcaps = array();
                foreach ( (array) $this->roles as $role ) {
-                       $the_role =& $wp_roles->get_role( $role );
+                       $the_role = $wp_roles->get_role( $role );
                        $this->allcaps = array_merge( (array) $this->allcaps, (array) $the_role->capabilities );
                }
                $this->allcaps = array_merge( (array) $this->allcaps, (array) $this->caps );
                        $this->allcaps = array_merge( (array) $this->allcaps, (array) $the_role->capabilities );
                }
                $this->allcaps = array_merge( (array) $this->allcaps, (array) $this->caps );
@@ -657,7 +784,7 @@ class WP_User {
         */
        function update_user_level_from_caps() {
                global $wpdb;
         */
        function update_user_level_from_caps() {
                global $wpdb;
-               $this->user_level = array_reduce( array_keys( $this->allcaps ), array( &$this, 'level_reduction' ), 0 );
+               $this->user_level = array_reduce( array_keys( $this->allcaps ), array( $this, 'level_reduction' ), 0 );
                update_user_meta( $this->ID, $wpdb->prefix . 'user_level', $this->user_level );
        }
 
                update_user_meta( $this->ID, $wpdb->prefix . 'user_level', $this->user_level );
        }
 
@@ -709,7 +836,7 @@ class WP_User {
         *
         * This is useful for looking up whether the user has a specific role
         * assigned to the user. The second optional parameter can also be used to
         *
         * This is useful for looking up whether the user has a specific role
         * assigned to the user. The second optional parameter can also be used to
-        * check for capabilities against a specfic post.
+        * check for capabilities against a specific post.
         *
         * @since 2.0.0
         * @access public
         *
         * @since 2.0.0
         * @access public
@@ -739,8 +866,7 @@ class WP_User {
                $capabilities = apply_filters( 'user_has_cap', $this->allcaps, $caps, $args );
                $capabilities['exist'] = true; // Everyone is allowed to exist
                foreach ( (array) $caps as $cap ) {
                $capabilities = apply_filters( 'user_has_cap', $this->allcaps, $caps, $args );
                $capabilities['exist'] = true; // Everyone is allowed to exist
                foreach ( (array) $caps as $cap ) {
-                       //echo "Checking cap $cap<br />";
-                       if ( empty( $capabilities[$cap] ) || !$capabilities[$cap] )
+                       if ( empty( $capabilities[ $cap ] ) )
                                return false;
                }
 
                                return false;
                }
 
@@ -951,6 +1077,23 @@ function map_meta_cap( $cap, $user_id ) {
                else
                        $caps[] = $post_type->cap->read_private_posts;
                break;
                else
                        $caps[] = $post_type->cap->read_private_posts;
                break;
+       case 'edit_post_meta':
+       case 'delete_post_meta':
+       case 'add_post_meta':
+               $post = get_post( $args[0] );
+               $post_type_object = get_post_type_object( $post->post_type );
+               $caps = map_meta_cap( $post_type_object->cap->edit_post, $user_id, $post->ID );
+
+               $meta_key = isset( $args[ 1 ] ) ? $args[ 1 ] : false;
+
+               if ( $meta_key && has_filter( "auth_post_meta_{$meta_key}" ) ) {
+                       $allowed = apply_filters( "auth_post_meta_{$meta_key}", false, $meta_key, $post->ID, $user_id, $cap, $caps );
+                       if ( ! $allowed )
+                               $caps[] = $cap;
+               } elseif ( $meta_key && is_protected_meta( $meta_key, 'post' ) ) {
+                       $caps[] = $cap;
+               }
+               break;
        case 'edit_comment':
                $comment = get_comment( $args[0] );
                $post = get_post( $comment->comment_post_ID );
        case 'edit_comment':
                $comment = get_comment( $args[0] );
                $post = get_post( $comment->comment_post_ID );
@@ -1044,7 +1187,7 @@ function current_user_can( $capability ) {
        $args = array_slice( func_get_args(), 1 );
        $args = array_merge( array( $capability ), $args );
 
        $args = array_slice( func_get_args(), 1 );
        $args = array_merge( array( $capability ), $args );
 
-       return call_user_func_array( array( &$current_user, 'has_cap' ), $args );
+       return call_user_func_array( array( $current_user, 'has_cap' ), $args );
 }
 
 /**
 }
 
 /**
@@ -1063,7 +1206,7 @@ function current_user_can_for_blog( $blog_id, $capability ) {
                return false;
 
        // Create new object to avoid stomping the global current_user.
                return false;
 
        // Create new object to avoid stomping the global current_user.
-       $user = new WP_User( $current_user->id) ;
+       $user = new WP_User( $current_user->ID) ;
 
        // Set the blog id.  @todo add blog id arg to WP_User constructor?
        $user->for_blog( $blog_id );
 
        // Set the blog id.  @todo add blog id arg to WP_User constructor?
        $user->for_blog( $blog_id );
@@ -1208,7 +1351,7 @@ function is_super_admin( $user_id = false ) {
        else
                $user = wp_get_current_user();
 
        else
                $user = wp_get_current_user();
 
-       if ( empty( $user->id ) )
+       if ( empty( $user->ID ) )
                return false;
 
        if ( is_multisite() ) {
                return false;
 
        if ( is_multisite() ) {
index 39e68594bd2fb275dd9d063ba99711455460259a..2be9eed7934b096057b5940c48f958e920ead5d4 100644 (file)
@@ -464,11 +464,14 @@ function wp_list_categories( $args = '' ) {
                                $output .= $show_option_none;
                }
        } else {
                                $output .= $show_option_none;
                }
        } else {
-               if( !empty( $show_option_all ) )
+               if ( ! empty( $show_option_all ) ) {
+                       $posts_page = ( 'page' == get_option( 'show_on_front' ) && get_option( 'page_for_posts' ) ) ? get_permalink( get_option( 'page_for_posts' ) ) : home_url( '/' );
+                       $posts_page = esc_url( $posts_page );
                        if ( 'list' == $style )
                        if ( 'list' == $style )
-                               $output .= '<li><a href="' .  get_bloginfo( 'url' )  . '">' . $show_option_all . '</a></li>';
+                               $output .= "<li><a href='$posts_page'>$show_option_all</a></li>";
                        else
                        else
-                               $output .= '<a href="' .  get_bloginfo( 'url' )  . '">' . $show_option_all . '</a>';
+                               $output .= "<a href='$posts_page'>$show_option_all</a>";
+               }
 
                if ( empty( $r['current_category'] ) && ( is_category() || is_tax() || is_tag() ) ) {
                        $current_term_object = get_queried_object();
 
                if ( empty( $r['current_category'] ) && ( is_category() || is_tax() || is_tag() ) ) {
                        $current_term_object = get_queried_object();
@@ -642,9 +645,9 @@ function wp_generate_tag_cloud( $tags, $args = '' ) {
                } else {
                        // SQL cannot save you; this is a second (potentially different) sort on a subset of data.
                        if ( 'name' == $orderby )
                } else {
                        // SQL cannot save you; this is a second (potentially different) sort on a subset of data.
                        if ( 'name' == $orderby )
-                               uasort( $tags, create_function('$a, $b', 'return strnatcasecmp($a->name, $b->name);') );
+                               uasort( $tags, '_wp_object_name_sort_cb' );
                        else
                        else
-                               uasort( $tags, create_function('$a, $b', 'return ($a->count > $b->count);') );
+                               uasort( $tags, '_wp_object_count_sort_cb' );
 
                        if ( 'DESC' == $order )
                                $tags = array_reverse( $tags, true );
 
                        if ( 'DESC' == $order )
                                $tags = array_reverse( $tags, true );
@@ -704,22 +707,22 @@ function wp_generate_tag_cloud( $tags, $args = '' ) {
 }
 
 /**
 }
 
 /**
- * Callback for comparing tags based on name
+ * Callback for comparing objects based on name
  *
  * @since 3.1.0
  * @access private
  */
  *
  * @since 3.1.0
  * @access private
  */
-function _wp_tag_cloud_name_sort_cb( $a, $b ) {
+function _wp_object_name_sort_cb( $a, $b ) {
        return strnatcasecmp( $a->name, $b->name );
 }
 
 /**
        return strnatcasecmp( $a->name, $b->name );
 }
 
 /**
- * Callback for comparing tags based on count
+ * Callback for comparing objects based on count
  *
  * @since 3.1.0
  * @access private
  */
  *
  * @since 3.1.0
  * @access private
  */
-function _wp_tag_cloud_count_sort_cb( $a, $b ) {
+function _wp_object_count_sort_cb( $a, $b ) {
        return ( $a->count > $b->count );
 }
 
        return ( $a->count > $b->count );
 }
 
index 1cf44041b9c9198121c6ae31019fb788d5275300..a68711c8cd95fa1f8a4b96482c45d9fcf6716eaa 100644 (file)
@@ -180,7 +180,8 @@ class WP_Http {
                } else {
                        if ( is_array( $r['body'] ) || is_object( $r['body'] ) ) {
                                $r['body'] = http_build_query( $r['body'], null, '&' );
                } else {
                        if ( is_array( $r['body'] ) || is_object( $r['body'] ) ) {
                                $r['body'] = http_build_query( $r['body'], null, '&' );
-                               $r['headers']['Content-Type'] = 'application/x-www-form-urlencoded; charset=' . get_option( 'blog_charset' );
+                               if ( ! isset( $r['headers']['Content-Type'] ) )
+                                       $r['headers']['Content-Type'] = 'application/x-www-form-urlencoded; charset=' . get_option( 'blog_charset' );
                                $r['headers']['Content-Length'] = strlen( $r['body'] );
                        }
 
                                $r['headers']['Content-Length'] = strlen( $r['body'] );
                        }
 
@@ -222,7 +223,7 @@ class WP_Http {
        /**
         * Dispatches a HTTP request to a supporting transport.
         *
        /**
         * Dispatches a HTTP request to a supporting transport.
         *
-        * Tests each transport in order to find a transport which matches the request arguements.
+        * Tests each transport in order to find a transport which matches the request arguments.
         * Also caches the transport instance to be used later.
         *
         * The order for blocking requests is cURL, Streams, and finally Fsockopen.
         * Also caches the transport instance to be used later.
         *
         * The order for blocking requests is cURL, Streams, and finally Fsockopen.
@@ -253,7 +254,7 @@ class WP_Http {
 
                $response = $transports[$class]->request( $url, $args );
 
 
                $response = $transports[$class]->request( $url, $args );
 
-               do_action( 'http_api_debug', $response, 'response', $class );
+               do_action( 'http_api_debug', $response, 'response', $class, $args, $url );
 
                if ( is_wp_error( $response ) )
                        return $response;
 
                if ( is_wp_error( $response ) )
                        return $response;
@@ -345,7 +346,7 @@ class WP_Http {
         * @return array Processed string headers. If duplicate headers are encountered,
         *                                      Then a numbered array is returned as the value of that header-key.
         */
         * @return array Processed string headers. If duplicate headers are encountered,
         *                                      Then a numbered array is returned as the value of that header-key.
         */
-       function processHeaders($headers) {
+       public static function processHeaders($headers) {
                // split headers, one per array element
                if ( is_string($headers) ) {
                        // tolerate line terminator: CRLF = LF (RFC 2616 19.3)
                // split headers, one per array element
                if ( is_string($headers) ) {
                        // tolerate line terminator: CRLF = LF (RFC 2616 19.3)
@@ -412,7 +413,7 @@ class WP_Http {
         *
         * @param array $r Full array of args passed into ::request()
         */
         *
         * @param array $r Full array of args passed into ::request()
         */
-       function buildCookieHeader( &$r ) {
+       public static function buildCookieHeader( &$r ) {
                if ( ! empty($r['cookies']) ) {
                        $cookies_header = '';
                        foreach ( (array) $r['cookies'] as $cookie ) {
                if ( ! empty($r['cookies']) ) {
                        $cookies_header = '';
                        foreach ( (array) $r['cookies'] as $cookie ) {
@@ -631,7 +632,7 @@ class WP_Http_Fsockopen {
 
                $endDelay = time();
 
 
                $endDelay = time();
 
-               // If the delay is greater than the timeout then fsockopen should't be used, because it will
+               // If the delay is greater than the timeout then fsockopen shouldn't be used, because it will
                // cause a long delay.
                $elapseDelay = ($endDelay-$startDelay) > $r['timeout'];
                if ( true === $elapseDelay )
                // cause a long delay.
                $elapseDelay = ($endDelay-$startDelay) > $r['timeout'];
                if ( true === $elapseDelay )
@@ -755,7 +756,7 @@ class WP_Http_Fsockopen {
         * @static
         * @return boolean False means this class can not be used, true means it can.
         */
         * @static
         * @return boolean False means this class can not be used, true means it can.
         */
-       function test( $args = array() ) {
+       public static function test( $args = array() ) {
                if ( ! function_exists( 'fsockopen' ) )
                        return false;
 
                if ( ! function_exists( 'fsockopen' ) )
                        return false;
 
@@ -915,7 +916,7 @@ class WP_Http_Streams {
                else
                        $processedHeaders = WP_Http::processHeaders($meta['wrapper_data']);
 
                else
                        $processedHeaders = WP_Http::processHeaders($meta['wrapper_data']);
 
-               // Streams does not provide an error code which we can use to see why the request stream stoped.
+               // Streams does not provide an error code which we can use to see why the request stream stopped.
                // We can however test to see if a location header is present and return based on that.
                if ( isset($processedHeaders['headers']['location']) && 0 !== $args['_redirection'] )
                        return new WP_Error('http_request_failed', __('Too many redirects.'));
                // We can however test to see if a location header is present and return based on that.
                if ( isset($processedHeaders['headers']['location']) && 0 !== $args['_redirection'] )
                        return new WP_Error('http_request_failed', __('Too many redirects.'));
@@ -938,7 +939,7 @@ class WP_Http_Streams {
         *
         * @return boolean False means this class can not be used, true means it can.
         */
         *
         * @return boolean False means this class can not be used, true means it can.
         */
-       function test( $args = array() ) {
+       public static function test( $args = array() ) {
                if ( ! function_exists( 'fopen' ) )
                        return false;
 
                if ( ! function_exists( 'fopen' ) )
                        return false;
 
@@ -1031,7 +1032,7 @@ class WP_Http_Curl {
 
 
                // CURLOPT_TIMEOUT and CURLOPT_CONNECTTIMEOUT expect integers.  Have to use ceil since
 
 
                // CURLOPT_TIMEOUT and CURLOPT_CONNECTTIMEOUT expect integers.  Have to use ceil since
-               // a value of 0 will allow an ulimited timeout.
+               // a value of 0 will allow an unlimited timeout.
                $timeout = (int) ceil( $r['timeout'] );
                curl_setopt( $handle, CURLOPT_CONNECTTIMEOUT, $timeout );
                curl_setopt( $handle, CURLOPT_TIMEOUT, $timeout );
                $timeout = (int) ceil( $r['timeout'] );
                curl_setopt( $handle, CURLOPT_CONNECTTIMEOUT, $timeout );
                curl_setopt( $handle, CURLOPT_TIMEOUT, $timeout );
@@ -1117,7 +1118,7 @@ class WP_Http_Curl {
                                return new WP_Error('http_request_failed', __('Too many redirects.'));
                }
 
                                return new WP_Error('http_request_failed', __('Too many redirects.'));
                }
 
-               unset( $this->headers );
+               $this->headers = '';
 
                $response = array();
                $response['code'] = curl_getinfo( $handle, CURLINFO_HTTP_CODE );
 
                $response = array();
                $response['code'] = curl_getinfo( $handle, CURLINFO_HTTP_CODE );
@@ -1165,7 +1166,7 @@ class WP_Http_Curl {
         *
         * @return boolean False means this class can not be used, true means it can.
         */
         *
         * @return boolean False means this class can not be used, true means it can.
         */
-       function test( $args = array() ) {
+       public static function test( $args = array() ) {
                if ( ! function_exists( 'curl_init' ) || ! function_exists( 'curl_exec' ) )
                        return false;
 
                if ( ! function_exists( 'curl_init' ) || ! function_exists( 'curl_exec' ) )
                        return false;
 
@@ -1579,7 +1580,7 @@ class WP_Http_Encoding {
         * @param string $supports Optional, not used. When implemented it will choose the right compression based on what the server supports.
         * @return string|bool False on failure.
         */
         * @param string $supports Optional, not used. When implemented it will choose the right compression based on what the server supports.
         * @return string|bool False on failure.
         */
-       function compress( $raw, $level = 9, $supports = null ) {
+       public static function compress( $raw, $level = 9, $supports = null ) {
                return gzdeflate( $raw, $level );
        }
 
                return gzdeflate( $raw, $level );
        }
 
@@ -1597,7 +1598,7 @@ class WP_Http_Encoding {
         * @param int $length The optional length of the compressed data.
         * @return string|bool False on failure.
         */
         * @param int $length The optional length of the compressed data.
         * @return string|bool False on failure.
         */
-       function decompress( $compressed, $length = null ) {
+       public static function decompress( $compressed, $length = null ) {
 
                if ( empty($compressed) )
                        return $compressed;
 
                if ( empty($compressed) )
                        return $compressed;
@@ -1625,17 +1626,25 @@ class WP_Http_Encoding {
         * Decompression of deflated string while staying compatible with the majority of servers.
         *
         * Certain Servers will return deflated data with headers which PHP's gziniflate()
         * Decompression of deflated string while staying compatible with the majority of servers.
         *
         * Certain Servers will return deflated data with headers which PHP's gziniflate()
-        * function cannot handle out of the box. The following function lifted from
-        * http://au2.php.net/manual/en/function.gzinflate.php#77336 will attempt to deflate
-        * the various return forms used.
+        * function cannot handle out of the box. The following function has been created from
+        * various snippets on the gzinflate() PHP documentation.
+        *
+        * Warning: Magic numbers within. Due to the potential different formats that the compressed
+        * data may be returned in, some "magic offsets" are needed to ensure proper decompression
+        * takes place. For a simple progmatic way to determine the magic offset in use, see:
+        * http://core.trac.wordpress.org/ticket/18273
         *
         * @since 2.8.1
         *
         * @since 2.8.1
+        * @link http://core.trac.wordpress.org/ticket/18273
+        * @link http://au2.php.net/manual/en/function.gzinflate.php#70875
         * @link http://au2.php.net/manual/en/function.gzinflate.php#77336
         *
         * @param string $gzData String to decompress.
         * @return string|bool False on failure.
         */
         * @link http://au2.php.net/manual/en/function.gzinflate.php#77336
         *
         * @param string $gzData String to decompress.
         * @return string|bool False on failure.
         */
-       function compatible_gzinflate($gzData) {
+       public static function compatible_gzinflate($gzData) {
+
+               // Compressed data might contain a full header, if so strip it for gzinflate()
                if ( substr($gzData, 0, 3) == "\x1f\x8b\x08" ) {
                        $i = 10;
                        $flg = ord( substr($gzData, 3, 1) );
                if ( substr($gzData, 0, 3) == "\x1f\x8b\x08" ) {
                        $i = 10;
                        $flg = ord( substr($gzData, 3, 1) );
@@ -1651,10 +1660,17 @@ class WP_Http_Encoding {
                                if ( $flg & 2 )
                                        $i = $i + 2;
                        }
                                if ( $flg & 2 )
                                        $i = $i + 2;
                        }
-                       return gzinflate( substr($gzData, $i, -8) );
-               } else {
-                       return false;
+                       $decompressed = @gzinflate( substr($gzData, $i, -8) );
+                       if ( false !== $decompressed )
+                               return $decompressed;
                }
                }
+
+               // Compressed data from java.util.zip.Deflater amongst others.
+               $decompressed = @gzinflate( substr($gzData, 2) );
+               if ( false !== $decompressed )
+                       return $decompressed;
+
+               return false;
        }
 
        /**
        }
 
        /**
@@ -1664,7 +1680,7 @@ class WP_Http_Encoding {
         *
         * @return string Types of encoding to accept.
         */
         *
         * @return string Types of encoding to accept.
         */
-       function accept_encoding() {
+       public static function accept_encoding() {
                $type = array();
                if ( function_exists( 'gzinflate' ) )
                        $type[] = 'deflate;q=1.0';
                $type = array();
                if ( function_exists( 'gzinflate' ) )
                        $type[] = 'deflate;q=1.0';
@@ -1679,13 +1695,13 @@ class WP_Http_Encoding {
        }
 
        /**
        }
 
        /**
-        * What enconding the content used when it was compressed to send in the headers.
+        * What encoding the content used when it was compressed to send in the headers.
         *
         * @since 2.8
         *
         * @return string Content-Encoding string to send in the header.
         */
         *
         * @since 2.8
         *
         * @return string Content-Encoding string to send in the header.
         */
-       function content_encoding() {
+       public static function content_encoding() {
                return 'deflate';
        }
 
                return 'deflate';
        }
 
@@ -1697,7 +1713,7 @@ class WP_Http_Encoding {
         * @param array|string $headers All of the available headers.
         * @return bool
         */
         * @param array|string $headers All of the available headers.
         * @return bool
         */
-       function should_decode($headers) {
+       public static function should_decode($headers) {
                if ( is_array( $headers ) ) {
                        if ( array_key_exists('content-encoding', $headers) && ! empty( $headers['content-encoding'] ) )
                                return true;
                if ( is_array( $headers ) ) {
                        if ( array_key_exists('content-encoding', $headers) && ! empty( $headers['content-encoding'] ) )
                                return true;
@@ -1719,7 +1735,7 @@ class WP_Http_Encoding {
         *
         * @return bool
         */
         *
         * @return bool
         */
-       function is_available() {
+       public static function is_available() {
                return ( function_exists('gzuncompress') || function_exists('gzdeflate') || function_exists('gzinflate') );
        }
 }
                return ( function_exists('gzuncompress') || function_exists('gzdeflate') || function_exists('gzinflate') );
        }
 }
index 8bfe258651796ce1a92f27c537078b801e72a4f1..f79772caedaecdae37086c1a57f39a27357c509e 100644 (file)
@@ -28,15 +28,15 @@ class WP_oEmbed {
        function __construct() {
                // List out some popular sites that support oEmbed.
                // The WP_Embed class disables discovery for non-unfiltered_html users, so only providers in this array will be used for them.
        function __construct() {
                // List out some popular sites that support oEmbed.
                // The WP_Embed class disables discovery for non-unfiltered_html users, so only providers in this array will be used for them.
-               // Add to this list using the wp_oembed_add_provider() function (see it's PHPDoc for details).
+               // Add to this list using the wp_oembed_add_provider() function (see its PHPDoc for details).
                $this->providers = apply_filters( 'oembed_providers', array(
                        '#http://(www\.)?youtube.com/watch.*#i'         => array( 'http://www.youtube.com/oembed',            true  ),
                        'http://youtu.be/*'                             => array( 'http://www.youtube.com/oembed',            false ),
                        'http://blip.tv/*'                              => array( 'http://blip.tv/oembed/',                   false ),
                $this->providers = apply_filters( 'oembed_providers', array(
                        '#http://(www\.)?youtube.com/watch.*#i'         => array( 'http://www.youtube.com/oembed',            true  ),
                        'http://youtu.be/*'                             => array( 'http://www.youtube.com/oembed',            false ),
                        'http://blip.tv/*'                              => array( 'http://blip.tv/oembed/',                   false ),
-                       '#http://(www\.)?vimeo\.com/.*#i'               => array( 'http://www.vimeo.com/api/oembed.{format}', true  ),
+                       '#http://(www\.)?vimeo\.com/.*#i'               => array( 'http://vimeo.com/api/oembed.{format}',     true  ),
                        '#http://(www\.)?dailymotion\.com/.*#i'         => array( 'http://www.dailymotion.com/api/oembed',    true  ),
                        '#http://(www\.)?flickr\.com/.*#i'              => array( 'http://www.flickr.com/services/oembed/',   true  ),
                        '#http://(www\.)?dailymotion\.com/.*#i'         => array( 'http://www.dailymotion.com/api/oembed',    true  ),
                        '#http://(www\.)?flickr\.com/.*#i'              => array( 'http://www.flickr.com/services/oembed/',   true  ),
-                       '#http://(.+)?smugmug\.com/.*#i'                => array( 'http://api.smugmug.com/services/oembed/',  true  ),
+                       '#http://(.+\.)?smugmug\.com/.*#i'              => array( 'http://api.smugmug.com/services/oembed/',  true  ),
                        '#http://(www\.)?hulu\.com/watch/.*#i'          => array( 'http://www.hulu.com/api/oembed.{format}',  true  ),
                        '#http://(www\.)?viddler\.com/.*#i'             => array( 'http://lab.viddler.com/services/oembed/',  true  ),
                        'http://qik.com/*'                              => array( 'http://qik.com/api/oembed.{format}',       false ),
                        '#http://(www\.)?hulu\.com/watch/.*#i'          => array( 'http://www.hulu.com/api/oembed.{format}',  true  ),
                        '#http://(www\.)?viddler\.com/.*#i'             => array( 'http://lab.viddler.com/services/oembed/',  true  ),
                        'http://qik.com/*'                              => array( 'http://qik.com/api/oembed.{format}',       false ),
@@ -45,7 +45,7 @@ class WP_oEmbed {
                        'http://gi*.photobucket.com/groups/*'           => array( 'http://photobucket.com/oembed',            false ),
                        '#http://(www\.)?scribd\.com/.*#i'              => array( 'http://www.scribd.com/services/oembed',    true  ),
                        'http://wordpress.tv/*'                         => array( 'http://wordpress.tv/oembed/',              false ),
                        'http://gi*.photobucket.com/groups/*'           => array( 'http://photobucket.com/oembed',            false ),
                        '#http://(www\.)?scribd\.com/.*#i'              => array( 'http://www.scribd.com/services/oembed',    true  ),
                        'http://wordpress.tv/*'                         => array( 'http://wordpress.tv/oembed/',              false ),
-                       '#http://(answers|surveys)\.polldaddy.com/.*#i' => array( 'http://polldaddy.com/oembed/',             true  ),
+                       '#http://(.+\.)?polldaddy\.com/.*#i'            => array( 'http://polldaddy.com/oembed/',             true  ),
                        '#http://(www\.)?funnyordie\.com/videos/.*#i'   => array( 'http://www.funnyordie.com/oembed',         true  ),
                ) );
 
                        '#http://(www\.)?funnyordie\.com/videos/.*#i'   => array( 'http://www.funnyordie.com/oembed',         true  ),
                ) );
 
index ad474bcc502c5ccd5d6082fd8caab6199d757def..dcdf3803b5e2bfd62313e830aede5eae00111098 100644 (file)
@@ -49,7 +49,7 @@ class PasswordHash {
 
                $this->portable_hashes = $portable_hashes;
 
 
                $this->portable_hashes = $portable_hashes;
 
-               $this->random_state = microtime() . uniqid(rand(), TRUE); // removed getmypid() for compability reasons
+               $this->random_state = microtime() . uniqid(rand(), TRUE); // removed getmypid() for compatibility reasons
        }
 
        function get_random_bytes($count)
        }
 
        function get_random_bytes($count)
index 7db0fa22ba3298d0e66fed0b24bdeb22324980b5..8ee6d1cf207349af36d9737674ae0cdbed77f161 100644 (file)
@@ -1,31 +1,37 @@
 <?php
 class WP_Admin_Bar {
 <?php
 class WP_Admin_Bar {
-       var $changed_locale = false;
-       var $menu;
-       var $need_to_change_locale = false;
-       var $proto = 'http://';
-       var $user;
-
-       function initialize() {
-               /* Set the protocol used throughout this code */
-               if ( is_ssl() )
-                       $this->proto = 'https://';
+       private $nodes = array();
+       private $bound = false;
+       public $user;
+
+       public function __get( $name ) {
+               switch ( $name ) {
+                       case 'proto' :
+                               return is_ssl() ? 'https://' : 'http://';
+                               break;
+                       case 'menu' :
+                               _deprecated_argument( 'WP_Admin_Bar', '3.3', 'Modify admin bar nodes with WP_Admin_Bar::get_node(), WP_Admin_Bar::add_node(), and WP_Admin_Bar::remove_node(), not the <code>menu</code> property.' );
+                               return array(); // Sorry, folks.
+                               break;
+               }
+       }
 
 
+       public function initialize() {
                $this->user = new stdClass;
                $this->user = new stdClass;
-               $this->menu = new stdClass;
-
-               /* Populate settings we need for the menu based on the current user. */
-               $this->user->blogs = get_blogs_of_user( get_current_user_id() );
-               if ( is_multisite() ) {
-                       $this->user->active_blog = get_active_blog_for_user( get_current_user_id() );
-                       $this->user->domain = empty( $this->user->active_blog ) ? user_admin_url() : trailingslashit( get_home_url( $this->user->active_blog->blog_id ) );
-                       $this->user->account_domain = $this->user->domain;
-               } else {
-                       $this->user->active_blog = $this->user->blogs[get_current_blog_id()];
-                       $this->user->domain = trailingslashit( home_url() );
-                       $this->user->account_domain = $this->user->domain;
+
+               if ( is_user_logged_in() ) {
+                       /* Populate settings we need for the menu based on the current user. */
+                       $this->user->blogs = get_blogs_of_user( get_current_user_id() );
+                       if ( is_multisite() ) {
+                               $this->user->active_blog = get_active_blog_for_user( get_current_user_id() );
+                               $this->user->domain = empty( $this->user->active_blog ) ? user_admin_url() : trailingslashit( get_home_url( $this->user->active_blog->blog_id ) );
+                               $this->user->account_domain = $this->user->domain;
+                       } else {
+                               $this->user->active_blog = $this->user->blogs[get_current_blog_id()];
+                               $this->user->domain = trailingslashit( home_url() );
+                               $this->user->account_domain = $this->user->domain;
+                       }
                }
                }
-               $this->user->locale = get_locale();
 
                add_action( 'wp_head', 'wp_admin_bar_header' );
 
 
                add_action( 'wp_head', 'wp_admin_bar_header' );
 
@@ -47,191 +53,421 @@ class WP_Admin_Bar {
                do_action( 'admin_bar_init' );
        }
 
                do_action( 'admin_bar_init' );
        }
 
-       function add_menu( $args = array() ) {
+       public function add_menu( $node ) {
+               $this->add_node( $node );
+       }
+
+       public function remove_menu( $id ) {
+               $this->remove_node( $id );
+       }
+
+       /**
+        * Add a node to the menu.
+        *
+        * @param array $args - The arguments for each node.
+        * - id         - string    - The ID of the item.
+        * - title      - string    - The title of the node.
+        * - parent     - string    - The ID of the parent node. Optional.
+        * - href       - string    - The link for the item. Optional.
+        * - group      - boolean   - If the node is a group. Optional. Default false.
+        * - meta       - array     - Meta data including the following keys: html, class, onclick, target, title, tabindex.
+        */
+       public function add_node( $args ) {
+               // Shim for old method signature: add_node( $parent_id, $menu_obj, $args )
+               if ( func_num_args() >= 3 && is_string( func_get_arg(0) ) )
+                       $args = array_merge( array( 'parent' => func_get_arg(0) ), func_get_arg(2) );
+
+               if ( is_object( $args ) )
+                       $args = get_object_vars( $args );
+
+               // Ensure we have a valid title.
+               if ( empty( $args['id'] ) ) {
+                       if ( empty( $args['title'] ) )
+                               return;
+
+                       _doing_it_wrong( __METHOD__, __( 'The menu ID should not be empty.' ), '3.3' );
+                       // Deprecated: Generate an ID from the title.
+                       $args['id'] = esc_attr( sanitize_title( trim( $args['title'] ) ) );
+               }
+
                $defaults = array(
                $defaults = array(
-                       'title' => false,
-                       'href' => false,
-                       'parent' => false, // false for a root menu, pass the ID value for a submenu of that menu.
-                       'id' => false, // defaults to a sanitized title value.
-                       'meta' => false // array of any of the following options: array( 'html' => '', 'class' => '', 'onclick' => '', target => '', title => '' );
+                       'id'     => false,
+                       'title'  => false,
+                       'parent' => false,
+                       'href'   => false,
+                       'group'  => false,
+                       'meta'   => array(),
                );
 
                );
 
-               $r = wp_parse_args( $args, $defaults );
-               extract( $r, EXTR_SKIP );
+               // If the node already exists, keep any data that isn't provided.
+               if ( $maybe_defaults = $this->get_node( $args['id'] ) )
+                       $defaults = get_object_vars( $maybe_defaults );
+
+               // Do the same for 'meta' items.
+               if ( ! empty( $defaults['meta'] ) && empty( $args['meta'] ) )
+                       $args['meta'] = wp_parse_args( $args['meta'], $defaults['meta'] );
 
 
-               if ( empty( $title ) )
-                       return false;
+               $args = wp_parse_args( $args, $defaults );
+
+               $back_compat_parents = array(
+                       'my-account-with-avatar' => array( 'my-account', '3.3' ),
+                       'my-blogs'               => array( 'my-sites',   '3.3' ),
+               );
+
+               if ( isset( $back_compat_parents[ $args['parent'] ] ) ) {
+                       list( $new_parent, $version ) = $back_compat_parents[ $args['parent'] ];
+                       _deprecated_argument( __METHOD__, $version, sprintf( 'Use <code>%s</code> as the parent for the <code>%s</code> admin bar node instead of <code>%s</code>.', $new_parent, $args['id'], $args['parent'] ) );
+                       $args['parent'] = $new_parent;
+               }
+
+               $this->_set_node( $args );
+       }
+
+       final protected function _set_node( $args ) {
+               $this->nodes[ $args['id'] ] = (object) $args;
+       }
+
+       /**
+        * Gets a node.
+        *
+        * @return object Node.
+        */
+       final public function get_node( $id ) {
+               if ( $node = $this->_get_node( $id ) )
+                       return clone $node;
+       }
+
+       final protected function _get_node( $id ) {
+               if ( $this->bound )
+                       return;
 
 
-               /* Make sure we have a valid ID */
                if ( empty( $id ) )
                if ( empty( $id ) )
-                       $id = esc_attr( sanitize_title( trim( $title ) ) );
+                       $id = 'root';
 
 
-               if ( ! empty( $parent ) ) {
-                       /* Add the menu to the parent item */
-                       $child = array( 'id' => $id, 'title' => $title, 'href' => $href );
+               if ( isset( $this->nodes[ $id ] ) )
+                       return $this->nodes[ $id ];
+       }
 
 
-                       if ( ! empty( $meta ) )
-                               $child['meta'] = $meta;
+       final public function get_nodes() {
+          if ( ! $nodes = $this->_get_nodes() )
+             return;
 
 
-                       $this->add_node( $parent, $this->menu, $child );
-               } else {
-                       /* Add the menu item */
-                       $this->menu->{$id} = array( 'title' => $title, 'href' => $href );
+          foreach ( $nodes as &$node ) {
+              $node = clone $node;
+          }
+          return $nodes;
+       }
 
 
-                       if ( ! empty( $meta ) )
-                               $this->menu->{$id}['meta'] = $meta;
-               }
+       final protected function _get_nodes() {
+               if ( $this->bound )
+                       return;
+
+               return $this->nodes;
+       }
+
+       /**
+        * Add a group to a menu node.
+        *
+        * @since 3.3.0
+        *
+        * @param array $args - The arguments for each node.
+        * - id         - string    - The ID of the item.
+        * - parent     - string    - The ID of the parent node. Optional. Default root.
+        * - meta       - array     - Meta data including the following keys: class, onclick, target, title.
+        */
+       final public function add_group( $args ) {
+               $args['group'] = true;
+
+               $this->add_node( $args );
+       }
+
+       /**
+        * Remove a node.
+        *
+        * @return object The removed node.
+        */
+       public function remove_node( $id ) {
+               $this->_unset_node( $id );
+       }
+
+       final protected function _unset_node( $id ) {
+               unset( $this->nodes[ $id ] );
+       }
+
+       public function render() {
+               $root = $this->_bind();
+               $this->_render( $root );
        }
 
        }
 
-       function remove_menu( $id ) {
-               return $this->remove_node( $id, $this->menu );
+       final protected function _bind() {
+               if ( $this->bound )
+                       return;
+
+               // Add the root node.
+               // Clear it first, just in case. Don't mess with The Root.
+               $this->remove_node( 'root' );
+               $this->add_node( array(
+                       'id'    => 'root',
+                       'group' => false,
+               ) );
+
+               // Normalize nodes: define internal 'children' and 'type' properties.
+               foreach ( $this->_get_nodes() as $node ) {
+                       $node->children = array();
+                       $node->type = ( $node->group ) ? 'group' : 'item';
+                       unset( $node->group );
+
+                       // The Root wants your orphans. No lonely items allowed.
+                       if ( ! $node->parent )
+                               $node->parent = 'root';
+               }
+
+               foreach ( $this->_get_nodes() as $node ) {
+                       if ( 'root' == $node->id )
+                               continue;
+
+                       // Fetch the parent node. If it isn't registered, ignore the node.
+                       if ( ! $parent = $this->_get_node( $node->parent ) ) {
+                               continue;
+                       }
+
+                       // Generate the group class (we distinguish between top level and other level groups).
+                       $group_class = ( $node->parent == 'root' ) ? 'ab-top-menu' : 'ab-submenu';
+
+                       if ( $node->type == 'group' ) {
+                               if ( empty( $node->meta['class'] ) )
+                                       $node->meta['class'] = '';
+                               $node->meta['class'] .= ' ' . $group_class;
+                       }
+
+                       // Items in items aren't allowed. Wrap nested items in 'default' groups.
+                       if ( $parent->type == 'item' && $node->type == 'item' ) {
+                               $default_id = $parent->id . '-default';
+                               $default    = $this->_get_node( $default_id );
+
+                               // The default group is added here to allow groups that are
+                               // added before standard menu items to render first.
+                               if ( ! $default ) {
+                                       // Use _set_node because add_node can be overloaded.
+                                       // Make sure to specify default settings for all properties.
+                                       $this->_set_node( array(
+                                               'id'        => $default_id,
+                                               'parent'    => $parent->id,
+                                               'type'      => 'group',
+                                               'children'  => array(),
+                                               'meta'      => array(
+                                                       'class'     => $group_class,
+                                               ),
+                                               'title'     => false,
+                                               'href'      => false,
+                                       ) );
+                                       $default = $this->_get_node( $default_id );
+                                       $parent->children[] = $default;
+                               }
+                               $parent = $default;
+
+                       // Groups in groups aren't allowed. Add a special 'container' node.
+                       // The container will invisibly wrap both groups.
+                       } elseif ( $parent->type == 'group' && $node->type == 'group' ) {
+                               $container_id = $parent->id . '-container';
+                               $container    = $this->_get_node( $container_id );
+
+                               // We need to create a container for this group, life is sad.
+                               if ( ! $container ) {
+                                       // Use _set_node because add_node can be overloaded.
+                                       // Make sure to specify default settings for all properties.
+                                       $this->_set_node( array(
+                                               'id'       => $container_id,
+                                               'type'     => 'container',
+                                               'children' => array( $parent ),
+                                               'parent'   => false,
+                                               'title'    => false,
+                                               'href'     => false,
+                                               'meta'     => array(),
+                                       ) );
+
+                                       $container = $this->_get_node( $container_id );
+
+                                       // Link the container node if a grandparent node exists.
+                                       $grandparent = $this->_get_node( $parent->parent );
+
+                                       if ( $grandparent ) {
+                                               $container->parent = $grandparent->id;
+
+                                               $index = array_search( $parent, $grandparent->children, true );
+                                               if ( $index === false )
+                                                       $grandparent->children[] = $container;
+                                               else
+                                                       array_splice( $grandparent->children, $index, 1, array( $container ) );
+                                       }
+
+                                       $parent->parent = $container->id;
+                               }
+
+                               $parent = $container;
+                       }
+
+                       // Update the parent ID (it might have changed).
+                       $node->parent = $parent->id;
+
+                       // Add the node to the tree.
+                       $parent->children[] = $node;
+               }
+
+               $root = $this->_get_node( 'root' );
+               $this->bound = true;
+               return $root;
        }
 
        }
 
-       function render() {
+       final protected function _render( $root ) {
+               global $is_IE, $is_iphone;
+
+               // Add browser classes.
+               // We have to do this here since admin bar shows on the front end.
+               $class = 'nojq nojs';
+               if ( $is_IE ) {
+                       if ( strpos( $_SERVER['HTTP_USER_AGENT'], 'MSIE 7' ) )
+                               $class .= ' ie7';
+                       elseif ( strpos( $_SERVER['HTTP_USER_AGENT'], 'MSIE 8' ) )
+                               $class .= ' ie8';
+                       elseif ( strpos( $_SERVER['HTTP_USER_AGENT'], 'MSIE 9' ) )
+                               $class .= ' ie9';
+               } elseif ( $is_iphone ) {
+                       $class .= ' mobile';
+               }
+
                ?>
                ?>
-               <div id="wpadminbar">
+               <div id="wpadminbar" class="<?php echo $class; ?>" role="navigation">
                        <div class="quicklinks">
                        <div class="quicklinks">
-                               <ul>
-                                       <?php foreach ( (array) $this->menu as $id => $menu_item ) : ?>
-                                               <?php $this->recursive_render( $id, $menu_item ) ?>
-                                       <?php endforeach; ?>
-                               </ul>
-                       </div>
-
-                       <div id="adminbarsearch-wrap">
-                               <form action="<?php echo home_url(); ?>" method="get" id="adminbarsearch">
-                                       <input class="adminbar-input" name="s" id="adminbar-search" type="text" value="" maxlength="150" />
-                                       <input type="submit" class="adminbar-button" value="<?php _e('Search'); ?>"/>
-                               </form>
+                               <?php foreach ( $root->children as $group ) {
+                                       $this->_render_group( $group );
+                               } ?>
                        </div>
                </div>
 
                <?php
                        </div>
                </div>
 
                <?php
-               /* Wipe the menu, might reduce memory usage, but probably not. */
-               $this->menu = null;
        }
 
        }
 
-       /* Helpers */
-       function recursive_render( $id, &$menu_item ) { ?>
-               <?php
-               $is_parent =  ! empty( $menu_item['children'] );
+       final protected function _render_container( $node ) {
+               if ( $node->type != 'container' || empty( $node->children ) )
+                       return;
+
+               ?><div id="<?php echo esc_attr( 'wp-admin-bar-' . $node->id ); ?>" class="ab-group-container"><?php
+                       foreach ( $node->children as $group ) {
+                               $this->_render_group( $group );
+                       }
+               ?></div><?php
+       }
+
+       final protected function _render_group( $node ) {
+               if ( $node->type == 'container' )
+                       return $this->_render_container( $node );
+
+               if ( $node->type != 'group' || empty( $node->children ) )
+                       return;
+
+               $class = empty( $node->meta['class'] ) ? '' : $node->meta['class'];
+
+               ?><ul id="<?php echo esc_attr( 'wp-admin-bar-' . $node->id ); ?>" class="<?php echo esc_attr( $class ); ?>"><?php
+                       foreach ( $node->children as $item ) {
+                               $this->_render_item( $item );
+                       }
+               ?></ul><?php
+       }
+
+       final protected function _render_item( $node ) {
+               if ( $node->type != 'item' )
+                       return;
+
+               $is_parent = ! empty( $node->children );
+               $has_link  = ! empty( $node->href );
+
+               $tabindex = isset( $node->meta['tabindex'] ) ? (int) $node->meta['tabindex'] : 10;
+
+               $menuclass = '';
+               $aria_attributes = 'tabindex="' . $tabindex . '"';
+
+               if ( $is_parent ) {
+                       $menuclass = 'menupop';
+                       $aria_attributes .= ' aria-haspopup="true"';
+               }
+
+               if ( ! empty( $node->meta['class'] ) )
+                       $menuclass .= ' ' . $node->meta['class'];
 
 
-               $menuclass = $is_parent ? 'menupop' : '';
-               if ( ! empty( $menu_item['meta']['class'] ) )
-                       $menuclass .= ' ' . $menu_item['meta']['class'];
                ?>
 
                ?>
 
-               <li id="<?php echo esc_attr( "wp-admin-bar-$id" ); ?>" class="<?php echo esc_attr( $menuclass ); ?>">
-                       <a href="<?php echo esc_url( $menu_item['href'] ) ?>"<?php
-                               if ( ! empty( $menu_item['meta']['onclick'] ) ) :
-                                       ?> onclick="<?php echo esc_js( $menu_item['meta']['onclick'] ); ?>"<?php
+               <li id="<?php echo esc_attr( 'wp-admin-bar-' . $node->id ); ?>" class="<?php echo esc_attr( $menuclass ); ?>"><?php
+                       if ( $has_link ):
+                               ?><a class="ab-item" <?php echo $aria_attributes; ?> href="<?php echo esc_url( $node->href ) ?>"<?php
+                                       if ( ! empty( $node->meta['onclick'] ) ) :
+                                               ?> onclick="<?php echo esc_js( $node->meta['onclick'] ); ?>"<?php
+                                       endif;
+                               if ( ! empty( $node->meta['target'] ) ) :
+                                       ?> target="<?php echo esc_attr( $node->meta['target'] ); ?>"<?php
                                endif;
                                endif;
-                       if ( ! empty( $menu_item['meta']['target'] ) ) :
-                               ?> target="<?php echo esc_attr( $menu_item['meta']['target'] ); ?>"<?php
-                       endif;
-                       if ( ! empty( $menu_item['meta']['title'] ) ) :
-                               ?> title="<?php echo esc_attr( $menu_item['meta']['title'] ); ?>"<?php
+                               if ( ! empty( $node->meta['title'] ) ) :
+                                       ?> title="<?php echo esc_attr( $node->meta['title'] ); ?>"<?php
+                               endif;
+                               ?>><?php
+                       else:
+                               ?><div class="ab-item ab-empty-item" <?php echo $aria_attributes;
+                               if ( ! empty( $node->meta['title'] ) ) :
+                                       ?> title="<?php echo esc_attr( $node->meta['title'] ); ?>"<?php
+                               endif;
+                               ?>><?php
                        endif;
 
                        endif;
 
-                       ?>><?php
+                       echo $node->title;
 
 
-                       if ( $is_parent ) :
-                               ?><span><?php
+                       if ( $has_link ) :
+                               ?></a><?php
+                       else:
+                               ?></div><?php
                        endif;
 
                        endif;
 
-                       echo $menu_item['title'];
-
                        if ( $is_parent ) :
                        if ( $is_parent ) :
-                               ?></span><?php
+                               ?><div class="ab-sub-wrapper"><?php
+                                       foreach ( $node->children as $group ) {
+                                               $this->_render_group( $group );
+                                       }
+                               ?></div><?php
                        endif;
 
                        endif;
 
-                       ?></a>
-
-                       <?php if ( $is_parent ) : ?>
-                       <ul>
-                               <?php foreach ( $menu_item['children'] as $child_id => $child_menu_item ) : ?>
-                                       <?php $this->recursive_render( $child_id, $child_menu_item ); ?>
-                               <?php endforeach; ?>
-                       </ul>
-                       <?php endif; ?>
+                       if ( ! empty( $node->meta['html'] ) )
+                               echo $node->meta['html'];
 
 
-                       <?php if ( ! empty( $menu_item['meta']['html'] ) ) : ?>
-                               <?php echo $menu_item['meta']['html']; ?>
-                       <?php endif; ?>
+                       ?>
                </li><?php
        }
 
                </li><?php
        }
 
-       function add_node( $parent_id, &$menu, $child ) {
-               foreach( $menu as $id => $menu_item ) {
-                       if ( $parent_id == $id ) {
-                               $menu->{$parent_id}['children']->{$child['id']} = $child;
-                               $child = null;
-                               return true;
-                       }
-
-                       if ( ! empty( $menu->{$id}['children'] ) )
-                               $this->add_node( $parent_id, $menu->{$id}['children'], $child );
-               }
-
-               $child = null;
-
-               return false;
+       public function recursive_render( $id, $node ) {
+               _deprecated_function( __METHOD__, '3.3', 'WP_Admin_bar::render(), WP_Admin_Bar::_render_item()' );
+               $this->_render_item( $node );
        }
 
        }
 
-       function add_menus() {
-               add_action( 'admin_bar_menu', 'wp_admin_bar_my_account_menu', 10 );
-               add_action( 'admin_bar_menu', 'wp_admin_bar_my_sites_menu', 20 );
-               add_action( 'admin_bar_menu', 'wp_admin_bar_dashboard_view_site_menu', 25 );
-               add_action( 'admin_bar_menu', 'wp_admin_bar_edit_menu', 30 );
-               add_action( 'admin_bar_menu', 'wp_admin_bar_shortlink_menu', 80 );
-               add_action( 'admin_bar_menu', 'wp_admin_bar_updates_menu', 70 );
-
-               if ( !is_network_admin() && !is_user_admin() ) {
-                       add_action( 'admin_bar_menu', 'wp_admin_bar_new_content_menu', 40 );
-                       add_action( 'admin_bar_menu', 'wp_admin_bar_comments_menu', 50 );
-                       add_action( 'admin_bar_menu', 'wp_admin_bar_appearance_menu', 60 );
-               }
-
-               do_action( 'add_admin_bar_menus' );
-       }
+       public function add_menus() {
+               // User related, aligned right.
+               add_action( 'admin_bar_menu', 'wp_admin_bar_my_account_menu', 0 );
+               add_action( 'admin_bar_menu', 'wp_admin_bar_search_menu', 4 );
+               add_action( 'admin_bar_menu', 'wp_admin_bar_my_account_item', 7 );
 
 
-       function remove_node( $id, &$menu ) {
-               if ( isset( $menu->$id ) ) {
-                       unset( $menu->$id );
-                       return true;
-               }
+               // Site related.
+               add_action( 'admin_bar_menu', 'wp_admin_bar_wp_menu', 10 );
+               add_action( 'admin_bar_menu', 'wp_admin_bar_my_sites_menu', 20 );
+               add_action( 'admin_bar_menu', 'wp_admin_bar_site_menu', 30 );
+               add_action( 'admin_bar_menu', 'wp_admin_bar_updates_menu', 40 );
 
 
-               foreach( $menu as $menu_item_id => $menu_item ) {
-                       if ( ! empty( $menu->{$menu_item_id}['children'] ) )
-                               $this->remove_node( $id, $menu->{$menu_item_id}['children'] );
+               // Content related.
+               if ( ! is_network_admin() && ! is_user_admin() ) {
+                       add_action( 'admin_bar_menu', 'wp_admin_bar_comments_menu', 60 );
+                       add_action( 'admin_bar_menu', 'wp_admin_bar_new_content_menu', 70 );
                }
                }
+               add_action( 'admin_bar_menu', 'wp_admin_bar_edit_menu', 80 );
 
 
-               return false;
-       }
+               add_action( 'admin_bar_menu', 'wp_admin_bar_add_secondary_groups', 200 );
 
 
-       // TODO: Convert to a core feature for multisite or remove
-       function load_user_locale_translations() {
-               $this->need_to_change_locale = ( get_locale() != $this->user->locale );
-               if ( ! $this->need_to_change_locale )
-                       return;
-               /*
-               $this->previous_translations = get_translations_for_domain( 'default' );
-               $this->adminbar_locale_filter = lambda( '$_', '$GLOBALS["wp_admin_bar"]->user->locale;' );
-               unload_textdomain( 'default' );
-               add_filter( 'locale', $this->adminbar_locale_filter );
-               load_default_textdomain();
-               $this->changed_locale = true;
-               */
-       }
-
-       function unload_user_locale_translations() {
-               global $l10n;
-               if ( ! $this->changed_locale )
-                       return;
-               /*
-               remove_filter( 'locale', $this->adminbar_locale_filter );
-               $l10n['default'] = &$this->previous_translations;
-               */
+               do_action( 'add_admin_bar_menus' );
        }
 }
 ?>
        }
 }
 ?>
diff --git a/wp-includes/class-wp-editor.php b/wp-includes/class-wp-editor.php
new file mode 100644 (file)
index 0000000..a272eb7
--- /dev/null
@@ -0,0 +1,798 @@
+<?php
+/**
+ * Facilitates adding of the WordPress editor as used on the Write and Edit screens.
+ *
+ * @package WordPress
+ * @since 3.3
+ *
+ * Private, not included by default. See wp_editor() in wp-includes/general-template.php.
+ */
+
+final class _WP_Editors {
+       public static $mce_locale;
+
+       private static $mce_settings = array();
+       private static $qt_settings = array();
+       private static $plugins = array();
+       private static $qt_buttons = array();
+       private static $ext_plugins;
+       private static $baseurl;
+       private static $first_init;
+       private static $this_tinymce = false;
+       private static $this_quicktags = false;
+       private static $has_tinymce = false;
+       private static $has_quicktags = false;
+       private static $has_medialib = false;
+       private static $editor_buttons_css = true;
+
+       private function __construct() {}
+
+       public static function parse_settings($editor_id, $settings) {
+               $set = wp_parse_args( $settings,  array(
+                       'wpautop' => true, // use wpautop?
+                       'media_buttons' => true, // show insert/upload button(s)
+                       'textarea_name' => $editor_id, // set the textarea name to something different, square brackets [] can be used here
+                       'textarea_rows' => get_option('default_post_edit_rows', 10), // rows="..."
+                       'tabindex' => '',
+                       'editor_css' => '', // intended for extra styles for both visual and HTML editors buttons, needs to include the <style> tags, can use "scoped".
+                       'editor_class' => '', // add extra class(es) to the editor textarea
+                       'teeny' => false, // output the minimal editor config used in Press This
+                       'dfw' => false, // replace the default fullscreen with DFW (needs specific DOM elements and css)
+                       'tinymce' => true, // load TinyMCE, can be used to pass settings directly to TinyMCE using an array()
+                       'quicktags' => true // load Quicktags, can be used to pass settings directly to Quicktags using an array()
+               ) );
+
+               self::$this_tinymce = ( $set['tinymce'] && user_can_richedit() );
+               self::$this_quicktags = (bool) $set['quicktags'];
+
+               if ( self::$this_tinymce )
+                       self::$has_tinymce = true;
+
+               if ( self::$this_quicktags )
+                       self::$has_quicktags = true;
+
+               return $set;
+       }
+
+       /**
+        * Outputs the HTML for a single instance of the editor.
+        *
+        * @param string $content The initial content of the editor.
+        * @param string $editor_id ID for the textarea and TinyMCE and Quicktags instances (can contain only ASCII letters and numbers).
+        * @param array $settings See the _parse_settings() method for description.
+        */
+       public static function editor( $content, $editor_id, $settings = array() ) {
+
+               $set = self::parse_settings($editor_id, $settings);
+               $editor_class = ' class="' . trim( $set['editor_class'] . ' wp-editor-area' ) . '"';
+               $tabindex = $set['tabindex'] ? ' tabindex="' . (int) $set['tabindex'] . '"' : '';
+               $rows = ' rows="' . (int) $set['textarea_rows'] . '"';
+               $switch_class = 'html-active';
+               $toolbar = $buttons = '';
+
+               if ( !current_user_can( 'upload_files' ) )
+                       $set['media_buttons'] = false;
+
+               if ( self::$this_quicktags && self::$this_tinymce ) {
+                       $switch_class = 'html-active';
+
+                       if ( 'html' == wp_default_editor() ) {
+                               add_filter('the_editor_content', 'wp_htmledit_pre');
+                       } else {
+                               add_filter('the_editor_content', 'wp_richedit_pre');
+                               $switch_class = 'tmce-active';
+                       }
+
+                       $buttons .= '<a id="' . $editor_id . '-html" class="hide-if-no-js wp-switch-editor switch-html" onclick="switchEditors.switchto(this);">' . __('HTML') . "</a>\n";
+                       $buttons .= '<a id="' . $editor_id . '-tmce" class="hide-if-no-js wp-switch-editor switch-tmce" onclick="switchEditors.switchto(this);">' . __('Visual') . "</a>\n";
+               }
+
+               echo '<div id="wp-' . $editor_id . '-wrap" class="wp-editor-wrap ' . $switch_class . '">';
+
+               if ( self::$editor_buttons_css ) {
+                       wp_print_styles('editor-buttons');
+                       self::$editor_buttons_css = false;
+               }
+
+               if ( !empty($set['editor_css']) )
+                       echo $set['editor_css'] . "\n";
+
+               if ( !empty($buttons) || $set['media_buttons'] ) {
+                       echo '<div id="wp-' . $editor_id . '-editor-tools" class="wp-editor-tools">';
+                       echo $buttons;
+
+                       if ( $set['media_buttons'] ) {
+                               self::$has_medialib = true;
+
+                               if ( !function_exists('media_buttons') )
+                                       include(ABSPATH . 'wp-admin/includes/media.php');
+
+                               echo '<div id="wp-' . $editor_id . '-media-buttons" class="hide-if-no-js wp-media-buttons">';
+                               do_action('media_buttons', $editor_id);
+                               echo "</div>\n";
+                       }
+                       echo "</div>\n";
+               }
+
+               $the_editor = apply_filters('the_editor', '<div id="wp-' . $editor_id . '-editor-container" class="wp-editor-container"><textarea' . $editor_class . $rows . $tabindex . ' cols="40" name="' . $set['textarea_name'] . '" id="' . $editor_id . '">%s</textarea></div>');
+               $content = apply_filters('the_editor_content', $content);
+
+               printf($the_editor, $content);
+               echo "\n</div>\n\n";
+
+               self::editor_settings($editor_id, $set);
+       }
+
+       public static function editor_settings($editor_id, $set) {
+               global $editor_styles;
+               $first_run = false;
+
+               if ( empty(self::$first_init) ) {
+                       if ( is_admin() ) {
+                               add_action( 'admin_print_footer_scripts', array( __CLASS__, 'editor_js'), 50 );
+                               add_action( 'admin_footer', array( __CLASS__, 'enqueue_scripts'), 1 );
+                       } else {
+                               add_action( 'wp_print_footer_scripts', array( __CLASS__, 'editor_js'), 50 );
+                               add_action( 'wp_footer', array( __CLASS__, 'enqueue_scripts'), 1 );
+                       }
+               }
+
+               if ( self::$this_quicktags ) {
+
+                       $qtInit = array(
+                               'id' => $editor_id,
+                               'buttons' => ''
+                       );
+
+                       if ( is_array($set['quicktags']) )
+                               $qtInit = array_merge($qtInit, $set['quicktags']);
+
+                       if ( empty($qtInit['buttons']) )
+                               $qtInit['buttons'] = 'strong,em,link,block,del,ins,img,ul,ol,li,code,more,spell,close';
+
+                       if ( $set['dfw'] )
+                               $qtInit['buttons'] .= ',fullscreen';
+
+                       $qtInit = apply_filters('quicktags_settings', $qtInit, $editor_id);
+                       self::$qt_settings[$editor_id] = $qtInit;
+
+                       self::$qt_buttons = array_merge( self::$qt_buttons, explode(',', $qtInit['buttons']) );
+               }
+
+               if ( self::$this_tinymce ) {
+
+                       if ( empty(self::$first_init) ) {
+                               self::$baseurl = includes_url('js/tinymce');
+                               self::$mce_locale = $mce_locale = ( '' == get_locale() ) ? 'en' : strtolower( substr(get_locale(), 0, 2) ); // only ISO 639-1
+                               $no_captions = (bool) apply_filters( 'disable_captions', '' );
+                               $plugins = array( 'inlinepopups', 'spellchecker', 'tabfocus', 'paste', 'media', 'fullscreen', 'wordpress', 'wpeditimage', 'wpgallery', 'wplink', 'wpdialogs' );
+                               $first_run = true;
+
+                               if ( $set['teeny'] ) {
+                                       self::$plugins = $plugins = apply_filters( 'teeny_mce_plugins', array('inlinepopups', 'fullscreen', 'wordpress', 'wplink', 'wpdialogs'), $editor_id );
+                                       $ext_plugins = '';
+                               } else {
+                                       /*
+                                       The following filter takes an associative array of external plugins for TinyMCE in the form 'plugin_name' => 'url'.
+                                       It adds the plugin's name to TinyMCE's plugins init and the call to PluginManager to load the plugin.
+                                       The url should be absolute and should include the js file name to be loaded. Example:
+                                       array( 'myplugin' => 'http://my-site.com/wp-content/plugins/myfolder/mce_plugin.js' )
+                                       If the plugin uses a button, it should be added with one of the "$mce_buttons" filters.
+                                       */
+                                       $mce_external_plugins = apply_filters('mce_external_plugins', array());
+
+                                       $ext_plugins = '';
+                                       if ( ! empty($mce_external_plugins) ) {
+
+                                               /*
+                                               The following filter loads external language files for TinyMCE plugins.
+                                               It takes an associative array 'plugin_name' => 'path', where path is the
+                                               include path to the file. The language file should follow the same format as
+                                               /tinymce/langs/wp-langs.php and should define a variable $strings that
+                                               holds all translated strings.
+                                               When this filter is not used, the function will try to load {mce_locale}.js.
+                                               If that is not found, en.js will be tried next.
+                                               */
+                                               $mce_external_languages = apply_filters('mce_external_languages', array());
+
+                                               $loaded_langs = array();
+                                               $strings = '';
+
+                                               if ( ! empty($mce_external_languages) ) {
+                                                       foreach ( $mce_external_languages as $name => $path ) {
+                                                               if ( @is_file($path) && @is_readable($path) ) {
+                                                                       include_once($path);
+                                                                       $ext_plugins .= $strings . "\n";
+                                                                       $loaded_langs[] = $name;
+                                                               }
+                                                       }
+                                               }
+
+                                               foreach ( $mce_external_plugins as $name => $url ) {
+
+                                                       if ( is_ssl() ) $url = str_replace('http://', 'https://', $url);
+
+                                                       $plugins[] = '-' . $name;
+
+                                                       $plugurl = dirname($url);
+                                                       $strings = $str1 = $str2 = '';
+                                                       if ( ! in_array($name, $loaded_langs) ) {
+                                                               $path = str_replace( content_url(), '', $plugurl );
+                                                               $path = WP_CONTENT_DIR . $path . '/langs/';
+
+                                                               if ( function_exists('realpath') )
+                                                                       $path = trailingslashit( realpath($path) );
+
+                                                               if ( @is_file($path . $mce_locale . '.js') )
+                                                                       $strings .= @file_get_contents($path . $mce_locale . '.js') . "\n";
+
+                                                               if ( @is_file($path . $mce_locale . '_dlg.js') )
+                                                                       $strings .= @file_get_contents($path . $mce_locale . '_dlg.js') . "\n";
+
+                                                               if ( 'en' != $mce_locale && empty($strings) ) {
+                                                                       if ( @is_file($path . 'en.js') ) {
+                                                                               $str1 = @file_get_contents($path . 'en.js');
+                                                                               $strings .= preg_replace( '/([\'"])en\./', '$1' . $mce_locale . '.', $str1, 1 ) . "\n";
+                                                                       }
+
+                                                                       if ( @is_file($path . 'en_dlg.js') ) {
+                                                                               $str2 = @file_get_contents($path . 'en_dlg.js');
+                                                                               $strings .= preg_replace( '/([\'"])en\./', '$1' . $mce_locale . '.', $str2, 1 ) . "\n";
+                                                                       }
+                                                               }
+
+                                                               if ( ! empty($strings) )
+                                                                       $ext_plugins .= "\n" . $strings . "\n";
+                                                       }
+
+                                                       $ext_plugins .= 'tinyMCEPreInit.load_ext("' . $plugurl . '", "' . $mce_locale . '");' . "\n";
+                                                       $ext_plugins .= 'tinymce.PluginManager.load("' . $name . '", "' . $url . '");' . "\n";
+
+                                                       self::$ext_plugins .= $ext_plugins;
+                                               }
+                                       }
+
+                                       $plugins = array_unique( apply_filters('tiny_mce_plugins', $plugins) );
+                               }
+
+                               if ( $set['dfw'] )
+                                       $plugins[] = 'wpfullscreen';
+
+                               self::$plugins = $plugins;
+
+                               /*
+                               The following filter allows localization scripts to change the languages displayed in the spellchecker's drop-down menu.
+                               By default it uses Google's spellchecker API, but can be configured to use PSpell/ASpell if installed on the server.
+                               The + sign marks the default language. More information:
+                               http://wiki.moxiecode.com/index.php/TinyMCE:Plugins/spellchecker
+                               */
+                               $mce_spellchecker_languages = apply_filters('mce_spellchecker_languages', '+English=en,Danish=da,Dutch=nl,Finnish=fi,French=fr,German=de,Italian=it,Polish=pl,Portuguese=pt,Spanish=es,Swedish=sv');
+
+                               self::$first_init = array(
+                                       'mode' => 'exact',
+                                       'width' => '100%',
+                                       'theme' => 'advanced',
+                                       'skin' => 'wp_theme',
+                                       'language' => self::$mce_locale,
+                                       'spellchecker_languages' => $mce_spellchecker_languages,
+                                       'theme_advanced_toolbar_location' => 'top',
+                                       'theme_advanced_toolbar_align' => 'left',
+                                       'theme_advanced_statusbar_location' => 'bottom',
+                                       'theme_advanced_resizing' => true,
+                                       'theme_advanced_resize_horizontal' => false,
+                                       'dialog_type' => 'modal',
+                                       'formats' => "{
+                                               alignleft : [
+                                                       {selector : 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li', styles : {textAlign : 'left'}},
+                                                       {selector : 'img,table', classes : 'alignleft'}
+                                               ],
+                                               aligncenter : [
+                                                       {selector : 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li', styles : {textAlign : 'center'}},
+                                                       {selector : 'img,table', classes : 'aligncenter'}
+                                               ],
+                                               alignright : [
+                                                       {selector : 'p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li', styles : {textAlign : 'right'}},
+                                                       {selector : 'img,table', classes : 'alignright'}
+                                               ],
+                                               strikethrough : {inline : 'del'}
+                                       }",
+                                       'relative_urls' => false,
+                                       'remove_script_host' => false,
+                                       'convert_urls' => false,
+                                       'remove_linebreaks' => true,
+                                       'gecko_spellcheck' => true,
+                                       'keep_styles' => false,
+                                       'entities' => '38,amp,60,lt,62,gt',
+                                       'accessibility_focus' => true,
+                                       'tabfocus_elements' => 'major-publishing-actions',
+                                       'media_strict' => false,
+                                       'paste_remove_styles' => true,
+                                       'paste_remove_spans' => true,
+                                       'paste_strip_class_attributes' => 'all',
+                                       'paste_text_use_dialog' => true,
+                                       'extended_valid_elements' => 'article[*],aside[*],audio[*],canvas[*],command[*],datalist[*],details[*],embed[*],figcaption[*],figure[*],footer[*],header[*],hgroup[*],keygen[*],mark[*],meter[*],nav[*],output[*],progress[*],section[*],source[*],summary,time[*],video[*],wbr',
+                                       'wpeditimage_disable_captions' => $no_captions,
+                                       'wp_fullscreen_content_css' => self::$baseurl . '/plugins/wpfullscreen/css/wp-fullscreen.css',
+                                       'plugins' => implode( ',', $plugins )
+                               );
+
+                               // load editor_style.css if the current theme supports it
+                               if ( ! empty( $editor_styles ) && is_array( $editor_styles ) ) {
+                                       $mce_css = array();
+                                       $editor_styles = array_unique($editor_styles);
+                                       $style_uri = get_stylesheet_directory_uri();
+                                       if ( ! is_child_theme() ) {
+                                               foreach ( $editor_styles as $file )
+                                                       $mce_css[] = "$style_uri/$file";
+                                       } else {
+                                               $style_dir    = get_stylesheet_directory();
+                                               $template_uri = get_template_directory_uri();
+                                               $template_dir = get_template_directory();
+
+                                               foreach ( $editor_styles as $file ) {
+                                                       if ( file_exists( "$template_dir/$file" ) )
+                                                               $mce_css[] = "$template_uri/$file";
+                                               }
+
+                                               foreach ( $editor_styles as $file ) {
+                                                       if ( file_exists( "$style_dir/$file" ) )
+                                                               $mce_css[] = "$style_uri/$file";
+                                               }
+                                       }
+                                       $mce_css = implode( ',', $mce_css );
+                               } else {
+                                       $mce_css = '';
+                               }
+
+                               $mce_css = trim( apply_filters( 'mce_css', $mce_css ), ' ,' );
+
+                               if ( ! empty($mce_css) )
+                                       self::$first_init['content_css'] = $mce_css;
+                       }
+
+                       if ( $set['teeny'] ) {
+                               $mce_buttons = apply_filters( 'teeny_mce_buttons', array('bold', 'italic', 'underline', 'blockquote', 'separator', 'strikethrough', 'bullist', 'numlist', 'justifyleft', 'justifycenter', 'justifyright', 'undo', 'redo', 'link', 'unlink', 'fullscreen'), $editor_id );
+                               $mce_buttons_2 = $mce_buttons_3 = $mce_buttons_4 = array();
+                       } else {
+                               $mce_buttons = apply_filters('mce_buttons', array('bold', 'italic', 'strikethrough', '|', 'bullist', 'numlist', 'blockquote', '|', 'justifyleft', 'justifycenter', 'justifyright', '|', 'link', 'unlink', 'wp_more', '|', 'spellchecker', 'fullscreen', 'wp_adv' ), $editor_id);
+                               $mce_buttons_2 = apply_filters('mce_buttons_2', array( 'formatselect', 'underline', 'justifyfull', 'forecolor', '|', 'pastetext', 'pasteword', 'removeformat', '|', 'charmap', '|', 'outdent', 'indent', '|', 'undo', 'redo', 'wp_help' ), $editor_id);
+                               $mce_buttons_3 = apply_filters('mce_buttons_3', array(), $editor_id);
+                               $mce_buttons_4 = apply_filters('mce_buttons_4', array(), $editor_id);
+                       }
+
+                       if ( $set['dfw'] ) {
+                               // replace the first 'fullscreen' with 'wp_fullscreen'
+                               if ( ($key = array_search('fullscreen', $mce_buttons)) !== false )
+                                       $mce_buttons[$key] = 'wp_fullscreen';
+                               elseif ( ($key = array_search('fullscreen', $mce_buttons_2)) !== false )
+                                       $mce_buttons_2[$key] = 'wp_fullscreen';
+                               elseif ( ($key = array_search('fullscreen', $mce_buttons_3)) !== false )
+                                       $mce_buttons_3[$key] = 'wp_fullscreen';
+                               elseif ( ($key = array_search('fullscreen', $mce_buttons_4)) !== false )
+                                       $mce_buttons_4[$key] = 'wp_fullscreen';
+                       }
+
+                       $mceInit = array (
+                               'elements' => $editor_id,
+                               'wpautop' => (bool) $set['wpautop'],
+                               'remove_linebreaks' => (bool) $set['wpautop'],
+                               'apply_source_formatting' => (bool) !$set['wpautop'],
+                               'theme_advanced_buttons1' => implode($mce_buttons, ','),
+                               'theme_advanced_buttons2' => implode($mce_buttons_2, ','),
+                               'theme_advanced_buttons3' => implode($mce_buttons_3, ','),
+                               'theme_advanced_buttons4' => implode($mce_buttons_4, ',')
+                       );
+
+                       if ( $first_run )
+                               $mceInit = array_merge(self::$first_init, $mceInit);
+
+                       if ( is_array($set['tinymce']) )
+                               $mceInit = array_merge($mceInit, $set['tinymce']);
+
+                       // For people who really REALLY know what they're doing with TinyMCE
+                       // You can modify initArray to add, remove, change elements of the config before tinyMCE.init
+                       // Setting "valid_elements", "invalid_elements" and "extended_valid_elements" can be done through this filter.
+                       // Best is to use the default cleanup by not specifying valid_elements, as TinyMCE contains full set of XHTML 1.0.
+                       if ( $set['teeny'] ) {
+                               $mceInit = apply_filters('teeny_mce_before_init', $mceInit, $editor_id);
+                       } else {
+                               $mceInit = apply_filters('tiny_mce_before_init', $mceInit, $editor_id);
+                       }
+
+                       if ( empty($mceInit['theme_advanced_buttons3']) && !empty($mceInit['theme_advanced_buttons4']) ) {
+                               $mceInit['theme_advanced_buttons3'] = $mceInit['theme_advanced_buttons4'];
+                               $mceInit['theme_advanced_buttons4'] = '';
+                       }
+
+                       self::$mce_settings[$editor_id] = $mceInit;
+               } // end if self::$this_tinymce
+       }
+
+       private static function _parse_init($init) {
+               $options = '';
+
+               foreach ( $init as $k => $v ) {
+                       if ( is_bool($v) ) {
+                               $val = $v ? 'true' : 'false';
+                               $options .= $k . ':' . $val . ',';
+                               continue;
+                       } elseif ( !empty($v) && is_string($v) && ( ('{' == $v{0} && '}' == $v{strlen($v) - 1}) || ('[' == $v{0} && ']' == $v{strlen($v) - 1}) || preg_match('/^\(?function ?\(/', $v) ) ) {
+                               $options .= $k . ':' . $v . ',';
+                               continue;
+                       }
+                       $options .= $k . ':"' . $v . '",';
+               }
+
+               return '{' . trim( $options, ' ,' ) . '}';
+       }
+
+       public static function enqueue_scripts() {
+               wp_enqueue_script('word-count');
+
+               if ( self::$has_tinymce )
+                       wp_enqueue_script('editor');
+
+               if ( self::$has_quicktags )
+                       wp_enqueue_script('quicktags');
+
+               if ( in_array('wplink', self::$plugins, true) || in_array('link', self::$qt_buttons, true) ) {
+                       wp_enqueue_script('wplink');
+                       wp_enqueue_script('wpdialogs-popup');
+                       wp_enqueue_style('wp-jquery-ui-dialog');
+               }
+
+               if ( in_array('wpfullscreen', self::$plugins, true) || in_array('fullscreen', self::$qt_buttons, true) )
+                       wp_enqueue_script('wp-fullscreen');
+
+               if ( self::$has_medialib ) {
+                       add_thickbox();
+                       wp_enqueue_script('media-upload');
+               }
+       }
+
+       public static function editor_js() {
+               global $tinymce_version, $concatenate_scripts, $compress_scripts;
+
+               /**
+                * Filter "tiny_mce_version" is deprecated
+                *
+                * The tiny_mce_version filter is not needed since external plugins are loaded directly by TinyMCE.
+                * These plugins can be refreshed by appending query string to the URL passed to "mce_external_plugins" filter.
+                * If the plugin has a popup dialog, a query string can be added to the button action that opens it (in the plugin's code).
+                */
+               $version = 'ver=' . $tinymce_version;
+               $tmce_on = !empty(self::$mce_settings);
+
+               if ( ! isset($concatenate_scripts) )
+                       script_concat_settings();
+
+               $compressed = $compress_scripts && $concatenate_scripts && isset($_SERVER['HTTP_ACCEPT_ENCODING'])
+                       && false !== stripos($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip');
+
+               if ( $tmce_on && 'en' != self::$mce_locale )
+                       include_once(ABSPATH . WPINC . '/js/tinymce/langs/wp-langs.php');
+
+               $mceInit = $qtInit = '';
+               if ( $tmce_on ) {
+                       foreach ( self::$mce_settings as $editor_id => $init ) {
+                               $options = self::_parse_init( $init );
+                               $mceInit .= "'$editor_id':{$options},";
+                       }
+                       $mceInit = '{' . trim($mceInit, ',') . '}';
+               } else {
+                       $mceInit = '{}';
+               }
+
+               if ( !empty(self::$qt_settings) ) {
+                       foreach ( self::$qt_settings as $editor_id => $init ) {
+                               $options = self::_parse_init( $init );
+                               $qtInit .= "'$editor_id':{$options},";
+                       }
+                       $qtInit = '{' . trim($qtInit, ',') . '}';
+               } else {
+                       $qtInit = '{}';
+               }
+
+               $ref = array(
+                       'plugins' => implode( ',', self::$plugins ),
+                       'theme' => 'advanced',
+                       'language' => self::$mce_locale
+               );
+
+               do_action('before_wp_tiny_mce', self::$mce_settings);
+?>
+
+       <script type="text/javascript">
+               tinyMCEPreInit = {
+                       base : "<?php echo self::$baseurl; ?>",
+                       suffix : "",
+                       query : "<?php echo $version; ?>",
+                       mceInit : <?php echo $mceInit; ?>,
+                       qtInit : <?php echo $qtInit; ?>,
+                       ref : <?php echo self::_parse_init( $ref ); ?>,
+                       load_ext : function(url,lang){var sl=tinymce.ScriptLoader;sl.markDone(url+'/langs/'+lang+'.js');sl.markDone(url+'/langs/'+lang+'_dlg.js');}
+               };
+       </script>
+<?php
+
+               $baseurl = self::$baseurl;
+
+               if ( $tmce_on ) {
+                       if ( $compressed )
+                               echo "<script type='text/javascript' src='{$baseurl}/wp-tinymce.php?c=1&amp;$version'></script>\n";
+                       else
+                               echo "<script type='text/javascript' src='{$baseurl}/tiny_mce.js?$version'></script>\n";
+
+                       if ( 'en' != self::$mce_locale && isset($lang) )
+                               echo "<script type='text/javascript'>\n$lang\n</script>\n";
+                       else
+                               echo "<script type='text/javascript' src='{$baseurl}/langs/wp-langs-en.js?$version'></script>\n";
+               }
+?>
+
+       <script type="text/javascript">
+               (function(){
+                       var init, ed, qt, first_init, mce = <?php echo wp_default_editor() == 'tinymce' ? 'true' : 'false'; ?>;
+
+                       if ( typeof(tinymce) == 'object' ) {
+                               // mark wp_theme/ui.css as loaded
+                               tinymce.DOM.files[tinymce.baseURI.getURI() + '/themes/advanced/skins/wp_theme/ui.css'] = true;
+
+                               for ( ed in tinyMCEPreInit.mceInit ) {
+                                       if ( first_init ) {
+                                               init = tinyMCEPreInit.mceInit[ed] = tinymce.extend( {}, first_init, tinyMCEPreInit.mceInit[ed] );
+                                       } else {
+                                               init = first_init = tinyMCEPreInit.mceInit[ed];
+                                       }
+
+                                       if ( mce )
+                                               try { tinymce.init(init); } catch(e){}
+                               }
+                       }
+
+                       if ( typeof(QTags) == 'function' ) {
+                               for ( qt in tinyMCEPreInit.qtInit ) {
+                                       try { quicktags( tinyMCEPreInit.qtInit[qt] ); } catch(e){}
+                               }
+                       }
+               })();
+
+               var wpActiveEditor;
+
+               jQuery('.wp-editor-wrap').mousedown(function(e){
+                       wpActiveEditor = this.id.slice(3, -5);
+               });
+
+<?php
+
+               if ( self::$ext_plugins )
+                       echo self::$ext_plugins . "\n";
+
+               if ( ! $compressed && $tmce_on ) {
+?>
+               (function(){var t=tinyMCEPreInit,sl=tinymce.ScriptLoader,ln=t.ref.language,th=t.ref.theme,pl=t.ref.plugins;sl.markDone(t.base+'/langs/'+ln+'.js');sl.markDone(t.base+'/themes/'+th+'/langs/'+ln+'.js');sl.markDone(t.base+'/themes/'+th+'/langs/'+ln+'_dlg.js');sl.markDone(t.base+'/themes/advanced/skins/wp_theme/ui.css');tinymce.each(pl.split(','),function(n){if(n&&n.charAt(0)!='-'){sl.markDone(t.base+'/plugins/'+n+'/langs/'+ln+'.js');sl.markDone(t.base+'/plugins/'+n+'/langs/'+ln+'_dlg.js');}});})();
+<?php
+               }
+
+               if ( !is_admin() )
+                       echo 'var ajaxurl = "' . admin_url('admin-ajax.php') . '";';
+?>
+       </script>
+<?php
+
+               if ( in_array('wplink', self::$plugins, true) || in_array('link', self::$qt_buttons, true) )
+                       self::wp_link_dialog();
+
+               if ( in_array('wpfullscreen', self::$plugins, true) || in_array('fullscreen', self::$qt_buttons, true) )
+                       self::wp_fullscreen_html();
+
+               do_action('after_wp_tiny_mce', self::$mce_settings);
+       }
+
+       public static function wp_fullscreen_html() {
+               global $content_width, $post;
+
+               $width = isset($content_width) && 800 > $content_width ? $content_width : 800;
+               $width = $width + 22; // compensate for the padding and border
+               $dfw_width = get_user_setting( 'dfw_width', $width );
+               $save = isset($post->post_status) && $post->post_status == 'publish' ? __('Update') : __('Save');
+       ?>
+       <div id="wp-fullscreen-body">
+       <div id="fullscreen-topbar">
+               <div id="wp-fullscreen-toolbar">
+                       <div id="wp-fullscreen-close"><a href="#" onclick="fullscreen.off();return false;"><?php _e('Exit fullscreen'); ?></a></div>
+                       <div id="wp-fullscreen-central-toolbar" style="width:<?php echo $width; ?>px;">
+
+                       <div id="wp-fullscreen-mode-bar"><div id="wp-fullscreen-modes">
+                               <a href="#" onclick="fullscreen.switchmode('tinymce');return false;"><?php _e('Visual'); ?></a>
+                               <a href="#" onclick="fullscreen.switchmode('html');return false;"><?php _e('HTML'); ?></a>
+                       </div></div>
+
+                       <div id="wp-fullscreen-button-bar"><div id="wp-fullscreen-buttons" class="wp_themeSkin">
+       <?php
+
+               $buttons = array(
+                       // format: title, onclick, show in both editors
+                       'bold' => array( 'title' => __('Bold (Ctrl + B)'), 'onclick' => 'fullscreen.b();', 'both' => false ),
+                       'italic' => array( 'title' => __('Italic (Ctrl + I)'), 'onclick' => 'fullscreen.i();', 'both' => false ),
+                       '0' => 'separator',
+                       'bullist' => array( 'title' => __('Unordered list (Alt + Shift + U)'), 'onclick' => 'fullscreen.ul();', 'both' => false ),
+                       'numlist' => array( 'title' => __('Ordered list (Alt + Shift + O)'), 'onclick' => 'fullscreen.ol();', 'both' => false ),
+                       '1' => 'separator',
+                       'blockquote' => array( 'title' => __('Blockquote (Alt + Shift + Q)'), 'onclick' => 'fullscreen.blockquote();', 'both' => false ),
+                       'image' => array( 'title' => __('Insert/edit image (Alt + Shift + M)'), 'onclick' => "fullscreen.medialib();", 'both' => true ),
+                       '2' => 'separator',
+                       'link' => array( 'title' => __('Insert/edit link (Alt + Shift + A)'), 'onclick' => 'fullscreen.link();', 'both' => true ),
+                       'unlink' => array( 'title' => __('Unlink (Alt + Shift + S)'), 'onclick' => 'fullscreen.unlink();', 'both' => false ),
+                       '3' => 'separator',
+                       'help' => array( 'title' => __('Help (Alt + Shift + H)'), 'onclick' => 'fullscreen.help();', 'both' => false )
+               );
+
+               $buttons = apply_filters( 'wp_fullscreen_buttons', $buttons );
+
+               foreach ( $buttons as $button => $args ) {
+                       if ( 'separator' == $args ) { ?>
+                               <div><span aria-orientation="vertical" role="separator" class="mceSeparator"></span></div>
+       <?php           continue;
+                       } ?>
+
+                       <div<?php if ( $args['both'] ) { ?> class="wp-fullscreen-both"<?php } ?>>
+                       <a title="<?php echo $args['title']; ?>" onclick="<?php echo $args['onclick']; ?>return false;" class="mceButton mceButtonEnabled mce_<?php echo $button; ?>" href="#" id="wp_fs_<?php echo $button; ?>" role="button" aria-pressed="false">
+                       <span class="mceIcon mce_<?php echo $button; ?>"></span>
+                       </a>
+                       </div>
+       <?php
+               } ?>
+
+                       </div></div>
+
+                       <div id="wp-fullscreen-save">
+                               <span><?php if ( $post->post_status == 'publish' ) _e('Updated.'); else _e('Saved.'); ?></span>
+                               <img src="images/wpspin_light.gif" alt="" />
+                               <input type="button" class="button-primary" value="<?php echo $save; ?>" onclick="fullscreen.save();" />
+                       </div>
+
+                       </div>
+               </div>
+       </div>
+
+       <div id="wp-fullscreen-wrap" style="width:<?php echo $dfw_width; ?>px;">
+               <?php if ( post_type_supports($post->post_type, 'title') ) { ?>
+               <label id="wp-fullscreen-title-prompt-text" for="wp-fullscreen-title"><?php echo apply_filters( 'enter_title_here', __( 'Enter title here' ), $post ); ?></label>
+               <input type="text" id="wp-fullscreen-title" value="" autocomplete="off" />
+               <?php } ?>
+
+               <div id="wp-fullscreen-container">
+                       <textarea id="wp_mce_fullscreen"></textarea>
+               </div>
+
+               <div id="wp-fullscreen-status">
+                       <div id="wp-fullscreen-count"><?php printf( __( 'Word count: %s' ), '<span class="word-count">0</span>' ); ?></div>
+                       <div id="wp-fullscreen-tagline"><?php _e('Just write.'); ?></div>
+               </div>
+       </div>
+       </div>
+
+       <div class="fullscreen-overlay" id="fullscreen-overlay"></div>
+       <div class="fullscreen-overlay fullscreen-fader fade-600" id="fullscreen-fader"></div>
+       <?php
+       }
+
+       /**
+        * Performs post queries for internal linking.
+        *
+        * @since 3.1.0
+        *
+        * @param array $args Optional. Accepts 'pagenum' and 's' (search) arguments.
+        * @return array Results.
+        */
+       public static function wp_link_query( $args = array() ) {
+               $pts = get_post_types( array( 'public' => true ), 'objects' );
+               $pt_names = array_keys( $pts );
+
+               $query = array(
+                       'post_type' => $pt_names,
+                       'suppress_filters' => true,
+                       'update_post_term_cache' => false,
+                       'update_post_meta_cache' => false,
+                       'post_status' => 'publish',
+                       'order' => 'DESC',
+                       'orderby' => 'post_date',
+                       'posts_per_page' => 20,
+               );
+
+               $args['pagenum'] = isset( $args['pagenum'] ) ? absint( $args['pagenum'] ) : 1;
+
+               if ( isset( $args['s'] ) )
+                       $query['s'] = $args['s'];
+
+               $query['offset'] = $args['pagenum'] > 1 ? $query['posts_per_page'] * ( $args['pagenum'] - 1 ) : 0;
+
+               // Do main query.
+               $get_posts = new WP_Query;
+               $posts = $get_posts->query( $query );
+               // Check if any posts were found.
+               if ( ! $get_posts->post_count )
+                       return false;
+
+               // Build results.
+               $results = array();
+               foreach ( $posts as $post ) {
+                       if ( 'post' == $post->post_type )
+                               $info = mysql2date( __( 'Y/m/d' ), $post->post_date );
+                       else
+                               $info = $pts[ $post->post_type ]->labels->singular_name;
+
+                       $results[] = array(
+                               'ID' => $post->ID,
+                               'title' => trim( esc_html( strip_tags( get_the_title( $post ) ) ) ),
+                               'permalink' => get_permalink( $post->ID ),
+                               'info' => $info,
+                       );
+               }
+
+               return $results;
+       }
+
+       /**
+        * Dialog for internal linking.
+        *
+        * @since 3.1.0
+        */
+       public static function wp_link_dialog() {
+       ?>
+       <div style="display:none;">
+       <form id="wp-link" tabindex="-1">
+       <?php wp_nonce_field( 'internal-linking', '_ajax_linking_nonce', false ); ?>
+       <div id="link-selector">
+               <div id="link-options">
+                       <p class="howto"><?php _e( 'Enter the destination URL' ); ?></p>
+                       <div>
+                               <label><span><?php _e( 'URL' ); ?></span><input id="url-field" type="text" tabindex="10" name="href" /></label>
+                       </div>
+                       <div>
+                               <label><span><?php _e( 'Title' ); ?></span><input id="link-title-field" type="text" tabindex="20" name="linktitle" /></label>
+                       </div>
+                       <div class="link-target">
+                               <label><input type="checkbox" id="link-target-checkbox" tabindex="30" /> <?php _e( 'Open link in a new window/tab' ); ?></label>
+                       </div>
+               </div>
+               <?php $show_internal = '1' == get_user_setting( 'wplink', '0' ); ?>
+               <p class="howto toggle-arrow <?php if ( $show_internal ) echo 'toggle-arrow-active'; ?>" id="internal-toggle"><?php _e( 'Or link to existing content' ); ?></p>
+               <div id="search-panel"<?php if ( ! $show_internal ) echo ' style="display:none"'; ?>>
+                       <div class="link-search-wrapper">
+                               <label>
+                                       <span><?php _e( 'Search' ); ?></span>
+                                       <input type="text" id="search-field" class="link-search-field" tabindex="60" autocomplete="off" />
+                                       <img class="waiting" src="<?php echo esc_url( admin_url( 'images/wpspin_light.gif' ) ); ?>" alt="" />
+                               </label>
+                       </div>
+                       <div id="search-results" class="query-results">
+                               <ul></ul>
+                               <div class="river-waiting">
+                                       <img class="waiting" src="<?php echo esc_url( admin_url( 'images/wpspin_light.gif' ) ); ?>" alt="" />
+                               </div>
+                       </div>
+                       <div id="most-recent-results" class="query-results">
+                               <div class="query-notice"><em><?php _e( 'No search term specified. Showing recent items.' ); ?></em></div>
+                               <ul></ul>
+                               <div class="river-waiting">
+                                       <img class="waiting" src="<?php echo esc_url( admin_url( 'images/wpspin_light.gif' ) ); ?>" alt="" />
+                               </div>
+                       </div>
+               </div>
+       </div>
+       <div class="submitbox">
+               <div id="wp-link-cancel">
+                       <a class="submitdelete deletion" href="#"><?php _e( 'Cancel' ); ?></a>
+               </div>
+               <div id="wp-link-update">
+                       <input type="submit" tabindex="100" value="<?php esc_attr_e( 'Add Link' ); ?>" class="button-primary" id="wp-link-submit" name="wp-link-submit">
+               </div>
+       </div>
+       </form>
+       </div>
+       <?php
+       }
+}
+
index ba4de05d77e8024cd2e6fbb4aa1e24eb5596c54a..b34d0cfdaa7089a22410a77b0bb3cf9bc7789a89 100644 (file)
@@ -70,7 +70,7 @@ class WP_Error {
         * @since 2.1.0
         * @access public
         *
         * @since 2.1.0
         * @access public
         *
-        * @return array List of error codes, if avaiable.
+        * @return array List of error codes, if available.
         */
        function get_error_codes() {
                if ( empty($this->errors) )
         */
        function get_error_codes() {
                if ( empty($this->errors) )
@@ -102,7 +102,7 @@ class WP_Error {
         * @since 2.1.0
         *
         * @param string|int $code Optional. Retrieve messages matching code, if exists.
         * @since 2.1.0
         *
         * @param string|int $code Optional. Retrieve messages matching code, if exists.
-        * @return array Error strings on success, or empty array on failure (if using codee parameter).
+        * @return array Error strings on success, or empty array on failure (if using code parameter).
         */
        function get_error_messages($code = '') {
                // Return all messages if no code specified.
         */
        function get_error_messages($code = '') {
                // Return all messages if no code specified.
index 9d92cecff02e6a2b3356577d7a187c34bf85503c..24807cd2abba071da640689e017d336af0f624e5 100644 (file)
@@ -8,7 +8,7 @@
 /**
  * WordPress XMLRPC server implementation.
  *
 /**
  * WordPress XMLRPC server implementation.
  *
- * Implements compatability for Blogger API, MetaWeblog API, MovableType, and
+ * Implements compatibility for Blogger API, MetaWeblog API, MovableType, and
  * pingback. Additional WordPress API for managing comments, pages, posts,
  * options, etc.
  *
  * pingback. Additional WordPress API for managing comments, pages, posts,
  * options, etc.
  *
@@ -234,9 +234,8 @@ class wp_xmlrpc_server extends IXR_Server {
 
                foreach ( (array) has_meta($post_id) as $meta ) {
                        // Don't expose protected fields.
 
                foreach ( (array) has_meta($post_id) as $meta ) {
                        // Don't expose protected fields.
-                       if ( strpos($meta['meta_key'], '_wp_') === 0 ) {
+                       if ( ! current_user_can( 'edit_post_meta', $post_id , $meta['meta_key'] ) )
                                continue;
                                continue;
-                       }
 
                        $custom_fields[] = array(
                                "id"    => $meta['meta_id'],
 
                        $custom_fields[] = array(
                                "id"    => $meta['meta_id'],
@@ -262,18 +261,19 @@ class wp_xmlrpc_server extends IXR_Server {
                foreach ( (array) $fields as $meta ) {
                        if ( isset($meta['id']) ) {
                                $meta['id'] = (int) $meta['id'];
                foreach ( (array) $fields as $meta ) {
                        if ( isset($meta['id']) ) {
                                $meta['id'] = (int) $meta['id'];
-
+                               $pmeta = get_metadata_by_mid( 'post', $meta['id'] );
+                               $meta['value'] = stripslashes_deep( $meta['value'] );
                                if ( isset($meta['key']) ) {
                                if ( isset($meta['key']) ) {
-                                       update_meta($meta['id'], $meta['key'], $meta['value']);
+                                       $meta['key'] = stripslashes( $meta['key'] );
+                                       if ( $meta['key'] != $pmeta->meta_key )
+                                               continue;
+                                       if ( current_user_can( 'edit_post_meta', $post_id, $meta['key'] ) )
+                                               update_metadata_by_mid( 'post', $meta['id'], $meta['value'] );
+                               } elseif ( current_user_can( 'delete_post_meta', $post_id, $pmeta->meta_key ) ) {
+                                       delete_metadata_by_mid( 'post', $meta['id'] );
                                }
                                }
-                               else {
-                                       delete_meta($meta['id']);
-                               }
-                       }
-                       else {
-                               $_POST['metakeyinput'] = $meta['key'];
-                               $_POST['metavalue'] = $meta['value'];
-                               add_meta($post_id);
+                       } elseif ( current_user_can( 'add_post_meta', $post_id, stripslashes( $meta['key'] ) ) ) {
+                               add_post_meta( $post_id, $meta['key'], $meta['value'] );
                        }
                }
        }
                        }
                }
        }
@@ -527,7 +527,7 @@ class wp_xmlrpc_server extends IXR_Server {
                                'wp_page_parent_id'             => $page->post_parent,
                                'wp_page_parent_title'  => $parent_title,
                                'wp_page_order'                 => $page->menu_order,
                                'wp_page_parent_id'             => $page->post_parent,
                                'wp_page_parent_title'  => $parent_title,
                                'wp_page_order'                 => $page->menu_order,
-                               'wp_author_id'                  => $author->ID,
+                               'wp_author_id'                  => (string) $author->ID,
                                'wp_author_display_name'        => $author->display_name,
                                'date_created_gmt'              => new IXR_Date($page_date_gmt),
                                'custom_fields'                 => $this->get_custom_fields($page_id),
                                'wp_author_display_name'        => $author->display_name,
                                'date_created_gmt'              => new IXR_Date($page_date_gmt),
                                'custom_fields'                 => $this->get_custom_fields($page_id),
@@ -747,7 +747,7 @@ class wp_xmlrpc_server extends IXR_Server {
                        ORDER BY ID
                ");
 
                        ORDER BY ID
                ");
 
-               // The date needs to be formated properly.
+               // The date needs to be formatted properly.
                $num_pages = count($page_list);
                for ( $i = 0; $i < $num_pages; $i++ ) {
                        $post_date = mysql2date('Ymd\TH:i:s', $page_list[$i]->post_date, false);
                $num_pages = count($page_list);
                for ( $i = 0; $i < $num_pages; $i++ ) {
                        $post_date = mysql2date('Ymd\TH:i:s', $page_list[$i]->post_date, false);
@@ -1134,14 +1134,14 @@ class wp_xmlrpc_server extends IXR_Server {
                if ( !current_user_can( 'moderate_comments' ) )
                        return new IXR_Error( 403, __( 'You are not allowed to moderate comments on this site.' ) );
 
                if ( !current_user_can( 'moderate_comments' ) )
                        return new IXR_Error( 403, __( 'You are not allowed to moderate comments on this site.' ) );
 
+               if ( ! get_comment($comment_ID) )
+                       return new IXR_Error( 404, __( 'Invalid comment ID.' ) );
+
                if ( !current_user_can( 'edit_comment', $comment_ID ) )
                        return new IXR_Error( 403, __( 'You are not allowed to moderate comments on this site.' ) );
 
                do_action('xmlrpc_call', 'wp.deleteComment');
 
                if ( !current_user_can( 'edit_comment', $comment_ID ) )
                        return new IXR_Error( 403, __( 'You are not allowed to moderate comments on this site.' ) );
 
                do_action('xmlrpc_call', 'wp.deleteComment');
 
-               if ( ! get_comment($comment_ID) )
-                       return new IXR_Error( 404, __( 'Invalid comment ID.' ) );
-
                return wp_delete_comment($comment_ID);
        }
 
                return wp_delete_comment($comment_ID);
        }
 
@@ -1184,14 +1184,14 @@ class wp_xmlrpc_server extends IXR_Server {
                if ( !current_user_can( 'moderate_comments' ) )
                        return new IXR_Error( 403, __( 'You are not allowed to moderate comments on this site.' ) );
 
                if ( !current_user_can( 'moderate_comments' ) )
                        return new IXR_Error( 403, __( 'You are not allowed to moderate comments on this site.' ) );
 
+               if ( ! get_comment($comment_ID) )
+                       return new IXR_Error( 404, __( 'Invalid comment ID.' ) );
+
                if ( !current_user_can( 'edit_comment', $comment_ID ) )
                        return new IXR_Error( 403, __( 'You are not allowed to moderate comments on this site.' ) );
 
                do_action('xmlrpc_call', 'wp.editComment');
 
                if ( !current_user_can( 'edit_comment', $comment_ID ) )
                        return new IXR_Error( 403, __( 'You are not allowed to moderate comments on this site.' ) );
 
                do_action('xmlrpc_call', 'wp.editComment');
 
-               if ( ! get_comment($comment_ID) )
-                       return new IXR_Error( 404, __( 'Invalid comment ID.' ) );
-
                if ( isset($content_struct['status']) ) {
                        $statuses = get_comment_statuses();
                        $statuses = array_keys($statuses);
                if ( isset($content_struct['status']) ) {
                        $statuses = get_comment_statuses();
                        $statuses = array_keys($statuses);
@@ -1551,7 +1551,7 @@ class wp_xmlrpc_server extends IXR_Server {
         *  - username
         *  - password
         *  - attachment_id
         *  - username
         *  - password
         *  - attachment_id
-        * @return array. Assocciative array containing:
+        * @return array. Associative array containing:
         *  - 'date_created_gmt'
         *  - 'parent'
         *  - 'link'
         *  - 'date_created_gmt'
         *  - 'parent'
         *  - 'link'
@@ -1661,7 +1661,7 @@ class wp_xmlrpc_server extends IXR_Server {
        }
 
        /**
        }
 
        /**
-         * Retrives a list of post formats used by the site
+         * Retrieves a list of post formats used by the site
          *
          * @since 3.1
          *
          *
          * @since 3.1
          *
@@ -2394,15 +2394,9 @@ class wp_xmlrpc_server extends IXR_Server {
                        }
                }
 
                        }
                }
 
-               // We've got all the data -- post it:
                $postdata = compact('post_author', 'post_date', 'post_date_gmt', 'post_content', 'post_title', 'post_category', 'post_status', 'post_excerpt', 'comment_status', 'ping_status', 'to_ping', 'post_type', 'post_name', 'post_password', 'post_parent', 'menu_order', 'tags_input', 'page_template');
 
                $postdata = compact('post_author', 'post_date', 'post_date_gmt', 'post_content', 'post_title', 'post_category', 'post_status', 'post_excerpt', 'comment_status', 'ping_status', 'to_ping', 'post_type', 'post_name', 'post_password', 'post_parent', 'menu_order', 'tags_input', 'page_template');
 
-               $post_ID = wp_insert_post($postdata, true);
-               if ( is_wp_error( $post_ID ) )
-                       return new IXR_Error(500, $post_ID->get_error_message());
-
-               if ( !$post_ID )
-                       return new IXR_Error(500, __('Sorry, your entry could not be posted. Something wrong happened.'));
+               $post_ID = $postdata['ID'] = get_default_post_to_edit( $post_type, true )->ID;
 
                // Only posts can be sticky
                if ( $post_type == 'post' && isset( $content_struct['sticky'] ) ) {
 
                // Only posts can be sticky
                if ( $post_type == 'post' && isset( $content_struct['sticky'] ) ) {
@@ -2426,6 +2420,13 @@ class wp_xmlrpc_server extends IXR_Server {
                if ( isset( $content_struct['wp_post_format'] ) )
                        wp_set_post_terms( $post_ID, array( 'post-format-' . $content_struct['wp_post_format'] ), 'post_format' );
 
                if ( isset( $content_struct['wp_post_format'] ) )
                        wp_set_post_terms( $post_ID, array( 'post-format-' . $content_struct['wp_post_format'] ), 'post_format' );
 
+               $post_ID = wp_insert_post( $postdata, true );
+               if ( is_wp_error( $post_ID ) )
+                       return new IXR_Error(500, $post_ID->get_error_message());
+
+               if ( !$post_ID )
+                       return new IXR_Error(500, __('Sorry, your entry could not be posted. Something wrong happened.'));
+
                logIO('O', "Posted ! ID: $post_ID");
 
                return strval($post_ID);
                logIO('O', "Posted ! ID: $post_ID");
 
                return strval($post_ID);
@@ -2849,7 +2850,7 @@ class wp_xmlrpc_server extends IXR_Server {
                                'mt_keywords' => $tagnames,
                                'wp_slug' => $postdata['post_name'],
                                'wp_password' => $postdata['post_password'],
                                'mt_keywords' => $tagnames,
                                'wp_slug' => $postdata['post_name'],
                                'wp_password' => $postdata['post_password'],
-                               'wp_author_id' => $author->ID,
+                               'wp_author_id' => (string) $author->ID,
                                'wp_author_display_name'        => $author->display_name,
                                'date_created_gmt' => new IXR_Date($post_date_gmt),
                                'post_status' => $postdata['post_status'],
                                'wp_author_display_name'        => $author->display_name,
                                'date_created_gmt' => new IXR_Date($post_date_gmt),
                                'post_status' => $postdata['post_status'],
@@ -2959,7 +2960,7 @@ class wp_xmlrpc_server extends IXR_Server {
                                'mt_keywords' => $tagnames,
                                'wp_slug' => $entry['post_name'],
                                'wp_password' => $entry['post_password'],
                                'mt_keywords' => $tagnames,
                                'wp_slug' => $entry['post_name'],
                                'wp_password' => $entry['post_password'],
-                               'wp_author_id' => $author->ID,
+                               'wp_author_id' => (string) $author->ID,
                                'wp_author_display_name' => $author->display_name,
                                'date_created_gmt' => new IXR_Date($post_date_gmt),
                                'post_status' => $entry['post_status'],
                                'wp_author_display_name' => $author->display_name,
                                'date_created_gmt' => new IXR_Date($post_date_gmt),
                                'post_status' => $entry['post_status'],
@@ -3445,7 +3446,7 @@ class wp_xmlrpc_server extends IXR_Server {
                } elseif ( isset($urltest['fragment']) ) {
                        // an #anchor is there, it's either...
                        if ( intval($urltest['fragment']) ) {
                } elseif ( isset($urltest['fragment']) ) {
                        // an #anchor is there, it's either...
                        if ( intval($urltest['fragment']) ) {
-                               // ...an integer #XXXX (simpliest case)
+                               // ...an integer #XXXX (simplest case)
                                $post_ID = (int) $urltest['fragment'];
                                $way = 'from the fragment (numeric)';
                        } elseif ( preg_match('/post-[0-9]+/',$urltest['fragment']) ) {
                                $post_ID = (int) $urltest['fragment'];
                                $way = 'from the fragment (numeric)';
                        } elseif ( preg_match('/post-[0-9]+/',$urltest['fragment']) ) {
index cf671bd79dc9025723b9250a02e84383ed9a3260..78de5ae53308e9b61939d4d90a3ca35f5e528a52 100644 (file)
@@ -185,54 +185,60 @@ class WP {
 
                        // Look for matches.
                        $request_match = $request;
 
                        // Look for matches.
                        $request_match = $request;
-                       foreach ( (array) $rewrite as $match => $query) {
-                               // Don't try to match against AtomPub calls
-                               if ( $req_uri == 'wp-app.php' )
-                                       break;
-
-                               // If the requesting file is the anchor of the match, prepend it
-                               // to the path info.
-                               if ( (! empty($req_uri)) && (strpos($match, $req_uri) === 0) && ($req_uri != $request) )
-                                       $request_match = $req_uri . '/' . $request;
-
-                               if ( preg_match("#^$match#", $request_match, $matches) ||
-                                       preg_match("#^$match#", urldecode($request_match), $matches) ) {
-                                       // Got a match.
-                                       $this->matched_rule = $match;
-
-                                       // Trim the query of everything up to the '?'.
-                                       $query = preg_replace("!^.+\?!", '', $query);
+                       if ( empty( $request_match ) ) {
+                               // An empty request could only match against ^$ regex
+                               if ( isset( $rewrite['$'] ) ) {
+                                       $this->matched_rule = '$';
+                                       $query = $rewrite['$'];
+                                       $matches = array('');
+                               }
+                       } else if ( $req_uri != 'wp-app.php' ) {
+                               foreach ( (array) $rewrite as $match => $query ) {
+                                       // If the requesting file is the anchor of the match, prepend it to the path info.
+                                       if ( ! empty($req_uri) && strpos($match, $req_uri) === 0 && $req_uri != $request )
+                                               $request_match = $req_uri . '/' . $request;
+
+                                       if ( preg_match("#^$match#", $request_match, $matches) ||
+                                               preg_match("#^$match#", urldecode($request_match), $matches) ) {
+
+                                               if ( $wp_rewrite->use_verbose_page_rules && preg_match( '/pagename=\$matches\[([0-9]+)\]/', $query, $varmatch ) ) {
+                                                       // this is a verbose page match, lets check to be sure about it
+                                                       if ( ! get_page_by_path( $matches[ $varmatch[1] ] ) )
+                                                               continue;
+                                               }
 
 
-                                       // Substitute the substring matches into the query.
-                                       $query = addslashes(WP_MatchesMapRegex::apply($query, $matches));
+                                               // Got a match.
+                                               $this->matched_rule = $match;
+                                               break;
+                                       }
+                               }
+                       }
 
 
-                                       $this->matched_query = $query;
+                       if ( isset( $this->matched_rule ) ) {
+                               // Trim the query of everything up to the '?'.
+                               $query = preg_replace("!^.+\?!", '', $query);
 
 
-                                       // Parse the query.
-                                       parse_str($query, $perma_query_vars);
+                               // Substitute the substring matches into the query.
+                               $query = addslashes(WP_MatchesMapRegex::apply($query, $matches));
 
 
-                                       // If we're processing a 404 request, clear the error var
-                                       // since we found something.
-                                       if ( isset($_GET['error']) )
-                                               unset($_GET['error']);
+                               $this->matched_query = $query;
 
 
-                                       if ( isset($error) )
-                                               unset($error);
+                               // Parse the query.
+                               parse_str($query, $perma_query_vars);
 
 
-                                       break;
-                               }
+                               // If we're processing a 404 request, clear the error var
+                               // since we found something.
+                               unset( $_GET['error'] );
+                               unset( $error );
                        }
 
                        // If req_uri is empty or if it is a request for ourself, unset error.
                        if ( empty($request) || $req_uri == $self || strpos($_SERVER['PHP_SELF'], 'wp-admin/') !== false ) {
                        }
 
                        // If req_uri is empty or if it is a request for ourself, unset error.
                        if ( empty($request) || $req_uri == $self || strpos($_SERVER['PHP_SELF'], 'wp-admin/') !== false ) {
-                               if ( isset($_GET['error']) )
-                                       unset($_GET['error']);
-
-                               if ( isset($error) )
-                                       unset($error);
+                               unset( $_GET['error'] );
+                               unset( $error );
 
                                if ( isset($perma_query_vars) && strpos($_SERVER['PHP_SELF'], 'wp-admin/') !== false )
 
                                if ( isset($perma_query_vars) && strpos($_SERVER['PHP_SELF'], 'wp-admin/') !== false )
-                                       unset($perma_query_vars);
+                                       unset( $perma_query_vars );
 
                                $this->did_permalink = false;
                        }
 
                                $this->did_permalink = false;
                        }
@@ -563,11 +569,11 @@ class WP_MatchesMapRegex {
         *
         * @access public
         * @param string $subject subject
         *
         * @access public
         * @param string $subject subject
-        * @param array  $matches data used for subsitution
+        * @param array  $matches data used for substitution
         * @return string
         */
         * @return string
         */
-       function apply($subject, $matches) {
-               $oSelf =& new WP_MatchesMapRegex($subject, $matches);
+       public static function apply($subject, $matches) {
+               $oSelf = new WP_MatchesMapRegex($subject, $matches);
                return $oSelf->output;
        }
 
                return $oSelf->output;
        }
 
index 0e3f51ede35d1b6864f9a2d29da4dc9b59af393f..3907082ebe240a275113b3f5ba701c30ef5236ab 100644 (file)
@@ -39,7 +39,7 @@ class WP_Dependencies {
                $this->all_deps( $handles );
 
                foreach( $this->to_do as $key => $handle ) {
                $this->all_deps( $handles );
 
                foreach( $this->to_do as $key => $handle ) {
-                       if ( !in_array($handle, $this->done) && isset($this->registered[$handle]) ) {
+                       if ( !in_array($handle, $this->done, true) && isset($this->registered[$handle]) ) {
 
                                if ( ! $this->registered[$handle]->src ) { // Defines a group.
                                        $this->done[] = $handle;
 
                                if ( ! $this->registered[$handle]->src ) { // Defines a group.
                                        $this->done[] = $handle;
@@ -134,17 +134,39 @@ class WP_Dependencies {
        /**
         * Adds extra data
         *
        /**
         * Adds extra data
         *
-        * Adds data only if script has already been added
+        * Adds data only if script has already been added.
         *
         * @param string $handle Script name
         *
         * @param string $handle Script name
-        * @param string $data_name Name of object in which to store extra data
-        * @param array $data Array of extra data
+        * @param string $key
+        * @param mixed $value
         * @return bool success
         */
         * @return bool success
         */
-       function add_data( $handle, $data_name, $data ) {
-               if ( !isset($this->registered[$handle]) )
+       function add_data( $handle, $key, $value ) {
+               if ( !isset( $this->registered[$handle] ) )
                        return false;
                        return false;
-               return $this->registered[$handle]->add_data( $data_name, $data );
+
+               return $this->registered[$handle]->add_data( $key, $value );
+       }
+
+       /**
+        * Get extra data
+        *
+        * Gets data associated with a certain handle.
+        *
+        * @since WP 3.3
+        *
+        * @param string $handle Script name
+        * @param string $key
+        * @return mixed
+        */
+       function get_data( $handle, $key ) {
+               if ( !isset( $this->registered[$handle] ) )
+                       return false;
+
+               if ( !isset( $this->registered[$handle]->extra[$key] ) )
+                       return false;
+
+               return $this->registered[$handle]->extra[$key];
        }
 
        function remove( $handles ) {
        }
 
        function remove( $handles ) {
index 681a8246990a5d78c2ef3c687bdc2665bb6d3968..41f6019ecd8887e0632bbe5a0db0bcd25802c154 100644 (file)
@@ -47,35 +47,26 @@ class WP_Scripts extends WP_Dependencies {
                return $this->do_items( $handles, $group );
        }
 
                return $this->do_items( $handles, $group );
        }
 
+       // Deprecated since 3.3, see print_extra_script()
        function print_scripts_l10n( $handle, $echo = true ) {
        function print_scripts_l10n( $handle, $echo = true ) {
-               if ( empty($this->registered[$handle]->extra['l10n']) || empty($this->registered[$handle]->extra['l10n'][0]) || !is_array($this->registered[$handle]->extra['l10n'][1]) )
-                       return false;
+               _deprecated_function( __FUNCTION__, '3.3', 'print_extra_script()' );
+               return $this->print_extra_script( $handle, $echo );
+       }
 
 
-               $object_name = $this->registered[$handle]->extra['l10n'][0];
+       function print_extra_script( $handle, $echo = true ) {
+               if ( !$output = $this->get_data( $handle, 'data' ) )
+                       return;
 
 
-               $data = "var $object_name = {\n";
-               $eol = '';
-               foreach ( $this->registered[$handle]->extra['l10n'][1] as $var => $val ) {
-                       if ( 'l10n_print_after' == $var ) {
-                               $after = $val;
-                               continue;
-                       }
-                       $data .= "$eol\t$var: \"" . esc_js( $val ) . '"';
-                       $eol = ",\n";
-               }
-               $data .= "\n};\n";
-               $data .= isset($after) ? "$after\n" : '';
-
-               if ( $echo ) {
-                       echo "<script type='text/javascript'>\n";
-                       echo "/* <![CDATA[ */\n";
-                       echo $data;
-                       echo "/* ]]> */\n";
-                       echo "</script>\n";
-                       return true;
-               } else {
-                       return $data;
-               }
+               if ( !$echo )
+                       return $output;
+
+               echo "<script type='text/javascript'>\n"; // CDATA and type='text/javascript' is not needed for HTML 5
+               echo "/* <![CDATA[ */\n";
+               echo "$output\n";
+               echo "/* ]]> */\n";
+               echo "</script>\n";
+
+               return true;
        }
 
        function do_item( $handle, $group = false ) {
        }
 
        function do_item( $handle, $group = false ) {
@@ -103,7 +94,7 @@ class WP_Scripts extends WP_Dependencies {
                if ( $this->do_concat ) {
                        $srce = apply_filters( 'script_loader_src', $src, $handle );
                        if ( $this->in_default_dir($srce) ) {
                if ( $this->do_concat ) {
                        $srce = apply_filters( 'script_loader_src', $src, $handle );
                        if ( $this->in_default_dir($srce) ) {
-                               $this->print_code .= $this->print_scripts_l10n( $handle, false );
+                               $this->print_code .= $this->print_extra_script( $handle, false );
                                $this->concat .= "$handle,";
                                $this->concat_version .= "$handle$ver";
                                return true;
                                $this->concat .= "$handle,";
                                $this->concat_version .= "$handle$ver";
                                return true;
@@ -113,14 +104,15 @@ class WP_Scripts extends WP_Dependencies {
                        }
                }
 
                        }
                }
 
-               $this->print_scripts_l10n( $handle );
+               $this->print_extra_script( $handle );
                if ( !preg_match('|^https?://|', $src) && ! ( $this->content_url && 0 === strpos($src, $this->content_url) ) ) {
                        $src = $this->base_url . $src;
                }
 
                if ( !empty($ver) )
                        $src = add_query_arg('ver', $ver, $src);
                if ( !preg_match('|^https?://|', $src) && ! ( $this->content_url && 0 === strpos($src, $this->content_url) ) ) {
                        $src = $this->base_url . $src;
                }
 
                if ( !empty($ver) )
                        $src = add_query_arg('ver', $ver, $src);
-               $src = esc_url(apply_filters( 'script_loader_src', $src, $handle ));
+
+               $src = esc_url( apply_filters( 'script_loader_src', $src, $handle ) );
 
                if ( $this->do_concat )
                        $this->print_html .= "<script type='text/javascript' src='$src'></script>\n";
 
                if ( $this->do_concat )
                        $this->print_html .= "<script type='text/javascript' src='$src'></script>\n";
@@ -133,21 +125,41 @@ class WP_Scripts extends WP_Dependencies {
        /**
         * Localizes a script
         *
        /**
         * Localizes a script
         *
-        * Localizes only if script has already been added
-        *
-        * @param string $handle Script name
-        * @param string $object_name Name of JS object to hold l10n info
-        * @param array $l10n Array of JS var name => localized string
-        * @return bool Successful localization
+        * Localizes only if the script has already been added
         */
        function localize( $handle, $object_name, $l10n ) {
         */
        function localize( $handle, $object_name, $l10n ) {
-               if ( !$object_name || !$l10n )
-                       return false;
-               return $this->add_data( $handle, 'l10n', array( $object_name, $l10n ) );
+               if ( is_array($l10n) && isset($l10n['l10n_print_after']) ) { // back compat, preserve the code in 'l10n_print_after' if present
+                       $after = $l10n['l10n_print_after'];
+                       unset($l10n['l10n_print_after']);
+               }
+
+               foreach ( (array) $l10n as $key => $value ) {
+                       if ( !is_scalar($value) )
+                               continue;
+
+                       $l10n[$key] = html_entity_decode( (string) $value, ENT_QUOTES, 'UTF-8');
+               }
+
+               $script = "var $object_name = " . json_encode($l10n) . ';';
+
+               if ( !empty($after) )
+                       $script .= "\n$after";
+
+               $data = $this->get_data( $handle, 'data' );
+
+               if ( !empty( $data ) )
+                       $script = "$data;\n$script";
+
+               return $this->add_data( $handle, 'data', $script );
        }
 
        function set_group( $handle, $recursion, $group = false ) {
        }
 
        function set_group( $handle, $recursion, $group = false ) {
-               $grp = isset($this->registered[$handle]->extra['group']) ? (int) $this->registered[$handle]->extra['group'] : 0;
+
+               if ( $this->registered[$handle]->args === 1 )
+                       $grp = 1;
+               else
+                       $grp = (int) $this->get_data( $handle, 'group' );
+
                if ( false !== $group && $grp > $group )
                        $grp = $group;
 
                if ( false !== $group && $grp > $group )
                        $grp = $group;
 
@@ -167,15 +179,7 @@ class WP_Scripts extends WP_Dependencies {
        }
 
        function do_footer_items() {
        }
 
        function do_footer_items() {
-               if ( !empty($this->in_footer) ) {
-                       foreach( $this->in_footer as $key => $handle ) {
-                               if ( !in_array($handle, $this->done, true) && isset($this->registered[$handle]) ) {
-                                       $this->do_item($handle);
-                                       $this->done[] = $handle;
-                                       unset( $this->in_footer[$key] );
-                               }
-                       }
-               }
+               $this->do_items(false, 1);
                return $this->done;
        }
 
                return $this->done;
        }
 
index ecc0bb9e22c50f322770f27316d3cd0af2cb4830..6455fe47375dc3de1a0c63670cb74e72239b829e 100644 (file)
@@ -25,6 +25,7 @@ class WP_Styles extends WP_Dependencies {
        var $concat_version = '';
        var $do_concat = false;
        var $print_html = '';
        var $concat_version = '';
        var $do_concat = false;
        var $print_html = '';
+       var $print_code = '';
        var $default_dirs;
 
        function __construct() {
        var $default_dirs;
 
        function __construct() {
@@ -35,44 +36,48 @@ class WP_Styles extends WP_Dependencies {
                if ( !parent::do_item($handle) )
                        return false;
 
                if ( !parent::do_item($handle) )
                        return false;
 
-               if ( null === $this->registered[$handle]->ver )
+               $obj = $this->registered[$handle];
+               if ( null === $obj->ver )
                        $ver = '';
                else
                        $ver = '';
                else
-                       $ver = $this->registered[$handle]->ver ? $this->registered[$handle]->ver : $this->default_version;
+                       $ver = $obj->ver ? $obj->ver : $this->default_version;
 
                if ( isset($this->args[$handle]) )
                        $ver = $ver ? $ver . '&amp;' . $this->args[$handle] : $this->args[$handle];
 
                if ( $this->do_concat ) {
 
                if ( isset($this->args[$handle]) )
                        $ver = $ver ? $ver . '&amp;' . $this->args[$handle] : $this->args[$handle];
 
                if ( $this->do_concat ) {
-                       if ( $this->in_default_dir($this->registered[$handle]->src) && !isset($this->registered[$handle]->extra['conditional']) && !isset($this->registered[$handle]->extra['alt']) ) {
+                       if ( $this->in_default_dir($obj->src) && !isset($obj->extra['conditional']) && !isset($obj->extra['alt']) ) {
                                $this->concat .= "$handle,";
                                $this->concat_version .= "$handle$ver";
                                $this->concat .= "$handle,";
                                $this->concat_version .= "$handle$ver";
+
+                               $this->print_code .= $this->get_data( $handle, 'after' );
+
                                return true;
                        }
                }
 
                                return true;
                        }
                }
 
-               if ( isset($this->registered[$handle]->args) )
-                       $media = esc_attr( $this->registered[$handle]->args );
+               if ( isset($obj->args) )
+                       $media = esc_attr( $obj->args );
                else
                        $media = 'all';
 
                else
                        $media = 'all';
 
-               $href = $this->_css_href( $this->registered[$handle]->src, $ver, $handle );
-               $rel = isset($this->registered[$handle]->extra['alt']) && $this->registered[$handle]->extra['alt'] ? 'alternate stylesheet' : 'stylesheet';
-               $title = isset($this->registered[$handle]->extra['title']) ? "title='" . esc_attr( $this->registered[$handle]->extra['title'] ) . "'" : '';
+               $href = $this->_css_href( $obj->src, $ver, $handle );
+               $rel = isset($obj->extra['alt']) && $obj->extra['alt'] ? 'alternate stylesheet' : 'stylesheet';
+               $title = isset($obj->extra['title']) ? "title='" . esc_attr( $obj->extra['title'] ) . "'" : '';
 
                $end_cond = $tag = '';
 
                $end_cond = $tag = '';
-               if ( isset($this->registered[$handle]->extra['conditional']) && $this->registered[$handle]->extra['conditional'] ) {
-                       $tag .= "<!--[if {$this->registered[$handle]->extra['conditional']}]>\n";
+               if ( isset($obj->extra['conditional']) && $obj->extra['conditional'] ) {
+                       $tag .= "<!--[if {$obj->extra['conditional']}]>\n";
                        $end_cond = "<![endif]-->\n";
                }
 
                $tag .= apply_filters( 'style_loader_tag', "<link rel='$rel' id='$handle-css' $title href='$href' type='text/css' media='$media' />\n", $handle );
                        $end_cond = "<![endif]-->\n";
                }
 
                $tag .= apply_filters( 'style_loader_tag', "<link rel='$rel' id='$handle-css' $title href='$href' type='text/css' media='$media' />\n", $handle );
-               if ( 'rtl' === $this->text_direction && isset($this->registered[$handle]->extra['rtl']) && $this->registered[$handle]->extra['rtl'] ) {
-                       if ( is_bool( $this->registered[$handle]->extra['rtl'] ) ) {
-                               $suffix = isset( $this->registered[$handle]->extra['suffix'] ) ? $this->registered[$handle]->extra['suffix'] : '';
-                               $rtl_href = str_replace( "{$suffix}.css", "-rtl{$suffix}.css", $this->_css_href( $this->registered[$handle]->src , $ver, "$handle-rtl" ));
+               if ( 'rtl' === $this->text_direction && isset($obj->extra['rtl']) && $obj->extra['rtl'] ) {
+                       if ( is_bool( $obj->extra['rtl'] ) ) {
+                               $suffix = isset( $obj->extra['suffix'] ) ? $obj->extra['suffix'] : '';
+                               $rtl_href = str_replace( "{$suffix}.css", "-rtl{$suffix}.css", $this->_css_href( $obj->src , $ver, "$handle-rtl" ));
                        } else {
                        } else {
-                               $rtl_href = $this->_css_href( $this->registered[$handle]->extra['rtl'], $ver, "$handle-rtl" );
+                               $rtl_href = $this->_css_href( $obj->extra['rtl'], $ver, "$handle-rtl" );
                        }
 
                        $tag .= apply_filters( 'style_loader_tag', "<link rel='$rel' id='$handle-rtl-css' $title href='$rtl_href' type='text/css' media='$media' />\n", $handle );
                        }
 
                        $tag .= apply_filters( 'style_loader_tag', "<link rel='$rel' id='$handle-rtl-css' $title href='$rtl_href' type='text/css' media='$media' />\n", $handle );
@@ -80,16 +85,44 @@ class WP_Styles extends WP_Dependencies {
 
                $tag .= $end_cond;
 
 
                $tag .= $end_cond;
 
-               if ( $this->do_concat )
+               if ( $this->do_concat ) {
                        $this->print_html .= $tag;
                        $this->print_html .= $tag;
-               else
+                       $this->print_html .= $this->print_inline_style( $handle, false );
+               } else {
                        echo $tag;
                        echo $tag;
+                       $this->print_inline_style( $handle );
+               }
+
+               return true;
+       }
+
+       function add_inline_style( $handle, $code ) {
+               if ( !$code )
+                       return false;
+
+               $after = $this->get_data( $handle, 'after' );
+               if ( !$after )
+                       $after = array();
 
 
-               // Could do something with $this->registered[$handle]->extra here to print out extra CSS rules
-//             echo "<style type='text/css'>\n";
-//             echo "/* <![CDATA[ */\n";
-//             echo "/* ]]> */\n";
-//             echo "</style>\n";
+               $after[] = $code;
+
+               return $this->add_data( $handle, 'after', $after );
+       }
+
+       function print_inline_style( $handle, $echo = true ) {
+               $output = $this->get_data( $handle, 'after' );
+
+               if ( empty( $output ) )
+                       return false;
+
+               $output = implode( "\n", $output );
+
+               if ( !$echo )
+                       return $output;
+
+               echo "<style type='text/css'>\n";
+               echo "$output\n";
+               echo "</style>\n";
 
                return true;
        }
 
                return true;
        }
@@ -123,4 +156,16 @@ class WP_Styles extends WP_Dependencies {
                return false;
        }
 
                return false;
        }
 
+       function do_footer_items() { // HTML 5 allows styles in the body, grab late enqueued items and output them in the footer.
+               $this->do_items(false, 1);
+               return $this->done;
+       }
+
+       function reset() {
+               $this->do_concat = false;
+               $this->concat = '';
+               $this->concat_version = '';
+               $this->print_html = '';
+       }
 }
 }
+
index ce0f9ddbb8018db22157bc00b8c95872fdb9656c..25f73c3d9004920ee7627e6dd3be5e70aa6937d6 100644 (file)
@@ -362,7 +362,7 @@ function get_comment_class( $class = '', $comment_id = null, $post_id = null ) {
  * Retrieve the comment date of the current comment.
  *
  * @since 1.5.0
  * Retrieve the comment date of the current comment.
  *
  * @since 1.5.0
- * @uses apply_filters() Calls 'get_comment_date' hook with the formated date and the $d parameter respectively
+ * @uses apply_filters() Calls 'get_comment_date' hook with the formatted date and the $d parameter respectively
  * @uses $comment
  *
  * @param string $d The format of the date (defaults to user's config)
  * @uses $comment
  *
  * @param string $d The format of the date (defaults to user's config)
@@ -832,7 +832,7 @@ function wp_comment_form_unfiltered_html_nonce() {
  *
  * The $file path is passed through a filter hook called, 'comments_template'
  * which includes the TEMPLATEPATH and $file combined. Tries the $filtered path
  *
  * The $file path is passed through a filter hook called, 'comments_template'
  * which includes the TEMPLATEPATH and $file combined. Tries the $filtered path
- * first and if it fails it will require the default comment themplate from the
+ * first and if it fails it will require the default comment template from the
  * default theme. If either does not exist, then the WordPress process will be
  * halted. It is advised for that reason, that the default theme is not deleted.
  *
  * default theme. If either does not exist, then the WordPress process will be
  * halted. It is advised for that reason, that the default theme is not deleted.
  *
@@ -1508,7 +1508,7 @@ function wp_list_comments($args = array(), $comments = null ) {
  * @return void
  */
 function comment_form( $args = array(), $post_id = null ) {
  * @return void
  */
 function comment_form( $args = array(), $post_id = null ) {
-       global $user_identity, $id;
+       global $id;
 
        if ( null === $post_id )
                $post_id = $id;
 
        if ( null === $post_id )
                $post_id = $id;
@@ -1516,6 +1516,8 @@ function comment_form( $args = array(), $post_id = null ) {
                $id = $post_id;
 
        $commenter = wp_get_current_commenter();
                $id = $post_id;
 
        $commenter = wp_get_current_commenter();
+       $user = wp_get_current_user();
+       $user_identity = ! empty( $user->ID ) ? $user->display_name : '';
 
        $req = get_option( 'require_name_email' );
        $aria_req = ( $req ? " aria-required='true'" : '' );
 
        $req = get_option( 'require_name_email' );
        $aria_req = ( $req ? " aria-required='true'" : '' );
index 8e17000a5d808881e24f2fabbce76146433a7b91..84076d715ad11f13aaac4e462d0d74f8e2cb2f3e 100644 (file)
@@ -1664,21 +1664,15 @@ function do_all_pings() {
        global $wpdb;
 
        // Do pingbacks
        global $wpdb;
 
        // Do pingbacks
-       while ($ping = $wpdb->get_row("SELECT * FROM {$wpdb->posts}, {$wpdb->postmeta} WHERE {$wpdb->posts}.ID = {$wpdb->postmeta}.post_id AND {$wpdb->postmeta}.meta_key = '_pingme' LIMIT 1")) {
-               $mid = $wpdb->get_var( "SELECT meta_id FROM {$wpdb->postmeta} WHERE post_id = {$ping->ID} AND meta_key = '_pingme' LIMIT 1");
-               do_action( 'delete_postmeta', $mid );
-               $wpdb->query( $wpdb->prepare( "DELETE FROM {$wpdb->postmeta} WHERE meta_id = %d", $mid ) );
-               do_action( 'deleted_postmeta', $mid );
-               pingback($ping->post_content, $ping->ID);
+       while ($ping = $wpdb->get_row("SELECT ID, post_content, meta_id FROM {$wpdb->posts}, {$wpdb->postmeta} WHERE {$wpdb->posts}.ID = {$wpdb->postmeta}.post_id AND {$wpdb->postmeta}.meta_key = '_pingme' LIMIT 1")) {
+               delete_metadata_by_mid( 'post', $ping->meta_id );
+               pingback( $ping->post_content, $ping->ID );
        }
 
        // Do Enclosures
        }
 
        // Do Enclosures
-       while ($enclosure = $wpdb->get_row("SELECT * FROM {$wpdb->posts}, {$wpdb->postmeta} WHERE {$wpdb->posts}.ID = {$wpdb->postmeta}.post_id AND {$wpdb->postmeta}.meta_key = '_encloseme' LIMIT 1")) {
-               $mid = $wpdb->get_var( $wpdb->prepare("SELECT meta_id FROM {$wpdb->postmeta} WHERE post_id = %d AND meta_key = '_encloseme'", $enclosure->ID) );
-               do_action( 'delete_postmeta', $mid );
-               $wpdb->query( $wpdb->prepare("DELETE FROM {$wpdb->postmeta} WHERE meta_id =  %d", $mid) );
-               do_action( 'deleted_postmeta', $mid );
-               do_enclose($enclosure->post_content, $enclosure->ID);
+       while ($enclosure = $wpdb->get_row("SELECT ID, post_content, meta_id FROM {$wpdb->posts}, {$wpdb->postmeta} WHERE {$wpdb->posts}.ID = {$wpdb->postmeta}.post_id AND {$wpdb->postmeta}.meta_key = '_encloseme' LIMIT 1")) {
+               delete_metadata_by_mid( 'post', $enclosure->meta_id );
+               do_enclose( $enclosure->post_content, $enclosure->ID );
        }
 
        // Do Trackbacks
        }
 
        // Do Trackbacks
@@ -1717,7 +1711,7 @@ function do_trackbacks($post_id) {
        $excerpt = str_replace(']]>', ']]&gt;', $excerpt);
        $excerpt = wp_html_excerpt($excerpt, 252) . '...';
 
        $excerpt = str_replace(']]>', ']]&gt;', $excerpt);
        $excerpt = wp_html_excerpt($excerpt, 252) . '...';
 
-       $post_title = apply_filters('the_title', $post->post_title);
+       $post_title = apply_filters('the_title', $post->post_title, $post->ID);
        $post_title = strip_tags($post_title);
 
        if ( $to_ping ) {
        $post_title = strip_tags($post_title);
 
        if ( $to_ping ) {
@@ -1959,18 +1953,19 @@ function update_comment_cache($comments) {
  * @since 2.7.0
  *
  * @param object $posts Post data object.
  * @since 2.7.0
  *
  * @param object $posts Post data object.
+ * @param object $query Query object.
  * @return object
  */
  * @return object
  */
-function _close_comments_for_old_posts( $posts ) {
-       if ( empty($posts) || !is_singular() || !get_option('close_comments_for_old_posts') )
+function _close_comments_for_old_posts( $posts, $query ) {
+       if ( empty( $posts ) || ! $query->is_singular() || ! get_option( 'close_comments_for_old_posts' ) )
                return $posts;
 
        $post_types = apply_filters( 'close_comments_for_post_types', array( 'post' ) );
        if ( ! in_array( $posts[0]->post_type, $post_types ) )
                return $posts;
 
                return $posts;
 
        $post_types = apply_filters( 'close_comments_for_post_types', array( 'post' ) );
        if ( ! in_array( $posts[0]->post_type, $post_types ) )
                return $posts;
 
-       $days_old = (int) get_option('close_comments_days_old');
-       if ( !$days_old )
+       $days_old = (int) get_option( 'close_comments_days_old' );
+       if ( ! $days_old )
                return $posts;
 
        if ( time() - strtotime( $posts[0]->post_date_gmt ) > ( $days_old * 24 * 60 * 60 ) ) {
                return $posts;
 
        if ( time() - strtotime( $posts[0]->post_date_gmt ) > ( $days_old * 24 * 60 * 60 ) ) {
index b7d04f2a2f56b4b633c4c81b135f583ea648d189..27f29711a5bc803bb49d4e4902e614a357936caf 100644 (file)
@@ -204,13 +204,13 @@ function spawn_cron( $local_time = 0 ) {
        * multiple processes on multiple web servers can run this code concurrently
        * try to make this as atomic as possible by setting doing_cron switch
        */
        * multiple processes on multiple web servers can run this code concurrently
        * try to make this as atomic as possible by setting doing_cron switch
        */
-       $flag = get_transient('doing_cron');
+       $lock = get_transient('doing_cron');
 
 
-       if ( $flag > $local_time + 10*60 )
-               $flag = 0;
+       if ( $lock > $local_time + 10*60 )
+               $lock = 0;
 
        // don't run if another process is currently running it or more than once every 60 sec.
 
        // don't run if another process is currently running it or more than once every 60 sec.
-       if ( $flag + 60 > $local_time )
+       if ( $lock + WP_CRON_LOCK_TIMEOUT > $local_time )
                return;
 
        //sanity check
                return;
 
        //sanity check
@@ -226,10 +226,11 @@ function spawn_cron( $local_time = 0 ) {
                if ( !empty($_POST) || defined('DOING_AJAX') )
                        return;
 
                if ( !empty($_POST) || defined('DOING_AJAX') )
                        return;
 
-               set_transient( 'doing_cron', $local_time );
+               $doing_wp_cron = $local_time;
+               set_transient( 'doing_cron', $doing_wp_cron );
 
                ob_start();
 
                ob_start();
-               wp_redirect( add_query_arg('doing_wp_cron', '', stripslashes($_SERVER['REQUEST_URI'])) );
+               wp_redirect( add_query_arg('doing_wp_cron', $doing_wp_cron, stripslashes($_SERVER['REQUEST_URI'])) );
                echo ' ';
 
                // flush any buffers and send the headers
                echo ' ';
 
                // flush any buffers and send the headers
@@ -240,9 +241,10 @@ function spawn_cron( $local_time = 0 ) {
                return;
        }
 
                return;
        }
 
-       set_transient( 'doing_cron', $local_time );
+       $doing_wp_cron = $local_time;
+       set_transient( 'doing_cron', $doing_wp_cron );
 
 
-       $cron_url = get_option( 'siteurl' ) . '/wp-cron.php?doing_wp_cron';
+       $cron_url = get_option( 'siteurl' ) . '/wp-cron.php?doing_wp_cron=' . $doing_wp_cron;
        wp_remote_post( $cron_url, array('timeout' => 0.01, 'blocking' => false, 'sslverify' => apply_filters('https_local_ssl_verify', true)) );
 }
 
        wp_remote_post( $cron_url, array('timeout' => 0.01, 'blocking' => false, 'sslverify' => apply_filters('https_local_ssl_verify', true)) );
 }
 
index 59ad56a9a22c76d1ded889df844cd04f2e760e93..f11c586d5ff28e440dfd59da9485c122b1ac8b19 100644 (file)
@@ -1 +1 @@
-#wpadminbar{direction:rtl;font-family:Tahoma,Arial,Helvetica,sans-serif;right:0;left:auto;}#wpadminbar *{font-family:Tahoma,Arial,Helvetica,sans-serif;}#wpadminbar .quicklinks ul{text-align:right;}#wpadminbar .quicklinks ul li{float:right;}#wpadminbar .quicklinks>ul>li>a{border-left:1px solid #686868;border-right:1px solid #808080;}#wpadminbar .quicklinks>ul>li:last-child>a{border-left:none;border-right:1px solid #808080;}#wpadminbar .quicklinks>ul>li:hover>a{border-right-color:#707070;border-left-color:#686868;}#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar a img{margin:-2px -5px 0 23px;}#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar ul{left:auto;right:30px;}#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar ul ul{right:0;left:auto;}#wpadminbar .quicklinks .menupop li:hover>ul,#wpadminbar .quicklinks .menupop li.hover>ul{margin-right:100%;margin-left:0;}#wpadminbar .quicklinks .menupop a>span{background:url(../images/admin-bar-sprite-rtl.png?d=11122010) left -58px no-repeat;padding-right:0;padding-left:.8em;}#wpadminbar .quicklinks .menupop ul li a>span{background:url(../images/admin-bar-sprite-rtl.png?d=11122010) left -29px no-repeat;padding-right:0;padding-left:1.5em;}#wpadminbar .quicklinks a{font-family:Tahoma,Arial,Helvetica,sans-serif;}#wpadminbar .quicklinks .menupop li a img.blavatar{margin-right:0;margin-left:8px;}#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar>a{background:url(../images/admin-bar-sprite-rtl.png?d=11122010) top right no-repeat;}#wpadminbar .quicklinks li#wp-admin-bar-my-account>a,#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar>a{border-right:none;border-left:1px solid #686868;}#wpadminbar #adminbarsearch{float:left;}#wpadminbar #adminbarsearch .adminbar-input{float:right;font-family:Tahoma,Arial,Helvetica,sans-serif;margin-right:0;margin-left:3px;-moz-box-shadow:inset 2px -2px 1px #cdcdcd;-webkit-box-shadow:inset -2px 2px 1px #cdcdcd;box-shadow:inset 2px -2px 1px #cdcdcd;}#wpadminbar #adminbarsearch .adminbar-button{float:right;font-family:Tahoma,Arial,Helvetica,sans-serif;}
\ No newline at end of file
+#wpadminbar *{font-family:Tahoma,Arial,Helvetica,sans-serif;}#wpadminbar{direction:rtl;font-family:Tahoma,Arial,Helvetica,sans-serif;left:auto;right:0;}#wpadminbar .quicklinks{border-left:0;border-right:1px solid transparent;}#wpadminbar .quicklinks ul{text-align:right;}#wpadminbar li{float:right;}#wpadminbar .quicklinks>ul>li{border-right:0;border-left:1px solid #555;}#wpadminbar .quicklinks>ul>li>a,#wpadminbar .quicklinks>ul>li>.ab-empty-item{border-right:0;border-left:1px solid #333;}#wpadminbar .quicklinks .ab-top-secondary>li{border-left:0;border-right:1px solid #333;float:left;}#wpadminbar .quicklinks .ab-top-secondary>li>a,#wpadminbar .quicklinks .ab-top-secondary>li>.ab-empty-item{border-right:1px solid #555;border-left:0;}#wpadminbar .menupop .ab-sub-wrapper,#wpadminbar .shortlink-input{margin:0 -1px 0 0;}#wpadminbar.ie7 .menupop .ab-sub-wrapper,#wpadminbar.ie7 .shortlink-input{left:auto;right:0;}#wpadminbar .ab-top-secondary .menupop .ab-sub-wrapper{right:auto;left:0;margin:0 0 0 -1px;}#wpadminbar .menupop li:hover>.ab-sub-wrapper,#wpadminbar .menupop li.hover>.ab-sub-wrapper{margin-left:0;margin-right:100%;}#wpadminbar .ab-top-secondary .menupop li:hover>.ab-sub-wrapper,#wpadminbar .ab-top-secondary .menupop li.hover>.ab-sub-wrapper{margin-left:inherit;margin-right:0;left:100%;right:inherit;}#wpadminbar .menupop .menupop>.ab-item{background-position:5% -46px;padding-left:2em;padding-right:1em;}#wpadminbar .ab-top-secondary .menupop .menupop>.ab-item{background-position:95% -20px;padding-left:1em;padding-right:2em;}#wpadminbar .quicklinks .menupop ul.ab-sub-secondary{right:0;left:auto;}#wpadminbar .ab-top-secondary{float:left;right:auto;left:0;}#wpadminbar ul li:last-child,#wpadminbar ul li:last-child .ab-item{border-left:0;}#wpadminbar #wp-admin-bar-my-account.with-avatar #wp-admin-bar-user-actions>li{margin-right:88px;margin-left:16px;}#wp-admin-bar-user-actions>li>.ab-item{padding-left:0;padding-right:8px;}#wp-admin-bar-user-info .avatar{left:auto;right:-72px;}#wpadminbar .quicklinks li#wp-admin-bar-my-account.with-avatar>a img{margin-left:-1px;margin-right:4px;}#wpadminbar .quicklinks li img.blavatar{margin-right:0;margin-left:4px;}#wpadminbar #adminbarsearch .adminbar-input{font-family:Tahoma,Arial,Helvetica,sans-serif;padding:0 24px 0 3px;margin:0;background-position:50% 2px;}#wpadminbar #adminbarsearch .adminbar-input:focus,#wpadminbar.ie7 #adminbarsearch .adminbar-input{background-position:99% 2px;}#wpadminbar .ab-icon{float:right;}.ie7 #wp-admin-bar-wp-logo>.ab-item .ab-icon{position:static;}#wpadminbar.ie7 .ab-icon{float:left;left:12px;}#wpadminbar .ab-label{margin-left:0;margin-right:4px;float:left;}#wpadminbar.ie7 .ab-label{margin-right:0;}#wpadminbar.ie7 #wp-admin-bar-comments>a{min-width:25px;}#wpadminbar a:hover .ab-comments-icon-arrow{border-right-color:#bbb;}#wpadminbar .menupop .ab-sub-wrapper,#wpadminbar .shortlink-input{right:0;}#wpadminbar .quicklinks .menupop ul li a{position:relative;}* html #wpadminbar .quicklinks ul li a{float:right;}
\ No newline at end of file
index 26138f5270f2129816046c604765dcb5266b4ec4..328bfcf324ba9f4634d0fbaef41bba607c4e4f99 100644 (file)
+#wpadminbar * {
+       font-family: Tahoma, Arial, Helvetica, sans-serif;
+}
+
 #wpadminbar {
        direction: rtl;
        font-family: Tahoma, Arial, Helvetica, sans-serif;
 #wpadminbar {
        direction: rtl;
        font-family: Tahoma, Arial, Helvetica, sans-serif;
-       right: 0;
        left: auto;
        left: auto;
+       right: 0;
 }
 
 }
 
-#wpadminbar * {
-       font-family: Tahoma, Arial, Helvetica, sans-serif;
+#wpadminbar .quicklinks {
+       border-left: 0;
+       border-right: 1px solid transparent;
 }
 
 #wpadminbar .quicklinks ul {
        text-align: right;
 }
 
 }
 
 #wpadminbar .quicklinks ul {
        text-align: right;
 }
 
-#wpadminbar .quicklinks ul li {
+#wpadminbar li {
        float: right;
 }
 
        float: right;
 }
 
-#wpadminbar .quicklinks > ul > li > a {
-       border-left: 1px solid #686868;
-       border-right: 1px solid #808080;
+#wpadminbar .quicklinks > ul > li {
+       border-right: 0;
+       border-left: 1px solid #555;
+}
+
+#wpadminbar .quicklinks > ul > li > a,
+#wpadminbar .quicklinks > ul > li > .ab-empty-item {
+       border-right: 0;
+       border-left: 1px solid #333;
 }
 
 }
 
-#wpadminbar .quicklinks > ul > li:last-child > a {
-       border-left: none;
-       border-right: 1px solid #808080;
+#wpadminbar .quicklinks .ab-top-secondary > li {
+       border-left: 0;
+       border-right: 1px solid #333;
+       float: left;
 }
 
 }
 
-#wpadminbar .quicklinks > ul > li:hover > a {
-       border-right-color: #707070;
-       border-left-color: #686868;
+#wpadminbar .quicklinks .ab-top-secondary > li > a,
+#wpadminbar .quicklinks .ab-top-secondary > li > .ab-empty-item {
+       border-right: 1px solid #555;
+       border-left: 0;
 }
 
 }
 
-#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar a img  {
-       margin: -2px -5px 0 23px;
+#wpadminbar .menupop .ab-sub-wrapper,
+#wpadminbar .shortlink-input {
+       margin: 0 -1px 0 0;
 }
 
 }
 
-#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar ul {
+#wpadminbar.ie7 .menupop .ab-sub-wrapper,
+#wpadminbar.ie7 .shortlink-input {
        left: auto;
        left: auto;
-       right: 30px;
+       right: 0;
+}
+
+#wpadminbar .ab-top-secondary .menupop .ab-sub-wrapper {
+       right: auto;
+       left: 0;
+       margin: 0 0 0 -1px;
 }
 
 }
 
-#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar ul ul {
+#wpadminbar .menupop li:hover > .ab-sub-wrapper,
+#wpadminbar .menupop li.hover > .ab-sub-wrapper {
+       margin-left: 0px;
+       margin-right: 100%;
+}
+
+#wpadminbar .ab-top-secondary .menupop li:hover > .ab-sub-wrapper,
+#wpadminbar .ab-top-secondary .menupop li.hover > .ab-sub-wrapper {
+       margin-left: inherit;
+       margin-right: 0;
+       left: 100%;
+       right: inherit;
+}
+
+#wpadminbar .menupop .menupop > .ab-item {
+       background-position: 5% -46px;
+       padding-left: 2em;
+       padding-right: 1em;
+}
+
+#wpadminbar .ab-top-secondary .menupop .menupop > .ab-item {
+       background-position: 95% -20px;
+       padding-left: 1em;
+       padding-right: 2em;
+}
+
+#wpadminbar .quicklinks .menupop ul.ab-sub-secondary {
        right: 0;
        left: auto;
 }
 
        right: 0;
        left: auto;
 }
 
-#wpadminbar .quicklinks .menupop li:hover > ul,
-#wpadminbar .quicklinks .menupop li.hover > ul {
-       margin-right: 100%;
-       margin-left: 0;
+#wpadminbar .ab-top-secondary {
+       float: left;
+       right: auto;
+       left: 0;
+}
+
+#wpadminbar ul li:last-child,
+#wpadminbar ul li:last-child .ab-item {
+       border-left: 0;
+}
+
+/**
+ * My Account
+ */
+#wpadminbar #wp-admin-bar-my-account.with-avatar #wp-admin-bar-user-actions > li {
+       margin-right: 88px;
+       margin-left: 16px;
+}
+
+#wp-admin-bar-user-actions > li > .ab-item {
+       padding-left: 0;
+       padding-right: 8px;
+}
+
+#wp-admin-bar-user-info .avatar {
+       left: auto;
+       right: -72px;
 }
 
 }
 
-#wpadminbar .quicklinks .menupop a > span {
-       background: url(../images/admin-bar-sprite-rtl.png?d=11122010) left -58px no-repeat;
-       padding-right: 0;
-       padding-left: .8em;
+#wpadminbar .quicklinks li#wp-admin-bar-my-account.with-avatar > a img {
+       margin-left: -1px;
+       margin-right: 4px
 }
 
 }
 
-#wpadminbar .quicklinks .menupop ul li a > span {
-       background: url(../images/admin-bar-sprite-rtl.png?d=11122010) left -29px no-repeat;
-       padding-right: 0;
-       padding-left: 1.5em;
+/*
+ * My Sites
+ */
+#wpadminbar .quicklinks li img.blavatar {
+       margin-right: 0px;
+       margin-left: 4px;
 }
 
 }
 
-#wpadminbar .quicklinks a {
+/*
+ * Search
+ */
+#wpadminbar #adminbarsearch .adminbar-input {
        font-family: Tahoma, Arial, Helvetica, sans-serif;
        font-family: Tahoma, Arial, Helvetica, sans-serif;
+       padding: 0 24px 0 3px;
+       margin: 0;
+       background-position: 50% 2px;
 }
 
 }
 
-#wpadminbar .quicklinks .menupop li a img.blavatar {
-       margin-right: 0;
-       margin-left: 8px;
+#wpadminbar #adminbarsearch .adminbar-input:focus,
+#wpadminbar.ie7 #adminbarsearch .adminbar-input {
+       background-position: 99% 2px;
 }
 
 }
 
-#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar > a {
-       background: url(../images/admin-bar-sprite-rtl.png?d=11122010) top right no-repeat;
+/**
+ * Comments icon
+ */
+#wpadminbar .ab-icon {
+       float: right;
 }
 
 }
 
-#wpadminbar .quicklinks li#wp-admin-bar-my-account > a,
-#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar > a {
-       border-right: none;
-       border-left: 1px solid #686868;
+.ie7 #wp-admin-bar-wp-logo > .ab-item .ab-icon {
+       position: static;
 }
 
 }
 
-#wpadminbar #adminbarsearch {
+#wpadminbar.ie7 .ab-icon {
        float: left;
        float: left;
+       left: 12px;
 }
 
 }
 
-#wpadminbar #adminbarsearch .adminbar-input {
-       float: right;
-       font-family: Tahoma, Arial, Helvetica, sans-serif;
+#wpadminbar .ab-label {
+       margin-left: 0px;
+       margin-right: 4px;
+       float: left;
+}
+
+#wpadminbar.ie7 .ab-label {
        margin-right: 0;
        margin-right: 0;
-       margin-left: 3px;
-       -moz-box-shadow: inset 2px -2px 1px #cdcdcd;
-       -webkit-box-shadow: inset -2px 2px 1px #cdcdcd;
-       box-shadow: inset 2px -2px 1px #cdcdcd;
 }
 
 }
 
-#wpadminbar #adminbarsearch .adminbar-button {
+#wpadminbar.ie7 #wp-admin-bar-comments > a {
+       min-width: 25px;
+}
+
+#wpadminbar a:hover .ab-comments-icon-arrow {
+       border-right-color: #bbb;
+}
+
+#wpadminbar .menupop .ab-sub-wrapper,
+#wpadminbar .shortlink-input {
+       right: 0;
+}
+
+#wpadminbar .quicklinks .menupop ul li a {
+       position: relative;
+}
+
+/**
+ * IE 6-targeted rules
+ */
+* html #wpadminbar .quicklinks ul li a {
        float: right;
        float: right;
-       font-family: Tahoma, Arial, Helvetica, sans-serif;
 }
 }
index d98ef3a9891faff7c112040ec8bdbfe190610d89..5e35f59fe54d8c68d3f7ac681e68d67dfeb089a8 100644 (file)
@@ -1 +1 @@
-#wpadminbar *{height:auto;width:auto;margin:0;padding:0;position:static;text-transform:none;letter-spacing:normal;line-height:1;font:normal 13px/28px Arial,Helvetica,sans-serif;color:#ddd;text-shadow:#555 0 -1px 0;}#wpadminbar :before,#wpadminbar :after{content:normal;}#wpadminbar a,#wpadminbar a:hover,#wpadminbar a img,#wpadminbar a img:hover{outline:none;border:none;text-decoration:none;background:none;}#wpadminbar{direction:ltr;background-color:#777;background-image:-moz-linear-gradient(bottom,#666,#7f7f7f);background-image:-webkit-gradient(linear,left bottom,left top,from(#666),to(#7f7f7f));color:#ddd;font:normal 12px/28px Arial,Helvetica,sans-serif;height:28px;position:fixed;top:0;left:0;width:100%;z-index:99999;min-width:960px;}#wpadminbar ul,#wpadminbar ul li{background:none;list-style:none;margin:0;padding:0;position:relative;z-index:99999;}#wpadminbar .quicklinks ul{text-align:left;}#wpadminbar .quicklinks ul li{float:left;}#wpadminbar .quicklinks>ul>li>a{border-right:1px solid #686868;border-left:1px solid #808080;}#wpadminbar .quicklinks>ul>li:last-child>a{border-right:none;}#wpadminbar .quicklinks>ul>li:hover>a{border-left-color:#707070;}#wpadminbar .quicklinks a,#wpadminbar .shortlink-input{height:28px;display:block;padding:0 .85em;margin:0;}#wpadminbar .quicklinks a>span{line-height:28px;}#wpadminbar .quicklinks .menupop ul,#wpadminbar .shortlink-input{-moz-box-shadow:0 4px 8px rgba(0,0,0,0.1);-webkit-box-shadow:0 4px 8px rgba(0,0,0,0.1);box-shadow:0 4px 8px rgba(0,0,0,0.1);background:#fff;background:rgba(255,255,255,0.97);display:none;position:absolute;border:1px solid #dfdfdf;border-top:none;float:none;}#wpadminbar .selected .shortlink-input{display:block;}#wpadminbar .quicklinks .menupop ul li{float:none;}#wpadminbar .quicklinks .menupop ul li a strong{font-weight:bold;}#wpadminbar .quicklinks .menupop ul li a,#wpadminbar .quicklinks .menupop ul li a span,#wpadminbar .quicklinks .menupop ul li a strong,#wpadminbar .shortlink-input{color:#555;text-shadow:none;white-space:nowrap;min-width:140px;}#wpadminbar .shortlink-input{width:200px;}#wpadminbar .quicklinks .menupop ul li:hover>a,#wpadminbar .quicklinks .menupop ul li:hover>a span,#wpadminbar .quicklinks .menupop ul li:hover>a strong{color:#fff;text-shadow:#666 0 -1px 0;}#wpadminbar .quicklinks li:hover>ul,#wpadminbar .quicklinks li.hover>ul{display:block;}#wpadminbar .quicklinks .menupop li:hover>ul,#wpadminbar .quicklinks .menupop li.hover>ul{margin-left:100%;margin-top:-28px;}#wpadminbar .quicklinks li:hover,#wpadminbar .quicklinks .selected{background:#555;background:-moz-linear-gradient(bottom,#555,#3e3e3e);background:-webkit-gradient(linear,left bottom,left top,from(#555),to(#3e3e3e));}#wpadminbar .quicklinks .menupop li:hover{background:#888;background:-moz-linear-gradient(bottom,#888,#9d9d9d);background:-webkit-gradient(linear,left bottom,left top,from(#888),to(#9d9d9d));}#wpadminbar .quicklinks .menupop a>span{display:inline;background:url(../images/admin-bar-sprite.png?d=11122010) right -58px no-repeat;padding-right:.8em;}#wpadminbar .quicklinks .menupop ul li a>span{display:block;background:url(../images/admin-bar-sprite.png?d=11122010) right -29px no-repeat;padding-right:1.5em;}#wpadminbar .quicklinks a span#ab-awaiting-mod,#wpadminbar .quicklinks a span#ab-updates{background:#eee;color:#333;text-shadow:none;display:inline;padding:2px 5px;font-size:10px;font-weight:bold;-moz-border-radius:10px;-khtml-border-radius:10px;-webkit-border-radius:10px;border-radius:10px;}#wpadminbar .quicklinks a:hover span#ab-awaiting-mod,#wpadminbar .quicklinks a:hover span#ab-updates{background:#fff;color:#000;}#wpadminbar .quicklinks li#wp-admin-bar-my-account>a{border-left:none;}#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar>a{border-left:none;background:url(../images/admin-bar-sprite.png?d=11122010) top left no-repeat;}#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar>a img{width:16px;height:16px;display:inline;border:1px solid #999;vertical-align:middle;margin:-2px 23px 0 -5px;padding:0;background:#eee;float:none;}#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar ul{left:30px;}#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar ul ul{left:0;}#wpadminbar .quicklinks .menupop li a img.blavatar{vertical-align:middle;margin:0 8px 0 0;padding:0;}#wpadminbar #adminbarsearch{float:right;height:18px;padding:3px;margin:0;}#wpadminbar #adminbarsearch .adminbar-input{width:140px;height:auto;float:left;font:12px Arial,Helvetica,sans-serif;color:#555;text-shadow:0 1px 0 #fff;border:1px solid #626262;padding:2px 3px;margin:0 3px 0 0;background:#ddd;-moz-box-shadow:inset 2px 2px 1px #cdcdcd;-webkit-box-shadow:inset 2px 2px 1px #cdcdcd;box-shadow:inset 2px 2px 1px #cdcdcd;-webkit-border-radius:0;-khtml-border-radius:0;-moz-border-radius:0;border-radius:0;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;outline:none;}#wpadminbar #adminbarsearch .adminbar-button{font:bold 12px Arial,Helvetica,sans-serif;color:#444;text-shadow:0 1px 0 #eee;cursor:pointer;float:left;background:#aaa;background:-moz-linear-gradient(bottom,#aaa,#cecece);background:-webkit-gradient(linear,left bottom,left top,from(#aaa),to(#cecece));-webkit-border-radius:10px;-khtml-border-radius:10px;-moz-border-radius:10px;border-radius:10px;border:1px solid #626262;padding:2px 13px;margin:0;width:auto;height:auto;}#wpadminbar #adminbarsearch .adminbar-button:active{background:#a0a0a0;background:-moz-linear-gradient(bottom,#a0a0a0,#c1c1c1);background:-webkit-gradient(linear,left bottom,left top,from(#a0a0a0),to(#c1c1c1));-moz-box-shadow:inset 1px 1px 1px #9b9b9b;-webkit-box-shadow:inset 1px 1px 1px #9b9b9b;box-shadow:inset 1px 1px 1px #9b9b9b;}#wpadminbar #adminbarsearch .adminbar-button:hover{color:#000;}#wpadminbar #adminbarsearch .adminbar-button::-moz-focus-inner{border:none;}* html #wpadminbar{overflow:hidden;position:absolute;}* html #wpadminbar .quicklinks ul li a{float:left;}* html #wpadminbar .menupop a span{background-image:none;}
\ No newline at end of file
+#wpadminbar *{height:auto;width:auto;margin:0;padding:0;position:static;text-transform:none;letter-spacing:normal;line-height:1;font:normal 13px/28px sans-serif;color:#ccc;text-shadow:#444 0 -1px 0;}#wpadminbar ul li:before,#wpadminbar ul li:after{content:normal;}#wpadminbar a,#wpadminbar a:hover,#wpadminbar a img,#wpadminbar a img:hover{outline:none;border:none;text-decoration:none;background:none;}#wpadminbar{direction:ltr;color:#ccc;font:normal 13px/28px sans-serif;height:28px;position:fixed;top:0;left:0;width:100%;min-width:600px;z-index:99999;background-color:#464646;background-image:-ms-linear-gradient(bottom,#373737,#464646 5px);background-image:-moz-linear-gradient(bottom,#373737,#464646 5px);background-image:-o-linear-gradient(bottom,#373737,#464646 5px);background-image:-webkit-gradient(linear,left bottom,left top,from(#373737),to(#464646));background-image:-webkit-linear-gradient(bottom,#373737,#464646 5px);background-image:linear-gradient(bottom,#373737,#464646 5px);}#wpadminbar .ab-sub-wrapper,#wpadminbar ul,#wpadminbar ul li{background:none;clear:none;list-style:none;margin:0;padding:0;position:relative;z-index:99999;}#wpadminbar .quicklinks{border-left:1px solid transparent;}#wpadminbar .quicklinks ul{text-align:left;}#wpadminbar li{float:left;}#wpadminbar .ab-empty-item{outline:none;}#wpadminbar .quicklinks>ul>li{border-right:1px solid #555;}#wpadminbar .quicklinks>ul>li>a,#wpadminbar .quicklinks>ul>li>.ab-empty-item{border-right:1px solid #333;}#wpadminbar .quicklinks .ab-top-secondary>li{border-left:1px solid #333;border-right:0;float:right;}#wpadminbar .quicklinks .ab-top-secondary>li>a,#wpadminbar .quicklinks .ab-top-secondary>li>.ab-empty-item{border-left:1px solid #555;border-right:0;}#wpadminbar .quicklinks a,#wpadminbar .quicklinks .ab-empty-item,#wpadminbar .shortlink-input{height:28px;display:block;padding:0 12px;margin:0;}#wpadminbar .menupop .ab-sub-wrapper,#wpadminbar .shortlink-input{margin:0 0 0 -1px;padding:0;-moz-box-shadow:0 4px 4px rgba(0,0,0,0.2);-webkit-box-shadow:0 4px 4px rgba(0,0,0,0.2);box-shadow:0 4px 4px rgba(0,0,0,0.2);background:#fff;display:none;position:absolute;float:none;border-width:0 1px 1px 1px;border-style:solid;border-color:#dfdfdf;}#wpadminbar.ie7 .menupop .ab-sub-wrapper,#wpadminbar.ie7 .shortlink-input{top:28px;left:0;}#wpadminbar .ab-top-secondary .menupop .ab-sub-wrapper{right:0;left:auto;margin:0 -1px 0 0;}#wpadminbar .ab-sub-wrapper>.ab-submenu:first-child{border-top:none;}#wpadminbar .ab-submenu{padding:6px 0;border-top:1px solid #dfdfdf;}#wpadminbar .selected .shortlink-input{display:block;}#wpadminbar .quicklinks .menupop ul li{float:none;}#wpadminbar .quicklinks .menupop ul li a strong{font-weight:bold;}#wpadminbar .quicklinks .menupop ul li .ab-item,#wpadminbar .quicklinks .menupop ul li a strong,#wpadminbar .quicklinks .menupop.hover ul li .ab-item,#wpadminbar.nojs .quicklinks .menupop:hover ul li .ab-item,#wpadminbar .shortlink-input{line-height:26px;height:26px;text-shadow:none;white-space:nowrap;min-width:140px;}#wpadminbar .shortlink-input{width:200px;}#wpadminbar.nojs li:hover>.ab-sub-wrapper,#wpadminbar li.hover>.ab-sub-wrapper{display:block;}#wpadminbar .menupop li:hover>.ab-sub-wrapper,#wpadminbar .menupop li.hover>.ab-sub-wrapper{margin-left:100%;margin-top:-33px;border-width:1px;}#wpadminbar .ab-top-secondary .menupop li:hover>.ab-sub-wrapper,#wpadminbar .ab-top-secondary .menupop li.hover>.ab-sub-wrapper{margin-left:0;left:inherit;right:100%;}#wpadminbar .ab-top-menu>li:hover>.ab-item,#wpadminbar .ab-top-menu>li.hover>.ab-item,#wpadminbar .ab-top-menu>li>.ab-item:focus,#wpadminbar.nojq .quicklinks .ab-top-menu>li>.ab-item:focus{color:#fafafa;background-color:#3a3a3a;background-image:-ms-linear-gradient(bottom,#3a3a3a,#222);background-image:-moz-linear-gradient(bottom,#3a3a3a,#222);background-image:-o-linear-gradient(bottom,#3a3a3a,#222);background-image:-webkit-gradient(linear,left bottom,left top,from(#3a3a3a),to(#222));background-image:-webkit-linear-gradient(bottom,#3a3a3a,#222);background-image:linear-gradient(bottom,#3a3a3a,#222);}#wpadminbar.nojs .ab-top-menu>li.menupop:hover>.ab-item,#wpadminbar .ab-top-menu>li.menupop.hover>.ab-item{background:#fff;color:#333;text-shadow:none;}#wpadminbar .hover .ab-label,#wpadminbar.nojq .ab-item:focus .ab-label{color:#fafafa;}#wpadminbar .menupop.hover .ab-label{color:#333;text-shadow:none;}#wpadminbar .menupop li:hover,#wpadminbar .menupop li.hover,#wpadminbar .quicklinks .menupop .ab-item:focus,#wpadminbar .quicklinks .ab-top-menu .menupop .ab-item:focus{background-color:#eaf2fa;}#wpadminbar .ab-submenu .ab-item{color:#333;text-shadow:none;}#wpadminbar .quicklinks .menupop ul li a,#wpadminbar .quicklinks .menupop ul li a strong,#wpadminbar .quicklinks .menupop.hover ul li a,#wpadminbar.nojs .quicklinks .menupop:hover ul li a{color:#21759B;}#wpadminbar .menupop .menupop>.ab-item{display:block;background-image:url(../images/admin-bar-sprite.png?d=20111130);background-position:95% -20px;background-repeat:no-repeat;padding-right:2em;}#wpadminbar .ab-top-secondary .menupop .menupop>.ab-item{background-image:url(../images/admin-bar-sprite.png?d=20111130);background-position:5% -46px;background-repeat:no-repeat;padding-left:2em;padding-right:1em;}#wpadminbar .quicklinks .menupop ul.ab-sub-secondary{display:block;position:relative;right:auto;margin:0;background:#eee;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;}#wpadminbar .quicklinks .menupop .ab-sub-secondary>li:hover,#wpadminbar .quicklinks .menupop .ab-sub-secondary>li.hover,#wpadminbar .quicklinks .menupop .ab-sub-secondary>li .ab-item:focus{background-color:#dfdfdf;}#wpadminbar .quicklinks a span#ab-updates{background:#eee;color:#333;text-shadow:none;display:inline;padding:2px 5px;font-size:10px;font-weight:bold;-webkit-border-radius:10px;border-radius:10px;}#wpadminbar .quicklinks a:hover span#ab-updates{background:#fff;color:#000;}#wpadminbar .ab-top-secondary{float:right;background-color:#464646;background-image:-ms-linear-gradient(bottom,#373737,#464646 5px);background-image:-moz-linear-gradient(bottom,#373737,#464646 5px);background-image:-o-linear-gradient(bottom,#373737,#464646 5px);background-image:-webkit-gradient(linear,left bottom,left top,from(#373737),to(#464646));background-image:-webkit-linear-gradient(bottom,#373737,#464646 5px);background-image:linear-gradient(bottom,#373737,#464646 5px);}#wpadminbar ul li:last-child,#wpadminbar ul li:last-child .ab-item{border-right:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;}#wp-admin-bar-my-account>ul{min-width:198px;}#wp-admin-bar-my-account.with-avatar>ul{min-width:270px;}#wpadminbar #wp-admin-bar-user-actions>li{margin-left:16px;margin-right:16px;}#wpadminbar #wp-admin-bar-my-account.with-avatar #wp-admin-bar-user-actions>li{margin-left:88px;}#wp-admin-bar-user-actions>li>.ab-item{padding-left:8px;}#wpadminbar #wp-admin-bar-user-info{margin-top:6px;margin-bottom:15px;height:auto;background:none;}#wp-admin-bar-user-info .avatar{position:absolute;left:-72px;top:4px;}#wpadminbar #wp-admin-bar-user-info a{background:none;height:auto;}#wpadminbar #wp-admin-bar-user-info span{background:none;padding:0;height:18px;}#wpadminbar #wp-admin-bar-user-info .display-name,#wpadminbar #wp-admin-bar-user-info .username{text-shadow:none;display:block;}#wpadminbar #wp-admin-bar-user-info .display-name{color:#333;}#wpadminbar #wp-admin-bar-user-info .username{color:#999;font-size:11px;}#wpadminbar .quicklinks li#wp-admin-bar-my-account.with-avatar>a img{width:16px;height:16px;border:1px solid #999;padding:0;background:#eee;line-height:24px;vertical-align:middle;margin:-3px 0 0 6px;float:none;display:inline;}#wpadminbar .quicklinks li img.blavatar{vertical-align:middle;margin:-3px 4px 0 0;padding:0;}#wpadminbar #wp-admin-bar-search .ab-item{padding:0;}#wpadminbar #wp-admin-bar-search .ab-item{background:transparent;}#wpadminbar #adminbarsearch{height:28px;padding:0 2px;}#wpadminbar #adminbarsearch .adminbar-input{font:13px/24px sans-serif;height:24px;width:24px;border:none;padding:0 3px 0 23px;margin:0;color:#ccc;text-shadow:#444 0 -1px 0;background-color:rgba(255,255,255,0);background-image:url(../images/admin-bar-sprite.png?d=20111130);background-position:3px 2px;background-repeat:no-repeat;outline:none;-webkit-border-radius:3px;border-radius:3px;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;-webkit-transition-duration:400ms;-webkit-transition-property:width,background;-webkit-transition-timing-function:ease;-moz-transition-duration:400ms;-moz-transition-property:width,background;-moz-transition-timing-function:ease;-o-transition-duration:400ms;-o-transition-property:width,background;-o-transition-timing-function:ease;}#wpadminbar.ie7 #adminbarsearch .adminbar-input{margin-top:1px;width:120px;}#wpadminbar #adminbarsearch .adminbar-input:focus{color:#555;text-shadow:0 1px 0 #fff;width:200px;background-color:rgba(255,255,255,0.9);}#wpadminbar.ie8 #adminbarsearch .adminbar-input{background-color:#464646;}#wpadminbar.ie8 #adminbarsearch .adminbar-input:focus{background-color:#fff;}#wpadminbar #adminbarsearch .adminbar-input::-webkit-input-placeholder{color:#ddd;}#wpadminbar #adminbarsearch .adminbar-input:-moz-placeholder{color:#ddd;}#wpadminbar #adminbarsearch .adminbar-button{display:none;}#wpadminbar #wp-admin-bar-appearance{border-top:none;margin-top:-12px;}#wpadminbar #wp-admin-bar-appearance{border-top:none;margin-top:-12px;}#wpadminbar .ab-icon{position:relative;float:left;width:16px;height:16px;margin-top:6px;}#wpadminbar .ab-label{margin-left:4px;}#wp-admin-bar-wp-logo>.ab-item .ab-icon{width:20px;height:20px;margin-top:4px;background-image:url(../images/admin-bar-sprite.png?d=20111130);background-position:0 -76px;background-repeat:no-repeat;}#wpadminbar.nojs #wp-admin-bar-wp-logo:hover>.ab-item .ab-icon,#wpadminbar #wp-admin-bar-wp-logo.hover>.ab-item .ab-icon{background-position:0 -104px;}#wp-admin-bar-updates>.ab-item .ab-icon{background-image:url(../images/admin-bar-sprite.png?d=20111130);background-position:-2px -159px;background-repeat:no-repeat;}#wp-admin-bar-comments>.ab-item .ab-icon{background-image:url(../images/admin-bar-sprite.png?d=20111130);background-position:-1px -134px;background-repeat:no-repeat;}#wpadminbar span.count-0{display:none;}#wpadminbar #wp-admin-bar-new-content>.ab-item .ab-icon{background-image:url(../images/admin-bar-sprite.png?d=20111130);background-position:-2px -182px;background-repeat:no-repeat;}#wpadminbar.nojs #wp-admin-bar-new-content:hover>.ab-item .ab-icon,#wpadminbar #wp-admin-bar-new-content.hover>.ab-item .ab-icon{background-position:-2px -203px;}* html #wpadminbar{overflow:hidden;position:absolute;}* html #wpadminbar .quicklinks ul li a{float:left;}* html #wpadminbar .menupop a span{background-image:none;}
\ No newline at end of file
index e94d80e26b0b4d420c2c357175f526d915f0aed8..b257056e02e4816d1ee4d0aa352c922e1afb8c3b 100644 (file)
@@ -7,19 +7,19 @@
        text-transform: none;
        letter-spacing: normal;
        line-height: 1;
        text-transform: none;
        letter-spacing: normal;
        line-height: 1;
-       font: normal 13px/28px Arial, Helvetica, sans-serif;
-       color: #ddd;
-       text-shadow: #555 0px -1px 0px;
+       font: normal 13px/28px sans-serif;
+       color: #ccc;
+       text-shadow: #444 0px -1px 0px;
 }
 
 }
 
-#wpadminbar :before,
-#wpadminbar :after {
+#wpadminbar ul li:before,
+#wpadminbar ul li:after {
        content: normal;
 }
 
 #wpadminbar a,
 #wpadminbar a:hover,
        content: normal;
 }
 
 #wpadminbar a,
 #wpadminbar a:hover,
-#wpadminbar a img, 
+#wpadminbar a img,
 #wpadminbar a img:hover {
        outline: none;
        border: none;
 #wpadminbar a img:hover {
        outline: none;
        border: none;
 
 #wpadminbar {
        direction: ltr;
 
 #wpadminbar {
        direction: ltr;
-       background-color: #777;
-       background-image: -moz-linear-gradient(bottom,  #666,  #7f7f7f);
-       background-image: -webkit-gradient(linear, left bottom, left top, from(#666), to(#7f7f7f));
-       color: #ddd;
-       font: normal 12px/28px Arial, Helvetica, sans-serif;
+       color: #ccc;
+       font: normal 13px/28px sans-serif;
        height: 28px;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 28px;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
+       min-width: 600px; /* match the min-width of the body in wp-admin.css */
        z-index: 99999;
        z-index: 99999;
-       min-width: 960px;
+
+       background-color: #464646; /* Fallback */
+       background-image: -ms-linear-gradient(bottom, #373737, #464646 5px); /* IE10 */
+       background-image: -moz-linear-gradient(bottom, #373737, #464646 5px); /* Firefox */
+       background-image: -o-linear-gradient(bottom, #373737, #464646 5px); /* Opera */
+       background-image: -webkit-gradient(linear, left bottom, left top, from(#373737), to(#464646)); /* old Webkit */
+       background-image: -webkit-linear-gradient(bottom, #373737, #464646 5px); /* new Webkit */
+       background-image: linear-gradient(bottom, #373737, #464646 5px); /* proposed W3C Markup */
 }
 
 }
 
+
+#wpadminbar .ab-sub-wrapper,
 #wpadminbar ul,
 #wpadminbar ul li {
        background: none;
 #wpadminbar ul,
 #wpadminbar ul li {
        background: none;
+       clear: none;
        list-style: none;
        margin: 0;
        padding: 0;
        list-style: none;
        margin: 0;
        padding: 0;
        z-index: 99999;
 }
 
        z-index: 99999;
 }
 
+#wpadminbar .quicklinks {
+       border-left: 1px solid transparent;
+}
+
 #wpadminbar .quicklinks ul {
        text-align: left;
 }
 
 #wpadminbar .quicklinks ul {
        text-align: left;
 }
 
-#wpadminbar .quicklinks ul li {
+#wpadminbar li {
        float: left;
 }
 
        float: left;
 }
 
-#wpadminbar .quicklinks > ul > li > a {
-       border-right: 1px solid #686868;
-       border-left: 1px solid #808080;
+#wpadminbar .ab-empty-item {
+       outline: none;
+}
+
+#wpadminbar .quicklinks > ul > li {
+       border-right: 1px solid #555;
 }
 
 }
 
-#wpadminbar .quicklinks > ul > li:last-child > a {
-       border-right: none;
+#wpadminbar .quicklinks > ul > li > a,
+#wpadminbar .quicklinks > ul > li > .ab-empty-item {
+       border-right: 1px solid #333;
+}
+
+#wpadminbar .quicklinks .ab-top-secondary > li {
+       border-left: 1px solid #333;
+       border-right: 0;
+       float: right;
 }
 
 }
 
-#wpadminbar .quicklinks > ul > li:hover > a {
-       border-left-color: #707070;
+#wpadminbar .quicklinks .ab-top-secondary > li > a,
+#wpadminbar .quicklinks .ab-top-secondary > li > .ab-empty-item {
+       border-left: 1px solid #555;
+       border-right: 0;
 }
 
 #wpadminbar .quicklinks a,
 }
 
 #wpadminbar .quicklinks a,
+#wpadminbar .quicklinks .ab-empty-item,
 #wpadminbar .shortlink-input {
        height: 28px;
        display: block;
 #wpadminbar .shortlink-input {
        height: 28px;
        display: block;
-       padding: 0 0.85em;
+       padding: 0 12px;
        margin: 0;
 }
 
        margin: 0;
 }
 
-#wpadminbar .quicklinks a > span {
-       line-height: 28px;
-}
-
-#wpadminbar .quicklinks .menupop ul,
+#wpadminbar .menupop .ab-sub-wrapper,
 #wpadminbar .shortlink-input {
 #wpadminbar .shortlink-input {
-       -moz-box-shadow: 0 4px 8px rgba(0,0,0,0.1);
-       -webkit-box-shadow: 0 4px 8px rgba(0,0,0,0.1);
-       box-shadow: 0 4px 8px rgba(0,0,0,0.1);
+       margin: 0 0 0 -1px;
+       padding: 0;
+       -moz-box-shadow: 0 4px 4px rgba(0,0,0,0.2);
+       -webkit-box-shadow: 0 4px 4px rgba(0,0,0,0.2);
+       box-shadow: 0 4px 4px rgba(0,0,0,0.2);
        background: #fff;
        background: #fff;
-       background: rgba(255,255,255,0.97);
        display: none;
        position: absolute;
        display: none;
        position: absolute;
-       border: 1px solid #dfdfdf;
-       border-top: none;
        float: none;
        float: none;
+       border-width: 0 1px 1px 1px;
+       border-style: solid;
+       border-color: #dfdfdf;
+}
+
+#wpadminbar.ie7 .menupop .ab-sub-wrapper,
+#wpadminbar.ie7 .shortlink-input {
+       top: 28px;
+       left: 0;
+}
+
+#wpadminbar .ab-top-secondary .menupop .ab-sub-wrapper {
+       right: 0;
+       left: auto;
+       margin: 0 -1px 0 0;
+}
+
+#wpadminbar .ab-sub-wrapper > .ab-submenu:first-child {
+       border-top: none;
+}
+
+#wpadminbar .ab-submenu {
+       padding: 6px 0;
+       border-top: 1px solid #dfdfdf;
 }
 
 #wpadminbar .selected .shortlink-input {
 }
 
 #wpadminbar .selected .shortlink-input {
        font-weight: bold;
 }
 
        font-weight: bold;
 }
 
-#wpadminbar .quicklinks .menupop ul li a,
-#wpadminbar .quicklinks .menupop ul li a span,
+#wpadminbar .quicklinks .menupop ul li .ab-item,
 #wpadminbar .quicklinks .menupop ul li a strong,
 #wpadminbar .quicklinks .menupop ul li a strong,
+#wpadminbar .quicklinks .menupop.hover ul li .ab-item,
+#wpadminbar.nojs .quicklinks .menupop:hover ul li .ab-item,
 #wpadminbar .shortlink-input {
 #wpadminbar .shortlink-input {
-       color: #555;
+       line-height: 26px;
+       height: 26px;
        text-shadow: none;
        white-space: nowrap;
        min-width: 140px;
        text-shadow: none;
        white-space: nowrap;
        min-width: 140px;
        width: 200px;
 }
 
        width: 200px;
 }
 
-#wpadminbar .quicklinks .menupop ul li:hover > a,
-#wpadminbar .quicklinks .menupop ul li:hover > a span,
-#wpadminbar .quicklinks .menupop ul li:hover > a strong {
-       color: #fff;
-       text-shadow: #666 0px -1px 0px;
-}
-
-#wpadminbar .quicklinks li:hover > ul,
-#wpadminbar .quicklinks li.hover > ul {
+#wpadminbar.nojs li:hover > .ab-sub-wrapper,
+#wpadminbar li.hover > .ab-sub-wrapper {
        display: block;
 }
 
        display: block;
 }
 
-#wpadminbar .quicklinks .menupop li:hover > ul,
-#wpadminbar .quicklinks .menupop li.hover > ul {
+#wpadminbar .menupop li:hover > .ab-sub-wrapper,
+#wpadminbar .menupop li.hover > .ab-sub-wrapper {
        margin-left: 100%;
        margin-left: 100%;
-       margin-top: -28px;
+       margin-top: -33px;
+       border-width: 1px;
 }
 
 }
 
-#wpadminbar .quicklinks li:hover,
-#wpadminbar .quicklinks .selected {
-       background: #555;
-       background: -moz-linear-gradient(bottom,  #555,  #3e3e3e);
-       background: -webkit-gradient(linear, left bottom, left top, from(#555), to(#3e3e3e));
+#wpadminbar .ab-top-secondary .menupop li:hover > .ab-sub-wrapper,
+#wpadminbar .ab-top-secondary .menupop li.hover > .ab-sub-wrapper {
+       margin-left: 0;
+       left: inherit;
+       right: 100%;
 }
 
 }
 
-#wpadminbar .quicklinks .menupop li:hover {
-       background: #888;
-       background: -moz-linear-gradient(bottom,  #888,  #9d9d9d);
-       background: -webkit-gradient(linear, left bottom, left top, from(#888), to(#9d9d9d));
+#wpadminbar .ab-top-menu > li:hover > .ab-item,
+#wpadminbar .ab-top-menu > li.hover > .ab-item,
+#wpadminbar .ab-top-menu > li > .ab-item:focus,
+#wpadminbar.nojq .quicklinks .ab-top-menu > li > .ab-item:focus {
+       color: #fafafa;
+       background-color: #3a3a3a; /* Fallback */
+       background-image: -ms-linear-gradient(bottom, #3a3a3a, #222); /* IE10 */
+       background-image: -moz-linear-gradient(bottom, #3a3a3a, #222); /* Firefox */
+       background-image: -o-linear-gradient(bottom, #3a3a3a, #222); /* Opera */
+       background-image: -webkit-gradient(linear, left bottom, left top, from(#3a3a3a), to(#222)); /* old Webkit */
+       background-image: -webkit-linear-gradient(bottom, #3a3a3a, #222); /* new Webkit */
+       background-image: linear-gradient(bottom, #3a3a3a, #222); /* proposed W3C Markup */
 }
 
 }
 
-#wpadminbar .quicklinks .menupop a > span {
-       display: inline;
-       background: url(../images/admin-bar-sprite.png?d=11122010) right -58px no-repeat;
-       padding-right: .8em;
+#wpadminbar.nojs .ab-top-menu > li.menupop:hover > .ab-item,
+#wpadminbar .ab-top-menu > li.menupop.hover > .ab-item {
+       background: #fff;
+       color: #333;
+       text-shadow: none;
+}
+
+#wpadminbar .hover .ab-label,
+#wpadminbar.nojq .ab-item:focus .ab-label {
+       color: #fafafa;
 }
 
 }
 
-#wpadminbar .quicklinks .menupop ul li a > span {
+#wpadminbar .menupop.hover .ab-label {
+       color: #333;
+       text-shadow: none;
+}
+
+#wpadminbar .menupop li:hover,
+#wpadminbar .menupop li.hover,
+#wpadminbar .quicklinks .menupop .ab-item:focus,
+#wpadminbar .quicklinks .ab-top-menu .menupop .ab-item:focus {
+       background-color: #eaf2fa;
+}
+
+#wpadminbar .ab-submenu .ab-item {
+       color: #333;
+       text-shadow: none;
+}
+
+#wpadminbar .quicklinks .menupop ul li a,
+#wpadminbar .quicklinks .menupop ul li a strong,
+#wpadminbar .quicklinks .menupop.hover ul li a,
+#wpadminbar.nojs .quicklinks .menupop:hover ul li a {
+       color: #21759B;
+}
+
+#wpadminbar .menupop .menupop > .ab-item {
+       display: block;
+       background-image: url(../images/admin-bar-sprite.png?d=20111130);
+       background-position: 95% -20px;
+       background-repeat: no-repeat;
+       padding-right: 2em;
+}
+
+#wpadminbar .ab-top-secondary .menupop .menupop > .ab-item {
+       background-image: url(../images/admin-bar-sprite.png?d=20111130);
+       background-position: 5% -46px;
+       background-repeat: no-repeat;
+       padding-left: 2em;
+       padding-right: 1em;
+}
+
+#wpadminbar .quicklinks .menupop ul.ab-sub-secondary {
        display: block;
        display: block;
-       background: url(../images/admin-bar-sprite.png?d=11122010) right -29px no-repeat;
-       padding-right: 1.5em;
+       position: relative;
+       right: auto;
+       margin: 0;
+
+       background: #eee;
+
+       -moz-box-shadow: none;
+       -webkit-box-shadow: none;
+       box-shadow: none;
+}
+
+#wpadminbar .quicklinks .menupop .ab-sub-secondary > li:hover,
+#wpadminbar .quicklinks .menupop .ab-sub-secondary > li.hover,
+#wpadminbar .quicklinks .menupop .ab-sub-secondary > li .ab-item:focus {
+       background-color: #dfdfdf;
 }
 
 }
 
-#wpadminbar .quicklinks a span#ab-awaiting-mod,
 #wpadminbar .quicklinks a span#ab-updates {
        background: #eee;
        color: #333;
 #wpadminbar .quicklinks a span#ab-updates {
        background: #eee;
        color: #333;
        padding: 2px 5px;
        font-size: 10px;
        font-weight: bold;
        padding: 2px 5px;
        font-size: 10px;
        font-weight: bold;
-       -moz-border-radius: 10px;
-       -khtml-border-radius: 10px;
        -webkit-border-radius: 10px;
        border-radius: 10px;
 }
 
        -webkit-border-radius: 10px;
        border-radius: 10px;
 }
 
-#wpadminbar .quicklinks a:hover span#ab-awaiting-mod,
 #wpadminbar .quicklinks a:hover span#ab-updates  {
        background: #fff;
        color: #000;
 }
 
 #wpadminbar .quicklinks a:hover span#ab-updates  {
        background: #fff;
        color: #000;
 }
 
-#wpadminbar .quicklinks li#wp-admin-bar-my-account > a {
-       border-left: none;
+#wpadminbar .ab-top-secondary {
+       float: right;
+       background-color: #464646; /* Fallback */
+       background-image: -ms-linear-gradient(bottom, #373737, #464646 5px); /* IE10 */
+       background-image: -moz-linear-gradient(bottom, #373737, #464646 5px); /* Firefox */
+       background-image: -o-linear-gradient(bottom, #373737, #464646 5px); /* Opera */
+       background-image: -webkit-gradient(linear, left bottom, left top, from(#373737), to(#464646)); /* old Webkit */
+       background-image: -webkit-linear-gradient(bottom, #373737, #464646 5px); /* new Webkit */
+       background-image: linear-gradient(bottom, #373737, #464646 5px); /* proposed W3C Markup */
+}
+
+#wpadminbar ul li:last-child,
+#wpadminbar ul li:last-child .ab-item {
+       border-right: 0;
+       -webkit-box-shadow: none;
+       -moz-box-shadow: none;
+       box-shadow: none;
+}
+
+/**
+ * My Account
+ */
+#wp-admin-bar-my-account > ul {
+       min-width: 198px;
+}
+
+#wp-admin-bar-my-account.with-avatar > ul {
+       min-width: 270px;
 }
 
 }
 
-#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar > a {
-       border-left: none;
-       background: url(../images/admin-bar-sprite.png?d=11122010) top left no-repeat;
+#wpadminbar #wp-admin-bar-user-actions > li {
+       margin-left: 16px;
+       margin-right: 16px;
 }
 
 }
 
-#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar > a img {
+#wpadminbar #wp-admin-bar-my-account.with-avatar #wp-admin-bar-user-actions > li {
+       margin-left: 88px;
+}
+
+#wp-admin-bar-user-actions > li > .ab-item {
+       padding-left: 8px;
+}
+
+#wpadminbar #wp-admin-bar-user-info {
+       margin-top: 6px;
+       margin-bottom: 15px;
+       height: auto;
+       background: none;
+}
+
+#wp-admin-bar-user-info .avatar {
+       position: absolute;
+       left: -72px;
+       top: 4px;
+}
+
+#wpadminbar #wp-admin-bar-user-info a {
+       background: none;
+       height: auto;
+}
+
+#wpadminbar #wp-admin-bar-user-info span {
+       background: none;
+       padding: 0;
+       height: 18px;
+}
+
+#wpadminbar #wp-admin-bar-user-info .display-name,
+#wpadminbar #wp-admin-bar-user-info .username {
+       text-shadow: none;
+       display: block;
+}
+#wpadminbar #wp-admin-bar-user-info .display-name {
+       color: #333;
+}
+
+#wpadminbar #wp-admin-bar-user-info .username {
+       color: #999;
+       font-size: 11px;
+}
+
+#wpadminbar .quicklinks li#wp-admin-bar-my-account.with-avatar > a img {
        width: 16px;
        height: 16px;
        width: 16px;
        height: 16px;
-       display: inline;
        border: 1px solid #999;
        border: 1px solid #999;
-       vertical-align: middle;
-       margin: -2px 23px 0 -5px;
        padding: 0;
        background: #eee;
        padding: 0;
        background: #eee;
+       line-height: 24px;
+       vertical-align: middle;
+       margin: -3px 0 0 6px;
        float: none;
        float: none;
+       display: inline;
 }
 
 }
 
-#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar ul {
-       left: 30px;
+/*
+ * My Sites
+ */
+#wpadminbar .quicklinks li img.blavatar {
+       vertical-align: middle;
+       margin: -3px 4px 0 0;
+       padding: 0;
 }
 
 }
 
-#wpadminbar .quicklinks li#wp-admin-bar-my-account-with-avatar ul ul { 
-       left: 0; 
+/**
+ * Search
+ */
+#wpadminbar #wp-admin-bar-search .ab-item {
+       padding: 0;
 }
 
 }
 
-#wpadminbar .quicklinks .menupop li a img.blavatar {
-       vertical-align: middle;
-       margin: 0 8px 0 0;
-       padding: 0;
+#wpadminbar #wp-admin-bar-search .ab-item {
+       /* default background */
+       background: transparent;
 }
 
 #wpadminbar #adminbarsearch {
 }
 
 #wpadminbar #adminbarsearch {
-       float: right;
-       height: 18px;
-       padding: 3px;
-       margin: 0;
+       height: 28px;
+       padding: 0 2px;
 }
 
 #wpadminbar #adminbarsearch .adminbar-input {
 }
 
 #wpadminbar #adminbarsearch .adminbar-input {
-       width: 140px;
-       height: auto;
-       float: left;
-       font: 12px Arial, Helvetica, sans-serif;
-       color: #555;
-       text-shadow: 0 1px 0 #fff;
-       border: 1px solid #626262;
-       padding: 2px 3px;
-       margin: 0 3px 0 0;
-       background: #ddd;
-       -moz-box-shadow: inset 2px 2px 1px #cdcdcd;
-       -webkit-box-shadow: inset 2px 2px 1px #cdcdcd;
-       box-shadow: inset 2px 2px 1px #cdcdcd;
-       -webkit-border-radius: 0;
-       -khtml-border-radius: 0;
-       -moz-border-radius: 0;
-       border-radius: 0;
+       font: 13px/24px sans-serif;
+       height: 24px;
+       width: 24px;
+       border: none;
+       padding: 0 3px 0 23px;
+       margin: 0;
+       color: #ccc;
+       text-shadow: #444 0px -1px 0px;
+       background-color: rgba( 255, 255, 255, 0 );
+       background-image: url(../images/admin-bar-sprite.png?d=20111130);
+       background-position: 3px 2px;
+       background-repeat: no-repeat;
+       outline: none;
+
+       -webkit-border-radius: 3px;
+       border-radius: 3px;
+
+       -moz-box-shadow: none;
+       -webkit-box-shadow: none;
+       box-shadow: none;
+
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        -ms-box-sizing: border-box;
        box-sizing: border-box;
-       outline: none;
+
+       -webkit-transition-duration: 400ms;
+       -webkit-transition-property: width, background;
+       -webkit-transition-timing-function: ease;
+       -moz-transition-duration: 400ms;
+       -moz-transition-property: width, background;
+       -moz-transition-timing-function: ease;
+       -o-transition-duration: 400ms;
+       -o-transition-property: width, background;
+       -o-transition-timing-function: ease;
+}
+
+#wpadminbar.ie7 #adminbarsearch .adminbar-input {
+       margin-top: 1px;
+       width: 120px;
+}
+
+#wpadminbar #adminbarsearch .adminbar-input:focus {
+       color: #555;
+       text-shadow: 0 1px 0 #fff;
+       width: 200px;
+       background-color: rgba( 255, 255, 255, 0.9 );
+}
+
+#wpadminbar.ie8 #adminbarsearch .adminbar-input {
+       background-color: #464646;
+}
+
+#wpadminbar.ie8 #adminbarsearch .adminbar-input:focus {
+       background-color: #fff;
+}
+
+/* Two rules to ensure browser recognition */
+#wpadminbar #adminbarsearch .adminbar-input::-webkit-input-placeholder {
+       color: #ddd;
+}
+
+#wpadminbar #adminbarsearch .adminbar-input:-moz-placeholder {
+       color: #ddd;
 }
 
 #wpadminbar #adminbarsearch .adminbar-button {
 }
 
 #wpadminbar #adminbarsearch .adminbar-button {
-       font: bold 12px Arial, Helvetica, sans-serif;
-       color: #444;
-       text-shadow: 0px 1px 0px #eee;
-       cursor: pointer;
+       display: none;
+}
+
+/**
+ * Site Menu
+ */
+#wpadminbar #wp-admin-bar-appearance {
+       border-top: none;
+       margin-top: -12px;
+}
+
+/**
+ * Site Menu
+ */
+#wpadminbar #wp-admin-bar-appearance {
+       border-top: none;
+       margin-top: -12px;
+}
+
+/**
+ * ICONS
+ */
+#wpadminbar .ab-icon {
+       position: relative;
        float: left;
        float: left;
-       background: #aaa;
-       background: -moz-linear-gradient(bottom,  #aaa,  #cecece);
-       background: -webkit-gradient(linear, left bottom, left top, from(#aaa), to(#cecece));
-       -webkit-border-radius: 10px;
-       -khtml-border-radius: 10px;
-       -moz-border-radius: 10px;
-       border-radius: 10px;
-       border: 1px solid #626262;
-       padding: 2px 13px;
-       margin: 0;
-       width: auto;
-       height: auto;
+       width: 16px;
+       height: 16px;
+       margin-top: 6px;
 }
 
 }
 
-#wpadminbar #adminbarsearch .adminbar-button:active {
-       background: #a0a0a0;
-       background:-moz-linear-gradient(bottom,  #a0a0a0,  #c1c1c1);
-       background:-webkit-gradient(linear, left bottom, left top, from(#a0a0a0), to(#c1c1c1));
-       -moz-box-shadow: inset 1px 1px 1px #9b9b9b;
-       -webkit-box-shadow: inset 1px 1px 1px #9b9b9b;
-       box-shadow: inset 1px 1px 1px #9b9b9b;
+#wpadminbar .ab-label {
+       margin-left: 4px;
 }
 
 }
 
-#wpadminbar #adminbarsearch .adminbar-button:hover {
-       color: #000;
+/**
+ * WP Logo icon
+ */
+#wp-admin-bar-wp-logo > .ab-item .ab-icon {
+       width: 20px;
+       height: 20px;
+       margin-top: 4px;
+       background-image: url(../images/admin-bar-sprite.png?d=20111130);
+       background-position: 0 -76px;
+       background-repeat: no-repeat;
 }
 
 }
 
-#wpadminbar #adminbarsearch .adminbar-button::-moz-focus-inner {
-       border: none;
+#wpadminbar.nojs #wp-admin-bar-wp-logo:hover > .ab-item .ab-icon,
+#wpadminbar #wp-admin-bar-wp-logo.hover > .ab-item .ab-icon {
+       background-position: 0 -104px;
+}
+
+/**
+ * Updates icon
+ */
+#wp-admin-bar-updates > .ab-item .ab-icon {
+       background-image: url(../images/admin-bar-sprite.png?d=20111130);
+       background-position: -2px -159px;
+       background-repeat: no-repeat;
 }
 
 }
 
+/**
+ * Comments icon
+ */
+#wp-admin-bar-comments > .ab-item .ab-icon {
+       background-image: url(../images/admin-bar-sprite.png?d=20111130);
+       background-position: -1px -134px;
+       background-repeat: no-repeat;
+}
+
+#wpadminbar span.count-0 {
+       display: none;
+}
+
+/**
+ * Add New icon
+ */
+#wpadminbar #wp-admin-bar-new-content > .ab-item .ab-icon {
+       background-image: url(../images/admin-bar-sprite.png?d=20111130);
+       background-position: -2px -182px;
+       background-repeat: no-repeat;
+}
+
+/**
+ * Add New icon
+ */
+#wpadminbar.nojs #wp-admin-bar-new-content:hover > .ab-item .ab-icon,
+#wpadminbar #wp-admin-bar-new-content.hover > .ab-item .ab-icon {
+       background-position: -2px -203px;
+}
 
 /**
  * IE 6-targeted rules
 
 /**
  * IE 6-targeted rules
diff --git a/wp-includes/css/editor-buttons.css b/wp-includes/css/editor-buttons.css
new file mode 100644 (file)
index 0000000..7d5444d
--- /dev/null
@@ -0,0 +1 @@
+.wp_themeSkin table,.wp_themeSkin tbody,.wp_themeSkin a,.wp_themeSkin img,.wp_themeSkin tr,.wp_themeSkin div,.wp_themeSkin td,.wp_themeSkin iframe,.wp_themeSkin span,.wp_themeSkin *,.wp_themeSkin .mceText{border:0;margin:0;padding:0;white-space:nowrap;text-decoration:none;font-weight:normal;cursor:default;vertical-align:baseline;width:auto;border-collapse:separate;}.wp_themeSkin a:hover,.wp_themeSkin a:link,.wp_themeSkin a:visited,.wp_themeSkin a:active{text-decoration:none;font-weight:normal;cursor:default;}.wp_themeSkin table td{vertical-align:middle;}.wp_themeSkin *,.wp_themeSkin a:hover,.wp_themeSkin a:link,.wp_themeSkin a:visited,.wp_themeSkin a:active{color:#000;}.wp_themeSkin iframe{display:block;}.wp_themeSkin #mce_fullscreen_ifr{background-color:#fff;}.wp_themeSkin .mceToolbar{padding:1px;}.wp_themeSkin .mceExternalToolbar{position:absolute;border-bottom:0;display:none;}.wp_themeSkin .mceExternalToolbar td.mceToolbar{padding-right:13px;}.wp_themeSkin .mceExternalClose{position:absolute;top:3px;right:3px;width:7px;height:7px;background:url("../js/tinymce/themes/advanced/img/icons.gif") -820px 0;}.wp_themeSkin table.mceToolbar,.wp_themeSkin tr.mceFirst .mceToolbar tr td,.wp_themeSkin tr.mceLast .mceToolbar tr td{border:0;margin:0;padding:0;}.wp_themeSkin table.mceLayout{border:0;}.wp_themeSkin .mceStatusbar{display:block;font-family:Arial,"Bitstream Vera Sans",Helvetica,Verdana,sans-serif;font-size:12px;line-height:16px;padding:0 0 0 8px;overflow:visible;height:20px;border-top:1px solid #dfdfdf;color:#000;background-color:#f5f5f5;}.rtl .wp_themeSkin .mceStatusbar{padding:0 8px 0 0;}.wp_themeSkin .mceStatusbar *{color:#555;}.wp_themeSkin .mceStatusbar div{float:left;padding:2px;}.rtl .wp_themeSkin .mceStatusbar div{float:right;}.wp_themeSkin .mceStatusbar a.mceResize{display:block;float:right;background:url("../js/tinymce/themes/advanced/img/icons.gif") -800px 0;width:20px;height:20px;cursor:se-resize;}.rtl .wp_themeSkin .mceStatusbar a.mceResize{float:left;}.wp_themeSkin .mceStatusbar a:hover{text-decoration:underline;}.wp_themeSkin table.mceToolbar{margin:0 6px 2px;}.wp_themeSkin #content_toolbar1{margin-top:2px;}.wp_themeSkin .mceToolbar .mceToolbarEndListBox span{display:none;}.wp_themeSkin span.mceIcon,.wp_themeSkin img.mceIcon{display:block;width:20px;height:20px;}.wp_themeSkin .mceIcon{background:url("../js/tinymce/themes/advanced/img/icons.gif") no-repeat 20px 20px;}.wp_themeSkin .mceButton{display:block;width:20px;height:20px;cursor:default;padding:1px 2px;margin:1px;-webkit-border-radius:2px;border-radius:2px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,0.15),inset 0 0 2px 1px #fff;-moz-box-shadow:0 1px 0 rgba(0,0,0,0.15),inset 0 0 2px 1px #fff;box-shadow:0 1px 0 rgba(0,0,0,0.15),inset 0 0 2px 1px #fff;}.wp_themeSkin a.mceButtonEnabled:hover{background-image:inherit 0 -10px;}.wp_themeSkin .mceOldBoxModel a.mceButton span,.wp_themeSkin .mceOldBoxModel a.mceButton img{margin:0 0 0 1px;}.wp_themeSkin a.mceButton:active,.wp_themeSkin a.mceButtonActive,.wp_themeSkin a.mceButtonActive:hover,.wp_themeSkin a.mceButtonSelected{-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.15),inset 0 0 2px 1px #fff;-moz-box-shadow:0 1px 0 rgba(0,0,0,0.15),inset 0 0 2px 1px #fff;box-shadow:0 1px 0 rgba(0,0,0,0.15),inset 0 0 2px 1px #fff;}.wp_themeSkin .mceButtonDisabled .mceIcon{opacity:.5;filter:alpha(opacity=50);}.wp_themeSkin .mceSeparator{height:24px;width:1px;display:block;background:transparent;overflow:hidden;margin:0 2px;}.wp_themeSkin .mceListBox,.wp_themeSkin .mceListBox a{display:block;}.wp_themeSkin .mceListBox .mceText{padding:1px 2px 1px 5px;text-align:left;text-decoration:none;width:70px;-webkit-border-bottom-left-radius:2px;-webkit-border-top-left-radius:2px;border-bottom-left-radius:2px;border-top-left-radius:2px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,0.15),inset 0 0 2px 1px #fff;-moz-box-shadow:0 1px 0 rgba(0,0,0,0.15),inset 0 0 2px 1px #fff;box-shadow:0 1px 0 rgba(0,0,0,0.15),inset 0 0 2px 1px #fff;font-family:Arial,"Bitstream Vera Sans",Helvetica,Verdana,sans-serif;font-size:12px;height:20px;line-height:20px;overflow:hidden;}.wp_themeSkin .mceListBox{margin:1px;direction:ltr;}.wp_themeSkin .mceListBox .mceOpen{width:14px;height:20px;border-collapse:separate;padding:1px;-webkit-border-bottom-left-radius:0;-webkit-border-top-left-radius:0;border-bottom-left-radius:0;border-top-left-radius:0;-webkit-box-shadow:0 1px 0 rgba(0,0,0,0.15),inset 0 0 2px 1px #fff;-moz-box-shadow:0 1px 0 rgba(0,0,0,0.15),inset 0 0 2px 1px #fff;box-shadow:0 1px 0 rgba(0,0,0,0.15),inset 0 0 2px 1px #fff;}.wp_themeSkin .mceListBox .mceOpen span{display:block;width:14px;height:20px;background-image:url("../images/down_arrow.gif");background-position:2px 1px;background-repeat:no-repeat;}.wp_themeSkin table.mceListBoxEnabled:hover .mceText,.wp_themeSkin .mceListBoxHover .mceText,.wp_themeSkin .mceListBoxSelected .mceText,.wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,.wp_themeSkin .mceListBoxHover .mceOpen,.wp_themeSkin .mceListBoxSelected .mceOpen{background-image:none;}.wp_themeSkin .mceListBoxDisabled .mceText{color:gray;}.wp_themeSkin .mceListBoxMenu{overflow:auto;overflow-x:hidden;}.wp_themeSkin .mceOldBoxModel .mceListBox .mceText{height:22px;}.wp_themeSkin select.mceListBox{font-family:Arial,"Bitstream Vera Sans",Helvetica,Verdana,sans-serif;font-size:12px;border-color:#B2B2B2;background-color:#fff;}.wp_themeSkin .mceSplitButton a,.wp_themeSkin .mceSplitButton span{display:block;height:20px;}.wp_themeSkin .mceSplitButton{display:block;margin:1px;direction:ltr;}.wp_themeSkin table.mceSplitButton td{padding:2px;-webkit-border-radius:2px;border-radius:2px;}.wp_themeSkin table.mceSplitButton td a{-webkit-box-shadow:0 1px 0 rgba(0,0,0,0.15),inset 0 0 2px 1px #fff;-moz-box-shadow:0 1px 0 rgba(0,0,0,0.15),inset 0 0 2px 1px #fff;box-shadow:0 1px 0 rgba(0,0,0,0.15),inset 0 0 2px 1px #fff;}.wp_themeSkin table.mceSplitButton:hover td{background-image:inherit 0 -10px;}.wp_themeSkin .mceSplitButton a.mceAction{height:20px;width:20px;padding:1px 2px;}.wp_themeSkin .mceSplitButton span.mceAction{background-image:url("../js/tinymce/themes/advanced/img/icons.gif");background-repeat:no-repeat;background-color:transparent;width:20px;}.wp_themeSkin .mceSplitButton a.mceOpen{width:10px;height:20px;background-image:url("../images/down_arrow.gif");background-position:1px 2px;background-repeat:no-repeat;padding:1px;border-left:0 none!important;}.wp_themeSkin .mceSplitButton span.mceOpen{display:none;}.wp_themeSkin .mceSplitButtonDisabled .mceAction{opacity:.3;filter:alpha(opacity=30);}.wp_themeSkin .mceListBox a.mceText,.wp_themeSkin .mceSplitButton a.mceAction{-webkit-border-bottom-left-radius:2px;-webkit-border-top-left-radius:2px;border-bottom-left-radius:2px;border-top-left-radius:2px;}.wp_themeSkin .mceSplitButton a.mceOpen,.wp_themeSkin .mceListBox a.mceOpen{-webkit-border-bottom-right-radius:2px;-webkit-border-top-right-radius:2px;border-bottom-right-radius:2px;border-top-right-radius:2px;}.wp_themeSkin span.mce_undo,.wp_themeSkin span.mce_redo,.wp_themeSkin span.mce_bullist,.wp_themeSkin span.mce_numlist,.wp_themeSkin span.mce_blockquote,.wp_themeSkin span.mce_charmap,.wp_themeSkin span.mce_bold,.wp_themeSkin span.mce_italic,.wp_themeSkin span.mce_underline,.wp_themeSkin span.mce_justifyleft,.wp_themeSkin span.mce_justifyright,.wp_themeSkin span.mce_justifycenter,.wp_themeSkin span.mce_justifyfull,.wp_themeSkin span.mce_indent,.wp_themeSkin span.mce_outdent,.wp_themeSkin span.mce_link,.wp_themeSkin span.mce_unlink,.wp_themeSkin span.mce_help,.wp_themeSkin span.mce_removeformat,.wp_themeSkin span.mce_fullscreen,.wp_themeSkin span.mce_wp_fullscreen,.wp_themeSkin span.mce_media,.wp_themeSkin span.mce_pastetext,.wp_themeSkin span.mce_pasteword,.wp_themeSkin span.mce_wp_help,.wp_themeSkin span.mce_wp_adv,.wp_themeSkin span.mce_wp_more,.wp_themeSkin span.mce_strikethrough,.wp_themeSkin span.mce_spellchecker,.wp_themeSkin span.mce_forecolor,.wp_themeSkin .mce_forecolorpicker,.wp_themeSkin .mceSplitButton .mce_spellchecker span.mce_spellchecker,.wp_themeSkin .mceSplitButton .mce_forecolor span.mce_forecolor,.wp_themeSkin .mceSplitButton span.mce_numlist,.wp_themeSkin .mceSplitButton span.mce_bullist{background-image:url(../images/wpicons.png);}.wp_themeSkin div.mceColorSplitMenu table{background-color:#ebebeb;border-color:#B2B2B2;}.wp_themeSkin .mceColorSplitMenu td{padding:2px;}.wp_themeSkin .mceColorSplitMenu a{display:block;width:9px;height:9px;overflow:hidden;border-color:#B2B2B2;}.wp_themeSkin .mceColorSplitMenu td.mceMoreColors{padding:1px 3px 1px 1px;}.wp_themeSkin .mceColorSplitMenu a.mceMoreColors{width:100%;height:auto;text-align:center;font-family:Tahoma,Verdana,Arial,Helvetica;font-size:11px;line-height:20px;border-color:#fff;}.wp_themeSkin .mceColorPreview{margin:-5px 0 0 2px;width:16px;height:4px;overflow:hidden;}.wp_themeSkin .mceMenu{position:absolute;left:0;top:0;z-index:1000;border-color:#ddd;}.wp_themeSkin .mceNoIcons span.mceIcon{width:0;}.wp_themeSkin .mceNoIcons a .mceText{padding-left:10px;}.wp_themeSkin .mceMenu table{background-color:#ebeaeb;}.wp_themeSkin .mceMenu a,.wp_themeSkin .mceMenu span,.wp_themeSkin .mceMenu{display:block;}.wp_themeSkin .mceMenu td{height:20px;overflow:hidden;}.wp_themeSkin .mceMenu a{position:relative;padding:3px 0 4px 0;text-decoration:none!important;}.wp_themeSkin .mceMenu .mceText{position:relative;display:block;font-family:Tahoma,Verdana,Arial,Helvetica;cursor:default;margin:0;padding:0 25px;color:#000;}.wp_themeSkin .mceMenu span.mceText,.wp_themeSkin .mceMenu .mcePreview{font-size:12px;}.wp_themeSkin .mceMenu pre.mceText{font-family:Monospace;}.wp_themeSkin .mceMenu .mceIcon{position:absolute;top:0;left:0;width:22px;}.wp_themeSkin .mceMenu .mceMenuItemEnabled a:hover,.wp_themeSkin .mceMenu .mceMenuItemActive{background-color:#f5f5f5;}.wp_themeSkin td.mceMenuItemSeparator{height:1px;background-color:#aaa;}.wp_themeSkin .mceMenuItemTitle a{border-top:0;border-right:0;border-left:0;border-bottom:1px solid #aaa;text-decoration:none!important;background-color:#ccc;}.wp_themeSkin .mceMenuItemTitle span.mceText{font-weight:bold;padding-left:4px;color:#000;}.wp_themeSkin .mceMenuItemSelected .mceIcon{background:url("../js/tinymce/themes/advanced/skins/default/img/menu_check.gif");color:#888;}.wp_themeSkin .mceNoIcons .mceMenuItemSelected a{background:url("../js/tinymce/themes/advanced/skins/default/img/menu_arrow.gif") no-repeat -6px center;}.wp_themeSkin .mceMenu span.mceMenuLine{display:none;}.wp_themeSkin .mceMenuItemSub a{background:url("../js/tinymce/themes/advanced/skins/default/img/menu_arrow.gif") no-repeat top right;}.wp_themeSkin .mceBlocker{position:absolute;left:0;top:0;z-index:1000;opacity:.5;filter:alpha(opacity=50);background:#FFF;}.wp_themeSkin .mceProgress{position:absolute;left:0;top:0;z-index:1001;background:url("../js/tinymce/themes/advanced/skins/default/img/progress.gif") no-repeat;width:32px;height:32px;margin:-16px 0 0 -16px;}.wp_themeSkin .mcePlaceHolder{border:1px dotted gray;}.wp_themeSkin .mce_address span.mceText{font-style:italic;}.wp_themeSkin .mce_pre span.mceText{font-family:monospace;}.wp_themeSkin .mce_h1 span.mceText{font-weight:bolder;font-size:17px;}.wp_themeSkin .mce_h2 span.mceText{font-weight:bolder;font-size:16px;}.wp_themeSkin .mce_h3 span.mceText{font-weight:bolder;font-size:15px;}.wp_themeSkin .mce_h4 span.mceText{font-weight:bolder;font-size:14px;}.wp_themeSkin .mce_h5 span.mceText{font-weight:bolder;font-size:13px;}.wp_themeSkin .mce_h6 span.mceText{font-weight:bolder;font-size:12px;}.wp_themeSkin span.mce_undo{background-position:-500px -20px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_undo,.wp_themeSkin .mceButtonActive span.mce_undo{background-position:-500px 0;}.wp_themeSkin span.mce_redo{background-position:-480px -20px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_redo,.wp_themeSkin .mceButtonActive span.mce_redo{background-position:-480px 0;}.wp_themeSkin span.mce_bullist{background-position:-40px -20px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_bullist,.wp_themeSkin .mceButtonActive span.mce_bullist,.wp_themeSkin .mceSplitButton:hover span.mce_bullist{background-position:-40px 0;}.wp_themeSkin span.mce_numlist{background-position:-61px -20px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_numlist,.wp_themeSkin .mceButtonActive span.mce_numlist,.wp_themeSkin .mceSplitButton:hover span.mce_numlist{background-position:-61px 0;}.wp_themeSkin span.mce_blockquote{background-position:-80px -20px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_blockquote,.wp_themeSkin .mceButtonActive span.mce_blockquote{background-position:-80px 0;}.wp_themeSkin span.mce_charmap{background-position:-420px -20px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_charmap,.wp_themeSkin .mceButtonActive span.mce_charmap{background-position:-420px 0;}.wp_themeSkin span.mce_bold{background-position:-1px -20px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_bold,.wp_themeSkin .mceButtonActive span.mce_bold{background-position:-1px 0;}.wp_themeSkin span.mce_italic{background-position:-21px -20px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_italic,.wp_themeSkin .mceButtonActive span.mce_italic{background-position:-21px 0;}.wp_themeSkin span.mce_underline{background-position:-280px -19px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_underline,.wp_themeSkin .mceButtonActive span.mce_underline{background-position:-280px 1px;}.wp_themeSkin span.mce_justifyleft{background-position:-100px -19px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_justifyleft,.wp_themeSkin .mceButtonActive span.mce_justifyleft{background-position:-100px 1px;}.wp_themeSkin span.mce_justifyright{background-position:-141px -19px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_justifyright,.wp_themeSkin .mceButtonActive span.mce_justifyright{background-position:-141px 1px;}.wp_themeSkin span.mce_justifycenter{background-position:-120px -19px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_justifycenter,.wp_themeSkin .mceButtonActive span.mce_justifycenter{background-position:-120px 1px;}.wp_themeSkin span.mce_justifyfull{background-position:-300px -19px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_justifyfull,.wp_themeSkin .mceButtonActive span.mce_justifyfull{background-position:-300px 1px;}.wp_themeSkin span.mce_indent{background-position:-461px -19px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_indent,.wp_themeSkin .mceButtonActive span.mce_indent{background-position:-461px 1px;}.wp_themeSkin span.mce_outdent{background-position:-440px -19px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_outdent,.wp_themeSkin .mceButtonActive span.mce_outdent{background-position:-440px 1px;}.wp_themeSkin span.mce_link{background-position:-161px -20px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_link,.wp_themeSkin .mceButtonActive span.mce_link{background-position:-161px 0;}.wp_themeSkin span.mce_unlink{background-position:-180px -20px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_unlink,.wp_themeSkin .mceButtonActive span.mce_unlink{background-position:-180px 0;}.wp_themeSkin span.mce_help{background-position:-521px -20px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_help,.wp_themeSkin .mceButtonActive span.mce_help{background-position:-521px 0;}.wp_themeSkin span.mce_removeformat{background-position:-381px -20px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_removeformat,.wp_themeSkin .mceButtonActive span.mce_removeformat{background-position:-381px 0;}.wp_themeSkin span.mce_strikethrough{background-position:-540px -18px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_strikethrough,.wp_themeSkin .mceButtonActive span.mce_strikethrough{background-position:-540px 0;}.wp_themeSkin .mceSplitButton .mce_forecolor span.mce_forecolor{background-position:-321px -22px;}.wp_themeSkin .mceSplitButtonEnabled:hover span.mce_forecolor,.wp_themeSkin .mceSplitButtonActive span.mce_forecolor{background-position:-321px -2px;}.wp_themeSkin .mce_forecolorpicker{background-position:-320px -20px;}.wp_themeSkin span.mce_fullscreen{background-position:-240px -20px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_fullscreen,.wp_themeSkin .mceButtonActive span.mce_fullscreen{background-position:-240px 0;}.wp_themeSkin span.mce_wp_fullscreen{background-position:-240px -20px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_wp_fullscreen,.wp_themeSkin .mceButtonActive span.mce_wp_fullscreen{background-position:-240px 0;}.wp_themeSkin span.mce_media{background-position:-401px -20px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_media,.wp_themeSkin .mceButtonActive span.mce_media{background-position:-401px 0;}.wp_themeSkin span.mce_pastetext{background-position:-340px -20px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_pastetext,.wp_themeSkin .mceButtonActive span.mce_pastetext{background-position:-340px 0;}.wp_themeSkin span.mce_pasteword{background-position:-360px -20px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_pasteword,.wp_themeSkin .mceButtonActive span.mce_pasteword{background-position:-360px 0;}.wp_themeSkin span.mce_spellchecker{background-position:-220px -19px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_spellchecker,.wp_themeSkin .mceSplitButtonEnabled:hover span.mce_spellchecker,.wp_themeSkin .mceButtonActive span.mce_spellchecker,.wp_themeSkin .mceSplitButtonActive span.mce_spellchecker{background-position:-220px 1px;}.wp_themeSkin span.mce_wp_help{background-position:-521px -20px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_wp_help,.wp_themeSkin .mceButtonActive span.mce_wp_help{background-position:-521px 0;}.wp_themeSkin span.mce_wp_adv{background-position:-260px -20px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_wp_adv,.wp_themeSkin .mceButtonActive span.mce_wp_adv{background-position:-260px 0;}.wp_themeSkin span.mce_wp_more{background-position:-201px -20px;}.wp_themeSkin .mceButtonEnabled:hover span.mce_wp_more,.wp_themeSkin .mceButtonActive span.mce_wp_more{background-position:-201px 0;}.wp_themeSkin span.mce_cleanup{background-position:-380px -20px;}.wp_themeSkin span.mce_anchor{background-position:-200px 0;}.wp_themeSkin span.mce_sub{background-position:-600px 0;}.wp_themeSkin span.mce_sup{background-position:-620px 0;}.wp_themeSkin span.mce_newdocument{background-position:-520px 0;}.wp_themeSkin span.mce_image{background-position:-380px 0;}.wp_themeSkin span.mce_code{background-position:-260px 0;}.wp_themeSkin span.mce_hr{background-position:-360px 0;}.wp_themeSkin span.mce_visualaid{background-position:-660px 0;}.wp_themeSkin span.mce_paste{background-position:-560px 0;}.wp_themeSkin span.mce_copy{background-position:-700px 0;}.wp_themeSkin span.mce_cut{background-position:-680px 0;}.wp_themeSkin .mce_backcolor span.mceAction{background-position:-760px 0;}.wp_themeSkin .mce_backcolorpicker{background-position:-760px 0;}.wp_themeSkin span.mce_advhr{background-position:-0px -20px;}.wp_themeSkin span.mce_ltr{background-position:-20px -20px;}.wp_themeSkin span.mce_rtl{background-position:-40px -20px;}.wp_themeSkin span.mce_emotions{background-position:-60px -20px;}.wp_themeSkin span.mce_fullpage{background-position:-80px -20px;}.wp_themeSkin span.mce_iespell{background-position:-120px -20px;}.wp_themeSkin span.mce_insertdate{background-position:-140px -20px;}.wp_themeSkin span.mce_inserttime{background-position:-160px -20px;}.wp_themeSkin span.mce_absolute{background-position:-180px -20px;}.wp_themeSkin span.mce_backward{background-position:-200px -20px;}.wp_themeSkin span.mce_forward{background-position:-220px -20px;}.wp_themeSkin span.mce_insert_layer{background-position:-240px -20px;}.wp_themeSkin span.mce_insertlayer{background-position:-260px -20px;}.wp_themeSkin span.mce_movebackward{background-position:-280px -20px;}.wp_themeSkin span.mce_moveforward{background-position:-300px -20px;}.wp_themeSkin span.mce_nonbreaking{background-position:-340px -20px;}.wp_themeSkin span.mce_selectall{background-position:-400px -20px;}.wp_themeSkin span.mce_preview{background-position:-420px -20px;}.wp_themeSkin span.mce_print{background-position:-440px -20px;}.wp_themeSkin span.mce_cancel{background-position:-460px -20px;}.wp_themeSkin span.mce_save{background-position:-480px -20px;}.wp_themeSkin span.mce_replace{background-position:-500px -20px;}.wp_themeSkin span.mce_search{background-position:-520px -20px;}.wp_themeSkin span.mce_styleprops{background-position:-560px -20px;}.wp_themeSkin span.mce_table{background-position:-580px -20px;}.wp_themeSkin span.mce_cell_props{background-position:-600px -20px;}.wp_themeSkin span.mce_delete_table{background-position:-620px -20px;}.wp_themeSkin span.mce_delete_col{background-position:-640px -20px;}.wp_themeSkin span.mce_delete_row{background-position:-660px -20px;}.wp_themeSkin span.mce_col_after{background-position:-680px -20px;}.wp_themeSkin span.mce_col_before{background-position:-700px -20px;}.wp_themeSkin span.mce_row_after{background-position:-720px -20px;}.wp_themeSkin span.mce_row_before{background-position:-740px -20px;}.wp_themeSkin span.mce_merge_cells{background-position:-760px -20px;}.wp_themeSkin span.mce_table_props{background-position:-980px -20px;}.wp_themeSkin span.mce_row_props{background-position:-780px -20px;}.wp_themeSkin span.mce_split_cells{background-position:-800px -20px;}.wp_themeSkin span.mce_template{background-position:-820px -20px;}.wp_themeSkin span.mce_visualchars{background-position:-840px -20px;}.wp_themeSkin span.mce_abbr{background-position:-860px -20px;}.wp_themeSkin span.mce_acronym{background-position:-880px -20px;}.wp_themeSkin span.mce_attribs{background-position:-900px -20px;}.wp_themeSkin span.mce_cite{background-position:-920px -20px;}.wp_themeSkin span.mce_del{background-position:-940px -20px;}.wp_themeSkin span.mce_ins{background-position:-960px -20px;}.wp_themeSkin span.mce_pagebreak{background-position:0 -40px;}.wp_themeSkin .mceExternalToolbar,.wp_themeSkin .mceButton,.wp_themeSkin a.mceButtonEnabled:hover,.wp_themeSkin a.mceButtonActive,.wp_themeSkin a.mceButtonSelected,.wp_themeSkin .mceListBox .mceText,.wp_themeSkin .mceListBox .mceOpen,.wp_themeSkin table.mceListBoxEnabled:hover .mceText,.wp_themeSkin .mceListBoxHover .mceText,.wp_themeSkin .mceListBoxSelected .mceText,.wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,.wp_themeSkin .mceListBoxHover .mceOpen,.wp_themeSkin .mceListBoxSelected .mceOpen,.wp_themeSkin select.mceListBox,.wp_themeSkin .mceSplitButton a.mceAction,.wp_themeSkin .mceSplitButton a.mceOpen,.wp_themeSkin .mceSplitButton a.mceOpen:hover,.wp_themeSkin .mceSplitButtonSelected a.mceOpen,.wp_themeSkin table.mceSplitButtonEnabled:hover a.mceAction,.wp_themeSkin .mceSplitButton a.mceAction:hover,.wp_themeSkin div.mceColorSplitMenu table,.wp_themeSkin .mceColorSplitMenu a,.wp_themeSkin .mceColorSplitMenu a.mceMoreColors,.wp_themeSkin .mceColorSplitMenu a.mceMoreColors:hover,.wp_themeSkin a.mceMoreColors:hover,.wp_themeSkin .mceMenu{border-style:solid;border-width:1px;}.wp_themeSkin iframe{background:transparent;}.wp_themeSkin .mceButton,.wp_themeSkin .mceListBox .mceText,.wp_themeSkin .mceListBox .mceOpen{border-color:#ccc;background-color:#eee;background-image:-ms-linear-gradient(bottom,#ddd,#fff);background-image:-moz-linear-gradient(bottom,#ddd,#fff);background-image:-o-linear-gradient(bottom,#ddd,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#ddd),to(#fff));background-image:-webkit-linear-gradient(bottom,#ddd,#fff);background-image:linear-gradient(bottom,#ddd,#fff);}.wp_themeSkin a.mceButtonEnabled:hover{border-color:#a0a0a0;background:#ddd;background-image:-ms-linear-gradient(bottom,#ccc,#fff);background-image:-moz-linear-gradient(bottom,#ccc,#fff);background-image:-o-linear-gradient(bottom,#ccc,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#ccc),to(#fff));background-image:-webkit-linear-gradient(bottom,#ccc,#fff);background-image:linear-gradient(bottom,#ccc,#fff);}.wp_themeSkin a.mceButton:active,.wp_themeSkin a.mceButtonEnabled:active,.wp_themeSkin a.mceButtonSelected:active,.wp_themeSkin a.mceButtonActive,.wp_themeSkin a.mceButtonActive:active,.wp_themeSkin a.mceButtonActive:hover{background-color:#ddd;background-image:-ms-linear-gradient(bottom,#eee,#bbb);background-image:-moz-linear-gradient(bottom,#eee,#bbb);background-image:-o-linear-gradient(bottom,#eee,#bbb);background-image:-webkit-gradient(linear,left bottom,left top,from(#eee),to(#bbb));background-image:-webkit-linear-gradient(bottom,#eee,#bbb);background-image:linear-gradient(bottom,#eee,#bbb);border-color:#909090;}.wp_themeSkin .mceButtonDisabled{border-color:#ccc!important;}.wp_themeSkin .mceListBox .mceOpen{border-left:0!important;}.wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,.wp_themeSkin .mceListBoxHover .mceOpen,.wp_themeSkin .mceListBoxHover:active .mceOpen,.wp_themeSkin .mceListBoxSelected .mceOpen,.wp_themeSkin .mceListBoxSelected .mceText,.wp_themeSkin table.mceListBoxEnabled:active .mceText{background:#ccc;border-color:#999;}.wp_themeSkin table.mceListBoxEnabled:hover .mceText,.wp_themeSkin .mceListBoxHover .mceText,.wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,.wp_themeSkin .mceListBoxHover .mceOpen{border-color:#909090;background-color:#eee;background-image:-ms-linear-gradient(bottom,#ccc,#fff);background-image:-moz-linear-gradient(bottom,#ccc,#fff);background-image:-o-linear-gradient(bottom,#ccc,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#ccc),to(#fff));background-image:-webkit-linear-gradient(bottom,#ccc,#fff);background-image:linear-gradient(bottom,#ccc,#fff);}.wp_themeSkin .mceSplitButton a.mceAction,.wp_themeSkin .mceSplitButton a.mceOpen{border-color:#ccc;}.wp_themeSkin .mceSplitButton a.mceOpen:hover,.wp_themeSkin .mceSplitButtonSelected a.mceOpen,.wp_themeSkin table.mceSplitButtonEnabled:hover a.mceAction,.wp_themeSkin .mceSplitButton a.mceAction:hover{border-color:#909090;}.wp_themeSkin table.mceSplitButton td{background-color:#eee;background-image:-ms-linear-gradient(bottom,#ddd,#fff);background-image:-moz-linear-gradient(bottom,#ddd,#fff);background-image:-o-linear-gradient(bottom,#ddd,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#ddd),to(#fff));background-image:-webkit-linear-gradient(bottom,#ddd,#fff);background-image:linear-gradient(bottom,#ddd,#fff);}.wp_themeSkin table.mceSplitButton:hover td{background-image:-ms-linear-gradient(bottom,#ccc,#fff);background-image:-moz-linear-gradient(bottom,#ccc,#fff);background-image:-o-linear-gradient(bottom,#ccc,#fff);background-image:-webkit-gradient(linear,left bottom,left top,from(#ccc),to(#fff));background-image:-webkit-linear-gradient(bottom,#ccc,#fff);background-image:linear-gradient(bottom,#ccc,#fff);}.wp_themeSkin .mceSplitButtonActive{background-color:#B2B2B2;}.wp_themeSkin .mceColorSplitMenu a.mceMoreColors:hover{border-color:#0A246A;background-color:#B6BDD2;}.wp_themeSkin a.mceMoreColors:hover{border-color:#0A246A;}.wp_themeSkin .mceMenuItemDisabled .mceText{color:#888;}#mceModalBlocker{background:#000;}.wp-editor-area{font-family:Consolas,Monaco,monospace;padding:10px;line-height:150%;border:0 none;outline:none;resize:vertical;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;}.wp-editor-tools{height:30px;padding:0 10px;}.wp-editor-container{border-width:1px;border-style:solid;-webkit-border-top-right-radius:3px;-webkit-border-top-left-radius:3px;border-top-right-radius:3px;border-top-left-radius:3px;border-color:#ccc #ccc #dfdfdf;}.wp-editor-container textarea.wp-editor-area{width:99.9%;}.quicktags-toolbar,.wp_themeSkin tr.mceFirst td.mceToolbar{border-bottom:1px solid #ccc;background-color:#e9e9e9;background-image:-ms-linear-gradient(bottom,#ddd,#e9e9e9);background-image:-moz-linear-gradient(bottom,#ddd,#e9e9e9);background-image:-o-linear-gradient(bottom,#ddd,#e9e9e9);background-image:-webkit-linear-gradient(bottom,#ddd,#e9e9e9);background-image:linear-gradient(bottom,#ddd,#e9e9e9);}.wp-switch-editor{height:18px;font:13px/18px Arial,Helvetica,sans-serif normal;margin:5px 5px 0 0;padding:4px 5px 2px;float:right;cursor:pointer;border-width:1px;border-style:solid;-webkit-border-top-right-radius:3px;-webkit-border-top-left-radius:3px;border-top-right-radius:3px;border-top-left-radius:3px;background-color:#f1f1f1;border-color:#dfdfdf #dfdfdf #ccc;color:#999;}html[dir="rtl"] .wp-switch-editor{float:left;}.wp-switch-editor:hover{text-decoration:none!important;}.js .tmce-active .wp-editor-area{color:white;}.tmce-active .quicktags-toolbar{display:none;}.tmce-active .switch-tmce,.html-active .switch-html{border-color:#ccc #ccc #e9e9e9;background-color:#e9e9e9;color:#333;}.wp-media-buttons{line-height:1;padding:9px 0 0;}.wp-media-buttons a{text-decoration:none;color:#333;font-size:12px;vertical-align:bottom;}.wp-media-buttons img{padding:0 4px;vertical-align:middle;}.quicktags-toolbar{border-bottom-style:solid;border-bottom-width:1px;-webkit-border-top-right-radius:3px;-webkit-border-top-left-radius:3px;border-top-right-radius:3px;border-top-left-radius:3px;padding:2px 8px 0;min-height:30px;}.quicktags-toolbar>div{padding:2px 4px 0;}.quicktags-toolbar input{margin:2px 1px 4px;line-height:18px;display:inline-block;min-width:26px;padding:2px 4px;font:12px/18px Arial,Helvetica,sans-serif normal;color:#464646;border:1px solid #C3C3C3;-webkit-border-radius:3px;border-radius:3px;background-color:#eee;background-image:-ms-linear-gradient(bottom,#e3e3e3,#fff);background-image:-moz-linear-gradient(bottom,#e3e3e3,#fff);background-image:-o-linear-gradient(bottom,#e3e3e3,#fff);background-image:-webkit-linear-gradient(bottom,#e3e3e3,#fff);background-image:linear-gradient(bottom,#e3e3e3,#fff);}.quicktags-toolbar input:hover{border-color:#aaa;background:#ddd;}.quicktags-toolbar input[value="link"]{text-decoration:underline;}.quicktags-toolbar input[value="del"]{text-decoration:line-through;}.quicktags-toolbar input[value="i"]{font-style:italic;}.quicktags-toolbar input[value="b"]{font-weight:bold;}#wp_editbtns,#wp_gallerybtns{padding:2px;position:absolute;display:none;z-index:999998;}#wp_editimgbtn,#wp_delimgbtn,#wp_editgallery,#wp_delgallery{border-color:#999;background-color:#eee;margin:2px;padding:2px;border-width:1px;border-style:solid;-webkit-border-radius:3px;border-radius:3px;}#wp_editimgbtn:hover,#wp_delimgbtn:hover,#wp_editgallery:hover,#wp_delgallery:hover{border-color:#555;background-color:#ccc;}#wp-link{background-color:#F5F5F5;line-height:1.4em;font-size:12px;}#wp-link ol,#wp-link ul{list-style:none;margin:0;padding:0;}#wp-link input[type="text"]{-webkit-box-sizing:border-box;}#wp-link input[type="text"],#wp-link textarea{border-width:1px;border-style:solid;-webkit-border-radius:4px;border-radius:4px;font-size:12px;margin:1px;padding:3px;}#wp-link #link-options{padding:10px 0 14px;border-bottom:1px solid #dfdfdf;margin:0 6px 14px;}#wp-link p.howto{margin:3px;}#wp-link #internal-toggle{display:inline-block;cursor:pointer;padding-left:18px;}#wp-link .toggle-arrow{background:transparent url('../images/toggle-arrow.png') top left no-repeat;height:23px;line-height:23px;}#wp-link .toggle-arrow-active{background-position:center left;}#wp-link label input[type="text"]{width:360px;margin-top:5px;}#wp-link label span{display:inline-block;width:80px;text-align:right;padding-right:5px;}#wp-link .link-search-wrapper{margin:5px 6px 9px;display:block;overflow:hidden;}#wp-link .link-search-wrapper span{float:left;margin-top:6px;}#wp-link .link-search-wrapper input[type="text"]{float:left;width:220px;}#wp-link .link-search-wrapper img.waiting{margin:8px 1px 0 4px;float:left;display:none;}#wp-link .link-target{width:auto;padding:3px 0 0;margin:0 0 0 87px;font-size:11px;}#wp-link .query-results{border:1px #dfdfdf solid;margin:0 5px 5px;background:#fff;height:185px;overflow:auto;position:relative;}#wp-link li,#wp-link .query-notice{clear:both;margin-bottom:0;border-bottom:1px solid #f1f1f1;color:#333;padding:4px 6px;cursor:pointer;position:relative;}#wp-link li:hover{background:#eaf2fa;color:#151515;}#wp-link li.unselectable{border-bottom:1px solid #dfdfdf;}#wp-link li.unselectable:hover{background:#fff;cursor:auto;color:#333;}#wp-link li.selected{background:#ddd;color:#333;}#wp-link li.selected .item-title{font-weight:bold;}#wp-link .item-title{display:inline-block;width:80%;}#wp-link .item-info{text-transform:uppercase;color:#666;font-size:11px;position:absolute;right:5px;top:4px;bottom:0;}#wp-link #search-results{display:none;}#wp-link #search-panel{float:left;width:100%;}#wp-link .river-waiting{display:none;padding:10px 0;}#wp-link .river-waiting img.waiting{margin:0 auto;display:block;}#wp-link .submitbox{padding:5px 10px;font-size:11px;overflow:auto;height:29px;}#wp-link-cancel{line-height:25px;float:left;}#wp-link-update{line-height:23px;float:right;}.ui-helper-hidden{display:none;}.ui-helper-hidden-accessible{position:absolute;left:-99999999px;}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none;}.ui-helper-clearfix:after{content:".";display:block;height:0;clear:both;visibility:hidden;}.ui-helper-clearfix{display:inline-block;}/* required comment for clearfix to work in Opera \*/ * html .ui-helper-clearfix{height:1%;}.ui-helper-clearfix{display:block;}/* end clearfix */ .ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0);}.ui-state-disabled{cursor:default!important;}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat;}.ui-widget-overlay{position:absolute;top:0;left:0;width:100%;height:100%;}.ui-resizable{position:relative;}.ui-resizable-handle{position:absolute;font-size:.1px;z-index:99999;display:block;}.ui-resizable-disabled .ui-resizable-handle,.ui-resizable-autohide .ui-resizable-handle{display:none;}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0;}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0;}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%;}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%;}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px;}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px;}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px;}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px;}.wp-dialog{position:absolute;width:300px;overflow:hidden;}.wp-dialog .ui-dialog-titlebar{position:relative;}.wp-dialog .ui-dialog-titlebar-close span{display:block;margin:1px;}.wp-dialog .ui-dialog-content{position:relative;border:0;padding:0;background:none;overflow:auto;zoom:1;}.wp-dialog .ui-dialog-buttonpane{text-align:left;border-width:1px 0 0 0;background-image:none;margin:.5em 0 0 0;padding:.3em 1em .5em .4em;}.wp-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:right;}.wp-dialog .ui-dialog-buttonpane button{margin:.5em .4em .5em 0;cursor:pointer;}.wp-dialog .ui-resizable-se{width:14px;height:14px;right:3px;bottom:3px;}.ui-draggable .ui-dialog-titlebar{cursor:move;}.wp-dialog{border:1px solid #999;-moz-box-shadow:0 0 16px rgba(0,0,0,0.3);-webkit-box-shadow:0 0 16px rgba(0,0,0,0.3);box-shadow:0 0 16px rgba(0,0,0,0.3);}.wp-dialog .ui-dialog-title{display:block;text-align:center;padding:1px 0 2px;}.wp-dialog .ui-dialog-titlebar{padding:0 1em;background-color:#444;font-weight:bold;font-size:11px;line-height:18px;color:#e5e5e5;}.wp-dialog{background-color:fff;-webkit-border-top-left-radius:4px;-webkit-border-top-right-radius:4px;border-top-left-radius:4px;border-top-right-radius:4px;}.wp-dialog .ui-dialog-titlebar{-webkit-border-top-left-radius:3px;-webkit-border-top-right-radius:3px;border-top-left-radius:3px;border-top-right-radius:3px;}.wp-dialog .ui-dialog-titlebar-close{position:absolute;width:29px;height:16px;top:2px;right:6px;background:url('../js/tinymce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif') no-repeat -87px -16px;padding:0;}.wp-dialog .ui-dialog-titlebar-close:hover,.wp-dialog .ui-dialog-titlebar-close:focus{background-position:-87px -32px;}.ui-widget-overlay{background-color:#000;opacity:.6;filter:alpha(opacity=60);}.rtl #wp-link #internal-toggle{padding-right:18px;padding-left:0;}.rtl #wp-link label span{text-align:left;padding-left:5px;padding-right:0;}.rtl #wp-link .link-search-wrapper span{float:right;}.rtl #wp-link .link-search-wrapper input[type="text"]{float:right;}.rtl #wp-link .link-search-wrapper img.waiting{margin:8px 4px 0 1px;float:right;}.rtl #wp-link .link-target{margin:0 87px 0 0;}.rtl #wp-link .item-info{left:5px;right:auto;top:4px;bottom:0;}.rtl #wp-link #search-panel{float:right;}.rtl #wp-link-cancel{float:right;}.rtl #wp-link-update{float:left;}.rtl #wp-link .toggle-arrow{background-position:top right;}.rtl #wp-link .toggle-arrow-active{background-position:center right;}.rtl .wp_themeSkin .mceListBox .mceText{text-align:right;}.rtl .wp_themeSkin .mceNoIcons a .mceText{padding-right:10px;padding-left:25px;}.rtl .mceListBoxMenu.mceNoIcons{margin-left:-14px;}.clearlooks2 .mceFocus .mceTop .mceLeft{background:#444;border-left:1px solid #999;border-top:1px solid #999;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;}.clearlooks2 .mceFocus .mceTop .mceRight{background:#444;border-right:1px solid #999;border-top:1px solid #999;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;}.clearlooks2 .mceMiddle .mceLeft{background:#f1f1f1;border-left:1px solid #999;}.clearlooks2 .mceMiddle .mceRight{background:#f1f1f1;border-right:1px solid #999;}.clearlooks2 .mceBottom{background:#f1f1f1;border-bottom:1px solid #999;}.clearlooks2 .mceBottom .mceLeft{background:#f1f1f1;border-bottom:1px solid #999;border-left:1px solid #999;}.clearlooks2 .mceBottom .mceCenter{background:#f1f1f1;border-bottom:1px solid #999;}.clearlooks2 .mceBottom .mceRight{background:#f1f1f1;border-bottom:1px solid #999;border-right:1px solid #999;}.clearlooks2 .mceFocus .mceTop span{color:#e5e5e5;}
\ No newline at end of file
diff --git a/wp-includes/css/editor-buttons.dev.css b/wp-includes/css/editor-buttons.dev.css
new file mode 100644 (file)
index 0000000..0d94f07
--- /dev/null
@@ -0,0 +1,1631 @@
+
+/*------------------------------------------------------------------------------
+ TinyMCE and Quicklinks toolbars
+------------------------------------------------------------------------------*/
+
+/* wp_theme/ui.css */
+.wp_themeSkin table,
+.wp_themeSkin tbody,
+.wp_themeSkin a,
+.wp_themeSkin img,
+.wp_themeSkin tr,
+.wp_themeSkin div,
+.wp_themeSkin td,
+.wp_themeSkin iframe,
+.wp_themeSkin span,
+.wp_themeSkin *,
+.wp_themeSkin .mceText {
+       border: 0;
+       margin: 0;
+       padding: 0;
+       white-space: nowrap;
+       text-decoration: none;
+       font-weight: normal;
+       cursor: default;
+       vertical-align: baseline;
+       width: auto;
+       border-collapse: separate;
+}
+
+.wp_themeSkin a:hover,
+.wp_themeSkin a:link,
+.wp_themeSkin a:visited,
+.wp_themeSkin a:active {
+       text-decoration: none;
+       font-weight: normal;
+       cursor: default;
+}
+
+.wp_themeSkin table td {
+       vertical-align: middle;
+}
+
+.wp_themeSkin *,
+.wp_themeSkin a:hover,
+.wp_themeSkin a:link,
+.wp_themeSkin a:visited,
+.wp_themeSkin a:active {
+       color: #000;
+}
+
+/* Containers */
+.wp_themeSkin table {}
+
+.wp_themeSkin iframe {
+       display: block;
+}
+
+.wp_themeSkin #mce_fullscreen_ifr {
+       background-color: #fff;
+}
+
+.wp_themeSkin .mceToolbar {
+       padding: 1px;
+}
+
+/* External */
+.wp_themeSkin .mceExternalToolbar {
+       position: absolute;
+       border-bottom: 0;
+       display: none;
+}
+
+.wp_themeSkin .mceExternalToolbar td.mceToolbar {
+       padding-right: 13px;
+}
+
+.wp_themeSkin .mceExternalClose {
+       position: absolute;
+       top: 3px;
+       right: 3px;
+       width: 7px;
+       height: 7px;
+       background: url("../js/tinymce/themes/advanced/img/icons.gif") -820px 0;
+}
+
+/* Layout */
+.wp_themeSkin table.mceToolbar,
+.wp_themeSkin tr.mceFirst .mceToolbar tr td,
+.wp_themeSkin tr.mceLast .mceToolbar tr td {
+       border: 0;
+       margin: 0;
+       padding: 0;
+}
+
+.wp_themeSkin table.mceLayout {
+       border: 0;
+}
+
+.wp_themeSkin .mceStatusbar {
+       display: block;
+       font-family: Arial, "Bitstream Vera Sans", Helvetica, Verdana, sans-serif;
+       font-size: 12px;
+       line-height: 16px;
+       padding: 0 0 0 8px;
+       overflow: visible;
+       height: 20px;
+       border-top: 1px solid #dfdfdf;
+       color: #000;
+       background-color: #f5f5f5;
+}
+
+.rtl .wp_themeSkin .mceStatusbar {
+       padding: 0 8px 0 0;
+}
+
+.wp_themeSkin .mceStatusbar * {
+       color: #555;
+}
+
+.wp_themeSkin .mceStatusbar div {
+       float: left;
+       padding: 2px;
+}
+
+.rtl .wp_themeSkin .mceStatusbar div {
+       float: right;
+}
+
+.wp_themeSkin .mceStatusbar a.mceResize {
+       display: block;
+       float: right;
+       background: url("../js/tinymce/themes/advanced/img/icons.gif") -800px 0;
+       width: 20px;
+       height: 20px;
+       cursor: se-resize;
+}
+
+.rtl .wp_themeSkin .mceStatusbar a.mceResize {
+       float: left;
+}
+
+.wp_themeSkin .mceStatusbar a:hover {
+       text-decoration: underline;
+}
+
+.wp_themeSkin table.mceToolbar {
+       margin: 0 6px 2px;
+}
+
+.wp_themeSkin #content_toolbar1 {
+       margin-top: 2px;
+}
+
+.wp_themeSkin .mceToolbar .mceToolbarEndListBox span {
+       display: none;
+}
+
+.wp_themeSkin span.mceIcon,
+.wp_themeSkin img.mceIcon {
+       display: block;
+       width: 20px;
+       height: 20px;
+}
+
+.wp_themeSkin .mceIcon {
+       background: url("../js/tinymce/themes/advanced/img/icons.gif") no-repeat 20px 20px;
+}
+
+/* Button */
+.wp_themeSkin .mceButton {
+       display: block;
+       width: 20px;
+       height: 20px;
+       cursor: default;
+       padding: 1px 2px;
+       margin: 1px;
+       -webkit-border-radius: 2px;
+       border-radius: 2px;
+       -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
+       -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
+       box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
+}
+
+.wp_themeSkin a.mceButtonEnabled:hover {
+       background-image: inherit 0 -10px;
+}
+
+.wp_themeSkin .mceOldBoxModel a.mceButton span, .wp_themeSkin .mceOldBoxModel a.mceButton img {
+       margin: 0 0 0 1px;
+}
+
+
+.wp_themeSkin a.mceButton:active,
+.wp_themeSkin a.mceButtonActive,
+.wp_themeSkin a.mceButtonActive:hover,
+.wp_themeSkin a.mceButtonSelected {
+       -webkit-box-shadow:      0 1px 1px rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
+       -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
+       box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
+}
+
+.wp_themeSkin .mceButtonDisabled .mceIcon {
+       opacity: 0.5;
+       filter: alpha(opacity=50);
+}
+
+/* Separator */
+.wp_themeSkin .mceSeparator {
+       height: 24px;
+       width: 1px;
+       display: block;
+       background: transparent;
+       overflow: hidden;
+       margin: 0 2px;
+}
+
+/* ListBox */
+.wp_themeSkin .mceListBox,
+.wp_themeSkin .mceListBox a {
+       display: block;
+}
+
+.wp_themeSkin .mceListBox .mceText {
+       padding: 1px 2px 1px 5px;
+       text-align: left;
+       text-decoration: none;
+       width: 70px;
+       -webkit-border-bottom-left-radius: 2px;
+       -webkit-border-top-left-radius: 2px;
+       border-bottom-left-radius: 2px;
+       border-top-left-radius: 2px;
+       -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
+       -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
+       box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
+       font-family: Arial, "Bitstream Vera Sans", Helvetica, Verdana, sans-serif;
+       font-size: 12px;
+       height: 20px;
+       line-height: 20px;
+       overflow: hidden;
+}
+
+.wp_themeSkin .mceListBox {
+       margin: 1px;
+       direction: ltr;
+}
+
+.wp_themeSkin .mceListBox .mceOpen {
+       width: 14px;
+       height: 20px;
+       border-collapse: separate;
+       padding: 1px;
+       -webkit-border-bottom-left-radius: 0;
+       -webkit-border-top-left-radius: 0;
+       border-bottom-left-radius: 0;
+       border-top-left-radius: 0;
+       -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
+       -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
+       box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
+}
+
+.wp_themeSkin .mceListBox .mceOpen span {
+       display: block;
+       width: 14px;
+       height: 20px;
+       background-image: url("../images/down_arrow.gif");
+       background-position: 2px 1px;
+       background-repeat: no-repeat;
+}
+
+.wp_themeSkin table.mceListBoxEnabled:hover .mceText,
+.wp_themeSkin .mceListBoxHover .mceText,
+.wp_themeSkin .mceListBoxSelected .mceText,
+.wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,
+.wp_themeSkin .mceListBoxHover .mceOpen,
+.wp_themeSkin .mceListBoxSelected .mceOpen {
+       background-image: none;
+}
+
+.wp_themeSkin .mceListBoxDisabled .mceText {
+       color: gray;
+}
+
+.wp_themeSkin .mceListBoxMenu {
+       overflow: auto;
+       overflow-x: hidden;
+}
+
+.wp_themeSkin .mceOldBoxModel .mceListBox .mceText {
+       height: 22px;
+}
+
+.wp_themeSkin select.mceListBox {
+       font-family: Arial, "Bitstream Vera Sans", Helvetica, Verdana, sans-serif;
+       font-size: 12px;
+       border-color: #B2B2B2;
+       background-color: #fff;
+}
+
+/* SplitButton */
+.wp_themeSkin .mceSplitButton a,
+.wp_themeSkin .mceSplitButton span {
+       display: block;
+       height: 20px;
+}
+
+.wp_themeSkin .mceSplitButton {
+       display: block;
+       margin: 1px;
+       direction: ltr;
+}
+
+.wp_themeSkin table.mceSplitButton td {
+       padding: 2px;
+       -webkit-border-radius: 2px;
+       border-radius: 2px;
+}
+
+.wp_themeSkin table.mceSplitButton td a {
+       -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
+       -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
+       box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
+}
+
+.wp_themeSkin table.mceSplitButton:hover td {
+       background-image: inherit 0 -10px;
+}
+
+.wp_themeSkin .mceSplitButton a.mceAction {
+       height: 20px;
+       width: 20px;
+       padding: 1px 2px;
+}
+
+.wp_themeSkin .mceSplitButton span.mceAction {
+       background-image: url("../js/tinymce/themes/advanced/img/icons.gif");
+       background-repeat: no-repeat;
+       background-color: transparent;
+       width: 20px;
+}
+
+.wp_themeSkin .mceSplitButton a.mceOpen {
+       width: 10px;
+       height: 20px;
+       background-image: url("../images/down_arrow.gif");
+       background-position: 1px 2px;
+       background-repeat: no-repeat;
+       padding: 1px;
+       border-left: 0 none !important;
+}
+
+.wp_themeSkin .mceSplitButton span.mceOpen {
+       display: none;
+}
+
+.wp_themeSkin .mceSplitButtonDisabled .mceAction {
+       opacity: 0.3;
+       filter: alpha(opacity=30);
+}
+
+.wp_themeSkin .mceListBox a.mceText,
+.wp_themeSkin .mceSplitButton a.mceAction {
+       -webkit-border-bottom-left-radius: 2px;
+       -webkit-border-top-left-radius: 2px;
+       border-bottom-left-radius: 2px;
+       border-top-left-radius: 2px;
+}
+
+.wp_themeSkin .mceSplitButton a.mceOpen,
+.wp_themeSkin .mceListBox a.mceOpen {
+       -webkit-border-bottom-right-radius: 2px;
+       -webkit-border-top-right-radius: 2px;
+       border-bottom-right-radius: 2px;
+       border-top-right-radius: 2px;
+}
+
+.wp_themeSkin span.mce_undo,
+.wp_themeSkin span.mce_redo,
+.wp_themeSkin span.mce_bullist,
+.wp_themeSkin span.mce_numlist,
+.wp_themeSkin span.mce_blockquote,
+.wp_themeSkin span.mce_charmap,
+.wp_themeSkin span.mce_bold,
+.wp_themeSkin span.mce_italic,
+.wp_themeSkin span.mce_underline,
+.wp_themeSkin span.mce_justifyleft,
+.wp_themeSkin span.mce_justifyright,
+.wp_themeSkin span.mce_justifycenter,
+.wp_themeSkin span.mce_justifyfull,
+.wp_themeSkin span.mce_indent,
+.wp_themeSkin span.mce_outdent,
+.wp_themeSkin span.mce_link,
+.wp_themeSkin span.mce_unlink,
+.wp_themeSkin span.mce_help,
+.wp_themeSkin span.mce_removeformat,
+.wp_themeSkin span.mce_fullscreen,
+.wp_themeSkin span.mce_wp_fullscreen,
+.wp_themeSkin span.mce_media,
+.wp_themeSkin span.mce_pastetext,
+.wp_themeSkin span.mce_pasteword,
+.wp_themeSkin span.mce_wp_help,
+.wp_themeSkin span.mce_wp_adv,
+.wp_themeSkin span.mce_wp_more,
+.wp_themeSkin span.mce_strikethrough,
+.wp_themeSkin span.mce_spellchecker,
+.wp_themeSkin span.mce_forecolor,
+.wp_themeSkin .mce_forecolorpicker,
+.wp_themeSkin .mceSplitButton .mce_spellchecker span.mce_spellchecker,
+.wp_themeSkin .mceSplitButton .mce_forecolor span.mce_forecolor,
+.wp_themeSkin .mceSplitButton span.mce_numlist,
+.wp_themeSkin .mceSplitButton span.mce_bullist {
+       background-image: url(../images/wpicons.png);
+}
+
+/* ColorSplitButton */
+.wp_themeSkin div.mceColorSplitMenu table {
+       background-color: #ebebeb;
+       border-color: #B2B2B2;
+}
+
+.wp_themeSkin .mceColorSplitMenu td {
+       padding: 2px;
+}
+
+.wp_themeSkin .mceColorSplitMenu a {
+       display: block;
+       width: 9px;
+       height: 9px;
+       overflow: hidden;
+       border-color: #B2B2B2;
+}
+
+.wp_themeSkin .mceColorSplitMenu td.mceMoreColors {
+       padding: 1px 3px 1px 1px;
+}
+
+.wp_themeSkin .mceColorSplitMenu a.mceMoreColors {
+       width: 100%;
+       height: auto;
+       text-align: center;
+       font-family: Tahoma,Verdana,Arial,Helvetica;
+       font-size: 11px;
+       line-height: 20px;
+       border-color: #fff;
+}
+
+.wp_themeSkin .mceColorSplitMenu a.mceMoreColors:hover {}
+.wp_themeSkin a.mceMoreColors:hover {}
+.wp_themeSkin .mceColorPreview {
+       margin: -5px 0 0 2px;
+       width: 16px;
+       height: 4px;
+       overflow: hidden;
+}
+
+/* Menu */
+.wp_themeSkin .mceMenu {
+       position: absolute;
+       left: 0;
+       top: 0;
+       z-index: 1000;
+       border-color: #ddd;
+}
+
+.wp_themeSkin .mceNoIcons span.mceIcon {
+       width: 0;
+}
+
+.wp_themeSkin .mceNoIcons a .mceText {
+       padding-left: 10px;
+}
+
+.wp_themeSkin .mceMenu table {
+       background-color: #ebeaeb;
+}
+
+.wp_themeSkin .mceMenu a,
+.wp_themeSkin .mceMenu span,
+.wp_themeSkin .mceMenu {
+       display: block;
+}
+
+.wp_themeSkin .mceMenu td {
+       height: 20px;overflow: hidden;
+}
+
+.wp_themeSkin .mceMenu a {
+       position: relative;
+       padding: 3px 0 4px 0;
+       text-decoration: none !important;
+}
+
+.wp_themeSkin .mceMenu .mceText {
+       position: relative;
+       display: block;
+       font-family: Tahoma,Verdana,Arial,Helvetica;
+       cursor: default;
+       margin: 0;
+       padding: 0 25px;
+       color: #000;
+}
+
+.wp_themeSkin .mceMenu span.mceText, .wp_themeSkin .mceMenu .mcePreview {
+       font-size: 12px;
+}
+
+.wp_themeSkin .mceMenu pre.mceText {
+       font-family: Monospace;
+}
+
+.wp_themeSkin .mceMenu .mceIcon {
+       position: absolute;
+       top: 0;
+       left: 0;
+       width: 22px;
+}
+
+.wp_themeSkin .mceMenu .mceMenuItemEnabled a:hover,
+.wp_themeSkin .mceMenu .mceMenuItemActive {
+       background-color: #f5f5f5;
+}
+
+.wp_themeSkin td.mceMenuItemSeparator {
+       height: 1px;
+       background-color: #aaa;
+}
+
+.wp_themeSkin .mceMenuItemTitle a {
+       border-top: 0;
+       border-right: 0;
+       border-left: 0;
+       border-bottom: 1px solid #aaa;
+       text-decoration: none !important;
+       background-color: #ccc;
+}
+
+.wp_themeSkin .mceMenuItemTitle span.mceText {
+       font-weight: bold;
+       padding-left: 4px;
+       color: #000;
+}
+
+.wp_themeSkin .mceMenuItemSelected .mceIcon {
+       background: url("../js/tinymce/themes/advanced/skins/default/img/menu_check.gif");
+       color: #888;
+}
+
+.wp_themeSkin .mceNoIcons .mceMenuItemSelected a {
+       background: url("../js/tinymce/themes/advanced/skins/default/img/menu_arrow.gif") no-repeat -6px center;
+}
+
+.wp_themeSkin .mceMenu span.mceMenuLine {
+       display: none;
+}
+
+.wp_themeSkin .mceMenuItemSub a {
+       background: url("../js/tinymce/themes/advanced/skins/default/img/menu_arrow.gif") no-repeat top right;
+}
+
+
+/* Progress,Resize */
+.wp_themeSkin .mceBlocker {
+       position: absolute;
+       left: 0;
+       top: 0;
+       z-index: 1000;
+       opacity: 0.5;
+       filter: alpha(opacity=50);
+       background: #FFF;
+}
+
+.wp_themeSkin .mceProgress {
+       position: absolute;
+       left: 0;
+       top: 0;
+       z-index: 1001;
+       background: url("../js/tinymce/themes/advanced/skins/default/img/progress.gif") no-repeat;
+       width: 32px;
+       height: 32px;
+       margin: -16px 0 0 -16px;
+}
+
+.wp_themeSkin .mcePlaceHolder {
+       border: 1px dotted gray;
+}
+
+
+/* Formats */
+.wp_themeSkin .mce_p span.mceText {}
+.wp_themeSkin .mce_address span.mceText {
+       font-style: italic;
+}
+
+.wp_themeSkin .mce_pre span.mceText {
+       font-family: monospace;
+}
+
+.wp_themeSkin .mce_h1 span.mceText {
+       font-weight: bolder;
+       font-size: 17px;
+}
+
+.wp_themeSkin .mce_h2 span.mceText {
+       font-weight: bolder;
+       font-size: 16px;
+}
+
+.wp_themeSkin .mce_h3 span.mceText {
+       font-weight: bolder;
+       font-size: 15px;
+}
+
+.wp_themeSkin .mce_h4 span.mceText {
+       font-weight: bolder;
+       font-size: 14px;
+}
+
+.wp_themeSkin .mce_h5 span.mceText {
+       font-weight: bolder;
+       font-size: 13px;
+}
+
+.wp_themeSkin .mce_h6 span.mceText {
+       font-weight: bolder;
+       font-size: 12px;
+}
+
+
+/* Theme */
+.wp_themeSkin span.mce_undo {background-position:-500px -20px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_undo,
+.wp_themeSkin .mceButtonActive span.mce_undo {background-position:-500px 0}
+
+.wp_themeSkin span.mce_redo {background-position:-480px -20px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_redo,
+.wp_themeSkin .mceButtonActive span.mce_redo {background-position:-480px 0}
+
+.wp_themeSkin span.mce_bullist {background-position:-40px -20px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_bullist,
+.wp_themeSkin .mceButtonActive span.mce_bullist,
+.wp_themeSkin .mceSplitButton:hover span.mce_bullist {background-position:-40px 0}
+
+.wp_themeSkin span.mce_numlist {background-position:-61px -20px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_numlist,
+.wp_themeSkin .mceButtonActive span.mce_numlist,
+.wp_themeSkin .mceSplitButton:hover span.mce_numlist {background-position:-61px 0}
+
+.wp_themeSkin span.mce_blockquote {background-position:-80px -20px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_blockquote,
+.wp_themeSkin .mceButtonActive span.mce_blockquote {background-position:-80px 0}
+
+.wp_themeSkin span.mce_charmap {background-position:-420px -20px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_charmap,
+.wp_themeSkin .mceButtonActive span.mce_charmap {background-position:-420px 0}
+
+.wp_themeSkin span.mce_bold {background-position:-1px -20px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_bold,
+.wp_themeSkin .mceButtonActive span.mce_bold {background-position:-1px 0}
+
+.wp_themeSkin span.mce_italic {background-position:-21px -20px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_italic,
+.wp_themeSkin .mceButtonActive span.mce_italic {background-position:-21px 0}
+
+.wp_themeSkin span.mce_underline {background-position:-280px -19px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_underline,
+.wp_themeSkin .mceButtonActive span.mce_underline {background-position:-280px 1px}
+
+.wp_themeSkin span.mce_justifyleft {background-position:-100px -19px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_justifyleft,
+.wp_themeSkin .mceButtonActive span.mce_justifyleft {background-position:-100px 1px}
+
+.wp_themeSkin span.mce_justifyright {background-position:-141px -19px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_justifyright,
+.wp_themeSkin .mceButtonActive span.mce_justifyright {background-position:-141px 1px}
+
+.wp_themeSkin span.mce_justifycenter {background-position:-120px -19px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_justifycenter,
+.wp_themeSkin .mceButtonActive span.mce_justifycenter {background-position:-120px 1px}
+
+.wp_themeSkin span.mce_justifyfull {background-position:-300px -19px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_justifyfull,
+.wp_themeSkin .mceButtonActive span.mce_justifyfull {background-position:-300px 1px}
+
+.wp_themeSkin span.mce_indent {background-position:-461px -19px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_indent,
+.wp_themeSkin .mceButtonActive span.mce_indent {background-position:-461px 1px}
+
+.wp_themeSkin span.mce_outdent {background-position:-440px -19px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_outdent,
+.wp_themeSkin .mceButtonActive span.mce_outdent {background-position:-440px 1px}
+
+.wp_themeSkin span.mce_link {background-position:-161px -20px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_link,
+.wp_themeSkin .mceButtonActive span.mce_link {background-position:-161px 0}
+
+.wp_themeSkin span.mce_unlink {background-position:-180px -20px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_unlink,
+.wp_themeSkin .mceButtonActive span.mce_unlink {background-position:-180px 0}
+
+.wp_themeSkin span.mce_help {background-position:-521px -20px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_help,
+.wp_themeSkin .mceButtonActive span.mce_help {background-position:-521px 0}
+
+.wp_themeSkin span.mce_removeformat {background-position:-381px -20px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_removeformat,
+.wp_themeSkin .mceButtonActive span.mce_removeformat {background-position:-381px 0}
+
+.wp_themeSkin span.mce_strikethrough {background-position:-540px -18px;}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_strikethrough,
+.wp_themeSkin .mceButtonActive span.mce_strikethrough {background-position:-540px 0}
+
+.wp_themeSkin .mceSplitButton .mce_forecolor span.mce_forecolor {background-position:-321px -22px}
+.wp_themeSkin .mceSplitButtonEnabled:hover span.mce_forecolor,
+.wp_themeSkin .mceSplitButtonActive span.mce_forecolor {background-position:-321px -2px}
+
+.wp_themeSkin .mce_forecolorpicker {background-position:-320px -20px}
+
+/* Plugins in WP */
+.wp_themeSkin span.mce_fullscreen {background-position:-240px -20px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_fullscreen,
+.wp_themeSkin .mceButtonActive span.mce_fullscreen {background-position:-240px 0}
+
+.wp_themeSkin span.mce_wp_fullscreen {background-position:-240px -20px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_wp_fullscreen,
+.wp_themeSkin .mceButtonActive span.mce_wp_fullscreen {background-position:-240px 0}
+
+.wp_themeSkin span.mce_media {background-position:-401px -20px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_media,
+.wp_themeSkin .mceButtonActive span.mce_media {background-position:-401px 0}
+
+.wp_themeSkin span.mce_pastetext {background-position:-340px -20px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_pastetext,
+.wp_themeSkin .mceButtonActive span.mce_pastetext {background-position:-340px 0}
+
+.wp_themeSkin span.mce_pasteword {background-position:-360px -20px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_pasteword,
+.wp_themeSkin .mceButtonActive span.mce_pasteword {background-position:-360px 0}
+
+.wp_themeSkin span.mce_spellchecker {background-position:-220px -19px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_spellchecker,
+.wp_themeSkin .mceSplitButtonEnabled:hover span.mce_spellchecker,
+.wp_themeSkin .mceButtonActive span.mce_spellchecker,
+.wp_themeSkin .mceSplitButtonActive span.mce_spellchecker {background-position:-220px 1px}
+
+.wp_themeSkin span.mce_wp_help {background-position:-521px -20px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_wp_help,
+.wp_themeSkin .mceButtonActive span.mce_wp_help {background-position:-521px 0}
+
+.wp_themeSkin span.mce_wp_adv {background-position:-260px -20px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_wp_adv,
+.wp_themeSkin .mceButtonActive span.mce_wp_adv {background-position:-260px 0}
+
+.wp_themeSkin span.mce_wp_more {background-position:-201px -20px}
+.wp_themeSkin .mceButtonEnabled:hover span.mce_wp_more,
+.wp_themeSkin .mceButtonActive span.mce_wp_more {background-position:-201px 0}
+
+/* Default icons */
+.wp_themeSkin span.mce_cleanup {background-position:-380px -20px}
+.wp_themeSkin span.mce_anchor {background-position:-200px 0}
+.wp_themeSkin span.mce_sub {background-position:-600px 0}
+.wp_themeSkin span.mce_sup {background-position:-620px 0}
+.wp_themeSkin span.mce_newdocument {background-position:-520px 0}
+.wp_themeSkin span.mce_image {background-position:-380px 0}
+.wp_themeSkin span.mce_code {background-position:-260px 0}
+.wp_themeSkin span.mce_hr {background-position:-360px 0}
+.wp_themeSkin span.mce_visualaid {background-position:-660px 0}
+.wp_themeSkin span.mce_paste {background-position:-560px 0}
+.wp_themeSkin span.mce_copy {background-position:-700px 0}
+.wp_themeSkin span.mce_cut {background-position:-680px 0}
+.wp_themeSkin .mce_backcolor span.mceAction {background-position:-760px 0}
+.wp_themeSkin .mce_backcolorpicker {background-position:-760px 0}
+
+
+/* Plugins */
+.wp_themeSkin span.mce_advhr {background-position:-0px -20px}
+.wp_themeSkin span.mce_ltr {background-position:-20px -20px}
+.wp_themeSkin span.mce_rtl {background-position:-40px -20px}
+.wp_themeSkin span.mce_emotions {background-position:-60px -20px}
+.wp_themeSkin span.mce_fullpage {background-position:-80px -20px}
+.wp_themeSkin span.mce_iespell {background-position:-120px -20px}
+.wp_themeSkin span.mce_insertdate {background-position:-140px -20px}
+.wp_themeSkin span.mce_inserttime {background-position:-160px -20px}
+.wp_themeSkin span.mce_absolute {background-position:-180px -20px}
+.wp_themeSkin span.mce_backward {background-position:-200px -20px}
+.wp_themeSkin span.mce_forward {background-position:-220px -20px}
+.wp_themeSkin span.mce_insert_layer {background-position:-240px -20px}
+.wp_themeSkin span.mce_insertlayer {background-position:-260px -20px}
+.wp_themeSkin span.mce_movebackward {background-position:-280px -20px}
+.wp_themeSkin span.mce_moveforward {background-position:-300px -20px}
+.wp_themeSkin span.mce_nonbreaking {background-position:-340px -20px}
+.wp_themeSkin span.mce_selectall {background-position:-400px -20px}
+.wp_themeSkin span.mce_preview {background-position:-420px -20px}
+.wp_themeSkin span.mce_print {background-position:-440px -20px}
+.wp_themeSkin span.mce_cancel {background-position:-460px -20px}
+.wp_themeSkin span.mce_save {background-position:-480px -20px}
+.wp_themeSkin span.mce_replace {background-position:-500px -20px}
+.wp_themeSkin span.mce_search {background-position:-520px -20px}
+.wp_themeSkin span.mce_styleprops {background-position:-560px -20px}
+.wp_themeSkin span.mce_table {background-position:-580px -20px}
+.wp_themeSkin span.mce_cell_props {background-position:-600px -20px}
+.wp_themeSkin span.mce_delete_table {background-position:-620px -20px}
+.wp_themeSkin span.mce_delete_col {background-position:-640px -20px}
+.wp_themeSkin span.mce_delete_row {background-position:-660px -20px}
+.wp_themeSkin span.mce_col_after {background-position:-680px -20px}
+.wp_themeSkin span.mce_col_before {background-position:-700px -20px}
+.wp_themeSkin span.mce_row_after {background-position:-720px -20px}
+.wp_themeSkin span.mce_row_before {background-position:-740px -20px}
+.wp_themeSkin span.mce_merge_cells {background-position:-760px -20px}
+.wp_themeSkin span.mce_table_props {background-position:-980px -20px}
+.wp_themeSkin span.mce_row_props {background-position:-780px -20px}
+.wp_themeSkin span.mce_split_cells {background-position:-800px -20px}
+.wp_themeSkin span.mce_template {background-position:-820px -20px}
+.wp_themeSkin span.mce_visualchars {background-position:-840px -20px}
+.wp_themeSkin span.mce_abbr {background-position:-860px -20px}
+.wp_themeSkin span.mce_acronym {background-position:-880px -20px}
+.wp_themeSkin span.mce_attribs {background-position:-900px -20px}
+.wp_themeSkin span.mce_cite {background-position:-920px -20px}
+.wp_themeSkin span.mce_del {background-position:-940px -20px}
+.wp_themeSkin span.mce_ins {background-position:-960px -20px}
+.wp_themeSkin span.mce_pagebreak {background-position:0 -40px}
+
+
+/* border */
+.wp_themeSkin .mceExternalToolbar,
+.wp_themeSkin .mceButton,
+.wp_themeSkin a.mceButtonEnabled:hover,
+.wp_themeSkin a.mceButtonActive,
+.wp_themeSkin a.mceButtonSelected,
+.wp_themeSkin .mceListBox .mceText,
+.wp_themeSkin .mceListBox .mceOpen,
+.wp_themeSkin table.mceListBoxEnabled:hover .mceText,
+.wp_themeSkin .mceListBoxHover .mceText,
+.wp_themeSkin .mceListBoxSelected .mceText,
+.wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,
+.wp_themeSkin .mceListBoxHover .mceOpen,
+.wp_themeSkin .mceListBoxSelected .mceOpen,
+.wp_themeSkin select.mceListBox,
+.wp_themeSkin .mceSplitButton a.mceAction,
+.wp_themeSkin .mceSplitButton a.mceOpen,
+.wp_themeSkin .mceSplitButton a.mceOpen:hover,
+.wp_themeSkin .mceSplitButtonSelected a.mceOpen,
+.wp_themeSkin table.mceSplitButtonEnabled:hover a.mceAction,
+.wp_themeSkin .mceSplitButton a.mceAction:hover,
+.wp_themeSkin div.mceColorSplitMenu table,
+.wp_themeSkin .mceColorSplitMenu a,
+.wp_themeSkin .mceColorSplitMenu a.mceMoreColors,
+.wp_themeSkin .mceColorSplitMenu a.mceMoreColors:hover,
+.wp_themeSkin a.mceMoreColors:hover,
+.wp_themeSkin .mceMenu {
+       border-style: solid;
+       border-width: 1px;
+}
+
+.wp_themeSkin iframe {
+       background: transparent;
+}
+
+.wp_themeSkin .mceButton,
+.wp_themeSkin .mceListBox .mceText,
+.wp_themeSkin .mceListBox .mceOpen {
+       border-color: #ccc;
+       background-color: #eee; /* Fallback */
+       background-image: -ms-linear-gradient(bottom, #ddd, #fff); /* IE10 */
+       background-image: -moz-linear-gradient(bottom, #ddd, #fff); /* Firefox */
+       background-image: -o-linear-gradient(bottom, #ddd, #fff); /* Opera */
+       background-image: -webkit-gradient(linear, left bottom, left top, from(#ddd), to(#fff)); /* old Webkit */
+       background-image: -webkit-linear-gradient(bottom, #ddd, #fff); /* new Webkit */
+       background-image: linear-gradient(bottom, #ddd, #fff); /* proposed W3C Markup */
+}
+
+.wp_themeSkin a.mceButtonEnabled:hover {
+       border-color: #a0a0a0;
+       background: #ddd; /* Fallback */
+       background-image: -ms-linear-gradient(bottom, #ccc, #fff); /* IE10 */
+       background-image: -moz-linear-gradient(bottom, #ccc, #fff); /* Firefox */
+       background-image: -o-linear-gradient(bottom, #ccc, #fff); /* Opera */
+       background-image: -webkit-gradient(linear, left bottom, left top, from(#ccc), to(#fff)); /* old Webkit */
+       background-image: -webkit-linear-gradient(bottom, #ccc, #fff); /* new Webkit */
+       background-image: linear-gradient(bottom, #ccc, #fff); /* proposed W3C Markup */
+}
+
+.wp_themeSkin a.mceButton:active,
+.wp_themeSkin a.mceButtonEnabled:active,
+.wp_themeSkin a.mceButtonSelected:active,
+.wp_themeSkin a.mceButtonActive,
+.wp_themeSkin a.mceButtonActive:active,
+.wp_themeSkin a.mceButtonActive:hover {
+       background-color: #ddd; /* Fallback */
+       background-image: -ms-linear-gradient(bottom, #eee, #bbb); /* IE10 */
+       background-image: -moz-linear-gradient(bottom, #eee, #bbb); /* Firefox */
+       background-image: -o-linear-gradient(bottom, #eee, #bbb); /* Opera */
+       background-image: -webkit-gradient(linear, left bottom, left top, from(#eee), to(#bbb)); /* old Webkit */
+       background-image: -webkit-linear-gradient(bottom, #eee, #bbb); /* new Webkit */
+       background-image: linear-gradient(bottom, #eee, #bbb); /* proposed W3C Markup */
+       border-color: #909090;
+}
+
+.wp_themeSkin .mceButtonDisabled {
+       border-color: #ccc !important;
+}
+
+.wp_themeSkin .mceListBox .mceOpen {
+       border-left: 0 !important;
+}
+
+.wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,
+.wp_themeSkin .mceListBoxHover .mceOpen,
+.wp_themeSkin .mceListBoxHover:active .mceOpen,
+.wp_themeSkin .mceListBoxSelected .mceOpen,
+.wp_themeSkin .mceListBoxSelected .mceText,
+.wp_themeSkin table.mceListBoxEnabled:active .mceText {
+       background: #ccc;
+       border-color: #999;
+}
+
+.wp_themeSkin table.mceListBoxEnabled:hover .mceText,
+.wp_themeSkin .mceListBoxHover .mceText,
+.wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,
+.wp_themeSkin .mceListBoxHover .mceOpen {
+       border-color: #909090;
+       background-color: #eee; /* Fallback */
+       background-image: -ms-linear-gradient(bottom, #ccc, #fff); /* IE10 */
+       background-image: -moz-linear-gradient(bottom, #ccc, #fff); /* Firefox */
+       background-image: -o-linear-gradient(bottom, #ccc, #fff); /* Opera */
+       background-image: -webkit-gradient(linear, left bottom, left top, from(#ccc), to(#fff)); /* old Webkit */
+       background-image: -webkit-linear-gradient(bottom, #ccc, #fff); /* new Webkit */
+       background-image: linear-gradient(bottom, #ccc, #fff); /* proposed W3C Markup */
+}
+
+/* SplitButton */
+.wp_themeSkin .mceSplitButton a.mceAction,
+.wp_themeSkin .mceSplitButton a.mceOpen {
+       border-color: #ccc;
+}
+
+.wp_themeSkin .mceSplitButton a.mceOpen:hover,
+.wp_themeSkin .mceSplitButtonSelected a.mceOpen,
+.wp_themeSkin table.mceSplitButtonEnabled:hover a.mceAction,
+.wp_themeSkin .mceSplitButton a.mceAction:hover {
+       border-color: #909090;
+}
+
+
+.wp_themeSkin table.mceSplitButton td {
+       background-color: #eee; /* Fallback */
+       background-image: -ms-linear-gradient(bottom, #ddd, #fff); /* IE10 */
+       background-image: -moz-linear-gradient(bottom, #ddd, #fff); /* Firefox */
+       background-image: -o-linear-gradient(bottom, #ddd, #fff); /* Opera */
+       background-image: -webkit-gradient(linear, left bottom, left top, from(#ddd), to(#fff)); /* old Webkit */
+       background-image: -webkit-linear-gradient(bottom, #ddd, #fff); /* new Webkit */
+       background-image: linear-gradient(bottom, #ddd, #fff); /* proposed W3C Markup */
+}
+
+.wp_themeSkin table.mceSplitButton:hover td {
+       background-image: -ms-linear-gradient(bottom, #ccc, #fff); /* IE10 */
+       background-image: -moz-linear-gradient(bottom, #ccc, #fff); /* Firefox */
+       background-image: -o-linear-gradient(bottom, #ccc, #fff); /* Opera */
+       background-image: -webkit-gradient(linear, left bottom, left top, from(#ccc), to(#fff)); /* old Webkit */
+       background-image: -webkit-linear-gradient(bottom, #ccc, #fff); /* new Webkit */
+       background-image: linear-gradient(bottom, #ccc, #fff); /* proposed W3C Markup */
+}
+
+.wp_themeSkin .mceSplitButtonActive {
+       background-color: #B2B2B2;
+}
+
+.wp_themeSkin .mceColorSplitMenu a.mceMoreColors:hover {
+       border-color: #0A246A;
+       background-color: #B6BDD2;
+}
+
+.wp_themeSkin a.mceMoreColors:hover {
+       border-color: #0A246A;
+}
+
+.wp_themeSkin .mceMenuItemDisabled .mceText {
+       color: #888;
+}
+
+#mceModalBlocker {
+       background: #000;
+}
+
+/* WP specific */
+.wp-editor-area {
+       font-family: Consolas, Monaco, monospace;
+       padding: 10px;
+       line-height: 150%;
+       border: 0 none;
+       outline: none;
+       resize: vertical;
+       -moz-box-sizing: border-box;
+       -webkit-box-sizing: border-box;
+       box-sizing: border-box;
+}
+
+.wp-editor-tools {
+       height: 30px;
+       padding: 0 10px;
+}
+
+.wp-editor-container {
+    border-width: 1px;
+       border-style: solid;
+       -webkit-border-top-right-radius: 3px;
+       -webkit-border-top-left-radius: 3px;
+       border-top-right-radius: 3px;
+       border-top-left-radius: 3px;
+       border-color: #ccc #ccc #dfdfdf;
+}
+
+.wp-editor-container textarea.wp-editor-area {
+       width: 99.9%;
+}
+
+.quicktags-toolbar,
+.wp_themeSkin tr.mceFirst td.mceToolbar {
+       border-bottom: 1px solid #ccc;
+       background-color: #e9e9e9; /* Fallback */
+       background-image: -ms-linear-gradient(bottom, #ddd, #e9e9e9); /* IE10 */
+       background-image: -moz-linear-gradient(bottom, #ddd, #e9e9e9); /* Firefox */
+       background-image: -o-linear-gradient(bottom, #ddd, #e9e9e9); /* Opera */
+       background-image: -webkit-linear-gradient(bottom, #ddd, #e9e9e9); /* new Webkit */
+       background-image: linear-gradient(bottom, #ddd, #e9e9e9); /* proposed W3C Markup */
+}
+
+.wp-switch-editor {
+       height: 18px;
+    font: 13px/18px Arial,Helvetica,sans-serif normal;
+       margin: 5px 5px 0 0;
+       padding: 4px 5px 2px;
+       float: right;
+       cursor: pointer;
+       border-width: 1px;
+       border-style: solid;
+       -webkit-border-top-right-radius: 3px;
+       -webkit-border-top-left-radius: 3px;
+       border-top-right-radius: 3px;
+       border-top-left-radius: 3px;
+       background-color: #f1f1f1;
+       border-color: #dfdfdf #dfdfdf #ccc;
+       color: #999;
+}
+
+html[dir="rtl"] .wp-switch-editor {
+       float: left;
+}
+
+.wp-switch-editor:hover {
+       text-decoration: none !important;
+}
+
+.js .tmce-active .wp-editor-area {
+       color: white;
+}
+
+.tmce-active .quicktags-toolbar {
+        display: none;
+}
+
+.tmce-active .switch-tmce,
+.html-active .switch-html {
+       border-color: #ccc #ccc #e9e9e9;
+       background-color: #e9e9e9;
+       color: #333;
+}
+
+.wp-media-buttons {
+       line-height: 1;
+    padding: 9px 0 0;
+}
+
+.wp-media-buttons a {
+       text-decoration: none;
+       color: #333;
+       font-size: 12px;
+       vertical-align: bottom;
+}
+
+.wp-media-buttons img {
+       padding: 0 4px;
+       vertical-align: middle;
+}
+
+.quicktags-toolbar {
+       border-bottom-style: solid;
+       border-bottom-width: 1px;
+       -webkit-border-top-right-radius: 3px;
+       -webkit-border-top-left-radius: 3px;
+       border-top-right-radius: 3px;
+       border-top-left-radius: 3px;
+       padding: 2px 8px 0;
+       min-height: 30px;
+}
+
+.quicktags-toolbar > div {
+       padding: 2px 4px 0;
+}
+
+.quicktags-toolbar input {
+       margin: 2px 1px 4px;
+       line-height: 18px;
+       display: inline-block;
+       min-width: 26px;
+       padding: 2px 4px;
+       font: 12px/18px Arial,Helvetica,sans-serif normal;
+       color: #464646;
+       border: 1px solid #C3C3C3;
+       -webkit-border-radius: 3px;
+       border-radius: 3px;
+       background-color: #eee;
+       background-image: -ms-linear-gradient(bottom, #e3e3e3, #fff);
+       background-image: -moz-linear-gradient(bottom, #e3e3e3, #fff);
+       background-image: -o-linear-gradient(bottom, #e3e3e3, #fff);
+       background-image: -webkit-linear-gradient(bottom, #e3e3e3, #fff);
+       background-image: linear-gradient(bottom, #e3e3e3, #fff);
+}
+
+.quicktags-toolbar input:hover {
+       border-color: #aaa;
+       background: #ddd;
+}
+
+.quicktags-toolbar input[value="link"] {
+       text-decoration: underline;
+}
+
+.quicktags-toolbar input[value="del"] {
+       text-decoration: line-through;
+}
+
+.quicktags-toolbar input[value="i"] {
+       font-style: italic;
+}
+
+.quicktags-toolbar input[value="b"] {
+       font-weight: bold;
+}
+
+#wp_editbtns,
+#wp_gallerybtns {
+       padding: 2px;
+       position: absolute;
+       display: none;
+       z-index: 999998;
+}
+
+#wp_editimgbtn,
+#wp_delimgbtn,
+#wp_editgallery,
+#wp_delgallery {
+       border-color: #999;
+       background-color: #eee;
+       margin: 2px;
+       padding: 2px;
+       border-width: 1px;
+       border-style: solid;
+       -webkit-border-radius: 3px;
+       border-radius: 3px;
+}
+
+#wp_editimgbtn:hover,
+#wp_delimgbtn:hover,
+#wp_editgallery:hover,
+#wp_delgallery:hover {
+       border-color: #555;
+       background-color: #ccc;
+}
+
+
+/*------------------------------------------------------------------------------
+ wp-link
+------------------------------------------------------------------------------*/
+
+#wp-link {
+       background-color: #F5F5F5;
+       line-height: 1.4em;
+       font-size: 12px;
+}
+
+#wp-link ol,
+#wp-link ul {
+       list-style: none;
+       margin: 0;
+       padding: 0;
+}
+
+#wp-link input[type="text"] {
+       -webkit-box-sizing: border-box;
+}
+
+#wp-link input[type="text"],
+#wp-link textarea {
+       border-width: 1px;
+       border-style: solid;
+       -webkit-border-radius: 4px;
+       border-radius: 4px;
+       font-size: 12px;
+       margin: 1px;
+       padding: 3px;
+}
+
+#wp-link #link-options {
+       padding: 10px 0 14px;
+       border-bottom: 1px solid #dfdfdf;
+       margin: 0 6px 14px;
+}
+
+#wp-link p.howto {
+       margin: 3px;
+}
+
+#wp-link #internal-toggle {
+       display: inline-block;
+       cursor: pointer;
+       padding-left: 18px;
+}
+
+#wp-link .toggle-arrow {
+       background: transparent url( '../images/toggle-arrow.png' ) top left no-repeat;
+       height: 23px;
+       line-height: 23px;
+}
+
+#wp-link .toggle-arrow-active {
+       background-position: center left;
+}
+
+#wp-link label input[type="text"] {
+       width: 360px;
+       margin-top: 5px;
+}
+
+#wp-link label span {
+       display: inline-block;
+       width: 80px;
+       text-align: right;
+       padding-right: 5px;
+}
+
+#wp-link .link-search-wrapper {
+       margin: 5px 6px 9px;
+       display: block;
+       overflow: hidden;
+}
+
+#wp-link .link-search-wrapper span {
+       float: left;
+       margin-top: 6px;
+}
+
+#wp-link .link-search-wrapper input[type="text"] {
+       float: left;
+       width: 220px;
+}
+
+#wp-link .link-search-wrapper img.waiting {
+       margin: 8px 1px 0 4px;
+       float: left;
+       display: none;
+}
+
+#wp-link .link-target {
+       width: auto;
+       padding: 3px 0 0;
+       margin: 0 0 0 87px;
+       font-size: 11px;
+}
+
+#wp-link .query-results {
+       border: 1px #dfdfdf solid;
+       margin: 0 5px 5px;
+       background: #fff;
+       height: 185px;
+       overflow: auto;
+       position: relative;
+}
+
+#wp-link li,
+#wp-link .query-notice {
+       clear: both;
+       margin-bottom: 0;
+       border-bottom: 1px solid #f1f1f1;
+       color: #333;
+       padding: 4px 6px;
+       cursor: pointer;
+       position: relative;
+}
+
+#wp-link li:hover {
+       background: #eaf2fa;
+       color: #151515;
+}
+
+#wp-link li.unselectable {
+       border-bottom: 1px solid #dfdfdf;
+}
+
+#wp-link li.unselectable:hover {
+       background: #fff;
+       cursor: auto;
+       color: #333;
+}
+
+#wp-link li.selected {
+       background: #ddd;
+       color: #333;
+}
+
+#wp-link li.selected .item-title {
+       font-weight: bold;
+}
+
+#wp-link .item-title {
+       display: inline-block;
+       width: 80%;
+}
+
+#wp-link .item-info {
+       text-transform: uppercase;
+       color: #666;
+       font-size: 11px;
+       position: absolute;
+       right: 5px;
+       top: 4px;
+       bottom: 0;
+}
+
+#wp-link #search-results {
+       display: none;
+}
+
+#wp-link  #search-panel {
+       float: left;
+       width: 100%;
+}
+
+#wp-link .river-waiting {
+       display: none;
+       padding: 10px 0;
+}
+
+#wp-link .river-waiting img.waiting {
+       margin: 0 auto;
+       display: block;
+}
+
+#wp-link .submitbox {
+       padding: 5px 10px;
+       font-size: 11px;
+       overflow: auto;
+       height: 29px;
+}
+
+#wp-link-cancel {
+       line-height: 25px;
+       float: left;
+}
+
+#wp-link-update {
+       line-height: 23px;
+       float: right;
+}
+
+
+/*
+ * Based on:
+ * jQuery UI CSS Framework @VERSION
+ *
+ * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Theming/API
+ */
+
+/* Layout helpers
+----------------------------------*/
+.ui-helper-hidden { display: none; }
+.ui-helper-hidden-accessible { position: absolute; left: -99999999px; }
+.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; }
+.ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
+.ui-helper-clearfix { display: inline-block; }
+/* required comment for clearfix to work in Opera \*/
+* html .ui-helper-clearfix { height:1%; }
+.ui-helper-clearfix { display:block; }
+/* end clearfix */
+.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); }
+
+
+/* Interaction Cues
+----------------------------------*/
+.ui-state-disabled { cursor: default !important; }
+
+
+/* Icons
+----------------------------------*/
+
+/* states and images */
+.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; }
+
+
+/* Misc visuals
+----------------------------------*/
+
+/* Overlays */
+.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
+
+/*
+ * jQuery UI Resizable
+ *
+ * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Resizable#theming
+ */
+.ui-resizable { position: relative;}
+.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; display: block;}
+.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; }
+.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0; }
+.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0; }
+.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0; height: 100%; }
+.ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0; height: 100%; }
+.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; }
+.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; }
+.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; }
+.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;}
+
+/*
+ * jQuery UI Dialog
+ *
+ * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Dialog#theming
+ */
+.wp-dialog { position: absolute; width: 300px; overflow: hidden; }
+.wp-dialog .ui-dialog-titlebar { position: relative; }
+.wp-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; }
+.wp-dialog .ui-dialog-content { position: relative; border: 0; padding: 0; background: none; overflow: auto; zoom: 1; }
+.wp-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; }
+.wp-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { float: right; }
+.wp-dialog .ui-dialog-buttonpane button { margin: .5em .4em .5em 0; cursor: pointer; }
+.wp-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; }
+.ui-draggable .ui-dialog-titlebar { cursor: move; }
+
+
+
+/* WP jQuery Dialog Theme */
+.wp-dialog {
+       border: 1px solid #999;
+       -moz-box-shadow: 0px 0px 16px rgba( 0,0,0,0.3 );
+       -webkit-box-shadow: 0px 0px 16px rgba( 0,0,0,0.3 );
+       box-shadow: 0px 0px 16px rgba( 0,0,0,0.3 );
+}
+
+.wp-dialog .ui-dialog-title {
+       display: block;
+       text-align: center;
+       padding: 1px 0 2px;
+}
+
+.wp-dialog .ui-dialog-titlebar {
+       padding: 0 1em;
+       background-color: #444;
+       font-weight: bold;
+       font-size: 11px;
+       line-height: 18px;
+       color: #e5e5e5;
+}
+
+.wp-dialog {
+       background-color: fff;
+       -webkit-border-top-left-radius: 4px;
+       -webkit-border-top-right-radius: 4px;
+       border-top-left-radius: 4px;
+       border-top-right-radius: 4px;
+}
+
+.wp-dialog .ui-dialog-titlebar {
+       -webkit-border-top-left-radius: 3px;
+       -webkit-border-top-right-radius: 3px;
+       border-top-left-radius: 3px;
+       border-top-right-radius: 3px;
+}
+
+.wp-dialog .ui-dialog-titlebar-close {
+       position: absolute;
+       width: 29px;
+       height: 16px;
+       top: 2px;
+       right: 6px;
+       background: url('../js/tinymce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif') no-repeat -87px -16px;
+       padding: 0;
+}
+
+.wp-dialog .ui-dialog-titlebar-close:hover,
+.wp-dialog .ui-dialog-titlebar-close:focus {
+       background-position: -87px -32px;
+}
+
+.ui-widget-overlay {
+       background-color: #000;
+       opacity: 0.6;
+       filter: alpha(opacity=60);
+}
+
+/*
+RTL
+*/
+.rtl #wp-link #internal-toggle {
+       padding-right: 18px;
+       padding-left: 0;
+}
+
+.rtl #wp-link label span {
+       text-align: left;
+       padding-left: 5px;
+       padding-right: 0;
+}
+
+.rtl #wp-link .link-search-wrapper span {
+       float: right;
+}
+
+.rtl #wp-link .link-search-wrapper input[type="text"] {
+       float: right;
+}
+
+.rtl #wp-link .link-search-wrapper img.waiting {
+       margin: 8px 4px 0 1px;
+       float: right;
+}
+
+.rtl #wp-link .link-target {
+       margin: 0 87px 0 0;
+}
+
+.rtl #wp-link .item-info {
+       left: 5px;
+       right: auto;
+       top: 4px;
+       bottom: 0;
+}
+
+.rtl #wp-link #search-panel {
+       float: right;
+}
+
+.rtl #wp-link-cancel {
+       float: right;
+}
+
+.rtl #wp-link-update {
+       float: left;
+}
+
+.rtl #wp-link .toggle-arrow {
+       background-position: top right;
+}
+
+.rtl #wp-link .toggle-arrow-active {
+       background-position: center right;
+}
+
+.rtl .wp_themeSkin .mceListBox .mceText {
+       text-align: right;
+}
+
+.rtl .wp_themeSkin .mceNoIcons a .mceText {
+       padding-right: 10px;
+       padding-left: 25px;
+}
+
+.rtl .mceListBoxMenu.mceNoIcons {
+       margin-left: -14px;
+}
+
+.clearlooks2 .mceFocus .mceTop .mceLeft {
+       background: #444444;
+       border-left: 1px solid #999;
+       border-top: 1px solid #999;
+       -webkit-border-top-left-radius: 3px;
+       border-top-left-radius: 3px;
+}
+
+.clearlooks2 .mceFocus .mceTop .mceRight {
+       background: #444444;
+       border-right: 1px solid #999;
+       border-top: 1px solid #999;
+       -webkit-border-top-right-radius: 3px;
+       border-top-right-radius: 3px;
+}
+
+.clearlooks2 .mceMiddle .mceLeft {
+       background: #f1f1f1;
+       border-left: 1px solid #999;
+}
+
+.clearlooks2 .mceMiddle .mceRight {
+       background: #f1f1f1;
+       border-right: 1px solid #999;
+}
+
+.clearlooks2 .mceBottom {
+       background: #f1f1f1;
+       border-bottom: 1px solid #999;
+}
+
+.clearlooks2 .mceBottom .mceLeft {
+       background: #f1f1f1;
+       border-bottom: 1px solid #999;
+       border-left: 1px solid #999;
+}
+
+.clearlooks2 .mceBottom .mceCenter {
+       background: #f1f1f1;
+       border-bottom: 1px solid #999;
+}
+
+.clearlooks2 .mceBottom .mceRight {
+       background: #f1f1f1;
+       border-bottom: 1px solid #999;
+       border-right: 1px solid #999;
+}
+
+.clearlooks2 .mceFocus .mceTop span {
+       color: #e5e5e5;
+}
+
index fa51cfbdc28ae11fa48b9cf40af4673614933ca1..e9639244ed8f412988fa61b9a4cb3dc5fef2a65b 100644 (file)
@@ -1 +1 @@
-.ui-helper-hidden{display:none;}.ui-helper-hidden-accessible{position:absolute;left:-99999999px;}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none;}.ui-helper-clearfix:after{content:".";display:block;height:0;clear:both;visibility:hidden;}.ui-helper-clearfix{display:inline-block;}/* required comment for clearfix to work in Opera \*/ * html .ui-helper-clearfix{height:1%;}.ui-helper-clearfix{display:block;}/* end clearfix */ .ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0);}.ui-state-disabled{cursor:default!important;}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat;}.ui-widget-overlay{position:absolute;top:0;left:0;width:100%;height:100%;}.ui-resizable{position:relative;}.ui-resizable-handle{position:absolute;font-size:.1px;z-index:99999;display:block;}.ui-resizable-disabled .ui-resizable-handle,.ui-resizable-autohide .ui-resizable-handle{display:none;}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0;}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0;}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%;}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%;}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px;}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px;}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px;}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px;}.wp-dialog{position:absolute;width:300px;overflow:hidden;}.wp-dialog .ui-dialog-titlebar{position:relative;}.wp-dialog .ui-dialog-titlebar-close span{display:block;margin:1px;}.wp-dialog .ui-dialog-content{position:relative;border:0;padding:0;background:none;overflow:auto;zoom:1;}.wp-dialog .ui-dialog-buttonpane{text-align:left;border-width:1px 0 0 0;background-image:none;margin:.5em 0 0 0;padding:.3em 1em .5em .4em;}.wp-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:right;}.wp-dialog .ui-dialog-buttonpane button{margin:.5em .4em .5em 0;cursor:pointer;}.wp-dialog .ui-resizable-se{width:14px;height:14px;right:3px;bottom:3px;}.ui-draggable .ui-dialog-titlebar{cursor:move;}.wp-dialog{border:1px solid #999;-moz-box-shadow:0 0 16px rgba(0,0,0,0.3);-webkit-box-shadow:0 0 16px rgba(0,0,0,0.3);box-shadow:0 0 16px rgba(0,0,0,0.3);}.wp-dialog .ui-dialog-title{display:block;text-align:center;padding:1px 0 2px;}.wp-dialog .ui-dialog-titlebar{padding:0 1em;background-color:#444;font-weight:bold;font-size:11px;line-height:18px;color:#e5e5e5;}.wp-dialog{-moz-border-radius-topleft:4px;-webkit-border-top-left-radius:4px;-khtml-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topright:4px;-webkit-border-top-right-radius:4px;-khtml-border-top-right-radius:4px;border-top-right-radius:4px;}.wp-dialog .ui-dialog-titlebar{-moz-border-radius-topleft:3px;-webkit-border-top-left-radius:3px;-khtml-border-top-left-radius:3px;border-top-left-radius:3px;-moz-border-radius-topright:3px;-webkit-border-top-right-radius:3px;-khtml-border-top-right-radius:3px;border-top-right-radius:3px;}.wp-dialog .ui-dialog-titlebar-close{position:absolute;width:29px;height:16px;top:2px;right:6px;background:url('../js/tinymce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif') no-repeat -87px -16px;padding:0;}.wp-dialog .ui-dialog-titlebar-close:hover,.wp-dialog .ui-dialog-titlebar-close:focus{background-position:-87px -32px;}.ui-widget-overlay{background-color:#000;opacity:.6;filter:alpha(opacity=60);}
\ No newline at end of file
+.ui-helper-hidden{display:none;}.ui-helper-hidden-accessible{position:absolute;left:-99999999px;}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none;}.ui-helper-clearfix:after{content:".";display:block;height:0;clear:both;visibility:hidden;}.ui-helper-clearfix{display:inline-block;}/* required comment for clearfix to work in Opera \*/ * html .ui-helper-clearfix{height:1%;}.ui-helper-clearfix{display:block;}/* end clearfix */ .ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0);}.ui-state-disabled{cursor:default!important;}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat;}.ui-widget-overlay{position:absolute;top:0;left:0;width:100%;height:100%;}.ui-resizable{position:relative;}.ui-resizable-handle{position:absolute;font-size:.1px;z-index:99999;display:block;}.ui-resizable-disabled .ui-resizable-handle,.ui-resizable-autohide .ui-resizable-handle{display:none;}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0;}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0;}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%;}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%;}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px;}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px;}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px;}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px;}.wp-dialog{position:absolute;width:300px;overflow:hidden;}.wp-dialog .ui-dialog-titlebar{position:relative;}.wp-dialog .ui-dialog-titlebar-close span{display:block;margin:1px;}.wp-dialog .ui-dialog-content{position:relative;border:0;padding:0;background:none;overflow:auto;zoom:1;}.wp-dialog .ui-dialog-buttonpane{text-align:left;border-width:1px 0 0 0;background-image:none;margin:.5em 0 0 0;padding:.3em 1em .5em .4em;}.wp-dialog .ui-dialog-buttonpane .ui-dialog-buttonset{float:right;}.wp-dialog .ui-dialog-buttonpane button{margin:.5em .4em .5em 0;cursor:pointer;}.wp-dialog .ui-resizable-se{width:14px;height:14px;right:3px;bottom:3px;}.ui-draggable .ui-dialog-titlebar{cursor:move;}.wp-dialog{border:1px solid #999;-moz-box-shadow:0 0 16px rgba(0,0,0,0.3);-webkit-box-shadow:0 0 16px rgba(0,0,0,0.3);box-shadow:0 0 16px rgba(0,0,0,0.3);}.wp-dialog .ui-dialog-title{display:block;text-align:center;padding:1px 0 2px;}.wp-dialog .ui-dialog-titlebar{padding:0 1em;background-color:#444;font-weight:bold;font-size:11px;line-height:18px;color:#e5e5e5;}.wp-dialog{background-color:#f5f5f5;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-webkit-border-top-right-radius:4px;border-top-right-radius:4px;}.wp-dialog .ui-dialog-titlebar{-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-webkit-border-top-right-radius:3px;border-top-right-radius:3px;}.wp-dialog .ui-dialog-titlebar-close{position:absolute;width:29px;height:16px;top:2px;right:6px;background:url('../js/tinymce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif') no-repeat -87px -16px;padding:0;}.wp-dialog .ui-dialog-titlebar-close:hover,.wp-dialog .ui-dialog-titlebar-close:focus{background-position:-87px -32px;}.ui-widget-overlay{background-color:#000;opacity:.6;filter:alpha(opacity=60);}
\ No newline at end of file
index b5a0675b6540c005e204bd1452fd95c3eb6f748e..dc582f0bdd6992698fcf0a80d74b4853940ad651 100644 (file)
        -webkit-box-shadow: 0px 0px 16px rgba( 0,0,0,0.3 );
        box-shadow: 0px 0px 16px rgba( 0,0,0,0.3 );
 }
        -webkit-box-shadow: 0px 0px 16px rgba( 0,0,0,0.3 );
        box-shadow: 0px 0px 16px rgba( 0,0,0,0.3 );
 }
+
 .wp-dialog .ui-dialog-title {
        display: block;
        text-align: center;
        padding: 1px 0 2px;
 }
 .wp-dialog .ui-dialog-title {
        display: block;
        text-align: center;
        padding: 1px 0 2px;
 }
+
 .wp-dialog .ui-dialog-titlebar {
        padding: 0 1em;
        background-color: #444;
 .wp-dialog .ui-dialog-titlebar {
        padding: 0 1em;
        background-color: #444;
        line-height: 18px;
        color: #e5e5e5;
 }
        line-height: 18px;
        color: #e5e5e5;
 }
+
 .wp-dialog {
 .wp-dialog {
-       -moz-border-radius-topleft: 4px;
+       background-color: #f5f5f5;
        -webkit-border-top-left-radius: 4px;
        -webkit-border-top-left-radius: 4px;
-       -khtml-border-top-left-radius: 4px;
        border-top-left-radius: 4px;
        border-top-left-radius: 4px;
-       -moz-border-radius-topright: 4px;
        -webkit-border-top-right-radius: 4px;
        -webkit-border-top-right-radius: 4px;
-       -khtml-border-top-right-radius: 4px;
        border-top-right-radius: 4px;
 }
        border-top-right-radius: 4px;
 }
+
 .wp-dialog .ui-dialog-titlebar {
 .wp-dialog .ui-dialog-titlebar {
-       -moz-border-radius-topleft: 3px;
        -webkit-border-top-left-radius: 3px;
        -webkit-border-top-left-radius: 3px;
-       -khtml-border-top-left-radius: 3px;
        border-top-left-radius: 3px;
        border-top-left-radius: 3px;
-       -moz-border-radius-topright: 3px;
        -webkit-border-top-right-radius: 3px;
        -webkit-border-top-right-radius: 3px;
-       -khtml-border-top-right-radius: 3px;
        border-top-right-radius: 3px;
 }
 
        border-top-right-radius: 3px;
 }
 
        background: url('../js/tinymce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif') no-repeat -87px -16px;
        padding: 0;
 }
        background: url('../js/tinymce/plugins/inlinepopups/skins/clearlooks2/img/buttons.gif') no-repeat -87px -16px;
        padding: 0;
 }
+
 .wp-dialog .ui-dialog-titlebar-close:hover,
 .wp-dialog .ui-dialog-titlebar-close:focus {
        background-position: -87px -32px;
 }
 .wp-dialog .ui-dialog-titlebar-close:hover,
 .wp-dialog .ui-dialog-titlebar-close:focus {
        background-position: -87px -32px;
 }
+
 .ui-widget-overlay {
        background-color: #000;
        opacity: 0.6;
        filter: alpha(opacity=60);
 .ui-widget-overlay {
        background-color: #000;
        opacity: 0.6;
        filter: alpha(opacity=60);
-}
\ No newline at end of file
+}
diff --git a/wp-includes/css/wp-pointer.css b/wp-includes/css/wp-pointer.css
new file mode 100644 (file)
index 0000000..4650ffe
--- /dev/null
@@ -0,0 +1 @@
+.wp-pointer-content{padding:0 0 10px;position:relative;font-size:13px;background:#fff;border-style:solid;border-width:1px;border-color:#dfdfdf;border-color:rgba(0,0,0,.125);-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 2px 4px rgba(0,0,0,.19);-moz-box-shadow:0 2px 4px rgba(0,0,0,.19);box-shadow:0 2px 4px rgba(0,0,0,.19);}.wp-pointer-content h3{position:relative;margin:0 0 5px;padding:15px 18px 14px 60px;line-height:1.4em;font-size:14px;color:#fff;border-radius:3px 3px 0 0;text-shadow:0 -1px 0 rgba(0,0,0,0.3);background-color:#8cc1e9;background-image:-webkit-linear-gradient(bottom,#72a7cf 0,#8cc1e9 100%);background-image:-moz-linear-gradient(bottom,#72a7cf 0,#8cc1e9 100%);background-image:-ms-linear-gradient(bottom,#72a7cf 0,#8cc1e9 100%);background-image:-o-linear-gradient(bottom,#72a7cf 0,#8cc1e9 100%);background-image:linear-gradient(bottom,#72a7cf 0,#8cc1e9 100%);}.wp-pointer-content h3:before{position:absolute;top:0;left:15px;content:' ';width:36px;height:100%;background:url('../images/icon-pointer-flag.png') 0 50% no-repeat;}.wp-pointer-content p{padding:0 15px;}.wp-pointer-buttons{margin:0;padding:5px 15px;overflow:auto;}.wp-pointer-buttons a{float:right;display:inline-block;text-decoration:none;}.wp-pointer-buttons a.close{padding-left:3px;position:relative;}.wp-pointer-buttons a.close:before{content:' ';width:10px;height:100%;position:absolute;left:-10px;background:url('../images/xit.gif') 0 50% no-repeat;}.wp-pointer-buttons a.close:hover:before{background-position:100% 50%;}.wp-pointer-arrow,.wp-pointer-arrow-inner{position:absolute;width:0;height:0;}.wp-pointer-arrow{z-index:10;background:url('../images/arrow-pointer-blue.png') 0 0 no-repeat;}.wp-pointer-arrow-inner{z-index:20;}.wp-pointer-top,.wp-pointer-undefined{padding-top:13px;}.wp-pointer-bottom{padding-bottom:13px;}.wp-pointer-left{padding-left:13px;}.wp-pointer-right{padding-right:13px;}.wp-pointer-top .wp-pointer-arrow,.wp-pointer-bottom .wp-pointer-arrow,.wp-pointer-undefined .wp-pointer-arrow{left:50px;width:30px;height:14px;}.wp-pointer-left .wp-pointer-arrow,.wp-pointer-right .wp-pointer-arrow{top:50%;margin-top:-15px;width:14px;height:30px;}.wp-pointer-top .wp-pointer-arrow,.wp-pointer-undefined .wp-pointer-arrow{top:0;background-position:0 0;}.wp-pointer-bottom .wp-pointer-arrow{bottom:0;background-position:0 -46px;}.wp-pointer-left .wp-pointer-arrow{left:0;background-position:0 -15px;}.wp-pointer-right .wp-pointer-arrow{right:0;background-position:-16px -15px;}.rtl .wp-pointer-content h3{padding-right:60px;padding-left:18px;}.rtl .wp-pointer-content h3:before{right:15px;}.rtl .wp-pointer-buttons a{float:left;}.rtl .wp-pointer-buttons a.close{padding-right:3px;padding-left:0;}.rtl .wp-pointer-buttons a.close:before{right:-10px;}.rtl .wp-pointer-top .wp-pointer-arrow,.rtl .wp-pointer-bottom .wp-pointer-arrow,.rtl .wp-pointer-undefined .wp-pointer-arrow{right:50px;}
\ No newline at end of file
diff --git a/wp-includes/css/wp-pointer.dev.css b/wp-includes/css/wp-pointer.dev.css
new file mode 100644 (file)
index 0000000..381db83
--- /dev/null
@@ -0,0 +1,188 @@
+.wp-pointer {
+}
+
+.wp-pointer-content {
+       padding: 0 0 10px;
+       position: relative;
+       font-size: 13px;
+
+       background: #fff;
+       border-style: solid;
+       border-width: 1px;
+       /* Fallback for non-rgba-compliant browsers */
+       border-color: #dfdfdf;
+       /* Use rgba to look better against non-white backgrounds. */
+       border-color: rgba(0,0,0,.125);
+       -webkit-border-radius: 3px;
+       border-radius: 3px;
+
+       -webkit-box-shadow: 0 2px 4px rgba(0,0,0,.19);
+       -moz-box-shadow: 0 2px 4px rgba(0,0,0,.19);
+       box-shadow: 0 2px 4px rgba(0,0,0,.19);
+}
+
+.wp-pointer-content h3 {
+       position: relative;
+       margin: 0 0 5px;
+       padding: 15px 18px 14px 60px;
+       line-height: 1.4em;
+       font-size: 14px;
+       color: #fff;
+       border-radius: 3px 3px 0 0;
+       text-shadow: 0 -1px 0 rgba(0,0,0,0.3);
+       background-color: #8cc1e9;
+       background-image: -webkit-linear-gradient(bottom, rgb(114,167,207) 0%, rgb(140,193,233) 100%);
+       background-image: -moz-linear-gradient(bottom, rgb(114,167,207) 0%, rgb(140,193,233) 100%);
+       background-image: -ms-linear-gradient(bottom, rgb(114,167,207) 0%, rgb(140,193,233) 100%);
+       background-image: -o-linear-gradient(bottom, rgb(114,167,207) 0%, rgb(140,193,233) 100%);
+       background-image: linear-gradient(bottom, rgb(114,167,207) 0%, rgb(140,193,233) 100%);
+}
+
+.wp-pointer-content h3:before {
+       position: absolute;
+       top: 0;
+       left: 15px;
+       content: ' ';
+       width: 36px;
+       height: 100%;
+       background: url('../images/icon-pointer-flag.png') 0 50% no-repeat;
+}
+
+.wp-pointer-content p {
+       padding: 0 15px;
+}
+
+.wp-pointer-buttons {
+       margin: 0;
+       padding: 5px 15px;
+       overflow: auto;
+}
+
+.wp-pointer-buttons a {
+       float: right;
+       display: inline-block;
+       text-decoration: none;
+}
+
+.wp-pointer-buttons a.close {
+       padding-left:3px;
+       position: relative;
+}
+
+.wp-pointer-buttons a.close:before {
+       content: ' ';
+       width:10px;
+       height:100%;
+       position:absolute;
+       left:-10px;
+       background:url('../images/xit.gif') 0 50% no-repeat;
+}
+
+.wp-pointer-buttons a.close:hover:before {
+       background-position:100% 50%;
+}
+
+/* The arrow base class must take up no space, even with transparent borders. */
+.wp-pointer-arrow,
+.wp-pointer-arrow-inner {
+       position: absolute;
+       width: 0;
+       height: 0;
+}
+
+.wp-pointer-arrow {
+       z-index: 10;
+       background:url('../images/arrow-pointer-blue.png') 0 0 no-repeat;
+}
+
+.wp-pointer-arrow-inner {
+       z-index: 20;
+}
+
+/* Make Room for the Arrow! */
+.wp-pointer-top,
+.wp-pointer-undefined {
+       padding-top: 13px;
+}
+
+.wp-pointer-bottom {
+       padding-bottom: 13px;
+}
+
+.wp-pointer-left {
+       padding-left: 13px;
+}
+
+.wp-pointer-right {
+       padding-right: 13px;
+}
+
+/* Base Size & Positioning */
+.wp-pointer-top .wp-pointer-arrow,
+.wp-pointer-bottom .wp-pointer-arrow,
+.wp-pointer-undefined .wp-pointer-arrow {
+       left: 50px;
+       width: 30px;
+       height: 14px;
+}
+
+.wp-pointer-left .wp-pointer-arrow,
+.wp-pointer-right .wp-pointer-arrow {
+       top: 50%;
+       margin-top: -15px;
+       width: 14px;
+       height: 30px;
+}
+
+/* Arrow Sprite */
+.wp-pointer-top .wp-pointer-arrow,
+.wp-pointer-undefined .wp-pointer-arrow {
+       top: 0;
+       background-position: 0 0;
+}
+
+.wp-pointer-bottom .wp-pointer-arrow {
+       bottom: 0;
+       background-position: 0 -46px;
+}
+
+.wp-pointer-left .wp-pointer-arrow {
+       left: 0;
+       background-position: 0 -15px;
+}
+
+.wp-pointer-right .wp-pointer-arrow {
+       right:0;
+       background-position:-16px -15px;
+}
+
+/* - RTL
+------------------------------------------------------------------------------*/
+
+.rtl .wp-pointer-content h3 {
+       padding-right: 60px;
+       padding-left: 18px;
+}
+
+.rtl .wp-pointer-content h3:before {
+       right: 15px;
+}
+
+.rtl .wp-pointer-buttons a {
+       float: left;
+}
+
+.rtl .wp-pointer-buttons a.close {
+       padding-right:3px;
+       padding-left: 0;
+}
+
+.rtl .wp-pointer-buttons a.close:before {
+       right:-10px;
+}
+
+.rtl .wp-pointer-top .wp-pointer-arrow,
+.rtl .wp-pointer-bottom .wp-pointer-arrow,
+.rtl .wp-pointer-undefined .wp-pointer-arrow {
+       right: 50px;
+}
\ No newline at end of file
index 0ba447fda648659349c2f6881171f8028f2ad845..9c6535e21a8025888f17c23c9875f287895a8168 100644 (file)
@@ -49,7 +49,8 @@ function wp_initial_constants( ) {
        if ( !defined('WP_DEBUG') )
                define( 'WP_DEBUG', false );
 
        if ( !defined('WP_DEBUG') )
                define( 'WP_DEBUG', false );
 
-       // Add define('WP_DEBUG_DISPLAY', false); to wp-config.php use the globally configured setting for display_errors and not force errors to be displayed.
+       // Add define('WP_DEBUG_DISPLAY', null); to wp-config.php use the globally configured setting for
+       // display_errors and not force errors to be displayed. Use false to force display_errors off.
        if ( !defined('WP_DEBUG_DISPLAY') )
                define( 'WP_DEBUG_DISPLAY', true );
 
        if ( !defined('WP_DEBUG_DISPLAY') )
                define( 'WP_DEBUG_DISPLAY', true );
 
@@ -267,6 +268,12 @@ function wp_functionality_constants( ) {
 
        if ( !defined('WP_POST_REVISIONS') )
                define('WP_POST_REVISIONS', true);
 
        if ( !defined('WP_POST_REVISIONS') )
                define('WP_POST_REVISIONS', true);
+
+       /**
+        * @since 3.3.0
+        */
+       if ( !defined( 'WP_CRON_LOCK_TIMEOUT' ) )
+               define('WP_CRON_LOCK_TIMEOUT', 60);  // In seconds
 }
 
 /**
 }
 
 /**
index a5b6150a51e22200cfbca161a6f09b632bd8476e..7000c4f7478ab5b282f376959c4d08c081c81fab 100644 (file)
@@ -176,52 +176,52 @@ add_filter( 'bloginfo_rss',       'ent2ncr',      8 );
 add_filter( 'the_author',         'ent2ncr',      8 );
 
 // Misc filters
 add_filter( 'the_author',         'ent2ncr',      8 );
 
 // Misc filters
-add_filter( 'option_ping_sites',    'privacy_ping_filter'                 );
-add_filter( 'option_blog_charset',  '_wp_specialchars'                    ); // IMPORTANT: This must not be wp_specialchars() or esc_html() or it'll cause an infinite loop
-add_filter( 'option_home',          '_config_wp_home'                     );
-add_filter( 'option_siteurl',       '_config_wp_siteurl'                  );
-add_filter( 'tiny_mce_before_init', '_mce_set_direction'                  );
-add_filter( 'pre_kses',             'wp_pre_kses_less_than'               );
-add_filter( 'sanitize_title',       'sanitize_title_with_dashes'          );
-add_action( 'check_comment_flood',  'check_comment_flood_db',       10, 3 );
-add_filter( 'comment_flood_filter', 'wp_throttle_comment_flood',    10, 3 );
-add_filter( 'pre_comment_content',  'wp_rel_nofollow',              15    );
-add_filter( 'comment_email',        'antispambot'                         );
-add_filter( 'option_tag_base',      '_wp_filter_taxonomy_base'            );
-add_filter( 'option_category_base', '_wp_filter_taxonomy_base'            );
-add_filter( 'the_posts',            '_close_comments_for_old_posts'       );
-add_filter( 'comments_open',        '_close_comments_for_old_post', 10, 2 );
-add_filter( 'pings_open',           '_close_comments_for_old_post', 10, 2 );
-add_filter( 'editable_slug',        'urldecode'                           );
-add_filter( 'nav_menu_meta_box_object', '_wp_nav_menu_meta_box_object'    );
+add_filter( 'option_ping_sites',        'privacy_ping_filter'                 );
+add_filter( 'option_blog_charset',      '_wp_specialchars'                    ); // IMPORTANT: This must not be wp_specialchars() or esc_html() or it'll cause an infinite loop
+add_filter( 'option_home',              '_config_wp_home'                     );
+add_filter( 'option_siteurl',           '_config_wp_siteurl'                  );
+add_filter( 'tiny_mce_before_init',     '_mce_set_direction'                  );
+add_filter( 'pre_kses',                 'wp_pre_kses_less_than'               );
+add_filter( 'sanitize_title',           'sanitize_title_with_dashes',   10, 3 );
+add_action( 'check_comment_flood',      'check_comment_flood_db',       10, 3 );
+add_filter( 'comment_flood_filter',     'wp_throttle_comment_flood',    10, 3 );
+add_filter( 'pre_comment_content',      'wp_rel_nofollow',              15    );
+add_filter( 'comment_email',            'antispambot'                         );
+add_filter( 'option_tag_base',          '_wp_filter_taxonomy_base'            );
+add_filter( 'option_category_base',     '_wp_filter_taxonomy_base'            );
+add_filter( 'the_posts',                '_close_comments_for_old_posts', 10, 2);
+add_filter( 'comments_open',            '_close_comments_for_old_post', 10, 2 );
+add_filter( 'pings_open',               '_close_comments_for_old_post', 10, 2 );
+add_filter( 'editable_slug',            'urldecode'                           );
+add_filter( 'nav_menu_meta_box_object', '_wp_nav_menu_meta_box_object'        );
 
 // Actions
 
 // Actions
-add_action( 'wp_head',             'wp_enqueue_scripts',            1     );
-add_action( 'wp_head',             'feed_links',                    2     );
-add_action( 'wp_head',             'feed_links_extra',              3     );
-add_action( 'wp_head',             'rsd_link'                             );
-add_action( 'wp_head',             'wlwmanifest_link'                     );
-add_action( 'wp_head',             'index_rel_link'                       );
-add_action( 'wp_head',             'parent_post_rel_link',          10, 0 );
-add_action( 'wp_head',             'start_post_rel_link',           10, 0 );
+add_action( 'wp_head',             'wp_enqueue_scripts',              1     );
+add_action( 'wp_head',             'feed_links',                      2     );
+add_action( 'wp_head',             'feed_links_extra',                3     );
+add_action( 'wp_head',             'rsd_link'                               );
+add_action( 'wp_head',             'wlwmanifest_link'                       );
 add_action( 'wp_head',             'adjacent_posts_rel_link_wp_head', 10, 0 );
 add_action( 'wp_head',             'adjacent_posts_rel_link_wp_head', 10, 0 );
-add_action( 'wp_head',             'locale_stylesheet'                    );
-add_action( 'publish_future_post', 'check_and_publish_future_post', 10, 1 );
-add_action( 'wp_head',             'noindex',                       1     );
-add_action( 'wp_head',             'wp_print_styles',               8     );
-add_action( 'wp_head',             'wp_print_head_scripts',         9     );
-add_action( 'wp_head',             'wp_generator'                         );
-add_action( 'wp_head',             'rel_canonical'                        );
-add_action( 'wp_footer',           'wp_print_footer_scripts'              );
-add_action( 'wp_head',             'wp_shortlink_wp_head',          10, 0 );
-add_action( 'template_redirect',   'wp_shortlink_header',           11, 0 );
+add_action( 'wp_head',             'locale_stylesheet'                      );
+add_action( 'publish_future_post', 'check_and_publish_future_post',   10, 1 );
+add_action( 'wp_head',             'noindex',                          1    );
+add_action( 'wp_head',             'wp_print_styles',                  8    );
+add_action( 'wp_head',             'wp_print_head_scripts',            9    );
+add_action( 'wp_head',             'wp_generator'                           );
+add_action( 'wp_head',             'rel_canonical'                          );
+add_action( 'wp_footer',           'wp_print_footer_scripts',         20    );
+add_action( 'wp_head',             'wp_shortlink_wp_head',            10, 0 );
+add_action( 'template_redirect',   'wp_shortlink_header',             11, 0 );
+add_action( 'wp_print_footer_scripts', '_wp_footer_scripts'                 );
+add_action( 'init',                'check_theme_switched',            99    );
+add_action( 'after_switch_theme',  '_wp_sidebars_changed'                   );
 
 if ( isset( $_GET['replytocom'] ) )
 
 if ( isset( $_GET['replytocom'] ) )
-    add_filter( 'pre_option_blog_public', '__return_zero' );
+    add_action( 'wp_head', 'wp_no_robots' );
 
 // Login actions
 add_action( 'login_head',          'wp_print_head_scripts',         9     );
 
 // Login actions
 add_action( 'login_head',          'wp_print_head_scripts',         9     );
-add_action( 'login_footer',        'wp_print_footer_scripts'              );
+add_action( 'login_footer',        'wp_print_footer_scripts',       20    );
 add_action( 'login_init',          'send_frame_options_header',     10, 0 );
 
 // Feed Generator Tags
 add_action( 'login_init',          'send_frame_options_header',     10, 0 );
 
 // Feed Generator Tags
@@ -234,35 +234,35 @@ if ( !defined( 'DOING_CRON' ) )
        add_action( 'sanitize_comment_cookies', 'wp_cron' );
 
 // 2 Actions 2 Furious
        add_action( 'sanitize_comment_cookies', 'wp_cron' );
 
 // 2 Actions 2 Furious
-add_action( 'do_feed_rdf',                'do_feed_rdf',             10, 1 );
-add_action( 'do_feed_rss',                'do_feed_rss',             10, 1 );
-add_action( 'do_feed_rss2',               'do_feed_rss2',            10, 1 );
-add_action( 'do_feed_atom',               'do_feed_atom',            10, 1 );
-add_action( 'do_pings',                   'do_all_pings',            10, 1 );
-add_action( 'do_robots',                  'do_robots'                      );
-add_action( 'sanitize_comment_cookies',   'sanitize_comment_cookies'       );
-add_action( 'admin_print_scripts',        'print_head_scripts',      20    );
-add_action( 'admin_print_footer_scripts', 'print_footer_scripts',    20    );
-add_action( 'admin_print_styles',         'print_admin_styles',      20    );
-add_action( 'init',                       'smilies_init',             5    );
-add_action( 'plugins_loaded',             'wp_maybe_load_widgets',    0    );
-add_action( 'plugins_loaded',             'wp_maybe_load_embeds',     0    );
-add_action( 'shutdown',                   'wp_ob_end_flush_all',      1    );
-add_action( 'pre_post_update',            'wp_save_post_revision'          );
-add_action( 'publish_post',               '_publish_post_hook',       5, 1 );
-add_action( 'save_post',                  '_save_post_hook',          5, 2 );
-add_action( 'transition_post_status',     '_transition_post_status',  5, 3 );
-add_action( 'comment_form', 'wp_comment_form_unfiltered_html_nonce'        );
-add_action( 'wp_scheduled_delete',        'wp_scheduled_delete'            );
-add_action( 'before_wp_tiny_mce',         'wp_print_editor_js'             );
-add_action( 'after_wp_tiny_mce',          'wp_preload_dialogs',      10, 1 );
-add_action( 'admin_init',                 'send_frame_options_header', 10, 0 );
-add_action( 'importer_scheduled_cleanup', 'wp_delete_attachment'           );
+add_action( 'do_feed_rdf',                'do_feed_rdf',                             10, 1 );
+add_action( 'do_feed_rss',                'do_feed_rss',                             10, 1 );
+add_action( 'do_feed_rss2',               'do_feed_rss2',                            10, 1 );
+add_action( 'do_feed_atom',               'do_feed_atom',                            10, 1 );
+add_action( 'do_pings',                   'do_all_pings',                            10, 1 );
+add_action( 'do_robots',                  'do_robots'                                      );
+add_action( 'sanitize_comment_cookies',   'sanitize_comment_cookies'                       );
+add_action( 'admin_print_scripts',        'print_head_scripts',                      20    );
+add_action( 'admin_print_footer_scripts', '_wp_footer_scripts'                             );
+add_action( 'admin_print_styles',         'print_admin_styles',                      20    );
+add_action( 'init',                       'smilies_init',                             5    );
+add_action( 'plugins_loaded',             'wp_maybe_load_widgets',                    0    );
+add_action( 'plugins_loaded',             'wp_maybe_load_embeds',                     0    );
+add_action( 'shutdown',                   'wp_ob_end_flush_all',                      1    );
+add_action( 'pre_post_update',            'wp_save_post_revision'                          );
+add_action( 'publish_post',               '_publish_post_hook',                       5, 1 );
+add_action( 'save_post',                  '_save_post_hook',                          5, 2 );
+add_action( 'transition_post_status',     '_transition_post_status',                  5, 3 );
+add_action( 'transition_post_status',     '_update_term_count_on_transition_post_status', 10, 3 );
+add_action( 'comment_form',               'wp_comment_form_unfiltered_html_nonce'          );
+add_action( 'wp_scheduled_delete',        'wp_scheduled_delete'                            );
+add_action( 'admin_init',                 'send_frame_options_header',               10, 0 );
+add_action( 'importer_scheduled_cleanup', 'wp_delete_attachment'                           );
+add_action( 'upgrader_scheduled_cleanup', 'wp_delete_attachment'                           );
 
 // Navigation menu actions
 
 // Navigation menu actions
-add_action( 'delete_post',                '_wp_delete_post_menu_item'      );
-add_action( 'delete_term',                '_wp_delete_tax_menu_item'       );
-add_action( 'transition_post_status', '_wp_auto_add_pages_to_menu',  10, 3 );
+add_action( 'delete_post',                '_wp_delete_post_menu_item'         );
+add_action( 'delete_term',                '_wp_delete_tax_menu_item'          );
+add_action( 'transition_post_status',     '_wp_auto_add_pages_to_menu', 10, 3 );
 
 // Post Thumbnail CSS class filtering
 add_action( 'begin_fetch_post_thumbnail_html', '_wp_post_thumbnail_class_filter_add'    );
 
 // Post Thumbnail CSS class filtering
 add_action( 'begin_fetch_post_thumbnail_html', '_wp_post_thumbnail_class_filter_add'    );
index d9b932a8e136ddae65621d46c2e46764f9ae992f..df7ef39ac5f84f72b05d3bba8d664d1ffa6f2c34 100644 (file)
@@ -105,7 +105,7 @@ class WP_Widget_Links extends WP_Widget {
 
                if ( is_admin() && !$category ) {
                        // Display All Links widget as such in the widgets screen
 
                if ( is_admin() && !$category ) {
                        // Display All Links widget as such in the widgets screen
-                       echo $before_widget . $before_title. __('All Links') . $after_title . $after_widget;
+                       echo $before_widget . $before_title . _x('All Links', 'links widget') . $after_title . $after_widget;
                        return;
                }
 
                        return;
                }
 
@@ -140,7 +140,7 @@ class WP_Widget_Links extends WP_Widget {
                <p>
                <label for="<?php echo $this->get_field_id('category'); ?>" class="screen-reader-text"><?php _e('Select Link Category'); ?></label>
                <select class="widefat" id="<?php echo $this->get_field_id('category'); ?>" name="<?php echo $this->get_field_name('category'); ?>">
                <p>
                <label for="<?php echo $this->get_field_id('category'); ?>" class="screen-reader-text"><?php _e('Select Link Category'); ?></label>
                <select class="widefat" id="<?php echo $this->get_field_id('category'); ?>" name="<?php echo $this->get_field_name('category'); ?>">
-               <option value=""><?php _e('All Links'); ?></option>
+               <option value=""><?php _ex('All Links', 'links widget'); ?></option>
                <?php
                foreach ( $link_cats as $link_cat ) {
                        echo '<option value="' . intval($link_cat->term_id) . '"'
                <?php
                foreach ( $link_cats as $link_cat ) {
                        echo '<option value="' . intval($link_cat->term_id) . '"'
@@ -177,7 +177,7 @@ class WP_Widget_Search extends WP_Widget {
 
        function widget( $args, $instance ) {
                extract($args);
 
        function widget( $args, $instance ) {
                extract($args);
-               $title = apply_filters('widget_title', $instance['title'], $instance, $this->id_base);
+               $title = apply_filters( 'widget_title', empty( $instance['title'] ) ? '' : $instance['title'], $instance, $this->id_base );
 
                echo $before_widget;
                if ( $title )
 
                echo $before_widget;
                if ( $title )
@@ -220,8 +220,8 @@ class WP_Widget_Archives extends WP_Widget {
 
        function widget( $args, $instance ) {
                extract($args);
 
        function widget( $args, $instance ) {
                extract($args);
-               $c = $instance['count'] ? '1' : '0';
-               $d = $instance['dropdown'] ? '1' : '0';
+               $c = ! empty( $instance['count'] ) ? '1' : '0';
+               $d = ! empty( $instance['dropdown'] ) ? '1' : '0';
                $title = apply_filters('widget_title', empty($instance['title']) ? __('Archives') : $instance['title'], $instance, $this->id_base);
 
                echo $before_widget;
                $title = apply_filters('widget_title', empty($instance['title']) ? __('Archives') : $instance['title'], $instance, $this->id_base);
 
                echo $before_widget;
@@ -375,11 +375,11 @@ class WP_Widget_Text extends WP_Widget {
 
        function widget( $args, $instance ) {
                extract($args);
 
        function widget( $args, $instance ) {
                extract($args);
-               $title = apply_filters( 'widget_title', empty($instance['title']) ? '' : $instance['title'], $instance, $this->id_base);
-               $text = apply_filters( 'widget_text', $instance['text'], $instance );
+               $title = apply_filters( 'widget_title', empty( $instance['title'] ) ? '' : $instance['title'], $instance, $this->id_base );
+               $text = apply_filters( 'widget_text', empty( $instance['text'] ) ? '' : $instance['text'], $instance );
                echo $before_widget;
                if ( !empty( $title ) ) { echo $before_title . $title . $after_title; } ?>
                echo $before_widget;
                if ( !empty( $title ) ) { echo $before_title . $title . $after_title; } ?>
-                       <div class="textwidget"><?php echo $instance['filter'] ? wpautop($text) : $text; ?></div>
+                       <div class="textwidget"><?php echo !empty( $instance['filter'] ) ? wpautop( $text ) : $text; ?></div>
                <?php
                echo $after_widget;
        }
                <?php
                echo $after_widget;
        }
@@ -426,9 +426,9 @@ class WP_Widget_Categories extends WP_Widget {
                extract( $args );
 
                $title = apply_filters('widget_title', empty( $instance['title'] ) ? __( 'Categories' ) : $instance['title'], $instance, $this->id_base);
                extract( $args );
 
                $title = apply_filters('widget_title', empty( $instance['title'] ) ? __( 'Categories' ) : $instance['title'], $instance, $this->id_base);
-               $c = $instance['count'] ? '1' : '0';
-               $h = $instance['hierarchical'] ? '1' : '0';
-               $d = $instance['dropdown'] ? '1' : '0';
+               $c = ! empty( $instance['count'] ) ? '1' : '0';
+               $h = ! empty( $instance['hierarchical'] ) ? '1' : '0';
+               $d = ! empty( $instance['dropdown'] ) ? '1' : '0';
 
                echo $before_widget;
                if ( $title )
 
                echo $before_widget;
                if ( $title )
@@ -525,8 +525,11 @@ class WP_Widget_Recent_Posts extends WP_Widget {
                if ( !is_array($cache) )
                        $cache = array();
 
                if ( !is_array($cache) )
                        $cache = array();
 
-               if ( isset($cache[$args['widget_id']]) ) {
-                       echo $cache[$args['widget_id']];
+               if ( ! isset( $args['widget_id'] ) )
+                       $args['widget_id'] = $this->id;
+
+               if ( isset( $cache[ $args['widget_id'] ] ) ) {
+                       echo $cache[ $args['widget_id'] ];
                        return;
                }
 
                        return;
                }
 
@@ -534,7 +537,7 @@ class WP_Widget_Recent_Posts extends WP_Widget {
                extract($args);
 
                $title = apply_filters('widget_title', empty($instance['title']) ? __('Recent Posts') : $instance['title'], $instance, $this->id_base);
                extract($args);
 
                $title = apply_filters('widget_title', empty($instance['title']) ? __('Recent Posts') : $instance['title'], $instance, $this->id_base);
-               if ( ! $number = absint( $instance['number'] ) )
+               if ( empty( $instance['number'] ) || ! $number = absint( $instance['number'] ) )
                        $number = 10;
 
                $r = new WP_Query(array('posts_per_page' => $number, 'no_found_rows' => true, 'post_status' => 'publish', 'ignore_sticky_posts' => true));
                        $number = 10;
 
                $r = new WP_Query(array('posts_per_page' => $number, 'no_found_rows' => true, 'post_status' => 'publish', 'ignore_sticky_posts' => true));
@@ -628,16 +631,19 @@ class WP_Widget_Recent_Comments extends WP_Widget {
                if ( ! is_array( $cache ) )
                        $cache = array();
 
                if ( ! is_array( $cache ) )
                        $cache = array();
 
-               if ( isset( $cache[$args['widget_id']] ) ) {
-                       echo $cache[$args['widget_id']];
+               if ( ! isset( $args['widget_id'] ) )
+                       $args['widget_id'] = $this->id;
+
+               if ( isset( $cache[ $args['widget_id'] ] ) ) {
+                       echo $cache[ $args['widget_id'] ];
                        return;
                }
 
                extract($args, EXTR_SKIP);
                $output = '';
                        return;
                }
 
                extract($args, EXTR_SKIP);
                $output = '';
-               $title = apply_filters('widget_title', empty($instance['title']) ? __('Recent Comments') : $instance['title']);
+               $title = apply_filters( 'widget_title', empty( $instance['title'] ) ? __( 'Recent Comments' ) : $instance['title'], $instance, $this->id_base );
 
 
-               if ( ! $number = absint( $instance['number'] ) )
+               if ( empty( $instance['number'] ) || ! $number = absint( $instance['number'] ) )
                        $number = 5;
 
                $comments = get_comments( array( 'number' => $number, 'status' => 'approve', 'post_status' => 'publish' ) );
                        $number = 5;
 
                $comments = get_comments( array( 'number' => $number, 'status' => 'approve', 'post_status' => 'publish' ) );
@@ -705,7 +711,7 @@ class WP_Widget_RSS extends WP_Widget {
 
                extract($args, EXTR_SKIP);
 
 
                extract($args, EXTR_SKIP);
 
-               $url = $instance['url'];
+               $url = ! empty( $instance['url'] ) ? $instance['url'] : '';
                while ( stristr($url, 'http') != $url )
                        $url = substr($url, 1);
 
                while ( stristr($url, 'http') != $url )
                        $url = substr($url, 1);
 
@@ -751,7 +757,7 @@ class WP_Widget_RSS extends WP_Widget {
        }
 
        function update($new_instance, $old_instance) {
        }
 
        function update($new_instance, $old_instance) {
-               $testurl = ( isset($new_instance['url']) && ($new_instance['url'] != $old_instance['url']) );
+               $testurl = ( isset( $new_instance['url'] ) && ( !isset( $old_instance['url'] ) || ( $new_instance['url'] != $old_instance['url'] ) ) );
                return wp_widget_rss_process( $new_instance, $testurl );
        }
 
                return wp_widget_rss_process( $new_instance, $testurl );
        }
 
@@ -1059,12 +1065,12 @@ class WP_Widget_Tag_Cloud extends WP_Widget {
 
        function widget($args, $instance) {
                // Get menu
 
        function widget($args, $instance) {
                // Get menu
-               $nav_menu = wp_get_nav_menu_object( $instance['nav_menu'] );
+               $nav_menu = ! empty( $instance['nav_menu'] ) ? wp_get_nav_menu_object( $instance['nav_menu'] ) : false;
 
                if ( !$nav_menu )
                        return;
 
 
                if ( !$nav_menu )
                        return;
 
-               $instance['title'] = apply_filters('widget_title', $instance['title'], $instance, $this->id_base);
+               $instance['title'] = apply_filters( 'widget_title', empty( $instance['title'] ) ? '' : $instance['title'], $instance, $this->id_base );
 
                echo $args['before_widget'];
 
 
                echo $args['before_widget'];
 
index 1464b68743b91b3b71a40bed72352f9ea478ffb4..1ccddba3497b4b4eb8c962fc1080a2e5e94f1140 100644 (file)
@@ -149,7 +149,7 @@ function previous_post($format='%', $previous='previous post: ', $title='yes', $
 
        $string = '<a href="'.get_permalink($post->ID).'">'.$previous;
        if ( 'yes' == $title )
 
        $string = '<a href="'.get_permalink($post->ID).'">'.$previous;
        if ( 'yes' == $title )
-               $string .= apply_filters('the_title', $post->post_title, $post);
+               $string .= apply_filters('the_title', $post->post_title, $post->ID);
        $string .= '</a>';
        $format = str_replace('%', $string, $format);
        echo $format;
        $string .= '</a>';
        $format = str_replace('%', $string, $format);
        echo $format;
@@ -185,7 +185,7 @@ function next_post($format='%', $next='next post: ', $title='yes', $in_same_cat=
 
        $string = '<a href="'.get_permalink($post->ID).'">'.$next;
        if ( 'yes' == $title )
 
        $string = '<a href="'.get_permalink($post->ID).'">'.$next;
        if ( 'yes' == $title )
-               $string .= apply_filters('the_title', $post->post_title, $nextpost);
+               $string .= apply_filters('the_title', $post->post_title, $post->ID);
        $string .= '</a>';
        $format = str_replace('%', $string, $format);
        echo $format;
        $string .= '</a>';
        $format = str_replace('%', $string, $format);
        echo $format;
@@ -2073,7 +2073,7 @@ function sanitize_url( $url, $protocols = null ) {
  * Checks and cleans a URL.
  *
  * A number of characters are removed from the URL. If the URL is for displaying
  * Checks and cleans a URL.
  *
  * A number of characters are removed from the URL. If the URL is for displaying
- * (the default behaviour) amperstands are also replaced. The 'clean_url' filter
+ * (the default behaviour) ampersands are also replaced. The 'clean_url' filter
  * is applied to the returned cleaned URL.
  *
  * @since 1.2.0
  * is applied to the returned cleaned URL.
  *
  * @since 1.2.0
@@ -2615,3 +2615,254 @@ function wp_timezone_supported() {
 
        return true;
 }
 
        return true;
 }
+
+/**
+ * Display editor: TinyMCE, HTML, or both.
+ *
+ * @since 2.1.0
+ * @deprecated 3.3
+ *
+ * @param string $content Textarea content.
+ * @param string $id Optional, default is 'content'. HTML ID attribute value.
+ * @param string $prev_id Optional, not used
+ * @param bool $media_buttons Optional, default is true. Whether to display media buttons.
+ * @param int $tab_index Optional, not used
+ */
+function the_editor($content, $id = 'content', $prev_id = 'title', $media_buttons = true, $tab_index = 2, $extended = true) {
+
+       wp_editor( $content, $id, array( 'media_buttons' => $media_buttons ) );
+       return;
+}
+
+/**
+ * Perform the query to get the $metavalues array(s) needed by _fill_user and _fill_many_users
+ *
+ * @since 3.0.0
+ * @param array $ids User ID numbers list.
+ * @return array of arrays. The array is indexed by user_id, containing $metavalues object arrays.
+ */
+function get_user_metavalues($ids) {
+       _deprecated_function( __FUNCTION__, '3.3' );
+
+       $objects = array();
+
+       $ids = array_map('intval', $ids);
+       foreach ( $ids as $id )
+               $objects[$id] = array();
+
+       $metas = update_meta_cache('user', $ids);
+
+       foreach ( $metas as $id => $meta ) {
+               foreach ( $meta as $key => $metavalues ) {
+                       foreach ( $metavalues as $value ) {
+                               $objects[$id][] = (object)array( 'user_id' => $id, 'meta_key' => $key, 'meta_value' => $value);
+                       }
+               }
+       }
+
+       return $objects;
+}
+
+/**
+ * Sanitize every user field.
+ *
+ * If the context is 'raw', then the user object or array will get minimal santization of the int fields.
+ *
+ * @since 2.3.0
+ * @deprecated 3.3.0
+ * @uses sanitize_user_field() Used to sanitize the fields.
+ *
+ * @param object|array $user The User Object or Array
+ * @param string $context Optional, default is 'display'. How to sanitize user fields.
+ * @return object|array The now sanitized User Object or Array (will be the same type as $user)
+ */
+function sanitize_user_object($user, $context = 'display') {
+       _deprecated_function( __FUNCTION__, '3.3' );
+
+       if ( is_object($user) ) {
+               if ( !isset($user->ID) )
+                       $user->ID = 0;
+               if ( !is_a( $user, 'WP_User' ) ) {
+                       $vars = get_object_vars($user);
+                       foreach ( array_keys($vars) as $field ) {
+                               if ( is_string($user->$field) || is_numeric($user->$field) )
+                                       $user->$field = sanitize_user_field($field, $user->$field, $user->ID, $context);
+                       }
+               }
+               $user->filter = $context;
+       } else {
+               if ( !isset($user['ID']) )
+                       $user['ID'] = 0;
+               foreach ( array_keys($user) as $field )
+                       $user[$field] = sanitize_user_field($field, $user[$field], $user['ID'], $context);
+               $user['filter'] = $context;
+       }
+
+       return $user;
+}
+
+/**
+ * Get boundary post relational link.
+ *
+ * Can either be start or end post relational link.
+ *
+ * @since 2.8.0
+ * @deprecated 3.3
+ *
+ * @param string $title Optional. Link title format.
+ * @param bool $in_same_cat Optional. Whether link should be in a same category.
+ * @param string $excluded_categories Optional. Excluded categories IDs.
+ * @param bool $start Optional, default is true. Whether to display link to first or last post.
+ * @return string
+ */
+function get_boundary_post_rel_link($title = '%title', $in_same_cat = false, $excluded_categories = '', $start = true) {
+       _deprecated_function( __FUNCTION__, '3.3' );
+
+       $posts = get_boundary_post($in_same_cat, $excluded_categories, $start);
+       // If there is no post stop.
+       if ( empty($posts) )
+               return;
+
+       // Even though we limited get_posts to return only 1 item it still returns an array of objects.
+       $post = $posts[0];
+
+       if ( empty($post->post_title) )
+               $post->post_title = $start ? __('First Post') : __('Last Post');
+
+       $date = mysql2date(get_option('date_format'), $post->post_date);
+
+       $title = str_replace('%title', $post->post_title, $title);
+       $title = str_replace('%date', $date, $title);
+       $title = apply_filters('the_title', $title, $post->ID);
+
+       $link = $start ? "<link rel='start' title='" : "<link rel='end' title='";
+       $link .= esc_attr($title);
+       $link .= "' href='" . get_permalink($post) . "' />\n";
+
+       $boundary = $start ? 'start' : 'end';
+       return apply_filters( "{$boundary}_post_rel_link", $link );
+}
+
+/**
+ * Display relational link for the first post.
+ *
+ * @since 2.8.0
+ * @deprecated 3.3
+ *
+ * @param string $title Optional. Link title format.
+ * @param bool $in_same_cat Optional. Whether link should be in a same category.
+ * @param string $excluded_categories Optional. Excluded categories IDs.
+ */
+function start_post_rel_link($title = '%title', $in_same_cat = false, $excluded_categories = '') {
+       _deprecated_function( __FUNCTION__, '3.3' );
+
+       echo get_boundary_post_rel_link($title, $in_same_cat, $excluded_categories, true);
+}
+
+/**
+ * Get site index relational link.
+ *
+ * @since 2.8.0
+ * @deprecated 3.3
+ *
+ * @return string
+ */
+function get_index_rel_link() {
+       _deprecated_function( __FUNCTION__, '3.3' );
+
+       $link = "<link rel='index' title='" . esc_attr( get_bloginfo( 'name', 'display' ) ) . "' href='" . esc_url( user_trailingslashit( get_bloginfo( 'url', 'display' ) ) ) . "' />\n";
+       return apply_filters( "index_rel_link", $link );
+}
+
+/**
+ * Display relational link for the site index.
+ *
+ * @since 2.8.0
+ * @deprecated 3.3
+ */
+function index_rel_link() {
+       _deprecated_function( __FUNCTION__, '3.3' );
+
+       echo get_index_rel_link();
+}
+
+/**
+ * Get parent post relational link.
+ *
+ * @since 2.8.0
+ * @deprecated 3.3
+ *
+ * @param string $title Optional. Link title format.
+ * @return string
+ */
+function get_parent_post_rel_link($title = '%title') {
+       _deprecated_function( __FUNCTION__, '3.3' );
+
+       if ( ! empty( $GLOBALS['post'] ) && ! empty( $GLOBALS['post']->post_parent ) )
+               $post = & get_post($GLOBALS['post']->post_parent);
+
+       if ( empty($post) )
+               return;
+
+       $date = mysql2date(get_option('date_format'), $post->post_date);
+
+       $title = str_replace('%title', $post->post_title, $title);
+       $title = str_replace('%date', $date, $title);
+       $title = apply_filters('the_title', $title, $post->ID);
+
+       $link = "<link rel='up' title='";
+       $link .= esc_attr( $title );
+       $link .= "' href='" . get_permalink($post) . "' />\n";
+
+       return apply_filters( "parent_post_rel_link", $link );
+}
+
+/**
+ * Display relational link for parent item
+ *
+ * @since 2.8.0
+ * @deprecated 3.3
+ */
+function parent_post_rel_link($title = '%title') {
+       _deprecated_function( __FUNCTION__, '3.3' );
+
+       echo get_parent_post_rel_link($title);
+}
+
+/**
+ * Add the "Dashboard"/"Visit Site" menu.
+ *
+ * @since 3.2.0
+ * @deprecated 3.3
+ */
+function wp_admin_bar_dashboard_view_site_menu( $wp_admin_bar ) {
+       _deprecated_function( __FUNCTION__, '3.3' );
+
+       $user_id = get_current_user_id();
+
+       if ( 0 != $user_id ) {
+               if ( is_admin() )
+                       $wp_admin_bar->add_menu( array( 'id' => 'view-site', 'title' => __( 'Visit Site' ), 'href' => home_url() ) );
+               elseif ( is_multisite() )
+                       $wp_admin_bar->add_menu( array( 'id' => 'dashboard', 'title' => __( 'Dashboard' ), 'href' => get_dashboard_url( $user_id ) ) );
+               else
+                       $wp_admin_bar->add_menu( array( 'id' => 'dashboard', 'title' => __( 'Dashboard' ), 'href' => admin_url() ) );
+       }
+}
+
+/**
+ * Checks if the current user belong to a given blog.
+ *
+ * @since MU
+ * @deprecated 3.3
+ * @deprecated Use is_user_member_of_blog()
+ * @see is_user_member_of_blog()
+ *
+ * @param int $blog_id Blog ID
+ * @return bool True if the current users belong to $blog_id, false if not.
+ */
+function is_blog_user( $blog_id = 0 ) {
+       _deprecated_function( __FUNCTION__, '3.3', 'is_user_member_of_blog()' );
+
+       return is_user_member_of_blog( get_current_user_id(), $blog_id );
+}
index e4a39d80bd9f0f14335cb1dbf33453b44f92f7c9..aca98bdb3718a6dbd0cd69f186b3eff84801920c 100644 (file)
@@ -42,8 +42,7 @@ echo '<?xml version="1.0" encoding="' . get_option('blog_charset') . '" ?' . '>'
 <?php do_action('comments_atom_head'); ?>
 <?php
 if ( have_comments() ) : while ( have_comments() ) : the_comment();
 <?php do_action('comments_atom_head'); ?>
 <?php
 if ( have_comments() ) : while ( have_comments() ) : the_comment();
-       $comment_post = get_post($comment->comment_post_ID);
-       get_post_custom($comment_post->ID);
+       $comment_post = $GLOBALS['post'] = get_post( $comment->comment_post_ID );
 ?>
        <entry>
                <title><?php
 ?>
        <entry>
                <title><?php
index 74715b80e1a91947af1226f81944a747bf893d7d..26d3325d574895ae56811d9ed903971adf4c69e7 100644 (file)
@@ -34,8 +34,7 @@ echo '<?xml version="1.0" encoding="'.get_option('blog_charset').'"?'.'>';
        <?php do_action('commentsrss2_head'); ?>
 <?php
 if ( have_comments() ) : while ( have_comments() ) : the_comment();
        <?php do_action('commentsrss2_head'); ?>
 <?php
 if ( have_comments() ) : while ( have_comments() ) : the_comment();
-       $comment_post = get_post($comment->comment_post_ID);
-       get_post_custom($comment_post->ID);
+       $comment_post = $GLOBALS['post'] = get_post( $comment->comment_post_ID );
 ?>
        <item>
                <title><?php
 ?>
        <item>
                <title><?php
index b94e34766d6d81e8941c486576761faf0eb54b05..34d8652b20d4a80f464d4c9dfd109054cfccfb8d 100644 (file)
@@ -63,7 +63,8 @@ function bloginfo_rss($show = '') {
  * @return string Default feed, or for example 'rss2', 'atom', etc.
  */
 function get_default_feed() {
  * @return string Default feed, or for example 'rss2', 'atom', etc.
  */
 function get_default_feed() {
-       return apply_filters('default_feed', 'rss2');
+       $default_feed = apply_filters('default_feed', 'rss2');
+       return 'rss' == $default_feed ? 'rss2' : $default_feed;
 }
 
 /**
 }
 
 /**
index 82a1b9bdf731a62a69b7e801ef4ee4411a976ab2..3452ed2ad1737445b9ac5083fdb5f2eaf915d111 100644 (file)
@@ -28,7 +28,7 @@
  */
 function wptexturize($text) {
        global $wp_cockneyreplace;
  */
 function wptexturize($text) {
        global $wp_cockneyreplace;
-       static $opening_quote, $closing_quote, $default_no_texturize_tags, $default_no_texturize_shortcodes, $static_characters, $static_replacements, $dynamic_characters, $dynamic_replacements;
+       static $opening_quote, $closing_quote, $en_dash, $em_dash, $default_no_texturize_tags, $default_no_texturize_shortcodes, $static_characters, $static_replacements, $dynamic_characters, $dynamic_replacements;
 
        // No need to set up these static variables more than once
        if ( empty( $opening_quote ) ) {
 
        // No need to set up these static variables more than once
        if ( empty( $opening_quote ) ) {
@@ -36,6 +36,10 @@ function wptexturize($text) {
                $opening_quote = _x('&#8220;', 'opening curly quote');
                /* translators: closing curly quote */
                $closing_quote = _x('&#8221;', 'closing curly quote');
                $opening_quote = _x('&#8220;', 'opening curly quote');
                /* translators: closing curly quote */
                $closing_quote = _x('&#8221;', 'closing curly quote');
+               /* translators: en dash */
+               $en_dash = _x('&#8211;', 'en dash');
+               /* translators: em dash */
+               $em_dash = _x('&#8212;', 'em dash');
 
                $default_no_texturize_tags = array('pre', 'code', 'kbd', 'style', 'script', 'tt');
                $default_no_texturize_shortcodes = array('code');
 
                $default_no_texturize_tags = array('pre', 'code', 'kbd', 'style', 'script', 'tt');
                $default_no_texturize_shortcodes = array('code');
@@ -49,8 +53,8 @@ function wptexturize($text) {
                        $cockneyreplace = array("&#8217;tain&#8217;t","&#8217;twere","&#8217;twas","&#8217;tis","&#8217;twill","&#8217;til","&#8217;bout","&#8217;nuff","&#8217;round","&#8217;cause");
                }
 
                        $cockneyreplace = array("&#8217;tain&#8217;t","&#8217;twere","&#8217;twas","&#8217;tis","&#8217;twill","&#8217;til","&#8217;bout","&#8217;nuff","&#8217;round","&#8217;cause");
                }
 
-               $static_characters = array_merge(array('---', ' -- ', '--', ' - ', 'xn&#8211;', '...', '``', '\'\'', ' (tm)'), $cockney);
-               $static_replacements = array_merge(array('&#8212;', ' &#8212; ', '&#8211;', ' &#8211; ', 'xn--', '&#8230;', $opening_quote, $closing_quote, ' &#8482;'), $cockneyreplace);
+               $static_characters = array_merge( array('---', ' -- ', '--', ' - ', 'xn&#8211;', '...', '``', '\'\'', ' (tm)'), $cockney );
+               $static_replacements = array_merge( array($em_dash, ' ' . $em_dash . ' ', $en_dash, ' ' . $en_dash . ' ', 'xn--', '&#8230;', $opening_quote, $closing_quote, ' &#8482;'), $cockneyreplace );
 
                $dynamic_characters = array('/\'(\d\d(?:&#8217;|\')?s)/', '/\'(\d)/', '/(\s|\A|[([{<]|")\'/', '/(\d)"/', '/(\d)\'/', '/(\S)\'([^\'\s])/', '/(\s|\A|[([{<])"(?!\s)/', '/"(\s|\S|\Z)/', '/\'([\s.]|\Z)/', '/\b(\d+)x(\d+)\b/');
                $dynamic_replacements = array('&#8217;$1','&#8217;$1', '$1&#8216;', '$1&#8243;', '$1&#8242;', '$1&#8217;$2', '$1' . $opening_quote . '$2', $closing_quote . '$1', '&#8217;$1', '$1&#215;$2');
 
                $dynamic_characters = array('/\'(\d\d(?:&#8217;|\')?s)/', '/\'(\d)/', '/(\s|\A|[([{<]|")\'/', '/(\d)"/', '/(\d)\'/', '/(\S)\'([^\'\s])/', '/(\s|\A|[([{<])"(?!\s)/', '/"(\s|\S|\Z)/', '/\'([\s.]|\Z)/', '/\b(\d+)x(\d+)\b/');
                $dynamic_replacements = array('&#8217;$1','&#8217;$1', '$1&#8216;', '$1&#8243;', '$1&#8242;', '$1&#8217;$2', '$1' . $opening_quote . '$2', $closing_quote . '$1', '&#8217;$1', '$1&#215;$2');
@@ -232,16 +236,48 @@ function _autop_newline_preservation_helper( $matches ) {
  * @param string $pee The content.
  * @return string The filtered content.
  */
  * @param string $pee The content.
  * @return string The filtered content.
  */
-function shortcode_unautop($pee) {
+function shortcode_unautop( $pee ) {
        global $shortcode_tags;
 
        global $shortcode_tags;
 
-       if ( !empty($shortcode_tags) && is_array($shortcode_tags) ) {
-               $tagnames = array_keys($shortcode_tags);
-               $tagregexp = join( '|', array_map('preg_quote', $tagnames) );
-               $pee = preg_replace('/<p>\\s*?(\\[(' . $tagregexp . ')\\b.*?\\/?\\](?:.+?\\[\\/\\2\\])?)\\s*<\\/p>/s', '$1', $pee);
-       }
-
-       return $pee;
+       if ( empty( $shortcode_tags ) || !is_array( $shortcode_tags ) ) {
+               return $pee;
+       }
+
+       $tagregexp = join( '|', array_map( 'preg_quote', array_keys( $shortcode_tags ) ) );
+
+       $pattern =
+                 '/'
+               . '<p>'                              // Opening paragraph
+               . '\\s*+'                            // Optional leading whitespace
+               . '('                                // 1: The shortcode
+               .     '\\['                          // Opening bracket
+               .     "($tagregexp)"                 // 2: Shortcode name
+               .     '\\b'                          // Word boundary
+                                                    // Unroll the loop: Inside the opening shortcode tag
+               .     '[^\\]\\/]*'                   // Not a closing bracket or forward slash
+               .     '(?:'
+               .         '\\/(?!\\])'               // A forward slash not followed by a closing bracket
+               .         '[^\\]\\/]*'               // Not a closing bracket or forward slash
+               .     ')*?'
+               .     '(?:'
+               .         '\\/\\]'                   // Self closing tag and closing bracket
+               .     '|'
+               .         '\\]'                      // Closing bracket
+               .         '(?:'                      // Unroll the loop: Optionally, anything between the opening and closing shortcode tags
+               .             '[^\\[]*+'             // Not an opening bracket
+               .             '(?:'
+               .                 '\\[(?!\\/\\2\\])' // An opening bracket not followed by the closing shortcode tag
+               .                 '[^\\[]*+'         // Not an opening bracket
+               .             ')*+'
+               .             '\\[\\/\\2\\]'         // Closing shortcode tag
+               .         ')?'
+               .     ')'
+               . ')'
+               . '\\s*+'                            // optional trailing whitespace
+               . '<\\/p>'                           // closing paragraph
+               . '/s';
+
+       return preg_replace( $pattern, '$1', $pee );
 }
 
 /**
 }
 
 /**
@@ -294,34 +330,31 @@ function seems_utf8($str) {
 function _wp_specialchars( $string, $quote_style = ENT_NOQUOTES, $charset = false, $double_encode = false ) {
        $string = (string) $string;
 
 function _wp_specialchars( $string, $quote_style = ENT_NOQUOTES, $charset = false, $double_encode = false ) {
        $string = (string) $string;
 
-       if ( 0 === strlen( $string ) ) {
+       if ( 0 === strlen( $string ) )
                return '';
                return '';
-       }
 
        // Don't bother if there are no specialchars - saves some processing
 
        // Don't bother if there are no specialchars - saves some processing
-       if ( !preg_match( '/[&<>"\']/', $string ) ) {
+       if ( ! preg_match( '/[&<>"\']/', $string ) )
                return $string;
                return $string;
-       }
 
        // Account for the previous behaviour of the function when the $quote_style is not an accepted value
 
        // Account for the previous behaviour of the function when the $quote_style is not an accepted value
-       if ( empty( $quote_style ) ) {
+       if ( empty( $quote_style ) )
                $quote_style = ENT_NOQUOTES;
                $quote_style = ENT_NOQUOTES;
-       } elseif ( !in_array( $quote_style, array( 0, 2, 3, 'single', 'double' ), true ) ) {
+       elseif ( ! in_array( $quote_style, array( 0, 2, 3, 'single', 'double' ), true ) )
                $quote_style = ENT_QUOTES;
                $quote_style = ENT_QUOTES;
-       }
 
        // Store the site charset as a static to avoid multiple calls to wp_load_alloptions()
 
        // Store the site charset as a static to avoid multiple calls to wp_load_alloptions()
-       if ( !$charset ) {
+       if ( ! $charset ) {
                static $_charset;
                static $_charset;
-               if ( !isset( $_charset ) ) {
+               if ( ! isset( $_charset ) ) {
                        $alloptions = wp_load_alloptions();
                        $_charset = isset( $alloptions['blog_charset'] ) ? $alloptions['blog_charset'] : '';
                }
                $charset = $_charset;
        }
                        $alloptions = wp_load_alloptions();
                        $_charset = isset( $alloptions['blog_charset'] ) ? $alloptions['blog_charset'] : '';
                }
                $charset = $_charset;
        }
-       if ( in_array( $charset, array( 'utf8', 'utf-8', 'UTF8' ) ) ) {
+
+       if ( in_array( $charset, array( 'utf8', 'utf-8', 'UTF8' ) ) )
                $charset = 'UTF-8';
                $charset = 'UTF-8';
-       }
 
        $_quote_style = $quote_style;
 
 
        $_quote_style = $quote_style;
 
@@ -333,28 +366,27 @@ function _wp_specialchars( $string, $quote_style = ENT_NOQUOTES, $charset = fals
        }
 
        // Handle double encoding ourselves
        }
 
        // Handle double encoding ourselves
-       if ( !$double_encode ) {
+       if ( $double_encode ) {
+               $string = @htmlspecialchars( $string, $quote_style, $charset );
+       } else {
+               // Decode &amp; into &
                $string = wp_specialchars_decode( $string, $_quote_style );
 
                $string = wp_specialchars_decode( $string, $_quote_style );
 
-               /* Critical */
-               // The previous line decodes &amp;phrase; into &phrase;  We must guarantee that &phrase; is valid before proceeding.
-               $string = wp_kses_normalize_entities($string);
+               // Guarantee every &entity; is valid or re-encode the &
+               $string = wp_kses_normalize_entities( $string );
 
 
-               // Now proceed with custom double-encoding silliness
-               $string = preg_replace( '/&(#?x?[0-9a-z]+);/i', '|wp_entity|$1|/wp_entity|', $string );
-       }
+               // Now re-encode everything except &entity;
+               $string = preg_split( '/(&#?x?[0-9a-z]+;)/i', $string, -1, PREG_SPLIT_DELIM_CAPTURE );
 
 
-       $string = @htmlspecialchars( $string, $quote_style, $charset );
+               for ( $i = 0; $i < count( $string ); $i += 2 )
+                       $string[$i] = @htmlspecialchars( $string[$i], $quote_style, $charset );
 
 
-       // Handle double encoding ourselves
-       if ( !$double_encode ) {
-               $string = str_replace( array( '|wp_entity|', '|/wp_entity|' ), array( '&', ';' ), $string );
+               $string = implode( '', $string );
        }
 
        // Backwards compatibility
        }
 
        // Backwards compatibility
-       if ( 'single' === $_quote_style ) {
+       if ( 'single' === $_quote_style )
                $string = str_replace( "'", '&#039;', $string );
                $string = str_replace( "'", '&#039;', $string );
-       }
 
        return $string;
 }
 
        return $string;
 }
@@ -536,6 +568,7 @@ function remove_accents($string) {
        if (seems_utf8($string)) {
                $chars = array(
                // Decompositions for Latin-1 Supplement
        if (seems_utf8($string)) {
                $chars = array(
                // Decompositions for Latin-1 Supplement
+               chr(194).chr(170) => 'a', chr(194).chr(186) => 'o',
                chr(195).chr(128) => 'A', chr(195).chr(129) => 'A',
                chr(195).chr(130) => 'A', chr(195).chr(131) => 'A',
                chr(195).chr(132) => 'A', chr(195).chr(133) => 'A',
                chr(195).chr(128) => 'A', chr(195).chr(129) => 'A',
                chr(195).chr(130) => 'A', chr(195).chr(131) => 'A',
                chr(195).chr(132) => 'A', chr(195).chr(133) => 'A',
@@ -566,7 +599,7 @@ function remove_accents($string) {
                chr(195).chr(185) => 'u', chr(195).chr(186) => 'u',
                chr(195).chr(187) => 'u', chr(195).chr(188) => 'u',
                chr(195).chr(189) => 'y', chr(195).chr(190) => 'th',
                chr(195).chr(185) => 'u', chr(195).chr(186) => 'u',
                chr(195).chr(187) => 'u', chr(195).chr(188) => 'u',
                chr(195).chr(189) => 'y', chr(195).chr(190) => 'th',
-               chr(195).chr(191) => 'y',
+               chr(195).chr(191) => 'y', chr(195).chr(152) => 'O',
                // Decompositions for Latin Extended-A
                chr(196).chr(128) => 'A', chr(196).chr(129) => 'a',
                chr(196).chr(130) => 'A', chr(196).chr(131) => 'a',
                // Decompositions for Latin Extended-A
                chr(196).chr(128) => 'A', chr(196).chr(129) => 'a',
                chr(196).chr(130) => 'A', chr(196).chr(131) => 'a',
@@ -807,7 +840,7 @@ function sanitize_title_for_query($title) {
 }
 
 /**
 }
 
 /**
- * Sanitizes title, replacing whitespace with dashes.
+ * Sanitizes title, replacing whitespace and a few other characters with dashes.
  *
  * Limits the output to alphanumeric characters, underscore (_) and dash (-).
  * Whitespace becomes a dash.
  *
  * Limits the output to alphanumeric characters, underscore (_) and dash (-).
  * Whitespace becomes a dash.
@@ -815,9 +848,11 @@ function sanitize_title_for_query($title) {
  * @since 1.2.0
  *
  * @param string $title The title to be sanitized.
  * @since 1.2.0
  *
  * @param string $title The title to be sanitized.
+ * @param string $raw_title Optional. Not used.
+ * @param string $context Optional. The operation for which the string is sanitized.
  * @return string The sanitized title.
  */
  * @return string The sanitized title.
  */
-function sanitize_title_with_dashes($title) {
+function sanitize_title_with_dashes($title, $raw_title = '', $context = 'display') {
        $title = strip_tags($title);
        // Preserve escaped octets.
        $title = preg_replace('|%([a-fA-F0-9][a-fA-F0-9])|', '---$1---', $title);
        $title = strip_tags($title);
        // Preserve escaped octets.
        $title = preg_replace('|%([a-fA-F0-9][a-fA-F0-9])|', '---$1---', $title);
@@ -836,6 +871,20 @@ function sanitize_title_with_dashes($title) {
        $title = strtolower($title);
        $title = preg_replace('/&.+?;/', '', $title); // kill entities
        $title = str_replace('.', '-', $title);
        $title = strtolower($title);
        $title = preg_replace('/&.+?;/', '', $title); // kill entities
        $title = str_replace('.', '-', $title);
+
+       if ( 'save' == $context ) {
+               // nbsp, ndash and mdash
+               $title = str_replace( array( '%c2%a0', '%e2%80%93', '%e2%80%94' ), '-', $title );
+               // iexcl and iquest
+               $title = str_replace( array( '%c2%a1', '%c2%bf' ), '', $title );
+               // angle quotes
+               $title = str_replace( array( '%c2%ab', '%c2%bb', '%e2%80%b9', '%e2%80%ba' ), '', $title );
+               // curly quotes
+               $title = str_replace( array( '%e2%80%98', '%e2%80%99', '%e2%80%9c', '%e2%80%9d' ), '', $title );
+               // copy, reg, deg, hellip and trade
+               $title = str_replace( array( '%c2%a9', '%c2%ae', '%c2%b0', '%e2%80%a6', '%e2%84%a2' ), '', $title );
+       }
+
        $title = preg_replace('/[^%a-z0-9 _-]/', '', $title);
        $title = preg_replace('/\s+/', '-', $title);
        $title = preg_replace('|-+|', '-', $title);
        $title = preg_replace('/[^%a-z0-9 _-]/', '', $title);
        $title = preg_replace('/\s+/', '-', $title);
        $title = preg_replace('|-+|', '-', $title);
@@ -1002,8 +1051,8 @@ function force_balance_tags( $text ) {
        $stacksize = 0;
        $tagqueue = '';
        $newtext = '';
        $stacksize = 0;
        $tagqueue = '';
        $newtext = '';
-       $single_tags = array('br', 'hr', 'img', 'input'); // Known single-entity/self-closing tags
-       $nestable_tags = array('blockquote', 'div', 'span'); // Tags that can be immediately nested within themselves
+       $single_tags = array( 'br', 'hr', 'img', 'input' ); // Known single-entity/self-closing tags
+       $nestable_tags = array( 'blockquote', 'div', 'span', 'q' ); // Tags that can be immediately nested within themselves
 
        // WP bug fix for comments - in case you REALLY meant to type '< !--'
        $text = str_replace('< !--', '<    !--', $text);
 
        // WP bug fix for comments - in case you REALLY meant to type '< !--'
        $text = str_replace('< !--', '<    !--', $text);
@@ -1136,7 +1185,7 @@ function format_to_post($content) {
  * Add leading zeros when necessary.
  *
  * If you set the threshold to '4' and the number is '10', then you will get
  * Add leading zeros when necessary.
  *
  * If you set the threshold to '4' and the number is '10', then you will get
- * back '0010'. If you set the number to '4' and the number is '5000', then you
+ * back '0010'. If you set the threshold to '4' and the number is '5000', then you
  * will get back '5000'.
  *
  * Uses sprintf to append the amount of zeros based on the $threshold parameter
  * will get back '5000'.
  *
  * Uses sprintf to append the amount of zeros based on the $threshold parameter
@@ -1839,10 +1888,10 @@ function human_time_diff( $from, $to = '' ) {
  *
  * @since 1.5.0
  *
  *
  * @since 1.5.0
  *
- * @param string $text The excerpt. If set to empty an excerpt is generated.
+ * @param string $text Optional. The excerpt. If set to empty, an excerpt is generated.
  * @return string The excerpt.
  */
  * @return string The excerpt.
  */
-function wp_trim_excerpt($text) {
+function wp_trim_excerpt($text = '') {
        $raw_excerpt = $text;
        if ( '' == $text ) {
                $text = get_the_content('');
        $raw_excerpt = $text;
        if ( '' == $text ) {
                $text = get_the_content('');
@@ -1851,21 +1900,39 @@ function wp_trim_excerpt($text) {
 
                $text = apply_filters('the_content', $text);
                $text = str_replace(']]>', ']]&gt;', $text);
 
                $text = apply_filters('the_content', $text);
                $text = str_replace(']]>', ']]&gt;', $text);
-               $text = strip_tags($text);
                $excerpt_length = apply_filters('excerpt_length', 55);
                $excerpt_more = apply_filters('excerpt_more', ' ' . '[...]');
                $excerpt_length = apply_filters('excerpt_length', 55);
                $excerpt_more = apply_filters('excerpt_more', ' ' . '[...]');
-               $words = preg_split("/[\n\r\t ]+/", $text, $excerpt_length + 1, PREG_SPLIT_NO_EMPTY);
-               if ( count($words) > $excerpt_length ) {
-                       array_pop($words);
-                       $text = implode(' ', $words);
-                       $text = $text . $excerpt_more;
-               } else {
-                       $text = implode(' ', $words);
-               }
+               $text = wp_trim_words( $text, $excerpt_length, $excerpt_more );
        }
        return apply_filters('wp_trim_excerpt', $text, $raw_excerpt);
 }
 
        }
        return apply_filters('wp_trim_excerpt', $text, $raw_excerpt);
 }
 
+/**
+ * Trims text to a certain number of words.
+ *
+ * @since 3.3.0
+ *
+ * @param string $text Text to trim.
+ * @param int $num_words Number of words. Default 55.
+ * @param string $more What to append if $text needs to be trimmed. Default '&hellip;'.
+ * @return string Trimmed text.
+ */
+function wp_trim_words( $text, $num_words = 55, $more = null ) {
+       if ( null === $more )
+               $more = __( '&hellip;' );
+       $original_text = $text;
+       $text = wp_strip_all_tags( $text );
+       $words_array = preg_split( "/[\n\r\t ]+/", $text, $num_words + 1, PREG_SPLIT_NO_EMPTY );
+       if ( count( $words_array ) > $num_words ) {
+               array_pop( $words_array );
+               $text = implode( ' ', $words_array );
+               $text = $text . $more;
+       } else {
+               $text = implode( ' ', $words_array );
+       }
+       return apply_filters( 'wp_trim_words', $text, $num_words, $more, $original_text );
+}
+
 /**
  * Converts named entities into numbered entities.
  *
 /**
  * Converts named entities into numbered entities.
  *
@@ -1875,6 +1942,12 @@ function wp_trim_excerpt($text) {
  * @return string Text with converted entities.
  */
 function ent2ncr($text) {
  * @return string Text with converted entities.
  */
 function ent2ncr($text) {
+
+       // Allow a plugin to short-circuit and override the mappings.
+       $filtered = apply_filters( 'pre_ent2ncr', null, $text );
+       if( null !== $filtered )
+               return $filtered;
+
        $to_ncr = array(
                '&quot;' => '&#34;',
                '&amp;' => '&#38;',
        $to_ncr = array(
                '&quot;' => '&#34;',
                '&amp;' => '&#38;',
@@ -2226,7 +2299,7 @@ function esc_sql( $sql ) {
  * Checks and cleans a URL.
  *
  * A number of characters are removed from the URL. If the URL is for displaying
  * Checks and cleans a URL.
  *
  * A number of characters are removed from the URL. If the URL is for displaying
- * (the default behaviour) amperstands are also replaced. The 'clean_url' filter
+ * (the default behaviour) ampersands are also replaced. The 'clean_url' filter
  * is applied to the returned cleaned URL.
  *
  * @since 2.8.0
  * is applied to the returned cleaned URL.
  *
  * @since 2.8.0
@@ -2235,7 +2308,7 @@ function esc_sql( $sql ) {
  *
  * @param string $url The URL to be cleaned.
  * @param array $protocols Optional. An array of acceptable protocols.
  *
  * @param string $url The URL to be cleaned.
  * @param array $protocols Optional. An array of acceptable protocols.
- *             Defaults to 'http', 'https', 'ftp', 'ftps', 'mailto', 'news', 'irc', 'gopher', 'nntp', 'feed', 'telnet' if not set.
+ *             Defaults to 'http', 'https', 'ftp', 'ftps', 'mailto', 'news', 'irc', 'gopher', 'nntp', 'feed', 'telnet', 'mms', 'rtsp', 'svn' if not set.
  * @param string $_context Private. Use esc_url_raw() for database usage.
  * @return string The cleaned $url after the 'clean_url' filter is applied.
  */
  * @param string $_context Private. Use esc_url_raw() for database usage.
  * @return string The cleaned $url after the 'clean_url' filter is applied.
  */
@@ -2250,10 +2323,10 @@ function esc_url( $url, $protocols = null, $_context = 'display' ) {
        $url = str_replace(';//', '://', $url);
        /* If the URL doesn't appear to contain a scheme, we
         * presume it needs http:// appended (unless a relative
        $url = str_replace(';//', '://', $url);
        /* If the URL doesn't appear to contain a scheme, we
         * presume it needs http:// appended (unless a relative
-        * link starting with / or a php file).
+        * link starting with /, # or ? or a php file).
         */
         */
-       if ( strpos($url, ':') === false &&
-               substr( $url, 0, 1 ) != '/' && substr( $url, 0, 1 ) != '#' && !preg_match('/^[a-z0-9-]+?\.php/i', $url) )
+       if ( strpos($url, ':') === false && ! in_array( $url[0], array( '/', '#', '?' ) ) &&
+               preg_match('/^[a-z0-9-]+?\.php/i', $url) )
                $url = 'http://' . $url;
 
        // Replace ampersands and single quotes only when displaying.
                $url = 'http://' . $url;
 
        // Replace ampersands and single quotes only when displaying.
@@ -2263,8 +2336,8 @@ function esc_url( $url, $protocols = null, $_context = 'display' ) {
                $url = str_replace( "'", '&#039;', $url );
        }
 
                $url = str_replace( "'", '&#039;', $url );
        }
 
-       if ( !is_array($protocols) )
-               $protocols = array ('http', 'https', 'ftp', 'ftps', 'mailto', 'news', 'irc', 'gopher', 'nntp', 'feed', 'telnet', 'mms', 'rtsp', 'svn');
+       if ( ! is_array( $protocols ) )
+               $protocols = wp_allowed_protocols();
        if ( wp_kses_bad_protocol( $url, $protocols ) != $url )
                return '';
 
        if ( wp_kses_bad_protocol( $url, $protocols ) != $url )
                return '';
 
@@ -2372,7 +2445,7 @@ function esc_textarea( $text ) {
  * @return string
  */
 function tag_escape($tag_name) {
  * @return string
  */
 function tag_escape($tag_name) {
-       $safe_tag = strtolower( preg_replace('/[^a-zA-Z_:]/', '', $tag_name) );
+       $safe_tag = strtolower( preg_replace('/[^a-zA-Z0-9_:]/', '', $tag_name) );
        return apply_filters('tag_escape', $safe_tag, $tag_name);
 }
 
        return apply_filters('tag_escape', $safe_tag, $tag_name);
 }
 
@@ -2426,6 +2499,7 @@ function sanitize_option($option, $value) {
                                        add_settings_error('admin_email', 'invalid_admin_email', __('The email address entered did not appear to be a valid email address. Please enter a valid email address.'));
                        }
                        break;
                                        add_settings_error('admin_email', 'invalid_admin_email', __('The email address entered did not appear to be a valid email address. Please enter a valid email address.'));
                        }
                        break;
+
                case 'new_admin_email':
                        $value = sanitize_email($value);
                        if ( !is_email($value) ) {
                case 'new_admin_email':
                        $value = sanitize_email($value);
                        if ( !is_email($value) ) {
@@ -2434,6 +2508,7 @@ function sanitize_option($option, $value) {
                                        add_settings_error('new_admin_email', 'invalid_admin_email', __('The email address entered did not appear to be a valid email address. Please enter a valid email address.'));
                        }
                        break;
                                        add_settings_error('new_admin_email', 'invalid_admin_email', __('The email address entered did not appear to be a valid email address. Please enter a valid email address.'));
                        }
                        break;
+
                case 'thumbnail_size_w':
                case 'thumbnail_size_h':
                case 'medium_size_w':
                case 'thumbnail_size_w':
                case 'thumbnail_size_h':
                case 'medium_size_w':
@@ -2527,6 +2602,7 @@ function sanitize_option($option, $value) {
                                        add_settings_error('home', 'invalid_home', __('The Site address you entered did not appear to be a valid URL. Please enter a valid URL.'));
                        }
                        break;
                                        add_settings_error('home', 'invalid_home', __('The Site address you entered did not appear to be a valid URL. Please enter a valid URL.'));
                        }
                        break;
+
                case 'WPLANG':
                        $allowed = get_available_languages();
                        if ( ! in_array( $value, $allowed ) && ! empty( $value ) )
                case 'WPLANG':
                        $allowed = get_available_languages();
                        if ( ! in_array( $value, $allowed ) && ! empty( $value ) )
@@ -2542,11 +2618,16 @@ function sanitize_option($option, $value) {
                        }
                        break;
 
                        }
                        break;
 
-               default :
-                       $value = apply_filters("sanitize_option_{$option}", $value, $option);
+               case 'permalink_structure':
+               case 'category_base':
+               case 'tag_base':
+                       $value = esc_url_raw( $value );
+                       $value = str_replace( 'http://', '', $value );
                        break;
        }
 
                        break;
        }
 
+       $value = apply_filters("sanitize_option_{$option}", $value, $option);
+
        return $value;
 }
 
        return $value;
 }
 
index 7a682ef364400926727f39267aa2fe4b825f8f11..6b5aa505ca7570ff2c327e9aec7b96e4b6bdb403 100644 (file)
@@ -20,7 +20,7 @@
  * @param string $dateformatstring Either 'G', 'U', or php date format.
  * @param string $mysqlstring Time from mysql DATETIME field.
  * @param bool $translate Optional. Default is true. Will switch format to locale.
  * @param string $dateformatstring Either 'G', 'U', or php date format.
  * @param string $mysqlstring Time from mysql DATETIME field.
  * @param bool $translate Optional. Default is true. Will switch format to locale.
- * @return string Date formated by $dateformatstring or locale (if available).
+ * @return string Date formatted by $dateformatstring or locale (if available).
  */
 function mysql2date( $dateformatstring, $mysqlstring, $translate = true ) {
        $m = $mysqlstring;
  */
 function mysql2date( $dateformatstring, $mysqlstring, $translate = true ) {
        $m = $mysqlstring;
@@ -324,6 +324,7 @@ function is_serialized_string( $data ) {
  *     the option value.
  *
  * @param string $option Name of option to retrieve. Expected to not be SQL-escaped.
  *     the option value.
  *
  * @param string $option Name of option to retrieve. Expected to not be SQL-escaped.
+ * @param mixed $default Optional. Default value to return if the option does not exist.
  * @return mixed Value set for the option.
  */
 function get_option( $option, $default = false ) {
  * @return mixed Value set for the option.
  */
 function get_option( $option, $default = false ) {
@@ -454,7 +455,7 @@ function wp_load_alloptions() {
 }
 
 /**
 }
 
 /**
- * Loads and caches certain often requested site options if is_multisite() and a peristent cache is not being used.
+ * Loads and caches certain often requested site options if is_multisite() and a persistent cache is not being used.
  *
  * @since 3.0.0
  * @package WordPress
  *
  * @since 3.0.0
  * @package WordPress
@@ -569,11 +570,10 @@ function update_option( $option, $newvalue ) {
  * it will be serialized before it is inserted into the database. Remember,
  * resources can not be serialized or added as an option.
  *
  * it will be serialized before it is inserted into the database. Remember,
  * resources can not be serialized or added as an option.
  *
- * You can create options without values and then add values later. Does not
- * check whether the option has already been added, but does check that you
+ * You can create options without values and then update the values later.
+ * Existing options will not be updated and checks are performed to ensure that you
  * aren't adding a protected WordPress option. Care should be taken to not name
  * aren't adding a protected WordPress option. Care should be taken to not name
- * options the same as the ones which are protected and to not add options
- * that were already added.
+ * options the same as the ones which are protected.
  *
  * @package WordPress
  * @subpackage Option
  *
  * @package WordPress
  * @subpackage Option
@@ -586,7 +586,7 @@ function update_option( $option, $newvalue ) {
  * @param mixed $value Optional. Option value, can be anything. Expected to not be SQL-escaped.
  * @param mixed $deprecated Optional. Description. Not used anymore.
  * @param bool $autoload Optional. Default is enabled. Whether to load the option when WordPress starts up.
  * @param mixed $value Optional. Option value, can be anything. Expected to not be SQL-escaped.
  * @param mixed $deprecated Optional. Description. Not used anymore.
  * @param bool $autoload Optional. Default is enabled. Whether to load the option when WordPress starts up.
- * @return null returns when finished.
+ * @return bool False if option was not added and true if option was added.
  */
 function add_option( $option, $value = '', $deprecated = '', $autoload = 'yes' ) {
        global $wpdb;
  */
 function add_option( $option, $value = '', $deprecated = '', $autoload = 'yes' ) {
        global $wpdb;
@@ -609,7 +609,7 @@ function add_option( $option, $value = '', $deprecated = '', $autoload = 'yes' )
        $notoptions = wp_cache_get( 'notoptions', 'options' );
        if ( !is_array( $notoptions ) || !isset( $notoptions[$option] ) )
                if ( false !== get_option( $option ) )
        $notoptions = wp_cache_get( 'notoptions', 'options' );
        if ( !is_array( $notoptions ) || !isset( $notoptions[$option] ) )
                if ( false !== get_option( $option ) )
-                       return;
+                       return false;
 
        $_value = $value;
        $value = maybe_serialize( $value );
 
        $_value = $value;
        $value = maybe_serialize( $value );
@@ -686,7 +686,7 @@ function delete_option( $option ) {
 }
 
 /**
 }
 
 /**
- * Delete a transient
+ * Delete a transient.
  *
  * @since 2.8.0
  * @package WordPress
  *
  * @since 2.8.0
  * @package WordPress
@@ -719,7 +719,7 @@ function delete_transient( $transient ) {
 }
 
 /**
 }
 
 /**
- * Get the value of a transient
+ * Get the value of a transient.
  *
  * If the transient does not exist or does not have a value, then the return value
  * will be false.
  *
  * If the transient does not exist or does not have a value, then the return value
  * will be false.
@@ -768,7 +768,7 @@ function get_transient( $transient ) {
 }
 
 /**
 }
 
 /**
- * Set/update the value of a transient
+ * Set/update the value of a transient.
  *
  * You do not need to serialize values. If the value needs to be serialized, then
  * it will be serialized before it is set.
  *
  * You do not need to serialize values. If the value needs to be serialized, then
  * it will be serialized before it is set.
@@ -1037,6 +1037,8 @@ function maybe_serialize( $data ) {
        if ( is_array( $data ) || is_object( $data ) )
                return serialize( $data );
 
        if ( is_array( $data ) || is_object( $data ) )
                return serialize( $data );
 
+       // Double serialization is required for backward compatibility.
+       // See http://core.trac.wordpress.org/ticket/12930
        if ( is_serialized( $data ) )
                return serialize( $data );
 
        if ( is_serialized( $data ) )
                return serialize( $data );
 
@@ -1417,8 +1419,9 @@ function _http_build_query($data, $prefix=null, $sep=null, $key='', $urlencode=t
  * using this function. You can also retrieve the full URL with query data.
  *
  * Adding a single key & value or an associative array. Setting a key value to
  * using this function. You can also retrieve the full URL with query data.
  *
  * Adding a single key & value or an associative array. Setting a key value to
- * emptystring removes the key. Omitting oldquery_or_uri uses the $_SERVER
- * value.
+ * an empty string removes the key. Omitting oldquery_or_uri uses the $_SERVER
+ * value. Additional values provided are expected to be encoded appropriately
+ * with urlencode() or rawurlencode().
  *
  * @since 1.5.0
  *
  *
  * @since 1.5.0
  *
@@ -1794,7 +1797,7 @@ function do_feed_rdf() {
 }
 
 /**
 }
 
 /**
- * Load the RSS 1.0 Feed Template
+ * Load the RSS 1.0 Feed Template.
  *
  * @since 2.1.0
  */
  *
  * @since 2.1.0
  */
@@ -1831,27 +1834,28 @@ function do_feed_atom( $for_comments ) {
 }
 
 /**
 }
 
 /**
- * Display the robot.txt file content.
+ * Display the robots.txt file content.
  *
  * The echo content should be with usage of the permalinks or for creating the
  *
  * The echo content should be with usage of the permalinks or for creating the
- * robot.txt file.
+ * robots.txt file.
  *
  * @since 2.1.0
  *
  * @since 2.1.0
- * @uses do_action() Calls 'do_robotstxt' hook for displaying robot.txt rules.
+ * @uses do_action() Calls 'do_robotstxt' hook for displaying robots.txt rules.
  */
 function do_robots() {
        header( 'Content-Type: text/plain; charset=utf-8' );
 
        do_action( 'do_robotstxt' );
 
  */
 function do_robots() {
        header( 'Content-Type: text/plain; charset=utf-8' );
 
        do_action( 'do_robotstxt' );
 
-       $output = '';
+       $output = "User-agent: *\n";
        $public = get_option( 'blog_public' );
        $public = get_option( 'blog_public' );
-       if ( '0' ==  $public ) {
-               $output .= "User-agent: *\n";
+       if ( '0' == $public ) {
                $output .= "Disallow: /\n";
        } else {
                $output .= "Disallow: /\n";
        } else {
-               $output .= "User-agent: *\n";
-               $output .= "Disallow:\n";
+               $site_url = parse_url( site_url() );
+               $path = ( !empty( $site_url['path'] ) ) ? $site_url['path'] : '';
+               $output .= "Disallow: $path/wp-admin/\n";
+               $output .= "Disallow: $path/wp-includes/\n";
        }
 
        echo apply_filters('robots_txt', $output, $public);
        }
 
        echo apply_filters('robots_txt', $output, $public);
@@ -1895,32 +1899,35 @@ function is_blog_installed() {
        if ( $installed )
                return true;
 
        if ( $installed )
                return true;
 
+       // If visiting repair.php, return true and let it take over.
+       if ( defined( 'WP_REPAIRING' ) )
+               return true;
+
        $suppress = $wpdb->suppress_errors();
        $suppress = $wpdb->suppress_errors();
-       $tables = $wpdb->get_col('SHOW TABLES');
-       $wpdb->suppress_errors( $suppress );
 
 
-       $wp_tables = $wpdb->tables();
        // Loop over the WP tables.  If none exist, then scratch install is allowed.
        // If one or more exist, suggest table repair since we got here because the options
        // table could not be accessed.
        // Loop over the WP tables.  If none exist, then scratch install is allowed.
        // If one or more exist, suggest table repair since we got here because the options
        // table could not be accessed.
+       $wp_tables = $wpdb->tables();
        foreach ( $wp_tables as $table ) {
        foreach ( $wp_tables as $table ) {
-               // If one of the WP tables exist, then we are in an insane state.
-               if ( in_array( $table, $tables ) ) {
-                       // The existence of custom user tables shouldn't suggest an insane state or prevent a clean install.
-                       if ( defined( 'CUSTOM_USER_TABLE' ) && CUSTOM_USER_TABLE == $table )
-                               continue;
-                       if ( defined( 'CUSTOM_USER_META_TABLE' ) && CUSTOM_USER_META_TABLE == $table )
-                               continue;
+               // The existence of custom user tables shouldn't suggest an insane state or prevent a clean install.
+               if ( defined( 'CUSTOM_USER_TABLE' ) && CUSTOM_USER_TABLE == $table )
+                       continue;
+               if ( defined( 'CUSTOM_USER_META_TABLE' ) && CUSTOM_USER_META_TABLE == $table )
+                       continue;
 
 
-                       // If visiting repair.php, return true and let it take over.
-                       if ( defined('WP_REPAIRING') )
-                               return true;
-                       // Die with a DB error.
-                       $wpdb->error = sprintf( /*WP_I18N_NO_TABLES*/'One or more database tables are unavailable.  The database may need to be <a href="%s">repaired</a>.'/*/WP_I18N_NO_TABLES*/, 'maint/repair.php?referrer=is_blog_installed' );
-                       dead_db();
-               }
+               if ( ! $wpdb->get_results( "DESCRIBE $table;" ) )
+                       continue;
+
+               // One or more tables exist. We are insane.
+
+               // Die with a DB error.
+               $wpdb->error = sprintf( /*WP_I18N_NO_TABLES*/'One or more database tables are unavailable.  The database may need to be <a href="%s">repaired</a>.'/*/WP_I18N_NO_TABLES*/, 'maint/repair.php?referrer=is_blog_installed' );
+               dead_db();
        }
 
        }
 
+       $wpdb->suppress_errors( $suppress );
+
        wp_cache_set( 'is_blog_installed', false );
 
        return false;
        wp_cache_set( 'is_blog_installed', false );
 
        return false;
@@ -2030,7 +2037,8 @@ function wp_original_referer_field( $echo = true, $jump_back_to = 'current' ) {
 }
 
 /**
 }
 
 /**
- * Retrieve referer from '_wp_http_referer', HTTP referer, or current page respectively.
+ * Retrieve referer from '_wp_http_referer' or HTTP referer. If it's the same
+ * as the current request URL, will return false.
  *
  * @package WordPress
  * @subpackage Security
  *
  * @package WordPress
  * @subpackage Security
@@ -2039,13 +2047,13 @@ function wp_original_referer_field( $echo = true, $jump_back_to = 'current' ) {
  * @return string|bool False on failure. Referer URL on success.
  */
 function wp_get_referer() {
  * @return string|bool False on failure. Referer URL on success.
  */
 function wp_get_referer() {
-       $ref = '';
+       $ref = false;
        if ( ! empty( $_REQUEST['_wp_http_referer'] ) )
                $ref = $_REQUEST['_wp_http_referer'];
        else if ( ! empty( $_SERVER['HTTP_REFERER'] ) )
                $ref = $_SERVER['HTTP_REFERER'];
 
        if ( ! empty( $_REQUEST['_wp_http_referer'] ) )
                $ref = $_REQUEST['_wp_http_referer'];
        else if ( ! empty( $_SERVER['HTTP_REFERER'] ) )
                $ref = $_SERVER['HTTP_REFERER'];
 
-       if ( $ref !== $_SERVER['REQUEST_URI'] )
+       if ( $ref && $ref !== $_SERVER['REQUEST_URI'] )
                return $ref;
        return false;
 }
                return $ref;
        return false;
 }
@@ -2125,7 +2133,7 @@ function path_is_absolute( $path ) {
                return true;
 
        // a path starting with / or \ is absolute; anything else is relative
                return true;
 
        // a path starting with / or \ is absolute; anything else is relative
-       return (bool) preg_match('#^[/\\\\]#', $path);
+       return ( $path[0] == '/' || $path[0] == '\\' );
 }
 
 /**
 }
 
 /**
@@ -2432,7 +2440,7 @@ function wp_ext2type( $ext ) {
                'spreadsheet' => array( 'numbers',     'ods',  'xls',  'xlsx', 'xlsb',  'xlsm' ),
                'interactive' => array( 'key', 'ppt',  'pptx', 'pptm', 'odp',  'swf' ),
                'text'        => array( 'asc', 'csv',  'tsv',  'txt' ),
                'spreadsheet' => array( 'numbers',     'ods',  'xls',  'xlsx', 'xlsb',  'xlsm' ),
                'interactive' => array( 'key', 'ppt',  'pptx', 'pptm', 'odp',  'swf' ),
                'text'        => array( 'asc', 'csv',  'tsv',  'txt' ),
-               'archive'     => array( 'bz2', 'cab',  'dmg',  'gz',   'rar',  'sea',   'sit', 'sqx', 'tar', 'tgz',  'zip' ),
+               'archive'     => array( 'bz2', 'cab',  'dmg',  'gz',   'rar',  'sea',   'sit', 'sqx', 'tar', 'tgz',  'zip', '7z' ),
                'code'        => array( 'css', 'htm',  'html', 'php',  'js' ),
        ));
        foreach ( $ext2type as $type => $exts )
                'code'        => array( 'css', 'htm',  'html', 'php',  'js' ),
        ));
        foreach ( $ext2type as $type => $exts )
@@ -2598,6 +2606,8 @@ function get_allowed_mime_types() {
                'tar' => 'application/x-tar',
                'zip' => 'application/zip',
                'gz|gzip' => 'application/x-gzip',
                'tar' => 'application/x-tar',
                'zip' => 'application/zip',
                'gz|gzip' => 'application/x-gzip',
+               'rar' => 'application/rar',
+               '7z' => 'application/x-7z-compressed',
                'exe' => 'application/x-msdownload',
                // openoffice formats
                'odt' => 'application/vnd.oasis.opendocument.text',
                'exe' => 'application/x-msdownload',
                // openoffice formats
                'odt' => 'application/vnd.oasis.opendocument.text',
@@ -2744,13 +2754,13 @@ function wp_nonce_ays( $action ) {
  * HTML will be displayed to the user. It is recommended to use this function
  * only, when the execution should not continue any further. It is not
  * recommended to call this function very often and try to handle as many errors
  * HTML will be displayed to the user. It is recommended to use this function
  * only, when the execution should not continue any further. It is not
  * recommended to call this function very often and try to handle as many errors
- * as possible siliently.
+ * as possible silently.
  *
  * @since 2.0.4
  *
  * @param string $message Error message.
  * @param string $title Error title.
  *
  * @since 2.0.4
  *
  * @param string $message Error message.
  * @param string $title Error title.
- * @param string|array $args Optional arguements to control behaviour.
+ * @param string|array $args Optional arguments to control behavior.
  */
 function wp_die( $message, $title = '', $args = array() ) {
        if ( defined( 'DOING_AJAX' ) && DOING_AJAX )
  */
 function wp_die( $message, $title = '', $args = array() ) {
        if ( defined( 'DOING_AJAX' ) && DOING_AJAX )
@@ -2776,7 +2786,7 @@ function wp_die( $message, $title = '', $args = array() ) {
  *
  * @param string $message Error message.
  * @param string $title Error title.
  *
  * @param string $message Error message.
  * @param string $title Error title.
- * @param string|array $args Optional arguements to control behaviour.
+ * @param string|array $args Optional arguments to control behavior.
  */
 function _default_wp_die_handler( $message, $title = '', $args = array() ) {
        $defaults = array( 'response' => 500 );
  */
 function _default_wp_die_handler( $message, $title = '', $args = array() ) {
        $defaults = array( 'response' => 500 );
@@ -2808,48 +2818,105 @@ function _default_wp_die_handler( $message, $title = '', $args = array() ) {
 
        if ( isset( $r['back_link'] ) && $r['back_link'] ) {
                $back_text = $have_gettext? __('&laquo; Back') : '&laquo; Back';
 
        if ( isset( $r['back_link'] ) && $r['back_link'] ) {
                $back_text = $have_gettext? __('&laquo; Back') : '&laquo; Back';
-               $message .= "\n<p><a href='javascript:history.back()'>$back_text</p>";
+               $message .= "\n<p><a href='javascript:history.back()'>$back_text</a></p>";
        }
 
        }
 
-       if ( defined( 'WP_SITEURL' ) && '' != WP_SITEURL )
-               $admin_dir = WP_SITEURL . '/wp-admin/';
-       elseif ( function_exists( 'get_bloginfo' ) && '' != get_bloginfo( 'wpurl' ) )
-               $admin_dir = get_bloginfo( 'wpurl' ) . '/wp-admin/';
-       elseif ( strpos( $_SERVER['PHP_SELF'], 'wp-admin' ) !== false )
-               $admin_dir = '';
-       else
-               $admin_dir = 'wp-admin/';
-
        if ( !function_exists( 'did_action' ) || !did_action( 'admin_head' ) ) :
        if ( !function_exists( 'did_action' ) || !did_action( 'admin_head' ) ) :
-       if ( !headers_sent() ) {
-               status_header( $r['response'] );
-               nocache_headers();
-               header( 'Content-Type: text/html; charset=utf-8' );
-       }
+               if ( !headers_sent() ) {
+                       status_header( $r['response'] );
+                       nocache_headers();
+                       header( 'Content-Type: text/html; charset=utf-8' );
+               }
 
 
-       if ( empty($title) )
-               $title = $have_gettext ? __('WordPress &rsaquo; Error') : 'WordPress &rsaquo; Error';
+               if ( empty($title) )
+                       $title = $have_gettext ? __('WordPress &rsaquo; Error') : 'WordPress &rsaquo; Error';
 
 
-       $text_direction = 'ltr';
-       if ( isset($r['text_direction']) && 'rtl' == $r['text_direction'] )
-               $text_direction = 'rtl';
-       elseif ( function_exists( 'is_rtl' ) && is_rtl() )
-               $text_direction = 'rtl';
+               $text_direction = 'ltr';
+               if ( isset($r['text_direction']) && 'rtl' == $r['text_direction'] )
+                       $text_direction = 'rtl';
+               elseif ( function_exists( 'is_rtl' ) && is_rtl() )
+                       $text_direction = 'rtl';
 ?>
 ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!-- Ticket #11289, IE bug fix: always pad the error page with enough characters such that it is greater than 512 bytes, even after gzip compression abcdefghijklmnopqrstuvwxyz1234567890aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz11223344556677889900abacbcbdcdcededfefegfgfhghgihihjijikjkjlklkmlmlnmnmononpopoqpqprqrqsrsrtstsubcbcdcdedefefgfabcadefbghicjkldmnoepqrfstugvwxhyz1i234j567k890laabmbccnddeoeffpgghqhiirjjksklltmmnunoovppqwqrrxsstytuuzvvw0wxx1yyz2z113223434455666777889890091abc2def3ghi4jkl5mno6pqr7stu8vwx9yz11aab2bcc3dd4ee5ff6gg7hh8ii9j0jk1kl2lmm3nnoo4p5pq6qrr7ss8tt9uuvv0wwx1x2yyzz13aba4cbcb5dcdc6dedfef8egf9gfh0ghg1ihi2hji3jik4jkj5lkl6kml7mln8mnm9ono -->
+<!DOCTYPE html>
+<!-- Ticket #11289, IE bug fix: always pad the error page with enough characters such that it is greater than 512 bytes, even after gzip compression abcdefghijklmnopqrstuvwxyz1234567890aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz11223344556677889900abacbcbdcdcededfefegfgfhghgihihjijikjkjlklkmlmlnmnmononpopoqpqprqrqsrsrtstsubcbcdcdedefefgfabcadefbghicjkldmnoepqrfstugvwxhyz1i234j567k890laabmbccnddeoeffpgghqhiirjjksklltmmnunoovppqwqrrxsstytuuzvvw0wxx1yyz2z113223434455666777889890091abc2def3ghi4jkl5mno6pqr7stu8vwx9yz11aab2bcc3dd4ee5ff6gg7hh8ii9j0jk1kl2lmm3nnoo4p5pq6qrr7ss8tt9uuvv0wwx1x2yyzz13aba4cbcb5dcdc6dedfef8egf9gfh0ghg1ihi2hji3jik4jkj5lkl6kml7mln8mnm9ono
+-->
 <html xmlns="http://www.w3.org/1999/xhtml" <?php if ( function_exists( 'language_attributes' ) && function_exists( 'is_rtl' ) ) language_attributes(); else echo "dir='$text_direction'"; ?>>
 <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title><?php echo $title ?></title>
 <html xmlns="http://www.w3.org/1999/xhtml" <?php if ( function_exists( 'language_attributes' ) && function_exists( 'is_rtl' ) ) language_attributes(); else echo "dir='$text_direction'"; ?>>
 <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title><?php echo $title ?></title>
-       <link rel="stylesheet" href="<?php echo $admin_dir; ?>css/install.css" type="text/css" />
-<?php
-if ( 'rtl' == $text_direction ) : ?>
-       <link rel="stylesheet" href="<?php echo $admin_dir; ?>css/install-rtl.css" type="text/css" />
-<?php endif; ?>
+       <style type="text/css">
+               html {
+                       background: #f9f9f9;
+               }
+               body {
+                       background: #fff;
+                       color: #333;
+                       font-family: sans-serif;
+                       margin: 2em auto;
+                       padding: 1em 2em;
+                       -webkit-border-radius: 3px;
+                       border-radius: 3px;
+                       border: 1px solid #dfdfdf;
+                       max-width: 700px;
+               }
+               #error-page {
+                       margin-top: 50px;
+               }
+               #error-page p {
+                       font-size: 14px;
+                       line-height: 1.5;
+                       margin: 25px 0 20px;
+               }
+               #error-page code {
+                       font-family: Consolas, Monaco, monospace;
+               }
+               ul li {
+                       margin-bottom: 10px;
+                       font-size: 14px ;
+               }
+               a {
+                       color: #21759B;
+                       text-decoration: none;
+               }
+               a:hover {
+                       color: #D54E21;
+               }
+
+               .button {
+                       font-family: sans-serif;
+                       text-decoration: none;
+                       font-size: 14px !important;
+                       line-height: 16px;
+                       padding: 6px 12px;
+                       cursor: pointer;
+                       border: 1px solid #bbb;
+                       color: #464646;
+                       -webkit-border-radius: 15px;
+                       border-radius: 15px;
+                       -moz-box-sizing: content-box;
+                       -webkit-box-sizing: content-box;
+                       box-sizing: content-box;
+               }
+
+               .button:hover {
+                       color: #000;
+                       border-color: #666;
+               }
+
+               .button {
+                       background: #f2f2f2 url(<?php echo wp_guess_url(); ?>/wp-admin/images/white-grad.png) repeat-x scroll left top;
+               }
+
+               .button:active {
+                       background: #eee url(<?php echo wp_guess_url(); ?>/wp-admin/images/white-grad-active.png) repeat-x scroll left top;
+               }
+               <?php if ( 'rtl' == $text_direction ) : ?>
+               body { font-family: Tahoma, Arial; }
+               <?php endif; ?>
+       </style>
 </head>
 <body id="error-page">
 </head>
 <body id="error-page">
-<?php endif; ?>
+<?php endif; // !function_exists( 'did_action' ) || !did_action( 'admin_head' ) ?>
        <?php echo $message; ?>
 </body>
 </html>
        <?php echo $message; ?>
 </body>
 </html>
@@ -2867,7 +2934,7 @@ if ( 'rtl' == $text_direction ) : ?>
  *
  * @param string $message Error message.
  * @param string $title Error title.
  *
  * @param string $message Error message.
  * @param string $title Error title.
- * @param string|array $args Optional arguements to control behaviour.
+ * @param string|array $args Optional arguments to control behavior.
  */
 function _xmlrpc_wp_die_handler( $message, $title = '', $args = array() ) {
        global $wp_xmlrpc_server;
  */
 function _xmlrpc_wp_die_handler( $message, $title = '', $args = array() ) {
        global $wp_xmlrpc_server;
@@ -2896,7 +2963,7 @@ function _xmlrpc_wp_die_filter() {
 /**
  * Retrieve the WordPress home page URL.
  *
 /**
  * Retrieve the WordPress home page URL.
  *
- * If the constant named 'WP_HOME' exists, then it willl be used and returned by
+ * If the constant named 'WP_HOME' exists, then it will be used and returned by
  * the function. This can be used to counter the redirection on your local
  * development environment.
  *
  * the function. This can be used to counter the redirection on your local
  * development environment.
  *
@@ -2909,7 +2976,7 @@ function _xmlrpc_wp_die_filter() {
  */
 function _config_wp_home( $url = '' ) {
        if ( defined( 'WP_HOME' ) )
  */
 function _config_wp_home( $url = '' ) {
        if ( defined( 'WP_HOME' ) )
-               return WP_HOME;
+               return untrailingslashit( WP_HOME );
        return $url;
 }
 
        return $url;
 }
 
@@ -2929,7 +2996,7 @@ function _config_wp_home( $url = '' ) {
  */
 function _config_wp_siteurl( $url = '' ) {
        if ( defined( 'WP_SITEURL' ) )
  */
 function _config_wp_siteurl( $url = '' ) {
        if ( defined( 'WP_SITEURL' ) )
-               return WP_SITEURL;
+               return untrailingslashit( WP_SITEURL );
        return $url;
 }
 
        return $url;
 }
 
@@ -3098,7 +3165,7 @@ function wp_parse_args( $args, $defaults = '' ) {
 }
 
 /**
 }
 
 /**
- * Clean up an array, comma- or space-separated list of IDs
+ * Clean up an array, comma- or space-separated list of IDs.
  *
  * @since 3.0.0
  *
  *
  * @since 3.0.0
  *
@@ -3113,7 +3180,7 @@ function wp_parse_id_list( $list ) {
 }
 
 /**
 }
 
 /**
- * Extract a slice of an array, given a list of keys
+ * Extract a slice of an array, given a list of keys.
  *
  * @since 3.1.0
  *
  *
  * @since 3.1.0
  *
@@ -3131,7 +3198,7 @@ function wp_array_slice_assoc( $array, $keys ) {
 }
 
 /**
 }
 
 /**
- * Filters a list of objects, based on a set of key => value arguments
+ * Filters a list of objects, based on a set of key => value arguments.
  *
  * @since 3.0.0
  *
  *
  * @since 3.0.0
  *
@@ -3155,7 +3222,7 @@ function wp_filter_object_list( $list, $args = array(), $operator = 'and', $fiel
 }
 
 /**
 }
 
 /**
- * Filters a list of objects, based on a set of key => value arguments
+ * Filters a list of objects, based on a set of key => value arguments.
  *
  * @since 3.1.0
  *
  *
  * @since 3.1.0
  *
@@ -3180,9 +3247,16 @@ function wp_list_filter( $list, $args = array(), $operator = 'AND' ) {
        $filtered = array();
 
        foreach ( $list as $key => $obj ) {
        $filtered = array();
 
        foreach ( $list as $key => $obj ) {
-               $matched = count( array_intersect_assoc( (array) $obj, $args ) );
+               $to_match = (array) $obj;
+
+               $matched = 0;
+               foreach ( $args as $m_key => $m_value ) {
+                       if ( $m_value == $to_match[ $m_key ] )
+                               $matched++;
+               }
+
                if ( ( 'AND' == $operator && $matched == $count )
                if ( ( 'AND' == $operator && $matched == $count )
-                 || ( 'OR' == $operator && $matched <= $count )
+                 || ( 'OR' == $operator && $matched > 0 )
                  || ( 'NOT' == $operator && 0 == $matched ) ) {
                        $filtered[$key] = $obj;
                }
                  || ( 'NOT' == $operator && 0 == $matched ) ) {
                        $filtered[$key] = $obj;
                }
@@ -3192,7 +3266,7 @@ function wp_list_filter( $list, $args = array(), $operator = 'AND' ) {
 }
 
 /**
 }
 
 /**
- * Pluck a certain field out of each object in a list
+ * Pluck a certain field out of each object in a list.
  *
  * @since 3.1.0
  *
  *
  * @since 3.1.0
  *
@@ -3202,8 +3276,10 @@ function wp_list_filter( $list, $args = array(), $operator = 'AND' ) {
  */
 function wp_list_pluck( $list, $field ) {
        foreach ( $list as $key => $value ) {
  */
 function wp_list_pluck( $list, $field ) {
        foreach ( $list as $key => $value ) {
-               $value = (array) $value;
-               $list[ $key ] = $value[ $field ];
+               if ( is_object( $value ) )
+                       $list[ $key ] = $value->$field;
+               else
+                       $list[ $key ] = $value[ $field ];
        }
 
        return $list;
        }
 
        return $list;
@@ -3285,15 +3361,15 @@ function dead_db() {
        nocache_headers();
        header( 'Content-Type: text/html; charset=utf-8' );
 ?>
        nocache_headers();
        header( 'Content-Type: text/html; charset=utf-8' );
 ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html>
 <html xmlns="http://www.w3.org/1999/xhtml" <?php if ( function_exists( 'language_attributes' ) ) language_attributes(); ?>>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <html xmlns="http://www.w3.org/1999/xhtml" <?php if ( function_exists( 'language_attributes' ) ) language_attributes(); ?>>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-       <title>Database Error</title>
+       <title><?php echo /*WP_I18N_DB_ERROR*/'Database Error'/*/WP_I18N_DB_ERROR*/; ?></title>
 
 </head>
 <body>
 
 </head>
 <body>
-       <h1>Error establishing a database connection</h1>
+       <h1><?php echo /*WP_I18N_DB_CONNECTION_ERROR*/'Error establishing a database connection'/*/WP_I18N_DB_CONNECTION_ERROR*/; ?></h1>
 </body>
 </html>
 <?php
 </body>
 </html>
 <?php
@@ -3305,7 +3381,7 @@ function dead_db() {
  *
  * @since 2.5.0
  *
  *
  * @since 2.5.0
  *
- * @param mixed $maybeint Data you wish to have convered to an nonnegative integer
+ * @param mixed $maybeint Data you wish to have converted to a nonnegative integer
  * @return int An nonnegative integer
  */
 function absint( $maybeint ) {
  * @return int An nonnegative integer
  */
 function absint( $maybeint ) {
@@ -3372,7 +3448,7 @@ function url_is_accessable_via_ssl($url)
  * @param string $version The version of WordPress that deprecated the function
  * @param string $replacement Optional. The function that should have been called
  */
  * @param string $version The version of WordPress that deprecated the function
  * @param string $replacement Optional. The function that should have been called
  */
-function _deprecated_function( $function, $version, $replacement=null ) {
+function _deprecated_function( $function, $version, $replacement = null ) {
 
        do_action( 'deprecated_function_run', $function, $replacement, $version );
 
 
        do_action( 'deprecated_function_run', $function, $replacement, $version );
 
@@ -3498,12 +3574,13 @@ function _doing_it_wrong( $function, $message, $version ) {
        // Allow plugin to filter the output error trigger
        if ( WP_DEBUG && apply_filters( 'doing_it_wrong_trigger_error', true ) ) {
                $version = is_null( $version ) ? '' : sprintf( __( '(This message was added in version %s.)' ), $version );
        // Allow plugin to filter the output error trigger
        if ( WP_DEBUG && apply_filters( 'doing_it_wrong_trigger_error', true ) ) {
                $version = is_null( $version ) ? '' : sprintf( __( '(This message was added in version %s.)' ), $version );
+               $message .= ' ' . __( 'Please see <a href="http://codex.wordpress.org/Debugging_in_WordPress">Debugging in WordPress</a> for more information.' );
                trigger_error( sprintf( __( '%1$s was called <strong>incorrectly</strong>. %2$s %3$s' ), $function, $message, $version ) );
        }
 }
 
 /**
                trigger_error( sprintf( __( '%1$s was called <strong>incorrectly</strong>. %2$s %3$s' ), $function, $message, $version ) );
        }
 }
 
 /**
- * Is the server running earlier than 1.5.0 version of lighttpd
+ * Is the server running earlier than 1.5.0 version of lighttpd?
  *
  * @since 2.5.0
  *
  *
  * @since 2.5.0
  *
@@ -3516,7 +3593,7 @@ function is_lighttpd_before_150() {
 }
 
 /**
 }
 
 /**
- * Does the specified module exist in the apache config?
+ * Does the specified module exist in the Apache config?
  *
  * @since 2.5.0
  *
  *
  * @since 2.5.0
  *
@@ -3545,7 +3622,7 @@ function apache_mod_loaded($mod, $default = false) {
 }
 
 /**
 }
 
 /**
- * Check if IIS 7 supports pretty permalinks
+ * Check if IIS 7 supports pretty permalinks.
  *
  * @since 2.8.0
  *
  *
  * @since 2.8.0
  *
@@ -3559,7 +3636,7 @@ function iis7_supports_permalinks() {
                /* First we check if the DOMDocument class exists. If it does not exist,
                 * which is the case for PHP 4.X, then we cannot easily update the xml configuration file,
                 * hence we just bail out and tell user that pretty permalinks cannot be used.
                /* First we check if the DOMDocument class exists. If it does not exist,
                 * which is the case for PHP 4.X, then we cannot easily update the xml configuration file,
                 * hence we just bail out and tell user that pretty permalinks cannot be used.
-                * This is not a big issue because PHP 4.X is going to be depricated and for IIS it
+                * This is not a big issue because PHP 4.X is going to be deprecated and for IIS it
                 * is recommended to use PHP 5.X NTS.
                 * Next we check if the URL Rewrite Module 1.1 is loaded and enabled for the web site. When
                 * URL Rewrite 1.1 is loaded it always sets a server variable called 'IIS_UrlRewriteModule'.
                 * is recommended to use PHP 5.X NTS.
                 * Next we check if the URL Rewrite Module 1.1 is loaded and enabled for the web site. When
                 * URL Rewrite 1.1 is loaded it always sets a server variable called 'IIS_UrlRewriteModule'.
@@ -3587,16 +3664,16 @@ function iis7_supports_permalinks() {
  * @return int 0 means nothing is wrong, greater than 0 means something was wrong.
  */
 function validate_file( $file, $allowed_files = '' ) {
  * @return int 0 means nothing is wrong, greater than 0 means something was wrong.
  */
 function validate_file( $file, $allowed_files = '' ) {
-       if ( false !== strpos( $file, '..' ))
+       if ( false !== strpos( $file, '..' ) )
                return 1;
 
                return 1;
 
-       if ( false !== strpos( $file, './' ))
+       if ( false !== strpos( $file, './' ) )
                return 1;
 
                return 1;
 
-       if (!empty ( $allowed_files ) && (!in_array( $file, $allowed_files ) ) )
+       if ( ! empty( $allowed_files ) && ! in_array( $file, $allowed_files ) )
                return 3;
 
                return 3;
 
-       if (':' == substr( $file, 1, 1 ))
+       if (':' == substr( $file, 1, 1 ) )
                return 2;
 
        return 0;
                return 2;
 
        return 0;
@@ -3681,6 +3758,30 @@ function wp_guess_url() {
        return rtrim($url, '/');
 }
 
        return rtrim($url, '/');
 }
 
+/**
+ * Temporarily suspend cache additions.
+ *
+ * Stops more data being added to the cache, but still allows cache retrieval.
+ * This is useful for actions, such as imports, when a lot of data would otherwise
+ * be almost uselessly added to the cache.
+ *
+ * Suspension lasts for a single page load at most. Remember to call this
+ * function again if you wish to re-enable cache adds earlier.
+ *
+ * @since 3.3.0
+ *
+ * @param bool $suspend Optional. Suspends additions if true, re-enables them if false.
+ * @return bool The current suspend setting
+ */
+function wp_suspend_cache_addition( $suspend = null ) {
+       static $_suspend = false;
+
+       if ( is_bool( $suspend ) )
+               $_suspend = $suspend;
+
+       return $_suspend;
+}
+
 /**
  * Suspend cache invalidation.
  *
 /**
  * Suspend cache invalidation.
  *
@@ -3739,14 +3840,13 @@ function get_site_option( $option, $default = false, $use_cache = true ) {
                        $row = $wpdb->get_row( $wpdb->prepare("SELECT meta_value FROM $wpdb->sitemeta WHERE meta_key = %s AND site_id = %d", $option, $wpdb->siteid ) );
 
                        // Has to be get_row instead of get_var because of funkiness with 0, false, null values
                        $row = $wpdb->get_row( $wpdb->prepare("SELECT meta_value FROM $wpdb->sitemeta WHERE meta_key = %s AND site_id = %d", $option, $wpdb->siteid ) );
 
                        // Has to be get_row instead of get_var because of funkiness with 0, false, null values
-                       if ( is_object( $row ) )
+                       if ( is_object( $row ) ) {
                                $value = $row->meta_value;
                                $value = $row->meta_value;
-                       else
+                               $value = maybe_unserialize( $value );
+                               wp_cache_set( $cache_key, $value, 'site-options' );
+                       } else {
                                $value = $default;
                                $value = $default;
-
-                       $value = maybe_unserialize( $value );
-
-                       wp_cache_set( $cache_key, $value, 'site-options' );
+                       }
                }
        }
 
                }
        }
 
@@ -3756,6 +3856,8 @@ function get_site_option( $option, $default = false, $use_cache = true ) {
 /**
  * Add a new site option.
  *
 /**
  * Add a new site option.
  *
+ * Existing options will not be updated. Note that prior to 3.3 this wasn't the case.
+ *
  * @see add_option()
  * @package WordPress
  * @subpackage Option
  * @see add_option()
  * @package WordPress
  * @subpackage Option
@@ -3779,22 +3881,24 @@ function add_site_option( $option, $value ) {
        } else {
                $cache_key = "{$wpdb->siteid}:$option";
 
        } else {
                $cache_key = "{$wpdb->siteid}:$option";
 
-               if ( $wpdb->get_row( $wpdb->prepare( "SELECT meta_value FROM $wpdb->sitemeta WHERE meta_key = %s AND site_id = %d", $option, $wpdb->siteid ) ) )
-                       return update_site_option( $option, $value );
+               if ( false !== get_site_option( $option ) )
+                       return false;
 
                $value = sanitize_option( $option, $value );
                wp_cache_set( $cache_key, $value, 'site-options' );
 
                $_value = $value;
 
                $value = sanitize_option( $option, $value );
                wp_cache_set( $cache_key, $value, 'site-options' );
 
                $_value = $value;
-               $value = maybe_serialize($value);
+               $value = maybe_serialize( $value );
                $result = $wpdb->insert( $wpdb->sitemeta, array('site_id' => $wpdb->siteid, 'meta_key' => $option, 'meta_value' => $value ) );
                $value = $_value;
        }
 
                $result = $wpdb->insert( $wpdb->sitemeta, array('site_id' => $wpdb->siteid, 'meta_key' => $option, 'meta_value' => $value ) );
                $value = $_value;
        }
 
-       do_action( "add_site_option_{$option}", $option, $value );
-       do_action( "add_site_option", $option, $value );
-
-       return $result;
+       if ( $result ) {
+               do_action( "add_site_option_{$option}", $option, $value );
+               do_action( "add_site_option", $option, $value );
+               return true;
+       }
+       return false;
 }
 
 /**
 }
 
 /**
@@ -3864,14 +3968,14 @@ function update_site_option( $option, $value ) {
        if ( $value === $oldvalue )
                return false;
 
        if ( $value === $oldvalue )
                return false;
 
+       if ( false === $oldvalue )
+               return add_site_option( $option, $value );
+
        if ( !is_multisite() ) {
                $result = update_option( $option, $value );
        } else {
        if ( !is_multisite() ) {
                $result = update_option( $option, $value );
        } else {
-               $cache_key = "{$wpdb->siteid}:$option";
-
-               if ( $value && !$wpdb->get_row( $wpdb->prepare( "SELECT meta_value FROM $wpdb->sitemeta WHERE meta_key = %s AND site_id = %d", $option, $wpdb->siteid ) ) )
-                       return add_site_option( $option, $value );
                $value = sanitize_option( $option, $value );
                $value = sanitize_option( $option, $value );
+               $cache_key = "{$wpdb->siteid}:$option";
                wp_cache_set( $cache_key, $value, 'site-options' );
 
                $_value = $value;
                wp_cache_set( $cache_key, $value, 'site-options' );
 
                $_value = $value;
@@ -3881,15 +3985,15 @@ function update_site_option( $option, $value ) {
        }
 
        if ( $result ) {
        }
 
        if ( $result ) {
-               do_action( "update_site_option_{$option}", $option, $value );
-               do_action( "update_site_option", $option, $value );
+               do_action( "update_site_option_{$option}", $option, $value, $oldvalue );
+               do_action( "update_site_option", $option, $value, $oldvalue );
                return true;
        }
        return false;
 }
 
 /**
                return true;
        }
        return false;
 }
 
 /**
- * Delete a site transient
+ * Delete a site transient.
  *
  * @since 2.9.0
  * @package WordPress
  *
  * @since 2.9.0
  * @package WordPress
@@ -3920,7 +4024,7 @@ function delete_site_transient( $transient ) {
 }
 
 /**
 }
 
 /**
- * Get the value of a site transient
+ * Get the value of a site transient.
  *
  * If the transient does not exist or does not have a value, then the return value
  * will be false.
  *
  * If the transient does not exist or does not have a value, then the return value
  * will be false.
@@ -3969,7 +4073,7 @@ function get_site_transient( $transient ) {
 }
 
 /**
 }
 
 /**
- * Set/update the value of a site transient
+ * Set/update the value of a site transient.
  *
  * You do not need to serialize values, if the value needs to be serialize, then
  * it will be serialized before it is set.
  *
  * You do not need to serialize values, if the value needs to be serialize, then
  * it will be serialized before it is set.
@@ -4016,7 +4120,7 @@ function set_site_transient( $transient, $value, $expiration = 0 ) {
 }
 
 /**
 }
 
 /**
- * is main site
+ * Is main site?
  *
  *
  * @since 3.0.0
  *
  *
  * @since 3.0.0
@@ -4062,9 +4166,9 @@ function global_terms_enabled() {
 }
 
 /**
 }
 
 /**
- * gmt_offset modification for smart timezone handling
+ * gmt_offset modification for smart timezone handling.
  *
  *
- * Overrides the gmt_offset option if we have a timezone_string available
+ * Overrides the gmt_offset option if we have a timezone_string available.
  *
  * @since 2.8.0
  *
  *
  * @since 2.8.0
  *
@@ -4131,7 +4235,7 @@ function _wp_timezone_choice_usort_callback( $a, $b ) {
 }
 
 /**
 }
 
 /**
- * Gives a nicely formatted list of timezone strings // temporary! Not in final
+ * Gives a nicely formatted list of timezone strings. // temporary! Not in final
  *
  * @since 2.9.0
  *
  *
  * @since 2.9.0
  *
@@ -4260,7 +4364,7 @@ function wp_timezone_choice( $selected_zone ) {
 }
 
 /**
 }
 
 /**
- * Strip close comment and close php tags from file headers used by WP
+ * Strip close comment and close php tags from file headers used by WP.
  * See http://core.trac.wordpress.org/ticket/8497
  *
  * @since 2.8.0
  * See http://core.trac.wordpress.org/ticket/8497
  *
  * @since 2.8.0
@@ -4321,7 +4425,7 @@ function wp_scheduled_delete() {
  * Retrieve metadata from a file.
  *
  * Searches for metadata in the first 8kiB of a file, such as a plugin or theme.
  * Retrieve metadata from a file.
  *
  * Searches for metadata in the first 8kiB of a file, such as a plugin or theme.
- * Each piece of metadata must be on its own line. Fields can not span multple
+ * Each piece of metadata must be on its own line. Fields can not span multiple
  * lines, the value will get cut at the end of the first line.
  *
  * If the file data is not within that first 8kiB, then the author should correct
  * lines, the value will get cut at the end of the first line.
  *
  * If the file data is not within that first 8kiB, then the author should correct
@@ -4370,7 +4474,7 @@ function get_file_data( $file, $default_headers, $context = '' ) {
 }
 
 /**
 }
 
 /**
- * Used internally to tidy up the search terms
+ * Used internally to tidy up the search terms.
  *
  * @access private
  * @since 2.9.0
  *
  * @access private
  * @since 2.9.0
@@ -4383,9 +4487,9 @@ function _search_terms_tidy($t) {
 }
 
 /**
 }
 
 /**
- * Returns true
+ * Returns true.
  *
  *
- * Useful for returning true to filters easily
+ * Useful for returning true to filters easily.
  *
  * @since 3.0.0
  * @see __return_false()
  *
  * @since 3.0.0
  * @see __return_false()
@@ -4396,9 +4500,9 @@ function __return_true() {
 }
 
 /**
 }
 
 /**
- * Returns false
+ * Returns false.
  *
  *
- * Useful for returning false to filters easily
+ * Useful for returning false to filters easily.
  *
  * @since 3.0.0
  * @see __return_true()
  *
  * @since 3.0.0
  * @see __return_true()
@@ -4409,9 +4513,9 @@ function __return_false() {
 }
 
 /**
 }
 
 /**
- * Returns 0
+ * Returns 0.
  *
  *
- * Useful for returning 0 to filters easily
+ * Useful for returning 0 to filters easily.
  *
  * @since 3.0.0
  * @see __return_zero()
  *
  * @since 3.0.0
  * @see __return_zero()
@@ -4422,9 +4526,9 @@ function __return_zero() {
 }
 
 /**
 }
 
 /**
- * Returns an empty array
+ * Returns an empty array.
  *
  *
- * Useful for returning an empty array to filters easily
+ * Useful for returning an empty array to filters easily.
  *
  * @since 3.0.0
  * @see __return_zero()
  *
  * @since 3.0.0
  * @see __return_zero()
@@ -4501,7 +4605,7 @@ function wp_find_hierarchy_loop( $callback, $start, $start_parent, $callback_arg
  * @since 3.1.0
  * @access private
  *
  * @since 3.1.0
  * @access private
  *
- * @param callback $callback function that accupts ( ID, callback_arg, ... ) and outputs parent_ID
+ * @param callback $callback function that accepts ( ID, callback_arg, ... ) and outputs parent_ID
  * @param int $start The ID to start the loop check at
  * @param array $override an array of ( ID => parent_ID, ... ) to use instead of $callback
  * @param array $callback_args optional additional arguments to send to $callback
  * @param int $start The ID to start the loop check at
  * @param array $override an array of ( ID => parent_ID, ... ) to use instead of $callback
  * @param array $callback_args optional additional arguments to send to $callback
@@ -4549,4 +4653,24 @@ function send_frame_options_header() {
        @header( 'X-Frame-Options: SAMEORIGIN' );
 }
 
        @header( 'X-Frame-Options: SAMEORIGIN' );
 }
 
+/**
+ * Retrieve a list of protocols to allow in HTML attributes.
+ *
+ * @since 3.3.0
+ * @see wp_kses()
+ * @see esc_url()
+ *
+ * @return array Array of allowed protocols
+ */
+function wp_allowed_protocols() {
+       static $protocols;
+
+       if ( empty( $protocols ) ) {
+               $protocols = array( 'http', 'https', 'ftp', 'ftps', 'mailto', 'news', 'irc', 'gopher', 'nntp', 'feed', 'telnet', 'mms', 'rtsp', 'svn' );
+               $protocols = apply_filters( 'kses_allowed_protocols', $protocols );
+       }
+
+       return $protocols;
+}
+
 ?>
 ?>
index af2055d37b6a9082b21071f9d28f0d656ab6bf38..228a3bfe1b69f8f491000ff39c14fe890ad5e1c4 100644 (file)
@@ -24,9 +24,13 @@ function wp_print_scripts( $handles = false ) {
                $handles = false;
 
        global $wp_scripts;
                $handles = false;
 
        global $wp_scripts;
-       if ( !is_a($wp_scripts, 'WP_Scripts') ) {
+       if ( ! is_a( $wp_scripts, 'WP_Scripts' ) ) {
+               if ( ! did_action( 'init' ) )
+                       _doing_it_wrong( __FUNCTION__, sprintf( __( 'Scripts and styles should not be registered or enqueued until the %1$s, %2$s, or %3$s hooks.' ),
+                               '<code>wp_enqueue_scripts</code>', '<code>admin_enqueue_scripts</code>', '<code>init</code>' ), '3.3' );
+
                if ( !$handles )
                if ( !$handles )
-                       return array(); // No need to instantiate if nothing's there.
+                       return array(); // No need to instantiate if nothing is there.
                else
                        $wp_scripts = new WP_Scripts();
        }
                else
                        $wp_scripts = new WP_Scripts();
        }
@@ -35,7 +39,7 @@ function wp_print_scripts( $handles = false ) {
 }
 
 /**
 }
 
 /**
- * Register new JavaScript file.
+ * Register new Javascript file.
  *
  * @since r16
  * @param string $handle Script name
  *
  * @since r16
  * @param string $handle Script name
@@ -47,8 +51,12 @@ function wp_print_scripts( $handles = false ) {
  */
 function wp_register_script( $handle, $src, $deps = array(), $ver = false, $in_footer = false ) {
        global $wp_scripts;
  */
 function wp_register_script( $handle, $src, $deps = array(), $ver = false, $in_footer = false ) {
        global $wp_scripts;
-       if ( !is_a($wp_scripts, 'WP_Scripts') )
+       if ( ! is_a( $wp_scripts, 'WP_Scripts' ) ) {
+               if ( ! did_action( 'init' ) )
+                       _doing_it_wrong( __FUNCTION__, sprintf( __( 'Scripts and styles should not be registered or enqueued until the %1$s, %2$s, or %3$s hooks.' ),
+                               '<code>wp_enqueue_scripts</code>', '<code>admin_enqueue_scripts</code>', '<code>init</code>' ), '3.3' );
                $wp_scripts = new WP_Scripts();
                $wp_scripts = new WP_Scripts();
+       }
 
        $wp_scripts->add( $handle, $src, $deps, $ver );
        if ( $in_footer )
 
        $wp_scripts->add( $handle, $src, $deps, $ver );
        if ( $in_footer )
@@ -56,17 +64,34 @@ function wp_register_script( $handle, $src, $deps = array(), $ver = false, $in_f
 }
 
 /**
 }
 
 /**
- * Localizes a script.
+ * Wrapper for $wp_scripts->localize().
  *
  *
- * Localizes only if script has already been added.
+ * Used to localizes a script.
+ * Works only if the script has already been added.
+ * Accepts an associative array $l10n and creates JS object:
+ * "$object_name" = {
+ *   key: value,
+ *   key: value,
+ *   ...
+ * }
+ * See http://core.trac.wordpress.org/ticket/11520 for more information.
  *
  * @since r16
  *
  * @since r16
- * @see WP_Scripts::localize()
+ *
+ * @param string $handle The script handle that was registered or used in script-loader
+ * @param string $object_name Name for the created JS object. This is passed directly so it should be qualified JS variable /[a-zA-Z0-9_]+/
+ * @param array $l10n Associative PHP array containing the translated strings. HTML entities will be converted and the array will be JSON encoded.
+ * @return bool Whether the localization was added successfully.
  */
 function wp_localize_script( $handle, $object_name, $l10n ) {
        global $wp_scripts;
  */
 function wp_localize_script( $handle, $object_name, $l10n ) {
        global $wp_scripts;
-       if ( !is_a($wp_scripts, 'WP_Scripts') )
+       if ( ! is_a( $wp_scripts, 'WP_Scripts' ) ) {
+               if ( ! did_action( 'init' ) )
+                       _doing_it_wrong( __FUNCTION__, sprintf( __( 'Scripts and styles should not be registered or enqueued until the %1$s, %2$s, or %3$s hooks.' ),
+                               '<code>wp_enqueue_scripts</code>', '<code>admin_enqueue_scripts</code>', '<code>init</code>' ), '3.3' );
+
                return false;
                return false;
+       }
 
        return $wp_scripts->localize( $handle, $object_name, $l10n );
 }
 
        return $wp_scripts->localize( $handle, $object_name, $l10n );
 }
@@ -79,8 +104,12 @@ function wp_localize_script( $handle, $object_name, $l10n ) {
  */
 function wp_deregister_script( $handle ) {
        global $wp_scripts;
  */
 function wp_deregister_script( $handle ) {
        global $wp_scripts;
-       if ( !is_a($wp_scripts, 'WP_Scripts') )
+       if ( ! is_a( $wp_scripts, 'WP_Scripts' ) ) {
+               if ( ! did_action( 'init' ) )
+                       _doing_it_wrong( __FUNCTION__, sprintf( __( 'Scripts and styles should not be registered or enqueued until the %1$s, %2$s, or %3$s hooks.' ),
+                               '<code>wp_enqueue_scripts</code>', '<code>admin_enqueue_scripts</code>', '<code>init</code>' ), '3.3' );
                $wp_scripts = new WP_Scripts();
                $wp_scripts = new WP_Scripts();
+       }
 
        $wp_scripts->remove( $handle );
 }
 
        $wp_scripts->remove( $handle );
 }
@@ -95,8 +124,12 @@ function wp_deregister_script( $handle ) {
  */
 function wp_enqueue_script( $handle, $src = false, $deps = array(), $ver = false, $in_footer = false ) {
        global $wp_scripts;
  */
 function wp_enqueue_script( $handle, $src = false, $deps = array(), $ver = false, $in_footer = false ) {
        global $wp_scripts;
-       if ( !is_a($wp_scripts, 'WP_Scripts') )
+       if ( ! is_a( $wp_scripts, 'WP_Scripts' ) ) {
+               if ( ! did_action( 'init' ) )
+                       _doing_it_wrong( __FUNCTION__, sprintf( __( 'Scripts and styles should not be registered or enqueued until the %1$s, %2$s, or %3$s hooks.' ),
+                               '<code>wp_enqueue_scripts</code>', '<code>admin_enqueue_scripts</code>', '<code>init</code>' ), '3.3' );
                $wp_scripts = new WP_Scripts();
                $wp_scripts = new WP_Scripts();
+       }
 
        if ( $src ) {
                $_handle = explode('?', $handle);
 
        if ( $src ) {
                $_handle = explode('?', $handle);
@@ -115,8 +148,12 @@ function wp_enqueue_script( $handle, $src = false, $deps = array(), $ver = false
  */
 function wp_dequeue_script( $handle ) {
        global $wp_scripts;
  */
 function wp_dequeue_script( $handle ) {
        global $wp_scripts;
-       if ( !is_a($wp_scripts, 'WP_Scripts') )
+       if ( ! is_a( $wp_scripts, 'WP_Scripts' ) ) {
+               if ( ! did_action( 'init' ) )
+                       _doing_it_wrong( __FUNCTION__, sprintf( __( 'Scripts and styles should not be registered or enqueued until the %1$s, %2$s, or %3$s hooks.' ),
+                               '<code>wp_enqueue_scripts</code>', '<code>admin_enqueue_scripts</code>', '<code>init</code>' ), '3.3' );
                $wp_scripts = new WP_Scripts();
                $wp_scripts = new WP_Scripts();
+       }
 
        $wp_scripts->dequeue( $handle );
 }
 
        $wp_scripts->dequeue( $handle );
 }
@@ -135,8 +172,12 @@ function wp_dequeue_script( $handle ) {
  */
 function wp_script_is( $handle, $list = 'queue' ) {
        global $wp_scripts;
  */
 function wp_script_is( $handle, $list = 'queue' ) {
        global $wp_scripts;
-       if ( !is_a($wp_scripts, 'WP_Scripts') )
+       if ( ! is_a( $wp_scripts, 'WP_Scripts' ) ) {
+               if ( ! did_action( 'init' ) )
+                       _doing_it_wrong( __FUNCTION__, sprintf( __( 'Scripts and styles should not be registered or enqueued until the %1$s, %2$s, or %3$s hooks.' ),
+                               '<code>wp_enqueue_scripts</code>', '<code>admin_enqueue_scripts</code>', '<code>init</code>' ), '3.3' );
                $wp_scripts = new WP_Scripts();
                $wp_scripts = new WP_Scripts();
+       }
 
        $query = $wp_scripts->query( $handle, $list );
 
 
        $query = $wp_scripts->query( $handle, $list );
 
index 630a112de599a525805bf457f741f10604cb6e74..8a887e8e0ae395950e2cf7dac5bc0b28a5e263e5 100644 (file)
@@ -23,9 +23,13 @@ function wp_print_styles( $handles = false ) {
                $handles = false;
 
        global $wp_styles;
                $handles = false;
 
        global $wp_styles;
-       if ( !is_a($wp_styles, 'WP_Styles') ) {
+       if ( ! is_a( $wp_styles, 'WP_Styles' ) ) {
+               if ( ! did_action( 'init' ) )
+                       _doing_it_wrong( __FUNCTION__, sprintf( __( 'Scripts and styles should not be registered or enqueued until the %1$s, %2$s, or %3$s hooks.' ),
+                               '<code>wp_enqueue_scripts</code>', '<code>admin_enqueue_scripts</code>', '<code>init</code>' ), '3.3' );
+
                if ( !$handles )
                if ( !$handles )
-                       return array(); // No need to instantiate if nothing's there.
+                       return array(); // No need to instantiate if nothing is there.
                else
                        $wp_styles = new WP_Styles();
        }
                else
                        $wp_styles = new WP_Styles();
        }
@@ -33,6 +37,29 @@ function wp_print_styles( $handles = false ) {
        return $wp_styles->do_items( $handles );
 }
 
        return $wp_styles->do_items( $handles );
 }
 
+/**
+ * Adds extra CSS.
+ *
+ * Works only if the stylesheet has already been added.
+ * Accepts a string $data containing the CSS. If two or more CSS code blocks are
+ * added to the same stylesheet $handle, they will be printed in the order
+ * they were added, i.e. the latter added styles can redeclare the previous.
+ *
+ * @since 3.3
+ * @see WP_Scripts::add_inline_style()
+ */
+function wp_add_inline_style( $handle, $data ) {
+       global $wp_styles;
+       if ( ! is_a( $wp_styles, 'WP_Styles' ) ) {
+               if ( ! did_action( 'init' ) )
+                       _doing_it_wrong( __FUNCTION__, sprintf( __( 'Scripts and styles should not be registered or enqueued until the %1$s, %2$s, or %3$s hooks.' ),
+                               '<code>wp_enqueue_scripts</code>', '<code>admin_enqueue_scripts</code>', '<code>init</code>' ), '3.3' );
+               $wp_styles = new WP_Styles();
+       }
+
+       return $wp_styles->add_inline_style( $handle, $data );
+}
+
 /**
  * Register CSS style file.
  *
 /**
  * Register CSS style file.
  *
@@ -51,8 +78,12 @@ function wp_print_styles( $handles = false ) {
  */
 function wp_register_style( $handle, $src, $deps = array(), $ver = false, $media = 'all' ) {
        global $wp_styles;
  */
 function wp_register_style( $handle, $src, $deps = array(), $ver = false, $media = 'all' ) {
        global $wp_styles;
-       if ( !is_a($wp_styles, 'WP_Styles') )
+       if ( ! is_a( $wp_styles, 'WP_Styles' ) ) {
+               if ( ! did_action( 'init' ) )
+                       _doing_it_wrong( __FUNCTION__, sprintf( __( 'Scripts and styles should not be registered or enqueued until the %1$s, %2$s, or %3$s hooks.' ),
+                               '<code>wp_enqueue_scripts</code>', '<code>admin_enqueue_scripts</code>', '<code>init</code>' ), '3.3' );
                $wp_styles = new WP_Styles();
                $wp_styles = new WP_Styles();
+       }
 
        $wp_styles->add( $handle, $src, $deps, $ver, $media );
 }
 
        $wp_styles->add( $handle, $src, $deps, $ver, $media );
 }
@@ -68,8 +99,12 @@ function wp_register_style( $handle, $src, $deps = array(), $ver = false, $media
  */
 function wp_deregister_style( $handle ) {
        global $wp_styles;
  */
 function wp_deregister_style( $handle ) {
        global $wp_styles;
-       if ( !is_a($wp_styles, 'WP_Styles') )
+       if ( ! is_a( $wp_styles, 'WP_Styles' ) ) {
+               if ( ! did_action( 'init' ) )
+                       _doing_it_wrong( __FUNCTION__, sprintf( __( 'Scripts and styles should not be registered or enqueued until the %1$s, %2$s, or %3$s hooks.' ),
+                               '<code>wp_enqueue_scripts</code>', '<code>admin_enqueue_scripts</code>', '<code>init</code>' ), '3.3' );
                $wp_styles = new WP_Styles();
                $wp_styles = new WP_Styles();
+       }
 
        $wp_styles->remove( $handle );
 }
 
        $wp_styles->remove( $handle );
 }
@@ -95,8 +130,12 @@ function wp_deregister_style( $handle ) {
  */
 function wp_enqueue_style( $handle, $src = false, $deps = array(), $ver = false, $media = 'all' ) {
        global $wp_styles;
  */
 function wp_enqueue_style( $handle, $src = false, $deps = array(), $ver = false, $media = 'all' ) {
        global $wp_styles;
-       if ( !is_a($wp_styles, 'WP_Styles') )
+       if ( ! is_a( $wp_styles, 'WP_Styles' ) ) {
+               if ( ! did_action( 'init' ) )
+                       _doing_it_wrong( __FUNCTION__, sprintf( __( 'Scripts and styles should not be registered or enqueued until the %1$s, %2$s, or %3$s hooks.' ),
+                               '<code>wp_enqueue_scripts</code>', '<code>admin_enqueue_scripts</code>', '<code>init</code>' ), '3.3' );
                $wp_styles = new WP_Styles();
                $wp_styles = new WP_Styles();
+       }
 
        if ( $src ) {
                $_handle = explode('?', $handle);
 
        if ( $src ) {
                $_handle = explode('?', $handle);
@@ -113,8 +152,12 @@ function wp_enqueue_style( $handle, $src = false, $deps = array(), $ver = false,
  */
 function wp_dequeue_style( $handle ) {
        global $wp_styles;
  */
 function wp_dequeue_style( $handle ) {
        global $wp_styles;
-       if ( !is_a($wp_styles, 'WP_Styles') )
+       if ( ! is_a( $wp_styles, 'WP_Styles' ) ) {
+               if ( ! did_action( 'init' ) )
+                       _doing_it_wrong( __FUNCTION__, sprintf( __( 'Scripts and styles should not be registered or enqueued until the %1$s, %2$s, or %3$s hooks.' ),
+                               '<code>wp_enqueue_scripts</code>', '<code>admin_enqueue_scripts</code>', '<code>init</code>' ), '3.3' );
                $wp_styles = new WP_Styles();
                $wp_styles = new WP_Styles();
+       }
 
        $wp_styles->dequeue( $handle );
 }
 
        $wp_styles->dequeue( $handle );
 }
@@ -133,8 +176,12 @@ function wp_dequeue_style( $handle ) {
  */
 function wp_style_is( $handle, $list = 'queue' ) {
        global $wp_styles;
  */
 function wp_style_is( $handle, $list = 'queue' ) {
        global $wp_styles;
-       if ( !is_a($wp_styles, 'WP_Styles') )
+       if ( ! is_a( $wp_styles, 'WP_Styles' ) ) {
+               if ( ! did_action( 'init' ) )
+                       _doing_it_wrong( __FUNCTION__, sprintf( __( 'Scripts and styles should not be registered or enqueued until the %1$s, %2$s, or %3$s hooks.' ),
+                               '<code>wp_enqueue_scripts</code>', '<code>admin_enqueue_scripts</code>', '<code>init</code>' ), '3.3' );
                $wp_styles = new WP_Styles();
                $wp_styles = new WP_Styles();
+       }
 
        $query = $wp_styles->query( $handle, $list );
 
 
        $query = $wp_styles->query( $handle, $list );
 
index be1af2a3d03fe58349a6cab336ded0ed819e2d13..d855ef52b9f55e90864197a0f31eac8127ff9bb8 100644 (file)
@@ -106,12 +106,12 @@ function get_sidebar( $name = null ) {
  * The template is included using require, not require_once, so you may include the
  * same template part multiple times.
  *
  * The template is included using require, not require_once, so you may include the
  * same template part multiple times.
  *
- * For the parameter, if the file is called "{slug}-special.php" then specify
+ * For the $name parameter, if the file is called "{slug}-special.php" then specify
  * "special".
  *
  * @uses locate_template()
  * @since 3.0.0
  * "special".
  *
  * @uses locate_template()
  * @since 3.0.0
- * @uses do_action() Calls 'get_template_part{$slug}' action.
+ * @uses do_action() Calls 'get_template_part_{$slug}' action.
  *
  * @param string $slug The slug name for the generic template.
  * @param string $name The name of the specialised template.
  *
  * @param string $slug The slug name for the generic template.
  * @param string $name The name of the specialised template.
@@ -157,7 +157,7 @@ function get_search_form($echo = true) {
                return;
        }
 
                return;
        }
 
-       $form = '<form role="search" method="get" id="searchform" action="' . home_url( '/' ) . '" >
+       $form = '<form role="search" method="get" id="searchform" action="' . esc_url( home_url( '/' ) ) . '" >
        <div><label class="screen-reader-text" for="s">' . __('Search for:') . '</label>
        <input type="text" value="' . get_search_query() . '" name="s" id="s" />
        <input type="submit" id="searchsubmit" value="'. esc_attr__('Search') .'" />
        <div><label class="screen-reader-text" for="s">' . __('Search for:') . '</label>
        <input type="text" value="' . get_search_query() . '" name="s" id="s" />
        <input type="submit" id="searchsubmit" value="'. esc_attr__('Search') .'" />
@@ -253,7 +253,7 @@ function wp_login_url($redirect = '', $force_reauth = false) {
  */
 function wp_login_form( $args = array() ) {
        $defaults = array( 'echo' => true,
  */
 function wp_login_form( $args = array() ) {
        $defaults = array( 'echo' => true,
-                                               'redirect' => site_url( $_SERVER['REQUEST_URI'] ), // Default redirect is back to the current page
+                                               'redirect' => ( is_ssl() ? 'https://' : 'http://' ) . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'], // Default redirect is back to the current page
                                                'form_id' => 'loginform',
                                                'label_username' => __( 'Username' ),
                                                'label_password' => __( 'Password' ),
                                                'form_id' => 'loginform',
                                                'label_username' => __( 'Username' ),
                                                'label_password' => __( 'Password' ),
@@ -270,7 +270,7 @@ function wp_login_form( $args = array() ) {
        $args = wp_parse_args( $args, apply_filters( 'login_form_defaults', $defaults ) );
 
        $form = '
        $args = wp_parse_args( $args, apply_filters( 'login_form_defaults', $defaults ) );
 
        $form = '
-               <form name="' . $args['form_id'] . '" id="' . $args['form_id'] . '" action="' . site_url( 'wp-login.php', 'login' ) . '" method="post">
+               <form name="' . $args['form_id'] . '" id="' . $args['form_id'] . '" action="' . esc_url( site_url( 'wp-login.php', 'login_post' ) ) . '" method="post">
                        ' . apply_filters( 'login_form_top', '', $args ) . '
                        <p class="login-username">
                                <label for="' . esc_attr( $args['id_username'] ) . '">' . esc_html( $args['label_username'] ) . '</label>
                        ' . apply_filters( 'login_form_top', '', $args ) . '
                        <p class="login-username">
                                <label for="' . esc_attr( $args['id_username'] ) . '">' . esc_html( $args['label_username'] ) . '</label>
@@ -284,7 +284,7 @@ function wp_login_form( $args = array() ) {
                        ' . ( $args['remember'] ? '<p class="login-remember"><label><input name="rememberme" type="checkbox" id="' . esc_attr( $args['id_remember'] ) . '" value="forever" tabindex="90"' . ( $args['value_remember'] ? ' checked="checked"' : '' ) . ' /> ' . esc_html( $args['label_remember'] ) . '</label></p>' : '' ) . '
                        <p class="login-submit">
                                <input type="submit" name="wp-submit" id="' . esc_attr( $args['id_submit'] ) . '" class="button-primary" value="' . esc_attr( $args['label_log_in'] ) . '" tabindex="100" />
                        ' . ( $args['remember'] ? '<p class="login-remember"><label><input name="rememberme" type="checkbox" id="' . esc_attr( $args['id_remember'] ) . '" value="forever" tabindex="90"' . ( $args['value_remember'] ? ' checked="checked"' : '' ) . ' /> ' . esc_html( $args['label_remember'] ) . '</label></p>' : '' ) . '
                        <p class="login-submit">
                                <input type="submit" name="wp-submit" id="' . esc_attr( $args['id_submit'] ) . '" class="button-primary" value="' . esc_attr( $args['label_log_in'] ) . '" tabindex="100" />
-                               <input type="hidden" name="redirect_to" value="' . esc_attr( $args['redirect'] ) . '" />
+                               <input type="hidden" name="redirect_to" value="' . esc_url( $args['redirect'] ) . '" />
                        </p>
                        ' . apply_filters( 'login_form_bottom', '', $args ) . '
                </form>';
                        </p>
                        ' . apply_filters( 'login_form_bottom', '', $args ) . '
                </form>';
@@ -306,14 +306,14 @@ function wp_login_form( $args = array() ) {
  *
  * @param string $redirect Path to redirect to on login.
  */
  *
  * @param string $redirect Path to redirect to on login.
  */
-function wp_lostpassword_url($redirect = '') {
+function wp_lostpassword_url( $redirect = '' ) {
        $args = array( 'action' => 'lostpassword' );
        if ( !empty($redirect) ) {
                $args['redirect_to'] = $redirect;
        }
 
        $args = array( 'action' => 'lostpassword' );
        if ( !empty($redirect) ) {
                $args['redirect_to'] = $redirect;
        }
 
-       $lostpassword_url = add_query_arg($args, site_url('wp-login.php', 'login'));
-       return apply_filters('lostpassword_url', $lostpassword_url, $redirect);
+       $lostpassword_url = add_query_arg( $args, network_site_url('wp-login.php', 'login') );
+       return apply_filters( 'lostpassword_url', $lostpassword_url, $redirect );
 }
 
 /**
 }
 
 /**
@@ -1030,10 +1030,9 @@ function wp_get_archives($args = '') {
                if ( $arcresults ) {
                        foreach ( (array) $arcresults as $arcresult ) {
                                if ( $arcresult->post_date != '0000-00-00 00:00:00' ) {
                if ( $arcresults ) {
                        foreach ( (array) $arcresults as $arcresult ) {
                                if ( $arcresult->post_date != '0000-00-00 00:00:00' ) {
-                                       $url  = get_permalink($arcresult);
-                                       $arc_title = $arcresult->post_title;
-                                       if ( $arc_title )
-                                               $text = strip_tags(apply_filters('the_title', $arc_title));
+                                       $url  = get_permalink( $arcresult );
+                                       if ( $arcresult->post_title )
+                                               $text = strip_tags( apply_filters( 'the_title', $arcresult->post_title, $arcresult->ID ) );
                                        else
                                                $text = $arcresult->ID;
                                        $output .= get_archives_link($url, $text, $format, $before, $after);
                                        else
                                                $text = $arcresult->ID;
                                        $output .= get_archives_link($url, $text, $format, $before, $after);
@@ -1640,34 +1639,35 @@ function feed_links_extra( $args = array() ) {
        $args = wp_parse_args( $args, $defaults );
 
        if ( is_single() || is_page() ) {
        $args = wp_parse_args( $args, $defaults );
 
        if ( is_single() || is_page() ) {
-               $post = &get_post( $id = 0 );
+               $id = 0;
+               $post = &get_post( $id );
 
                if ( comments_open() || pings_open() || $post->comment_count > 0 ) {
 
                if ( comments_open() || pings_open() || $post->comment_count > 0 ) {
-                       $title = esc_attr(sprintf( $args['singletitle'], get_bloginfo('name'), $args['separator'], esc_html( get_the_title() ) ));
+                       $title = sprintf( $args['singletitle'], get_bloginfo('name'), $args['separator'], esc_html( get_the_title() ) );
                        $href = get_post_comments_feed_link( $post->ID );
                }
        } elseif ( is_category() ) {
                $term = get_queried_object();
 
                        $href = get_post_comments_feed_link( $post->ID );
                }
        } elseif ( is_category() ) {
                $term = get_queried_object();
 
-               $title = esc_attr(sprintf( $args['cattitle'], get_bloginfo('name'), $args['separator'], $term->name ));
+               $title = sprintf( $args['cattitle'], get_bloginfo('name'), $args['separator'], $term->name );
                $href = get_category_feed_link( $term->term_id );
        } elseif ( is_tag() ) {
                $term = get_queried_object();
 
                $href = get_category_feed_link( $term->term_id );
        } elseif ( is_tag() ) {
                $term = get_queried_object();
 
-               $title = esc_attr(sprintf( $args['tagtitle'], get_bloginfo('name'), $args['separator'], $term->name ));
+               $title = sprintf( $args['tagtitle'], get_bloginfo('name'), $args['separator'], $term->name );
                $href = get_tag_feed_link( $term->term_id );
        } elseif ( is_author() ) {
                $author_id = intval( get_query_var('author') );
 
                $href = get_tag_feed_link( $term->term_id );
        } elseif ( is_author() ) {
                $author_id = intval( get_query_var('author') );
 
-               $title = esc_attr(sprintf( $args['authortitle'], get_bloginfo('name'), $args['separator'], get_the_author_meta( 'display_name', $author_id ) ));
+               $title = sprintf( $args['authortitle'], get_bloginfo('name'), $args['separator'], get_the_author_meta( 'display_name', $author_id ) );
                $href = get_author_feed_link( $author_id );
        } elseif ( is_search() ) {
                $href = get_author_feed_link( $author_id );
        } elseif ( is_search() ) {
-               $title = esc_attr(sprintf( $args['searchtitle'], get_bloginfo('name'), $args['separator'], get_search_query( false ) ));
+               $title = sprintf( $args['searchtitle'], get_bloginfo('name'), $args['separator'], get_search_query( false ) );
                $href = get_search_feed_link();
        }
 
        if ( isset($title) && isset($href) )
                $href = get_search_feed_link();
        }
 
        if ( isset($title) && isset($href) )
-               echo '<link rel="alternate" type="' . feed_content_type() . '" title="' . $title . '" href="' . $href . '" />' . "\n";
+               echo '<link rel="alternate" type="' . feed_content_type() . '" title="' . esc_attr( $title ) . '" href="' . esc_url( $href ) . '" />' . "\n";
 }
 
 /**
 }
 
 /**
@@ -1695,14 +1695,29 @@ function wlwmanifest_link() {
  * Display a noindex meta tag if required by the blog configuration.
  *
  * If a blog is marked as not being public then the noindex meta tag will be
  * Display a noindex meta tag if required by the blog configuration.
  *
  * If a blog is marked as not being public then the noindex meta tag will be
- * output to tell web robots not to index the page content.
+ * output to tell web robots not to index the page content. Add this to the wp_head action.
+ * Typical usage is as a wp_head callback. add_action( 'wp_head', 'noindex' );
+ *
+ * @see wp_no_robots
  *
  * @since 2.1.0
  */
 function noindex() {
        // If the blog is not public, tell robots to go away.
        if ( '0' == get_option('blog_public') )
  *
  * @since 2.1.0
  */
 function noindex() {
        // If the blog is not public, tell robots to go away.
        if ( '0' == get_option('blog_public') )
-               echo "<meta name='robots' content='noindex,nofollow' />\n";
+               wp_no_robots();
+}
+
+/**
+ * Display a noindex meta tag.
+ *
+ * Outputs a noindex meta tag that tells web robots not to index the page content.
+ * Typical usage is as a wp_head callback. add_action( 'wp_head', 'wp_no_robots' );
+ *
+ * @since 3.3.0
+ */
+function wp_no_robots() {
+       echo "<meta name='robots' content='noindex,nofollow' />\n";
 }
 
 /**
 }
 
 /**
@@ -1732,17 +1747,18 @@ function rich_edit_exists() {
  * @return bool
  */
 function user_can_richedit() {
  * @return bool
  */
 function user_can_richedit() {
-       global $wp_rich_edit, $pagenow, $is_iphone;
-
-       if ( !isset( $wp_rich_edit) ) {
-               if ( get_user_option( 'rich_editing' ) == 'true' &&
-                       !$is_iphone && // this includes all Safari mobile browsers
-                       ( ( preg_match( '!AppleWebKit/(\d+)!', $_SERVER['HTTP_USER_AGENT'], $match ) && intval($match[1]) >= 420 ) ||
-                               !preg_match( '!opera[ /][2-8]|konqueror|safari!i', $_SERVER['HTTP_USER_AGENT'] ) )
-                               && 'comment.php' != $pagenow ) {
-                       $wp_rich_edit = true;
-               } else {
-                       $wp_rich_edit = false;
+       global $wp_rich_edit, $is_gecko, $is_opera, $is_safari, $is_chrome, $is_iphone, $is_IE;
+
+       if ( !isset($wp_rich_edit) ) {
+               $wp_rich_edit = false;
+
+               if ( get_user_option( 'rich_editing' ) == 'true' || !is_user_logged_in() ) { // default to 'true' for logged out users
+                       if ( $is_safari ) {
+                               if ( !$is_iphone || ( preg_match( '!AppleWebKit/(\d+)!', $_SERVER['HTTP_USER_AGENT'], $match ) && intval($match[1]) >= 534 ) )
+                                       $wp_rich_edit = true;
+                       } elseif ( $is_gecko || $is_opera || $is_chrome || $is_IE ) {
+                               $wp_rich_edit = true;
+                       }
                }
        }
 
                }
        }
 
@@ -1769,85 +1785,29 @@ function wp_default_editor() {
 }
 
 /**
 }
 
 /**
- * Display visual editor forms: TinyMCE, or HTML, or both.
+ * Renders an editor.
  *
  *
- * The amount of rows the text area will have for the content has to be between
- * 3 and 100 or will default at 12. There is only one option used for all users,
- * named 'default_post_edit_rows'.
+ * Using this function is the proper way to output all needed components for both TinyMCE and Quicktags.
+ * _WP_Editors should not be used directly. See http://core.trac.wordpress.org/ticket/17144.
  *
  *
- * If the user can not use the rich editor (TinyMCE), then the switch button
- * will not be displayed.
+ * NOTE: Once initialized the TinyMCE editor cannot be safely moved in the DOM. For that reason
+ * running wp_editor() inside of a metabox is not a good idea unless only Quicktags is used.
+ * On the post edit screen several actions can be used to include additional editors
+ * containing TinyMCE: 'edit_page_form', 'edit_form_advanced' and 'dbx_post_sidebar'.
+ * See http://core.trac.wordpress.org/ticket/19173 for more information.
  *
  *
- * @since 2.1.0
+ * @see wp-includes/class-wp-editor.php
+ * @since 3.3
  *
  *
- * @param string $content Textarea content.
- * @param string $id Optional, default is 'content'. HTML ID attribute value.
- * @param string $prev_id Optional, default is 'title'. HTML ID name for switching back and forth between visual editors.
- * @param bool $media_buttons Optional, default is true. Whether to display media buttons.
- * @param int $tab_index Optional, default is 2. Tabindex for textarea element.
+ * @param string $content Initial content for the editor.
+ * @param string $editor_id HTML ID attribute value for the textarea and TinyMCE. Can only be /[a-z]+/.
+ * @param array $settings See _WP_Editors::editor().
  */
  */
-function the_editor($content, $id = 'content', $prev_id = 'title', $media_buttons = true, $tab_index = 2, $extended = true) {
-       $rows = get_option('default_post_edit_rows');
-       if (($rows < 3) || ($rows > 100))
-               $rows = 12;
-
-       if ( !current_user_can( 'upload_files' ) )
-               $media_buttons = false;
-
-       $richedit =  user_can_richedit();
-       $class = '';
-
-       if ( $richedit || $media_buttons ) { ?>
-       <div id="editor-toolbar">
-<?php
-       if ( $richedit ) {
-               $wp_default_editor = wp_default_editor(); ?>
-               <div class="zerosize"><input accesskey="e" type="button" onclick="switchEditors.go('<?php echo $id; ?>')" /></div>
-<?php  if ( 'html' == $wp_default_editor ) {
-                       add_filter('the_editor_content', 'wp_htmledit_pre'); ?>
-                       <a id="edButtonHTML" class="active hide-if-no-js" onclick="switchEditors.go('<?php echo $id; ?>', 'html');"><?php _e('HTML'); ?></a>
-                       <a id="edButtonPreview" class="hide-if-no-js" onclick="switchEditors.go('<?php echo $id; ?>', 'tinymce');"><?php _e('Visual'); ?></a>
-<?php  } else {
-                       $class = " class='theEditor'";
-                       add_filter('the_editor_content', 'wp_richedit_pre'); ?>
-                       <a id="edButtonHTML" class="hide-if-no-js" onclick="switchEditors.go('<?php echo $id; ?>', 'html');"><?php _e('HTML'); ?></a>
-                       <a id="edButtonPreview" class="active hide-if-no-js" onclick="switchEditors.go('<?php echo $id; ?>', 'tinymce');"><?php _e('Visual'); ?></a>
-<?php  }
-       }
-
-       if ( $media_buttons ) { ?>
-               <div id="media-buttons" class="hide-if-no-js">
-<?php  do_action( 'media_buttons' ); ?>
-               </div>
-<?php
-       } ?>
-       </div>
-<?php
-       }
-?>
-       <div id="quicktags"><?php
-       wp_print_scripts( 'quicktags' ); ?>
-       <script type="text/javascript">edToolbar()</script>
-       </div>
-
-<?php
-       $the_editor = apply_filters('the_editor', "<div id='editorcontainer'><textarea rows='$rows'$class cols='40' name='$id' tabindex='$tab_index' id='$id'>%s</textarea></div>\n");
-       $the_editor_content = apply_filters('the_editor_content', $content);
-
-       printf($the_editor, $the_editor_content);
-
-?>
-       <script type="text/javascript">
-       edCanvas = document.getElementById('<?php echo $id; ?>');
-<?php if ( ! $extended ) { ?>  jQuery('#ed_fullscreen, #ed_more').hide();<?php } ?>
-       </script>
-<?php
-       // queue scripts
-       if ( $richedit )
-               add_action( 'admin_print_footer_scripts', 'wp_tiny_mce', 25 );
-       elseif ( $extended )
-               add_action( 'admin_print_footer_scripts', 'wp_quicktags', 25 );
+function wp_editor( $content, $editor_id, $settings = array() ) {
+       if ( ! class_exists( '_WP_Editors' ) )
+               require( ABSPATH . WPINC . '/class-wp-editor.php' );
 
 
+       _WP_Editors::editor($content, $editor_id, $settings);
 }
 
 /**
 }
 
 /**
@@ -2014,7 +1974,7 @@ function paginate_links( $args = '' ) {
                                $page_links[] = "<a class='page-numbers' href='" . esc_url( apply_filters( 'paginate_links', $link ) ) . "'>$n_display</a>";
                                $dots = true;
                        elseif ( $dots && !$show_all ) :
                                $page_links[] = "<a class='page-numbers' href='" . esc_url( apply_filters( 'paginate_links', $link ) ) . "'>$n_display</a>";
                                $dots = true;
                        elseif ( $dots && !$show_all ) :
-                               $page_links[] = '<span class="page-numbers dots">...</span>';
+                               $page_links[] = '<span class="page-numbers dots">' . __( '&hellip;' ) . '</span>';
                                $dots = false;
                        endif;
                endif;
                                $dots = false;
                        endif;
                endif;
@@ -2074,9 +2034,9 @@ function wp_admin_css_color($key, $name, $url, $colors = array()) {
  * @since 3.0.0
  */
 function register_admin_color_schemes() {
  * @since 3.0.0
  */
 function register_admin_color_schemes() {
-       wp_admin_css_color( 'classic', __( 'Blue' ), admin_url( 'css/colors-classic.css' ),
+       wp_admin_css_color( 'classic', _x( 'Blue', 'admin color scheme' ), admin_url( 'css/colors-classic.css' ),
                array( '#5589aa', '#cfdfe9', '#d1e5ee', '#eff8ff' ) );
                array( '#5589aa', '#cfdfe9', '#d1e5ee', '#eff8ff' ) );
-       wp_admin_css_color( 'fresh', __( 'Gray' ), admin_url( 'css/colors-fresh.css' ),
+       wp_admin_css_color( 'fresh', _x( 'Gray', 'admin color scheme' ), admin_url( 'css/colors-fresh.css' ),
                array( '#7c7976', '#c6c6c6', '#e0e0e0', '#f1f1f1' ) );
 }
 
                array( '#7c7976', '#c6c6c6', '#e0e0e0', '#f1f1f1' ) );
 }
 
index a909e001fd892f795f675160c99b42a42be64e61..02b8750847730782d9e0c35a9c938b7c67f05da8 100644 (file)
@@ -130,7 +130,7 @@ function wp_remote_retrieve_headers(&$response) {
  *
  * @param array $response
  * @param string $header Header name to retrieve value from.
  *
  * @param array $response
  * @param string $header Header name to retrieve value from.
- * @return string The header value. Empty string on if incorrect parameter given, or if the header doesnt exist.
+ * @return string The header value. Empty string on if incorrect parameter given, or if the header doesn't exist.
  */
 function wp_remote_retrieve_header(&$response, $header) {
        if ( is_wp_error($response) || ! isset($response['headers']) || ! is_array($response['headers']))
  */
 function wp_remote_retrieve_header(&$response, $header) {
        if ( is_wp_error($response) || ! isset($response['headers']) || ! is_array($response['headers']))
diff --git a/wp-includes/images/admin-bar-sprite-rtl.png b/wp-includes/images/admin-bar-sprite-rtl.png
deleted file mode 100644 (file)
index f49aae7..0000000
Binary files a/wp-includes/images/admin-bar-sprite-rtl.png and /dev/null differ
index 8eb1c085b18d1bdd102e8151a48ef98974ac87b8..56f3be286198b228b58f7ee4f1d200896aa55162 100644 (file)
Binary files a/wp-includes/images/admin-bar-sprite.png and b/wp-includes/images/admin-bar-sprite.png differ
diff --git a/wp-includes/images/arrow-pointer-blue.png b/wp-includes/images/arrow-pointer-blue.png
new file mode 100644 (file)
index 0000000..0380a95
Binary files /dev/null and b/wp-includes/images/arrow-pointer-blue.png differ
diff --git a/wp-includes/images/icon-pointer-flag.png b/wp-includes/images/icon-pointer-flag.png
new file mode 100644 (file)
index 0000000..6bb48c0
Binary files /dev/null and b/wp-includes/images/icon-pointer-flag.png differ
diff --git a/wp-includes/images/xit.gif b/wp-includes/images/xit.gif
new file mode 100644 (file)
index 0000000..80c251f
Binary files /dev/null and b/wp-includes/images/xit.gif differ
index cf13ca7271143a4d321fc1964c6c0448170c1b88..57f4a854b1857cbd34d3083117740478aaa8d0f0 100644 (file)
-(function(d, w) {
-       var addEvent = function( obj, type, fn ) {
-               if (obj.addEventListener)
-                       obj.addEventListener(type, fn, false);
-               else if (obj.attachEvent)
-                       obj.attachEvent('on' + type, function() { return fn.call(obj, window.event);});
-       },
-
-       aB, hc = new RegExp('\\bhover\\b', 'g'), q = [],
-       rselected = new RegExp('\\bselected\\b', 'g'),
-
-       /**
-        * Get the timeout ID of the given element
-        */
-       getTOID = function(el) {
-               var i = q.length;
-               while( i-- )
-                       if ( q[i] && el == q[i][1] )
-                               return q[i][0];
-               return false;
-       },
-
-       addHoverClass = function(t) {
-               var i, id, inA, hovering, ul, li,
-                       ancestors = [],
-                       ancestorLength = 0;
-
-               while ( t && t != aB && t != d ) {
-                       if( 'LI' == t.nodeName.toUpperCase() ) {
-                               ancestors[ ancestors.length ] = t;
-                               id = getTOID(t);
-                               if ( id )
-                                       clearTimeout( id );
-                               t.className = t.className ? ( t.className.replace(hc, '') + ' hover' ) : 'hover';
-                               hovering = t;
-                       }
-                       t = t.parentNode;
-               }
-
-               // Remove any selected classes.
-               if ( hovering && hovering.parentNode ) {
-                       ul = hovering.parentNode;
-                       if ( ul && 'UL' == ul.nodeName.toUpperCase() ) {
-                               i = ul.childNodes.length;
-                               while ( i-- ) {
-                                       li = ul.childNodes[i];
-                                       if ( li != hovering )
-                                               li.className = li.className ? li.className.replace( rselected, '' ) : '';
+// use jQuery and hoverIntent if loaded
+if ( typeof(jQuery) != 'undefined' ) {
+       if ( typeof(jQuery.fn.hoverIntent) == 'undefined' )
+               (function(a){a.fn.hoverIntent=function(l,j){var m={sensitivity:7,interval:100,timeout:0};m=a.extend(m,j?{over:l,out:j}:l);var o,n,h,d;var e=function(f){o=f.pageX;n=f.pageY};var c=function(g,f){f.hoverIntent_t=clearTimeout(f.hoverIntent_t);if((Math.abs(h-o)+Math.abs(d-n))<m.sensitivity){a(f).unbind("mousemove",e);f.hoverIntent_s=1;return m.over.apply(f,[g])}else{h=o;d=n;f.hoverIntent_t=setTimeout(function(){c(g,f)},m.interval)}};var i=function(g,f){f.hoverIntent_t=clearTimeout(f.hoverIntent_t);f.hoverIntent_s=0;return m.out.apply(f,[g])};var b=function(q){var f=this;var g=(q.type=="mouseover"?q.fromElement:q.toElement)||q.relatedTarget;while(g&&g!=this){try{g=g.parentNode}catch(q){g=this}}if(g==this){if(a.browser.mozilla){if(q.type=="mouseout"){f.mtout=setTimeout(function(){k(q,f)},30)}else{if(f.mtout){f.mtout=clearTimeout(f.mtout)}}}return}else{if(f.mtout){f.mtout=clearTimeout(f.mtout)}k(q,f)}};var k=function(p,f){var g=jQuery.extend({},p);if(f.hoverIntent_t){f.hoverIntent_t=clearTimeout(f.hoverIntent_t)}if(p.type=="mouseover"){h=g.pageX;d=g.pageY;a(f).bind("mousemove",e);if(f.hoverIntent_s!=1){f.hoverIntent_t=setTimeout(function(){c(g,f)},m.interval)}}else{a(f).unbind("mousemove",e);if(f.hoverIntent_s==1){f.hoverIntent_t=setTimeout(function(){i(g,f)},m.timeout)}}};return this.mouseover(b).mouseout(b)}})(jQuery);
+
+       jQuery(document).ready(function($){
+               var refresh = function(i, el){ // force the browser to refresh the tabbing index
+                       var node = $(el), tab = node.attr('tabindex');
+                       if ( tab )
+                               node.attr('tabindex', '0').attr('tabindex', tab);
+               };
+
+               $('#wpadminbar').removeClass('nojq').removeClass('nojs').find('li.menupop').hoverIntent({
+                       over: function(e){
+                               $(this).addClass('hover');
+                       },
+                       out: function(e){
+                               $(this).removeClass('hover');
+                       },
+                       timeout: 180,
+                       sensitivity: 7,
+                       interval: 100
+               });
+
+               $('#wp-admin-bar-get-shortlink').click(function(e){
+                       e.preventDefault();
+                       $(this).addClass('selected').children('.shortlink-input').blur(function(){
+                               $(this).parents('#wp-admin-bar-get-shortlink').removeClass('selected');
+                       }).focus().select();
+               });
+
+               $('#wpadminbar li.menupop > .ab-item').bind('keydown.adminbar', function(e){
+                       if ( e.which != 13 )
+                               return;
+
+                       var target = $(e.target), wrap = target.closest('ab-sub-wrapper');
+
+                       e.stopPropagation();
+                       e.preventDefault();
+
+                       if ( !wrap.length )
+                               wrap = $('#wpadminbar .quicklinks');
+
+                       wrap.find('.menupop').removeClass('hover');
+                       target.parent().toggleClass('hover');
+                       target.siblings('.ab-sub-wrapper').find('.ab-item').each(refresh);
+               }).each(refresh);
+
+               $('#wpadminbar .ab-item').bind('keydown.adminbar', function(e){
+                       if ( e.which != 27 )
+                               return;
+
+                       var target = $(e.target);
+
+                       e.stopPropagation();
+                       e.preventDefault();
+
+                       target.closest('.hover').removeClass('hover').children('.ab-item').focus();
+                       target.siblings('.ab-sub-wrapper').find('.ab-item').each(refresh);
+               });
+
+       });
+} else {
+       (function(d, w) {
+               var addEvent = function( obj, type, fn ) {
+                       if (obj.addEventListener)
+                               obj.addEventListener(type, fn, false);
+                       else if (obj.attachEvent)
+                               obj.attachEvent('on' + type, function() { return fn.call(obj, window.event);});
+               },
+
+               aB, hc = new RegExp('\\bhover\\b', 'g'), q = [],
+               rselected = new RegExp('\\bselected\\b', 'g'),
+
+               /**
+                * Get the timeout ID of the given element
+                */
+               getTOID = function(el) {
+                       var i = q.length;
+                       while( i-- )
+                               if ( q[i] && el == q[i][1] )
+                                       return q[i][0];
+                       return false;
+               },
+
+               addHoverClass = function(t) {
+                       var i, id, inA, hovering, ul, li,
+                               ancestors = [],
+                               ancestorLength = 0;
+
+                       while ( t && t != aB && t != d ) {
+                               if( 'LI' == t.nodeName.toUpperCase() ) {
+                                       ancestors[ ancestors.length ] = t;
+                                       id = getTOID(t);
+                                       if ( id )
+                                               clearTimeout( id );
+                                       t.className = t.className ? ( t.className.replace(hc, '') + ' hover' ) : 'hover';
+                                       hovering = t;
                                }
                                }
+                               t = t.parentNode;
                        }
                        }
-               }
-
-               /* remove the hover class for any objects not in the immediate element's ancestry */
-               i = q.length;
-               while ( i-- ) {
-                       inA = false;
-                       ancestorLength = ancestors.length;
-                       while( ancestorLength-- ) {
-                               if ( ancestors[ ancestorLength ] == q[i][1] )
-                                       inA = true;
+
+                       // Remove any selected classes.
+                       if ( hovering && hovering.parentNode ) {
+                               ul = hovering.parentNode;
+                               if ( ul && 'UL' == ul.nodeName.toUpperCase() ) {
+                                       i = ul.childNodes.length;
+                                       while ( i-- ) {
+                                               li = ul.childNodes[i];
+                                               if ( li != hovering )
+                                                       li.className = li.className ? li.className.replace( rselected, '' ) : '';
+                                       }
+                               }
                        }
 
                        }
 
-                       if ( ! inA )
-                               q[i][1].className = q[i][1].className ? q[i][1].className.replace(hc, '') : '';
-               }
-       },
-
-       removeHoverClass = function(t) {
-               while ( t && t != aB && t != d ) {
-                       if( 'LI' == t.nodeName.toUpperCase() ) {
-                               (function(t) {
-                                       var to = setTimeout(function() {
-                                               t.className = t.className ? t.className.replace(hc, '') : '';
-                                       }, 500);
-                                       q[q.length] = [to, t];
-                               })(t);
+                       /* remove the hover class for any objects not in the immediate element's ancestry */
+                       i = q.length;
+                       while ( i-- ) {
+                               inA = false;
+                               ancestorLength = ancestors.length;
+                               while( ancestorLength-- ) {
+                                       if ( ancestors[ ancestorLength ] == q[i][1] )
+                                               inA = true;
+                               }
+
+                               if ( ! inA )
+                                       q[i][1].className = q[i][1].className ? q[i][1].className.replace(hc, '') : '';
                        }
                        }
-                       t = t.parentNode;
-               }
-       },
-
-       clickShortlink = function(e) {
-               var i, l, node,
-                       t = e.target || e.srcElement;
-
-               // Make t the shortlink menu item, or return.
-               while ( true ) {
-                       // Check if we've gone past the shortlink node,
-                       // or if the user is clicking on the input.
-                       if ( ! t || t == d || t == aB )
-                               return;
-                       // Check if we've found the shortlink node.
-                       if ( t.id && t.id == 'wp-admin-bar-get-shortlink' )
-                               break;
-                       t = t.parentNode;
-               }
-
-               // IE doesn't support preventDefault, and does support returnValue
-               if ( e.preventDefault )
-                       e.preventDefault();
-               e.returnValue = false;
-
-               if ( -1 == t.className.indexOf('selected') )
-                       t.className += ' selected';
-
-               for ( i = 0, l = t.childNodes.length; i < l; i++ ) {
-                       node = t.childNodes[i];
-                       if ( node.className && -1 != node.className.indexOf('shortlink-input') ) {
-                               node.focus();
-                               node.select();
-                               node.onblur = function() {
-                                       t.className = t.className ? t.className.replace( rselected, '' ) : '';
-                               };
-                               break;
+               },
+
+               removeHoverClass = function(t) {
+                       while ( t && t != aB && t != d ) {
+                               if( 'LI' == t.nodeName.toUpperCase() ) {
+                                       (function(t) {
+                                               var to = setTimeout(function() {
+                                                       t.className = t.className ? t.className.replace(hc, '') : '';
+                                               }, 500);
+                                               q[q.length] = [to, t];
+                                       })(t);
+                               }
+                               t = t.parentNode;
+                       }
+               },
+
+               clickShortlink = function(e) {
+                       var i, l, node,
+                               t = e.target || e.srcElement;
+
+                       // Make t the shortlink menu item, or return.
+                       while ( true ) {
+                               // Check if we've gone past the shortlink node,
+                               // or if the user is clicking on the input.
+                               if ( ! t || t == d || t == aB )
+                                       return;
+                               // Check if we've found the shortlink node.
+                               if ( t.id && t.id == 'wp-admin-bar-get-shortlink' )
+                                       break;
+                               t = t.parentNode;
                        }
                        }
-               }
-               return false;
-       };
 
 
-       addEvent(w, 'load', function() {
-               aB = d.getElementById('wpadminbar');
+                       // IE doesn't support preventDefault, and does support returnValue
+                       if ( e.preventDefault )
+                               e.preventDefault();
+                       e.returnValue = false;
+
+                       if ( -1 == t.className.indexOf('selected') )
+                               t.className += ' selected';
+
+                       for ( i = 0, l = t.childNodes.length; i < l; i++ ) {
+                               node = t.childNodes[i];
+                               if ( node.className && -1 != node.className.indexOf('shortlink-input') ) {
+                                       node.focus();
+                                       node.select();
+                                       node.onblur = function() {
+                                               t.className = t.className ? t.className.replace( rselected, '' ) : '';
+                                       };
+                                       break;
+                               }
+                       }
+                       return false;
+               };
 
 
-               if ( d.body && aB ) {
-                       d.body.appendChild( aB );
+               addEvent(w, 'load', function() {
+                       aB = d.getElementById('wpadminbar');
 
 
-                       addEvent(aB, 'mouseover', function(e) {
-                               addHoverClass( e.target || e.srcElement );
-                       });
+                       if ( d.body && aB ) {
+                               d.body.appendChild( aB );
 
 
-                       addEvent(aB, 'mouseout', function(e) {
-                               removeHoverClass( e.target || e.srcElement );
-                       });
+                               if ( aB.className )
+                                       aB.className = aB.className.replace(/nojs/, '');
 
 
-                       addEvent(aB, 'click', clickShortlink );
-               }
+                               addEvent(aB, 'mouseover', function(e) {
+                                       addHoverClass( e.target || e.srcElement );
+                               });
+
+                               addEvent(aB, 'mouseout', function(e) {
+                                       removeHoverClass( e.target || e.srcElement );
+                               });
+
+                               addEvent(aB, 'click', clickShortlink );
+                       }
+
+                       if ( w.location.hash )
+                               w.scrollBy(0,-32);
+               });
+       })(document, window);
+
+}
 
 
-               if ( w.location.hash )
-                       w.scrollBy(0,-32);
-       });
-})(document, window);
index ea90a69fb9b98a8db610892a8b57ac62d44538bc..8856c1b486af28824f772a916f292c56abeddfc8 100644 (file)
@@ -1 +1 @@
-(function(i,k){var c=function(n,m,d){if(n.addEventListener){n.addEventListener(m,d,false)}else{if(n.attachEvent){n.attachEvent("on"+m,function(){return d.call(n,window.event)})}}},e,f=new RegExp("\\bhover\\b","g"),a=[],j=new RegExp("\\bselected\\b","g"),g=function(m){var d=a.length;while(d--){if(a[d]&&m==a[d][1]){return a[d][0]}}return false},h=function(s){var n,d,q,m,p,r,u=[],o=0;while(s&&s!=e&&s!=i){if("LI"==s.nodeName.toUpperCase()){u[u.length]=s;d=g(s);if(d){clearTimeout(d)}s.className=s.className?(s.className.replace(f,"")+" hover"):"hover";m=s}s=s.parentNode}if(m&&m.parentNode){p=m.parentNode;if(p&&"UL"==p.nodeName.toUpperCase()){n=p.childNodes.length;while(n--){r=p.childNodes[n];if(r!=m){r.className=r.className?r.className.replace(j,""):""}}}}n=a.length;while(n--){q=false;o=u.length;while(o--){if(u[o]==a[n][1]){q=true}}if(!q){a[n][1].className=a[n][1].className?a[n][1].className.replace(f,""):""}}},l=function(d){while(d&&d!=e&&d!=i){if("LI"==d.nodeName.toUpperCase()){(function(m){var n=setTimeout(function(){m.className=m.className?m.className.replace(f,""):""},500);a[a.length]=[n,m]})(d)}d=d.parentNode}},b=function(p){var n,d,o,m=p.target||p.srcElement;while(true){if(!m||m==i||m==e){return}if(m.id&&m.id=="wp-admin-bar-get-shortlink"){break}m=m.parentNode}if(p.preventDefault){p.preventDefault()}p.returnValue=false;if(-1==m.className.indexOf("selected")){m.className+=" selected"}for(n=0,d=m.childNodes.length;n<d;n++){o=m.childNodes[n];if(o.className&&-1!=o.className.indexOf("shortlink-input")){o.focus();o.select();o.onblur=function(){m.className=m.className?m.className.replace(j,""):""};break}}return false};c(k,"load",function(){e=i.getElementById("wpadminbar");if(i.body&&e){i.body.appendChild(e);c(e,"mouseover",function(d){h(d.target||d.srcElement)});c(e,"mouseout",function(d){l(d.target||d.srcElement)});c(e,"click",b)}if(k.location.hash){k.scrollBy(0,-32)}})})(document,window);
\ No newline at end of file
+if(typeof(jQuery)!="undefined"){if(typeof(jQuery.fn.hoverIntent)=="undefined"){(function(b){b.fn.hoverIntent=function(p,r){var g={sensitivity:7,interval:100,timeout:0};g=b.extend(g,r?{over:p,out:r}:p);var a,f,t,v;var u=function(c){a=c.pageX;f=c.pageY};var w=function(c,d){d.hoverIntent_t=clearTimeout(d.hoverIntent_t);if((Math.abs(t-a)+Math.abs(v-f))<g.sensitivity){b(d).unbind("mousemove",u);d.hoverIntent_s=1;return g.over.apply(d,[c])}else{t=a;v=f;d.hoverIntent_t=setTimeout(function(){w(c,d)},g.interval)}};var s=function(c,d){d.hoverIntent_t=clearTimeout(d.hoverIntent_t);d.hoverIntent_s=0;return g.out.apply(d,[c])};var x=function(e){var d=this;var c=(e.type=="mouseover"?e.fromElement:e.toElement)||e.relatedTarget;while(c&&c!=this){try{c=c.parentNode}catch(e){c=this}}if(c==this){if(b.browser.mozilla){if(e.type=="mouseout"){d.mtout=setTimeout(function(){q(e,d)},30)}else{if(d.mtout){d.mtout=clearTimeout(d.mtout)}}}return}else{if(d.mtout){d.mtout=clearTimeout(d.mtout)}q(e,d)}};var q=function(e,d){var c=jQuery.extend({},e);if(d.hoverIntent_t){d.hoverIntent_t=clearTimeout(d.hoverIntent_t)}if(e.type=="mouseover"){t=c.pageX;v=c.pageY;b(d).bind("mousemove",u);if(d.hoverIntent_s!=1){d.hoverIntent_t=setTimeout(function(){w(c,d)},g.interval)}}else{b(d).unbind("mousemove",u);if(d.hoverIntent_s==1){d.hoverIntent_t=setTimeout(function(){s(c,d)},g.timeout)}}};return this.mouseover(x).mouseout(x)}})(jQuery)}jQuery(document).ready(function(b){var a=function(c,e){var f=b(e),d=f.attr("tabindex");if(d){f.attr("tabindex","0").attr("tabindex",d)}};b("#wpadminbar").removeClass("nojq").removeClass("nojs").find("li.menupop").hoverIntent({over:function(c){b(this).addClass("hover")},out:function(c){b(this).removeClass("hover")},timeout:180,sensitivity:7,interval:100});b("#wp-admin-bar-get-shortlink").click(function(c){c.preventDefault();b(this).addClass("selected").children(".shortlink-input").blur(function(){b(this).parents("#wp-admin-bar-get-shortlink").removeClass("selected")}).focus().select()});b("#wpadminbar li.menupop > .ab-item").bind("keydown.adminbar",function(f){if(f.which!=13){return}var d=b(f.target),c=d.closest("ab-sub-wrapper");f.stopPropagation();f.preventDefault();if(!c.length){c=b("#wpadminbar .quicklinks")}c.find(".menupop").removeClass("hover");d.parent().toggleClass("hover");d.siblings(".ab-sub-wrapper").find(".ab-item").each(a)}).each(a);b("#wpadminbar .ab-item").bind("keydown.adminbar",function(d){if(d.which!=27){return}var c=b(d.target);d.stopPropagation();d.preventDefault();c.closest(".hover").removeClass("hover").children(".ab-item").focus();c.siblings(".ab-sub-wrapper").find(".ab-item").each(a)})})}else{(function(i,k){var c=function(n,m,d){if(n.addEventListener){n.addEventListener(m,d,false)}else{if(n.attachEvent){n.attachEvent("on"+m,function(){return d.call(n,window.event)})}}},e,f=new RegExp("\\bhover\\b","g"),a=[],j=new RegExp("\\bselected\\b","g"),g=function(m){var d=a.length;while(d--){if(a[d]&&m==a[d][1]){return a[d][0]}}return false},h=function(s){var n,d,q,m,p,r,u=[],o=0;while(s&&s!=e&&s!=i){if("LI"==s.nodeName.toUpperCase()){u[u.length]=s;d=g(s);if(d){clearTimeout(d)}s.className=s.className?(s.className.replace(f,"")+" hover"):"hover";m=s}s=s.parentNode}if(m&&m.parentNode){p=m.parentNode;if(p&&"UL"==p.nodeName.toUpperCase()){n=p.childNodes.length;while(n--){r=p.childNodes[n];if(r!=m){r.className=r.className?r.className.replace(j,""):""}}}}n=a.length;while(n--){q=false;o=u.length;while(o--){if(u[o]==a[n][1]){q=true}}if(!q){a[n][1].className=a[n][1].className?a[n][1].className.replace(f,""):""}}},l=function(d){while(d&&d!=e&&d!=i){if("LI"==d.nodeName.toUpperCase()){(function(m){var n=setTimeout(function(){m.className=m.className?m.className.replace(f,""):""},500);a[a.length]=[n,m]})(d)}d=d.parentNode}},b=function(p){var n,d,o,m=p.target||p.srcElement;while(true){if(!m||m==i||m==e){return}if(m.id&&m.id=="wp-admin-bar-get-shortlink"){break}m=m.parentNode}if(p.preventDefault){p.preventDefault()}p.returnValue=false;if(-1==m.className.indexOf("selected")){m.className+=" selected"}for(n=0,d=m.childNodes.length;n<d;n++){o=m.childNodes[n];if(o.className&&-1!=o.className.indexOf("shortlink-input")){o.focus();o.select();o.onblur=function(){m.className=m.className?m.className.replace(j,""):""};break}}return false};c(k,"load",function(){e=i.getElementById("wpadminbar");if(i.body&&e){i.body.appendChild(e);if(e.className){e.className=e.className.replace(/nojs/,"")}c(e,"mouseover",function(d){h(d.target||d.srcElement)});c(e,"mouseout",function(d){l(d.target||d.srcElement)});c(e,"click",b)}if(k.location.hash){k.scrollBy(0,-32)}})})(document,window)};
\ No newline at end of file
index aa4181152efcac236860cc6a65ba3f936150d35c..f1b3738354e6bfb2bd40fdd15b86e01fae906e2e 100644 (file)
@@ -1,4 +1,4 @@
-var autosave, autosaveLast = '', autosavePeriodical, autosaveOldMessage = '', autosaveDelayPreview = false, notSaved = true, blockSave = false, fullscreen;
+var autosave, autosaveLast = '', autosavePeriodical, autosaveOldMessage = '', autosaveDelayPreview = false, notSaved = true, blockSave = false, fullscreen, autosaveLockRelease = true;
 
 jQuery(document).ready( function($) {
        var dotabkey = true;
 
 jQuery(document).ready( function($) {
        var dotabkey = true;
@@ -9,6 +9,7 @@ jQuery(document).ready( function($) {
        //Disable autosave after the form has been submitted
        $("#post").submit(function() {
                $.cancel(autosavePeriodical);
        //Disable autosave after the form has been submitted
        $("#post").submit(function() {
                $.cancel(autosavePeriodical);
+               autosaveLockRelease = false;
        });
 
        $('input[type="submit"], a.submitdelete', '#submitpost').click(function(){
        });
 
        $('input[type="submit"], a.submitdelete', '#submitpost').click(function(){
@@ -47,6 +48,27 @@ jQuery(document).ready( function($) {
                }
        };
 
                }
        };
 
+       $(window).unload( function(e) {
+               if ( ! autosaveLockRelease )
+                       return;
+
+               // unload fires (twice) on removing the Thickbox iframe. Make sure we process only the main document unload.
+               if ( e.target && e.target.nodeName != '#document' )
+                       return;
+
+               $.ajax({
+                       type: 'POST',
+                       url: ajaxurl,
+                       async: false,
+                       data: {
+                               action: 'wp-remove-post-lock',
+                               _wpnonce: $('#_wpnonce').val(),
+                               post_ID: $('#post_ID').val(),
+                               active_post_lock: $('#active_post_lock').val()
+                       }
+               });
+       } );
+
        // preview
        $('#post-preview').click(function(){
                if ( $('#auto_draft').val() == '1' && notSaved ) {
        // preview
        $('#post-preview').click(function(){
                if ( $('#auto_draft').val() == '1' && notSaved ) {
@@ -61,6 +83,17 @@ jQuery(document).ready( function($) {
        doPreview = function() {
                $('input#wp-preview').val('dopreview');
                $('form#post').attr('target', 'wp-preview').submit().attr('target', '');
        doPreview = function() {
                $('input#wp-preview').val('dopreview');
                $('form#post').attr('target', 'wp-preview').submit().attr('target', '');
+
+               /*
+                * Workaround for WebKit bug preventing a form submitting twice to the same action.
+                * https://bugs.webkit.org/show_bug.cgi?id=28633
+                */
+               if ( $.browser.safari ) {
+                       $('form#post').attr('action', function(index, value) {
+                               return value + '?t=' + new Date().getTime();
+                       });
+               }
+
                $('input#wp-preview').val('');
        }
 
                $('input#wp-preview').val('');
        }
 
@@ -99,9 +132,14 @@ function autosave_parse_response(response) {
                        sup = res.responses[0].supplemental;
                        if ( 'disable' == sup['disable_autosave'] ) {
                                autosave = function() {};
                        sup = res.responses[0].supplemental;
                        if ( 'disable' == sup['disable_autosave'] ) {
                                autosave = function() {};
+                               autosaveLockRelease = false;
                                res = { errors: true };
                        }
 
                                res = { errors: true };
                        }
 
+                       if ( sup['active-post-lock'] ) {
+                               jQuery('#active_post_lock').val( sup['active-post-lock'] );
+                       }
+
                        if ( sup['alert'] ) {
                                jQuery('#autosave-alert').remove();
                                jQuery('#titlediv').after('<div id="autosave-alert" class="error below-h2"><p>' + sup['alert'] + '</p></div>');
                        if ( sup['alert'] ) {
                                jQuery('#autosave-alert').remove();
                                jQuery('#titlediv').after('<div id="autosave-alert" class="error below-h2"><p>' + sup['alert'] + '</p></div>');
@@ -245,11 +283,11 @@ autosave = function() {
        }
 
        if ( fullscreen && fullscreen.settings.visible ) {
        }
 
        if ( fullscreen && fullscreen.settings.visible ) {
-               post_data["post_title"] = jQuery('#wp-fullscreen-title').val();
-               post_data["content"] = jQuery("#wp_mce_fullscreen").val();
+               post_data["post_title"] = jQuery('#wp-fullscreen-title').val() || '';
+               post_data["content"] = jQuery("#wp_mce_fullscreen").val() || '';
        } else {
        } else {
-               post_data["post_title"] = jQuery("#title").val()
-               post_data["content"] = jQuery("#content").val();
+               post_data["post_title"] = jQuery("#title").val() || '';
+               post_data["content"] = jQuery("#content").val() || '';
        }
 
        if ( jQuery('#post_name').val() )
        }
 
        if ( jQuery('#post_name').val() )
index ee06aaf562165a726b1cbceedb3d6267df6239ec..a5a29822bc6d2abcbda3bf4e70a78e0d0377b3f7 100644 (file)
@@ -1 +1 @@
-var autosave,autosaveLast="",autosavePeriodical,autosaveOldMessage="",autosaveDelayPreview=false,notSaved=true,blockSave=false,fullscreen;jQuery(document).ready(function(b){var a=true;autosaveLast=b("#post #title").val()+b("#post #content").val();autosavePeriodical=b.schedule({time:autosaveL10n.autosaveInterval*1000,func:function(){autosave()},repeat:true,protect:true});b("#post").submit(function(){b.cancel(autosavePeriodical)});b('input[type="submit"], a.submitdelete',"#submitpost").click(function(){blockSave=true;window.onbeforeunload=null;b(":button, :submit","#submitpost").each(function(){var c=b(this);if(c.hasClass("button-primary")){c.addClass("button-primary-disabled")}else{c.addClass("button-disabled")}});if(b(this).attr("id")=="publish"){b("#ajax-loading").css("visibility","visible")}else{b("#draft-ajax-loading").css("visibility","visible")}});window.onbeforeunload=function(){var c=typeof(tinyMCE)!="undefined"?tinyMCE.activeEditor:false,e,d;if(c&&!c.isHidden()){if(c.isDirty()){return autosaveL10n.saveAlert}}else{if(fullscreen&&fullscreen.settings.visible){e=b("#wp-fullscreen-title").val();d=b("#wp_mce_fullscreen").val()}else{e=b("#post #title").val();d=b("#post #content").val()}if((e||d)&&e+d!=autosaveLast){return autosaveL10n.saveAlert}}};b("#post-preview").click(function(){if(b("#auto_draft").val()=="1"&&notSaved){autosaveDelayPreview=true;autosave();return false}doPreview();return false});doPreview=function(){b("input#wp-preview").val("dopreview");b("form#post").attr("target","wp-preview").submit().attr("target","");b("input#wp-preview").val("")};if(typeof tinyMCE!="undefined"){b("#title")[b.browser.opera?"keypress":"keydown"](function(c){if(c.which==9&&!c.shiftKey&&!c.controlKey&&!c.altKey){if((b("#auto_draft").val()=="1")&&(b("#title").val().length>0)){autosave()}if(tinyMCE.activeEditor&&!tinyMCE.activeEditor.isHidden()&&a){c.preventDefault();a=false;tinyMCE.activeEditor.focus();return false}}})}if("1"==b("#auto_draft").val()){b("#title").blur(function(){if(!this.value||b("#auto_draft").val()!="1"){return}delayed_autosave()})}});function autosave_parse_response(c){var d=wpAjax.parseAjaxResponse(c,"autosave"),e="",a,b;if(d&&d.responses&&d.responses.length){e=d.responses[0].data;if(d.responses[0].supplemental){b=d.responses[0].supplemental;if("disable"==b.disable_autosave){autosave=function(){};d={errors:true}}if(b.alert){jQuery("#autosave-alert").remove();jQuery("#titlediv").after('<div id="autosave-alert" class="error below-h2"><p>'+b.alert+"</p></div>")}jQuery.each(b,function(f,g){if(f.match(/^replace-/)){jQuery("#"+f.replace("replace-","")).val(g)}})}if(!d.errors){a=parseInt(d.responses[0].id,10);if(!isNaN(a)&&a>0){autosave_update_slug(a)}}}if(e){jQuery(".autosave-message").html(e)}else{if(autosaveOldMessage&&d){jQuery(".autosave-message").html(autosaveOldMessage)}}return d}function autosave_saved(a){blockSave=false;autosave_parse_response(a);autosave_enable_buttons()}function autosave_saved_new(b){blockSave=false;var c=autosave_parse_response(b),a;if(c&&c.responses.length&&!c.errors){a=parseInt(c.responses[0].id,10);if(!isNaN(a)&&a>0){notSaved=false;jQuery("#auto_draft").val("0")}autosave_enable_buttons();if(autosaveDelayPreview){autosaveDelayPreview=false;doPreview()}}else{autosave_enable_buttons()}}function autosave_update_slug(a){if("undefined"!=makeSlugeditClickable&&jQuery.isFunction(makeSlugeditClickable)&&!jQuery("#edit-slug-box > *").size()){jQuery.post(ajaxurl,{action:"sample-permalink",post_id:a,new_title:fullscreen&&fullscreen.settings.visible?jQuery("#wp-fullscreen-title").val():jQuery("#title").val(),samplepermalinknonce:jQuery("#samplepermalinknonce").val()},function(b){if(b!=="-1"){jQuery("#edit-slug-box").html(b);makeSlugeditClickable()}})}}function autosave_loading(){jQuery(".autosave-message").html(autosaveL10n.savingText)}function autosave_enable_buttons(){setTimeout(function(){jQuery(":button, :submit","#submitpost").removeAttr("disabled");jQuery(".ajax-loading").css("visibility","hidden")},500)}function autosave_disable_buttons(){jQuery(":button, :submit","#submitpost").prop("disabled",true);setTimeout(autosave_enable_buttons,5000)}function delayed_autosave(){setTimeout(function(){if(blockSave){return}autosave()},200)}autosave=function(){blockSave=true;var c=(typeof tinyMCE!="undefined")&&tinyMCE.activeEditor&&!tinyMCE.activeEditor.isHidden(),d,f,b,e,a;autosave_disable_buttons();d={action:"autosave",post_ID:jQuery("#post_ID").val()||0,autosavenonce:jQuery("#autosavenonce").val(),post_type:jQuery("#post_type").val()||"",autosave:1};jQuery(".tags-input").each(function(){d[this.name]=this.value});f=true;if(jQuery("#TB_window").css("display")=="block"){f=false}if(c&&f){b=tinyMCE.activeEditor;if(b.plugins.spellchecker&&b.plugins.spellchecker.active){f=false}else{if("mce_fullscreen"==b.id||"wp_mce_fullscreen"==b.id){tinyMCE.get("content").setContent(b.getContent({format:"raw"}),{format:"raw"})}tinyMCE.triggerSave()}}if(fullscreen&&fullscreen.settings.visible){d.post_title=jQuery("#wp-fullscreen-title").val();d.content=jQuery("#wp_mce_fullscreen").val()}else{d.post_title=jQuery("#title").val();d.content=jQuery("#content").val()}if(jQuery("#post_name").val()){d.post_name=jQuery("#post_name").val()}if((d.post_title.length==0&&d.content.length==0)||d.post_title+d.content==autosaveLast){f=false}e=jQuery("#original_post_status").val();goodcats=([]);jQuery("[name='post_category[]']:checked").each(function(g){goodcats.push(this.value)});d.catslist=goodcats.join(",");if(jQuery("#comment_status").prop("checked")){d.comment_status="open"}if(jQuery("#ping_status").prop("checked")){d.ping_status="open"}if(jQuery("#excerpt").size()){d.excerpt=jQuery("#excerpt").val()}if(jQuery("#post_author").size()){d.post_author=jQuery("#post_author").val()}if(jQuery("#parent_id").val()){d.parent_id=jQuery("#parent_id").val()}d.user_ID=jQuery("#user-id").val();if(jQuery("#auto_draft").val()=="1"){d.auto_draft="1"}if(f){autosaveLast=d.post_title+d.content;jQuery(document).triggerHandler("wpcountwords",[d.content])}else{d.autosave=0}if(d.auto_draft=="1"){a=autosave_saved_new}else{a=autosave_saved}autosaveOldMessage=jQuery("#autosave").html();jQuery.ajax({data:d,beforeSend:f?autosave_loading:null,type:"POST",url:ajaxurl,success:a})};
\ No newline at end of file
+var autosave,autosaveLast="",autosavePeriodical,autosaveOldMessage="",autosaveDelayPreview=false,notSaved=true,blockSave=false,fullscreen,autosaveLockRelease=true;jQuery(document).ready(function(b){var a=true;autosaveLast=b("#post #title").val()+b("#post #content").val();autosavePeriodical=b.schedule({time:autosaveL10n.autosaveInterval*1000,func:function(){autosave()},repeat:true,protect:true});b("#post").submit(function(){b.cancel(autosavePeriodical);autosaveLockRelease=false});b('input[type="submit"], a.submitdelete',"#submitpost").click(function(){blockSave=true;window.onbeforeunload=null;b(":button, :submit","#submitpost").each(function(){var c=b(this);if(c.hasClass("button-primary")){c.addClass("button-primary-disabled")}else{c.addClass("button-disabled")}});if(b(this).attr("id")=="publish"){b("#ajax-loading").css("visibility","visible")}else{b("#draft-ajax-loading").css("visibility","visible")}});window.onbeforeunload=function(){var c=typeof(tinyMCE)!="undefined"?tinyMCE.activeEditor:false,e,d;if(c&&!c.isHidden()){if(c.isDirty()){return autosaveL10n.saveAlert}}else{if(fullscreen&&fullscreen.settings.visible){e=b("#wp-fullscreen-title").val();d=b("#wp_mce_fullscreen").val()}else{e=b("#post #title").val();d=b("#post #content").val()}if((e||d)&&e+d!=autosaveLast){return autosaveL10n.saveAlert}}};b(window).unload(function(c){if(!autosaveLockRelease){return}if(c.target&&c.target.nodeName!="#document"){return}b.ajax({type:"POST",url:ajaxurl,async:false,data:{action:"wp-remove-post-lock",_wpnonce:b("#_wpnonce").val(),post_ID:b("#post_ID").val(),active_post_lock:b("#active_post_lock").val()}})});b("#post-preview").click(function(){if(b("#auto_draft").val()=="1"&&notSaved){autosaveDelayPreview=true;autosave();return false}doPreview();return false});doPreview=function(){b("input#wp-preview").val("dopreview");b("form#post").attr("target","wp-preview").submit().attr("target","");if(b.browser.safari){b("form#post").attr("action",function(c,d){return d+"?t="+new Date().getTime()})}b("input#wp-preview").val("")};if(typeof tinyMCE!="undefined"){b("#title")[b.browser.opera?"keypress":"keydown"](function(c){if(c.which==9&&!c.shiftKey&&!c.controlKey&&!c.altKey){if((b("#auto_draft").val()=="1")&&(b("#title").val().length>0)){autosave()}if(tinyMCE.activeEditor&&!tinyMCE.activeEditor.isHidden()&&a){c.preventDefault();a=false;tinyMCE.activeEditor.focus();return false}}})}if("1"==b("#auto_draft").val()){b("#title").blur(function(){if(!this.value||b("#auto_draft").val()!="1"){return}delayed_autosave()})}});function autosave_parse_response(c){var d=wpAjax.parseAjaxResponse(c,"autosave"),e="",a,b;if(d&&d.responses&&d.responses.length){e=d.responses[0].data;if(d.responses[0].supplemental){b=d.responses[0].supplemental;if("disable"==b.disable_autosave){autosave=function(){};autosaveLockRelease=false;d={errors:true}}if(b["active-post-lock"]){jQuery("#active_post_lock").val(b["active-post-lock"])}if(b.alert){jQuery("#autosave-alert").remove();jQuery("#titlediv").after('<div id="autosave-alert" class="error below-h2"><p>'+b.alert+"</p></div>")}jQuery.each(b,function(f,g){if(f.match(/^replace-/)){jQuery("#"+f.replace("replace-","")).val(g)}})}if(!d.errors){a=parseInt(d.responses[0].id,10);if(!isNaN(a)&&a>0){autosave_update_slug(a)}}}if(e){jQuery(".autosave-message").html(e)}else{if(autosaveOldMessage&&d){jQuery(".autosave-message").html(autosaveOldMessage)}}return d}function autosave_saved(a){blockSave=false;autosave_parse_response(a);autosave_enable_buttons()}function autosave_saved_new(b){blockSave=false;var c=autosave_parse_response(b),a;if(c&&c.responses.length&&!c.errors){a=parseInt(c.responses[0].id,10);if(!isNaN(a)&&a>0){notSaved=false;jQuery("#auto_draft").val("0")}autosave_enable_buttons();if(autosaveDelayPreview){autosaveDelayPreview=false;doPreview()}}else{autosave_enable_buttons()}}function autosave_update_slug(a){if("undefined"!=makeSlugeditClickable&&jQuery.isFunction(makeSlugeditClickable)&&!jQuery("#edit-slug-box > *").size()){jQuery.post(ajaxurl,{action:"sample-permalink",post_id:a,new_title:fullscreen&&fullscreen.settings.visible?jQuery("#wp-fullscreen-title").val():jQuery("#title").val(),samplepermalinknonce:jQuery("#samplepermalinknonce").val()},function(b){if(b!=="-1"){jQuery("#edit-slug-box").html(b);makeSlugeditClickable()}})}}function autosave_loading(){jQuery(".autosave-message").html(autosaveL10n.savingText)}function autosave_enable_buttons(){setTimeout(function(){jQuery(":button, :submit","#submitpost").removeAttr("disabled");jQuery(".ajax-loading").css("visibility","hidden")},500)}function autosave_disable_buttons(){jQuery(":button, :submit","#submitpost").prop("disabled",true);setTimeout(autosave_enable_buttons,5000)}function delayed_autosave(){setTimeout(function(){if(blockSave){return}autosave()},200)}autosave=function(){blockSave=true;var c=(typeof tinyMCE!="undefined")&&tinyMCE.activeEditor&&!tinyMCE.activeEditor.isHidden(),d,f,b,e,a;autosave_disable_buttons();d={action:"autosave",post_ID:jQuery("#post_ID").val()||0,autosavenonce:jQuery("#autosavenonce").val(),post_type:jQuery("#post_type").val()||"",autosave:1};jQuery(".tags-input").each(function(){d[this.name]=this.value});f=true;if(jQuery("#TB_window").css("display")=="block"){f=false}if(c&&f){b=tinyMCE.activeEditor;if(b.plugins.spellchecker&&b.plugins.spellchecker.active){f=false}else{if("mce_fullscreen"==b.id||"wp_mce_fullscreen"==b.id){tinyMCE.get("content").setContent(b.getContent({format:"raw"}),{format:"raw"})}tinyMCE.triggerSave()}}if(fullscreen&&fullscreen.settings.visible){d.post_title=jQuery("#wp-fullscreen-title").val()||"";d.content=jQuery("#wp_mce_fullscreen").val()||""}else{d.post_title=jQuery("#title").val()||"";d.content=jQuery("#content").val()||""}if(jQuery("#post_name").val()){d.post_name=jQuery("#post_name").val()}if((d.post_title.length==0&&d.content.length==0)||d.post_title+d.content==autosaveLast){f=false}e=jQuery("#original_post_status").val();goodcats=([]);jQuery("[name='post_category[]']:checked").each(function(g){goodcats.push(this.value)});d.catslist=goodcats.join(",");if(jQuery("#comment_status").prop("checked")){d.comment_status="open"}if(jQuery("#ping_status").prop("checked")){d.ping_status="open"}if(jQuery("#excerpt").size()){d.excerpt=jQuery("#excerpt").val()}if(jQuery("#post_author").size()){d.post_author=jQuery("#post_author").val()}if(jQuery("#parent_id").val()){d.parent_id=jQuery("#parent_id").val()}d.user_ID=jQuery("#user-id").val();if(jQuery("#auto_draft").val()=="1"){d.auto_draft="1"}if(f){autosaveLast=d.post_title+d.content;jQuery(document).triggerHandler("wpcountwords",[d.content])}else{d.autosave=0}if(d.auto_draft=="1"){a=autosave_saved_new}else{a=autosave_saved}autosaveOldMessage=jQuery("#autosave").html();jQuery.ajax({data:d,beforeSend:f?autosave_loading:null,type:"POST",url:ajaxurl,success:a})};
\ No newline at end of file
index 8b0811d819aa74fe702ba3466e334faf85065a3b..806a974824b622b0513b094d5a4453c208092aba 100644 (file)
@@ -1,18 +1,5 @@
-/*!
- * jQuery JavaScript Library v1.6.1
- * http://jquery.com/
- *
- * Copyright 2011, John Resig
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * Includes Sizzle.js
- * http://sizzlejs.com/
- * Copyright 2011, The Dojo Foundation
- * Released under the MIT, BSD, and GPL Licenses.
- *
- * Date: Thu May 12 15:04:36 2011 -0400
- */
-(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!cj[a]){var b=f("<"+a+">").appendTo("body"),d=b.css("display");b.remove();if(d==="none"||d===""){ck||(ck=c.createElement("iframe"),ck.frameBorder=ck.width=ck.height=0),c.body.appendChild(ck);if(!cl||!ck.createElement)cl=(ck.contentWindow||ck.contentDocument).document,cl.write("<!doctype><html><body></body></html>");b=cl.createElement(a),cl.body.appendChild(b),d=f.css(b,"display"),c.body.removeChild(ck)}cj[a]=d}return cj[a]}function cu(a,b){var c={};f.each(cp.concat.apply([],cp.slice(0,b)),function(){c[this]=a});return c}function ct(){cq=b}function cs(){setTimeout(ct,0);return cq=f.now()}function ci(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ch(){try{return new a.XMLHttpRequest}catch(b){}}function cb(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g<i;g++){if(g===1)for(h in a.converters)typeof h=="string"&&(e[h.toLowerCase()]=a.converters[h]);l=k,k=d[g];if(k==="*")k=l;else if(l!=="*"&&l!==k){m=l+" "+k,n=e[m]||e["* "+k];if(!n){p=b;for(o in e){j=o.split(" ");if(j[0]===l||j[0]==="*"){p=e[j[1]+" "+k];if(p){o=e[o],o===!0?n=p:p===!0&&(n=o);break}}}}!n&&!p&&f.error("No conversion from "+m.replace(" "," to ")),n!==!0&&(c=n?n(c):p(o(c)))}}return c}function ca(a,c,d){var e=a.contents,f=a.dataTypes,g=a.responseFields,h,i,j,k;for(i in g)i in d&&(c[g[i]]=d[i]);while(f[0]==="*")f.shift(),h===b&&(h=a.mimeType||c.getResponseHeader("content-type"));if(h)for(i in e)if(e[i]&&e[i].test(h)){f.unshift(i);break}if(f[0]in d)j=f[0];else{for(i in d){if(!f[0]||a.converters[i+" "+f[0]]){j=i;break}k||(k=i)}j=j||k}if(j){j!==f[0]&&f.unshift(j);return d[j]}}function b_(a,b,c,d){if(f.isArray(b))f.each(b,function(b,e){c||bF.test(a)?d(a,e):b_(a+"["+(typeof e=="object"||f.isArray(e)?b:"")+"]",e,c,d)});else if(!c&&b!=null&&typeof b=="object")for(var e in b)b_(a+"["+e+"]",b[e],c,d);else d(a,b)}function b$(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;var h=a[f],i=0,j=h?h.length:0,k=a===bU,l;for(;i<j&&(k||!l);i++)l=h[i](c,d,e),typeof l=="string"&&(!k||g[l]?l=b:(c.dataTypes.unshift(l),l=b$(a,c,d,e,l,g)));(k||!l)&&!g["*"]&&(l=b$(a,c,d,e,"*",g));return l}function bZ(a){return function(b,c){typeof b!="string"&&(c=b,b="*");if(f.isFunction(c)){var d=b.toLowerCase().split(bQ),e=0,g=d.length,h,i,j;for(;e<g;e++)h=d[e],j=/^\+/.test(h),j&&(h=h.substr(1)||"*"),i=a[h]=a[h]||[],i[j?"unshift":"push"](c)}}}function bD(a,b,c){var d=b==="width"?bx:by,e=b==="width"?a.offsetWidth:a.offsetHeight;if(c==="border")return e;f.each(d,function(){c||(e-=parseFloat(f.css(a,"padding"+this))||0),c==="margin"?e+=parseFloat(f.css(a,"margin"+this))||0:e-=parseFloat(f.css(a,"border"+this+"Width"))||0});return e}function bn(a,b){b.src?f.ajax({url:b.src,async:!1,dataType:"script"}):f.globalEval((b.text||b.textContent||b.innerHTML||"").replace(bf,"/*$0*/")),b.parentNode&&b.parentNode.removeChild(b)}function bm(a){f.nodeName(a,"input")?bl(a):a.getElementsByTagName&&f.grep(a.getElementsByTagName("input"),bl)}function bl(a){if(a.type==="checkbox"||a.type==="radio")a.defaultChecked=a.checked}function bk(a){return"getElementsByTagName"in a?a.getElementsByTagName("*"):"querySelectorAll"in a?a.querySelectorAll("*"):[]}function bj(a,b){var c;if(b.nodeType===1){b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase();if(c==="object")b.outerHTML=a.outerHTML;else if(c!=="input"||a.type!=="checkbox"&&a.type!=="radio"){if(c==="option")b.selected=a.defaultSelected;else if(c==="input"||c==="textarea")b.defaultValue=a.defaultValue}else a.checked&&(b.defaultChecked=b.checked=a.checked),b.value!==a.value&&(b.value=a.value);b.removeAttribute(f.expando)}}function bi(a,b){if(b.nodeType===1&&!!f.hasData(a)){var c=f.expando,d=f.data(a),e=f.data(b,d);if(d=d[c]){var g=d.events;e=e[c]=f.extend({},d);if(g){delete e.handle,e.events={};for(var h in g)for(var i=0,j=g[h].length;i<j;i++)f.event.add(b,h+(g[h][i].namespace?".":"")+g[h][i].namespace,g[h][i],g[h][i].data)}}}}function bh(a,b){return f.nodeName(a,"table")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function X(a,b,c){b=b||0;if(f.isFunction(b))return f.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return f.grep(a,function(a,d){return a===b===c});if(typeof b=="string"){var d=f.grep(a,function(a){return a.nodeType===1});if(S.test(b))return f.filter(b,d,!c);b=f.filter(b,d)}return f.grep(a,function(a,d){return f.inArray(a,b)>=0===c})}function W(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function O(a,b){return(a&&a!=="*"?a+".":"")+b.replace(A,"`").replace(B,"&")}function N(a){var b,c,d,e,g,h,i,j,k,l,m,n,o,p=[],q=[],r=f._data(this,"events");if(!(a.liveFired===this||!r||!r.live||a.target.disabled||a.button&&a.type==="click")){a.namespace&&(n=new RegExp("(^|\\.)"+a.namespace.split(".").join("\\.(?:.*\\.)?")+"(\\.|$)")),a.liveFired=this;var s=r.live.slice(0);for(i=0;i<s.length;i++)g=s[i],g.origType.replace(y,"")===a.type?q.push(g.selector):s.splice(i--,1);e=f(a.target).closest(q,a.currentTarget);for(j=0,k=e.length;j<k;j++){m=e[j];for(i=0;i<s.length;i++){g=s[i];if(m.selector===g.selector&&(!n||n.test(g.namespace))&&!m.elem.disabled){h=m.elem,d=null;if(g.preType==="mouseenter"||g.preType==="mouseleave")a.type=g.preType,d=f(a.relatedTarget).closest(g.selector)[0],d&&f.contains(h,d)&&(d=h);(!d||d!==h)&&p.push({elem:h,handleObj:g,level:m.level})}}}for(j=0,k=p.length;j<k;j++){e=p[j];if(c&&e.level>c)break;a.currentTarget=e.elem,a.data=e.handleObj.data,a.handleObj=e.handleObj,o=e.handleObj.origHandler.apply(e.elem,arguments);if(o===!1||a.isPropagationStopped()){c=e.level,o===!1&&(b=!1);if(a.isImmediatePropagationStopped())break}}return b}}function L(a,c,d){var e=f.extend({},d[0]);e.type=a,e.originalEvent={},e.liveFired=b,f.event.handle.call(c,e),e.isDefaultPrevented()&&d[0].preventDefault()}function F(){return!0}function E(){return!1}function m(a,c,d){var e=c+"defer",g=c+"queue",h=c+"mark",i=f.data(a,e,b,!0);i&&(d==="queue"||!f.data(a,g,b,!0))&&(d==="mark"||!f.data(a,h,b,!0))&&setTimeout(function(){!f.data(a,g,b,!0)&&!f.data(a,h,b,!0)&&(f.removeData(a,e,!0),i.resolve())},0)}function l(a){for(var b in a)if(b!=="toJSON")return!1;return!0}function k(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(j,"$1-$2").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNaN(d)?i.test(d)?f.parseJSON(d):d:parseFloat(d)}catch(g){}f.data(a,c,d)}else d=b}return d}var c=a.document,d=a.navigator,e=a.location,f=function(){function H(){if(!e.isReady){try{c.documentElement.doScroll("left")}catch(a){setTimeout(H,1);return}e.ready()}}var e=function(a,b){return new e.fn.init(a,b,h)},f=a.jQuery,g=a.$,h,i=/^(?:[^<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/\d/,n=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,o=/^[\],:{}\s]*$/,p=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,q=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,r=/(?:^|:|,)(?:\s*\[)+/g,s=/(webkit)[ \/]([\w.]+)/,t=/(opera)(?:.*version)?[ \/]([\w.]+)/,u=/(msie) ([\w.]+)/,v=/(mozilla)(?:.*? rv:([\w.]+))?/,w=d.userAgent,x,y,z,A=Object.prototype.toString,B=Object.prototype.hasOwnProperty,C=Array.prototype.push,D=Array.prototype.slice,E=String.prototype.trim,F=Array.prototype.indexOf,G={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=n.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.6.1",length:0,size:function(){return this.length},toArray:function(){return D.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?C.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),y.done(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(D.apply(this,arguments),"slice",D.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:C,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j<k;j++)if((a=arguments[j])!=null)for(c in a){d=i[c],f=a[c];if(i===f)continue;l&&f&&(e.isPlainObject(f)||(g=e.isArray(f)))?(g?(g=!1,h=d&&e.isArray(d)?d:[]):h=d&&e.isPlainObject(d)?d:{},i[c]=e.extend(l,h,f)):f!==b&&(i[c]=f)}return i},e.extend({noConflict:function(b){a.$===e&&(a.$=g),b&&a.jQuery===e&&(a.jQuery=f);return e},isReady:!1,readyWait:1,holdReady:function(a){a?e.readyWait++:e.ready(!0)},ready:function(a){if(a===!0&&!--e.readyWait||a!==!0&&!e.isReady){if(!c.body)return setTimeout(e.ready,1);e.isReady=!0;if(a!==!0&&--e.readyWait>0)return;y.resolveWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").unbind("ready")}},bindReady:function(){if(!y){y=e._Deferred();if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",z,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",z),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&H()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNaN:function(a){return a==null||!m.test(a)||isNaN(a)},type:function(a){return a==null?String(a):G[A.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;if(a.constructor&&!B.call(a,"constructor")&&!B.call(a.constructor.prototype,"isPrototypeOf"))return!1;var c;for(c in a);return c===b||B.call(a,c)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw a},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(o.test(b.replace(p,"@").replace(q,"]").replace(r,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(b,c,d){a.DOMParser?(d=new DOMParser,c=d.parseFromString(b,"text/xml")):(c=new ActiveXObject("Microsoft.XMLDOM"),c.async="false",c.loadXML(b)),d=c.documentElement,(!d||!d.nodeName||d.nodeName==="parsererror")&&e.error("Invalid XML: "+b);return c},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g<h;)if(c.apply(a[g++],d)===!1)break}else if(i){for(f in a)if(c.call(a[f],f,a[f])===!1)break}else for(;g<h;)if(c.call(a[g],g,a[g++])===!1)break;return a},trim:E?function(a){return a==null?"":E.call(a)}:function(a){return a==null?"":(a+"").replace(k,"").replace(l,"")},makeArray:function(a,b){var c=b||[];if(a!=null){var d=e.type(a);a.length==null||d==="string"||d==="function"||d==="regexp"||e.isWindow(a)?C.call(c,a):e.merge(c,a)}return c},inArray:function(a,b){if(F)return F.call(b,a);for(var c=0,d=b.length;c<d;c++)if(b[c]===a)return c;return-1},merge:function(a,c){var d=a.length,e=0;if(typeof c.length=="number")for(var f=c.length;e<f;e++)a[d++]=c[e];else while(c[e]!==b)a[d++]=c[e++];a.length=d;return a},grep:function(a,b,c){var d=[],e;c=!!c;for(var f=0,g=a.length;f<g;f++)e=!!b(a[f],f),c!==e&&d.push(a[f]);return d},map:function(a,c,d){var f,g,h=[],i=0,j=a.length,k=a instanceof e||j!==b&&typeof j=="number"&&(j>0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i<j;i++)f=c(a[i],i,d),f!=null&&(h[h.length]=f);else for(g in a)f=c(a[g],g,d),f!=null&&(h[h.length]=f);return h.concat.apply([],h)},guid:1,proxy:function(a,c){if(typeof c=="string"){var d=a[c];c=a,a=d}if(!e.isFunction(a))return b;var f=D.call(arguments,2),g=function(){return a.apply(c,f.concat(D.call(arguments)))};g.guid=a.guid=a.guid||g.guid||e.guid++;return g},access:function(a,c,d,f,g,h){var i=a.length;if(typeof c=="object"){for(var j in c)e.access(a,j,c[j],f,g,d);return a}if(d!==b){f=!h&&f&&e.isFunction(d);for(var k=0;k<i;k++)g(a[k],c,f?d.call(a[k],k,g(a[k],c)):d,h);return a}return i?g(a[0],c):b},now:function(){return(new Date).getTime()},uaMatch:function(a){a=a.toLowerCase();var b=s.exec(a)||t.exec(a)||u.exec(a)||a.indexOf("compatible")<0&&v.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},sub:function(){function a(b,c){return new a.fn.init(b,c)}e.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function(d,f){f&&f instanceof e&&!(f instanceof a)&&(f=a(f));return e.fn.init.call(this,d,f,b)},a.fn.init.prototype=a.fn;var b=a(c);return a},browser:{}}),e.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){G["[object "+b+"]"]=b.toLowerCase()}),x=e.uaMatch(w),x.browser&&(e.browser[x.browser]=!0,e.browser.version=x.version),e.browser.webkit&&(e.browser.safari=!0),j.test(" ")&&(k=/^[\s\xA0]+/,l=/[\s\xA0]+$/),h=e(c),c.addEventListener?z=function(){c.removeEventListener("DOMContentLoaded",z,!1),e.ready()}:c.attachEvent&&(z=function(){c.readyState==="complete"&&(c.detachEvent("onreadystatechange",z),e.ready())});return e}(),g="done fail isResolved isRejected promise then always pipe".split(" "),h=[].slice;f.extend({_Deferred:function(){var a=[],b,c,d,e={done:function(){if(!d){var c=arguments,g,h,i,j,k;b&&(k=b,b=0);for(g=0,h=c.length;g<h;g++)i=c[g],j=f.type(i),j==="array"?e.done.apply(e,i):j==="function"&&a.push(i);k&&e.resolveWith(k[0],k[1])}return this},resolveWith:function(e,f){if(!d&&!b&&!c){f=f||[],c=1;try{while(a[0])a.shift().apply(e,f)}finally{b=[e,f],c=0}}return this},resolve:function(){e.resolveWith(this,arguments);return this},isResolved:function(){return!!c||!!b},cancel:function(){d=1,a=[];return this}};return e},Deferred:function(a){var b=f._Deferred(),c=f._Deferred(),d;f.extend(b,{then:function(a,c){b.done(a).fail(c);return this},always:function(){return b.done.apply(b,arguments).fail.apply(this,arguments)},fail:c.done,rejectWith:c.resolveWith,reject:c.resolve,isRejected:c.isResolved,pipe:function(a,c){return f.Deferred(function(d){f.each({done:[a,"resolve"],fail:[c,"reject"]},function(a,c){var e=c[0],g=c[1],h;f.isFunction(e)?b[a](function(){h=e.apply(this,arguments),h&&f.isFunction(h.promise)?h.promise().then(d.resolve,d.reject):d[g](h)}):b[a](d[g])})}).promise()},promise:function(a){if(a==null){if(d)return d;d=a={}}var c=g.length;while(c--)a[g[c]]=b[g[c]];return a}}),b.done(c.cancel).fail(b.cancel),delete b.cancel,a&&a.call(b,b);return b},when:function(a){function i(a){return function(c){b[a]=arguments.length>1?h.call(arguments,0):c,--e||g.resolveWith(g,h.call(b,0))}}var b=arguments,c=0,d=b.length,e=d,g=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred();if(d>1){for(;c<d;c++)b[c]&&f.isFunction(b[c].promise)?b[c].promise().then(i(c),g.reject):--e;e||g.resolveWith(g,b)}else g!==a&&g.resolveWith(g,d?[a]:[]);return g.promise()}}),f.support=function(){var a=c.createElement("div"),b=c.documentElement,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r;a.setAttribute("className","t"),a.innerHTML="   <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>",d=a.getElementsByTagName("*"),e=a.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};f=c.createElement("select"),g=f.appendChild(c.createElement("option")),h=a.getElementsByTagName("input")[0],j={leadingWhitespace:a.firstChild.nodeType===3,tbody:!a.getElementsByTagName("tbody").length,htmlSerialize:!!a.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55$/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:h.value==="on",optSelected:g.selected,getSetAttribute:a.className!=="t",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},h.checked=!0,j.noCloneChecked=h.cloneNode(!0).checked,f.disabled=!0,j.optDisabled=!g.disabled;try{delete a.test}catch(s){j.deleteExpando=!1}!a.addEventListener&&a.attachEvent&&a.fireEvent&&(a.attachEvent("onclick",function b(){j.noCloneEvent=!1,a.detachEvent("onclick",b)}),a.cloneNode(!0).fireEvent("onclick")),h=c.createElement("input"),h.value="t",h.setAttribute("type","radio"),j.radioValue=h.value==="t",h.setAttribute("checked","checked"),a.appendChild(h),k=c.createDocumentFragment(),k.appendChild(a.firstChild),j.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,a.innerHTML="",a.style.width=a.style.paddingLeft="1px",l=c.createElement("body"),m={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"};for(q in m)l.style[q]=m[q];l.appendChild(a),b.insertBefore(l,b.firstChild),j.appendChecked=h.checked,j.boxModel=a.offsetWidth===2,"zoom"in a.style&&(a.style.display="inline",a.style.zoom=1,j.inlineBlockNeedsLayout=a.offsetWidth===2,a.style.display="",a.innerHTML="<div style='width:4px;'></div>",j.shrinkWrapBlocks=a.offsetWidth!==2),a.innerHTML="<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>",n=a.getElementsByTagName("td"),r=n[0].offsetHeight===0,n[0].style.display="",n[1].style.display="none",j.reliableHiddenOffsets=r&&n[0].offsetHeight===0,a.innerHTML="",c.defaultView&&c.defaultView.getComputedStyle&&(i=c.createElement("div"),i.style.width="0",i.style.marginRight="0",a.appendChild(i),j.reliableMarginRight=(parseInt((c.defaultView.getComputedStyle(i,null)||{marginRight:0}).marginRight,10)||0)===0),l.innerHTML="",b.removeChild(l);if(a.attachEvent)for(q in{submit:1,change:1,focusin:1})p="on"+q,r=p in a,r||(a.setAttribute(p,"return;"),r=typeof a[p]=="function"),j[q+"Bubbles"]=r;return j}(),f.boxModel=f.support.boxModel;var i=/^(?:\{.*\}|\[.*\])$/,j=/([a-z])([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!l(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g=f.expando,h=typeof c=="string",i,j=a.nodeType,k=j?f.cache:a,l=j?a[f.expando]:a[f.expando]&&f.expando;if((!l||e&&l&&!k[l][g])&&h&&d===b)return;l||(j?a[f.expando]=l=++f.uuid:l=f.expando),k[l]||(k[l]={},j||(k[l].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?k[l][g]=f.extend(k[l][g],c):k[l]=f.extend(k[l],c);i=k[l],e&&(i[g]||(i[g]={}),i=i[g]),d!==b&&(i[f.camelCase(c)]=d);if(c==="events"&&!i[c])return i[g]&&i[g].events;return h?i[f.camelCase(c)]:i}},removeData:function(b,c,d){if(!!f.acceptData(b)){var e=f.expando,g=b.nodeType,h=g?f.cache:b,i=g?b[f.expando]:f.expando;if(!h[i])return;if(c){var j=d?h[i][e]:h[i];if(j){delete j[c];if(!l(j))return}}if(d){delete h[i][e];if(!l(h[i]))return}var k=h[i][e];f.support.deleteExpando||h!=a?delete h[i]:h[i]=null,k?(h[i]={},g||(h[i].toJSON=f.noop),h[i][e]=k):g&&(f.support.deleteExpando?delete b[f.expando]:b.removeAttribute?b.removeAttribute(f.expando):b[f.expando]=null)}},_data:function(a,b,c){return f.data(a,b,c,!0)},acceptData:function(a){if(a.nodeName){var b=f.noData[a.nodeName.toLowerCase()];if(b)return b!==!0&&a.getAttribute("classid")===b}return!0}}),f.fn.extend({data:function(a,c){var d=null;if(typeof a=="undefined"){if(this.length){d=f.data(this[0]);if(this[0].nodeType===1){var e=this[0].attributes,g;for(var h=0,i=e.length;h<i;h++)g=e[h].name,g.indexOf("data-")===0&&(g=f.camelCase(g.substring(5)),k(this[0],g,d[g]))}}return d}if(typeof a=="object")return this.each(function(){f.data(this,a)});var j=a.split(".");j[1]=j[1]?"."+j[1]:"";if(c===b){d=this.triggerHandler("getData"+j[1]+"!",[j[0]]),d===b&&this.length&&(d=f.data(this[0],a),d=k(this[0],a,d));return d===b&&j[1]?this.data(j[0]):d}return this.each(function(){var b=f(this),d=[j[0],c];b.triggerHandler("setData"+j[1]+"!",d),f.data(this,a,c),b.triggerHandler("changeData"+j[1]+"!",d)})},removeData:function(a){return this.each(function(){f.removeData(this,a)})}}),f.extend({_mark:function(a,c){a&&(c=(c||"fx")+"mark",f.data(a,c,(f.data(a,c,b,!0)||0)+1,!0))},_unmark:function(a,c,d){a!==!0&&(d=c,c=a,a=!1);if(c){d=d||"fx";var e=d+"mark",g=a?0:(f.data(c,e,b,!0)||1)-1;g?f.data(c,e,g,!0):(f.removeData(c,e,!0),m(c,d,"mark"))}},queue:function(a,c,d){if(a){c=(c||"fx")+"queue";var e=f.data(a,c,b,!0);d&&(!e||f.isArray(d)?e=f.data(a,c,f.makeArray(d),!0):e.push(d));return e||[]}},dequeue:function(a,b){b=b||"fx";var c=f.queue(a,b),d=c.shift(),e;d==="inprogress"&&(d=c.shift()),d&&(b==="fx"&&c.unshift("inprogress"),d.call(a,function(){f.dequeue(a,b)})),c.length||(f.removeData(a,b+"queue",!0),m(a,b,"queue"))}}),f.fn.extend({queue:function(a,c){typeof a!="string"&&(c=a,a="fx");if(c===b)return f.queue(this[0],a);return this.each(function(){var b=f.queue(this,a,c);a==="fx"&&b[0]!=="inprogress"&&f.dequeue(this,a)})},dequeue:function(a){return this.each(function(){f.dequeue(this,a)})},delay:function(a,b){a=f.fx?f.fx.speeds[a]||a:a,b=b||"fx";return this.queue(b,function(){var c=this;setTimeout(function(){f.dequeue(c,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,c){function m(){--h||d.resolveWith(e,[e])}typeof a!="string"&&(c=a,a=b),a=a||"fx";var d=f.Deferred(),e=this,g=e.length,h=1,i=a+"defer",j=a+"queue",k=a+"mark",l;while(g--)if(l=f.data(e[g],i,b,!0)||(f.data(e[g],j,b,!0)||f.data(e[g],k,b,!0))&&f.data(e[g],i,f._Deferred(),!0))h++,l.done(m);m();return d.promise()}});var n=/[\n\t\r]/g,o=/\s+/,p=/\r/g,q=/^(?:button|input)$/i,r=/^(?:button|input|object|select|textarea)$/i,s=/^a(?:rea)?$/i,t=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,u=/\:/,v,w;f.fn.extend({attr:function(a,b){return f.access(this,a,b,!0,f.attr)},removeAttr:function(a){return this.each(function(){f.removeAttr(this,a)})},prop:function(a,b){return f.access(this,a,b,!0,f.prop)},removeProp:function(a){a=f.propFix[a]||a;return this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.addClass(a.call(this,b,c.attr("class")||""))});if(a&&typeof a=="string"){var b=(a||"").split(o);for(var c=0,d=this.length;c<d;c++){var e=this[c];if(e.nodeType===1)if(!e.className)e.className=a;else{var g=" "+e.className+" ",h=e.className;for(var i=0,j=b.length;i<j;i++)g.indexOf(" "+b[i]+" ")<0&&(h+=" "+b[i]);e.className=f.trim(h)}}}return this},removeClass:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.removeClass(a.call(this,b,c.attr("class")))});if(a&&typeof a=="string"||a===b){var c=(a||"").split(o);for(var d=0,e=this.length;d<e;d++){var g=this[d];if(g.nodeType===1&&g.className)if(a){var h=(" "+g.className+" ").replace(n," ");for(var i=0,j=c.length;i<j;i++)h=h.replace(" "+c[i]+" "," ");g.className=f.trim(h)}else g.className=""}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";if(f.isFunction(a))return this.each(function(c){var d=f(this);d.toggleClass(a.call(this,c,d.attr("class"),b),b)});return this.each(function(){if(c==="string"){var e,g=0,h=f(this),i=b,j=a.split(o);while(e=j[g++])i=d?i:!h.hasClass(e),h[i?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&f._data(this,"__className__",this.className),this.className=this.className||a===!1?"":f._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ";for(var c=0,d=this.length;c<d;c++)if((" "+this[c].className+" ").replace(n," ").indexOf(b)>-1)return!0;return!1},val:function(a){var c,d,e=this[0];if(!arguments.length){if(e){c=f.valHooks[e.nodeName.toLowerCase()]||f.valHooks[e.type];if(c&&"get"in c&&(d=c.get(e,"value"))!==b)return d;return(e.value||"").replace(p,"")}return b}var g=f.isFunction(a);return this.each(function(d){var e=f(this),h;if(this.nodeType===1){g?h=a.call(this,d,e.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c=a.selectedIndex,d=[],e=a.options,g=a.type==="select-one";if(c<0)return null;for(var h=g?c:0,i=g?c+1:e.length;h<i;h++){var j=e[h];if(j.selected&&(f.support.optDisabled?!j.disabled:j.getAttribute("disabled")===null)&&(!j.parentNode.disabled||!f.nodeName(j.parentNode,"optgroup"))){b=f(j).val();if(g)return b;d.push(b)}}if(g&&!d.length&&e.length)return f(e[c]).val();return d},set:function(a,b){var c=f.makeArray(b);f(a).find("option").each(function(){this.selected=f.inArray(f(this).val(),c)>=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attrFix:{tabindex:"tabIndex"},attr:function(a,c,d,e){var g=a.nodeType;if(!a||g===3||g===8||g===2)return b;if(e&&c in f.attrFn)return f(a)[c](d);if(!("getAttribute"in a))return f.prop(a,c,d);var h,i,j=g!==1||!f.isXMLDoc(a);c=j&&f.attrFix[c]||c,i=f.attrHooks[c],i||(!t.test(c)||typeof d!="boolean"&&d!==b&&d.toLowerCase()!==c.toLowerCase()?v&&(f.nodeName(a,"form")||u.test(c))&&(i=v):i=w);if(d!==b){if(d===null){f.removeAttr(a,c);return b}if(i&&"set"in i&&j&&(h=i.set(a,d,c))!==b)return h;a.setAttribute(c,""+d);return d}if(i&&"get"in i&&j)return i.get(a,c);h=a.getAttribute(c);return h===null?b:h},removeAttr:function(a,b){var c;a.nodeType===1&&(b=f.attrFix[b]||b,f.support.getSetAttribute?a.removeAttribute(b):(f.attr(a,b,""),a.removeAttributeNode(a.getAttributeNode(b))),t.test(b)&&(c=f.propFix[b]||b)in a&&(a[c]=!1))},attrHooks:{type:{set:function(a,b){if(q.test(a.nodeName)&&a.parentNode)f.error("type property can't be changed");else if(!f.support.radioValue&&b==="radio"&&f.nodeName(a,"input")){var c=a.value;a.setAttribute("type",b),c&&(a.value=c);return b}}},tabIndex:{get:function(a){var c=a.getAttributeNode("tabIndex");return c&&c.specified?parseInt(c.value,10):r.test(a.nodeName)||s.test(a.nodeName)&&a.href?0:b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e=a.nodeType;if(!a||e===3||e===8||e===2)return b;var g,h,i=e!==1||!f.isXMLDoc(a);c=i&&f.propFix[c]||c,h=f.propHooks[c];return d!==b?h&&"set"in h&&(g=h.set(a,d,c))!==b?g:a[c]=d:h&&"get"in h&&(g=h.get(a,c))!==b?g:a[c]},propHooks:{}}),w={get:function(a,c){return a[f.propFix[c]||c]?c.toLowerCase():b},set:function(a,b,c){var d;b===!1?f.removeAttr(a,c):(d=f.propFix[c]||c,d in a&&(a[d]=b),a.setAttribute(c,c.toLowerCase()));return c}},f.attrHooks.value={get:function(a,b){if(v&&f.nodeName(a,"button"))return v.get(a,b);return a.value},set:function(a,b,c){if(v&&f.nodeName(a,"button"))return v.set(a,b,c);a.value=b}},f.support.getSetAttribute||(f.attrFix=f.propFix,v=f.attrHooks.name=f.valHooks.button={get:function(a,c){var d;d=a.getAttributeNode(c);return d&&d.nodeValue!==""?d.nodeValue:b},set:function(a,b,c){var d=a.getAttributeNode(c);if(d){d.nodeValue=b;return b}}},f.each(["width","height"],function(a,b){f.attrHooks[b]=f.extend(f.attrHooks[b],{set:function(a,c){if(c===""){a.setAttribute(b,"auto");return c}}})})),f.support.hrefNormalized||f.each(["href","src","width","height"],function(a,c){f.attrHooks[c]=f.extend(f.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),f.support.style||(f.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=""+b}}),f.support.optSelected||(f.propHooks.selected=f.extend(f.propHooks.selected,{get:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex)}})),f.support.checkOn||f.each(["radio","checkbox"],function(){f.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),f.each(["radio","checkbox"],function(){f.valHooks[this]=f.extend(f.valHooks[this],{set:function(a,b){if(f.isArray(b))return a.checked=f.inArray(f(a).val(),b)>=0}})});var x=Object.prototype.hasOwnProperty,y=/\.(.*)$/,z=/^(?:textarea|input|select)$/i,A=/\./g,B=/ /g,C=/[^\w\s.|`]/g,D=function(a){return a.replace(C,"\\$&")};f.event={add:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){if(d===!1)d=E;else if(!d)return;var g,h;d.handler&&(g=d,d=g.handler),d.guid||(d.guid=f.guid++);var i=f._data(a);if(!i)return;var j=i.events,k=i.handle;j||(i.events=j={}),k||(i.handle=k=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.handle.apply(k.elem,arguments):b}),k.elem=a,c=c.split(" ");var l,m=0,n;while(l=c[m++]){h=g?f.extend({},g):{handler:d,data:e},l.indexOf(".")>-1?(n=l.split("."),l=n.shift(),h.namespace=n.slice(0).sort().join(".")):(n=[],h.namespace=""),h.type=l,h.guid||(h.guid=d.guid);var o=j[l],p=f.event.special[l]||{};if(!o){o=j[l]=[];if(!p.setup||p.setup.call(a,e,n,k)===!1)a.addEventListener?a.addEventListener(l,k,!1):a.attachEvent&&a.attachEvent("on"+l,k)}p.add&&(p.add.call(a,h),h.handler.guid||(h.handler.guid=d.guid)),o.push(h),f.event.global[l]=!0}a=null}},global:{},remove:function(a,c,d,e){if(a.nodeType!==3&&a.nodeType!==8){d===!1&&(d=E);var g,h,i,j,k=0,l,m,n,o,p,q,r,s=f.hasData(a)&&f._data(a),t=s&&s.events;if(!s||!t)return;c&&c.type&&(d=c.handler,c=c.type);if(!c||typeof c=="string"&&c.charAt(0)==="."){c=c||"";for(h in t)f.event.remove(a,h+c);return}c=c.split(" ");while(h=c[k++]){r=h,q=null,l=h.indexOf(".")<0,m=[],l||(m=h.split("."),h=m.shift(),n=new RegExp("(^|\\.)"+f.map(m.slice(0).sort(),D).join("\\.(?:.*\\.)?")+"(\\.|$)")),p=t[h];if(!p)continue;if(!d){for(j=0;j<p.length;j++){q=p[j];if(l||n.test(q.namespace))f.event.remove(a,r,q.handler,j),p.splice(j--,1)}continue}o=f.event.special[h]||{};for(j=e||0;j<p.length;j++){q=p[j];if(d.guid===q.guid){if(l||n.test(q.namespace))e==null&&p.splice(j--,1),o.remove&&o.remove.call(a,q);if(e!=null)break}}if(p.length===0||e!=null&&p.length===1)(!o.teardown||o.teardown.call(a,m)===!1)&&f.removeEvent(a,h,s.handle),g=null,delete t[h]}if(f.isEmptyObject(t)){var u=s.handle;u&&(u.elem=null),delete s.events,delete s.handle,f.isEmptyObject(s)&&f.removeData(a,b,!0)}}},customEvent:{getData:!0,setData:!0,changeData:!0},trigger:function(c,d,e,g){var h=c.type||c,i=[],j;h.indexOf("!")>=0&&(h=h.slice(0,-1),j=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if(!!e&&!f.event.customEvent[h]||!!f.event.global[h]){c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.exclusive=j,c.namespace=i.join("."),c.namespace_re=new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)");if(g||!e)c.preventDefault(),c.stopPropagation();if(!e){f.each(f.cache,function(){var a=f.expando,b=this[a];b&&b.events&&b.events[h]&&f.event.trigger(c,d,b.handle.elem
-)});return}if(e.nodeType===3||e.nodeType===8)return;c.result=b,c.target=e,d=d?f.makeArray(d):[],d.unshift(c);var k=e,l=h.indexOf(":")<0?"on"+h:"";do{var m=f._data(k,"handle");c.currentTarget=k,m&&m.apply(k,d),l&&f.acceptData(k)&&k[l]&&k[l].apply(k,d)===!1&&(c.result=!1,c.preventDefault()),k=k.parentNode||k.ownerDocument||k===c.target.ownerDocument&&a}while(k&&!c.isPropagationStopped());if(!c.isDefaultPrevented()){var n,o=f.event.special[h]||{};if((!o._default||o._default.call(e.ownerDocument,c)===!1)&&(h!=="click"||!f.nodeName(e,"a"))&&f.acceptData(e)){try{l&&e[h]&&(n=e[l],n&&(e[l]=null),f.event.triggered=h,e[h]())}catch(p){}n&&(e[l]=n),f.event.triggered=b}}return c.result}},handle:function(c){c=f.event.fix(c||a.event);var d=((f._data(this,"events")||{})[c.type]||[]).slice(0),e=!c.exclusive&&!c.namespace,g=Array.prototype.slice.call(arguments,0);g[0]=c,c.currentTarget=this;for(var h=0,i=d.length;h<i;h++){var j=d[h];if(e||c.namespace_re.test(j.namespace)){c.handler=j.handler,c.data=j.data,c.handleObj=j;var k=j.handler.apply(this,g);k!==b&&(c.result=k,k===!1&&(c.preventDefault(),c.stopPropagation()));if(c.isImmediatePropagationStopped())break}}return c.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(a){if(a[f.expando])return a;var d=a;a=f.Event(d);for(var e=this.props.length,g;e;)g=this.props[--e],a[g]=d[g];a.target||(a.target=a.srcElement||c),a.target.nodeType===3&&(a.target=a.target.parentNode),!a.relatedTarget&&a.fromElement&&(a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement);if(a.pageX==null&&a.clientX!=null){var h=a.target.ownerDocument||c,i=h.documentElement,j=h.body;a.pageX=a.clientX+(i&&i.scrollLeft||j&&j.scrollLeft||0)-(i&&i.clientLeft||j&&j.clientLeft||0),a.pageY=a.clientY+(i&&i.scrollTop||j&&j.scrollTop||0)-(i&&i.clientTop||j&&j.clientTop||0)}a.which==null&&(a.charCode!=null||a.keyCode!=null)&&(a.which=a.charCode!=null?a.charCode:a.keyCode),!a.metaKey&&a.ctrlKey&&(a.metaKey=a.ctrlKey),!a.which&&a.button!==b&&(a.which=a.button&1?1:a.button&2?3:a.button&4?2:0);return a},guid:1e8,proxy:f.proxy,special:{ready:{setup:f.bindReady,teardown:f.noop},live:{add:function(a){f.event.add(this,O(a.origType,a.selector),f.extend({},a,{handler:N,guid:a.handler.guid}))},remove:function(a){f.event.remove(this,O(a.origType,a.selector),a)}},beforeunload:{setup:function(a,b,c){f.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===b&&(this.onbeforeunload=null)}}}},f.removeEvent=c.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){a.detachEvent&&a.detachEvent("on"+b,c)},f.Event=function(a,b){if(!this.preventDefault)return new f.Event(a,b);a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||a.returnValue===!1||a.getPreventDefault&&a.getPreventDefault()?F:E):this.type=a,b&&f.extend(this,b),this.timeStamp=f.now(),this[f.expando]=!0},f.Event.prototype={preventDefault:function(){this.isDefaultPrevented=F;var a=this.originalEvent;!a||(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){this.isPropagationStopped=F;var a=this.originalEvent;!a||(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=F,this.stopPropagation()},isDefaultPrevented:E,isPropagationStopped:E,isImmediatePropagationStopped:E};var G=function(a){var b=a.relatedTarget;a.type=a.data;try{if(b&&b!==c&&!b.parentNode)return;while(b&&b!==this)b=b.parentNode;b!==this&&f.event.handle.apply(this,arguments)}catch(d){}},H=function(a){a.type=a.data,f.event.handle.apply(this,arguments)};f.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){f.event.special[a]={setup:function(c){f.event.add(this,b,c&&c.selector?H:G,a)},teardown:function(a){f.event.remove(this,b,a&&a.selector?H:G)}}}),f.support.submitBubbles||(f.event.special.submit={setup:function(a,b){if(!f.nodeName(this,"form"))f.event.add(this,"click.specialSubmit",function(a){var b=a.target,c=b.type;(c==="submit"||c==="image")&&f(b).closest("form").length&&L("submit",this,arguments)}),f.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,c=b.type;(c==="text"||c==="password")&&f(b).closest("form").length&&a.keyCode===13&&L("submit",this,arguments)});else return!1},teardown:function(a){f.event.remove(this,".specialSubmit")}});if(!f.support.changeBubbles){var I,J=function(a){var b=a.type,c=a.value;b==="radio"||b==="checkbox"?c=a.checked:b==="select-multiple"?c=a.selectedIndex>-1?f.map(a.options,function(a){return a.selected}).join("-"):"":f.nodeName(a,"select")&&(c=a.selectedIndex);return c},K=function(c){var d=c.target,e,g;if(!!z.test(d.nodeName)&&!d.readOnly){e=f._data(d,"_change_data"),g=J(d),(c.type!=="focusout"||d.type!=="radio")&&f._data(d,"_change_data",g);if(e===b||g===e)return;if(e!=null||g)c.type="change",c.liveFired=b,f.event.trigger(c,arguments[1],d)}};f.event.special.change={filters:{focusout:K,beforedeactivate:K,click:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(c==="radio"||c==="checkbox"||f.nodeName(b,"select"))&&K.call(this,a)},keydown:function(a){var b=a.target,c=f.nodeName(b,"input")?b.type:"";(a.keyCode===13&&!f.nodeName(b,"textarea")||a.keyCode===32&&(c==="checkbox"||c==="radio")||c==="select-multiple")&&K.call(this,a)},beforeactivate:function(a){var b=a.target;f._data(b,"_change_data",J(b))}},setup:function(a,b){if(this.type==="file")return!1;for(var c in I)f.event.add(this,c+".specialChange",I[c]);return z.test(this.nodeName)},teardown:function(a){f.event.remove(this,".specialChange");return z.test(this.nodeName)}},I=f.event.special.change.filters,I.focus=I.beforeactivate}f.support.focusinBubbles||f.each({focus:"focusin",blur:"focusout"},function(a,b){function e(a){var c=f.event.fix(a);c.type=b,c.originalEvent={},f.event.trigger(c,null,c.target),c.isDefaultPrevented()&&a.preventDefault()}var d=0;f.event.special[b]={setup:function(){d++===0&&c.addEventListener(a,e,!0)},teardown:function(){--d===0&&c.removeEventListener(a,e,!0)}}}),f.each(["bind","one"],function(a,c){f.fn[c]=function(a,d,e){var g;if(typeof a=="object"){for(var h in a)this[c](h,d,a[h],e);return this}if(arguments.length===2||d===!1)e=d,d=b;c==="one"?(g=function(a){f(this).unbind(a,g);return e.apply(this,arguments)},g.guid=e.guid||f.guid++):g=e;if(a==="unload"&&c!=="one")this.one(a,d,e);else for(var i=0,j=this.length;i<j;i++)f.event.add(this[i],a,g,d);return this}}),f.fn.extend({unbind:function(a,b){if(typeof a=="object"&&!a.preventDefault)for(var c in a)this.unbind(c,a[c]);else for(var d=0,e=this.length;d<e;d++)f.event.remove(this[d],a,b);return this},delegate:function(a,b,c,d){return this.live(b,c,d,a)},undelegate:function(a,b,c){return arguments.length===0?this.unbind("live"):this.die(b,null,c,a)},trigger:function(a,b){return this.each(function(){f.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0])return f.event.trigger(a,b,this[0],!0)},toggle:function(a){var b=arguments,c=a.guid||f.guid++,d=0,e=function(c){var e=(f.data(this,"lastToggle"+a.guid)||0)%d;f.data(this,"lastToggle"+a.guid,e+1),c.preventDefault();return b[e].apply(this,arguments)||!1};e.guid=c;while(d<b.length)b[d++].guid=c;return this.click(e)},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var M={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};f.each(["live","die"],function(a,c){f.fn[c]=function(a,d,e,g){var h,i=0,j,k,l,m=g||this.selector,n=g?this:f(this.context);if(typeof a=="object"&&!a.preventDefault){for(var o in a)n[c](o,d,a[o],m);return this}if(c==="die"&&!a&&g&&g.charAt(0)==="."){n.unbind(g);return this}if(d===!1||f.isFunction(d))e=d||E,d=b;a=(a||"").split(" ");while((h=a[i++])!=null){j=y.exec(h),k="",j&&(k=j[0],h=h.replace(y,""));if(h==="hover"){a.push("mouseenter"+k,"mouseleave"+k);continue}l=h,M[h]?(a.push(M[h]+k),h=h+k):h=(M[h]||h)+k;if(c==="live")for(var p=0,q=n.length;p<q;p++)f.event.add(n[p],"live."+O(h,m),{data:d,selector:m,handler:e,origType:h,origHandler:e,preType:l});else n.unbind("live."+O(h,m),e)}return this}}),f.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),function(a,b){f.fn[b]=function(a,c){c==null&&(c=a,a=null);return arguments.length>0?this.bind(b,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0)}),function(){function u(a,b,c,d,e,f){for(var g=0,h=d.length;g<h;g++){var i=d[g];if(i){var j=!1;i=i[a];while(i){if(i.sizcache===c){j=d[i.sizset];break}if(i.nodeType===1){f||(i.sizcache=c,i.sizset=g);if(typeof b!="string"){if(i===b){j=!0;break}}else if(k.filter(b,[i]).length>0){j=i;break}}i=i[a]}d[g]=j}}}function t(a,b,c,d,e,f){for(var g=0,h=d.length;g<h;g++){var i=d[g];if(i){var j=!1;i=i[a];while(i){if(i.sizcache===c){j=d[i.sizset];break}i.nodeType===1&&!f&&(i.sizcache=c,i.sizset=g);if(i.nodeName.toLowerCase()===b){j=i;break}i=i[a]}d[g]=j}}}var a=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d=0,e=Object.prototype.toString,g=!1,h=!0,i=/\\/g,j=/\W/;[0,0].sort(function(){h=!1;return 0});var k=function(b,d,f,g){f=f||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return f;var i,j,n,o,q,r,s,t,u=!0,w=k.isXML(d),x=[],y=b;do{a.exec(""),i=a.exec(y);if(i){y=i[3],x.push(i[1]);if(i[2]){o=i[3];break}}}while(i);if(x.length>1&&m.exec(b))if(x.length===2&&l.relative[x[0]])j=v(x[0]+x[1],d);else{j=l.relative[x[0]]?[d]:k(x.shift(),d);while(x.length)b=x.shift(),l.relative[b]&&(b+=x.shift()),j=v(b,j)}else{!g&&x.length>1&&d.nodeType===9&&!w&&l.match.ID.test(x[0])&&!l.match.ID.test(x[x.length-1])&&(q=k.find(x.shift(),d,w),d=q.expr?k.filter(q.expr,q.set)[0]:q.set[0]);if(d){q=g?{expr:x.pop(),set:p(g)}:k.find(x.pop(),x.length===1&&(x[0]==="~"||x[0]==="+")&&d.parentNode?d.parentNode:d,w),j=q.expr?k.filter(q.expr,q.set):q.set,x.length>0?n=p(j):u=!1;while(x.length)r=x.pop(),s=r,l.relative[r]?s=x.pop():r="",s==null&&(s=d),l.relative[r](n,s,w)}else n=x=[]}n||(n=j),n||k.error(r||b);if(e.call(n)==="[object Array]")if(!u)f.push.apply(f,n);else if(d&&d.nodeType===1)for(t=0;n[t]!=null;t++)n[t]&&(n[t]===!0||n[t].nodeType===1&&k.contains(d,n[t]))&&f.push(j[t]);else for(t=0;n[t]!=null;t++)n[t]&&n[t].nodeType===1&&f.push(j[t]);else p(n,f);o&&(k(o,h,f,g),k.uniqueSort(f));return f};k.uniqueSort=function(a){if(r){g=h,a.sort(r);if(g)for(var b=1;b<a.length;b++)a[b]===a[b-1]&&a.splice(b--,1)}return a},k.matches=function(a,b){return k(a,null,null,b)},k.matchesSelector=function(a,b){return k(b,null,null,[a]).length>0},k.find=function(a,b,c){var d;if(!a)return[];for(var e=0,f=l.order.length;e<f;e++){var g,h=l.order[e];if(g=l.leftMatch[h].exec(a)){var j=g[1];g.splice(1,1);if(j.substr(j.length-1)!=="\\"){g[1]=(g[1]||"").replace(i,""),d=l.find[h](g,b,c);if(d!=null){a=a.replace(l.match[h],"");break}}}}d||(d=typeof b.getElementsByTagName!="undefined"?b.getElementsByTagName("*"):[]);return{set:d,expr:a}},k.filter=function(a,c,d,e){var f,g,h=a,i=[],j=c,m=c&&c[0]&&k.isXML(c[0]);while(a&&c.length){for(var n in l.filter)if((f=l.leftMatch[n].exec(a))!=null&&f[2]){var o,p,q=l.filter[n],r=f[1];g=!1,f.splice(1,1);if(r.substr(r.length-1)==="\\")continue;j===i&&(i=[]);if(l.preFilter[n]){f=l.preFilter[n](f,j,d,i,e,m);if(!f)g=o=!0;else if(f===!0)continue}if(f)for(var s=0;(p=j[s])!=null;s++)if(p){o=q(p,f,s,j);var t=e^!!o;d&&o!=null?t?g=!0:j[s]=!1:t&&(i.push(p),g=!0)}if(o!==b){d||(j=i),a=a.replace(l.match[n],"");if(!g)return[];break}}if(a===h)if(g==null)k.error(a);else break;h=a}return j},k.error=function(a){throw"Syntax error, unrecognized expression: "+a};var l=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(a){return a.getAttribute("href")},type:function(a){return a.getAttribute("type")}},relative:{"+":function(a,b){var c=typeof b=="string",d=c&&!j.test(b),e=c&&!d;d&&(b=b.toLowerCase());for(var f=0,g=a.length,h;f<g;f++)if(h=a[f]){while((h=h.previousSibling)&&h.nodeType!==1);a[f]=e||h&&h.nodeName.toLowerCase()===b?h||!1:h===b}e&&k.filter(b,a,!0)},">":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!j.test(b)){b=b.toLowerCase();for(;e<f;e++){c=a[e];if(c){var g=c.parentNode;a[e]=g.nodeName.toLowerCase()===b?g:!1}}}else{for(;e<f;e++)c=a[e],c&&(a[e]=d?c.parentNode:c.parentNode===b);d&&k.filter(b,a,!0)}},"":function(a,b,c){var e,f=d++,g=u;typeof b=="string"&&!j.test(b)&&(b=b.toLowerCase(),e=b,g=t),g("parentNode",b,f,a,e,c)},"~":function(a,b,c){var e,f=d++,g=u;typeof b=="string"&&!j.test(b)&&(b=b.toLowerCase(),e=b,g=t),g("previousSibling",b,f,a,e,c)}},find:{ID:function(a,b,c){if(typeof b.getElementById!="undefined"&&!c){var d=b.getElementById(a[1]);return d&&d.parentNode?[d]:[]}},NAME:function(a,b){if(typeof b.getElementsByName!="undefined"){var c=[],d=b.getElementsByName(a[1]);for(var e=0,f=d.length;e<f;e++)d[e].getAttribute("name")===a[1]&&c.push(d[e]);return c.length===0?null:c}},TAG:function(a,b){if(typeof b.getElementsByTagName!="undefined")return b.getElementsByTagName(a[1])}},preFilter:{CLASS:function(a,b,c,d,e,f){a=" "+a[1].replace(i,"")+" ";if(f)return a;for(var g=0,h;(h=b[g])!=null;g++)h&&(e^(h.className&&(" "+h.className+" ").replace(/[\t\n\r]/g," ").indexOf(a)>=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(i,"")},TAG:function(a,b){return a[1].replace(i,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||k.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&k.error(a[0]);a[0]=d++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(i,"");!f&&l.attrMap[g]&&(a[1]=l.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(i,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=k(b[3],null,null,c);else{var g=k.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(l.match.POS.test(b[0])||l.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!k(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return b<c[3]-0},gt:function(a,b,c){return b>c[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=l.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||k.getText([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h<i;h++)if(g[h]===a)return!1;return!0}k.error(e)},CHILD:function(a,b){var c=b[1],d=a;switch(c){case"only":case"first":while(d=d.previousSibling)if(d.nodeType===1)return!1;if(c==="first")return!0;d=a;case"last":while(d=d.nextSibling)if(d.nodeType===1)return!1;return!0;case"nth":var e=b[2],f=b[3];if(e===1&&f===0)return!0;var g=b[0],h=a.parentNode;if(h&&(h.sizcache!==g||!a.nodeIndex)){var i=0;for(d=h.firstChild;d;d=d.nextSibling)d.nodeType===1&&(d.nodeIndex=++i);h.sizcache=g}var j=a.nodeIndex-f;return e===0?j===0:j%e===0&&j/e>=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=l.attrHandle[c]?l.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=l.setFilters[e];if(f)return f(a,c,b,d)}}},m=l.match.POS,n=function(a,b){return"\\"+(b-0+1)};for(var o in l.match)l.match[o]=new RegExp(l.match[o].source+/(?![^\[]*\])(?![^\(]*\))/.source),l.leftMatch[o]=new RegExp(/(^(?:.|\r|\n)*?)/.source+l.match[o].source.replace(/\\(\d+)/g,n));var p=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(q){p=function(a,b){var c=0,d=b||[];if(e.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var f=a.length;c<f;c++)d.push(a[c]);else for(;a[c];c++)d.push(a[c]);return d}}var r,s;c.documentElement.compareDocumentPosition?r=function(a,b){if(a===b){g=!0;return 0}if(!a.compareDocumentPosition||!b.compareDocumentPosition)return a.compareDocumentPosition?-1:1;return a.compareDocumentPosition(b)&4?-1:1}:(r=function(a,b){if(a===b){g=!0;return 0}if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],f=[],h=a.parentNode,i=b.parentNode,j=h;if(h===i)return s(a,b);if(!h)return-1;if(!i)return 1;while(j)e.unshift(j),j=j.parentNode;j=i;while(j)f.unshift(j),j=j.parentNode;c=e.length,d=f.length;for(var k=0;k<c&&k<d;k++)if(e[k]!==f[k])return s(e[k],f[k]);return k===c?s(a,f[k],-1):s(e[k],b,1)},s=function(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}),k.getText=function(a){var b="",c;for(var d=0;a[d];d++)c=a[d],c.nodeType===3||c.nodeType===4?b+=c.nodeValue:c.nodeType!==8&&(b+=k.getText(c.childNodes));return b},function(){var a=c.createElement("div"),d="script"+(new Date).getTime(),e=c.documentElement;a.innerHTML="<a name='"+d+"'/>",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(l.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},l.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(l.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(l.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=k,b=c.createElement("div"),d="__sizzle__";b.innerHTML="<p class='TEST'></p>";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){k=function(b,e,f,g){e=e||c;if(!g&&!k.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return p(e.getElementsByTagName(b),f);if(h[2]&&l.find.CLASS&&e.getElementsByClassName)return p(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return p([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return p([],f);if(i.id===h[3])return p([i],f)}try{return p(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var m=e,n=e.getAttribute("id"),o=n||d,q=e.parentNode,r=/^\s*[+~]/.test(b);n?o=o.replace(/'/g,"\\$&"):e.setAttribute("id",o),r&&q&&(e=e.parentNode);try{if(!r||q)return p(e.querySelectorAll("[id='"+o+"'] "+b),f)}catch(s){}finally{n||m.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)k[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}k.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!k.isXML(a))try{if(e||!l.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return k(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="<div class='test e'></div><div class='test'></div>";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;l.order.splice(1,0,"CLASS"),l.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?k.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?k.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:k.contains=function(){return!1},k.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var v=function(a,b){var c,d=[],e="",f=b.nodeType?[b]:b;while(c=l.match.PSEUDO.exec(a))e+=c[0],a=a.replace(l.match.PSEUDO,"");a=l.relative[a]?a+"*":a;for(var g=0,h=f.length;g<h;g++)k(a,f[g],d);return k.filter(e,d)};f.find=k,f.expr=k.selectors,f.expr[":"]=f.expr.filters,f.unique=k.uniqueSort,f.text=k.getText,f.isXMLDoc=k.isXML,f.contains=k.contains}();var P=/Until$/,Q=/^(?:parents|prevUntil|prevAll)/,R=/,/,S=/^.[^:#\[\.,]*$/,T=Array.prototype.slice,U=f.expr.match.POS,V={children:!0,contents:!0,next:!0,prev:!0};f.fn.extend({find:function(a){var b=this,c,d;if(typeof a!="string")return f(a).filter(function(){for(c=0,d=b.length;c<d;c++)if(f.contains(b[c],this))return!0});var e=this.pushStack("","find",a),g,h,i;for(c=0,d=this.length;c<d;c++){g=e.length,f.find(a,this[c],e);if(c>0)for(h=g;h<e.length;h++)for(i=0;i<g;i++)if(e[i]===e[h]){e.splice(h--,1);break}}return e},has:function(a){var b=f(a);return this.filter(function(){for(var a=0,c=b.length;a<c;a++)if(f.contains(this,b[a]))return!0})},not:function(a){return this.pushStack(X(this,a,!1),"not",a)},filter:function(a){return this.pushStack(X(this,a,!0),"filter",a)},is:function(a){return!!a&&(typeof a=="string"?f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h,i,j={},k=1;if(g&&a.length){for(d=0,e=a.length;d<e;d++)i=a[d],j[i]||(j[i]=U.test(i)?f(i,b||this.context):i);while(g&&g.ownerDocument&&g!==b){for(i in j)h=j[i],(h.jquery?h.index(g)>-1:f(g).is(h))&&c.push({selector:i,elem:g,level:k});g=g.parentNode,k++}}return c}var l=U.test(a)||typeof a!="string"?f(a,b||this.context):0;for(d=0,e=this.length;d<e;d++){g=this[d];while(g){if(l?l.index(g)>-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a||typeof a=="string")return f.inArray(this[0],a?f(a):this.parent().children());return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(W(c[0])||W(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c),g=T.call(arguments);P.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!V[a]?f.unique(e):e,(this.length>1||R.test(d))&&Q.test(a)&&(e=e.reverse());return this.pushStack(e,a,g.join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var Y=/ jQuery\d+="(?:\d+|null)"/g,Z=/^\s+/,$=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,_=/<([\w:]+)/,ba=/<tbody/i,bb=/<|&#?\w+;/,bc=/<(?:script|object|embed|option|style)/i,bd=/checked\s*(?:[^=]|=\s*.checked.)/i,be=/\/(java|ecma)script/i,bf=/^\s*<!(?:\[CDATA\[|\-\-)/,bg={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div<div>","</div>"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){f(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f(arguments[0]).toArray());return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(Y,""):null;if(typeof a=="string"&&!bc.test(a)&&(f.support.leadingWhitespace||!Z.test(a))&&!bg[(_.exec(a)||["",""])[1].toLowerCase()]){a=a.replace($,"<$1></$2>");try{for(var c=0,d=this.length;c<d;c++)this[c].nodeType===1&&(f.cleanData(this[c].getElementsByTagName("*")),this[c].innerHTML=a)}catch(e){this.empty().append(a)}}else f.isFunction(a)?this.each(function(b){var c=f(this);c.html(a.call(this,b,c.html()))}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(f.isFunction(a))return this.each(function(b){var c=f(this),d=c.html();c.replaceWith(a.call(this,b,d))});typeof a!="string"&&(a=f(a).detach());return this.each(function(){var b=this.nextSibling,c=this.parentNode;f(this).remove(),b?f(b).before(a):f(c).append(a)})}return this.length?this.pushStack(f(f.isFunction(a)?a():a),"replaceWith",a):this},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){var e,g,h,i,j=a[0],k=[];if(!f.support.checkClone&&arguments.length===3&&typeof j=="string"&&bd.test(j))return this.each(function(){f(this).domManip(a,c,d,!0)});if(f.isFunction(j))return this.each(function(e){var g=f(this);a[0]=j.call(this,e,c?g.html():b),g.domManip(a,c,d)});if(this[0]){i=j&&j.parentNode,f.support.parentNode&&i&&i.nodeType===11&&i.childNodes.length===this.length?e={fragment:i}:e=f.buildFragment(a,this,k),h=e.fragment,h.childNodes.length===1?g=h=h.firstChild:g=h.firstChild;if(g){c=c&&f.nodeName(g,"tr");for(var l=0,m=this.length,n=m-1;l<m;l++)d.call(c?bh(this[l],g):this[l],e.cacheable||m>1&&l<n?f.clone(h,!0,!0):h)}k.length&&f.each(k,bn)}return this}}),f.buildFragment=function(a,b,d){var e,g,h,i=b&&b[0]?b[0].ownerDocument||b[0]:c;a.length===1&&typeof a[0]=="string"&&a[0].length<512&&i===c&&a[0].charAt(0)==="<"&&!bc.test(a[0])&&(f.support.checkClone||!bd.test(a[0]))&&(g=!0,h=f.fragments[a[0]],h&&h!==1&&(e=h)),e||(e=i.createDocumentFragment(),f.clean(a,i,e,d)),g&&(f.fragments[a[0]]=h?e:1);return{fragment:e,cacheable:g}},f.fragments={},f.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){f.fn[a]=function(c){var d=[],e=f(c),g=this.length===1&&this[0].parentNode;if(g&&g.nodeType===11&&g.childNodes.length===1&&e.length===1){e[b](this[0]);return this}for(var h=0,i=e.length;h<i;h++){var j=(h>0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d=a.cloneNode(!0),e,g,h;if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bj(a,d),e=bk(a),g=bk(d);for(h=0;e[h];++h)bj(e[h],g[h])}if(b){bi(a,d);if(c){e=bk(a),g=bk(d);for(h=0;e[h];++h)bi(e[h],g[h])}}return d},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||
-b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!bb.test(k))k=b.createTextNode(k);else{k=k.replace($,"<$1></$2>");var l=(_.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=ba.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]==="<table>"&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&Z.test(k)&&o.insertBefore(b.createTextNode(Z.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i<r;i++)bm(k[i]);else bm(k);k.nodeType?h.push(k):h=f.merge(h,k)}if(d){g=function(a){return!a.type||be.test(a.type)};for(j=0;h[j];j++)if(e&&f.nodeName(h[j],"script")&&(!h[j].type||h[j].type.toLowerCase()==="text/javascript"))e.push(h[j].parentNode?h[j].parentNode.removeChild(h[j]):h[j]);else{if(h[j].nodeType===1){var s=f.grep(h[j].getElementsByTagName("script"),g);h.splice.apply(h,[j+1,0].concat(s))}d.appendChild(h[j])}}return h},cleanData:function(a){var b,c,d=f.cache,e=f.expando,g=f.event.special,h=f.support.deleteExpando;for(var i=0,j;(j=a[i])!=null;i++){if(j.nodeName&&f.noData[j.nodeName.toLowerCase()])continue;c=j[f.expando];if(c){b=d[c]&&d[c][e];if(b&&b.events){for(var k in b.events)g[k]?f.event.remove(j,k):f.removeEvent(j,k,b.handle);b.handle&&(b.handle.elem=null)}h?delete j[f.expando]:j.removeAttribute&&j.removeAttribute(f.expando),delete d[c]}}}});var bo=/alpha\([^)]*\)/i,bp=/opacity=([^)]*)/,bq=/-([a-z])/ig,br=/([A-Z]|^ms)/g,bs=/^-?\d+(?:px)?$/i,bt=/^-?\d/,bu=/^[+\-]=/,bv=/[^+\-\.\de]+/g,bw={position:"absolute",visibility:"hidden",display:"block"},bx=["Left","Right"],by=["Top","Bottom"],bz,bA,bB,bC=function(a,b){return b.toUpperCase()};f.fn.css=function(a,c){if(arguments.length===2&&c===b)return this;return f.access(this,a,c,!0,function(a,c,d){return d!==b?f.style(a,c,d):f.css(a,c)})},f.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bz(a,"opacity","opacity");return c===""?"1":c}return a.style.opacity}}},cssNumber:{zIndex:!0,fontWeight:!0,opacity:!0,zoom:!0,lineHeight:!0,widows:!0,orphans:!0},cssProps:{"float":f.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!!a&&a.nodeType!==3&&a.nodeType!==8&&!!a.style){var g,h,i=f.camelCase(c),j=a.style,k=f.cssHooks[i];c=f.cssProps[i]||i;if(d===b){if(k&&"get"in k&&(g=k.get(a,!1,e))!==b)return g;return j[c]}h=typeof d;if(h==="number"&&isNaN(d)||d==null)return;h==="string"&&bu.test(d)&&(d=+d.replace(bv,"")+parseFloat(f.css(a,c))),h==="number"&&!f.cssNumber[i]&&(d+="px");if(!k||!("set"in k)||(d=k.set(a,d))!==b)try{j[c]=d}catch(l){}}},css:function(a,c,d){var e,g;c=f.camelCase(c),g=f.cssHooks[c],c=f.cssProps[c]||c,c==="cssFloat"&&(c="float");if(g&&"get"in g&&(e=g.get(a,!0,d))!==b)return e;if(bz)return bz(a,c)},swap:function(a,b,c){var d={};for(var e in b)d[e]=a.style[e],a.style[e]=b[e];c.call(a);for(e in b)a.style[e]=d[e]},camelCase:function(a){return a.replace(bq,bC)}}),f.curCSS=f.css,f.each(["height","width"],function(a,b){f.cssHooks[b]={get:function(a,c,d){var e;if(c){a.offsetWidth!==0?e=bD(a,b,d):f.swap(a,bw,function(){e=bD(a,b,d)});if(e<=0){e=bz(a,b,b),e==="0px"&&bB&&(e=bB(a,b,b));if(e!=null)return e===""||e==="auto"?"0px":e}if(e<0||e==null){e=a.style[b];return e===""||e==="auto"?"0px":e}return typeof e=="string"?e:e+"px"}},set:function(a,b){if(!bs.test(b))return b;b=parseFloat(b);if(b>=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return bp.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle;c.zoom=1;var e=f.isNaN(b)?"":"alpha(opacity="+b*100+")",g=d&&d.filter||c.filter||"";c.filter=bo.test(g)?g.replace(bo,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,c){var d,e,g;c=c.replace(br,"-$1").toLowerCase();if(!(e=a.ownerDocument.defaultView))return b;if(g=e.getComputedStyle(a,null))d=g.getPropertyValue(c),d===""&&!f.contains(a.ownerDocument.documentElement,a)&&(d=f.style(a,c));return d}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d=a.currentStyle&&a.currentStyle[b],e=a.runtimeStyle&&a.runtimeStyle[b],f=a.style;!bs.test(d)&&bt.test(d)&&(c=f.left,e&&(a.runtimeStyle.left=a.currentStyle.left),f.left=b==="fontSize"?"1em":d||0,d=f.pixelLeft+"px",f.left=c,e&&(a.runtimeStyle.left=e));return d===""?"auto":d}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bE=/%20/g,bF=/\[\]$/,bG=/\r?\n/g,bH=/#.*$/,bI=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bJ=/^(?:color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bK=/^(?:about|app|app\-storage|.+\-extension|file|widget):$/,bL=/^(?:GET|HEAD)$/,bM=/^\/\//,bN=/\?/,bO=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,bP=/^(?:select|textarea)/i,bQ=/\s+/,bR=/([?&])_=[^&]*/,bS=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bT=f.fn.load,bU={},bV={},bW,bX;try{bW=e.href}catch(bY){bW=c.createElement("a"),bW.href="",bW=bW.href}bX=bS.exec(bW.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bT)return bT.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("<div>").append(c.replace(bO,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bP.test(this.nodeName)||bJ.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bG,"\r\n")}}):{name:b.name,value:c.replace(bG,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.bind(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?f.extend(!0,a,f.ajaxSettings,b):(b=a,a=f.extend(!0,f.ajaxSettings,b));for(var c in{context:1,url:1})c in b?a[c]=b[c]:c in f.ajaxSettings&&(a[c]=f.ajaxSettings[c]);return a},ajaxSettings:{url:bW,isLocal:bK.test(bX[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":"*/*"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML}},ajaxPrefilter:bZ(bU),ajaxTransport:bZ(bV),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a?4:0;var o,r,u,w=l?ca(d,v,l):b,x,y;if(a>=200&&a<300||a===304){if(d.ifModified){if(x=v.getResponseHeader("Last-Modified"))f.lastModified[k]=x;if(y=v.getResponseHeader("Etag"))f.etag[k]=y}if(a===304)c="notmodified",o=!0;else try{r=cb(d,w),c="success",o=!0}catch(z){c="parsererror",u=z}}else{u=c;if(!c||a)c="error",a<0&&(a=0)}v.status=a,v.statusText=c,o?h.resolveWith(e,[r,c,v]):h.rejectWith(e,[v,c,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.resolveWith(e,[v,c]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f._Deferred(),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bI.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.done,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bH,"").replace(bM,bX[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bQ),d.crossDomain==null&&(r=bS.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bX[1]&&r[2]==bX[2]&&(r[3]||(r[1]==="http:"?80:443))==(bX[3]||(bX[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bU,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bL.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bN.test(d.url)?"&":"?")+d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bR,"$1_="+x);d.url=y+(y===d.url?(bN.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", */*; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bV,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){status<2?w(-1,z):f.error(z)}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)b_(g,a[g],c,e);return d.join("&").replace(bE,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cc=f.now(),cd=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cc++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(cd.test(b.url)||e&&cd.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(cd,l),b.url===j&&(e&&(k=k.replace(cd,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var ce=a.ActiveXObject?function(){for(var a in cg)cg[a](0,1)}:!1,cf=0,cg;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ch()||ci()}:ch,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,ce&&delete cg[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cf,ce&&(cg||(cg={},f(a).unload(ce)),cg[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var cj={},ck,cl,cm=/^(?:toggle|show|hide)$/,cn=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,co,cp=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cq,cr=a.webkitRequestAnimationFrame||a.mozRequestAnimationFrame||a.oRequestAnimationFrame;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g<h;g++)d=this[g],d.style&&(e=d.style.display,!f._data(d,"olddisplay")&&e==="none"&&(e=d.style.display=""),e===""&&f.css(d,"display")==="none"&&f._data(d,"olddisplay",cv(d.nodeName)));for(g=0;g<h;g++){d=this[g];if(d.style){e=d.style.display;if(e===""||e==="none")d.style.display=f._data(d,"olddisplay")||""}}return this},hide:function(a,b,c){if(a||a===0)return this.animate(cu("hide",3),a,b,c);for(var d=0,e=this.length;d<e;d++)if(this[d].style){var g=f.css(this[d],"display");g!=="none"&&!f._data(this[d],"olddisplay")&&f._data(this[d],"olddisplay",g)}for(d=0;d<e;d++)this[d].style&&(this[d].style.display="none");return this},_toggle:f.fn.toggle,toggle:function(a,b,c){var d=typeof a=="boolean";f.isFunction(a)&&f.isFunction(b)?this._toggle.apply(this,arguments):a==null||d?this.each(function(){var b=d?a:f(this).is(":hidden");f(this)[b?"show":"hide"]()}):this.animate(cu("toggle",3),a,b,c);return this},fadeTo:function(a,b,c,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=f.speed(b,c,d);if(f.isEmptyObject(a))return this.each(e.complete,[!1]);a=f.extend({},a);return this[e.queue===!1?"each":"queue"](function(){e.queue===!1&&f._mark(this);var b=f.extend({},e),c=this.nodeType===1,d=c&&f(this).is(":hidden"),g,h,i,j,k,l,m,n,o;b.animatedProperties={};for(i in a){g=f.camelCase(i),i!==g&&(a[g]=a[i],delete a[i]),h=a[g],f.isArray(h)?(b.animatedProperties[g]=h[1],h=a[g]=h[0]):b.animatedProperties[g]=b.specialEasing&&b.specialEasing[g]||b.easing||"swing";if(h==="hide"&&d||h==="show"&&!d)return b.complete.call(this);c&&(g==="height"||g==="width")&&(b.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY],f.css(this,"display")==="inline"&&f.css(this,"float")==="none"&&(f.support.inlineBlockNeedsLayout?(j=cv(this.nodeName),j==="inline"?this.style.display="inline-block":(this.style.display="inline",this.style.zoom=1)):this.style.display="inline-block"))}b.overflow!=null&&(this.style.overflow="hidden");for(i in a)k=new f.fx(this,b,i),h=a[i],cm.test(h)?k[h==="toggle"?d?"show":"hide":h]():(l=cn.exec(h),m=k.cur(),l?(n=parseFloat(l[2]),o=l[3]||(f.cssNumber[i]?"":"px"),o!=="px"&&(f.style(this,i,(n||1)+o),m=(n||1)/k.cur()*m,f.style(this,i,m+o)),l[1]&&(n=(l[1]==="-="?-1:1)*n+m),k.custom(m,n,o)):k.custom(m,h,""));return!0})},stop:function(a,b){a&&this.queue([]),this.each(function(){var a=f.timers,c=a.length;b||f._unmark(!0,this);while(c--)a[c].elem===this&&(b&&a[c](!0),a.splice(c,1))}),b||this.dequeue();return this}}),f.each({slideDown:cu("show",1),slideUp:cu("hide",1),slideToggle:cu("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){f.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),f.extend({speed:function(a,b,c){var d=a&&typeof a=="object"?f.extend({},a):{complete:c||!c&&b||f.isFunction(a)&&a,duration:a,easing:c&&b||b&&!f.isFunction(b)&&b};d.duration=f.fx.off?0:typeof d.duration=="number"?d.duration:d.duration in f.fx.speeds?f.fx.speeds[d.duration]:f.fx.speeds._default,d.old=d.complete,d.complete=function(a){d.queue!==!1?f.dequeue(this):a!==!1&&f._unmark(this),f.isFunction(d.old)&&d.old.call(this)};return d},easing:{linear:function(a,b,c,d){return c+d*a},swing:function(a,b,c,d){return(-Math.cos(a*Math.PI)/2+.5)*d+c}},timers:[],fx:function(a,b,c){this.options=b,this.elem=a,this.prop=c,b.orig=b.orig||{}}}),f.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this),(f.fx.step[this.prop]||f.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a,b=f.css(this.elem,this.prop);return isNaN(a=parseFloat(b))?!b||b==="auto"?0:b:a},custom:function(a,b,c){function h(a){return d.step(a)}var d=this,e=f.fx,g;this.startTime=cq||cs(),this.start=a,this.end=b,this.unit=c||this.unit||(f.cssNumber[this.prop]?"":"px"),this.now=this.start,this.pos=this.state=0,h.elem=this.elem,h()&&f.timers.push(h)&&!co&&(cr?(co=1,g=function(){co&&(cr(g),e.tick())},cr(g)):co=setInterval(e.tick,e.interval))},show:function(){this.options.orig[this.prop]=f.style(this.elem,this.prop),this.options.show=!0,this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur()),f(this.elem).show()},hide:function(){this.options.orig[this.prop]=f.style(this.elem,this.prop),this.options.hide=!0,this.custom(this.cur(),0)},step:function(a){var b=cq||cs(),c=!0,d=this.elem,e=this.options,g,h;if(a||b>=e.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),e.animatedProperties[this.prop]=!0;for(g in e.animatedProperties)e.animatedProperties[g]!==!0&&(c=!1);if(c){e.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){d.style["overflow"+b]=e.overflow[a]}),e.hide&&f(d).hide();if(e.hide||e.show)for(var i in e.animatedProperties)f.style(d,i,e.orig[i]);e.complete.call(d)}return!1}e.duration==Infinity?this.now=b:(h=b-this.startTime,this.state=h/e.duration,this.pos=f.easing[e.animatedProperties[this.prop]](this.state,h,0,1,e.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){for(var a=f.timers,b=0;b<a.length;++b)a[b]()||a.splice(b--,1);a.length||f.fx.stop()},interval:13,stop:function(){clearInterval(co),co=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){f.style(a.elem,"opacity",a.now)},_default:function(a){a.elem.style&&a.elem.style[a.prop]!=null?a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit:a.elem[a.prop]=a.now}}}),f.expr&&f.expr.filters&&(f.expr.filters.animated=function(a){return f.grep(f.timers,function(b){return a===b.elem}).length});var cw=/^t(?:able|d|h)$/i,cx=/^(?:body|html)$/i;"getBoundingClientRect"in c.documentElement?f.fn.offset=function(a){var b=this[0],c;if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);try{c=b.getBoundingClientRect()}catch(d){}var e=b.ownerDocument,g=e.documentElement;if(!c||!f.contains(g,b))return c?{top:c.top,left:c.left}:{top:0,left:0};var h=e.body,i=cy(e),j=g.clientTop||h.clientTop||0,k=g.clientLeft||h.clientLeft||0,l=i.pageYOffset||f.support.boxModel&&g.scrollTop||h.scrollTop,m=i.pageXOffset||f.support.boxModel&&g.scrollLeft||h.scrollLeft,n=c.top+l-j,o=c.left+m-k;return{top:n,left:o}}:f.fn.offset=function(a){var b=this[0];if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);f.offset.initialize();var c,d=b.offsetParent,e=b,g=b.ownerDocument,h=g.documentElement,i=g.body,j=g.defaultView,k=j?j.getComputedStyle(b,null):b.currentStyle,l=b.offsetTop,m=b.offsetLeft;while((b=b.parentNode)&&b!==i&&b!==h){if(f.offset.supportsFixedPosition&&k.position==="fixed")break;c=j?j.getComputedStyle(b,null):b.currentStyle,l-=b.scrollTop,m-=b.scrollLeft,b===d&&(l+=b.offsetTop,m+=b.offsetLeft,f.offset.doesNotAddBorder&&(!f.offset.doesAddBorderForTableAndCells||!cw.test(b.nodeName))&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),e=d,d=b.offsetParent),f.offset.subtractsBorderForOverflowNotVisible&&c.overflow!=="visible"&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),k=c}if(k.position==="relative"||k.position==="static")l+=i.offsetTop,m+=i.offsetLeft;f.offset.supportsFixedPosition&&k.position==="fixed"&&(l+=Math.max(h.scrollTop,i.scrollTop),m+=Math.max(h.scrollLeft,i.scrollLeft));return{top:l,left:m}},f.offset={initialize:function(){var a=c.body,b=c.createElement("div"),d,e,g,h,i=parseFloat(f.css(a,"marginTop"))||0,j="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";f.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"}),b.innerHTML=j,a.insertBefore(b,a.firstChild),d=b.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,this.doesNotAddBorder=e.offsetTop!==5,this.doesAddBorderForTableAndCells=h.offsetTop===5,e.style.position="fixed",e.style.top="20px",this.supportsFixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",this.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==i,a.removeChild(b),f.offset.initialize=f.noop},bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;f.offset.initialize(),f.offset.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(f.css(a,"marginTop"))||0,c+=parseFloat(f.css(a,"marginLeft"))||0);return{top:b,left:c}},setOffset:function(a,b,c){var d=f.css(a,"position");d==="static"&&(a.style.position="relative");var e=f(a),g=e.offset(),h=f.css(a,"top"),i=f.css(a,"left"),j=(d==="absolute"||d==="fixed")&&f.inArray("auto",[h,i])>-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){return this[0]?parseFloat(f.css(this[0],d,"padding")):null},f.fn["outer"+c]=function(a){return this[0]?parseFloat(f.css(this[0],d,a?"margin":"border")):null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c];return e.document.compatMode==="CSS1Compat"&&g||e.document.body["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var h=f.css(e,d),i=parseFloat(h);return f.isNaN(i)?h:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f})(window);jQuery.noConflict();
+/*! jQuery v1.7.1 jquery.com | jquery.org/license */
+(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"<!doctype html>":"")+"<html><body>"),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g<i;g++){if(g===1)for(h in a.converters)typeof h=="string"&&(e[h.toLowerCase()]=a.converters[h]);l=k,k=d[g];if(k==="*")k=l;else if(l!=="*"&&l!==k){m=l+" "+k,n=e[m]||e["* "+k];if(!n){p=b;for(o in e){j=o.split(" ");if(j[0]===l||j[0]==="*"){p=e[j[1]+" "+k];if(p){o=e[o],o===!0?n=p:p===!0&&(n=o);break}}}}!n&&!p&&f.error("No conversion from "+m.replace(" "," to ")),n!==!0&&(c=n?n(c):p(o(c)))}}return c}function cb(a,c,d){var e=a.contents,f=a.dataTypes,g=a.responseFields,h,i,j,k;for(i in g)i in d&&(c[g[i]]=d[i]);while(f[0]==="*")f.shift(),h===b&&(h=a.mimeType||c.getResponseHeader("content-type"));if(h)for(i in e)if(e[i]&&e[i].test(h)){f.unshift(i);break}if(f[0]in d)j=f[0];else{for(i in d){if(!f[0]||a.converters[i+" "+f[0]]){j=i;break}k||(k=i)}j=j||k}if(j){j!==f[0]&&f.unshift(j);return d[j]}}function ca(a,b,c,d){if(f.isArray(b))f.each(b,function(b,e){c||bE.test(a)?d(a,e):ca(a+"["+(typeof e=="object"||f.isArray(e)?b:"")+"]",e,c,d)});else if(!c&&b!=null&&typeof b=="object")for(var e in b)ca(a+"["+e+"]",b[e],c,d);else d(a,b)}function b_(a,c){var d,e,g=f.ajaxSettings.flatOptions||{};for(d in c)c[d]!==b&&((g[d]?a:e||(e={}))[d]=c[d]);e&&f.extend(!0,a,e)}function b$(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;var h=a[f],i=0,j=h?h.length:0,k=a===bT,l;for(;i<j&&(k||!l);i++)l=h[i](c,d,e),typeof l=="string"&&(!k||g[l]?l=b:(c.dataTypes.unshift(l),l=b$(a,c,d,e,l,g)));(k||!l)&&!g["*"]&&(l=b$(a,c,d,e,"*",g));return l}function bZ(a){return function(b,c){typeof b!="string"&&(c=b,b="*");if(f.isFunction(c)){var d=b.toLowerCase().split(bP),e=0,g=d.length,h,i,j;for(;e<g;e++)h=d[e],j=/^\+/.test(h),j&&(h=h.substr(1)||"*"),i=a[h]=a[h]||[],i[j?"unshift":"push"](c)}}}function bC(a,b,c){var d=b==="width"?a.offsetWidth:a.offsetHeight,e=b==="width"?bx:by,g=0,h=e.length;if(d>0){if(c!=="border")for(;g<h;g++)c||(d-=parseFloat(f.css(a,"padding"+e[g]))||0),c==="margin"?d+=parseFloat(f.css(a,c+e[g]))||0:d-=parseFloat(f.css(a,"border"+e[g]+"Width"))||0;return d+"px"}d=bz(a,b,b);if(d<0||d==null)d=a.style[b]||0;d=parseFloat(d)||0;if(c)for(;g<h;g++)d+=parseFloat(f.css(a,"padding"+e[g]))||0,c!=="padding"&&(d+=parseFloat(f.css(a,"border"+e[g]+"Width"))||0),c==="margin"&&(d+=parseFloat(f.css(a,c+e[g]))||0);return d+"px"}function bp(a,b){b.src?f.ajax({url:b.src,async:!1,dataType:"script"}):f.globalEval((b.text||b.textContent||b.innerHTML||"").replace(bf,"/*$0*/")),b.parentNode&&b.parentNode.removeChild(b)}function bo(a){var b=c.createElement("div");bh.appendChild(b),b.innerHTML=a.outerHTML;return b.firstChild}function bn(a){var b=(a.nodeName||"").toLowerCase();b==="input"?bm(a):b!=="script"&&typeof a.getElementsByTagName!="undefined"&&f.grep(a.getElementsByTagName("input"),bm)}function bm(a){if(a.type==="checkbox"||a.type==="radio")a.defaultChecked=a.checked}function bl(a){return typeof a.getElementsByTagName!="undefined"?a.getElementsByTagName("*"):typeof a.querySelectorAll!="undefined"?a.querySelectorAll("*"):[]}function bk(a,b){var c;if(b.nodeType===1){b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase();if(c==="object")b.outerHTML=a.outerHTML;else if(c!=="input"||a.type!=="checkbox"&&a.type!=="radio"){if(c==="option")b.selected=a.defaultSelected;else if(c==="input"||c==="textarea")b.defaultValue=a.defaultValue}else a.checked&&(b.defaultChecked=b.checked=a.checked),b.value!==a.value&&(b.value=a.value);b.removeAttribute(f.expando)}}function bj(a,b){if(b.nodeType===1&&!!f.hasData(a)){var c,d,e,g=f._data(a),h=f._data(b,g),i=g.events;if(i){delete h.handle,h.events={};for(c in i)for(d=0,e=i[c].length;d<e;d++)f.event.add(b,c+(i[c][d].namespace?".":"")+i[c][d].namespace,i[c][d],i[c][d].data)}h.data&&(h.data=f.extend({},h.data))}}function bi(a,b){return f.nodeName(a,"table")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function U(a){var b=V.split("|"),c=a.createDocumentFragment();if(c.createElement)while(b.length)c.createElement(b.pop());return c}function T(a,b,c){b=b||0;if(f.isFunction(b))return f.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return f.grep(a,function(a,d){return a===b===c});if(typeof b=="string"){var d=f.grep(a,function(a){return a.nodeType===1});if(O.test(b))return f.filter(b,d,!c);b=f.filter(b,d)}return f.grep(a,function(a,d){return f.inArray(a,b)>=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c<d;c++)b[a[c]]=!0;return b}var c=a.document,d=a.navigator,e=a.location,f=function(){function J(){if(!e.isReady){try{c.documentElement.doScroll("left")}catch(a){setTimeout(J,1);return}e.ready()}}var e=function(a,b){return new e.fn.init(a,b,h)},f=a.jQuery,g=a.$,h,i=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j<k;j++)if((a=arguments[j])!=null)for(c in a){d=i[c],f=a[c];if(i===f)continue;l&&f&&(e.isPlainObject(f)||(g=e.isArray(f)))?(g?(g=!1,h=d&&e.isArray(d)?d:[]):h=d&&e.isPlainObject(d)?d:{},i[c]=e.extend(l,h,f)):f!==b&&(i[c]=f)}return i},e.extend({noConflict:function(b){a.$===e&&(a.$=g),b&&a.jQuery===e&&(a.jQuery=f);return e},isReady:!1,readyWait:1,holdReady:function(a){a?e.readyWait++:e.ready(!0)},ready:function(a){if(a===!0&&!--e.readyWait||a!==!0&&!e.isReady){if(!c.body)return setTimeout(e.ready,1);e.isReady=!0;if(a!==!0&&--e.readyWait>0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g<h;)if(c.apply(a[g++],d)===!1)break}else if(i){for(f in a)if(c.call(a[f],f,a[f])===!1)break}else for(;g<h;)if(c.call(a[g],g,a[g++])===!1)break;return a},trim:G?function(a){return a==null?"":G.call(a)}:function(a){return a==null?"":(a+"").replace(k,"").replace(l,"")},makeArray:function(a,b){var c=b||[];if(a!=null){var d=e.type(a);a.length==null||d==="string"||d==="function"||d==="regexp"||e.isWindow(a)?E.call(c,a):e.merge(c,a)}return c},inArray:function(a,b,c){var d;if(b){if(H)return H.call(b,a,c);d=b.length,c=c?c<0?Math.max(0,d+c):c:0;for(;c<d;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,c){var d=a.length,e=0;if(typeof c.length=="number")for(var f=c.length;e<f;e++)a[d++]=c[e];else while(c[e]!==b)a[d++]=c[e++];a.length=d;return a},grep:function(a,b,c){var d=[],e;c=!!c;for(var f=0,g=a.length;f<g;f++)e=!!b(a[f],f),c!==e&&d.push(a[f]);return d},map:function(a,c,d){var f,g,h=[],i=0,j=a.length,k=a instanceof e||j!==b&&typeof j=="number"&&(j>0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i<j;i++)f=c(a[i],i,d),f!=null&&(h[h.length]=f);else for(g in a)f=c(a[g],g,d),f!=null&&(h[h.length]=f);return h.concat.apply([],h)},guid:1,proxy:function(a,c){if(typeof c=="string"){var d=a[c];c=a,a=d}if(!e.isFunction(a))return b;var f=F.call(arguments,2),g=function(){return a.apply(c,f.concat(F.call(arguments)))};g.guid=a.guid=a.guid||g.guid||e.guid++;return g},access:function(a,c,d,f,g,h){var i=a.length;if(typeof c=="object"){for(var j in c)e.access(a,j,c[j],f,g,d);return a}if(d!==b){f=!h&&f&&e.isFunction(d);for(var k=0;k<i;k++)g(a[k],c,f?d.call(a[k],k,g(a[k],c)):d,h);return a}return i?g(a[0],c):b},now:function(){return(new Date).getTime()},uaMatch:function(a){a=a.toLowerCase();var b=r.exec(a)||s.exec(a)||t.exec(a)||a.indexOf("compatible")<0&&u.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},sub:function(){function a(b,c){return new a.fn.init(b,c)}e.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function(d,f){f&&f instanceof e&&!(f instanceof a)&&(f=a(f));return e.fn.init.call(this,d,f,b)},a.fn.init.prototype=a.fn;var b=a(c);return a},browser:{}}),e.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){I["[object "+b+"]"]=b.toLowerCase()}),z=e.uaMatch(y),z.browser&&(e.browser[z.browser]=!0,e.browser.version=z.version),e.browser.webkit&&(e.browser.safari=!0),j.test(" ")&&(k=/^[\s\xA0]+/,l=/[\s\xA0]+$/),h=e(c),c.addEventListener?B=function(){c.removeEventListener("DOMContentLoaded",B,!1),e.ready()}:c.attachEvent&&(B=function(){c.readyState==="complete"&&(c.detachEvent("onreadystatechange",B),e.ready())});return e}(),g={};f.Callbacks=function(a){a=a?g[a]||h(a):{};var c=[],d=[],e,i,j,k,l,m=function(b){var d,e,g,h,i;for(d=0,e=b.length;d<e;d++)g=b[d],h=f.type(g),h==="array"?m(g):h==="function"&&(!a.unique||!o.has(g))&&c.push(g)},n=function(b,f){f=f||[],e=!a.memory||[b,f],i=!0,l=j||0,j=0,k=c.length;for(;c&&l<k;l++)if(c[l].apply(b,f)===!1&&a.stopOnFalse){e=!0;break}i=!1,c&&(a.once?e===!0?o.disable():c=[]:d&&d.length&&(e=d.shift(),o.fireWith(e[0],e[1])))},o={add:function(){if(c){var a=c.length;m(arguments),i?k=c.length:e&&e!==!0&&(j=a,n(e[0],e[1]))}return this},remove:function(){if(c){var b=arguments,d=0,e=b.length;for(;d<e;d++)for(var f=0;f<c.length;f++)if(b[d]===c[f]){i&&f<=k&&(k--,f<=l&&l--),c.splice(f--,1);if(a.unique)break}}return this},has:function(a){if(c){var b=0,d=c.length;for(;b<d;b++)if(a===c[b])return!0}return!1},empty:function(){c=[];return this},disable:function(){c=d=e=b;return this},disabled:function(){return!c},lock:function(){d=b,(!e||e===!0)&&o.disable();return this},locked:function(){return!d},fireWith:function(b,c){d&&(i?a.once||d.push([b,c]):(!a.once||!e)&&n(b,c));return this},fire:function(){o.fireWith(this,arguments);return this},fired:function(){return!!e}};return o};var i=[].slice;f.extend({Deferred:function(a){var b=f.Callbacks("once memory"),c=f.Callbacks("once memory"),d=f.Callbacks("memory"),e="pending",g={resolve:b,reject:c,notify:d},h={done:b.add,fail:c.add,progress:d.add,state:function(){return e},isResolved:b.fired,isRejected:c.fired,then:function(a,b,c){i.done(a).fail(b).progress(c);return this},always:function(){i.done.apply(i,arguments).fail.apply(i,arguments);return this},pipe:function(a,b,c){return f.Deferred(function(d){f.each({done:[a,"resolve"],fail:[b,"reject"],progress:[c,"notify"]},function(a,b){var c=b[0],e=b[1],g;f.isFunction(c)?i[a](function(){g=c.apply(this,arguments),g&&f.isFunction(g.promise)?g.promise().then(d.resolve,d.reject,d.notify):d[e+"With"](this===i?d:this,[g])}):i[a](d[e])})}).promise()},promise:function(a){if(a==null)a=h;else for(var b in h)a[b]=h[b];return a}},i=h.promise({}),j;for(j in g)i[j]=g[j].fire,i[j+"With"]=g[j].fireWith;i.done(function(){e="resolved"},c.disable,d.lock).fail(function(){e="rejected"},b.disable,d.lock),a&&a.call(i,i);return i},when:function(a){function m(a){return function(b){e[a]=arguments.length>1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c<d;c++)b[c]&&b[c].promise&&f.isFunction(b[c].promise)?b[c].promise().then(l(c),j.reject,m(c)):--g;g||j.resolveWith(j,b)}else j!==a&&j.resolveWith(j,d?[a]:[]);return k}}),f.support=function(){var b,d,e,g,h,i,j,k,l,m,n,o,p,q=c.createElement("div"),r=c.documentElement;q.setAttribute("className","t"),q.innerHTML="   <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav></:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="<div "+n+"><div></div></div>"+"<table "+n+" cellpadding='0' cellspacing='0'>"+"<tr><td></td></tr></table>",a=c.createElement("div"),a.style.cssText=m+"width:0;height:0;position:static;top:0;margin-top:"+j+"px",r.insertBefore(a,r.firstChild),q=c.createElement("div"),a.appendChild(q),q.innerHTML="<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>",l=q.getElementsByTagName("td"),p=l[0].offsetHeight===0,l[0].style.display="",l[1].style.display="none",b.reliableHiddenOffsets=p&&l[0].offsetHeight===0,q.innerHTML="",q.style.width=q.style.paddingLeft="1px",f.boxModel=b.boxModel=q.offsetWidth===2,typeof q.style.zoom!="undefined"&&(q.style.display="inline",q.style.zoom=1,b.inlineBlockNeedsLayout=q.offsetWidth===2,q.style.display="",q.innerHTML="<div style='width:4px;'></div>",b.shrinkWrapBlocks=q.offsetWidth!==2),q.style.cssText=k+m,q.innerHTML=o,d=q.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,i={doesNotAddBorder:e.offsetTop!==5,doesAddBorderForTableAndCells:h.offsetTop===5},e.style.position="fixed",e.style.top="20px",i.fixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",i.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,i.doesNotIncludeMarginInBodyOffset=r.offsetTop!==j,r.removeChild(a),q=a=null,f.extend(b,i))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e<g;e++)delete d[b[e]];if(!(c?m:f.isEmptyObject)(d))return}}if(!c){delete j[k].data;if(!m(j[k]))return}f.support.deleteExpando||!j.setInterval?delete j[k]:j[k]=null,i&&(f.support.deleteExpando?delete a[h]:a.removeAttribute?a.removeAttribute(h):a[h]=null)}},_data:function(a,b,c){return f.data(a,b,c,!0)},acceptData:function(a){if(a.nodeName){var b=f.noData[a.nodeName.toLowerCase()];if(b)return b!==!0&&a.getAttribute("classid")===b}return!0}}),f.fn.extend({data:function(a,c){var d,e,g,h=null;if(typeof a=="undefined"){if(this.length){h=f.data(this[0]);if(this[0].nodeType===1&&!f._data(this[0],"parsedAttrs")){e=this[0].attributes;for(var i=0,j=e.length;i<j;i++)g=e[i].name,g.indexOf("data-")===0&&(g=f.camelCase(g.substring(5)),l(this[0],g,h[g]));f._data(this[0],"parsedAttrs",!0)}}return h}if(typeof a=="object")return this.each(function(){f.data(this,a)});d=a.split("."),d[1]=d[1]?"."+d[1]:"";if(c===b){h=this.triggerHandler("getData"+d[1]+"!",[d[0]]),h===b&&this.length&&(h=f.data(this[0],a),h=l(this[0],a,h));return h===b&&d[1]?this.data(d[0]):h}return this.each(function(){var b=f(this),e=[d[0],c];b.triggerHandler("setData"+d[1]+"!",e),f.data(this,a,c),b.triggerHandler("changeData"+d[1]+"!",e)})},removeData:function(a){return this.each(function(){f.removeData(this,a)})}}),f.extend({_mark:function(a,b){a&&(b=(b||"fx")+"mark",f._data(a,b,(f._data(a,b)||0)+1))},_unmark:function(a,b,c){a!==!0&&(c=b,b=a,a=!1);if(b){c=c||"fx";var d=c+"mark",e=a?0:(f._data(b,d)||1)-1;e?f._data(b,d,e):(f.removeData(b,d,!0),n(b,c,"mark"))}},queue:function(a,b,c){var d;if(a){b=(b||"fx")+"queue",d=f._data(a,b),c&&(!d||f.isArray(c)?d=f._data(a,b,f.makeArray(c)):d.push(c));return d||[]}},dequeue:function(a,b){b=b||"fx";var c=f.queue(a,b),d=c.shift(),e={};d==="inprogress"&&(d=c.shift()),d&&(b==="fx"&&c.unshift("inprogress"),f._data(a,b+".run",e),d.call(a,function(){f.dequeue(a,b)},e)),c.length||(f.removeData(a,b+"queue "+b+".run",!0),n(a,b,"queue"))}}),f.fn.extend({queue:function(a,c){typeof a!="string"&&(c=a,a="fx");if(c===b)return f.queue(this[0],a);return this.each(function(){var b=f.queue(this,a,c);a==="fx"&&b[0]!=="inprogress"&&f.dequeue(this,a)})},dequeue:function(a){return this.each(function(){f.dequeue(this,a)})},delay:function(a,b){a=f.fx?f.fx.speeds[a]||a:a,b=b||"fx";return this.queue(b,function(b,c){var d=setTimeout(b,a);c.stop=function(){clearTimeout(d)}})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,c){function m(){--h||d.resolveWith(e,[e])}typeof a!="string"&&(c=a,a=b),a=a||"fx";var d=f.Deferred(),e=this,g=e.length,h=1,i=a+"defer",j=a+"queue",k=a+"mark",l;while(g--)if(l=f.data(e[g],i,b,!0)||(f.data(e[g],j,b,!0)||f.data(e[g],k,b,!0))&&f.data(e[g],i,f.Callbacks("once memory"),!0))h++,l.add(m);m();return d.promise()}});var o=/[\n\t\r]/g,p=/\s+/,q=/\r/g,r=/^(?:button|input)$/i,s=/^(?:button|input|object|select|textarea)$/i,t=/^a(?:rea)?$/i,u=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,v=f.support.getSetAttribute,w,x,y;f.fn.extend({attr:function(a,b){return f.access(this,a,b,!0,f.attr)},removeAttr:function(a){return this.each(function(){f.removeAttr(this,a)})},prop:function(a,b){return f.access(this,a,b,!0,f.prop)},removeProp:function(a){a=f.propFix[a]||a;return this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,g,h,i;if(f.isFunction(a))return this.each(function(b){f(this).addClass(a.call(this,b,this.className))});if(a&&typeof a=="string"){b=a.split(p);for(c=0,d=this.length;c<d;c++){e=this[c];if(e.nodeType===1)if(!e.className&&b.length===1)e.className=a;else{g=" "+e.className+" ";for(h=0,i=b.length;h<i;h++)~g.indexOf(" "+b[h]+" ")||(g+=b[h]+" ");e.className=f.trim(g)}}}return this},removeClass:function(a){var c,d,e,g,h,i,j;if(f.isFunction(a))return this.each(function(b){f(this).removeClass(a.call(this,b,this.className))});if(a&&typeof a=="string"||a===b){c=(a||"").split(p);for(d=0,e=this.length;d<e;d++){g=this[d];if(g.nodeType===1&&g.className)if(a){h=(" "+g.className+" ").replace(o," ");for(i=0,j=c.length;i<j;i++)h=h.replace(" "+c[i]+" "," ");g.className=f.trim(h)}else g.className=""}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";if(f.isFunction(a))return this.each(function(c){f(this).toggleClass(a.call(this,c,this.className,b),b)});return this.each(function(){if(c==="string"){var e,g=0,h=f(this),i=b,j=a.split(p);while(e=j[g++])i=d?i:!h.hasClass(e),h[i?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&f._data(this,"__className__",this.className),this.className=this.className||a===!1?"":f._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ",c=0,d=this.length;for(;c<d;c++)if(this[c].nodeType===1&&(" "+this[c].className+" ").replace(o," ").indexOf(b)>-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c<d;c++){e=i[c];if(e.selected&&(f.support.optDisabled?!e.disabled:e.getAttribute("disabled")===null)&&(!e.parentNode.disabled||!f.nodeName(e.parentNode,"optgroup"))){b=f(e).val();if(j)return b;h.push(b)}}if(j&&!h.length&&i.length)return f(i[g]).val();return h},set:function(a,b){var c=f.makeArray(b);f(a).find("option").each(function(){this.selected=f.inArray(f(this).val(),c)>=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;h<g;h++)e=d[h],e&&(c=f.propFix[e]||e,f.attr(a,e,""),a.removeAttribute(v?e:c),u.test(e)&&c in a&&(a[c]=!1))}},attrHooks:{type:{set:function(a,b){if(r.test(a.nodeName)&&a.parentNode)f.error("type property can't be changed");else if(!f.support.radioValue&&b==="radio"&&f.nodeName(a,"input")){var c=a.value;a.setAttribute("type",b),c&&(a.value=c);return b}}},value:{get:function(a,b){if(w&&f.nodeName(a,"button"))return w.get(a,b);return b in a?a.value:null},set:function(a,b,c){if(w&&f.nodeName(a,"button"))return w.set(a,b,c);a.value=b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e,g,h,i=a.nodeType;if(!!a&&i!==3&&i!==8&&i!==2){h=i!==1||!f.isXMLDoc(a),h&&(c=f.propFix[c]||c,g=f.propHooks[c]);return d!==b?g&&"set"in g&&(e=g.set(a,d,c))!==b?e:a[c]=d:g&&"get"in g&&(e=g.get(a,c))!==null?e:a[c]}},propHooks:{tabIndex:{get:function(a){var c=a.getAttributeNode("tabindex");return c&&c.specified?parseInt(c.value,10):s.test(a.nodeName)||t.test(a.nodeName)&&a.href?0:b}}}}),f.attrHooks.tabindex=f.propHooks.tabIndex,x={get:function(a,c){var d,e=f.prop(a,c);return e===!0||typeof e!="boolean"&&(d=a.getAttributeNode(c))&&d.nodeValue!==!1?c.toLowerCase():b},set:function(a,b,c){var d;b===!1?f.removeAttr(a,c):(d=f.propFix[c]||c,d in a&&(a[d]=!0),a.setAttribute(c,c.toLowerCase()));return c}},v||(y={name:!0,id:!0},w=f.valHooks.button={get:function(a,c){var d;d=a.getAttributeNode(c);return d&&(y[c]?d.nodeValue!=="":d.specified)?d.nodeValue:b},set:function(a,b,d){var e=a.getAttributeNode(d);e||(e=c.createAttribute(d),a.setAttributeNode(e));return e.nodeValue=b+""}},f.attrHooks.tabindex.set=w.set,f.each(["width","height"],function(a,b){f.attrHooks[b]=f.extend(f.attrHooks[b],{set:function(a,c){if(c===""){a.setAttribute(b,"auto");return c}}})}),f.attrHooks.contenteditable={get:w.get,set:function(a,b,c){b===""&&(b="false"),w.set(a,b,c)}}),f.support.hrefNormalized||f.each(["href","src","width","height"],function(a,c){f.attrHooks[c]=f.extend(f.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),f.support.style||(f.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=""+b}}),f.support.optSelected||(f.propHooks.selected=f.extend(f.propHooks.selected,{get:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex);return null}})),f.support.enctype||(f.propFix.enctype="encoding"),f.support.checkOn||f.each(["radio","checkbox"],function(){f.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),f.each(["radio","checkbox"],function(){f.valHooks[this]=f.extend(f.valHooks[this],{set:function(a,b){if(f.isArray(b))return a.checked=f.inArray(f(a).val(),b)>=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/\bhover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")};
+f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k<c.length;k++){l=A.exec(c[k])||[],m=l[1],n=(l[2]||"").split(".").sort(),s=f.event.special[m]||{},m=(g?s.delegateType:s.bindType)||m,s=f.event.special[m]||{},o=f.extend({type:m,origType:l[1],data:e,handler:d,guid:d.guid,selector:g,quick:G(g),namespace:n.join(".")},p),r=j[m];if(!r){r=j[m]=[],r.delegateCount=0;if(!s.setup||s.setup.call(a,e,n,i)===!1)a.addEventListener?a.addEventListener(m,i,!1):a.attachEvent&&a.attachEvent("on"+m,i)}s.add&&(s.add.call(a,o),o.handler.guid||(o.handler.guid=d.guid)),g?r.splice(r.delegateCount++,0,o):r.push(o),f.event.global[m]=!0}a=null}},global:{},remove:function(a,b,c,d,e){var g=f.hasData(a)&&f._data(a),h,i,j,k,l,m,n,o,p,q,r,s;if(!!g&&!!(o=g.events)){b=f.trim(I(b||"")).split(" ");for(h=0;h<b.length;h++){i=A.exec(b[h])||[],j=k=i[1],l=i[2];if(!j){for(j in o)f.event.remove(a,j+b[h],c,d,!0);continue}p=f.event.special[j]||{},j=(d?p.delegateType:p.bindType)||j,r=o[j]||[],m=r.length,l=l?new RegExp("(^|\\.)"+l.split(".").sort().join("\\.(?:.*\\.)?")+"(\\.|$)"):null;for(n=0;n<r.length;n++)s=r[n],(e||k===s.origType)&&(!c||c.guid===s.guid)&&(!l||l.test(s.namespace))&&(!d||d===s.selector||d==="**"&&s.selector)&&(r.splice(n--,1),s.selector&&r.delegateCount--,p.remove&&p.remove.call(a,s));r.length===0&&m!==r.length&&((!p.teardown||p.teardown.call(a,l)===!1)&&f.removeEvent(a,j,g.handle),delete o[j])}f.isEmptyObject(o)&&(q=g.handle,q&&(q.elem=null),f.removeData(a,["events","handle"],!0))}},customEvent:{getData:!0,setData:!0,changeData:!0},trigger:function(c,d,e,g){if(!e||e.nodeType!==3&&e.nodeType!==8){var h=c.type||c,i=[],j,k,l,m,n,o,p,q,r,s;if(E.test(h+f.event.triggered))return;h.indexOf("!")>=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;l<r.length&&!c.isPropagationStopped();l++)m=r[l][0],c.type=r[l][1],q=(f._data(m,"events")||{})[c.type]&&f._data(m,"handle"),q&&q.apply(m,d),q=o&&m[o],q&&f.acceptData(m)&&q.apply(m,d)===!1&&c.preventDefault();c.type=h,!g&&!c.isDefaultPrevented()&&(!p._default||p._default.apply(e.ownerDocument,d)===!1)&&(h!=="click"||!f.nodeName(e,"a"))&&f.acceptData(e)&&o&&e[h]&&(h!=="focus"&&h!=="blur"||c.target.offsetWidth!==0)&&!f.isWindow(e)&&(n=e[o],n&&(e[o]=null),f.event.triggered=h,e[h](),f.event.triggered=b,n&&(e[o]=n));return c.result}},dispatch:function(c){c=f.event.fix(c||a.event);var d=(f._data(this,"events")||{})[c.type]||[],e=d.delegateCount,g=[].slice.call(arguments,0),h=!c.exclusive&&!c.namespace,i=[],j,k,l,m,n,o,p,q,r,s,t;g[0]=c,c.delegateTarget=this;if(e&&!c.target.disabled&&(!c.button||c.type!=="click")){m=f(this),m.context=this.ownerDocument||this;for(l=c.target;l!=this;l=l.parentNode||this){o={},q=[],m[0]=l;for(j=0;j<e;j++)r=d[j],s=r.selector,o[s]===b&&(o[s]=r.quick?H(l,r.quick):m.is(s)),o[s]&&q.push(r);q.length&&i.push({elem:l,matches:q})}}d.length>e&&i.push({elem:this,matches:d.slice(e)});for(j=0;j<i.length&&!c.isPropagationStopped();j++){p=i[j],c.currentTarget=p.elem;for(k=0;k<p.matches.length&&!c.isImmediatePropagationStopped();k++){r=p.matches[k];if(h||!c.namespace&&!r.namespace||c.namespace_re&&c.namespace_re.test(r.namespace))c.data=r.data,c.handleObj=r,n=((f.event.special[r.origType]||{}).handle||r.handler).apply(p.elem,g),n!==b&&(c.result=n,n===!1&&(c.preventDefault(),c.stopPropagation()))}}return c.result},props:"attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(a,b){a.which==null&&(a.which=b.charCode!=null?b.charCode:b.keyCode);return a}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,d){var e,f,g,h=d.button,i=d.fromElement;a.pageX==null&&d.clientX!=null&&(e=a.target.ownerDocument||c,f=e.documentElement,g=e.body,a.pageX=d.clientX+(f&&f.scrollLeft||g&&g.scrollLeft||0)-(f&&f.clientLeft||g&&g.clientLeft||0),a.pageY=d.clientY+(f&&f.scrollTop||g&&g.scrollTop||0)-(f&&f.clientTop||g&&g.clientTop||0)),!a.relatedTarget&&i&&(a.relatedTarget=i===a.target?d.toElement:i),!a.which&&h!==b&&(a.which=h&1?1:h&2?3:h&4?2:0);return a}},fix:function(a){if(a[f.expando])return a;var d,e,g=a,h=f.event.fixHooks[a.type]||{},i=h.props?this.props.concat(h.props):this.props;a=f.Event(g);for(d=i.length;d;)e=i[--d],a[e]=g[e];a.target||(a.target=g.srcElement||c),a.target.nodeType===3&&(a.target=a.target.parentNode),a.metaKey===b&&(a.metaKey=a.ctrlKey);return h.filter?h.filter(a,g):a},special:{ready:{setup:f.bindReady},load:{noBubble:!0},focus:{delegateType:"focusin"},blur:{delegateType:"focusout"},beforeunload:{setup:function(a,b,c){f.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===b&&(this.onbeforeunload=null)}}},simulate:function(a,b,c,d){var e=f.extend(new f.Event,c,{type:a,isSimulated:!0,originalEvent:{}});d?f.event.trigger(e,null,b):f.event.dispatch.call(b,e),e.isDefaultPrevented()&&c.preventDefault()}},f.event.handle=f.event.dispatch,f.removeEvent=c.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){a.detachEvent&&a.detachEvent("on"+b,c)},f.Event=function(a,b){if(!(this instanceof f.Event))return new f.Event(a,b);a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||a.returnValue===!1||a.getPreventDefault&&a.getPreventDefault()?K:J):this.type=a,b&&f.extend(this,b),this.timeStamp=a&&a.timeStamp||f.now(),this[f.expando]=!0},f.Event.prototype={preventDefault:function(){this.isDefaultPrevented=K;var a=this.originalEvent;!a||(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){this.isPropagationStopped=K;var a=this.originalEvent;!a||(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=K,this.stopPropagation()},isDefaultPrevented:J,isPropagationStopped:J,isImmediatePropagationStopped:J},f.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){f.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c=this,d=a.relatedTarget,e=a.handleObj,g=e.selector,h;if(!d||d!==c&&!f.contains(c,d))a.type=e.origType,h=e.handler.apply(this,arguments),a.type=b;return h}}}),f.support.submitBubbles||(f.event.special.submit={setup:function(){if(f.nodeName(this,"form"))return!1;f.event.add(this,"click._submit keypress._submit",function(a){var c=a.target,d=f.nodeName(c,"input")||f.nodeName(c,"button")?c.form:b;d&&!d._submit_attached&&(f.event.add(d,"submit._submit",function(a){this.parentNode&&!a.isTrigger&&f.event.simulate("submit",this.parentNode,a,!0)}),d._submit_attached=!0)})},teardown:function(){if(f.nodeName(this,"form"))return!1;f.event.remove(this,"._submit")}}),f.support.changeBubbles||(f.event.special.change={setup:function(){if(z.test(this.nodeName)){if(this.type==="checkbox"||this.type==="radio")f.event.add(this,"propertychange._change",function(a){a.originalEvent.propertyName==="checked"&&(this._just_changed=!0)}),f.event.add(this,"click._change",function(a){this._just_changed&&!a.isTrigger&&(this._just_changed=!1,f.event.simulate("change",this,a,!0))});return!1}f.event.add(this,"beforeactivate._change",function(a){var b=a.target;z.test(b.nodeName)&&!b._change_attached&&(f.event.add(b,"change._change",function(a){this.parentNode&&!a.isSimulated&&!a.isTrigger&&f.event.simulate("change",this.parentNode,a,!0)}),b._change_attached=!0)})},handle:function(a){var b=a.target;if(this!==b||a.isSimulated||a.isTrigger||b.type!=="radio"&&b.type!=="checkbox")return a.handleObj.handler.apply(this,arguments)},teardown:function(){f.event.remove(this,"._change");return z.test(this.nodeName)}}),f.support.focusinBubbles||f.each({focus:"focusin",blur:"focusout"},function(a,b){var d=0,e=function(a){f.event.simulate(b,a.target,f.event.fix(a),!0)};f.event.special[b]={setup:function(){d++===0&&c.addEventListener(a,e,!0)},teardown:function(){--d===0&&c.removeEventListener(a,e,!0)}}}),f.fn.extend({on:function(a,c,d,e,g){var h,i;if(typeof a=="object"){typeof c!="string"&&(d=c,c=b);for(i in a)this.on(i,c,d,a[i],g);return this}d==null&&e==null?(e=c,d=c=b):e==null&&(typeof c=="string"?(e=d,d=b):(e=d,d=c,c=b));if(e===!1)e=J;else if(!e)return this;g===1&&(h=e,e=function(a){f().off(a);return h.apply(this,arguments)},e.guid=h.guid||(h.guid=f.guid++));return this.each(function(){f.event.add(this,a,e,d,c)})},one:function(a,b,c,d){return this.on.call(this,a,b,c,d,1)},off:function(a,c,d){if(a&&a.preventDefault&&a.handleObj){var e=a.handleObj;f(a.delegateTarget).off(e.namespace?e.type+"."+e.namespace:e.type,e.selector,e.handler);return this}if(typeof a=="object"){for(var g in a)this.off(g,c,a[g]);return this}if(c===!1||typeof c=="function")d=c,c=b;d===!1&&(d=J);return this.each(function(){f.event.remove(this,a,d,c)})},bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},live:function(a,b,c){f(this.context).on(a,this.selector,b,c);return this},die:function(a,b){f(this.context).off(a,this.selector||"**",b);return this},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return arguments.length==1?this.off(a,"**"):this.off(b,a,c)},trigger:function(a,b){return this.each(function(){f.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0])return f.event.trigger(a,b,this[0],!0)},toggle:function(a){var b=arguments,c=a.guid||f.guid++,d=0,e=function(c){var e=(f._data(this,"lastToggle"+a.guid)||0)%d;f._data(this,"lastToggle"+a.guid,e+1),c.preventDefault();return b[e].apply(this,arguments)||!1};e.guid=c;while(d<b.length)b[d++].guid=c;return this.click(e)},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}}),f.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){f.fn[b]=function(a,c){c==null&&(c=a,a=null);return arguments.length>0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h<i;h++){var j=e[h];if(j){var k=!1;j=j[a];while(j){if(j[d]===c){k=e[j.sizset];break}if(j.nodeType===1){g||(j[d]=c,j.sizset=h);if(typeof b!="string"){if(j===b){k=!0;break}}else if(m.filter(b,[j]).length>0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h<i;h++){var j=e[h];if(j){var k=!1;j=j[a];while(j){if(j[d]===c){k=e[j.sizset];break}j.nodeType===1&&!g&&(j[d]=c,j.sizset=h);if(j.nodeName.toLowerCase()===b){k=j;break}j=j[a]}e[h]=k}}}var a=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b<a.length;b++)a[b]===a[b-1]&&a.splice(b--,1)}return a},m.matches=function(a,b){return m(a,null,null,b)},m.matchesSelector=function(a,b){return m(b,null,null,[a]).length>0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e<f;e++){h=o.order[e];if(g=o.leftMatch[h].exec(a)){i=g[1],g.splice(1,1);if(i.substr(i.length-1)!=="\\"){g[1]=(g[1]||"").replace(j,""),d=o.find[h](g,b,c);if(d!=null){a=a.replace(o.match[h],"");break}}}}d||(d=typeof b.getElementsByTagName!="undefined"?b.getElementsByTagName("*"):[]);return{set:d,expr:a}},m.filter=function(a,c,d,e){var f,g,h,i,j,k,l,n,p,q=a,r=[],s=c,t=c&&c[0]&&m.isXML(c[0]);while(a&&c.length){for(h in o.filter)if((f=o.leftMatch[h].exec(a))!=null&&f[2]){k=o.filter[h],l=f[1],g=!1,f.splice(1,1);if(l.substr(l.length-1)==="\\")continue;s===r&&(r=[]);if(o.preFilter[h]){f=o.preFilter[h](f,s,d,r,e,t);if(!f)g=i=!0;else if(f===!0)continue}if(f)for(n=0;(j=s[n])!=null;n++)j&&(i=k(j,f,n,s),p=e^i,d&&i!=null?p?g=!0:s[n]=!1:p&&(r.push(j),g=!0));if(i!==b){d||(s=r),a=a.replace(o.match[h],"");if(!g)return[];break}}if(a===q)if(g==null)m.error(a);else break;q=a}return s},m.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)};var n=m.getText=function(a){var b,c,d=a.nodeType,e="";if(d){if(d===1||d===9){if(typeof a.textContent=="string")return a.textContent;if(typeof a.innerText=="string")return a.innerText.replace(k,"");for(a=a.firstChild;a;a=a.nextSibling)e+=n(a)}else if(d===3||d===4)return a.nodeValue}else for(b=0;c=a[b];b++)c.nodeType!==8&&(e+=n(c));return e},o=m.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(a){return a.getAttribute("href")},type:function(a){return a.getAttribute("type")}},relative:{"+":function(a,b){var c=typeof b=="string",d=c&&!l.test(b),e=c&&!d;d&&(b=b.toLowerCase());for(var f=0,g=a.length,h;f<g;f++)if(h=a[f]){while((h=h.previousSibling)&&h.nodeType!==1);a[f]=e||h&&h.nodeName.toLowerCase()===b?h||!1:h===b}e&&m.filter(b,a,!0)},">":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e<f;e++){c=a[e];if(c){var g=c.parentNode;a[e]=g.nodeName.toLowerCase()===b?g:!1}}}else{for(;e<f;e++)c=a[e],c&&(a[e]=d?c.parentNode:c.parentNode===b);d&&m.filter(b,a,!0)}},"":function(a,b,c){var d,f=e++,g=x;typeof b=="string"&&!l.test(b)&&(b=b.toLowerCase(),d=b,g=w),g("parentNode",b,f,a,d,c)},"~":function(a,b,c){var d,f=e++,g=x;typeof b=="string"&&!l.test(b)&&(b=b.toLowerCase(),d=b,g=w),g("previousSibling",b,f,a,d,c)}},find:{ID:function(a,b,c){if(typeof b.getElementById!="undefined"&&!c){var d=b.getElementById(a[1]);return d&&d.parentNode?[d]:[]}},NAME:function(a,b){if(typeof b.getElementsByName!="undefined"){var c=[],d=b.getElementsByName(a[1]);for(var e=0,f=d.length;e<f;e++)d[e].getAttribute("name")===a[1]&&c.push(d[e]);return c.length===0?null:c}},TAG:function(a,b){if(typeof b.getElementsByTagName!="undefined")return b.getElementsByTagName(a[1])}},preFilter:{CLASS:function(a,b,c,d,e,f){a=" "+a[1].replace(j,"")+" ";if(f)return a;for(var g=0,h;(h=b[g])!=null;g++)h&&(e^(h.className&&(" "+h.className+" ").replace(/[\t\n\r]/g," ").indexOf(a)>=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return b<c[3]-0},gt:function(a,b,c){return b>c[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h<i;h++)if(g[h]===a)return!1;return!0}m.error(e)},CHILD:function(a,b){var c,e,f,g,h,i,j,k=b[1],l=a;switch(k){case"only":case"first":while(l=l.previousSibling)if(l.nodeType===1)return!1;if(k==="first")return!0;l=a;case"last":while(l=l.nextSibling)if(l.nodeType===1)return!1;return!0;case"nth":c=b[2],e=b[3];if(c===1&&e===0)return!0;f=b[0],g=a.parentNode;if(g&&(g[d]!==f||!a.nodeIndex)){i=0;for(l=g.firstChild;l;l=l.nextSibling)l.nodeType===1&&(l.nodeIndex=++i);g[d]=f}j=a.nodeIndex-e;return c===0?j===0:j%c===0&&j/c>=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c<e;c++)d.push(a[c]);else for(;a[c];c++)d.push(a[c]);return d}}var u,v;c.documentElement.compareDocumentPosition?u=function(a,b){if(a===b){h=!0;return 0}if(!a.compareDocumentPosition||!b.compareDocumentPosition)return a.compareDocumentPosition?-1:1;return a.compareDocumentPosition(b)&4?-1:1}:(u=function(a,b){if(a===b){h=!0;return 0}if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],f=[],g=a.parentNode,i=b.parentNode,j=g;if(g===i)return v(a,b);if(!g)return-1;if(!i)return 1;while(j)e.unshift(j),j=j.parentNode;j=i;while(j)f.unshift(j),j=j.parentNode;c=e.length,d=f.length;for(var k=0;k<c&&k<d;k++)if(e[k]!==f[k])return v(e[k],f[k]);return k===c?v(a,f[k],-1):v(e[k],b,1)},v=function(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}),function(){var a=c.createElement("div"),d="script"+(new Date).getTime(),e=c.documentElement;a.innerHTML="<a name='"+d+"'/>",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="<p class='TEST'></p>";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="<div class='test e'></div><div class='test'></div>";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h<i;h++)m(a,g[h],e,c);return m.filter(f,e)};m.attr=f.attr,m.selectors.attrMap={},f.find=m,f.expr=m.selectors,f.expr[":"]=f.expr.filters,f.unique=m.uniqueSort,f.text=m.getText,f.isXMLDoc=m.isXML,f.contains=m.contains}();var L=/Until$/,M=/^(?:parents|prevUntil|prevAll)/,N=/,/,O=/^.[^:#\[\.,]*$/,P=Array.prototype.slice,Q=f.expr.match.POS,R={children:!0,contents:!0,next:!0,prev:!0};f.fn.extend({find:function(a){var b=this,c,d;if(typeof a!="string")return f(a).filter(function(){for(c=0,d=b.length;c<d;c++)if(f.contains(b[c],this))return!0});var e=this.pushStack("","find",a),g,h,i;for(c=0,d=this.length;c<d;c++){g=e.length,f.find(a,this[c],e);if(c>0)for(h=g;h<e.length;h++)for(i=0;i<g;i++)if(e[i]===e[h]){e.splice(h--,1);break}}return e},has:function(a){var b=f(a);return this.filter(function(){for(var a=0,c=b.length;a<c;a++)if(f.contains(this,b[a]))return!0})},not:function(a){return this.pushStack(T(this,a,!1),"not",a)},filter:function(a){return this.pushStack(T(this,a,!0),"filter",a)},is:function(a){return!!a&&(typeof a=="string"?Q.test(a)?f(a,this.context).index(this[0])>=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d<a.length;d++)f(g).is(a[d])&&c.push({selector:a[d],elem:g,level:h});g=g.parentNode,h++}return c}var i=Q.test(a)||typeof a!="string"?f(a,b||this.context):0;for(d=0,e=this.length;d<e;d++){g=this[d];while(g){if(i?i.index(g)>-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/<tbody/i,_=/<|&#?\w+;/,ba=/<(?:script|style)/i,bb=/<(?:script|object|embed|option|style)/i,bc=new RegExp("<(?:"+V+")","i"),bd=/checked\s*(?:[^=]|=\s*.checked.)/i,be=/\/(java|ecma)script/i,bf=/^\s*<!(?:\[CDATA\[|\-\-)/,bg={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div<div>","</div>"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function()
+{for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1></$2>");try{for(var c=0,d=this.length;c<d;c++)this[c].nodeType===1&&(f.cleanData(this[c].getElementsByTagName("*")),this[c].innerHTML=a)}catch(e){this.empty().append(a)}}else f.isFunction(a)?this.each(function(b){var c=f(this);c.html(a.call(this,b,c.html()))}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(f.isFunction(a))return this.each(function(b){var c=f(this),d=c.html();c.replaceWith(a.call(this,b,d))});typeof a!="string"&&(a=f(a).detach());return this.each(function(){var b=this.nextSibling,c=this.parentNode;f(this).remove(),b?f(b).before(a):f(c).append(a)})}return this.length?this.pushStack(f(f.isFunction(a)?a():a),"replaceWith",a):this},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){var e,g,h,i,j=a[0],k=[];if(!f.support.checkClone&&arguments.length===3&&typeof j=="string"&&bd.test(j))return this.each(function(){f(this).domManip(a,c,d,!0)});if(f.isFunction(j))return this.each(function(e){var g=f(this);a[0]=j.call(this,e,c?g.html():b),g.domManip(a,c,d)});if(this[0]){i=j&&j.parentNode,f.support.parentNode&&i&&i.nodeType===11&&i.childNodes.length===this.length?e={fragment:i}:e=f.buildFragment(a,this,k),h=e.fragment,h.childNodes.length===1?g=h=h.firstChild:g=h.firstChild;if(g){c=c&&f.nodeName(g,"tr");for(var l=0,m=this.length,n=m-1;l<m;l++)d.call(c?bi(this[l],g):this[l],e.cacheable||m>1&&l<n?f.clone(h,!0,!0):h)}k.length&&f.each(k,bp)}return this}}),f.buildFragment=function(a,b,d){var e,g,h,i,j=a[0];b&&b[0]&&(i=b[0].ownerDocument||b[0]),i.createDocumentFragment||(i=c),a.length===1&&typeof j=="string"&&j.length<512&&i===c&&j.charAt(0)==="<"&&!bb.test(j)&&(f.support.checkClone||!bd.test(j))&&(f.support.html5Clone||!bc.test(j))&&(g=!0,h=f.fragments[j],h&&h!==1&&(e=h)),e||(e=i.createDocumentFragment(),f.clean(a,i,e,d)),g&&(f.fragments[j]=h?e:1);return{fragment:e,cacheable:g}},f.fragments={},f.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){f.fn[a]=function(c){var d=[],e=f(c),g=this.length===1&&this[0].parentNode;if(g&&g.nodeType===11&&g.childNodes.length===1&&e.length===1){e[b](this[0]);return this}for(var h=0,i=e.length;h<i;h++){var j=(h>0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||!bc.test("<"+a.nodeName)?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1></$2>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");b===c?bh.appendChild(o):U(b).appendChild(o),o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]==="<table>"&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i<r;i++)bn(k[i]);else bn(k);k.nodeType?h.push(k):h=f.merge(h,k)}if(d){g=function(a){return!a.type||be.test(a.type)};for(j=0;h[j];j++)if(e&&f.nodeName(h[j],"script")&&(!h[j].type||h[j].type.toLowerCase()==="text/javascript"))e.push(h[j].parentNode?h[j].parentNode.removeChild(h[j]):h[j]);else{if(h[j].nodeType===1){var s=f.grep(h[j].getElementsByTagName("script"),g);h.splice.apply(h,[j+1,0].concat(s))}d.appendChild(h[j])}}return h},cleanData:function(a){var b,c,d=f.cache,e=f.event.special,g=f.support.deleteExpando;for(var h=0,i;(i=a[h])!=null;h++){if(i.nodeName&&f.noData[i.nodeName.toLowerCase()])continue;c=i[f.expando];if(c){b=d[c];if(b&&b.events){for(var j in b.events)e[j]?f.event.remove(i,j):f.removeEvent(i,j,b.handle);b.handle&&(b.handle.elem=null)}g?delete i[f.expando]:i.removeAttribute&&i.removeAttribute(f.expando),delete d[c]}}}});var bq=/alpha\([^)]*\)/i,br=/opacity=([^)]*)/,bs=/([A-Z]|^ms)/g,bt=/^-?\d+(?:px)?$/i,bu=/^-?\d/,bv=/^([\-+])=([\-+.\de]+)/,bw={position:"absolute",visibility:"hidden",display:"block"},bx=["Left","Right"],by=["Top","Bottom"],bz,bA,bB;f.fn.css=function(a,c){if(arguments.length===2&&c===b)return this;return f.access(this,a,c,!0,function(a,c,d){return d!==b?f.style(a,c,d):f.css(a,c)})},f.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bz(a,"opacity","opacity");return c===""?"1":c}return a.style.opacity}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":f.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!!a&&a.nodeType!==3&&a.nodeType!==8&&!!a.style){var g,h,i=f.camelCase(c),j=a.style,k=f.cssHooks[i];c=f.cssProps[i]||i;if(d===b){if(k&&"get"in k&&(g=k.get(a,!1,e))!==b)return g;return j[c]}h=typeof d,h==="string"&&(g=bv.exec(d))&&(d=+(g[1]+1)*+g[2]+parseFloat(f.css(a,c)),h="number");if(d==null||h==="number"&&isNaN(d))return;h==="number"&&!f.cssNumber[i]&&(d+="px");if(!k||!("set"in k)||(d=k.set(a,d))!==b)try{j[c]=d}catch(l){}}},css:function(a,c,d){var e,g;c=f.camelCase(c),g=f.cssHooks[c],c=f.cssProps[c]||c,c==="cssFloat"&&(c="float");if(g&&"get"in g&&(e=g.get(a,!0,d))!==b)return e;if(bz)return bz(a,c)},swap:function(a,b,c){var d={};for(var e in b)d[e]=a.style[e],a.style[e]=b[e];c.call(a);for(e in b)a.style[e]=d[e]}}),f.curCSS=f.css,f.each(["height","width"],function(a,b){f.cssHooks[b]={get:function(a,c,d){var e;if(c){if(a.offsetWidth!==0)return bC(a,b,d);f.swap(a,bw,function(){e=bC(a,b,d)});return e}},set:function(a,b){if(!bt.test(b))return b;b=parseFloat(b);if(b>=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return br.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bq,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bq.test(g)?g.replace(bq,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,b){var c,d,e;b=b.replace(bs,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b)));return c}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bt.test(f)&&bu.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bD=/%20/g,bE=/\[\]$/,bF=/\r?\n/g,bG=/#.*$/,bH=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bI=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bJ=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bK=/^(?:GET|HEAD)$/,bL=/^\/\//,bM=/\?/,bN=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,bO=/^(?:select|textarea)/i,bP=/\s+/,bQ=/([?&])_=[^&]*/,bR=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bS=f.fn.load,bT={},bU={},bV,bW,bX=["*/"]+["*"];try{bV=e.href}catch(bY){bV=c.createElement("a"),bV.href="",bV=bV.href}bW=bR.exec(bV.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bS)return bS.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("<div>").append(c.replace(bN,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bO.test(this.nodeName)||bI.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bF,"\r\n")}}):{name:b.name,value:c.replace(bF,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b_(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b_(a,b);return a},ajaxSettings:{url:bV,isLocal:bJ.test(bW[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bZ(bT),ajaxTransport:bZ(bU),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cb(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cc(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bH.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bG,"").replace(bL,bW[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bP),d.crossDomain==null&&(r=bR.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bW[1]&&r[2]==bW[2]&&(r[3]||(r[1]==="http:"?80:443))==(bW[3]||(bW[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bT,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bK.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bM.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bQ,"$1_="+x);d.url=y+(y===d.url?(bM.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bX+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bU,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)ca(g,a[g],c,e);return d.join("&").replace(bD,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cd=f.now(),ce=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cd++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ce.test(b.url)||e&&ce.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ce,l),b.url===j&&(e&&(k=k.replace(ce,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cf=a.ActiveXObject?function(){for(var a in ch)ch[a](0,1)}:!1,cg=0,ch;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ci()||cj()}:ci,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cf&&delete ch[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cg,cf&&(ch||(ch={},f(a).unload(cf)),ch[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var ck={},cl,cm,cn=/^(?:toggle|show|hide)$/,co=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cp,cq=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cr;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g<h;g++)d=this[g],d.style&&(e=d.style.display,!f._data(d,"olddisplay")&&e==="none"&&(e=d.style.display=""),e===""&&f.css(d,"display")==="none"&&f._data(d,"olddisplay",cv(d.nodeName)));for(g=0;g<h;g++){d=this[g];if(d.style){e=d.style.display;if(e===""||e==="none")d.style.display=f._data(d,"olddisplay")||""}}return this},hide:function(a,b,c){if(a||a===0)return this.animate(cu("hide",3),a,b,c);var d,e,g=0,h=this.length;for(;g<h;g++)d=this[g],d.style&&(e=f.css(d,"display"),e!=="none"&&!f._data(d,"olddisplay")&&f._data(d,"olddisplay",e));for(g=0;g<h;g++)this[g].style&&(this[g].style.display="none");return this},_toggle:f.fn.toggle,toggle:function(a,b,c){var d=typeof a=="boolean";f.isFunction(a)&&f.isFunction(b)?this._toggle.apply(this,arguments):a==null||d?this.each(function(){var b=d?a:f(this).is(":hidden");f(this)[b?"show":"hide"]()}):this.animate(cu("toggle",3),a,b,c);return this},fadeTo:function(a,b,c,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){function g(){e.queue===!1&&f._mark(this);var b=f.extend({},e),c=this.nodeType===1,d=c&&f(this).is(":hidden"),g,h,i,j,k,l,m,n,o;b.animatedProperties={};for(i in a){g=f.camelCase(i),i!==g&&(a[g]=a[i],delete a[i]),h=a[g],f.isArray(h)?(b.animatedProperties[g]=h[1],h=a[g]=h[0]):b.animatedProperties[g]=b.specialEasing&&b.specialEasing[g]||b.easing||"swing";if(h==="hide"&&d||h==="show"&&!d)return b.complete.call(this);c&&(g==="height"||g==="width")&&(b.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY],f.css(this,"display")==="inline"&&f.css(this,"float")==="none"&&(!f.support.inlineBlockNeedsLayout||cv(this.nodeName)==="inline"?this.style.display="inline-block":this.style.zoom=1))}b.overflow!=null&&(this.style.overflow="hidden");for(i in a)j=new f.fx(this,b,i),h=a[i],cn.test(h)?(o=f._data(this,"toggle"+i)||(h==="toggle"?d?"show":"hide":0),o?(f._data(this,"toggle"+i,o==="show"?"hide":"show"),j[o]()):j[h]()):(k=co.exec(h),l=j.cur(),k?(m=parseFloat(k[2]),n=k[3]||(f.cssNumber[i]?"":"px"),n!=="px"&&(f.style(this,i,(m||1)+n),l=(m||1)/j.cur()*l,f.style(this,i,l+n)),k[1]&&(m=(k[1]==="-="?-1:1)*m+l),j.custom(l,m,n)):j.custom(l,h,""));return!0}var e=f.speed(b,c,d);if(f.isEmptyObject(a))return this.each(e.complete,[!1]);a=f.extend({},a);return e.queue===!1?this.each(g):this.queue(e.queue,g)},stop:function(a,c,d){typeof a!="string"&&(d=c,c=a,a=b),c&&a!==!1&&this.queue(a||"fx",[]);return this.each(function(){function h(a,b,c){var e=b[c];f.removeData(a,c,!0),e.stop(d)}var b,c=!1,e=f.timers,g=f._data(this);d||f._unmark(!0,this);if(a==null)for(b in g)g[b]&&g[b].stop&&b.indexOf(".run")===b.length-4&&h(this,g,b);else g[b=a+".run"]&&g[b].stop&&h(this,g,b);for(b=e.length;b--;)e[b].elem===this&&(a==null||e[b].queue===a)&&(d?e[b](!0):e[b].saveState(),c=!0,e.splice(b,1));(!d||!c)&&f.dequeue(this,a)})}}),f.each({slideDown:cu("show",1),slideUp:cu("hide",1),slideToggle:cu("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){f.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),f.extend({speed:function(a,b,c){var d=a&&typeof a=="object"?f.extend({},a):{complete:c||!c&&b||f.isFunction(a)&&a,duration:a,easing:c&&b||b&&!f.isFunction(b)&&b};d.duration=f.fx.off?0:typeof d.duration=="number"?d.duration:d.duration in f.fx.speeds?f.fx.speeds[d.duration]:f.fx.speeds._default;if(d.queue==null||d.queue===!0)d.queue="fx";d.old=d.complete,d.complete=function(a){f.isFunction(d.old)&&d.old.call(this),d.queue?f.dequeue(this,d.queue):a!==!1&&f._unmark(this)};return d},easing:{linear:function(a,b,c,d){return c+d*a},swing:function(a,b,c,d){return(-Math.cos(a*Math.PI)/2+.5)*d+c}},timers:[],fx:function(a,b,c){this.options=b,this.elem=a,this.prop=c,b.orig=b.orig||{}}}),f.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this),(f.fx.step[this.prop]||f.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];var a,b=f.css(this.elem,this.prop);return isNaN(a=parseFloat(b))?!b||b==="auto"?0:b:a},custom:function(a,c,d){function h(a){return e.step(a)}var e=this,g=f.fx;this.startTime=cr||cs(),this.end=c,this.now=this.start=a,this.pos=this.state=0,this.unit=d||this.unit||(f.cssNumber[this.prop]?"":"px"),h.queue=this.options.queue,h.elem=this.elem,h.saveState=function(){e.options.hide&&f._data(e.elem,"fxshow"+e.prop)===b&&f._data(e.elem,"fxshow"+e.prop,e.start)},h()&&f.timers.push(h)&&!cp&&(cp=setInterval(g.tick,g.interval))},show:function(){var a=f._data(this.elem,"fxshow"+this.prop);this.options.orig[this.prop]=a||f.style(this.elem,this.prop),this.options.show=!0,a!==b?this.custom(this.cur(),a):this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur()),f(this.elem).show()},hide:function(){this.options.orig[this.prop]=f._data(this.elem,"fxshow"+this.prop)||f.style(this.elem,this.prop),this.options.hide=!0,this.custom(this.cur(),0)},step:function(a){var b,c,d,e=cr||cs(),g=!0,h=this.elem,i=this.options;if(a||e>=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c<b.length;c++)a=b[c],!a()&&b[c]===a&&b.splice(c--,1);b.length||f.fx.stop()},interval:13,stop:function(){clearInterval(cp),cp=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){f.style(a.elem,"opacity",a.now)},_default:function(a){a.elem.style&&a.elem.style[a.prop]!=null?a.elem.style[a.prop]=a.now+a.unit:a.elem[a.prop]=a.now}}}),f.each(["width","height"],function(a,b){f.fx.step[b]=function(a){f.style(a.elem,b,Math.max(0,a.now)+a.unit)}}),f.expr&&f.expr.filters&&(f.expr.filters.animated=function(a){return f.grep(f.timers,function(b){return a===b.elem}).length});var cw=/^t(?:able|d|h)$/i,cx=/^(?:body|html)$/i;"getBoundingClientRect"in c.documentElement?f.fn.offset=function(a){var b=this[0],c;if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);try{c=b.getBoundingClientRect()}catch(d){}var e=b.ownerDocument,g=e.documentElement;if(!c||!f.contains(g,b))return c?{top:c.top,left:c.left}:{top:0,left:0};var h=e.body,i=cy(e),j=g.clientTop||h.clientTop||0,k=g.clientLeft||h.clientLeft||0,l=i.pageYOffset||f.support.boxModel&&g.scrollTop||h.scrollTop,m=i.pageXOffset||f.support.boxModel&&g.scrollLeft||h.scrollLeft,n=c.top+l-j,o=c.left+m-k;return{top:n,left:o}}:f.fn.offset=function(a){var b=this[0];if(a)return this.each(function(b){f.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return f.offset.bodyOffset(b);var c,d=b.offsetParent,e=b,g=b.ownerDocument,h=g.documentElement,i=g.body,j=g.defaultView,k=j?j.getComputedStyle(b,null):b.currentStyle,l=b.offsetTop,m=b.offsetLeft;while((b=b.parentNode)&&b!==i&&b!==h){if(f.support.fixedPosition&&k.position==="fixed")break;c=j?j.getComputedStyle(b,null):b.currentStyle,l-=b.scrollTop,m-=b.scrollLeft,b===d&&(l+=b.offsetTop,m+=b.offsetLeft,f.support.doesNotAddBorder&&(!f.support.doesAddBorderForTableAndCells||!cw.test(b.nodeName))&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),e=d,d=b.offsetParent),f.support.subtractsBorderForOverflowNotVisible&&c.overflow!=="visible"&&(l+=parseFloat(c.borderTopWidth)||0,m+=parseFloat(c.borderLeftWidth)||0),k=c}if(k.position==="relative"||k.position==="static")l+=i.offsetTop,m+=i.offsetLeft;f.support.fixedPosition&&k.position==="fixed"&&(l+=Math.max(h.scrollTop,i.scrollTop),m+=Math.max(h.scrollLeft,i.scrollLeft));return{top:l,left:m}},f.offset={bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;f.support.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(f.css(a,"marginTop"))||0,c+=parseFloat(f.css(a,"marginLeft"))||0);return{top:b,left:c}},setOffset:function(a,b,c){var d=f.css(a,"position");d==="static"&&(a.style.position="relative");var e=f(a),g=e.offset(),h=f.css(a,"top"),i=f.css(a,"left"),j=(d==="absolute"||d==="fixed")&&f.inArray("auto",[h,i])>-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,d,"padding")):this[d]():null},f.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,d,a?"margin":"border")):this[d]():null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNumeric(j)?j:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window);
+jQuery.noConflict();
diff --git a/wp-includes/js/jquery/ui.button.js b/wp-includes/js/jquery/ui.button.js
deleted file mode 100644 (file)
index 62fc95e..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * jQuery UI Button 1.8.12
- *
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Button
- *
- * Depends:
- *     jquery.ui.core.js
- *     jquery.ui.widget.js
- */
-(function(a){var g,i=function(b){a(":ui-button",b.target.form).each(function(){var c=a(this).data("button");setTimeout(function(){c.refresh()},1)})},h=function(b){var c=b.name,d=b.form,f=a([]);if(c)f=d?a(d).find("[name='"+c+"']"):a("[name='"+c+"']",b.ownerDocument).filter(function(){return!this.form});return f};a.widget("ui.button",{options:{disabled:null,text:true,label:null,icons:{primary:null,secondary:null}},_create:function(){this.element.closest("form").unbind("reset.button").bind("reset.button",
-i);if(typeof this.options.disabled!=="boolean")this.options.disabled=this.element.attr("disabled");this._determineButtonType();this.hasTitle=!!this.buttonElement.attr("title");var b=this,c=this.options,d=this.type==="checkbox"||this.type==="radio",f="ui-state-hover"+(!d?" ui-state-active":"");if(c.label===null)c.label=this.buttonElement.html();if(this.element.is(":disabled"))c.disabled=true;this.buttonElement.addClass("ui-button ui-widget ui-state-default ui-corner-all").attr("role","button").bind("mouseenter.button",
-function(){if(!c.disabled){a(this).addClass("ui-state-hover");this===g&&a(this).addClass("ui-state-active")}}).bind("mouseleave.button",function(){c.disabled||a(this).removeClass(f)}).bind("focus.button",function(){a(this).addClass("ui-state-focus")}).bind("blur.button",function(){a(this).removeClass("ui-state-focus")});d&&this.element.bind("change.button",function(){b.refresh()});if(this.type==="checkbox")this.buttonElement.bind("click.button",function(){if(c.disabled)return false;a(this).toggleClass("ui-state-active");
-b.buttonElement.attr("aria-pressed",b.element[0].checked)});else if(this.type==="radio")this.buttonElement.bind("click.button",function(){if(c.disabled)return false;a(this).addClass("ui-state-active");b.buttonElement.attr("aria-pressed",true);var e=b.element[0];h(e).not(e).map(function(){return a(this).button("widget")[0]}).removeClass("ui-state-active").attr("aria-pressed",false)});else{this.buttonElement.bind("mousedown.button",function(){if(c.disabled)return false;a(this).addClass("ui-state-active");
-g=this;a(document).one("mouseup",function(){g=null})}).bind("mouseup.button",function(){if(c.disabled)return false;a(this).removeClass("ui-state-active")}).bind("keydown.button",function(e){if(c.disabled)return false;if(e.keyCode==a.ui.keyCode.SPACE||e.keyCode==a.ui.keyCode.ENTER)a(this).addClass("ui-state-active")}).bind("keyup.button",function(){a(this).removeClass("ui-state-active")});this.buttonElement.is("a")&&this.buttonElement.keyup(function(e){e.keyCode===a.ui.keyCode.SPACE&&a(this).click()})}this._setOption("disabled",
-c.disabled)},_determineButtonType:function(){this.type=this.element.is(":checkbox")?"checkbox":this.element.is(":radio")?"radio":this.element.is("input")?"input":"button";if(this.type==="checkbox"||this.type==="radio"){var b=this.element.parents().filter(":last"),c="label[for="+this.element.attr("id")+"]";this.buttonElement=b.find(c);if(!this.buttonElement.length){b=b.length?b.siblings():this.element.siblings();this.buttonElement=b.filter(c);if(!this.buttonElement.length)this.buttonElement=b.find(c)}this.element.addClass("ui-helper-hidden-accessible");
-(b=this.element.is(":checked"))&&this.buttonElement.addClass("ui-state-active");this.buttonElement.attr("aria-pressed",b)}else this.buttonElement=this.element},widget:function(){return this.buttonElement},destroy:function(){this.element.removeClass("ui-helper-hidden-accessible");this.buttonElement.removeClass("ui-button ui-widget ui-state-default ui-corner-all ui-state-hover ui-state-active  ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only").removeAttr("role").removeAttr("aria-pressed").html(this.buttonElement.find(".ui-button-text").html());
-this.hasTitle||this.buttonElement.removeAttr("title");a.Widget.prototype.destroy.call(this)},_setOption:function(b,c){a.Widget.prototype._setOption.apply(this,arguments);if(b==="disabled")c?this.element.attr("disabled",true):this.element.removeAttr("disabled");this._resetButton()},refresh:function(){var b=this.element.is(":disabled");b!==this.options.disabled&&this._setOption("disabled",b);if(this.type==="radio")h(this.element[0]).each(function(){a(this).is(":checked")?a(this).button("widget").addClass("ui-state-active").attr("aria-pressed",
-true):a(this).button("widget").removeClass("ui-state-active").attr("aria-pressed",false)});else if(this.type==="checkbox")this.element.is(":checked")?this.buttonElement.addClass("ui-state-active").attr("aria-pressed",true):this.buttonElement.removeClass("ui-state-active").attr("aria-pressed",false)},_resetButton:function(){if(this.type==="input")this.options.label&&this.element.val(this.options.label);else{var b=this.buttonElement.removeClass("ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only"),
-c=a("<span></span>").addClass("ui-button-text").html(this.options.label).appendTo(b.empty()).text(),d=this.options.icons,f=d.primary&&d.secondary,e=[];if(d.primary||d.secondary){if(this.options.text)e.push("ui-button-text-icon"+(f?"s":d.primary?"-primary":"-secondary"));d.primary&&b.prepend("<span class='ui-button-icon-primary ui-icon "+d.primary+"'></span>");d.secondary&&b.append("<span class='ui-button-icon-secondary ui-icon "+d.secondary+"'></span>");if(!this.options.text){e.push(f?"ui-button-icons-only":
-"ui-button-icon-only");this.hasTitle||b.attr("title",c)}}else e.push("ui-button-text-only");b.addClass(e.join(" "))}}});a.widget("ui.buttonset",{options:{items:":button, :submit, :reset, :checkbox, :radio, a, :data(button)"},_create:function(){this.element.addClass("ui-buttonset")},_init:function(){this.refresh()},_setOption:function(b,c){b==="disabled"&&this.buttons.button("option",b,c);a.Widget.prototype._setOption.apply(this,arguments)},refresh:function(){this.buttons=this.element.find(this.options.items).filter(":ui-button").button("refresh").end().not(":ui-button").button().end().map(function(){return a(this).button("widget")[0]}).removeClass("ui-corner-all ui-corner-left ui-corner-right").filter(":first").addClass("ui-corner-left").end().filter(":last").addClass("ui-corner-right").end().end()},
-destroy:function(){this.element.removeClass("ui-buttonset");this.buttons.map(function(){return a(this).button("widget")[0]}).removeClass("ui-corner-left ui-corner-right").end().button("destroy");a.Widget.prototype.destroy.call(this)}})})(jQuery);
diff --git a/wp-includes/js/jquery/ui.core.js b/wp-includes/js/jquery/ui.core.js
deleted file mode 100644 (file)
index a8a883b..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-/*!
- * jQuery UI 1.8.12
- *
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI
- */
-(function(c,j){function k(a){return!c(a).parents().andSelf().filter(function(){return c.curCSS(this,"visibility")==="hidden"||c.expr.filters.hidden(this)}).length}c.ui=c.ui||{};if(!c.ui.version){c.extend(c.ui,{version:"1.8.12",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,
-NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});c.fn.extend({_focus:c.fn.focus,focus:function(a,b){return typeof a==="number"?this.each(function(){var d=this;setTimeout(function(){c(d).focus();b&&b.call(d)},a)}):this._focus.apply(this,arguments)},scrollParent:function(){var a;a=c.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?this.parents().filter(function(){return/(relative|absolute|fixed)/.test(c.curCSS(this,
-"position",1))&&/(auto|scroll)/.test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0):this.parents().filter(function(){return/(auto|scroll)/.test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!a.length?c(document):a},zIndex:function(a){if(a!==j)return this.css("zIndex",a);if(this.length){a=c(this[0]);for(var b;a.length&&a[0]!==document;){b=a.css("position");
-if(b==="absolute"||b==="relative"||b==="fixed"){b=parseInt(a.css("zIndex"),10);if(!isNaN(b)&&b!==0)return b}a=a.parent()}}return 0},disableSelection:function(){return this.bind((c.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});c.each(["Width","Height"],function(a,b){function d(f,g,l,m){c.each(e,function(){g-=parseFloat(c.curCSS(f,"padding"+this,true))||0;if(l)g-=parseFloat(c.curCSS(f,
-"border"+this+"Width",true))||0;if(m)g-=parseFloat(c.curCSS(f,"margin"+this,true))||0});return g}var e=b==="Width"?["Left","Right"]:["Top","Bottom"],h=b.toLowerCase(),i={innerWidth:c.fn.innerWidth,innerHeight:c.fn.innerHeight,outerWidth:c.fn.outerWidth,outerHeight:c.fn.outerHeight};c.fn["inner"+b]=function(f){if(f===j)return i["inner"+b].call(this);return this.each(function(){c(this).css(h,d(this,f)+"px")})};c.fn["outer"+b]=function(f,g){if(typeof f!=="number")return i["outer"+b].call(this,f);return this.each(function(){c(this).css(h,
-d(this,f,true,g)+"px")})}});c.extend(c.expr[":"],{data:function(a,b,d){return!!c.data(a,d[3])},focusable:function(a){var b=a.nodeName.toLowerCase(),d=c.attr(a,"tabindex");if("area"===b){b=a.parentNode;d=b.name;if(!a.href||!d||b.nodeName.toLowerCase()!=="map")return false;a=c("img[usemap=#"+d+"]")[0];return!!a&&k(a)}return(/input|select|textarea|button|object/.test(b)?!a.disabled:"a"==b?a.href||!isNaN(d):!isNaN(d))&&k(a)},tabbable:function(a){var b=c.attr(a,"tabindex");return(isNaN(b)||b>=0)&&c(a).is(":focusable")}});
-c(function(){var a=document.body,b=a.appendChild(b=document.createElement("div"));c.extend(b.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});c.support.minHeight=b.offsetHeight===100;c.support.selectstart="onselectstart"in b;a.removeChild(b).style.display="none"});c.extend(c.ui,{plugin:{add:function(a,b,d){a=c.ui[a].prototype;for(var e in d){a.plugins[e]=a.plugins[e]||[];a.plugins[e].push([b,d[e]])}},call:function(a,b,d){if((b=a.plugins[b])&&a.element[0].parentNode)for(var e=0;e<b.length;e++)a.options[b[e][0]]&&
-b[e][1].apply(a.element,d)}},contains:function(a,b){return document.compareDocumentPosition?a.compareDocumentPosition(b)&16:a!==b&&a.contains(b)},hasScroll:function(a,b){if(c(a).css("overflow")==="hidden")return false;b=b&&b==="left"?"scrollLeft":"scrollTop";var d=false;if(a[b]>0)return true;a[b]=1;d=a[b]>0;a[b]=0;return d},isOverAxis:function(a,b,d){return a>b&&a<b+d},isOver:function(a,b,d,e,h,i){return c.ui.isOverAxis(a,d,h)&&c.ui.isOverAxis(b,e,i)}})}})(jQuery);
diff --git a/wp-includes/js/jquery/ui.draggable.js b/wp-includes/js/jquery/ui.draggable.js
deleted file mode 100644 (file)
index 4f7a552..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * jQuery UI Draggable 1.8.12
- *
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Draggables
- *
- * Depends:
- *     jquery.ui.core.js
- *     jquery.ui.mouse.js
- *     jquery.ui.widget.js
- */
-(function(d){d.widget("ui.draggable",d.ui.mouse,{widgetEventPrefix:"drag",options:{addClasses:true,appendTo:"parent",axis:false,connectToSortable:false,containment:false,cursor:"auto",cursorAt:false,grid:false,handle:false,helper:"original",iframeFix:false,opacity:false,refreshPositions:false,revert:false,revertDuration:500,scope:"default",scroll:true,scrollSensitivity:20,scrollSpeed:20,snap:false,snapMode:"both",snapTolerance:20,stack:false,zIndex:false},_create:function(){if(this.options.helper==
-"original"&&!/^(?:r|a|f)/.test(this.element.css("position")))this.element[0].style.position="relative";this.options.addClasses&&this.element.addClass("ui-draggable");this.options.disabled&&this.element.addClass("ui-draggable-disabled");this._mouseInit()},destroy:function(){if(this.element.data("draggable")){this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled");this._mouseDestroy();return this}},_mouseCapture:function(a){var b=
-this.options;if(this.helper||b.disabled||d(a.target).is(".ui-resizable-handle"))return false;this.handle=this._getHandle(a);if(!this.handle)return false;return true},_mouseStart:function(a){var b=this.options;this.helper=this._createHelper(a);this._cacheHelperProportions();if(d.ui.ddmanager)d.ui.ddmanager.current=this;this._cacheMargins();this.cssPosition=this.helper.css("position");this.scrollParent=this.helper.scrollParent();this.offset=this.positionAbs=this.element.offset();this.offset={top:this.offset.top-
-this.margins.top,left:this.offset.left-this.margins.left};d.extend(this.offset,{click:{left:a.pageX-this.offset.left,top:a.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this.position=this._generatePosition(a);this.originalPageX=a.pageX;this.originalPageY=a.pageY;b.cursorAt&&this._adjustOffsetFromHelper(b.cursorAt);b.containment&&this._setContainment();if(this._trigger("start",a)===false){this._clear();return false}this._cacheHelperProportions();
-d.ui.ddmanager&&!b.dropBehaviour&&d.ui.ddmanager.prepareOffsets(this,a);this.helper.addClass("ui-draggable-dragging");this._mouseDrag(a,true);return true},_mouseDrag:function(a,b){this.position=this._generatePosition(a);this.positionAbs=this._convertPositionTo("absolute");if(!b){b=this._uiHash();if(this._trigger("drag",a,b)===false){this._mouseUp({});return false}this.position=b.position}if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+"px";if(!this.options.axis||
-this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";d.ui.ddmanager&&d.ui.ddmanager.drag(this,a);return false},_mouseStop:function(a){var b=false;if(d.ui.ddmanager&&!this.options.dropBehaviour)b=d.ui.ddmanager.drop(this,a);if(this.dropped){b=this.dropped;this.dropped=false}if((!this.element[0]||!this.element[0].parentNode)&&this.options.helper=="original")return false;if(this.options.revert=="invalid"&&!b||this.options.revert=="valid"&&b||this.options.revert===true||d.isFunction(this.options.revert)&&
-this.options.revert.call(this.element,b)){var c=this;d(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){c._trigger("stop",a)!==false&&c._clear()})}else this._trigger("stop",a)!==false&&this._clear();return false},cancel:function(){this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear();return this},_getHandle:function(a){var b=!this.options.handle||!d(this.options.handle,this.element).length?true:false;d(this.options.handle,this.element).find("*").andSelf().each(function(){if(this==
-a.target)b=true});return b},_createHelper:function(a){var b=this.options;a=d.isFunction(b.helper)?d(b.helper.apply(this.element[0],[a])):b.helper=="clone"?this.element.clone():this.element;a.parents("body").length||a.appendTo(b.appendTo=="parent"?this.element[0].parentNode:b.appendTo);a[0]!=this.element[0]&&!/(fixed|absolute)/.test(a.css("position"))&&a.css("position","absolute");return a},_adjustOffsetFromHelper:function(a){if(typeof a=="string")a=a.split(" ");if(d.isArray(a))a={left:+a[0],top:+a[1]||
-0};if("left"in a)this.offset.click.left=a.left+this.margins.left;if("right"in a)this.offset.click.left=this.helperProportions.width-a.right+this.margins.left;if("top"in a)this.offset.click.top=a.top+this.margins.top;if("bottom"in a)this.offset.click.top=this.helperProportions.height-a.bottom+this.margins.top},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var a=this.offsetParent.offset();if(this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],
-this.offsetParent[0])){a.left+=this.scrollParent.scrollLeft();a.top+=this.scrollParent.scrollTop()}if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&d.browser.msie)a={top:0,left:0};return{top:a.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:a.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var a=this.element.position();return{top:a.top-
-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:a.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}else return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),
-height:this.helper.outerHeight()}},_setContainment:function(){var a=this.options;if(a.containment=="parent")a.containment=this.helper[0].parentNode;if(a.containment=="document"||a.containment=="window")this.containment=[(a.containment=="document"?0:d(window).scrollLeft())-this.offset.relative.left-this.offset.parent.left,(a.containment=="document"?0:d(window).scrollTop())-this.offset.relative.top-this.offset.parent.top,(a.containment=="document"?0:d(window).scrollLeft())+d(a.containment=="document"?
-document:window).width()-this.helperProportions.width-this.margins.left,(a.containment=="document"?0:d(window).scrollTop())+(d(a.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(a.containment)&&a.containment.constructor!=Array){var b=d(a.containment)[0];if(b){a=d(a.containment).offset();var c=d(b).css("overflow")!="hidden";this.containment=[a.left+(parseInt(d(b).css("borderLeftWidth"),
-10)||0)+(parseInt(d(b).css("paddingLeft"),10)||0),a.top+(parseInt(d(b).css("borderTopWidth"),10)||0)+(parseInt(d(b).css("paddingTop"),10)||0),a.left+(c?Math.max(b.scrollWidth,b.offsetWidth):b.offsetWidth)-(parseInt(d(b).css("borderLeftWidth"),10)||0)-(parseInt(d(b).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,a.top+(c?Math.max(b.scrollHeight,b.offsetHeight):b.offsetHeight)-(parseInt(d(b).css("borderTopWidth"),10)||0)-(parseInt(d(b).css("paddingBottom"),
-10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom]}}else if(a.containment.constructor==Array)this.containment=a.containment},_convertPositionTo:function(a,b){if(!b)b=this.position;a=a=="absolute"?1:-1;var c=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,f=/(html|body)/i.test(c[0].tagName);return{top:b.top+this.offset.relative.top*a+this.offset.parent.top*a-(d.browser.safari&&
-d.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():f?0:c.scrollTop())*a),left:b.left+this.offset.relative.left*a+this.offset.parent.left*a-(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():f?0:c.scrollLeft())*a)}},_generatePosition:function(a){var b=this.options,c=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],
-this.offsetParent[0]))?this.offsetParent:this.scrollParent,f=/(html|body)/i.test(c[0].tagName),e=a.pageX,g=a.pageY;if(this.originalPosition){if(this.containment){if(a.pageX-this.offset.click.left<this.containment[0])e=this.containment[0]+this.offset.click.left;if(a.pageY-this.offset.click.top<this.containment[1])g=this.containment[1]+this.offset.click.top;if(a.pageX-this.offset.click.left>this.containment[2])e=this.containment[2]+this.offset.click.left;if(a.pageY-this.offset.click.top>this.containment[3])g=
-this.containment[3]+this.offset.click.top}if(b.grid){g=this.originalPageY+Math.round((g-this.originalPageY)/b.grid[1])*b.grid[1];g=this.containment?!(g-this.offset.click.top<this.containment[1]||g-this.offset.click.top>this.containment[3])?g:!(g-this.offset.click.top<this.containment[1])?g-b.grid[1]:g+b.grid[1]:g;e=this.originalPageX+Math.round((e-this.originalPageX)/b.grid[0])*b.grid[0];e=this.containment?!(e-this.offset.click.left<this.containment[0]||e-this.offset.click.left>this.containment[2])?
-e:!(e-this.offset.click.left<this.containment[0])?e-b.grid[0]:e+b.grid[0]:e}}return{top:g-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollTop():f?0:c.scrollTop()),left:e-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():
-f?0:c.scrollLeft())}},_clear:function(){this.helper.removeClass("ui-draggable-dragging");this.helper[0]!=this.element[0]&&!this.cancelHelperRemoval&&this.helper.remove();this.helper=null;this.cancelHelperRemoval=false},_trigger:function(a,b,c){c=c||this._uiHash();d.ui.plugin.call(this,a,[b,c]);if(a=="drag")this.positionAbs=this._convertPositionTo("absolute");return d.Widget.prototype._trigger.call(this,a,b,c)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,
-offset:this.positionAbs}}});d.extend(d.ui.draggable,{version:"1.8.12"});d.ui.plugin.add("draggable","connectToSortable",{start:function(a,b){var c=d(this).data("draggable"),f=c.options,e=d.extend({},b,{item:c.element});c.sortables=[];d(f.connectToSortable).each(function(){var g=d.data(this,"sortable");if(g&&!g.options.disabled){c.sortables.push({instance:g,shouldRevert:g.options.revert});g.refreshPositions();g._trigger("activate",a,e)}})},stop:function(a,b){var c=d(this).data("draggable"),f=d.extend({},
-b,{item:c.element});d.each(c.sortables,function(){if(this.instance.isOver){this.instance.isOver=0;c.cancelHelperRemoval=true;this.instance.cancelHelperRemoval=false;if(this.shouldRevert)this.instance.options.revert=true;this.instance._mouseStop(a);this.instance.options.helper=this.instance.options._helper;c.options.helper=="original"&&this.instance.currentItem.css({top:"auto",left:"auto"})}else{this.instance.cancelHelperRemoval=false;this.instance._trigger("deactivate",a,f)}})},drag:function(a,b){var c=
-d(this).data("draggable"),f=this;d.each(c.sortables,function(){this.instance.positionAbs=c.positionAbs;this.instance.helperProportions=c.helperProportions;this.instance.offset.click=c.offset.click;if(this.instance._intersectsWith(this.instance.containerCache)){if(!this.instance.isOver){this.instance.isOver=1;this.instance.currentItem=d(f).clone().appendTo(this.instance.element).data("sortable-item",true);this.instance.options._helper=this.instance.options.helper;this.instance.options.helper=function(){return b.helper[0]};
-a.target=this.instance.currentItem[0];this.instance._mouseCapture(a,true);this.instance._mouseStart(a,true,true);this.instance.offset.click.top=c.offset.click.top;this.instance.offset.click.left=c.offset.click.left;this.instance.offset.parent.left-=c.offset.parent.left-this.instance.offset.parent.left;this.instance.offset.parent.top-=c.offset.parent.top-this.instance.offset.parent.top;c._trigger("toSortable",a);c.dropped=this.instance.element;c.currentItem=c.element;this.instance.fromOutside=c}this.instance.currentItem&&
-this.instance._mouseDrag(a)}else if(this.instance.isOver){this.instance.isOver=0;this.instance.cancelHelperRemoval=true;this.instance.options.revert=false;this.instance._trigger("out",a,this.instance._uiHash(this.instance));this.instance._mouseStop(a,true);this.instance.options.helper=this.instance.options._helper;this.instance.currentItem.remove();this.instance.placeholder&&this.instance.placeholder.remove();c._trigger("fromSortable",a);c.dropped=false}})}});d.ui.plugin.add("draggable","cursor",
-{start:function(){var a=d("body"),b=d(this).data("draggable").options;if(a.css("cursor"))b._cursor=a.css("cursor");a.css("cursor",b.cursor)},stop:function(){var a=d(this).data("draggable").options;a._cursor&&d("body").css("cursor",a._cursor)}});d.ui.plugin.add("draggable","iframeFix",{start:function(){var a=d(this).data("draggable").options;d(a.iframeFix===true?"iframe":a.iframeFix).each(function(){d('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>').css({width:this.offsetWidth+
-"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1E3}).css(d(this).offset()).appendTo("body")})},stop:function(){d("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)})}});d.ui.plugin.add("draggable","opacity",{start:function(a,b){a=d(b.helper);b=d(this).data("draggable").options;if(a.css("opacity"))b._opacity=a.css("opacity");a.css("opacity",b.opacity)},stop:function(a,b){a=d(this).data("draggable").options;a._opacity&&d(b.helper).css("opacity",
-a._opacity)}});d.ui.plugin.add("draggable","scroll",{start:function(){var a=d(this).data("draggable");if(a.scrollParent[0]!=document&&a.scrollParent[0].tagName!="HTML")a.overflowOffset=a.scrollParent.offset()},drag:function(a){var b=d(this).data("draggable"),c=b.options,f=false;if(b.scrollParent[0]!=document&&b.scrollParent[0].tagName!="HTML"){if(!c.axis||c.axis!="x")if(b.overflowOffset.top+b.scrollParent[0].offsetHeight-a.pageY<c.scrollSensitivity)b.scrollParent[0].scrollTop=f=b.scrollParent[0].scrollTop+
-c.scrollSpeed;else if(a.pageY-b.overflowOffset.top<c.scrollSensitivity)b.scrollParent[0].scrollTop=f=b.scrollParent[0].scrollTop-c.scrollSpeed;if(!c.axis||c.axis!="y")if(b.overflowOffset.left+b.scrollParent[0].offsetWidth-a.pageX<c.scrollSensitivity)b.scrollParent[0].scrollLeft=f=b.scrollParent[0].scrollLeft+c.scrollSpeed;else if(a.pageX-b.overflowOffset.left<c.scrollSensitivity)b.scrollParent[0].scrollLeft=f=b.scrollParent[0].scrollLeft-c.scrollSpeed}else{if(!c.axis||c.axis!="x")if(a.pageY-d(document).scrollTop()<
-c.scrollSensitivity)f=d(document).scrollTop(d(document).scrollTop()-c.scrollSpeed);else if(d(window).height()-(a.pageY-d(document).scrollTop())<c.scrollSensitivity)f=d(document).scrollTop(d(document).scrollTop()+c.scrollSpeed);if(!c.axis||c.axis!="y")if(a.pageX-d(document).scrollLeft()<c.scrollSensitivity)f=d(document).scrollLeft(d(document).scrollLeft()-c.scrollSpeed);else if(d(window).width()-(a.pageX-d(document).scrollLeft())<c.scrollSensitivity)f=d(document).scrollLeft(d(document).scrollLeft()+
-c.scrollSpeed)}f!==false&&d.ui.ddmanager&&!c.dropBehaviour&&d.ui.ddmanager.prepareOffsets(b,a)}});d.ui.plugin.add("draggable","snap",{start:function(){var a=d(this).data("draggable"),b=a.options;a.snapElements=[];d(b.snap.constructor!=String?b.snap.items||":data(draggable)":b.snap).each(function(){var c=d(this),f=c.offset();this!=a.element[0]&&a.snapElements.push({item:this,width:c.outerWidth(),height:c.outerHeight(),top:f.top,left:f.left})})},drag:function(a,b){for(var c=d(this).data("draggable"),
-f=c.options,e=f.snapTolerance,g=b.offset.left,n=g+c.helperProportions.width,m=b.offset.top,o=m+c.helperProportions.height,h=c.snapElements.length-1;h>=0;h--){var i=c.snapElements[h].left,k=i+c.snapElements[h].width,j=c.snapElements[h].top,l=j+c.snapElements[h].height;if(i-e<g&&g<k+e&&j-e<m&&m<l+e||i-e<g&&g<k+e&&j-e<o&&o<l+e||i-e<n&&n<k+e&&j-e<m&&m<l+e||i-e<n&&n<k+e&&j-e<o&&o<l+e){if(f.snapMode!="inner"){var p=Math.abs(j-o)<=e,q=Math.abs(l-m)<=e,r=Math.abs(i-n)<=e,s=Math.abs(k-g)<=e;if(p)b.position.top=
-c._convertPositionTo("relative",{top:j-c.helperProportions.height,left:0}).top-c.margins.top;if(q)b.position.top=c._convertPositionTo("relative",{top:l,left:0}).top-c.margins.top;if(r)b.position.left=c._convertPositionTo("relative",{top:0,left:i-c.helperProportions.width}).left-c.margins.left;if(s)b.position.left=c._convertPositionTo("relative",{top:0,left:k}).left-c.margins.left}var t=p||q||r||s;if(f.snapMode!="outer"){p=Math.abs(j-m)<=e;q=Math.abs(l-o)<=e;r=Math.abs(i-g)<=e;s=Math.abs(k-n)<=e;if(p)b.position.top=
-c._convertPositionTo("relative",{top:j,left:0}).top-c.margins.top;if(q)b.position.top=c._convertPositionTo("relative",{top:l-c.helperProportions.height,left:0}).top-c.margins.top;if(r)b.position.left=c._convertPositionTo("relative",{top:0,left:i}).left-c.margins.left;if(s)b.position.left=c._convertPositionTo("relative",{top:0,left:k-c.helperProportions.width}).left-c.margins.left}if(!c.snapElements[h].snapping&&(p||q||r||s||t))c.options.snap.snap&&c.options.snap.snap.call(c.element,a,d.extend(c._uiHash(),
-{snapItem:c.snapElements[h].item}));c.snapElements[h].snapping=p||q||r||s||t}else{c.snapElements[h].snapping&&c.options.snap.release&&c.options.snap.release.call(c.element,a,d.extend(c._uiHash(),{snapItem:c.snapElements[h].item}));c.snapElements[h].snapping=false}}}});d.ui.plugin.add("draggable","stack",{start:function(){var a=d(this).data("draggable").options;a=d.makeArray(d(a.stack)).sort(function(c,f){return(parseInt(d(c).css("zIndex"),10)||0)-(parseInt(d(f).css("zIndex"),10)||0)});if(a.length){var b=
-parseInt(a[0].style.zIndex)||0;d(a).each(function(c){this.style.zIndex=b+c});this[0].style.zIndex=b+a.length}}});d.ui.plugin.add("draggable","zIndex",{start:function(a,b){a=d(b.helper);b=d(this).data("draggable").options;if(a.css("zIndex"))b._zIndex=a.css("zIndex");a.css("zIndex",b.zIndex)},stop:function(a,b){a=d(this).data("draggable").options;a._zIndex&&d(b.helper).css("zIndex",a._zIndex)}})})(jQuery);
diff --git a/wp-includes/js/jquery/ui.mouse.js b/wp-includes/js/jquery/ui.mouse.js
deleted file mode 100644 (file)
index 03a69eb..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-/*!
- * jQuery UI Mouse 1.8.12
- *
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Mouse
- *
- * Depends:
- *     jquery.ui.widget.js
- */
-(function(b){b.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var a=this;this.element.bind("mousedown."+this.widgetName,function(c){return a._mouseDown(c)}).bind("click."+this.widgetName,function(c){if(true===b.data(c.target,a.widgetName+".preventClickEvent")){b.removeData(c.target,a.widgetName+".preventClickEvent");c.stopImmediatePropagation();return false}});this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName)},_mouseDown:function(a){a.originalEvent=
-a.originalEvent||{};if(!a.originalEvent.mouseHandled){this._mouseStarted&&this._mouseUp(a);this._mouseDownEvent=a;var c=this,e=a.which==1,f=typeof this.options.cancel=="string"?b(a.target).parents().add(a.target).filter(this.options.cancel).length:false;if(!e||f||!this._mouseCapture(a))return true;this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet)this._mouseDelayTimer=setTimeout(function(){c.mouseDelayMet=true},this.options.delay);if(this._mouseDistanceMet(a)&&this._mouseDelayMet(a)){this._mouseStarted=
-this._mouseStart(a)!==false;if(!this._mouseStarted){a.preventDefault();return true}}true===b.data(a.target,this.widgetName+".preventClickEvent")&&b.removeData(a.target,this.widgetName+".preventClickEvent");this._mouseMoveDelegate=function(d){return c._mouseMove(d)};this._mouseUpDelegate=function(d){return c._mouseUp(d)};b(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);a.preventDefault();return a.originalEvent.mouseHandled=
-true}},_mouseMove:function(a){if(b.browser.msie&&!(document.documentMode>=9)&&!a.button)return this._mouseUp(a);if(this._mouseStarted){this._mouseDrag(a);return a.preventDefault()}if(this._mouseDistanceMet(a)&&this._mouseDelayMet(a))(this._mouseStarted=this._mouseStart(this._mouseDownEvent,a)!==false)?this._mouseDrag(a):this._mouseUp(a);return!this._mouseStarted},_mouseUp:function(a){b(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);
-if(this._mouseStarted){this._mouseStarted=false;a.target==this._mouseDownEvent.target&&b.data(a.target,this.widgetName+".preventClickEvent",true);this._mouseStop(a)}return false},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return true}})})(jQuery);
diff --git a/wp-includes/js/jquery/ui.resizable.js b/wp-includes/js/jquery/ui.resizable.js
deleted file mode 100644 (file)
index c7972a8..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * jQuery UI Resizable 1.8.12
- *
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Resizables
- *
- * Depends:
- *     jquery.ui.core.js
- *     jquery.ui.mouse.js
- *     jquery.ui.widget.js
- */
-(function(e){e.widget("ui.resizable",e.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,containment:false,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1E3},_create:function(){var b=this,a=this.options;this.element.addClass("ui-resizable");e.extend(this,{_aspectRatio:!!a.aspectRatio,aspectRatio:a.aspectRatio,originalElement:this.element,
-_proportionallyResizeElements:[],_helper:a.helper||a.ghost||a.animate?a.helper||"ui-resizable-helper":null});if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)){/relative/.test(this.element.css("position"))&&e.browser.opera&&this.element.css({position:"relative",top:"auto",left:"auto"});this.element.wrap(e('<div class="ui-wrapper" style="overflow: hidden;"></div>').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),
-top:this.element.css("top"),left:this.element.css("left")}));this.element=this.element.parent().data("resizable",this.element.data("resizable"));this.elementIsWrapper=true;this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});this.originalResizeStyle=
-this.originalElement.css("resize");this.originalElement.css("resize","none");this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"}));this.originalElement.css({margin:this.originalElement.css("margin")});this._proportionallyResize()}this.handles=a.handles||(!e(".ui-resizable-handle",this.element).length?"e,s,se":{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",
-nw:".ui-resizable-nw"});if(this.handles.constructor==String){if(this.handles=="all")this.handles="n,e,s,w,se,sw,ne,nw";var c=this.handles.split(",");this.handles={};for(var d=0;d<c.length;d++){var f=e.trim(c[d]),g=e('<div class="ui-resizable-handle '+("ui-resizable-"+f)+'"></div>');/sw|se|ne|nw/.test(f)&&g.css({zIndex:++a.zIndex});"se"==f&&g.addClass("ui-icon ui-icon-gripsmall-diagonal-se");this.handles[f]=".ui-resizable-"+f;this.element.append(g)}}this._renderAxis=function(h){h=h||this.element;for(var i in this.handles){if(this.handles[i].constructor==
-String)this.handles[i]=e(this.handles[i],this.element).show();if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var j=e(this.handles[i],this.element),k=0;k=/sw|ne|nw|se|n|s/.test(i)?j.outerHeight():j.outerWidth();j=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join("");h.css(j,k);this._proportionallyResize()}e(this.handles[i])}};this._renderAxis(this.element);this._handles=e(".ui-resizable-handle",this.element).disableSelection();
-this._handles.mouseover(function(){if(!b.resizing){if(this.className)var h=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);b.axis=h&&h[1]?h[1]:"se"}});if(a.autoHide){this._handles.hide();e(this.element).addClass("ui-resizable-autohide").hover(function(){e(this).removeClass("ui-resizable-autohide");b._handles.show()},function(){if(!b.resizing){e(this).addClass("ui-resizable-autohide");b._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy();var b=function(c){e(c).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};
-if(this.elementIsWrapper){b(this.element);var a=this.element;a.after(this.originalElement.css({position:a.css("position"),width:a.outerWidth(),height:a.outerHeight(),top:a.css("top"),left:a.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle);b(this.originalElement);return this},_mouseCapture:function(b){var a=false;for(var c in this.handles)if(e(this.handles[c])[0]==b.target)a=true;return!this.options.disabled&&a},_mouseStart:function(b){var a=this.options,c=this.element.position(),
-d=this.element;this.resizing=true;this.documentScroll={top:e(document).scrollTop(),left:e(document).scrollLeft()};if(d.is(".ui-draggable")||/absolute/.test(d.css("position")))d.css({position:"absolute",top:c.top,left:c.left});e.browser.opera&&/relative/.test(d.css("position"))&&d.css({position:"relative",top:"auto",left:"auto"});this._renderProxy();c=m(this.helper.css("left"));var f=m(this.helper.css("top"));if(a.containment){c+=e(a.containment).scrollLeft()||0;f+=e(a.containment).scrollTop()||0}this.offset=
-this.helper.offset();this.position={left:c,top:f};this.size=this._helper?{width:d.outerWidth(),height:d.outerHeight()}:{width:d.width(),height:d.height()};this.originalSize=this._helper?{width:d.outerWidth(),height:d.outerHeight()}:{width:d.width(),height:d.height()};this.originalPosition={left:c,top:f};this.sizeDiff={width:d.outerWidth()-d.width(),height:d.outerHeight()-d.height()};this.originalMousePosition={left:b.pageX,top:b.pageY};this.aspectRatio=typeof a.aspectRatio=="number"?a.aspectRatio:
-this.originalSize.width/this.originalSize.height||1;a=e(".ui-resizable-"+this.axis).css("cursor");e("body").css("cursor",a=="auto"?this.axis+"-resize":a);d.addClass("ui-resizable-resizing");this._propagate("start",b);return true},_mouseDrag:function(b){var a=this.helper,c=this.originalMousePosition,d=this._change[this.axis];if(!d)return false;c=d.apply(this,[b,b.pageX-c.left||0,b.pageY-c.top||0]);if(this._aspectRatio||b.shiftKey)c=this._updateRatio(c,b);c=this._respectSize(c,b);this._propagate("resize",
-b);a.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize();this._updateCache(c);this._trigger("resize",b,this.ui());return false},_mouseStop:function(b){this.resizing=false;var a=this.options,c=this;if(this._helper){var d=this._proportionallyResizeElements,f=d.length&&/textarea/i.test(d[0].nodeName);d=f&&e.ui.hasScroll(d[0],"left")?0:c.sizeDiff.height;
-f=f?0:c.sizeDiff.width;f={width:c.helper.width()-f,height:c.helper.height()-d};d=parseInt(c.element.css("left"),10)+(c.position.left-c.originalPosition.left)||null;var g=parseInt(c.element.css("top"),10)+(c.position.top-c.originalPosition.top)||null;a.animate||this.element.css(e.extend(f,{top:g,left:d}));c.helper.height(c.size.height);c.helper.width(c.size.width);this._helper&&!a.animate&&this._proportionallyResize()}e("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");
-this._propagate("stop",b);this._helper&&this.helper.remove();return false},_updateCache:function(b){this.offset=this.helper.offset();if(l(b.left))this.position.left=b.left;if(l(b.top))this.position.top=b.top;if(l(b.height))this.size.height=b.height;if(l(b.width))this.size.width=b.width},_updateRatio:function(b){var a=this.position,c=this.size,d=this.axis;if(b.height)b.width=c.height*this.aspectRatio;else if(b.width)b.height=c.width/this.aspectRatio;if(d=="sw"){b.left=a.left+(c.width-b.width);b.top=
-null}if(d=="nw"){b.top=a.top+(c.height-b.height);b.left=a.left+(c.width-b.width)}return b},_respectSize:function(b){var a=this.options,c=this.axis,d=l(b.width)&&a.maxWidth&&a.maxWidth<b.width,f=l(b.height)&&a.maxHeight&&a.maxHeight<b.height,g=l(b.width)&&a.minWidth&&a.minWidth>b.width,h=l(b.height)&&a.minHeight&&a.minHeight>b.height;if(g)b.width=a.minWidth;if(h)b.height=a.minHeight;if(d)b.width=a.maxWidth;if(f)b.height=a.maxHeight;var i=this.originalPosition.left+this.originalSize.width,j=this.position.top+
-this.size.height,k=/sw|nw|w/.test(c);c=/nw|ne|n/.test(c);if(g&&k)b.left=i-a.minWidth;if(d&&k)b.left=i-a.maxWidth;if(h&&c)b.top=j-a.minHeight;if(f&&c)b.top=j-a.maxHeight;if((a=!b.width&&!b.height)&&!b.left&&b.top)b.top=null;else if(a&&!b.top&&b.left)b.left=null;return b},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var b=this.helper||this.element,a=0;a<this._proportionallyResizeElements.length;a++){var c=this._proportionallyResizeElements[a];if(!this.borderDif){var d=
-[c.css("borderTopWidth"),c.css("borderRightWidth"),c.css("borderBottomWidth"),c.css("borderLeftWidth")],f=[c.css("paddingTop"),c.css("paddingRight"),c.css("paddingBottom"),c.css("paddingLeft")];this.borderDif=e.map(d,function(g,h){g=parseInt(g,10)||0;h=parseInt(f[h],10)||0;return g+h})}e.browser.msie&&(e(b).is(":hidden")||e(b).parents(":hidden").length)||c.css({height:b.height()-this.borderDif[0]-this.borderDif[2]||0,width:b.width()-this.borderDif[1]-this.borderDif[3]||0})}},_renderProxy:function(){var b=
-this.options;this.elementOffset=this.element.offset();if(this._helper){this.helper=this.helper||e('<div style="overflow:hidden;"></div>');var a=e.browser.msie&&e.browser.version<7,c=a?1:0;a=a?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+a,height:this.element.outerHeight()+a,position:"absolute",left:this.elementOffset.left-c+"px",top:this.elementOffset.top-c+"px",zIndex:++b.zIndex});this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(b,
-a){return{width:this.originalSize.width+a}},w:function(b,a){return{left:this.originalPosition.left+a,width:this.originalSize.width-a}},n:function(b,a,c){return{top:this.originalPosition.top+c,height:this.originalSize.height-c}},s:function(b,a,c){return{height:this.originalSize.height+c}},se:function(b,a,c){return e.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[b,a,c]))},sw:function(b,a,c){return e.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,a,
-c]))},ne:function(b,a,c){return e.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[b,a,c]))},nw:function(b,a,c){return e.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,a,c]))}},_propagate:function(b,a){e.ui.plugin.call(this,b,[a,this.ui()]);b!="resize"&&this._trigger(b,a,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,
-originalPosition:this.originalPosition}}});e.extend(e.ui.resizable,{version:"1.8.12"});e.ui.plugin.add("resizable","alsoResize",{start:function(){var b=e(this).data("resizable").options,a=function(c){e(c).each(function(){var d=e(this);d.data("resizable-alsoresize",{width:parseInt(d.width(),10),height:parseInt(d.height(),10),left:parseInt(d.css("left"),10),top:parseInt(d.css("top"),10),position:d.css("position")})})};if(typeof b.alsoResize=="object"&&!b.alsoResize.parentNode)if(b.alsoResize.length){b.alsoResize=
-b.alsoResize[0];a(b.alsoResize)}else e.each(b.alsoResize,function(c){a(c)});else a(b.alsoResize)},resize:function(b,a){var c=e(this).data("resizable");b=c.options;var d=c.originalSize,f=c.originalPosition,g={height:c.size.height-d.height||0,width:c.size.width-d.width||0,top:c.position.top-f.top||0,left:c.position.left-f.left||0},h=function(i,j){e(i).each(function(){var k=e(this),q=e(this).data("resizable-alsoresize"),p={},r=j&&j.length?j:k.parents(a.originalElement[0]).length?["width","height"]:["width",
-"height","top","left"];e.each(r,function(n,o){if((n=(q[o]||0)+(g[o]||0))&&n>=0)p[o]=n||null});if(e.browser.opera&&/relative/.test(k.css("position"))){c._revertToRelativePosition=true;k.css({position:"absolute",top:"auto",left:"auto"})}k.css(p)})};typeof b.alsoResize=="object"&&!b.alsoResize.nodeType?e.each(b.alsoResize,function(i,j){h(i,j)}):h(b.alsoResize)},stop:function(){var b=e(this).data("resizable"),a=b.options,c=function(d){e(d).each(function(){var f=e(this);f.css({position:f.data("resizable-alsoresize").position})})};
-if(b._revertToRelativePosition){b._revertToRelativePosition=false;typeof a.alsoResize=="object"&&!a.alsoResize.nodeType?e.each(a.alsoResize,function(d){c(d)}):c(a.alsoResize)}e(this).removeData("resizable-alsoresize")}});e.ui.plugin.add("resizable","animate",{stop:function(b){var a=e(this).data("resizable"),c=a.options,d=a._proportionallyResizeElements,f=d.length&&/textarea/i.test(d[0].nodeName),g=f&&e.ui.hasScroll(d[0],"left")?0:a.sizeDiff.height;f={width:a.size.width-(f?0:a.sizeDiff.width),height:a.size.height-
-g};g=parseInt(a.element.css("left"),10)+(a.position.left-a.originalPosition.left)||null;var h=parseInt(a.element.css("top"),10)+(a.position.top-a.originalPosition.top)||null;a.element.animate(e.extend(f,h&&g?{top:h,left:g}:{}),{duration:c.animateDuration,easing:c.animateEasing,step:function(){var i={width:parseInt(a.element.css("width"),10),height:parseInt(a.element.css("height"),10),top:parseInt(a.element.css("top"),10),left:parseInt(a.element.css("left"),10)};d&&d.length&&e(d[0]).css({width:i.width,
-height:i.height});a._updateCache(i);a._propagate("resize",b)}})}});e.ui.plugin.add("resizable","containment",{start:function(){var b=e(this).data("resizable"),a=b.element,c=b.options.containment;if(a=c instanceof e?c.get(0):/parent/.test(c)?a.parent().get(0):c){b.containerElement=e(a);if(/document/.test(c)||c==document){b.containerOffset={left:0,top:0};b.containerPosition={left:0,top:0};b.parentData={element:e(document),left:0,top:0,width:e(document).width(),height:e(document).height()||document.body.parentNode.scrollHeight}}else{var d=
-e(a),f=[];e(["Top","Right","Left","Bottom"]).each(function(i,j){f[i]=m(d.css("padding"+j))});b.containerOffset=d.offset();b.containerPosition=d.position();b.containerSize={height:d.innerHeight()-f[3],width:d.innerWidth()-f[1]};c=b.containerOffset;var g=b.containerSize.height,h=b.containerSize.width;h=e.ui.hasScroll(a,"left")?a.scrollWidth:h;g=e.ui.hasScroll(a)?a.scrollHeight:g;b.parentData={element:a,left:c.left,top:c.top,width:h,height:g}}}},resize:function(b){var a=e(this).data("resizable"),c=a.options,
-d=a.containerOffset,f=a.position;b=a._aspectRatio||b.shiftKey;var g={top:0,left:0},h=a.containerElement;if(h[0]!=document&&/static/.test(h.css("position")))g=d;if(f.left<(a._helper?d.left:0)){a.size.width+=a._helper?a.position.left-d.left:a.position.left-g.left;if(b)a.size.height=a.size.width/c.aspectRatio;a.position.left=c.helper?d.left:0}if(f.top<(a._helper?d.top:0)){a.size.height+=a._helper?a.position.top-d.top:a.position.top;if(b)a.size.width=a.size.height*c.aspectRatio;a.position.top=a._helper?
-d.top:0}a.offset.left=a.parentData.left+a.position.left;a.offset.top=a.parentData.top+a.position.top;c=Math.abs((a._helper?a.offset.left-g.left:a.offset.left-g.left)+a.sizeDiff.width);d=Math.abs((a._helper?a.offset.top-g.top:a.offset.top-d.top)+a.sizeDiff.height);f=a.containerElement.get(0)==a.element.parent().get(0);g=/relative|absolute/.test(a.containerElement.css("position"));if(f&&g)c-=a.parentData.left;if(c+a.size.width>=a.parentData.width){a.size.width=a.parentData.width-c;if(b)a.size.height=
-a.size.width/a.aspectRatio}if(d+a.size.height>=a.parentData.height){a.size.height=a.parentData.height-d;if(b)a.size.width=a.size.height*a.aspectRatio}},stop:function(){var b=e(this).data("resizable"),a=b.options,c=b.containerOffset,d=b.containerPosition,f=b.containerElement,g=e(b.helper),h=g.offset(),i=g.outerWidth()-b.sizeDiff.width;g=g.outerHeight()-b.sizeDiff.height;b._helper&&!a.animate&&/relative/.test(f.css("position"))&&e(this).css({left:h.left-d.left-c.left,width:i,height:g});b._helper&&!a.animate&&
-/static/.test(f.css("position"))&&e(this).css({left:h.left-d.left-c.left,width:i,height:g})}});e.ui.plugin.add("resizable","ghost",{start:function(){var b=e(this).data("resizable"),a=b.options,c=b.size;b.ghost=b.originalElement.clone();b.ghost.css({opacity:0.25,display:"block",position:"relative",height:c.height,width:c.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof a.ghost=="string"?a.ghost:"");b.ghost.appendTo(b.helper)},resize:function(){var b=e(this).data("resizable");
-b.ghost&&b.ghost.css({position:"relative",height:b.size.height,width:b.size.width})},stop:function(){var b=e(this).data("resizable");b.ghost&&b.helper&&b.helper.get(0).removeChild(b.ghost.get(0))}});e.ui.plugin.add("resizable","grid",{resize:function(){var b=e(this).data("resizable"),a=b.options,c=b.size,d=b.originalSize,f=b.originalPosition,g=b.axis;a.grid=typeof a.grid=="number"?[a.grid,a.grid]:a.grid;var h=Math.round((c.width-d.width)/(a.grid[0]||1))*(a.grid[0]||1);a=Math.round((c.height-d.height)/
-(a.grid[1]||1))*(a.grid[1]||1);if(/^(se|s|e)$/.test(g)){b.size.width=d.width+h;b.size.height=d.height+a}else if(/^(ne)$/.test(g)){b.size.width=d.width+h;b.size.height=d.height+a;b.position.top=f.top-a}else{if(/^(sw)$/.test(g)){b.size.width=d.width+h;b.size.height=d.height+a}else{b.size.width=d.width+h;b.size.height=d.height+a;b.position.top=f.top-a}b.position.left=f.left-h}}});var m=function(b){return parseInt(b,10)||0},l=function(b){return!isNaN(parseInt(b,10))}})(jQuery);
diff --git a/wp-includes/js/jquery/ui.widget.js b/wp-includes/js/jquery/ui.widget.js
deleted file mode 100644 (file)
index 54ff2fe..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-/*!
- * jQuery UI Widget 1.8.12
- *
- * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
- * Dual licensed under the MIT or GPL Version 2 licenses.
- * http://jquery.org/license
- *
- * http://docs.jquery.com/UI/Widget
- */
-(function(b,j){if(b.cleanData){var k=b.cleanData;b.cleanData=function(a){for(var c=0,d;(d=a[c])!=null;c++)b(d).triggerHandler("remove");k(a)}}else{var l=b.fn.remove;b.fn.remove=function(a,c){return this.each(function(){if(!c)if(!a||b.filter(a,[this]).length)b("*",this).add([this]).each(function(){b(this).triggerHandler("remove")});return l.call(b(this),a,c)})}}b.widget=function(a,c,d){var e=a.split(".")[0],f;a=a.split(".")[1];f=e+"-"+a;if(!d){d=c;c=b.Widget}b.expr[":"][f]=function(h){return!!b.data(h,
-a)};b[e]=b[e]||{};b[e][a]=function(h,g){arguments.length&&this._createWidget(h,g)};c=new c;c.options=b.extend(true,{},c.options);b[e][a].prototype=b.extend(true,c,{namespace:e,widgetName:a,widgetEventPrefix:b[e][a].prototype.widgetEventPrefix||a,widgetBaseClass:f},d);b.widget.bridge(a,b[e][a])};b.widget.bridge=function(a,c){b.fn[a]=function(d){var e=typeof d==="string",f=Array.prototype.slice.call(arguments,1),h=this;d=!e&&f.length?b.extend.apply(null,[true,d].concat(f)):d;if(e&&d.charAt(0)==="_")return h;
-e?this.each(function(){var g=b.data(this,a),i=g&&b.isFunction(g[d])?g[d].apply(g,f):g;if(i!==g&&i!==j){h=i;return false}}):this.each(function(){var g=b.data(this,a);g?g.option(d||{})._init():b.data(this,a,new c(d,this))});return h}};b.Widget=function(a,c){arguments.length&&this._createWidget(a,c)};b.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(a,c){b.data(c,this.widgetName,this);this.element=b(c);this.options=b.extend(true,{},this.options,
-this._getCreateOptions(),a);var d=this;this.element.bind("remove."+this.widgetName,function(){d.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return b.metadata&&b.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled ui-state-disabled")},
-widget:function(){return this.element},option:function(a,c){var d=a;if(arguments.length===0)return b.extend({},this.options);if(typeof a==="string"){if(c===j)return this.options[a];d={};d[a]=c}this._setOptions(d);return this},_setOptions:function(a){var c=this;b.each(a,function(d,e){c._setOption(d,e)});return this},_setOption:function(a,c){this.options[a]=c;if(a==="disabled")this.widget()[c?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",c);return this},
-enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(a,c,d){var e=this.options[a];c=b.Event(c);c.type=(a===this.widgetEventPrefix?a:this.widgetEventPrefix+a).toLowerCase();d=d||{};if(c.originalEvent){a=b.event.props.length;for(var f;a;){f=b.event.props[--a];c[f]=c.originalEvent[f]}}this.element.trigger(c,d);return!(b.isFunction(e)&&e.call(this.element[0],c,d)===false||c.isDefaultPrevented())}}})(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.effects.blind.min.js b/wp-includes/js/jquery/ui/jquery.effects.blind.min.js
new file mode 100644 (file)
index 0000000..1f80e26
--- /dev/null
@@ -0,0 +1,14 @@
+/*
+ * jQuery UI Effects Blind 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Blind
+ *
+ * Depends:
+ *     jquery.effects.core.js
+ */
+(function(b){b.effects.blind=function(c){return this.queue(function(){var a=b(this),g=["position","top","bottom","left","right"],f=b.effects.setMode(a,c.options.mode||"hide"),d=c.options.direction||"vertical";b.effects.save(a,g);a.show();var e=b.effects.createWrapper(a).css({overflow:"hidden"}),h=d=="vertical"?"height":"width";d=d=="vertical"?e.height():e.width();f=="show"&&e.css(h,0);var i={};i[h]=f=="show"?d:0;e.animate(i,c.duration,c.options.easing,function(){f=="hide"&&a.hide();b.effects.restore(a,
+g);b.effects.removeWrapper(a);c.callback&&c.callback.apply(a[0],arguments);a.dequeue()})})}})(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.effects.bounce.min.js b/wp-includes/js/jquery/ui/jquery.effects.bounce.min.js
new file mode 100644 (file)
index 0000000..af330e4
--- /dev/null
@@ -0,0 +1,15 @@
+/*
+ * jQuery UI Effects Bounce 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Bounce
+ *
+ * Depends:
+ *     jquery.effects.core.js
+ */
+(function(e){e.effects.bounce=function(b){return this.queue(function(){var a=e(this),l=["position","top","bottom","left","right"],h=e.effects.setMode(a,b.options.mode||"effect"),d=b.options.direction||"up",c=b.options.distance||20,m=b.options.times||5,i=b.duration||250;/show|hide/.test(h)&&l.push("opacity");e.effects.save(a,l);a.show();e.effects.createWrapper(a);var f=d=="up"||d=="down"?"top":"left";d=d=="up"||d=="left"?"pos":"neg";c=b.options.distance||(f=="top"?a.outerHeight({margin:true})/3:a.outerWidth({margin:true})/
+3);if(h=="show")a.css("opacity",0).css(f,d=="pos"?-c:c);if(h=="hide")c/=m*2;h!="hide"&&m--;if(h=="show"){var g={opacity:1};g[f]=(d=="pos"?"+=":"-=")+c;a.animate(g,i/2,b.options.easing);c/=2;m--}for(g=0;g<m;g++){var j={},k={};j[f]=(d=="pos"?"-=":"+=")+c;k[f]=(d=="pos"?"+=":"-=")+c;a.animate(j,i/2,b.options.easing).animate(k,i/2,b.options.easing);c=h=="hide"?c*2:c/2}if(h=="hide"){g={opacity:0};g[f]=(d=="pos"?"-=":"+=")+c;a.animate(g,i/2,b.options.easing,function(){a.hide();e.effects.restore(a,l);e.effects.removeWrapper(a);
+b.callback&&b.callback.apply(this,arguments)})}else{j={};k={};j[f]=(d=="pos"?"-=":"+=")+c;k[f]=(d=="pos"?"+=":"-=")+c;a.animate(j,i/2,b.options.easing).animate(k,i/2,b.options.easing,function(){e.effects.restore(a,l);e.effects.removeWrapper(a);b.callback&&b.callback.apply(this,arguments)})}a.queue("fx",function(){a.dequeue()});a.dequeue()})}})(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.effects.clip.min.js b/wp-includes/js/jquery/ui/jquery.effects.clip.min.js
new file mode 100644 (file)
index 0000000..4869b6b
--- /dev/null
@@ -0,0 +1,14 @@
+/*
+ * jQuery UI Effects Clip 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Clip
+ *
+ * Depends:
+ *     jquery.effects.core.js
+ */
+(function(b){b.effects.clip=function(e){return this.queue(function(){var a=b(this),i=["position","top","bottom","left","right","height","width"],f=b.effects.setMode(a,e.options.mode||"hide"),c=e.options.direction||"vertical";b.effects.save(a,i);a.show();var d=b.effects.createWrapper(a).css({overflow:"hidden"});d=a[0].tagName=="IMG"?d:a;var g={size:c=="vertical"?"height":"width",position:c=="vertical"?"top":"left"};c=c=="vertical"?d.height():d.width();if(f=="show"){d.css(g.size,0);d.css(g.position,
+c/2)}var h={};h[g.size]=f=="show"?c:0;h[g.position]=f=="show"?0:c/2;d.animate(h,{queue:false,duration:e.duration,easing:e.options.easing,complete:function(){f=="hide"&&a.hide();b.effects.restore(a,i);b.effects.removeWrapper(a);e.callback&&e.callback.apply(a[0],arguments);a.dequeue()}})})}})(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.effects.core.min.js b/wp-includes/js/jquery/ui/jquery.effects.core.min.js
new file mode 100644 (file)
index 0000000..a2bec45
--- /dev/null
@@ -0,0 +1,31 @@
+/*
+ * jQuery UI Effects 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/
+ */
+jQuery.effects||function(f,j){function m(c){var a;if(c&&c.constructor==Array&&c.length==3)return c;if(a=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(c))return[parseInt(a[1],10),parseInt(a[2],10),parseInt(a[3],10)];if(a=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(c))return[parseFloat(a[1])*2.55,parseFloat(a[2])*2.55,parseFloat(a[3])*2.55];if(a=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(c))return[parseInt(a[1],
+16),parseInt(a[2],16),parseInt(a[3],16)];if(a=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(c))return[parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16),parseInt(a[3]+a[3],16)];if(/rgba\(0, 0, 0, 0\)/.exec(c))return n.transparent;return n[f.trim(c).toLowerCase()]}function s(c,a){var b;do{b=f.curCSS(c,a);if(b!=""&&b!="transparent"||f.nodeName(c,"body"))break;a="backgroundColor"}while(c=c.parentNode);return m(b)}function o(){var c=document.defaultView?document.defaultView.getComputedStyle(this,null):this.currentStyle,
+a={},b,d;if(c&&c.length&&c[0]&&c[c[0]])for(var e=c.length;e--;){b=c[e];if(typeof c[b]=="string"){d=b.replace(/\-(\w)/g,function(g,h){return h.toUpperCase()});a[d]=c[b]}}else for(b in c)if(typeof c[b]==="string")a[b]=c[b];return a}function p(c){var a,b;for(a in c){b=c[a];if(b==null||f.isFunction(b)||a in t||/scrollbar/.test(a)||!/color/i.test(a)&&isNaN(parseFloat(b)))delete c[a]}return c}function u(c,a){var b={_:0},d;for(d in a)if(c[d]!=a[d])b[d]=a[d];return b}function k(c,a,b,d){if(typeof c=="object"){d=
+a;b=null;a=c;c=a.effect}if(f.isFunction(a)){d=a;b=null;a={}}if(typeof a=="number"||f.fx.speeds[a]){d=b;b=a;a={}}if(f.isFunction(b)){d=b;b=null}a=a||{};b=b||a.duration;b=f.fx.off?0:typeof b=="number"?b:b in f.fx.speeds?f.fx.speeds[b]:f.fx.speeds._default;d=d||a.complete;return[c,a,b,d]}function l(c){if(!c||typeof c==="number"||f.fx.speeds[c])return true;if(typeof c==="string"&&!f.effects[c])return true;return false}f.effects={};f.each(["backgroundColor","borderBottomColor","borderLeftColor","borderRightColor",
+"borderTopColor","borderColor","color","outlineColor"],function(c,a){f.fx.step[a]=function(b){if(!b.colorInit){b.start=s(b.elem,a);b.end=m(b.end);b.colorInit=true}b.elem.style[a]="rgb("+Math.max(Math.min(parseInt(b.pos*(b.end[0]-b.start[0])+b.start[0],10),255),0)+","+Math.max(Math.min(parseInt(b.pos*(b.end[1]-b.start[1])+b.start[1],10),255),0)+","+Math.max(Math.min(parseInt(b.pos*(b.end[2]-b.start[2])+b.start[2],10),255),0)+")"}});var n={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,
+0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,
+211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0],transparent:[255,255,255]},q=["add","remove","toggle"],t={border:1,borderBottom:1,borderColor:1,borderLeft:1,borderRight:1,borderTop:1,borderWidth:1,margin:1,padding:1};f.effects.animateClass=function(c,a,b,
+d){if(f.isFunction(b)){d=b;b=null}return this.queue(function(){var e=f(this),g=e.attr("style")||" ",h=p(o.call(this)),r,v=e.attr("class");f.each(q,function(w,i){c[i]&&e[i+"Class"](c[i])});r=p(o.call(this));e.attr("class",v);e.animate(u(h,r),{queue:false,duration:a,easing:b,complete:function(){f.each(q,function(w,i){c[i]&&e[i+"Class"](c[i])});if(typeof e.attr("style")=="object"){e.attr("style").cssText="";e.attr("style").cssText=g}else e.attr("style",g);d&&d.apply(this,arguments);f.dequeue(this)}})})};
+f.fn.extend({_addClass:f.fn.addClass,addClass:function(c,a,b,d){return a?f.effects.animateClass.apply(this,[{add:c},a,b,d]):this._addClass(c)},_removeClass:f.fn.removeClass,removeClass:function(c,a,b,d){return a?f.effects.animateClass.apply(this,[{remove:c},a,b,d]):this._removeClass(c)},_toggleClass:f.fn.toggleClass,toggleClass:function(c,a,b,d,e){return typeof a=="boolean"||a===j?b?f.effects.animateClass.apply(this,[a?{add:c}:{remove:c},b,d,e]):this._toggleClass(c,a):f.effects.animateClass.apply(this,
+[{toggle:c},a,b,d])},switchClass:function(c,a,b,d,e){return f.effects.animateClass.apply(this,[{add:a,remove:c},b,d,e])}});f.extend(f.effects,{version:"1.8.16",save:function(c,a){for(var b=0;b<a.length;b++)a[b]!==null&&c.data("ec.storage."+a[b],c[0].style[a[b]])},restore:function(c,a){for(var b=0;b<a.length;b++)a[b]!==null&&c.css(a[b],c.data("ec.storage."+a[b]))},setMode:function(c,a){if(a=="toggle")a=c.is(":hidden")?"show":"hide";return a},getBaseline:function(c,a){var b;switch(c[0]){case "top":b=
+0;break;case "middle":b=0.5;break;case "bottom":b=1;break;default:b=c[0]/a.height}switch(c[1]){case "left":c=0;break;case "center":c=0.5;break;case "right":c=1;break;default:c=c[1]/a.width}return{x:c,y:b}},createWrapper:function(c){if(c.parent().is(".ui-effects-wrapper"))return c.parent();var a={width:c.outerWidth(true),height:c.outerHeight(true),"float":c.css("float")},b=f("<div></div>").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}),
+d=document.activeElement;c.wrap(b);if(c[0]===d||f.contains(c[0],d))f(d).focus();b=c.parent();if(c.css("position")=="static"){b.css({position:"relative"});c.css({position:"relative"})}else{f.extend(a,{position:c.css("position"),zIndex:c.css("z-index")});f.each(["top","left","bottom","right"],function(e,g){a[g]=c.css(g);if(isNaN(parseInt(a[g],10)))a[g]="auto"});c.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})}return b.css(a).show()},removeWrapper:function(c){var a,b=document.activeElement;
+if(c.parent().is(".ui-effects-wrapper")){a=c.parent().replaceWith(c);if(c[0]===b||f.contains(c[0],b))f(b).focus();return a}return c},setTransition:function(c,a,b,d){d=d||{};f.each(a,function(e,g){unit=c.cssUnit(g);if(unit[0]>0)d[g]=unit[0]*b+unit[1]});return d}});f.fn.extend({effect:function(c){var a=k.apply(this,arguments),b={options:a[1],duration:a[2],callback:a[3]};a=b.options.mode;var d=f.effects[c];if(f.fx.off||!d)return a?this[a](b.duration,b.callback):this.each(function(){b.callback&&b.callback.call(this)});
+return d.call(this,b)},_show:f.fn.show,show:function(c){if(l(c))return this._show.apply(this,arguments);else{var a=k.apply(this,arguments);a[1].mode="show";return this.effect.apply(this,a)}},_hide:f.fn.hide,hide:function(c){if(l(c))return this._hide.apply(this,arguments);else{var a=k.apply(this,arguments);a[1].mode="hide";return this.effect.apply(this,a)}},__toggle:f.fn.toggle,toggle:function(c){if(l(c)||typeof c==="boolean"||f.isFunction(c))return this.__toggle.apply(this,arguments);else{var a=k.apply(this,
+arguments);a[1].mode="toggle";return this.effect.apply(this,a)}},cssUnit:function(c){var a=this.css(c),b=[];f.each(["em","px","%","pt"],function(d,e){if(a.indexOf(e)>0)b=[parseFloat(a),e]});return b}});f.easing.jswing=f.easing.swing;f.extend(f.easing,{def:"easeOutQuad",swing:function(c,a,b,d,e){return f.easing[f.easing.def](c,a,b,d,e)},easeInQuad:function(c,a,b,d,e){return d*(a/=e)*a+b},easeOutQuad:function(c,a,b,d,e){return-d*(a/=e)*(a-2)+b},easeInOutQuad:function(c,a,b,d,e){if((a/=e/2)<1)return d/
+2*a*a+b;return-d/2*(--a*(a-2)-1)+b},easeInCubic:function(c,a,b,d,e){return d*(a/=e)*a*a+b},easeOutCubic:function(c,a,b,d,e){return d*((a=a/e-1)*a*a+1)+b},easeInOutCubic:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a*a+b;return d/2*((a-=2)*a*a+2)+b},easeInQuart:function(c,a,b,d,e){return d*(a/=e)*a*a*a+b},easeOutQuart:function(c,a,b,d,e){return-d*((a=a/e-1)*a*a*a-1)+b},easeInOutQuart:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a*a*a+b;return-d/2*((a-=2)*a*a*a-2)+b},easeInQuint:function(c,a,b,
+d,e){return d*(a/=e)*a*a*a*a+b},easeOutQuint:function(c,a,b,d,e){return d*((a=a/e-1)*a*a*a*a+1)+b},easeInOutQuint:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a*a*a*a+b;return d/2*((a-=2)*a*a*a*a+2)+b},easeInSine:function(c,a,b,d,e){return-d*Math.cos(a/e*(Math.PI/2))+d+b},easeOutSine:function(c,a,b,d,e){return d*Math.sin(a/e*(Math.PI/2))+b},easeInOutSine:function(c,a,b,d,e){return-d/2*(Math.cos(Math.PI*a/e)-1)+b},easeInExpo:function(c,a,b,d,e){return a==0?b:d*Math.pow(2,10*(a/e-1))+b},easeOutExpo:function(c,
+a,b,d,e){return a==e?b+d:d*(-Math.pow(2,-10*a/e)+1)+b},easeInOutExpo:function(c,a,b,d,e){if(a==0)return b;if(a==e)return b+d;if((a/=e/2)<1)return d/2*Math.pow(2,10*(a-1))+b;return d/2*(-Math.pow(2,-10*--a)+2)+b},easeInCirc:function(c,a,b,d,e){return-d*(Math.sqrt(1-(a/=e)*a)-1)+b},easeOutCirc:function(c,a,b,d,e){return d*Math.sqrt(1-(a=a/e-1)*a)+b},easeInOutCirc:function(c,a,b,d,e){if((a/=e/2)<1)return-d/2*(Math.sqrt(1-a*a)-1)+b;return d/2*(Math.sqrt(1-(a-=2)*a)+1)+b},easeInElastic:function(c,a,b,
+d,e){c=1.70158;var g=0,h=d;if(a==0)return b;if((a/=e)==1)return b+d;g||(g=e*0.3);if(h<Math.abs(d)){h=d;c=g/4}else c=g/(2*Math.PI)*Math.asin(d/h);return-(h*Math.pow(2,10*(a-=1))*Math.sin((a*e-c)*2*Math.PI/g))+b},easeOutElastic:function(c,a,b,d,e){c=1.70158;var g=0,h=d;if(a==0)return b;if((a/=e)==1)return b+d;g||(g=e*0.3);if(h<Math.abs(d)){h=d;c=g/4}else c=g/(2*Math.PI)*Math.asin(d/h);return h*Math.pow(2,-10*a)*Math.sin((a*e-c)*2*Math.PI/g)+d+b},easeInOutElastic:function(c,a,b,d,e){c=1.70158;var g=
+0,h=d;if(a==0)return b;if((a/=e/2)==2)return b+d;g||(g=e*0.3*1.5);if(h<Math.abs(d)){h=d;c=g/4}else c=g/(2*Math.PI)*Math.asin(d/h);if(a<1)return-0.5*h*Math.pow(2,10*(a-=1))*Math.sin((a*e-c)*2*Math.PI/g)+b;return h*Math.pow(2,-10*(a-=1))*Math.sin((a*e-c)*2*Math.PI/g)*0.5+d+b},easeInBack:function(c,a,b,d,e,g){if(g==j)g=1.70158;return d*(a/=e)*a*((g+1)*a-g)+b},easeOutBack:function(c,a,b,d,e,g){if(g==j)g=1.70158;return d*((a=a/e-1)*a*((g+1)*a+g)+1)+b},easeInOutBack:function(c,a,b,d,e,g){if(g==j)g=1.70158;
+if((a/=e/2)<1)return d/2*a*a*(((g*=1.525)+1)*a-g)+b;return d/2*((a-=2)*a*(((g*=1.525)+1)*a+g)+2)+b},easeInBounce:function(c,a,b,d,e){return d-f.easing.easeOutBounce(c,e-a,0,d,e)+b},easeOutBounce:function(c,a,b,d,e){return(a/=e)<1/2.75?d*7.5625*a*a+b:a<2/2.75?d*(7.5625*(a-=1.5/2.75)*a+0.75)+b:a<2.5/2.75?d*(7.5625*(a-=2.25/2.75)*a+0.9375)+b:d*(7.5625*(a-=2.625/2.75)*a+0.984375)+b},easeInOutBounce:function(c,a,b,d,e){if(a<e/2)return f.easing.easeInBounce(c,a*2,0,d,e)*0.5+b;return f.easing.easeOutBounce(c,
+a*2-e,0,d,e)*0.5+d*0.5+b}})}(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.effects.drop.min.js b/wp-includes/js/jquery/ui/jquery.effects.drop.min.js
new file mode 100644 (file)
index 0000000..dc893d5
--- /dev/null
@@ -0,0 +1,14 @@
+/*
+ * jQuery UI Effects Drop 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Drop
+ *
+ * Depends:
+ *     jquery.effects.core.js
+ */
+(function(c){c.effects.drop=function(d){return this.queue(function(){var a=c(this),h=["position","top","bottom","left","right","opacity"],e=c.effects.setMode(a,d.options.mode||"hide"),b=d.options.direction||"left";c.effects.save(a,h);a.show();c.effects.createWrapper(a);var f=b=="up"||b=="down"?"top":"left";b=b=="up"||b=="left"?"pos":"neg";var g=d.options.distance||(f=="top"?a.outerHeight({margin:true})/2:a.outerWidth({margin:true})/2);if(e=="show")a.css("opacity",0).css(f,b=="pos"?-g:g);var i={opacity:e==
+"show"?1:0};i[f]=(e=="show"?b=="pos"?"+=":"-=":b=="pos"?"-=":"+=")+g;a.animate(i,{queue:false,duration:d.duration,easing:d.options.easing,complete:function(){e=="hide"&&a.hide();c.effects.restore(a,h);c.effects.removeWrapper(a);d.callback&&d.callback.apply(this,arguments);a.dequeue()}})})}})(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.effects.explode.min.js b/wp-includes/js/jquery/ui/jquery.effects.explode.min.js
new file mode 100644 (file)
index 0000000..f833058
--- /dev/null
@@ -0,0 +1,15 @@
+/*
+ * jQuery UI Effects Explode 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Explode
+ *
+ * Depends:
+ *     jquery.effects.core.js
+ */
+(function(j){j.effects.explode=function(a){return this.queue(function(){var c=a.options.pieces?Math.round(Math.sqrt(a.options.pieces)):3,d=a.options.pieces?Math.round(Math.sqrt(a.options.pieces)):3;a.options.mode=a.options.mode=="toggle"?j(this).is(":visible")?"hide":"show":a.options.mode;var b=j(this).show().css("visibility","hidden"),g=b.offset();g.top-=parseInt(b.css("marginTop"),10)||0;g.left-=parseInt(b.css("marginLeft"),10)||0;for(var h=b.outerWidth(true),i=b.outerHeight(true),e=0;e<c;e++)for(var f=
+0;f<d;f++)b.clone().appendTo("body").wrap("<div></div>").css({position:"absolute",visibility:"visible",left:-f*(h/d),top:-e*(i/c)}).parent().addClass("ui-effects-explode").css({position:"absolute",overflow:"hidden",width:h/d,height:i/c,left:g.left+f*(h/d)+(a.options.mode=="show"?(f-Math.floor(d/2))*(h/d):0),top:g.top+e*(i/c)+(a.options.mode=="show"?(e-Math.floor(c/2))*(i/c):0),opacity:a.options.mode=="show"?0:1}).animate({left:g.left+f*(h/d)+(a.options.mode=="show"?0:(f-Math.floor(d/2))*(h/d)),top:g.top+
+e*(i/c)+(a.options.mode=="show"?0:(e-Math.floor(c/2))*(i/c)),opacity:a.options.mode=="show"?1:0},a.duration||500);setTimeout(function(){a.options.mode=="show"?b.css({visibility:"visible"}):b.css({visibility:"visible"}).hide();a.callback&&a.callback.apply(b[0]);b.dequeue();j("div.ui-effects-explode").remove()},a.duration||500)})}})(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.effects.fade.min.js b/wp-includes/js/jquery/ui/jquery.effects.fade.min.js
new file mode 100644 (file)
index 0000000..2469821
--- /dev/null
@@ -0,0 +1,13 @@
+/*
+ * jQuery UI Effects Fade 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Fade
+ *
+ * Depends:
+ *     jquery.effects.core.js
+ */
+(function(b){b.effects.fade=function(a){return this.queue(function(){var c=b(this),d=b.effects.setMode(c,a.options.mode||"hide");c.animate({opacity:d},{queue:false,duration:a.duration,easing:a.options.easing,complete:function(){a.callback&&a.callback.apply(this,arguments);c.dequeue()}})})}})(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.effects.fold.min.js b/wp-includes/js/jquery/ui/jquery.effects.fold.min.js
new file mode 100644 (file)
index 0000000..67ff80c
--- /dev/null
@@ -0,0 +1,14 @@
+/*
+ * jQuery UI Effects Fold 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Fold
+ *
+ * Depends:
+ *     jquery.effects.core.js
+ */
+(function(c){c.effects.fold=function(a){return this.queue(function(){var b=c(this),j=["position","top","bottom","left","right"],d=c.effects.setMode(b,a.options.mode||"hide"),g=a.options.size||15,h=!!a.options.horizFirst,k=a.duration?a.duration/2:c.fx.speeds._default/2;c.effects.save(b,j);b.show();var e=c.effects.createWrapper(b).css({overflow:"hidden"}),f=d=="show"!=h,l=f?["width","height"]:["height","width"];f=f?[e.width(),e.height()]:[e.height(),e.width()];var i=/([0-9]+)%/.exec(g);if(i)g=parseInt(i[1],
+10)/100*f[d=="hide"?0:1];if(d=="show")e.css(h?{height:0,width:g}:{height:g,width:0});h={};i={};h[l[0]]=d=="show"?f[0]:g;i[l[1]]=d=="show"?f[1]:0;e.animate(h,k,a.options.easing).animate(i,k,a.options.easing,function(){d=="hide"&&b.hide();c.effects.restore(b,j);c.effects.removeWrapper(b);a.callback&&a.callback.apply(b[0],arguments);b.dequeue()})})}})(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.effects.highlight.min.js b/wp-includes/js/jquery/ui/jquery.effects.highlight.min.js
new file mode 100644 (file)
index 0000000..a6cbe7b
--- /dev/null
@@ -0,0 +1,14 @@
+/*
+ * jQuery UI Effects Highlight 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Highlight
+ *
+ * Depends:
+ *     jquery.effects.core.js
+ */
+(function(b){b.effects.highlight=function(c){return this.queue(function(){var a=b(this),e=["backgroundImage","backgroundColor","opacity"],d=b.effects.setMode(a,c.options.mode||"show"),f={backgroundColor:a.css("backgroundColor")};if(d=="hide")f.opacity=0;b.effects.save(a,e);a.show().css({backgroundImage:"none",backgroundColor:c.options.color||"#ffff99"}).animate(f,{queue:false,duration:c.duration,easing:c.options.easing,complete:function(){d=="hide"&&a.hide();b.effects.restore(a,e);d=="show"&&!b.support.opacity&&
+this.style.removeAttribute("filter");c.callback&&c.callback.apply(this,arguments);a.dequeue()}})})}})(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.effects.pulsate.min.js b/wp-includes/js/jquery/ui/jquery.effects.pulsate.min.js
new file mode 100644 (file)
index 0000000..eac51f6
--- /dev/null
@@ -0,0 +1,14 @@
+/*
+ * jQuery UI Effects Pulsate 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Pulsate
+ *
+ * Depends:
+ *     jquery.effects.core.js
+ */
+(function(d){d.effects.pulsate=function(a){return this.queue(function(){var b=d(this),c=d.effects.setMode(b,a.options.mode||"show");times=(a.options.times||5)*2-1;duration=a.duration?a.duration/2:d.fx.speeds._default/2;isVisible=b.is(":visible");animateTo=0;if(!isVisible){b.css("opacity",0).show();animateTo=1}if(c=="hide"&&isVisible||c=="show"&&!isVisible)times--;for(c=0;c<times;c++){b.animate({opacity:animateTo},duration,a.options.easing);animateTo=(animateTo+1)%2}b.animate({opacity:animateTo},duration,
+a.options.easing,function(){animateTo==0&&b.hide();a.callback&&a.callback.apply(this,arguments)});b.queue("fx",function(){b.dequeue()}).dequeue()})}})(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.effects.scale.min.js b/wp-includes/js/jquery/ui/jquery.effects.scale.min.js
new file mode 100644 (file)
index 0000000..a902d87
--- /dev/null
@@ -0,0 +1,20 @@
+/*
+ * jQuery UI Effects Scale 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Scale
+ *
+ * Depends:
+ *     jquery.effects.core.js
+ */
+(function(c){c.effects.puff=function(b){return this.queue(function(){var a=c(this),e=c.effects.setMode(a,b.options.mode||"hide"),g=parseInt(b.options.percent,10)||150,h=g/100,i={height:a.height(),width:a.width()};c.extend(b.options,{fade:true,mode:e,percent:e=="hide"?g:100,from:e=="hide"?i:{height:i.height*h,width:i.width*h}});a.effect("scale",b.options,b.duration,b.callback);a.dequeue()})};c.effects.scale=function(b){return this.queue(function(){var a=c(this),e=c.extend(true,{},b.options),g=c.effects.setMode(a,
+b.options.mode||"effect"),h=parseInt(b.options.percent,10)||(parseInt(b.options.percent,10)==0?0:g=="hide"?0:100),i=b.options.direction||"both",f=b.options.origin;if(g!="effect"){e.origin=f||["middle","center"];e.restore=true}f={height:a.height(),width:a.width()};a.from=b.options.from||(g=="show"?{height:0,width:0}:f);h={y:i!="horizontal"?h/100:1,x:i!="vertical"?h/100:1};a.to={height:f.height*h.y,width:f.width*h.x};if(b.options.fade){if(g=="show"){a.from.opacity=0;a.to.opacity=1}if(g=="hide"){a.from.opacity=
+1;a.to.opacity=0}}e.from=a.from;e.to=a.to;e.mode=g;a.effect("size",e,b.duration,b.callback);a.dequeue()})};c.effects.size=function(b){return this.queue(function(){var a=c(this),e=["position","top","bottom","left","right","width","height","overflow","opacity"],g=["position","top","bottom","left","right","overflow","opacity"],h=["width","height","overflow"],i=["fontSize"],f=["borderTopWidth","borderBottomWidth","paddingTop","paddingBottom"],k=["borderLeftWidth","borderRightWidth","paddingLeft","paddingRight"],
+p=c.effects.setMode(a,b.options.mode||"effect"),n=b.options.restore||false,m=b.options.scale||"both",l=b.options.origin,j={height:a.height(),width:a.width()};a.from=b.options.from||j;a.to=b.options.to||j;if(l){l=c.effects.getBaseline(l,j);a.from.top=(j.height-a.from.height)*l.y;a.from.left=(j.width-a.from.width)*l.x;a.to.top=(j.height-a.to.height)*l.y;a.to.left=(j.width-a.to.width)*l.x}var d={from:{y:a.from.height/j.height,x:a.from.width/j.width},to:{y:a.to.height/j.height,x:a.to.width/j.width}};
+if(m=="box"||m=="both"){if(d.from.y!=d.to.y){e=e.concat(f);a.from=c.effects.setTransition(a,f,d.from.y,a.from);a.to=c.effects.setTransition(a,f,d.to.y,a.to)}if(d.from.x!=d.to.x){e=e.concat(k);a.from=c.effects.setTransition(a,k,d.from.x,a.from);a.to=c.effects.setTransition(a,k,d.to.x,a.to)}}if(m=="content"||m=="both")if(d.from.y!=d.to.y){e=e.concat(i);a.from=c.effects.setTransition(a,i,d.from.y,a.from);a.to=c.effects.setTransition(a,i,d.to.y,a.to)}c.effects.save(a,n?e:g);a.show();c.effects.createWrapper(a);
+a.css("overflow","hidden").css(a.from);if(m=="content"||m=="both"){f=f.concat(["marginTop","marginBottom"]).concat(i);k=k.concat(["marginLeft","marginRight"]);h=e.concat(f).concat(k);a.find("*[width]").each(function(){child=c(this);n&&c.effects.save(child,h);var o={height:child.height(),width:child.width()};child.from={height:o.height*d.from.y,width:o.width*d.from.x};child.to={height:o.height*d.to.y,width:o.width*d.to.x};if(d.from.y!=d.to.y){child.from=c.effects.setTransition(child,f,d.from.y,child.from);
+child.to=c.effects.setTransition(child,f,d.to.y,child.to)}if(d.from.x!=d.to.x){child.from=c.effects.setTransition(child,k,d.from.x,child.from);child.to=c.effects.setTransition(child,k,d.to.x,child.to)}child.css(child.from);child.animate(child.to,b.duration,b.options.easing,function(){n&&c.effects.restore(child,h)})})}a.animate(a.to,{queue:false,duration:b.duration,easing:b.options.easing,complete:function(){a.to.opacity===0&&a.css("opacity",a.from.opacity);p=="hide"&&a.hide();c.effects.restore(a,
+n?e:g);c.effects.removeWrapper(a);b.callback&&b.callback.apply(this,arguments);a.dequeue()}})})}})(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.effects.shake.min.js b/wp-includes/js/jquery/ui/jquery.effects.shake.min.js
new file mode 100644 (file)
index 0000000..f9fbca4
--- /dev/null
@@ -0,0 +1,14 @@
+/*
+ * jQuery UI Effects Shake 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Shake
+ *
+ * Depends:
+ *     jquery.effects.core.js
+ */
+(function(d){d.effects.shake=function(a){return this.queue(function(){var b=d(this),j=["position","top","bottom","left","right"];d.effects.setMode(b,a.options.mode||"effect");var c=a.options.direction||"left",e=a.options.distance||20,l=a.options.times||3,f=a.duration||a.options.duration||140;d.effects.save(b,j);b.show();d.effects.createWrapper(b);var g=c=="up"||c=="down"?"top":"left",h=c=="up"||c=="left"?"pos":"neg";c={};var i={},k={};c[g]=(h=="pos"?"-=":"+=")+e;i[g]=(h=="pos"?"+=":"-=")+e*2;k[g]=
+(h=="pos"?"-=":"+=")+e*2;b.animate(c,f,a.options.easing);for(e=1;e<l;e++)b.animate(i,f,a.options.easing).animate(k,f,a.options.easing);b.animate(i,f,a.options.easing).animate(c,f/2,a.options.easing,function(){d.effects.restore(b,j);d.effects.removeWrapper(b);a.callback&&a.callback.apply(this,arguments)});b.queue("fx",function(){b.dequeue()});b.dequeue()})}})(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.effects.slide.min.js b/wp-includes/js/jquery/ui/jquery.effects.slide.min.js
new file mode 100644 (file)
index 0000000..24e5b48
--- /dev/null
@@ -0,0 +1,14 @@
+/*
+ * jQuery UI Effects Slide 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Slide
+ *
+ * Depends:
+ *     jquery.effects.core.js
+ */
+(function(c){c.effects.slide=function(d){return this.queue(function(){var a=c(this),h=["position","top","bottom","left","right"],f=c.effects.setMode(a,d.options.mode||"show"),b=d.options.direction||"left";c.effects.save(a,h);a.show();c.effects.createWrapper(a).css({overflow:"hidden"});var g=b=="up"||b=="down"?"top":"left";b=b=="up"||b=="left"?"pos":"neg";var e=d.options.distance||(g=="top"?a.outerHeight({margin:true}):a.outerWidth({margin:true}));if(f=="show")a.css(g,b=="pos"?isNaN(e)?"-"+e:-e:e);
+var i={};i[g]=(f=="show"?b=="pos"?"+=":"-=":b=="pos"?"-=":"+=")+e;a.animate(i,{queue:false,duration:d.duration,easing:d.options.easing,complete:function(){f=="hide"&&a.hide();c.effects.restore(a,h);c.effects.removeWrapper(a);d.callback&&d.callback.apply(this,arguments);a.dequeue()}})})}})(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.effects.transfer.min.js b/wp-includes/js/jquery/ui/jquery.effects.transfer.min.js
new file mode 100644 (file)
index 0000000..925650b
--- /dev/null
@@ -0,0 +1,14 @@
+/*
+ * jQuery UI Effects Transfer 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Effects/Transfer
+ *
+ * Depends:
+ *     jquery.effects.core.js
+ */
+(function(e){e.effects.transfer=function(a){return this.queue(function(){var b=e(this),c=e(a.options.to),d=c.offset();c={top:d.top,left:d.left,height:c.innerHeight(),width:c.innerWidth()};d=b.offset();var f=e('<div class="ui-effects-transfer"></div>').appendTo(document.body).addClass(a.options.className).css({top:d.top,left:d.left,height:b.innerHeight(),width:b.innerWidth(),position:"absolute"}).animate(c,a.duration,a.options.easing,function(){f.remove();a.callback&&a.callback.apply(b[0],arguments);
+b.dequeue()})})}})(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.ui.accordion.min.js b/wp-includes/js/jquery/ui/jquery.ui.accordion.min.js
new file mode 100644 (file)
index 0000000..f8d83dd
--- /dev/null
@@ -0,0 +1,30 @@
+/*
+ * jQuery UI Accordion 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Accordion
+ *
+ * Depends:
+ *     jquery.ui.core.js
+ *     jquery.ui.widget.js
+ */
+(function(c){c.widget("ui.accordion",{options:{active:0,animated:"slide",autoHeight:true,clearStyle:false,collapsible:false,event:"click",fillSpace:false,header:"> li > :first-child,> :not(li):even",icons:{header:"ui-icon-triangle-1-e",headerSelected:"ui-icon-triangle-1-s"},navigation:false,navigationFilter:function(){return this.href.toLowerCase()===location.href.toLowerCase()}},_create:function(){var a=this,b=a.options;a.running=0;a.element.addClass("ui-accordion ui-widget ui-helper-reset").children("li").addClass("ui-accordion-li-fix");
+a.headers=a.element.find(b.header).addClass("ui-accordion-header ui-helper-reset ui-state-default ui-corner-all").bind("mouseenter.accordion",function(){b.disabled||c(this).addClass("ui-state-hover")}).bind("mouseleave.accordion",function(){b.disabled||c(this).removeClass("ui-state-hover")}).bind("focus.accordion",function(){b.disabled||c(this).addClass("ui-state-focus")}).bind("blur.accordion",function(){b.disabled||c(this).removeClass("ui-state-focus")});a.headers.next().addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom");
+if(b.navigation){var d=a.element.find("a").filter(b.navigationFilter).eq(0);if(d.length){var h=d.closest(".ui-accordion-header");a.active=h.length?h:d.closest(".ui-accordion-content").prev()}}a.active=a._findActive(a.active||b.active).addClass("ui-state-default ui-state-active").toggleClass("ui-corner-all").toggleClass("ui-corner-top");a.active.next().addClass("ui-accordion-content-active");a._createIcons();a.resize();a.element.attr("role","tablist");a.headers.attr("role","tab").bind("keydown.accordion",
+function(f){return a._keydown(f)}).next().attr("role","tabpanel");a.headers.not(a.active||"").attr({"aria-expanded":"false","aria-selected":"false",tabIndex:-1}).next().hide();a.active.length?a.active.attr({"aria-expanded":"true","aria-selected":"true",tabIndex:0}):a.headers.eq(0).attr("tabIndex",0);c.browser.safari||a.headers.find("a").attr("tabIndex",-1);b.event&&a.headers.bind(b.event.split(" ").join(".accordion ")+".accordion",function(f){a._clickHandler.call(a,f,this);f.preventDefault()})},_createIcons:function(){var a=
+this.options;if(a.icons){c("<span></span>").addClass("ui-icon "+a.icons.header).prependTo(this.headers);this.active.children(".ui-icon").toggleClass(a.icons.header).toggleClass(a.icons.headerSelected);this.element.addClass("ui-accordion-icons")}},_destroyIcons:function(){this.headers.children(".ui-icon").remove();this.element.removeClass("ui-accordion-icons")},destroy:function(){var a=this.options;this.element.removeClass("ui-accordion ui-widget ui-helper-reset").removeAttr("role");this.headers.unbind(".accordion").removeClass("ui-accordion-header ui-accordion-disabled ui-helper-reset ui-state-default ui-corner-all ui-state-active ui-state-disabled ui-corner-top").removeAttr("role").removeAttr("aria-expanded").removeAttr("aria-selected").removeAttr("tabIndex");
+this.headers.find("a").removeAttr("tabIndex");this._destroyIcons();var b=this.headers.next().css("display","").removeAttr("role").removeClass("ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active ui-accordion-disabled ui-state-disabled");if(a.autoHeight||a.fillHeight)b.css("height","");return c.Widget.prototype.destroy.call(this)},_setOption:function(a,b){c.Widget.prototype._setOption.apply(this,arguments);a=="active"&&this.activate(b);if(a=="icons"){this._destroyIcons();
+b&&this._createIcons()}if(a=="disabled")this.headers.add(this.headers.next())[b?"addClass":"removeClass"]("ui-accordion-disabled ui-state-disabled")},_keydown:function(a){if(!(this.options.disabled||a.altKey||a.ctrlKey)){var b=c.ui.keyCode,d=this.headers.length,h=this.headers.index(a.target),f=false;switch(a.keyCode){case b.RIGHT:case b.DOWN:f=this.headers[(h+1)%d];break;case b.LEFT:case b.UP:f=this.headers[(h-1+d)%d];break;case b.SPACE:case b.ENTER:this._clickHandler({target:a.target},a.target);
+a.preventDefault()}if(f){c(a.target).attr("tabIndex",-1);c(f).attr("tabIndex",0);f.focus();return false}return true}},resize:function(){var a=this.options,b;if(a.fillSpace){if(c.browser.msie){var d=this.element.parent().css("overflow");this.element.parent().css("overflow","hidden")}b=this.element.parent().height();c.browser.msie&&this.element.parent().css("overflow",d);this.headers.each(function(){b-=c(this).outerHeight(true)});this.headers.next().each(function(){c(this).height(Math.max(0,b-c(this).innerHeight()+
+c(this).height()))}).css("overflow","auto")}else if(a.autoHeight){b=0;this.headers.next().each(function(){b=Math.max(b,c(this).height("").height())}).height(b)}return this},activate:function(a){this.options.active=a;a=this._findActive(a)[0];this._clickHandler({target:a},a);return this},_findActive:function(a){return a?typeof a==="number"?this.headers.filter(":eq("+a+")"):this.headers.not(this.headers.not(a)):a===false?c([]):this.headers.filter(":eq(0)")},_clickHandler:function(a,b){var d=this.options;
+if(!d.disabled)if(a.target){a=c(a.currentTarget||b);b=a[0]===this.active[0];d.active=d.collapsible&&b?false:this.headers.index(a);if(!(this.running||!d.collapsible&&b)){var h=this.active;j=a.next();g=this.active.next();e={options:d,newHeader:b&&d.collapsible?c([]):a,oldHeader:this.active,newContent:b&&d.collapsible?c([]):j,oldContent:g};var f=this.headers.index(this.active[0])>this.headers.index(a[0]);this.active=b?c([]):a;this._toggle(j,g,e,b,f);h.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").children(".ui-icon").removeClass(d.icons.headerSelected).addClass(d.icons.header);
+if(!b){a.removeClass("ui-state-default ui-corner-all").addClass("ui-state-active ui-corner-top").children(".ui-icon").removeClass(d.icons.header).addClass(d.icons.headerSelected);a.next().addClass("ui-accordion-content-active")}}}else if(d.collapsible){this.active.removeClass("ui-state-active ui-corner-top").addClass("ui-state-default ui-corner-all").children(".ui-icon").removeClass(d.icons.headerSelected).addClass(d.icons.header);this.active.next().addClass("ui-accordion-content-active");var g=this.active.next(),
+e={options:d,newHeader:c([]),oldHeader:d.active,newContent:c([]),oldContent:g},j=this.active=c([]);this._toggle(j,g,e)}},_toggle:function(a,b,d,h,f){var g=this,e=g.options;g.toShow=a;g.toHide=b;g.data=d;var j=function(){if(g)return g._completed.apply(g,arguments)};g._trigger("changestart",null,g.data);g.running=b.size()===0?a.size():b.size();if(e.animated){d={};d=e.collapsible&&h?{toShow:c([]),toHide:b,complete:j,down:f,autoHeight:e.autoHeight||e.fillSpace}:{toShow:a,toHide:b,complete:j,down:f,autoHeight:e.autoHeight||
+e.fillSpace};if(!e.proxied)e.proxied=e.animated;if(!e.proxiedDuration)e.proxiedDuration=e.duration;e.animated=c.isFunction(e.proxied)?e.proxied(d):e.proxied;e.duration=c.isFunction(e.proxiedDuration)?e.proxiedDuration(d):e.proxiedDuration;h=c.ui.accordion.animations;var i=e.duration,k=e.animated;if(k&&!h[k]&&!c.easing[k])k="slide";h[k]||(h[k]=function(l){this.slide(l,{easing:k,duration:i||700})});h[k](d)}else{if(e.collapsible&&h)a.toggle();else{b.hide();a.show()}j(true)}b.prev().attr({"aria-expanded":"false",
+"aria-selected":"false",tabIndex:-1}).blur();a.prev().attr({"aria-expanded":"true","aria-selected":"true",tabIndex:0}).focus()},_completed:function(a){this.running=a?0:--this.running;if(!this.running){this.options.clearStyle&&this.toShow.add(this.toHide).css({height:"",overflow:""});this.toHide.removeClass("ui-accordion-content-active");if(this.toHide.length)this.toHide.parent()[0].className=this.toHide.parent()[0].className;this._trigger("change",null,this.data)}}});c.extend(c.ui.accordion,{version:"1.8.16",
+animations:{slide:function(a,b){a=c.extend({easing:"swing",duration:300},a,b);if(a.toHide.size())if(a.toShow.size()){var d=a.toShow.css("overflow"),h=0,f={},g={},e;b=a.toShow;e=b[0].style.width;b.width(parseInt(b.parent().width(),10)-parseInt(b.css("paddingLeft"),10)-parseInt(b.css("paddingRight"),10)-(parseInt(b.css("borderLeftWidth"),10)||0)-(parseInt(b.css("borderRightWidth"),10)||0));c.each(["height","paddingTop","paddingBottom"],function(j,i){g[i]="hide";j=(""+c.css(a.toShow[0],i)).match(/^([\d+-.]+)(.*)$/);
+f[i]={value:j[1],unit:j[2]||"px"}});a.toShow.css({height:0,overflow:"hidden"}).show();a.toHide.filter(":hidden").each(a.complete).end().filter(":visible").animate(g,{step:function(j,i){if(i.prop=="height")h=i.end-i.start===0?0:(i.now-i.start)/(i.end-i.start);a.toShow[0].style[i.prop]=h*f[i.prop].value+f[i.prop].unit},duration:a.duration,easing:a.easing,complete:function(){a.autoHeight||a.toShow.css("height","");a.toShow.css({width:e,overflow:d});a.complete()}})}else a.toHide.animate({height:"hide",
+paddingTop:"hide",paddingBottom:"hide"},a);else a.toShow.animate({height:"show",paddingTop:"show",paddingBottom:"show"},a)},bounceslide:function(a){this.slide(a,{easing:a.down?"easeOutBounce":"swing",duration:a.down?1E3:200})}}})})(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.ui.autocomplete.min.js b/wp-includes/js/jquery/ui/jquery.ui.autocomplete.min.js
new file mode 100644 (file)
index 0000000..795fab7
--- /dev/null
@@ -0,0 +1,32 @@
+/*
+ * jQuery UI Autocomplete 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Autocomplete
+ *
+ * Depends:
+ *     jquery.ui.core.js
+ *     jquery.ui.widget.js
+ *     jquery.ui.position.js
+ */
+(function(d){var e=0;d.widget("ui.autocomplete",{options:{appendTo:"body",autoFocus:false,delay:300,minLength:1,position:{my:"left top",at:"left bottom",collision:"none"},source:null},pending:0,_create:function(){var a=this,b=this.element[0].ownerDocument,g;this.element.addClass("ui-autocomplete-input").attr("autocomplete","off").attr({role:"textbox","aria-autocomplete":"list","aria-haspopup":"true"}).bind("keydown.autocomplete",function(c){if(!(a.options.disabled||a.element.propAttr("readOnly"))){g=
+false;var f=d.ui.keyCode;switch(c.keyCode){case f.PAGE_UP:a._move("previousPage",c);break;case f.PAGE_DOWN:a._move("nextPage",c);break;case f.UP:a._move("previous",c);c.preventDefault();break;case f.DOWN:a._move("next",c);c.preventDefault();break;case f.ENTER:case f.NUMPAD_ENTER:if(a.menu.active){g=true;c.preventDefault()}case f.TAB:if(!a.menu.active)return;a.menu.select(c);break;case f.ESCAPE:a.element.val(a.term);a.close(c);break;default:clearTimeout(a.searching);a.searching=setTimeout(function(){if(a.term!=
+a.element.val()){a.selectedItem=null;a.search(null,c)}},a.options.delay);break}}}).bind("keypress.autocomplete",function(c){if(g){g=false;c.preventDefault()}}).bind("focus.autocomplete",function(){if(!a.options.disabled){a.selectedItem=null;a.previous=a.element.val()}}).bind("blur.autocomplete",function(c){if(!a.options.disabled){clearTimeout(a.searching);a.closing=setTimeout(function(){a.close(c);a._change(c)},150)}});this._initSource();this.response=function(){return a._response.apply(a,arguments)};
+this.menu=d("<ul></ul>").addClass("ui-autocomplete").appendTo(d(this.options.appendTo||"body",b)[0]).mousedown(function(c){var f=a.menu.element[0];d(c.target).closest(".ui-menu-item").length||setTimeout(function(){d(document).one("mousedown",function(h){h.target!==a.element[0]&&h.target!==f&&!d.ui.contains(f,h.target)&&a.close()})},1);setTimeout(function(){clearTimeout(a.closing)},13)}).menu({focus:function(c,f){f=f.item.data("item.autocomplete");false!==a._trigger("focus",c,{item:f})&&/^key/.test(c.originalEvent.type)&&
+a.element.val(f.value)},selected:function(c,f){var h=f.item.data("item.autocomplete"),i=a.previous;if(a.element[0]!==b.activeElement){a.element.focus();a.previous=i;setTimeout(function(){a.previous=i;a.selectedItem=h},1)}false!==a._trigger("select",c,{item:h})&&a.element.val(h.value);a.term=a.element.val();a.close(c);a.selectedItem=h},blur:function(){a.menu.element.is(":visible")&&a.element.val()!==a.term&&a.element.val(a.term)}}).zIndex(this.element.zIndex()+1).css({top:0,left:0}).hide().data("menu");
+d.fn.bgiframe&&this.menu.element.bgiframe()},destroy:function(){this.element.removeClass("ui-autocomplete-input").removeAttr("autocomplete").removeAttr("role").removeAttr("aria-autocomplete").removeAttr("aria-haspopup");this.menu.element.remove();d.Widget.prototype.destroy.call(this)},_setOption:function(a,b){d.Widget.prototype._setOption.apply(this,arguments);a==="source"&&this._initSource();if(a==="appendTo")this.menu.element.appendTo(d(b||"body",this.element[0].ownerDocument)[0]);a==="disabled"&&
+b&&this.xhr&&this.xhr.abort()},_initSource:function(){var a=this,b,g;if(d.isArray(this.options.source)){b=this.options.source;this.source=function(c,f){f(d.ui.autocomplete.filter(b,c.term))}}else if(typeof this.options.source==="string"){g=this.options.source;this.source=function(c,f){a.xhr&&a.xhr.abort();a.xhr=d.ajax({url:g,data:c,dataType:"json",autocompleteRequest:++e,success:function(h){this.autocompleteRequest===e&&f(h)},error:function(){this.autocompleteRequest===e&&f([])}})}}else this.source=
+this.options.source},search:function(a,b){a=a!=null?a:this.element.val();this.term=this.element.val();if(a.length<this.options.minLength)return this.close(b);clearTimeout(this.closing);if(this._trigger("search",b)!==false)return this._search(a)},_search:function(a){this.pending++;this.element.addClass("ui-autocomplete-loading");this.source({term:a},this.response)},_response:function(a){if(!this.options.disabled&&a&&a.length){a=this._normalize(a);this._suggest(a);this._trigger("open")}else this.close();
+this.pending--;this.pending||this.element.removeClass("ui-autocomplete-loading")},close:function(a){clearTimeout(this.closing);if(this.menu.element.is(":visible")){this.menu.element.hide();this.menu.deactivate();this._trigger("close",a)}},_change:function(a){this.previous!==this.element.val()&&this._trigger("change",a,{item:this.selectedItem})},_normalize:function(a){if(a.length&&a[0].label&&a[0].value)return a;return d.map(a,function(b){if(typeof b==="string")return{label:b,value:b};return d.extend({label:b.label||
+b.value,value:b.value||b.label},b)})},_suggest:function(a){var b=this.menu.element.empty().zIndex(this.element.zIndex()+1);this._renderMenu(b,a);this.menu.deactivate();this.menu.refresh();b.show();this._resizeMenu();b.position(d.extend({of:this.element},this.options.position));this.options.autoFocus&&this.menu.next(new d.Event("mouseover"))},_resizeMenu:function(){var a=this.menu.element;a.outerWidth(Math.max(a.width("").outerWidth(),this.element.outerWidth()))},_renderMenu:function(a,b){var g=this;
+d.each(b,function(c,f){g._renderItem(a,f)})},_renderItem:function(a,b){return d("<li></li>").data("item.autocomplete",b).append(d("<a></a>").text(b.label)).appendTo(a)},_move:function(a,b){if(this.menu.element.is(":visible"))if(this.menu.first()&&/^previous/.test(a)||this.menu.last()&&/^next/.test(a)){this.element.val(this.term);this.menu.deactivate()}else this.menu[a](b);else this.search(null,b)},widget:function(){return this.menu.element}});d.extend(d.ui.autocomplete,{escapeRegex:function(a){return a.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,
+"\\$&")},filter:function(a,b){var g=new RegExp(d.ui.autocomplete.escapeRegex(b),"i");return d.grep(a,function(c){return g.test(c.label||c.value||c)})}})})(jQuery);
+(function(d){d.widget("ui.menu",{_create:function(){var e=this;this.element.addClass("ui-menu ui-widget ui-widget-content ui-corner-all").attr({role:"listbox","aria-activedescendant":"ui-active-menuitem"}).click(function(a){if(d(a.target).closest(".ui-menu-item a").length){a.preventDefault();e.select(a)}});this.refresh()},refresh:function(){var e=this;this.element.children("li:not(.ui-menu-item):has(a)").addClass("ui-menu-item").attr("role","menuitem").children("a").addClass("ui-corner-all").attr("tabindex",
+-1).mouseenter(function(a){e.activate(a,d(this).parent())}).mouseleave(function(){e.deactivate()})},activate:function(e,a){this.deactivate();if(this.hasScroll()){var b=a.offset().top-this.element.offset().top,g=this.element.scrollTop(),c=this.element.height();if(b<0)this.element.scrollTop(g+b);else b>=c&&this.element.scrollTop(g+b-c+a.height())}this.active=a.eq(0).children("a").addClass("ui-state-hover").attr("id","ui-active-menuitem").end();this._trigger("focus",e,{item:a})},deactivate:function(){if(this.active){this.active.children("a").removeClass("ui-state-hover").removeAttr("id");
+this._trigger("blur");this.active=null}},next:function(e){this.move("next",".ui-menu-item:first",e)},previous:function(e){this.move("prev",".ui-menu-item:last",e)},first:function(){return this.active&&!this.active.prevAll(".ui-menu-item").length},last:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},move:function(e,a,b){if(this.active){e=this.active[e+"All"](".ui-menu-item").eq(0);e.length?this.activate(b,e):this.activate(b,this.element.children(a))}else this.activate(b,
+this.element.children(a))},nextPage:function(e){if(this.hasScroll())if(!this.active||this.last())this.activate(e,this.element.children(".ui-menu-item:first"));else{var a=this.active.offset().top,b=this.element.height(),g=this.element.children(".ui-menu-item").filter(function(){var c=d(this).offset().top-a-b+d(this).height();return c<10&&c>-10});g.length||(g=this.element.children(".ui-menu-item:last"));this.activate(e,g)}else this.activate(e,this.element.children(".ui-menu-item").filter(!this.active||
+this.last()?":first":":last"))},previousPage:function(e){if(this.hasScroll())if(!this.active||this.first())this.activate(e,this.element.children(".ui-menu-item:last"));else{var a=this.active.offset().top,b=this.element.height();result=this.element.children(".ui-menu-item").filter(function(){var g=d(this).offset().top-a+b-d(this).height();return g<10&&g>-10});result.length||(result=this.element.children(".ui-menu-item:first"));this.activate(e,result)}else this.activate(e,this.element.children(".ui-menu-item").filter(!this.active||
+this.first()?":last":":first"))},hasScroll:function(){return this.element.height()<this.element[d.fn.prop?"prop":"attr"]("scrollHeight")},select:function(e){this._trigger("selected",e,{item:this.active})}})})(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.ui.button.min.js b/wp-includes/js/jquery/ui/jquery.ui.button.min.js
new file mode 100644 (file)
index 0000000..903f73e
--- /dev/null
@@ -0,0 +1,27 @@
+/*
+ * jQuery UI Button 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Button
+ *
+ * Depends:
+ *     jquery.ui.core.js
+ *     jquery.ui.widget.js
+ */
+(function(b){var h,i,j,g,l=function(){var a=b(this).find(":ui-button");setTimeout(function(){a.button("refresh")},1)},k=function(a){var c=a.name,e=a.form,f=b([]);if(c)f=e?b(e).find("[name='"+c+"']"):b("[name='"+c+"']",a.ownerDocument).filter(function(){return!this.form});return f};b.widget("ui.button",{options:{disabled:null,text:true,label:null,icons:{primary:null,secondary:null}},_create:function(){this.element.closest("form").unbind("reset.button").bind("reset.button",l);if(typeof this.options.disabled!==
+"boolean")this.options.disabled=this.element.propAttr("disabled");this._determineButtonType();this.hasTitle=!!this.buttonElement.attr("title");var a=this,c=this.options,e=this.type==="checkbox"||this.type==="radio",f="ui-state-hover"+(!e?" ui-state-active":"");if(c.label===null)c.label=this.buttonElement.html();if(this.element.is(":disabled"))c.disabled=true;this.buttonElement.addClass("ui-button ui-widget ui-state-default ui-corner-all").attr("role","button").bind("mouseenter.button",function(){if(!c.disabled){b(this).addClass("ui-state-hover");
+this===h&&b(this).addClass("ui-state-active")}}).bind("mouseleave.button",function(){c.disabled||b(this).removeClass(f)}).bind("click.button",function(d){if(c.disabled){d.preventDefault();d.stopImmediatePropagation()}});this.element.bind("focus.button",function(){a.buttonElement.addClass("ui-state-focus")}).bind("blur.button",function(){a.buttonElement.removeClass("ui-state-focus")});if(e){this.element.bind("change.button",function(){g||a.refresh()});this.buttonElement.bind("mousedown.button",function(d){if(!c.disabled){g=
+false;i=d.pageX;j=d.pageY}}).bind("mouseup.button",function(d){if(!c.disabled)if(i!==d.pageX||j!==d.pageY)g=true})}if(this.type==="checkbox")this.buttonElement.bind("click.button",function(){if(c.disabled||g)return false;b(this).toggleClass("ui-state-active");a.buttonElement.attr("aria-pressed",a.element[0].checked)});else if(this.type==="radio")this.buttonElement.bind("click.button",function(){if(c.disabled||g)return false;b(this).addClass("ui-state-active");a.buttonElement.attr("aria-pressed","true");
+var d=a.element[0];k(d).not(d).map(function(){return b(this).button("widget")[0]}).removeClass("ui-state-active").attr("aria-pressed","false")});else{this.buttonElement.bind("mousedown.button",function(){if(c.disabled)return false;b(this).addClass("ui-state-active");h=this;b(document).one("mouseup",function(){h=null})}).bind("mouseup.button",function(){if(c.disabled)return false;b(this).removeClass("ui-state-active")}).bind("keydown.button",function(d){if(c.disabled)return false;if(d.keyCode==b.ui.keyCode.SPACE||
+d.keyCode==b.ui.keyCode.ENTER)b(this).addClass("ui-state-active")}).bind("keyup.button",function(){b(this).removeClass("ui-state-active")});this.buttonElement.is("a")&&this.buttonElement.keyup(function(d){d.keyCode===b.ui.keyCode.SPACE&&b(this).click()})}this._setOption("disabled",c.disabled);this._resetButton()},_determineButtonType:function(){this.type=this.element.is(":checkbox")?"checkbox":this.element.is(":radio")?"radio":this.element.is("input")?"input":"button";if(this.type==="checkbox"||this.type===
+"radio"){var a=this.element.parents().filter(":last"),c="label[for='"+this.element.attr("id")+"']";this.buttonElement=a.find(c);if(!this.buttonElement.length){a=a.length?a.siblings():this.element.siblings();this.buttonElement=a.filter(c);if(!this.buttonElement.length)this.buttonElement=a.find(c)}this.element.addClass("ui-helper-hidden-accessible");(a=this.element.is(":checked"))&&this.buttonElement.addClass("ui-state-active");this.buttonElement.attr("aria-pressed",a)}else this.buttonElement=this.element},
+widget:function(){return this.buttonElement},destroy:function(){this.element.removeClass("ui-helper-hidden-accessible");this.buttonElement.removeClass("ui-button ui-widget ui-state-default ui-corner-all ui-state-hover ui-state-active  ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only").removeAttr("role").removeAttr("aria-pressed").html(this.buttonElement.find(".ui-button-text").html());this.hasTitle||this.buttonElement.removeAttr("title");
+b.Widget.prototype.destroy.call(this)},_setOption:function(a,c){b.Widget.prototype._setOption.apply(this,arguments);if(a==="disabled")c?this.element.propAttr("disabled",true):this.element.propAttr("disabled",false);else this._resetButton()},refresh:function(){var a=this.element.is(":disabled");a!==this.options.disabled&&this._setOption("disabled",a);if(this.type==="radio")k(this.element[0]).each(function(){b(this).is(":checked")?b(this).button("widget").addClass("ui-state-active").attr("aria-pressed",
+"true"):b(this).button("widget").removeClass("ui-state-active").attr("aria-pressed","false")});else if(this.type==="checkbox")this.element.is(":checked")?this.buttonElement.addClass("ui-state-active").attr("aria-pressed","true"):this.buttonElement.removeClass("ui-state-active").attr("aria-pressed","false")},_resetButton:function(){if(this.type==="input")this.options.label&&this.element.val(this.options.label);else{var a=this.buttonElement.removeClass("ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only"),
+c=b("<span></span>").addClass("ui-button-text").html(this.options.label).appendTo(a.empty()).text(),e=this.options.icons,f=e.primary&&e.secondary,d=[];if(e.primary||e.secondary){if(this.options.text)d.push("ui-button-text-icon"+(f?"s":e.primary?"-primary":"-secondary"));e.primary&&a.prepend("<span class='ui-button-icon-primary ui-icon "+e.primary+"'></span>");e.secondary&&a.append("<span class='ui-button-icon-secondary ui-icon "+e.secondary+"'></span>");if(!this.options.text){d.push(f?"ui-button-icons-only":
+"ui-button-icon-only");this.hasTitle||a.attr("title",c)}}else d.push("ui-button-text-only");a.addClass(d.join(" "))}}});b.widget("ui.buttonset",{options:{items:":button, :submit, :reset, :checkbox, :radio, a, :data(button)"},_create:function(){this.element.addClass("ui-buttonset")},_init:function(){this.refresh()},_setOption:function(a,c){a==="disabled"&&this.buttons.button("option",a,c);b.Widget.prototype._setOption.apply(this,arguments)},refresh:function(){var a=this.element.css("direction")===
+"ltr";this.buttons=this.element.find(this.options.items).filter(":ui-button").button("refresh").end().not(":ui-button").button().end().map(function(){return b(this).button("widget")[0]}).removeClass("ui-corner-all ui-corner-left ui-corner-right").filter(":first").addClass(a?"ui-corner-left":"ui-corner-right").end().filter(":last").addClass(a?"ui-corner-right":"ui-corner-left").end().end()},destroy:function(){this.element.removeClass("ui-buttonset");this.buttons.map(function(){return b(this).button("widget")[0]}).removeClass("ui-corner-left ui-corner-right").end().button("destroy");
+b.Widget.prototype.destroy.call(this)}})})(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.ui.core.min.js b/wp-includes/js/jquery/ui/jquery.ui.core.min.js
new file mode 100644 (file)
index 0000000..59d7bb2
--- /dev/null
@@ -0,0 +1,18 @@
+/*!
+ * jQuery UI 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI
+ */
+(function(c,j){function k(a,b){var d=a.nodeName.toLowerCase();if("area"===d){b=a.parentNode;d=b.name;if(!a.href||!d||b.nodeName.toLowerCase()!=="map")return false;a=c("img[usemap=#"+d+"]")[0];return!!a&&l(a)}return(/input|select|textarea|button|object/.test(d)?!a.disabled:"a"==d?a.href||b:b)&&l(a)}function l(a){return!c(a).parents().andSelf().filter(function(){return c.curCSS(this,"visibility")==="hidden"||c.expr.filters.hidden(this)}).length}c.ui=c.ui||{};if(!c.ui.version){c.extend(c.ui,{version:"1.8.16",
+keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});c.fn.extend({propAttr:c.fn.prop||c.fn.attr,_focus:c.fn.focus,focus:function(a,b){return typeof a==="number"?this.each(function(){var d=
+this;setTimeout(function(){c(d).focus();b&&b.call(d)},a)}):this._focus.apply(this,arguments)},scrollParent:function(){var a;a=c.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?this.parents().filter(function(){return/(relative|absolute|fixed)/.test(c.curCSS(this,"position",1))&&/(auto|scroll)/.test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0):this.parents().filter(function(){return/(auto|scroll)/.test(c.curCSS(this,
+"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!a.length?c(document):a},zIndex:function(a){if(a!==j)return this.css("zIndex",a);if(this.length){a=c(this[0]);for(var b;a.length&&a[0]!==document;){b=a.css("position");if(b==="absolute"||b==="relative"||b==="fixed"){b=parseInt(a.css("zIndex"),10);if(!isNaN(b)&&b!==0)return b}a=a.parent()}}return 0},disableSelection:function(){return this.bind((c.support.selectstart?"selectstart":
+"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});c.each(["Width","Height"],function(a,b){function d(f,g,m,n){c.each(e,function(){g-=parseFloat(c.curCSS(f,"padding"+this,true))||0;if(m)g-=parseFloat(c.curCSS(f,"border"+this+"Width",true))||0;if(n)g-=parseFloat(c.curCSS(f,"margin"+this,true))||0});return g}var e=b==="Width"?["Left","Right"]:["Top","Bottom"],h=b.toLowerCase(),i={innerWidth:c.fn.innerWidth,innerHeight:c.fn.innerHeight,
+outerWidth:c.fn.outerWidth,outerHeight:c.fn.outerHeight};c.fn["inner"+b]=function(f){if(f===j)return i["inner"+b].call(this);return this.each(function(){c(this).css(h,d(this,f)+"px")})};c.fn["outer"+b]=function(f,g){if(typeof f!=="number")return i["outer"+b].call(this,f);return this.each(function(){c(this).css(h,d(this,f,true,g)+"px")})}});c.extend(c.expr[":"],{data:function(a,b,d){return!!c.data(a,d[3])},focusable:function(a){return k(a,!isNaN(c.attr(a,"tabindex")))},tabbable:function(a){var b=c.attr(a,
+"tabindex"),d=isNaN(b);return(d||b>=0)&&k(a,!d)}});c(function(){var a=document.body,b=a.appendChild(b=document.createElement("div"));c.extend(b.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});c.support.minHeight=b.offsetHeight===100;c.support.selectstart="onselectstart"in b;a.removeChild(b).style.display="none"});c.extend(c.ui,{plugin:{add:function(a,b,d){a=c.ui[a].prototype;for(var e in d){a.plugins[e]=a.plugins[e]||[];a.plugins[e].push([b,d[e]])}},call:function(a,b,d){if((b=a.plugins[b])&&
+a.element[0].parentNode)for(var e=0;e<b.length;e++)a.options[b[e][0]]&&b[e][1].apply(a.element,d)}},contains:function(a,b){return document.compareDocumentPosition?a.compareDocumentPosition(b)&16:a!==b&&a.contains(b)},hasScroll:function(a,b){if(c(a).css("overflow")==="hidden")return false;b=b&&b==="left"?"scrollLeft":"scrollTop";var d=false;if(a[b]>0)return true;a[b]=1;d=a[b]>0;a[b]=0;return d},isOverAxis:function(a,b,d){return a>b&&a<b+d},isOver:function(a,b,d,e,h,i){return c.ui.isOverAxis(a,d,h)&&
+c.ui.isOverAxis(b,e,i)}})}})(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.ui.datepicker.min.js b/wp-includes/js/jquery/ui/jquery.ui.datepicker.min.js
new file mode 100644 (file)
index 0000000..07c8396
--- /dev/null
@@ -0,0 +1,83 @@
+/*
+ * jQuery UI Datepicker 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Datepicker
+ *
+ * Depends:
+ *     jquery.ui.core.js
+ */
+(function(d,C){function M(){this.debug=false;this._curInst=null;this._keyEvent=false;this._disabledInputs=[];this._inDialog=this._datepickerShowing=false;this._mainDivId="ui-datepicker-div";this._inlineClass="ui-datepicker-inline";this._appendClass="ui-datepicker-append";this._triggerClass="ui-datepicker-trigger";this._dialogClass="ui-datepicker-dialog";this._disableClass="ui-datepicker-disabled";this._unselectableClass="ui-datepicker-unselectable";this._currentClass="ui-datepicker-current-day";this._dayOverClass=
+"ui-datepicker-days-cell-over";this.regional=[];this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su",
+"Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:false,showMonthAfterYear:false,yearSuffix:""};this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:false,hideIfNoPrevNext:false,navigationAsDateFormat:false,gotoCurrent:false,changeMonth:false,changeYear:false,yearRange:"c-10:c+10",showOtherMonths:false,selectOtherMonths:false,showWeek:false,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",
+minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:true,showButtonPanel:false,autoSize:false,disabled:false};d.extend(this._defaults,this.regional[""]);this.dpDiv=N(d('<div id="'+this._mainDivId+'" class="ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))}function N(a){return a.bind("mouseout",
+function(b){b=d(b.target).closest("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a");b.length&&b.removeClass("ui-state-hover ui-datepicker-prev-hover ui-datepicker-next-hover")}).bind("mouseover",function(b){b=d(b.target).closest("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a");if(!(d.datepicker._isDisabledDatepicker(J.inline?a.parent()[0]:J.input[0])||!b.length)){b.parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover");
+b.addClass("ui-state-hover");b.hasClass("ui-datepicker-prev")&&b.addClass("ui-datepicker-prev-hover");b.hasClass("ui-datepicker-next")&&b.addClass("ui-datepicker-next-hover")}})}function H(a,b){d.extend(a,b);for(var c in b)if(b[c]==null||b[c]==C)a[c]=b[c];return a}d.extend(d.ui,{datepicker:{version:"1.8.16"}});var B=(new Date).getTime(),J;d.extend(M.prototype,{markerClassName:"hasDatepicker",maxRows:4,log:function(){this.debug&&console.log.apply("",arguments)},_widgetDatepicker:function(){return this.dpDiv},
+setDefaults:function(a){H(this._defaults,a||{});return this},_attachDatepicker:function(a,b){var c=null;for(var e in this._defaults){var f=a.getAttribute("date:"+e);if(f){c=c||{};try{c[e]=eval(f)}catch(h){c[e]=f}}}e=a.nodeName.toLowerCase();f=e=="div"||e=="span";if(!a.id){this.uuid+=1;a.id="dp"+this.uuid}var i=this._newInst(d(a),f);i.settings=d.extend({},b||{},c||{});if(e=="input")this._connectDatepicker(a,i);else f&&this._inlineDatepicker(a,i)},_newInst:function(a,b){return{id:a[0].id.replace(/([^A-Za-z0-9_-])/g,
+"\\\\$1"),input:a,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:b,dpDiv:!b?this.dpDiv:N(d('<div class="'+this._inlineClass+' ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"></div>'))}},_connectDatepicker:function(a,b){var c=d(a);b.append=d([]);b.trigger=d([]);if(!c.hasClass(this.markerClassName)){this._attachments(c,b);c.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp).bind("setData.datepicker",
+function(e,f,h){b.settings[f]=h}).bind("getData.datepicker",function(e,f){return this._get(b,f)});this._autoSize(b);d.data(a,"datepicker",b);b.settings.disabled&&this._disableDatepicker(a)}},_attachments:function(a,b){var c=this._get(b,"appendText"),e=this._get(b,"isRTL");b.append&&b.append.remove();if(c){b.append=d('<span class="'+this._appendClass+'">'+c+"</span>");a[e?"before":"after"](b.append)}a.unbind("focus",this._showDatepicker);b.trigger&&b.trigger.remove();c=this._get(b,"showOn");if(c==
+"focus"||c=="both")a.focus(this._showDatepicker);if(c=="button"||c=="both"){c=this._get(b,"buttonText");var f=this._get(b,"buttonImage");b.trigger=d(this._get(b,"buttonImageOnly")?d("<img/>").addClass(this._triggerClass).attr({src:f,alt:c,title:c}):d('<button type="button"></button>').addClass(this._triggerClass).html(f==""?c:d("<img/>").attr({src:f,alt:c,title:c})));a[e?"before":"after"](b.trigger);b.trigger.click(function(){d.datepicker._datepickerShowing&&d.datepicker._lastInput==a[0]?d.datepicker._hideDatepicker():
+d.datepicker._showDatepicker(a[0]);return false})}},_autoSize:function(a){if(this._get(a,"autoSize")&&!a.inline){var b=new Date(2009,11,20),c=this._get(a,"dateFormat");if(c.match(/[DM]/)){var e=function(f){for(var h=0,i=0,g=0;g<f.length;g++)if(f[g].length>h){h=f[g].length;i=g}return i};b.setMonth(e(this._get(a,c.match(/MM/)?"monthNames":"monthNamesShort")));b.setDate(e(this._get(a,c.match(/DD/)?"dayNames":"dayNamesShort"))+20-b.getDay())}a.input.attr("size",this._formatDate(a,b).length)}},_inlineDatepicker:function(a,
+b){var c=d(a);if(!c.hasClass(this.markerClassName)){c.addClass(this.markerClassName).append(b.dpDiv).bind("setData.datepicker",function(e,f,h){b.settings[f]=h}).bind("getData.datepicker",function(e,f){return this._get(b,f)});d.data(a,"datepicker",b);this._setDate(b,this._getDefaultDate(b),true);this._updateDatepicker(b);this._updateAlternate(b);b.settings.disabled&&this._disableDatepicker(a);b.dpDiv.css("display","block")}},_dialogDatepicker:function(a,b,c,e,f){a=this._dialogInst;if(!a){this.uuid+=
+1;this._dialogInput=d('<input type="text" id="'+("dp"+this.uuid)+'" style="position: absolute; top: -100px; width: 0px; z-index: -10;"/>');this._dialogInput.keydown(this._doKeyDown);d("body").append(this._dialogInput);a=this._dialogInst=this._newInst(this._dialogInput,false);a.settings={};d.data(this._dialogInput[0],"datepicker",a)}H(a.settings,e||{});b=b&&b.constructor==Date?this._formatDate(a,b):b;this._dialogInput.val(b);this._pos=f?f.length?f:[f.pageX,f.pageY]:null;if(!this._pos)this._pos=[document.documentElement.clientWidth/
+2-100+(document.documentElement.scrollLeft||document.body.scrollLeft),document.documentElement.clientHeight/2-150+(document.documentElement.scrollTop||document.body.scrollTop)];this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px");a.settings.onSelect=c;this._inDialog=true;this.dpDiv.addClass(this._dialogClass);this._showDatepicker(this._dialogInput[0]);d.blockUI&&d.blockUI(this.dpDiv);d.data(this._dialogInput[0],"datepicker",a);return this},_destroyDatepicker:function(a){var b=
+d(a),c=d.data(a,"datepicker");if(b.hasClass(this.markerClassName)){var e=a.nodeName.toLowerCase();d.removeData(a,"datepicker");if(e=="input"){c.append.remove();c.trigger.remove();b.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)}else if(e=="div"||e=="span")b.removeClass(this.markerClassName).empty()}},_enableDatepicker:function(a){var b=d(a),c=d.data(a,"datepicker");if(b.hasClass(this.markerClassName)){var e=
+a.nodeName.toLowerCase();if(e=="input"){a.disabled=false;c.trigger.filter("button").each(function(){this.disabled=false}).end().filter("img").css({opacity:"1.0",cursor:""})}else if(e=="div"||e=="span"){b=b.children("."+this._inlineClass);b.children().removeClass("ui-state-disabled");b.find("select.ui-datepicker-month, select.ui-datepicker-year").removeAttr("disabled")}this._disabledInputs=d.map(this._disabledInputs,function(f){return f==a?null:f})}},_disableDatepicker:function(a){var b=d(a),c=d.data(a,
+"datepicker");if(b.hasClass(this.markerClassName)){var e=a.nodeName.toLowerCase();if(e=="input"){a.disabled=true;c.trigger.filter("button").each(function(){this.disabled=true}).end().filter("img").css({opacity:"0.5",cursor:"default"})}else if(e=="div"||e=="span"){b=b.children("."+this._inlineClass);b.children().addClass("ui-state-disabled");b.find("select.ui-datepicker-month, select.ui-datepicker-year").attr("disabled","disabled")}this._disabledInputs=d.map(this._disabledInputs,function(f){return f==
+a?null:f});this._disabledInputs[this._disabledInputs.length]=a}},_isDisabledDatepicker:function(a){if(!a)return false;for(var b=0;b<this._disabledInputs.length;b++)if(this._disabledInputs[b]==a)return true;return false},_getInst:function(a){try{return d.data(a,"datepicker")}catch(b){throw"Missing instance data for this datepicker";}},_optionDatepicker:function(a,b,c){var e=this._getInst(a);if(arguments.length==2&&typeof b=="string")return b=="defaults"?d.extend({},d.datepicker._defaults):e?b=="all"?
+d.extend({},e.settings):this._get(e,b):null;var f=b||{};if(typeof b=="string"){f={};f[b]=c}if(e){this._curInst==e&&this._hideDatepicker();var h=this._getDateDatepicker(a,true),i=this._getMinMaxDate(e,"min"),g=this._getMinMaxDate(e,"max");H(e.settings,f);if(i!==null&&f.dateFormat!==C&&f.minDate===C)e.settings.minDate=this._formatDate(e,i);if(g!==null&&f.dateFormat!==C&&f.maxDate===C)e.settings.maxDate=this._formatDate(e,g);this._attachments(d(a),e);this._autoSize(e);this._setDate(e,h);this._updateAlternate(e);
+this._updateDatepicker(e)}},_changeDatepicker:function(a,b,c){this._optionDatepicker(a,b,c)},_refreshDatepicker:function(a){(a=this._getInst(a))&&this._updateDatepicker(a)},_setDateDatepicker:function(a,b){if(a=this._getInst(a)){this._setDate(a,b);this._updateDatepicker(a);this._updateAlternate(a)}},_getDateDatepicker:function(a,b){(a=this._getInst(a))&&!a.inline&&this._setDateFromField(a,b);return a?this._getDate(a):null},_doKeyDown:function(a){var b=d.datepicker._getInst(a.target),c=true,e=b.dpDiv.is(".ui-datepicker-rtl");
+b._keyEvent=true;if(d.datepicker._datepickerShowing)switch(a.keyCode){case 9:d.datepicker._hideDatepicker();c=false;break;case 13:c=d("td."+d.datepicker._dayOverClass+":not(."+d.datepicker._currentClass+")",b.dpDiv);c[0]&&d.datepicker._selectDay(a.target,b.selectedMonth,b.selectedYear,c[0]);if(a=d.datepicker._get(b,"onSelect")){c=d.datepicker._formatDate(b);a.apply(b.input?b.input[0]:null,[c,b])}else d.datepicker._hideDatepicker();return false;case 27:d.datepicker._hideDatepicker();break;case 33:d.datepicker._adjustDate(a.target,
+a.ctrlKey?-d.datepicker._get(b,"stepBigMonths"):-d.datepicker._get(b,"stepMonths"),"M");break;case 34:d.datepicker._adjustDate(a.target,a.ctrlKey?+d.datepicker._get(b,"stepBigMonths"):+d.datepicker._get(b,"stepMonths"),"M");break;case 35:if(a.ctrlKey||a.metaKey)d.datepicker._clearDate(a.target);c=a.ctrlKey||a.metaKey;break;case 36:if(a.ctrlKey||a.metaKey)d.datepicker._gotoToday(a.target);c=a.ctrlKey||a.metaKey;break;case 37:if(a.ctrlKey||a.metaKey)d.datepicker._adjustDate(a.target,e?+1:-1,"D");c=
+a.ctrlKey||a.metaKey;if(a.originalEvent.altKey)d.datepicker._adjustDate(a.target,a.ctrlKey?-d.datepicker._get(b,"stepBigMonths"):-d.datepicker._get(b,"stepMonths"),"M");break;case 38:if(a.ctrlKey||a.metaKey)d.datepicker._adjustDate(a.target,-7,"D");c=a.ctrlKey||a.metaKey;break;case 39:if(a.ctrlKey||a.metaKey)d.datepicker._adjustDate(a.target,e?-1:+1,"D");c=a.ctrlKey||a.metaKey;if(a.originalEvent.altKey)d.datepicker._adjustDate(a.target,a.ctrlKey?+d.datepicker._get(b,"stepBigMonths"):+d.datepicker._get(b,
+"stepMonths"),"M");break;case 40:if(a.ctrlKey||a.metaKey)d.datepicker._adjustDate(a.target,+7,"D");c=a.ctrlKey||a.metaKey;break;default:c=false}else if(a.keyCode==36&&a.ctrlKey)d.datepicker._showDatepicker(this);else c=false;if(c){a.preventDefault();a.stopPropagation()}},_doKeyPress:function(a){var b=d.datepicker._getInst(a.target);if(d.datepicker._get(b,"constrainInput")){b=d.datepicker._possibleChars(d.datepicker._get(b,"dateFormat"));var c=String.fromCharCode(a.charCode==C?a.keyCode:a.charCode);
+return a.ctrlKey||a.metaKey||c<" "||!b||b.indexOf(c)>-1}},_doKeyUp:function(a){a=d.datepicker._getInst(a.target);if(a.input.val()!=a.lastVal)try{if(d.datepicker.parseDate(d.datepicker._get(a,"dateFormat"),a.input?a.input.val():null,d.datepicker._getFormatConfig(a))){d.datepicker._setDateFromField(a);d.datepicker._updateAlternate(a);d.datepicker._updateDatepicker(a)}}catch(b){d.datepicker.log(b)}return true},_showDatepicker:function(a){a=a.target||a;if(a.nodeName.toLowerCase()!="input")a=d("input",
+a.parentNode)[0];if(!(d.datepicker._isDisabledDatepicker(a)||d.datepicker._lastInput==a)){var b=d.datepicker._getInst(a);if(d.datepicker._curInst&&d.datepicker._curInst!=b){d.datepicker._datepickerShowing&&d.datepicker._triggerOnClose(d.datepicker._curInst);d.datepicker._curInst.dpDiv.stop(true,true)}var c=d.datepicker._get(b,"beforeShow");c=c?c.apply(a,[a,b]):{};if(c!==false){H(b.settings,c);b.lastVal=null;d.datepicker._lastInput=a;d.datepicker._setDateFromField(b);if(d.datepicker._inDialog)a.value=
+"";if(!d.datepicker._pos){d.datepicker._pos=d.datepicker._findPos(a);d.datepicker._pos[1]+=a.offsetHeight}var e=false;d(a).parents().each(function(){e|=d(this).css("position")=="fixed";return!e});if(e&&d.browser.opera){d.datepicker._pos[0]-=document.documentElement.scrollLeft;d.datepicker._pos[1]-=document.documentElement.scrollTop}c={left:d.datepicker._pos[0],top:d.datepicker._pos[1]};d.datepicker._pos=null;b.dpDiv.empty();b.dpDiv.css({position:"absolute",display:"block",top:"-1000px"});d.datepicker._updateDatepicker(b);
+c=d.datepicker._checkOffset(b,c,e);b.dpDiv.css({position:d.datepicker._inDialog&&d.blockUI?"static":e?"fixed":"absolute",display:"none",left:c.left+"px",top:c.top+"px"});if(!b.inline){c=d.datepicker._get(b,"showAnim");var f=d.datepicker._get(b,"duration"),h=function(){var i=b.dpDiv.find("iframe.ui-datepicker-cover");if(i.length){var g=d.datepicker._getBorders(b.dpDiv);i.css({left:-g[0],top:-g[1],width:b.dpDiv.outerWidth(),height:b.dpDiv.outerHeight()})}};b.dpDiv.zIndex(d(a).zIndex()+1);d.datepicker._datepickerShowing=
+true;d.effects&&d.effects[c]?b.dpDiv.show(c,d.datepicker._get(b,"showOptions"),f,h):b.dpDiv[c||"show"](c?f:null,h);if(!c||!f)h();b.input.is(":visible")&&!b.input.is(":disabled")&&b.input.focus();d.datepicker._curInst=b}}}},_updateDatepicker:function(a){this.maxRows=4;var b=d.datepicker._getBorders(a.dpDiv);J=a;a.dpDiv.empty().append(this._generateHTML(a));var c=a.dpDiv.find("iframe.ui-datepicker-cover");c.length&&c.css({left:-b[0],top:-b[1],width:a.dpDiv.outerWidth(),height:a.dpDiv.outerHeight()});
+a.dpDiv.find("."+this._dayOverClass+" a").mouseover();b=this._getNumberOfMonths(a);c=b[1];a.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width("");c>1&&a.dpDiv.addClass("ui-datepicker-multi-"+c).css("width",17*c+"em");a.dpDiv[(b[0]!=1||b[1]!=1?"add":"remove")+"Class"]("ui-datepicker-multi");a.dpDiv[(this._get(a,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl");a==d.datepicker._curInst&&d.datepicker._datepickerShowing&&a.input&&a.input.is(":visible")&&
+!a.input.is(":disabled")&&a.input[0]!=document.activeElement&&a.input.focus();if(a.yearshtml){var e=a.yearshtml;setTimeout(function(){e===a.yearshtml&&a.yearshtml&&a.dpDiv.find("select.ui-datepicker-year:first").replaceWith(a.yearshtml);e=a.yearshtml=null},0)}},_getBorders:function(a){var b=function(c){return{thin:1,medium:2,thick:3}[c]||c};return[parseFloat(b(a.css("border-left-width"))),parseFloat(b(a.css("border-top-width")))]},_checkOffset:function(a,b,c){var e=a.dpDiv.outerWidth(),f=a.dpDiv.outerHeight(),
+h=a.input?a.input.outerWidth():0,i=a.input?a.input.outerHeight():0,g=document.documentElement.clientWidth+d(document).scrollLeft(),j=document.documentElement.clientHeight+d(document).scrollTop();b.left-=this._get(a,"isRTL")?e-h:0;b.left-=c&&b.left==a.input.offset().left?d(document).scrollLeft():0;b.top-=c&&b.top==a.input.offset().top+i?d(document).scrollTop():0;b.left-=Math.min(b.left,b.left+e>g&&g>e?Math.abs(b.left+e-g):0);b.top-=Math.min(b.top,b.top+f>j&&j>f?Math.abs(f+i):0);return b},_findPos:function(a){for(var b=
+this._get(this._getInst(a),"isRTL");a&&(a.type=="hidden"||a.nodeType!=1||d.expr.filters.hidden(a));)a=a[b?"previousSibling":"nextSibling"];a=d(a).offset();return[a.left,a.top]},_triggerOnClose:function(a){var b=this._get(a,"onClose");if(b)b.apply(a.input?a.input[0]:null,[a.input?a.input.val():"",a])},_hideDatepicker:function(a){var b=this._curInst;if(!(!b||a&&b!=d.data(a,"datepicker")))if(this._datepickerShowing){a=this._get(b,"showAnim");var c=this._get(b,"duration"),e=function(){d.datepicker._tidyDialog(b);
+this._curInst=null};d.effects&&d.effects[a]?b.dpDiv.hide(a,d.datepicker._get(b,"showOptions"),c,e):b.dpDiv[a=="slideDown"?"slideUp":a=="fadeIn"?"fadeOut":"hide"](a?c:null,e);a||e();d.datepicker._triggerOnClose(b);this._datepickerShowing=false;this._lastInput=null;if(this._inDialog){this._dialogInput.css({position:"absolute",left:"0",top:"-100px"});if(d.blockUI){d.unblockUI();d("body").append(this.dpDiv)}}this._inDialog=false}},_tidyDialog:function(a){a.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},
+_checkExternalClick:function(a){if(d.datepicker._curInst){a=d(a.target);a[0].id!=d.datepicker._mainDivId&&a.parents("#"+d.datepicker._mainDivId).length==0&&!a.hasClass(d.datepicker.markerClassName)&&!a.hasClass(d.datepicker._triggerClass)&&d.datepicker._datepickerShowing&&!(d.datepicker._inDialog&&d.blockUI)&&d.datepicker._hideDatepicker()}},_adjustDate:function(a,b,c){a=d(a);var e=this._getInst(a[0]);if(!this._isDisabledDatepicker(a[0])){this._adjustInstDate(e,b+(c=="M"?this._get(e,"showCurrentAtPos"):
+0),c);this._updateDatepicker(e)}},_gotoToday:function(a){a=d(a);var b=this._getInst(a[0]);if(this._get(b,"gotoCurrent")&&b.currentDay){b.selectedDay=b.currentDay;b.drawMonth=b.selectedMonth=b.currentMonth;b.drawYear=b.selectedYear=b.currentYear}else{var c=new Date;b.selectedDay=c.getDate();b.drawMonth=b.selectedMonth=c.getMonth();b.drawYear=b.selectedYear=c.getFullYear()}this._notifyChange(b);this._adjustDate(a)},_selectMonthYear:function(a,b,c){a=d(a);var e=this._getInst(a[0]);e["selected"+(c=="M"?
+"Month":"Year")]=e["draw"+(c=="M"?"Month":"Year")]=parseInt(b.options[b.selectedIndex].value,10);this._notifyChange(e);this._adjustDate(a)},_selectDay:function(a,b,c,e){var f=d(a);if(!(d(e).hasClass(this._unselectableClass)||this._isDisabledDatepicker(f[0]))){f=this._getInst(f[0]);f.selectedDay=f.currentDay=d("a",e).html();f.selectedMonth=f.currentMonth=b;f.selectedYear=f.currentYear=c;this._selectDate(a,this._formatDate(f,f.currentDay,f.currentMonth,f.currentYear))}},_clearDate:function(a){a=d(a);
+this._getInst(a[0]);this._selectDate(a,"")},_selectDate:function(a,b){a=this._getInst(d(a)[0]);b=b!=null?b:this._formatDate(a);a.input&&a.input.val(b);this._updateAlternate(a);var c=this._get(a,"onSelect");if(c)c.apply(a.input?a.input[0]:null,[b,a]);else a.input&&a.input.trigger("change");if(a.inline)this._updateDatepicker(a);else{this._hideDatepicker();this._lastInput=a.input[0];typeof a.input[0]!="object"&&a.input.focus();this._lastInput=null}},_updateAlternate:function(a){var b=this._get(a,"altField");
+if(b){var c=this._get(a,"altFormat")||this._get(a,"dateFormat"),e=this._getDate(a),f=this.formatDate(c,e,this._getFormatConfig(a));d(b).each(function(){d(this).val(f)})}},noWeekends:function(a){a=a.getDay();return[a>0&&a<6,""]},iso8601Week:function(a){a=new Date(a.getTime());a.setDate(a.getDate()+4-(a.getDay()||7));var b=a.getTime();a.setMonth(0);a.setDate(1);return Math.floor(Math.round((b-a)/864E5)/7)+1},parseDate:function(a,b,c){if(a==null||b==null)throw"Invalid arguments";b=typeof b=="object"?
+b.toString():b+"";if(b=="")return null;var e=(c?c.shortYearCutoff:null)||this._defaults.shortYearCutoff;e=typeof e!="string"?e:(new Date).getFullYear()%100+parseInt(e,10);for(var f=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,h=(c?c.dayNames:null)||this._defaults.dayNames,i=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort,g=(c?c.monthNames:null)||this._defaults.monthNames,j=c=-1,l=-1,u=-1,k=false,o=function(p){(p=A+1<a.length&&a.charAt(A+1)==p)&&A++;return p},m=function(p){var D=
+o(p);p=new RegExp("^\\d{1,"+(p=="@"?14:p=="!"?20:p=="y"&&D?4:p=="o"?3:2)+"}");p=b.substring(q).match(p);if(!p)throw"Missing number at position "+q;q+=p[0].length;return parseInt(p[0],10)},n=function(p,D,K){p=d.map(o(p)?K:D,function(w,x){return[[x,w]]}).sort(function(w,x){return-(w[1].length-x[1].length)});var E=-1;d.each(p,function(w,x){w=x[1];if(b.substr(q,w.length).toLowerCase()==w.toLowerCase()){E=x[0];q+=w.length;return false}});if(E!=-1)return E+1;else throw"Unknown name at position "+q;},s=
+function(){if(b.charAt(q)!=a.charAt(A))throw"Unexpected literal at position "+q;q++},q=0,A=0;A<a.length;A++)if(k)if(a.charAt(A)=="'"&&!o("'"))k=false;else s();else switch(a.charAt(A)){case "d":l=m("d");break;case "D":n("D",f,h);break;case "o":u=m("o");break;case "m":j=m("m");break;case "M":j=n("M",i,g);break;case "y":c=m("y");break;case "@":var v=new Date(m("@"));c=v.getFullYear();j=v.getMonth()+1;l=v.getDate();break;case "!":v=new Date((m("!")-this._ticksTo1970)/1E4);c=v.getFullYear();j=v.getMonth()+
+1;l=v.getDate();break;case "'":if(o("'"))s();else k=true;break;default:s()}if(q<b.length)throw"Extra/unparsed characters found in date: "+b.substring(q);if(c==-1)c=(new Date).getFullYear();else if(c<100)c+=(new Date).getFullYear()-(new Date).getFullYear()%100+(c<=e?0:-100);if(u>-1){j=1;l=u;do{e=this._getDaysInMonth(c,j-1);if(l<=e)break;j++;l-=e}while(1)}v=this._daylightSavingAdjust(new Date(c,j-1,l));if(v.getFullYear()!=c||v.getMonth()+1!=j||v.getDate()!=l)throw"Invalid date";return v},ATOM:"yy-mm-dd",
+COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925))*24*60*60*1E7,formatDate:function(a,b,c){if(!b)return"";var e=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,f=(c?c.dayNames:null)||this._defaults.dayNames,h=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort;c=(c?c.monthNames:
+null)||this._defaults.monthNames;var i=function(o){(o=k+1<a.length&&a.charAt(k+1)==o)&&k++;return o},g=function(o,m,n){m=""+m;if(i(o))for(;m.length<n;)m="0"+m;return m},j=function(o,m,n,s){return i(o)?s[m]:n[m]},l="",u=false;if(b)for(var k=0;k<a.length;k++)if(u)if(a.charAt(k)=="'"&&!i("'"))u=false;else l+=a.charAt(k);else switch(a.charAt(k)){case "d":l+=g("d",b.getDate(),2);break;case "D":l+=j("D",b.getDay(),e,f);break;case "o":l+=g("o",Math.round(((new Date(b.getFullYear(),b.getMonth(),b.getDate())).getTime()-
+(new Date(b.getFullYear(),0,0)).getTime())/864E5),3);break;case "m":l+=g("m",b.getMonth()+1,2);break;case "M":l+=j("M",b.getMonth(),h,c);break;case "y":l+=i("y")?b.getFullYear():(b.getYear()%100<10?"0":"")+b.getYear()%100;break;case "@":l+=b.getTime();break;case "!":l+=b.getTime()*1E4+this._ticksTo1970;break;case "'":if(i("'"))l+="'";else u=true;break;default:l+=a.charAt(k)}return l},_possibleChars:function(a){for(var b="",c=false,e=function(h){(h=f+1<a.length&&a.charAt(f+1)==h)&&f++;return h},f=
+0;f<a.length;f++)if(c)if(a.charAt(f)=="'"&&!e("'"))c=false;else b+=a.charAt(f);else switch(a.charAt(f)){case "d":case "m":case "y":case "@":b+="0123456789";break;case "D":case "M":return null;case "'":if(e("'"))b+="'";else c=true;break;default:b+=a.charAt(f)}return b},_get:function(a,b){return a.settings[b]!==C?a.settings[b]:this._defaults[b]},_setDateFromField:function(a,b){if(a.input.val()!=a.lastVal){var c=this._get(a,"dateFormat"),e=a.lastVal=a.input?a.input.val():null,f,h;f=h=this._getDefaultDate(a);
+var i=this._getFormatConfig(a);try{f=this.parseDate(c,e,i)||h}catch(g){this.log(g);e=b?"":e}a.selectedDay=f.getDate();a.drawMonth=a.selectedMonth=f.getMonth();a.drawYear=a.selectedYear=f.getFullYear();a.currentDay=e?f.getDate():0;a.currentMonth=e?f.getMonth():0;a.currentYear=e?f.getFullYear():0;this._adjustInstDate(a)}},_getDefaultDate:function(a){return this._restrictMinMax(a,this._determineDate(a,this._get(a,"defaultDate"),new Date))},_determineDate:function(a,b,c){var e=function(h){var i=new Date;
+i.setDate(i.getDate()+h);return i},f=function(h){try{return d.datepicker.parseDate(d.datepicker._get(a,"dateFormat"),h,d.datepicker._getFormatConfig(a))}catch(i){}var g=(h.toLowerCase().match(/^c/)?d.datepicker._getDate(a):null)||new Date,j=g.getFullYear(),l=g.getMonth();g=g.getDate();for(var u=/([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,k=u.exec(h);k;){switch(k[2]||"d"){case "d":case "D":g+=parseInt(k[1],10);break;case "w":case "W":g+=parseInt(k[1],10)*7;break;case "m":case "M":l+=parseInt(k[1],10);g=
+Math.min(g,d.datepicker._getDaysInMonth(j,l));break;case "y":case "Y":j+=parseInt(k[1],10);g=Math.min(g,d.datepicker._getDaysInMonth(j,l));break}k=u.exec(h)}return new Date(j,l,g)};if(b=(b=b==null||b===""?c:typeof b=="string"?f(b):typeof b=="number"?isNaN(b)?c:e(b):new Date(b.getTime()))&&b.toString()=="Invalid Date"?c:b){b.setHours(0);b.setMinutes(0);b.setSeconds(0);b.setMilliseconds(0)}return this._daylightSavingAdjust(b)},_daylightSavingAdjust:function(a){if(!a)return null;a.setHours(a.getHours()>
+12?a.getHours()+2:0);return a},_setDate:function(a,b,c){var e=!b,f=a.selectedMonth,h=a.selectedYear;b=this._restrictMinMax(a,this._determineDate(a,b,new Date));a.selectedDay=a.currentDay=b.getDate();a.drawMonth=a.selectedMonth=a.currentMonth=b.getMonth();a.drawYear=a.selectedYear=a.currentYear=b.getFullYear();if((f!=a.selectedMonth||h!=a.selectedYear)&&!c)this._notifyChange(a);this._adjustInstDate(a);if(a.input)a.input.val(e?"":this._formatDate(a))},_getDate:function(a){return!a.currentYear||a.input&&
+a.input.val()==""?null:this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay))},_generateHTML:function(a){var b=new Date;b=this._daylightSavingAdjust(new Date(b.getFullYear(),b.getMonth(),b.getDate()));var c=this._get(a,"isRTL"),e=this._get(a,"showButtonPanel"),f=this._get(a,"hideIfNoPrevNext"),h=this._get(a,"navigationAsDateFormat"),i=this._getNumberOfMonths(a),g=this._get(a,"showCurrentAtPos"),j=this._get(a,"stepMonths"),l=i[0]!=1||i[1]!=1,u=this._daylightSavingAdjust(!a.currentDay?
+new Date(9999,9,9):new Date(a.currentYear,a.currentMonth,a.currentDay)),k=this._getMinMaxDate(a,"min"),o=this._getMinMaxDate(a,"max");g=a.drawMonth-g;var m=a.drawYear;if(g<0){g+=12;m--}if(o){var n=this._daylightSavingAdjust(new Date(o.getFullYear(),o.getMonth()-i[0]*i[1]+1,o.getDate()));for(n=k&&n<k?k:n;this._daylightSavingAdjust(new Date(m,g,1))>n;){g--;if(g<0){g=11;m--}}}a.drawMonth=g;a.drawYear=m;n=this._get(a,"prevText");n=!h?n:this.formatDate(n,this._daylightSavingAdjust(new Date(m,g-j,1)),this._getFormatConfig(a));
+n=this._canAdjustMonth(a,-1,m,g)?'<a class="ui-datepicker-prev ui-corner-all" onclick="DP_jQuery_'+B+".datepicker._adjustDate('#"+a.id+"', -"+j+", 'M');\" title=\""+n+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"e":"w")+'">'+n+"</span></a>":f?"":'<a class="ui-datepicker-prev ui-corner-all ui-state-disabled" title="'+n+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"e":"w")+'">'+n+"</span></a>";var s=this._get(a,"nextText");s=!h?s:this.formatDate(s,this._daylightSavingAdjust(new Date(m,
+g+j,1)),this._getFormatConfig(a));f=this._canAdjustMonth(a,+1,m,g)?'<a class="ui-datepicker-next ui-corner-all" onclick="DP_jQuery_'+B+".datepicker._adjustDate('#"+a.id+"', +"+j+", 'M');\" title=\""+s+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"w":"e")+'">'+s+"</span></a>":f?"":'<a class="ui-datepicker-next ui-corner-all ui-state-disabled" title="'+s+'"><span class="ui-icon ui-icon-circle-triangle-'+(c?"w":"e")+'">'+s+"</span></a>";j=this._get(a,"currentText");s=this._get(a,"gotoCurrent")&&
+a.currentDay?u:b;j=!h?j:this.formatDate(j,s,this._getFormatConfig(a));h=!a.inline?'<button type="button" class="ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all" onclick="DP_jQuery_'+B+'.datepicker._hideDatepicker();">'+this._get(a,"closeText")+"</button>":"";e=e?'<div class="ui-datepicker-buttonpane ui-widget-content">'+(c?h:"")+(this._isInRange(a,s)?'<button type="button" class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all" onclick="DP_jQuery_'+
+B+".datepicker._gotoToday('#"+a.id+"');\">"+j+"</button>":"")+(c?"":h)+"</div>":"";h=parseInt(this._get(a,"firstDay"),10);h=isNaN(h)?0:h;j=this._get(a,"showWeek");s=this._get(a,"dayNames");this._get(a,"dayNamesShort");var q=this._get(a,"dayNamesMin"),A=this._get(a,"monthNames"),v=this._get(a,"monthNamesShort"),p=this._get(a,"beforeShowDay"),D=this._get(a,"showOtherMonths"),K=this._get(a,"selectOtherMonths");this._get(a,"calculateWeek");for(var E=this._getDefaultDate(a),w="",x=0;x<i[0];x++){var O=
+"";this.maxRows=4;for(var G=0;G<i[1];G++){var P=this._daylightSavingAdjust(new Date(m,g,a.selectedDay)),t=" ui-corner-all",y="";if(l){y+='<div class="ui-datepicker-group';if(i[1]>1)switch(G){case 0:y+=" ui-datepicker-group-first";t=" ui-corner-"+(c?"right":"left");break;case i[1]-1:y+=" ui-datepicker-group-last";t=" ui-corner-"+(c?"left":"right");break;default:y+=" ui-datepicker-group-middle";t="";break}y+='">'}y+='<div class="ui-datepicker-header ui-widget-header ui-helper-clearfix'+t+'">'+(/all|left/.test(t)&&
+x==0?c?f:n:"")+(/all|right/.test(t)&&x==0?c?n:f:"")+this._generateMonthYearHeader(a,g,m,k,o,x>0||G>0,A,v)+'</div><table class="ui-datepicker-calendar"><thead><tr>';var z=j?'<th class="ui-datepicker-week-col">'+this._get(a,"weekHeader")+"</th>":"";for(t=0;t<7;t++){var r=(t+h)%7;z+="<th"+((t+h+6)%7>=5?' class="ui-datepicker-week-end"':"")+'><span title="'+s[r]+'">'+q[r]+"</span></th>"}y+=z+"</tr></thead><tbody>";z=this._getDaysInMonth(m,g);if(m==a.selectedYear&&g==a.selectedMonth)a.selectedDay=Math.min(a.selectedDay,
+z);t=(this._getFirstDayOfMonth(m,g)-h+7)%7;z=Math.ceil((t+z)/7);this.maxRows=z=l?this.maxRows>z?this.maxRows:z:z;r=this._daylightSavingAdjust(new Date(m,g,1-t));for(var Q=0;Q<z;Q++){y+="<tr>";var R=!j?"":'<td class="ui-datepicker-week-col">'+this._get(a,"calculateWeek")(r)+"</td>";for(t=0;t<7;t++){var I=p?p.apply(a.input?a.input[0]:null,[r]):[true,""],F=r.getMonth()!=g,L=F&&!K||!I[0]||k&&r<k||o&&r>o;R+='<td class="'+((t+h+6)%7>=5?" ui-datepicker-week-end":"")+(F?" ui-datepicker-other-month":"")+(r.getTime()==
+P.getTime()&&g==a.selectedMonth&&a._keyEvent||E.getTime()==r.getTime()&&E.getTime()==P.getTime()?" "+this._dayOverClass:"")+(L?" "+this._unselectableClass+" ui-state-disabled":"")+(F&&!D?"":" "+I[1]+(r.getTime()==u.getTime()?" "+this._currentClass:"")+(r.getTime()==b.getTime()?" ui-datepicker-today":""))+'"'+((!F||D)&&I[2]?' title="'+I[2]+'"':"")+(L?"":' onclick="DP_jQuery_'+B+".datepicker._selectDay('#"+a.id+"',"+r.getMonth()+","+r.getFullYear()+', this);return false;"')+">"+(F&&!D?"&#xa0;":L?'<span class="ui-state-default">'+
+r.getDate()+"</span>":'<a class="ui-state-default'+(r.getTime()==b.getTime()?" ui-state-highlight":"")+(r.getTime()==u.getTime()?" ui-state-active":"")+(F?" ui-priority-secondary":"")+'" href="#">'+r.getDate()+"</a>")+"</td>";r.setDate(r.getDate()+1);r=this._daylightSavingAdjust(r)}y+=R+"</tr>"}g++;if(g>11){g=0;m++}y+="</tbody></table>"+(l?"</div>"+(i[0]>0&&G==i[1]-1?'<div class="ui-datepicker-row-break"></div>':""):"");O+=y}w+=O}w+=e+(d.browser.msie&&parseInt(d.browser.version,10)<7&&!a.inline?'<iframe src="javascript:false;" class="ui-datepicker-cover" frameborder="0"></iframe>':
+"");a._keyEvent=false;return w},_generateMonthYearHeader:function(a,b,c,e,f,h,i,g){var j=this._get(a,"changeMonth"),l=this._get(a,"changeYear"),u=this._get(a,"showMonthAfterYear"),k='<div class="ui-datepicker-title">',o="";if(h||!j)o+='<span class="ui-datepicker-month">'+i[b]+"</span>";else{i=e&&e.getFullYear()==c;var m=f&&f.getFullYear()==c;o+='<select class="ui-datepicker-month" onchange="DP_jQuery_'+B+".datepicker._selectMonthYear('#"+a.id+"', this, 'M');\" >";for(var n=0;n<12;n++)if((!i||n>=e.getMonth())&&
+(!m||n<=f.getMonth()))o+='<option value="'+n+'"'+(n==b?' selected="selected"':"")+">"+g[n]+"</option>";o+="</select>"}u||(k+=o+(h||!(j&&l)?"&#xa0;":""));if(!a.yearshtml){a.yearshtml="";if(h||!l)k+='<span class="ui-datepicker-year">'+c+"</span>";else{g=this._get(a,"yearRange").split(":");var s=(new Date).getFullYear();i=function(q){q=q.match(/c[+-].*/)?c+parseInt(q.substring(1),10):q.match(/[+-].*/)?s+parseInt(q,10):parseInt(q,10);return isNaN(q)?s:q};b=i(g[0]);g=Math.max(b,i(g[1]||""));b=e?Math.max(b,
+e.getFullYear()):b;g=f?Math.min(g,f.getFullYear()):g;for(a.yearshtml+='<select class="ui-datepicker-year" onchange="DP_jQuery_'+B+".datepicker._selectMonthYear('#"+a.id+"', this, 'Y');\" >";b<=g;b++)a.yearshtml+='<option value="'+b+'"'+(b==c?' selected="selected"':"")+">"+b+"</option>";a.yearshtml+="</select>";k+=a.yearshtml;a.yearshtml=null}}k+=this._get(a,"yearSuffix");if(u)k+=(h||!(j&&l)?"&#xa0;":"")+o;k+="</div>";return k},_adjustInstDate:function(a,b,c){var e=a.drawYear+(c=="Y"?b:0),f=a.drawMonth+
+(c=="M"?b:0);b=Math.min(a.selectedDay,this._getDaysInMonth(e,f))+(c=="D"?b:0);e=this._restrictMinMax(a,this._daylightSavingAdjust(new Date(e,f,b)));a.selectedDay=e.getDate();a.drawMonth=a.selectedMonth=e.getMonth();a.drawYear=a.selectedYear=e.getFullYear();if(c=="M"||c=="Y")this._notifyChange(a)},_restrictMinMax:function(a,b){var c=this._getMinMaxDate(a,"min");a=this._getMinMaxDate(a,"max");b=c&&b<c?c:b;return b=a&&b>a?a:b},_notifyChange:function(a){var b=this._get(a,"onChangeMonthYear");if(b)b.apply(a.input?
+a.input[0]:null,[a.selectedYear,a.selectedMonth+1,a])},_getNumberOfMonths:function(a){a=this._get(a,"numberOfMonths");return a==null?[1,1]:typeof a=="number"?[1,a]:a},_getMinMaxDate:function(a,b){return this._determineDate(a,this._get(a,b+"Date"),null)},_getDaysInMonth:function(a,b){return 32-this._daylightSavingAdjust(new Date(a,b,32)).getDate()},_getFirstDayOfMonth:function(a,b){return(new Date(a,b,1)).getDay()},_canAdjustMonth:function(a,b,c,e){var f=this._getNumberOfMonths(a);c=this._daylightSavingAdjust(new Date(c,
+e+(b<0?b:f[0]*f[1]),1));b<0&&c.setDate(this._getDaysInMonth(c.getFullYear(),c.getMonth()));return this._isInRange(a,c)},_isInRange:function(a,b){var c=this._getMinMaxDate(a,"min");a=this._getMinMaxDate(a,"max");return(!c||b.getTime()>=c.getTime())&&(!a||b.getTime()<=a.getTime())},_getFormatConfig:function(a){var b=this._get(a,"shortYearCutoff");b=typeof b!="string"?b:(new Date).getFullYear()%100+parseInt(b,10);return{shortYearCutoff:b,dayNamesShort:this._get(a,"dayNamesShort"),dayNames:this._get(a,
+"dayNames"),monthNamesShort:this._get(a,"monthNamesShort"),monthNames:this._get(a,"monthNames")}},_formatDate:function(a,b,c,e){if(!b){a.currentDay=a.selectedDay;a.currentMonth=a.selectedMonth;a.currentYear=a.selectedYear}b=b?typeof b=="object"?b:this._daylightSavingAdjust(new Date(e,c,b)):this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay));return this.formatDate(this._get(a,"dateFormat"),b,this._getFormatConfig(a))}});d.fn.datepicker=function(a){if(!this.length)return this;
+if(!d.datepicker.initialized){d(document).mousedown(d.datepicker._checkExternalClick).find("body").append(d.datepicker.dpDiv);d.datepicker.initialized=true}var b=Array.prototype.slice.call(arguments,1);if(typeof a=="string"&&(a=="isDisabled"||a=="getDate"||a=="widget"))return d.datepicker["_"+a+"Datepicker"].apply(d.datepicker,[this[0]].concat(b));if(a=="option"&&arguments.length==2&&typeof arguments[1]=="string")return d.datepicker["_"+a+"Datepicker"].apply(d.datepicker,[this[0]].concat(b));return this.each(function(){typeof a==
+"string"?d.datepicker["_"+a+"Datepicker"].apply(d.datepicker,[this].concat(b)):d.datepicker._attachDatepicker(this,a)})};d.datepicker=new M;d.datepicker.initialized=false;d.datepicker.uuid=(new Date).getTime();d.datepicker.version="1.8.16";window["DP_jQuery_"+B]=d})(jQuery);
similarity index 75%
rename from wp-includes/js/jquery/ui.dialog.js
rename to wp-includes/js/jquery/ui/jquery.ui.dialog.min.js
index 4bddfed3f9fa73f2a8584d4a677fdf8209f2c72b..a16bf9eb0c13f3a8b21a4fe8759a9f57a1527529 100644 (file)
@@ -1,5 +1,5 @@
 /*
 /*
- * jQuery UI Dialog 1.8.12
+ * jQuery UI Dialog 1.8.16
  *
  * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
  * Dual licensed under the MIT or GPL Version 2 licenses.
  *
  * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
  * Dual licensed under the MIT or GPL Version 2 licenses.
  */
 (function(c,l){var m={buttons:true,height:true,maxHeight:true,maxWidth:true,minHeight:true,minWidth:true,width:true},n={maxHeight:true,maxWidth:true,minHeight:true,minWidth:true},o=c.attrFn||{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true,click:true};c.widget("ui.dialog",{options:{autoOpen:true,buttons:{},closeOnEscape:true,closeText:"close",dialogClass:"",draggable:true,hide:null,height:"auto",maxHeight:false,maxWidth:false,minHeight:150,minWidth:150,modal:false,
 position:{my:"center",at:"center",collision:"fit",using:function(a){var b=c(this).css(a).offset().top;b<0&&c(this).css("top",a.top-b)}},resizable:true,show:null,stack:true,title:"",width:300,zIndex:1E3},_create:function(){this.originalTitle=this.element.attr("title");if(typeof this.originalTitle!=="string")this.originalTitle="";this.options.title=this.options.title||this.originalTitle;var a=this,b=a.options,d=b.title||"&#160;",e=c.ui.dialog.getTitleId(a.element),g=(a.uiDialog=c("<div></div>")).appendTo(document.body).hide().addClass("ui-dialog ui-widget ui-widget-content ui-corner-all "+
  */
 (function(c,l){var m={buttons:true,height:true,maxHeight:true,maxWidth:true,minHeight:true,minWidth:true,width:true},n={maxHeight:true,maxWidth:true,minHeight:true,minWidth:true},o=c.attrFn||{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true,click:true};c.widget("ui.dialog",{options:{autoOpen:true,buttons:{},closeOnEscape:true,closeText:"close",dialogClass:"",draggable:true,hide:null,height:"auto",maxHeight:false,maxWidth:false,minHeight:150,minWidth:150,modal:false,
 position:{my:"center",at:"center",collision:"fit",using:function(a){var b=c(this).css(a).offset().top;b<0&&c(this).css("top",a.top-b)}},resizable:true,show:null,stack:true,title:"",width:300,zIndex:1E3},_create:function(){this.originalTitle=this.element.attr("title");if(typeof this.originalTitle!=="string")this.originalTitle="";this.options.title=this.options.title||this.originalTitle;var a=this,b=a.options,d=b.title||"&#160;",e=c.ui.dialog.getTitleId(a.element),g=(a.uiDialog=c("<div></div>")).appendTo(document.body).hide().addClass("ui-dialog ui-widget ui-widget-content ui-corner-all "+
-b.dialogClass).css({zIndex:b.zIndex}).attr("tabIndex",-1).css("outline",0).keydown(function(i){if(b.closeOnEscape&&i.keyCode&&i.keyCode===c.ui.keyCode.ESCAPE){a.close(i);i.preventDefault()}}).attr({role:"dialog","aria-labelledby":e}).mousedown(function(i){a.moveToTop(false,i)});a.element.show().removeAttr("title").addClass("ui-dialog-content ui-widget-content").appendTo(g);var f=(a.uiDialogTitlebar=c("<div></div>")).addClass("ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix").prependTo(g),
+b.dialogClass).css({zIndex:b.zIndex}).attr("tabIndex",-1).css("outline",0).keydown(function(i){if(b.closeOnEscape&&!i.isDefaultPrevented()&&i.keyCode&&i.keyCode===c.ui.keyCode.ESCAPE){a.close(i);i.preventDefault()}}).attr({role:"dialog","aria-labelledby":e}).mousedown(function(i){a.moveToTop(false,i)});a.element.show().removeAttr("title").addClass("ui-dialog-content ui-widget-content").appendTo(g);var f=(a.uiDialogTitlebar=c("<div></div>")).addClass("ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix").prependTo(g),
 h=c('<a href="#"></a>').addClass("ui-dialog-titlebar-close ui-corner-all").attr("role","button").hover(function(){h.addClass("ui-state-hover")},function(){h.removeClass("ui-state-hover")}).focus(function(){h.addClass("ui-state-focus")}).blur(function(){h.removeClass("ui-state-focus")}).click(function(i){a.close(i);return false}).appendTo(f);(a.uiDialogTitlebarCloseText=c("<span></span>")).addClass("ui-icon ui-icon-closethick").text(b.closeText).appendTo(h);c("<span></span>").addClass("ui-dialog-title").attr("id",
 e).html(d).prependTo(f);if(c.isFunction(b.beforeclose)&&!c.isFunction(b.beforeClose))b.beforeClose=b.beforeclose;f.find("*").add(f).disableSelection();b.draggable&&c.fn.draggable&&a._makeDraggable();b.resizable&&c.fn.resizable&&a._makeResizable();a._createButtons(b.buttons);a._isOpen=false;c.fn.bgiframe&&g.bgiframe()},_init:function(){this.options.autoOpen&&this.open()},destroy:function(){var a=this;a.overlay&&a.overlay.destroy();a.uiDialog.hide();a.element.unbind(".dialog").removeData("dialog").removeClass("ui-dialog-content ui-widget-content").hide().appendTo("body");
 a.uiDialog.remove();a.originalTitle&&a.element.attr("title",a.originalTitle);return a},widget:function(){return this.uiDialog},close:function(a){var b=this,d,e;if(false!==b._trigger("beforeClose",a)){b.overlay&&b.overlay.destroy();b.uiDialog.unbind("keypress.ui-dialog");b._isOpen=false;if(b.options.hide)b.uiDialog.hide(b.options.hide,function(){b._trigger("close",a)});else{b.uiDialog.hide();b._trigger("close",a)}c.ui.dialog.overlay.resize();if(b.options.modal){d=0;c(".ui-dialog").each(function(){if(this!==
 h=c('<a href="#"></a>').addClass("ui-dialog-titlebar-close ui-corner-all").attr("role","button").hover(function(){h.addClass("ui-state-hover")},function(){h.removeClass("ui-state-hover")}).focus(function(){h.addClass("ui-state-focus")}).blur(function(){h.removeClass("ui-state-focus")}).click(function(i){a.close(i);return false}).appendTo(f);(a.uiDialogTitlebarCloseText=c("<span></span>")).addClass("ui-icon ui-icon-closethick").text(b.closeText).appendTo(h);c("<span></span>").addClass("ui-dialog-title").attr("id",
 e).html(d).prependTo(f);if(c.isFunction(b.beforeclose)&&!c.isFunction(b.beforeClose))b.beforeClose=b.beforeclose;f.find("*").add(f).disableSelection();b.draggable&&c.fn.draggable&&a._makeDraggable();b.resizable&&c.fn.resizable&&a._makeResizable();a._createButtons(b.buttons);a._isOpen=false;c.fn.bgiframe&&g.bgiframe()},_init:function(){this.options.autoOpen&&this.open()},destroy:function(){var a=this;a.overlay&&a.overlay.destroy();a.uiDialog.hide();a.element.unbind(".dialog").removeData("dialog").removeClass("ui-dialog-content ui-widget-content").hide().appendTo("body");
 a.uiDialog.remove();a.originalTitle&&a.element.attr("title",a.originalTitle);return a},widget:function(){return this.uiDialog},close:function(a){var b=this,d,e;if(false!==b._trigger("beforeClose",a)){b.overlay&&b.overlay.destroy();b.uiDialog.unbind("keypress.ui-dialog");b._isOpen=false;if(b.options.hide)b.uiDialog.hide(b.options.hide,function(){b._trigger("close",a)});else{b.uiDialog.hide();b._trigger("close",a)}c.ui.dialog.overlay.resize();if(b.options.modal){d=0;c(".ui-dialog").each(function(){if(this!==
-b.uiDialog[0]){e=c(this).css("z-index");isNaN(e)||(d=Math.max(d,e))}});c.ui.dialog.maxZ=d}return b}},isOpen:function(){return this._isOpen},moveToTop:function(a,b){var d=this,e=d.options;if(e.modal&&!a||!e.stack&&!e.modal)return d._trigger("focus",b);if(e.zIndex>c.ui.dialog.maxZ)c.ui.dialog.maxZ=e.zIndex;if(d.overlay){c.ui.dialog.maxZ+=1;d.overlay.$el.css("z-index",c.ui.dialog.overlay.maxZ=c.ui.dialog.maxZ)}a={scrollTop:d.element.attr("scrollTop"),scrollLeft:d.element.attr("scrollLeft")};c.ui.dialog.maxZ+=
-1;d.uiDialog.css("z-index",c.ui.dialog.maxZ);d.element.attr(a);d._trigger("focus",b);return d},open:function(){if(!this._isOpen){var a=this,b=a.options,d=a.uiDialog;a.overlay=b.modal?new c.ui.dialog.overlay(a):null;a._size();a._position(b.position);d.show(b.show);a.moveToTop(true);b.modal&&d.bind("keypress.ui-dialog",function(e){if(e.keyCode===c.ui.keyCode.TAB){var g=c(":tabbable",this),f=g.filter(":first");g=g.filter(":last");if(e.target===g[0]&&!e.shiftKey){f.focus(1);return false}else if(e.target===
+b.uiDialog[0]){e=c(this).css("z-index");isNaN(e)||(d=Math.max(d,e))}});c.ui.dialog.maxZ=d}return b}},isOpen:function(){return this._isOpen},moveToTop:function(a,b){var d=this,e=d.options;if(e.modal&&!a||!e.stack&&!e.modal)return d._trigger("focus",b);if(e.zIndex>c.ui.dialog.maxZ)c.ui.dialog.maxZ=e.zIndex;if(d.overlay){c.ui.dialog.maxZ+=1;d.overlay.$el.css("z-index",c.ui.dialog.overlay.maxZ=c.ui.dialog.maxZ)}a={scrollTop:d.element.scrollTop(),scrollLeft:d.element.scrollLeft()};c.ui.dialog.maxZ+=1;
+d.uiDialog.css("z-index",c.ui.dialog.maxZ);d.element.attr(a);d._trigger("focus",b);return d},open:function(){if(!this._isOpen){var a=this,b=a.options,d=a.uiDialog;a.overlay=b.modal?new c.ui.dialog.overlay(a):null;a._size();a._position(b.position);d.show(b.show);a.moveToTop(true);b.modal&&d.bind("keypress.ui-dialog",function(e){if(e.keyCode===c.ui.keyCode.TAB){var g=c(":tabbable",this),f=g.filter(":first");g=g.filter(":last");if(e.target===g[0]&&!e.shiftKey){f.focus(1);return false}else if(e.target===
 f[0]&&e.shiftKey){g.focus(1);return false}}});c(a.element.find(":tabbable").get().concat(d.find(".ui-dialog-buttonpane :tabbable").get().concat(d.get()))).eq(0).focus();a._isOpen=true;a._trigger("open");return a}},_createButtons:function(a){var b=this,d=false,e=c("<div></div>").addClass("ui-dialog-buttonpane ui-widget-content ui-helper-clearfix"),g=c("<div></div>").addClass("ui-dialog-buttonset").appendTo(e);b.uiDialog.find(".ui-dialog-buttonpane").remove();typeof a==="object"&&a!==null&&c.each(a,
 function(){return!(d=true)});if(d){c.each(a,function(f,h){h=c.isFunction(h)?{click:h,text:f}:h;var i=c('<button type="button"></button>').click(function(){h.click.apply(b.element[0],arguments)}).appendTo(g);c.each(h,function(j,k){if(j!=="click")j in o?i[j](k):i.attr(j,k)});c.fn.button&&i.button()});e.appendTo(b.uiDialog)}},_makeDraggable:function(){function a(f){return{position:f.position,offset:f.offset}}var b=this,d=b.options,e=c(document),g;b.uiDialog.draggable({cancel:".ui-dialog-content, .ui-dialog-titlebar-close",
 handle:".ui-dialog-titlebar",containment:"document",start:function(f,h){g=d.height==="auto"?"auto":c(this).height();c(this).height(c(this).height()).addClass("ui-dialog-dragging");b._trigger("dragStart",f,a(h))},drag:function(f,h){b._trigger("drag",f,a(h))},stop:function(f,h){d.position=[h.position.left-e.scrollLeft(),h.position.top-e.scrollTop()];c(this).removeClass("ui-dialog-dragging").height(g);b._trigger("dragStop",f,a(h));c.ui.dialog.overlay.resize()}})},_makeResizable:function(a){function b(f){return{originalPosition:f.originalPosition,
 f[0]&&e.shiftKey){g.focus(1);return false}}});c(a.element.find(":tabbable").get().concat(d.find(".ui-dialog-buttonpane :tabbable").get().concat(d.get()))).eq(0).focus();a._isOpen=true;a._trigger("open");return a}},_createButtons:function(a){var b=this,d=false,e=c("<div></div>").addClass("ui-dialog-buttonpane ui-widget-content ui-helper-clearfix"),g=c("<div></div>").addClass("ui-dialog-buttonset").appendTo(e);b.uiDialog.find(".ui-dialog-buttonpane").remove();typeof a==="object"&&a!==null&&c.each(a,
 function(){return!(d=true)});if(d){c.each(a,function(f,h){h=c.isFunction(h)?{click:h,text:f}:h;var i=c('<button type="button"></button>').click(function(){h.click.apply(b.element[0],arguments)}).appendTo(g);c.each(h,function(j,k){if(j!=="click")j in o?i[j](k):i.attr(j,k)});c.fn.button&&i.button()});e.appendTo(b.uiDialog)}},_makeDraggable:function(){function a(f){return{position:f.position,offset:f.offset}}var b=this,d=b.options,e=c(document),g;b.uiDialog.draggable({cancel:".ui-dialog-content, .ui-dialog-titlebar-close",
 handle:".ui-dialog-titlebar",containment:"document",start:function(f,h){g=d.height==="auto"?"auto":c(this).height();c(this).height(c(this).height()).addClass("ui-dialog-dragging");b._trigger("dragStart",f,a(h))},drag:function(f,h){b._trigger("drag",f,a(h))},stop:function(f,h){d.position=[h.position.left-e.scrollLeft(),h.position.top-e.scrollTop()];c(this).removeClass("ui-dialog-dragging").height(g);b._trigger("dragStop",f,a(h));c.ui.dialog.overlay.resize()}})},_makeResizable:function(a){function b(f){return{originalPosition:f.originalPosition,
@@ -33,8 +33,8 @@ f,b(h))},stop:function(f,h){c(this).removeClass("ui-dialog-resizing");e.height=c
 if(g in m)e=true;if(g in n)d[g]=f});e&&this._size();this.uiDialog.is(":data(resizable)")&&this.uiDialog.resizable("option",d)},_setOption:function(a,b){var d=this,e=d.uiDialog;switch(a){case "beforeclose":a="beforeClose";break;case "buttons":d._createButtons(b);break;case "closeText":d.uiDialogTitlebarCloseText.text(""+b);break;case "dialogClass":e.removeClass(d.options.dialogClass).addClass("ui-dialog ui-widget ui-widget-content ui-corner-all "+b);break;case "disabled":b?e.addClass("ui-dialog-disabled"):
 e.removeClass("ui-dialog-disabled");break;case "draggable":var g=e.is(":data(draggable)");g&&!b&&e.draggable("destroy");!g&&b&&d._makeDraggable();break;case "position":d._position(b);break;case "resizable":(g=e.is(":data(resizable)"))&&!b&&e.resizable("destroy");g&&typeof b==="string"&&e.resizable("option","handles",b);!g&&b!==false&&d._makeResizable(b);break;case "title":c(".ui-dialog-title",d.uiDialogTitlebar).html(""+(b||"&#160;"));break}c.Widget.prototype._setOption.apply(d,arguments)},_size:function(){var a=
 this.options,b,d,e=this.uiDialog.is(":visible");this.element.show().css({width:"auto",minHeight:0,height:0});if(a.minWidth>a.width)a.width=a.minWidth;b=this.uiDialog.css({height:"auto",width:a.width}).height();d=Math.max(0,a.minHeight-b);if(a.height==="auto")if(c.support.minHeight)this.element.css({minHeight:d,height:"auto"});else{this.uiDialog.show();a=this.element.css("height","auto").height();e||this.uiDialog.hide();this.element.height(Math.max(a,d))}else this.element.height(Math.max(a.height-
 if(g in m)e=true;if(g in n)d[g]=f});e&&this._size();this.uiDialog.is(":data(resizable)")&&this.uiDialog.resizable("option",d)},_setOption:function(a,b){var d=this,e=d.uiDialog;switch(a){case "beforeclose":a="beforeClose";break;case "buttons":d._createButtons(b);break;case "closeText":d.uiDialogTitlebarCloseText.text(""+b);break;case "dialogClass":e.removeClass(d.options.dialogClass).addClass("ui-dialog ui-widget ui-widget-content ui-corner-all "+b);break;case "disabled":b?e.addClass("ui-dialog-disabled"):
 e.removeClass("ui-dialog-disabled");break;case "draggable":var g=e.is(":data(draggable)");g&&!b&&e.draggable("destroy");!g&&b&&d._makeDraggable();break;case "position":d._position(b);break;case "resizable":(g=e.is(":data(resizable)"))&&!b&&e.resizable("destroy");g&&typeof b==="string"&&e.resizable("option","handles",b);!g&&b!==false&&d._makeResizable(b);break;case "title":c(".ui-dialog-title",d.uiDialogTitlebar).html(""+(b||"&#160;"));break}c.Widget.prototype._setOption.apply(d,arguments)},_size:function(){var a=
 this.options,b,d,e=this.uiDialog.is(":visible");this.element.show().css({width:"auto",minHeight:0,height:0});if(a.minWidth>a.width)a.width=a.minWidth;b=this.uiDialog.css({height:"auto",width:a.width}).height();d=Math.max(0,a.minHeight-b);if(a.height==="auto")if(c.support.minHeight)this.element.css({minHeight:d,height:"auto"});else{this.uiDialog.show();a=this.element.css("height","auto").height();e||this.uiDialog.hide();this.element.height(Math.max(a,d))}else this.element.height(Math.max(a.height-
-b,0));this.uiDialog.is(":data(resizable)")&&this.uiDialog.resizable("option","minHeight",this._minHeight())}});c.extend(c.ui.dialog,{version:"1.8.12",uuid:0,maxZ:0,getTitleId:function(a){a=a.attr("id");if(!a){this.uuid+=1;a=this.uuid}return"ui-dialog-title-"+a},overlay:function(a){this.$el=c.ui.dialog.overlay.create(a)}});c.extend(c.ui.dialog.overlay,{instances:[],oldInstances:[],maxZ:0,events:c.map("focus,mousedown,mouseup,keydown,keypress,click".split(","),function(a){return a+".dialog-overlay"}).join(" "),
-create:function(a){if(this.instances.length===0){setTimeout(function(){c.ui.dialog.overlay.instances.length&&c(document).bind(c.ui.dialog.overlay.events,function(d){if(c(d.target).zIndex()<c.ui.dialog.overlay.maxZ)return false})},1);c(document).bind("keydown.dialog-overlay",function(d){if(a.options.closeOnEscape&&d.keyCode&&d.keyCode===c.ui.keyCode.ESCAPE){a.close(d);d.preventDefault()}});c(window).bind("resize.dialog-overlay",c.ui.dialog.overlay.resize)}var b=(this.oldInstances.pop()||c("<div></div>").addClass("ui-widget-overlay")).appendTo(document.body).css({width:this.width(),
-height:this.height()});c.fn.bgiframe&&b.bgiframe();this.instances.push(b);return b},destroy:function(a){var b=c.inArray(a,this.instances);b!=-1&&this.oldInstances.push(this.instances.splice(b,1)[0]);this.instances.length===0&&c([document,window]).unbind(".dialog-overlay");a.remove();var d=0;c.each(this.instances,function(){d=Math.max(d,this.css("z-index"))});this.maxZ=d},height:function(){var a,b;if(c.browser.msie&&c.browser.version<7){a=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight);
-b=Math.max(document.documentElement.offsetHeight,document.body.offsetHeight);return a<b?c(window).height()+"px":a+"px"}else return c(document).height()+"px"},width:function(){var a,b;if(c.browser.msie&&c.browser.version<7){a=Math.max(document.documentElement.scrollWidth,document.body.scrollWidth);b=Math.max(document.documentElement.offsetWidth,document.body.offsetWidth);return a<b?c(window).width()+"px":a+"px"}else return c(document).width()+"px"},resize:function(){var a=c([]);c.each(c.ui.dialog.overlay.instances,
-function(){a=a.add(this)});a.css({width:0,height:0}).css({width:c.ui.dialog.overlay.width(),height:c.ui.dialog.overlay.height()})}});c.extend(c.ui.dialog.overlay.prototype,{destroy:function(){c.ui.dialog.overlay.destroy(this.$el)}})})(jQuery);
+b,0));this.uiDialog.is(":data(resizable)")&&this.uiDialog.resizable("option","minHeight",this._minHeight())}});c.extend(c.ui.dialog,{version:"1.8.16",uuid:0,maxZ:0,getTitleId:function(a){a=a.attr("id");if(!a){this.uuid+=1;a=this.uuid}return"ui-dialog-title-"+a},overlay:function(a){this.$el=c.ui.dialog.overlay.create(a)}});c.extend(c.ui.dialog.overlay,{instances:[],oldInstances:[],maxZ:0,events:c.map("focus,mousedown,mouseup,keydown,keypress,click".split(","),function(a){return a+".dialog-overlay"}).join(" "),
+create:function(a){if(this.instances.length===0){setTimeout(function(){c.ui.dialog.overlay.instances.length&&c(document).bind(c.ui.dialog.overlay.events,function(d){if(c(d.target).zIndex()<c.ui.dialog.overlay.maxZ)return false})},1);c(document).bind("keydown.dialog-overlay",function(d){if(a.options.closeOnEscape&&!d.isDefaultPrevented()&&d.keyCode&&d.keyCode===c.ui.keyCode.ESCAPE){a.close(d);d.preventDefault()}});c(window).bind("resize.dialog-overlay",c.ui.dialog.overlay.resize)}var b=(this.oldInstances.pop()||
+c("<div></div>").addClass("ui-widget-overlay")).appendTo(document.body).css({width:this.width(),height:this.height()});c.fn.bgiframe&&b.bgiframe();this.instances.push(b);return b},destroy:function(a){var b=c.inArray(a,this.instances);b!=-1&&this.oldInstances.push(this.instances.splice(b,1)[0]);this.instances.length===0&&c([document,window]).unbind(".dialog-overlay");a.remove();var d=0;c.each(this.instances,function(){d=Math.max(d,this.css("z-index"))});this.maxZ=d},height:function(){var a,b;if(c.browser.msie&&
+c.browser.version<7){a=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight);b=Math.max(document.documentElement.offsetHeight,document.body.offsetHeight);return a<b?c(window).height()+"px":a+"px"}else return c(document).height()+"px"},width:function(){var a,b;if(c.browser.msie){a=Math.max(document.documentElement.scrollWidth,document.body.scrollWidth);b=Math.max(document.documentElement.offsetWidth,document.body.offsetWidth);return a<b?c(window).width()+"px":a+"px"}else return c(document).width()+
+"px"},resize:function(){var a=c([]);c.each(c.ui.dialog.overlay.instances,function(){a=a.add(this)});a.css({width:0,height:0}).css({width:c.ui.dialog.overlay.width(),height:c.ui.dialog.overlay.height()})}});c.extend(c.ui.dialog.overlay.prototype,{destroy:function(){c.ui.dialog.overlay.destroy(this.$el)}})})(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.ui.draggable.min.js b/wp-includes/js/jquery/ui/jquery.ui.draggable.min.js
new file mode 100644 (file)
index 0000000..b72fb94
--- /dev/null
@@ -0,0 +1,50 @@
+/*
+ * jQuery UI Draggable 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Draggables
+ *
+ * Depends:
+ *     jquery.ui.core.js
+ *     jquery.ui.mouse.js
+ *     jquery.ui.widget.js
+ */
+(function(d){d.widget("ui.draggable",d.ui.mouse,{widgetEventPrefix:"drag",options:{addClasses:true,appendTo:"parent",axis:false,connectToSortable:false,containment:false,cursor:"auto",cursorAt:false,grid:false,handle:false,helper:"original",iframeFix:false,opacity:false,refreshPositions:false,revert:false,revertDuration:500,scope:"default",scroll:true,scrollSensitivity:20,scrollSpeed:20,snap:false,snapMode:"both",snapTolerance:20,stack:false,zIndex:false},_create:function(){if(this.options.helper==
+"original"&&!/^(?:r|a|f)/.test(this.element.css("position")))this.element[0].style.position="relative";this.options.addClasses&&this.element.addClass("ui-draggable");this.options.disabled&&this.element.addClass("ui-draggable-disabled");this._mouseInit()},destroy:function(){if(this.element.data("draggable")){this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled");this._mouseDestroy();return this}},_mouseCapture:function(a){var b=
+this.options;if(this.helper||b.disabled||d(a.target).is(".ui-resizable-handle"))return false;this.handle=this._getHandle(a);if(!this.handle)return false;if(b.iframeFix)d(b.iframeFix===true?"iframe":b.iframeFix).each(function(){d('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1E3}).css(d(this).offset()).appendTo("body")});return true},_mouseStart:function(a){var b=this.options;
+this.helper=this._createHelper(a);this._cacheHelperProportions();if(d.ui.ddmanager)d.ui.ddmanager.current=this;this._cacheMargins();this.cssPosition=this.helper.css("position");this.scrollParent=this.helper.scrollParent();this.offset=this.positionAbs=this.element.offset();this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left};d.extend(this.offset,{click:{left:a.pageX-this.offset.left,top:a.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});
+this.originalPosition=this.position=this._generatePosition(a);this.originalPageX=a.pageX;this.originalPageY=a.pageY;b.cursorAt&&this._adjustOffsetFromHelper(b.cursorAt);b.containment&&this._setContainment();if(this._trigger("start",a)===false){this._clear();return false}this._cacheHelperProportions();d.ui.ddmanager&&!b.dropBehaviour&&d.ui.ddmanager.prepareOffsets(this,a);this.helper.addClass("ui-draggable-dragging");this._mouseDrag(a,true);d.ui.ddmanager&&d.ui.ddmanager.dragStart(this,a);return true},
+_mouseDrag:function(a,b){this.position=this._generatePosition(a);this.positionAbs=this._convertPositionTo("absolute");if(!b){b=this._uiHash();if(this._trigger("drag",a,b)===false){this._mouseUp({});return false}this.position=b.position}if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+"px";if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";d.ui.ddmanager&&d.ui.ddmanager.drag(this,a);return false},_mouseStop:function(a){var b=
+false;if(d.ui.ddmanager&&!this.options.dropBehaviour)b=d.ui.ddmanager.drop(this,a);if(this.dropped){b=this.dropped;this.dropped=false}if((!this.element[0]||!this.element[0].parentNode)&&this.options.helper=="original")return false;if(this.options.revert=="invalid"&&!b||this.options.revert=="valid"&&b||this.options.revert===true||d.isFunction(this.options.revert)&&this.options.revert.call(this.element,b)){var c=this;d(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,
+10),function(){c._trigger("stop",a)!==false&&c._clear()})}else this._trigger("stop",a)!==false&&this._clear();return false},_mouseUp:function(a){this.options.iframeFix===true&&d("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)});d.ui.ddmanager&&d.ui.ddmanager.dragStop(this,a);return d.ui.mouse.prototype._mouseUp.call(this,a)},cancel:function(){this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear();return this},_getHandle:function(a){var b=!this.options.handle||
+!d(this.options.handle,this.element).length?true:false;d(this.options.handle,this.element).find("*").andSelf().each(function(){if(this==a.target)b=true});return b},_createHelper:function(a){var b=this.options;a=d.isFunction(b.helper)?d(b.helper.apply(this.element[0],[a])):b.helper=="clone"?this.element.clone().removeAttr("id"):this.element;a.parents("body").length||a.appendTo(b.appendTo=="parent"?this.element[0].parentNode:b.appendTo);a[0]!=this.element[0]&&!/(fixed|absolute)/.test(a.css("position"))&&
+a.css("position","absolute");return a},_adjustOffsetFromHelper:function(a){if(typeof a=="string")a=a.split(" ");if(d.isArray(a))a={left:+a[0],top:+a[1]||0};if("left"in a)this.offset.click.left=a.left+this.margins.left;if("right"in a)this.offset.click.left=this.helperProportions.width-a.right+this.margins.left;if("top"in a)this.offset.click.top=a.top+this.margins.top;if("bottom"in a)this.offset.click.top=this.helperProportions.height-a.bottom+this.margins.top},_getParentOffset:function(){this.offsetParent=
+this.helper.offsetParent();var a=this.offsetParent.offset();if(this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0])){a.left+=this.scrollParent.scrollLeft();a.top+=this.scrollParent.scrollTop()}if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&d.browser.msie)a={top:0,left:0};return{top:a.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:a.left+(parseInt(this.offsetParent.css("borderLeftWidth"),
+10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var a=this.element.position();return{top:a.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:a.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}else return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),
+10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var a=this.options;if(a.containment=="parent")a.containment=this.helper[0].parentNode;if(a.containment=="document"||a.containment=="window")this.containment=[a.containment=="document"?0:d(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,a.containment=="document"?0:d(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,
+(a.containment=="document"?0:d(window).scrollLeft())+d(a.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(a.containment=="document"?0:d(window).scrollTop())+(d(a.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(a.containment)&&a.containment.constructor!=Array){a=d(a.containment);var b=a[0];if(b){a.offset();var c=d(b).css("overflow")!=
+"hidden";this.containment=[(parseInt(d(b).css("borderLeftWidth"),10)||0)+(parseInt(d(b).css("paddingLeft"),10)||0),(parseInt(d(b).css("borderTopWidth"),10)||0)+(parseInt(d(b).css("paddingTop"),10)||0),(c?Math.max(b.scrollWidth,b.offsetWidth):b.offsetWidth)-(parseInt(d(b).css("borderLeftWidth"),10)||0)-(parseInt(d(b).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(c?Math.max(b.scrollHeight,b.offsetHeight):b.offsetHeight)-(parseInt(d(b).css("borderTopWidth"),
+10)||0)-(parseInt(d(b).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom];this.relative_container=a}}else if(a.containment.constructor==Array)this.containment=a.containment},_convertPositionTo:function(a,b){if(!b)b=this.position;a=a=="absolute"?1:-1;var c=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,f=/(html|body)/i.test(c[0].tagName);return{top:b.top+
+this.offset.relative.top*a+this.offset.parent.top*a-(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():f?0:c.scrollTop())*a),left:b.left+this.offset.relative.left*a+this.offset.parent.left*a-(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():f?0:c.scrollLeft())*a)}},_generatePosition:function(a){var b=this.options,c=this.cssPosition=="absolute"&&
+!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,f=/(html|body)/i.test(c[0].tagName),e=a.pageX,h=a.pageY;if(this.originalPosition){var g;if(this.containment){if(this.relative_container){g=this.relative_container.offset();g=[this.containment[0]+g.left,this.containment[1]+g.top,this.containment[2]+g.left,this.containment[3]+g.top]}else g=this.containment;if(a.pageX-this.offset.click.left<g[0])e=g[0]+this.offset.click.left;
+if(a.pageY-this.offset.click.top<g[1])h=g[1]+this.offset.click.top;if(a.pageX-this.offset.click.left>g[2])e=g[2]+this.offset.click.left;if(a.pageY-this.offset.click.top>g[3])h=g[3]+this.offset.click.top}if(b.grid){h=b.grid[1]?this.originalPageY+Math.round((h-this.originalPageY)/b.grid[1])*b.grid[1]:this.originalPageY;h=g?!(h-this.offset.click.top<g[1]||h-this.offset.click.top>g[3])?h:!(h-this.offset.click.top<g[1])?h-b.grid[1]:h+b.grid[1]:h;e=b.grid[0]?this.originalPageX+Math.round((e-this.originalPageX)/
+b.grid[0])*b.grid[0]:this.originalPageX;e=g?!(e-this.offset.click.left<g[0]||e-this.offset.click.left>g[2])?e:!(e-this.offset.click.left<g[0])?e-b.grid[0]:e+b.grid[0]:e}}return{top:h-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollTop():f?0:c.scrollTop()),left:e-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(d.browser.safari&&d.browser.version<
+526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():f?0:c.scrollLeft())}},_clear:function(){this.helper.removeClass("ui-draggable-dragging");this.helper[0]!=this.element[0]&&!this.cancelHelperRemoval&&this.helper.remove();this.helper=null;this.cancelHelperRemoval=false},_trigger:function(a,b,c){c=c||this._uiHash();d.ui.plugin.call(this,a,[b,c]);if(a=="drag")this.positionAbs=this._convertPositionTo("absolute");return d.Widget.prototype._trigger.call(this,a,b,
+c)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}});d.extend(d.ui.draggable,{version:"1.8.16"});d.ui.plugin.add("draggable","connectToSortable",{start:function(a,b){var c=d(this).data("draggable"),f=c.options,e=d.extend({},b,{item:c.element});c.sortables=[];d(f.connectToSortable).each(function(){var h=d.data(this,"sortable");if(h&&!h.options.disabled){c.sortables.push({instance:h,shouldRevert:h.options.revert});
+h.refreshPositions();h._trigger("activate",a,e)}})},stop:function(a,b){var c=d(this).data("draggable"),f=d.extend({},b,{item:c.element});d.each(c.sortables,function(){if(this.instance.isOver){this.instance.isOver=0;c.cancelHelperRemoval=true;this.instance.cancelHelperRemoval=false;if(this.shouldRevert)this.instance.options.revert=true;this.instance._mouseStop(a);this.instance.options.helper=this.instance.options._helper;c.options.helper=="original"&&this.instance.currentItem.css({top:"auto",left:"auto"})}else{this.instance.cancelHelperRemoval=
+false;this.instance._trigger("deactivate",a,f)}})},drag:function(a,b){var c=d(this).data("draggable"),f=this;d.each(c.sortables,function(){this.instance.positionAbs=c.positionAbs;this.instance.helperProportions=c.helperProportions;this.instance.offset.click=c.offset.click;if(this.instance._intersectsWith(this.instance.containerCache)){if(!this.instance.isOver){this.instance.isOver=1;this.instance.currentItem=d(f).clone().removeAttr("id").appendTo(this.instance.element).data("sortable-item",true);
+this.instance.options._helper=this.instance.options.helper;this.instance.options.helper=function(){return b.helper[0]};a.target=this.instance.currentItem[0];this.instance._mouseCapture(a,true);this.instance._mouseStart(a,true,true);this.instance.offset.click.top=c.offset.click.top;this.instance.offset.click.left=c.offset.click.left;this.instance.offset.parent.left-=c.offset.parent.left-this.instance.offset.parent.left;this.instance.offset.parent.top-=c.offset.parent.top-this.instance.offset.parent.top;
+c._trigger("toSortable",a);c.dropped=this.instance.element;c.currentItem=c.element;this.instance.fromOutside=c}this.instance.currentItem&&this.instance._mouseDrag(a)}else if(this.instance.isOver){this.instance.isOver=0;this.instance.cancelHelperRemoval=true;this.instance.options.revert=false;this.instance._trigger("out",a,this.instance._uiHash(this.instance));this.instance._mouseStop(a,true);this.instance.options.helper=this.instance.options._helper;this.instance.currentItem.remove();this.instance.placeholder&&
+this.instance.placeholder.remove();c._trigger("fromSortable",a);c.dropped=false}})}});d.ui.plugin.add("draggable","cursor",{start:function(){var a=d("body"),b=d(this).data("draggable").options;if(a.css("cursor"))b._cursor=a.css("cursor");a.css("cursor",b.cursor)},stop:function(){var a=d(this).data("draggable").options;a._cursor&&d("body").css("cursor",a._cursor)}});d.ui.plugin.add("draggable","opacity",{start:function(a,b){a=d(b.helper);b=d(this).data("draggable").options;if(a.css("opacity"))b._opacity=
+a.css("opacity");a.css("opacity",b.opacity)},stop:function(a,b){a=d(this).data("draggable").options;a._opacity&&d(b.helper).css("opacity",a._opacity)}});d.ui.plugin.add("draggable","scroll",{start:function(){var a=d(this).data("draggable");if(a.scrollParent[0]!=document&&a.scrollParent[0].tagName!="HTML")a.overflowOffset=a.scrollParent.offset()},drag:function(a){var b=d(this).data("draggable"),c=b.options,f=false;if(b.scrollParent[0]!=document&&b.scrollParent[0].tagName!="HTML"){if(!c.axis||c.axis!=
+"x")if(b.overflowOffset.top+b.scrollParent[0].offsetHeight-a.pageY<c.scrollSensitivity)b.scrollParent[0].scrollTop=f=b.scrollParent[0].scrollTop+c.scrollSpeed;else if(a.pageY-b.overflowOffset.top<c.scrollSensitivity)b.scrollParent[0].scrollTop=f=b.scrollParent[0].scrollTop-c.scrollSpeed;if(!c.axis||c.axis!="y")if(b.overflowOffset.left+b.scrollParent[0].offsetWidth-a.pageX<c.scrollSensitivity)b.scrollParent[0].scrollLeft=f=b.scrollParent[0].scrollLeft+c.scrollSpeed;else if(a.pageX-b.overflowOffset.left<
+c.scrollSensitivity)b.scrollParent[0].scrollLeft=f=b.scrollParent[0].scrollLeft-c.scrollSpeed}else{if(!c.axis||c.axis!="x")if(a.pageY-d(document).scrollTop()<c.scrollSensitivity)f=d(document).scrollTop(d(document).scrollTop()-c.scrollSpeed);else if(d(window).height()-(a.pageY-d(document).scrollTop())<c.scrollSensitivity)f=d(document).scrollTop(d(document).scrollTop()+c.scrollSpeed);if(!c.axis||c.axis!="y")if(a.pageX-d(document).scrollLeft()<c.scrollSensitivity)f=d(document).scrollLeft(d(document).scrollLeft()-
+c.scrollSpeed);else if(d(window).width()-(a.pageX-d(document).scrollLeft())<c.scrollSensitivity)f=d(document).scrollLeft(d(document).scrollLeft()+c.scrollSpeed)}f!==false&&d.ui.ddmanager&&!c.dropBehaviour&&d.ui.ddmanager.prepareOffsets(b,a)}});d.ui.plugin.add("draggable","snap",{start:function(){var a=d(this).data("draggable"),b=a.options;a.snapElements=[];d(b.snap.constructor!=String?b.snap.items||":data(draggable)":b.snap).each(function(){var c=d(this),f=c.offset();this!=a.element[0]&&a.snapElements.push({item:this,
+width:c.outerWidth(),height:c.outerHeight(),top:f.top,left:f.left})})},drag:function(a,b){for(var c=d(this).data("draggable"),f=c.options,e=f.snapTolerance,h=b.offset.left,g=h+c.helperProportions.width,n=b.offset.top,o=n+c.helperProportions.height,i=c.snapElements.length-1;i>=0;i--){var j=c.snapElements[i].left,l=j+c.snapElements[i].width,k=c.snapElements[i].top,m=k+c.snapElements[i].height;if(j-e<h&&h<l+e&&k-e<n&&n<m+e||j-e<h&&h<l+e&&k-e<o&&o<m+e||j-e<g&&g<l+e&&k-e<n&&n<m+e||j-e<g&&g<l+e&&k-e<o&&
+o<m+e){if(f.snapMode!="inner"){var p=Math.abs(k-o)<=e,q=Math.abs(m-n)<=e,r=Math.abs(j-g)<=e,s=Math.abs(l-h)<=e;if(p)b.position.top=c._convertPositionTo("relative",{top:k-c.helperProportions.height,left:0}).top-c.margins.top;if(q)b.position.top=c._convertPositionTo("relative",{top:m,left:0}).top-c.margins.top;if(r)b.position.left=c._convertPositionTo("relative",{top:0,left:j-c.helperProportions.width}).left-c.margins.left;if(s)b.position.left=c._convertPositionTo("relative",{top:0,left:l}).left-c.margins.left}var t=
+p||q||r||s;if(f.snapMode!="outer"){p=Math.abs(k-n)<=e;q=Math.abs(m-o)<=e;r=Math.abs(j-h)<=e;s=Math.abs(l-g)<=e;if(p)b.position.top=c._convertPositionTo("relative",{top:k,left:0}).top-c.margins.top;if(q)b.position.top=c._convertPositionTo("relative",{top:m-c.helperProportions.height,left:0}).top-c.margins.top;if(r)b.position.left=c._convertPositionTo("relative",{top:0,left:j}).left-c.margins.left;if(s)b.position.left=c._convertPositionTo("relative",{top:0,left:l-c.helperProportions.width}).left-c.margins.left}if(!c.snapElements[i].snapping&&
+(p||q||r||s||t))c.options.snap.snap&&c.options.snap.snap.call(c.element,a,d.extend(c._uiHash(),{snapItem:c.snapElements[i].item}));c.snapElements[i].snapping=p||q||r||s||t}else{c.snapElements[i].snapping&&c.options.snap.release&&c.options.snap.release.call(c.element,a,d.extend(c._uiHash(),{snapItem:c.snapElements[i].item}));c.snapElements[i].snapping=false}}}});d.ui.plugin.add("draggable","stack",{start:function(){var a=d(this).data("draggable").options;a=d.makeArray(d(a.stack)).sort(function(c,f){return(parseInt(d(c).css("zIndex"),
+10)||0)-(parseInt(d(f).css("zIndex"),10)||0)});if(a.length){var b=parseInt(a[0].style.zIndex)||0;d(a).each(function(c){this.style.zIndex=b+c});this[0].style.zIndex=b+a.length}}});d.ui.plugin.add("draggable","zIndex",{start:function(a,b){a=d(b.helper);b=d(this).data("draggable").options;if(a.css("zIndex"))b._zIndex=a.css("zIndex");a.css("zIndex",b.zIndex)},stop:function(a,b){a=d(this).data("draggable").options;a._zIndex&&d(b.helper).css("zIndex",a._zIndex)}})})(jQuery);
similarity index 81%
rename from wp-includes/js/jquery/ui.droppable.js
rename to wp-includes/js/jquery/ui/jquery.ui.droppable.min.js
index b29390c7161c69b9e59e0093dc875cbeac143cb2..dc7904243b3079769a54479a604a741b31c1bb9c 100644 (file)
@@ -1,5 +1,5 @@
 /*
 /*
- * jQuery UI Droppable 1.8.12
+ * jQuery UI Droppable 1.8.16
  *
  * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
  * Dual licensed under the MIT or GPL Version 2 licenses.
  *
  * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
  * Dual licensed under the MIT or GPL Version 2 licenses.
@@ -18,9 +18,10 @@ a.addClasses&&this.element.addClass("ui-droppable")},destroy:function(){for(var
 this.element.addClass(this.options.activeClass);b&&this._trigger("activate",a,this.ui(b))},_deactivate:function(a){var b=d.ui.ddmanager.current;this.options.activeClass&&this.element.removeClass(this.options.activeClass);b&&this._trigger("deactivate",a,this.ui(b))},_over:function(a){var b=d.ui.ddmanager.current;if(!(!b||(b.currentItem||b.element)[0]==this.element[0]))if(this.accept.call(this.element[0],b.currentItem||b.element)){this.options.hoverClass&&this.element.addClass(this.options.hoverClass);
 this._trigger("over",a,this.ui(b))}},_out:function(a){var b=d.ui.ddmanager.current;if(!(!b||(b.currentItem||b.element)[0]==this.element[0]))if(this.accept.call(this.element[0],b.currentItem||b.element)){this.options.hoverClass&&this.element.removeClass(this.options.hoverClass);this._trigger("out",a,this.ui(b))}},_drop:function(a,b){var c=b||d.ui.ddmanager.current;if(!c||(c.currentItem||c.element)[0]==this.element[0])return false;var e=false;this.element.find(":data(droppable)").not(".ui-draggable-dragging").each(function(){var g=
 d.data(this,"droppable");if(g.options.greedy&&!g.options.disabled&&g.options.scope==c.options.scope&&g.accept.call(g.element[0],c.currentItem||c.element)&&d.ui.intersect(c,d.extend(g,{offset:g.element.offset()}),g.options.tolerance)){e=true;return false}});if(e)return false;if(this.accept.call(this.element[0],c.currentItem||c.element)){this.options.activeClass&&this.element.removeClass(this.options.activeClass);this.options.hoverClass&&this.element.removeClass(this.options.hoverClass);this._trigger("drop",
 this.element.addClass(this.options.activeClass);b&&this._trigger("activate",a,this.ui(b))},_deactivate:function(a){var b=d.ui.ddmanager.current;this.options.activeClass&&this.element.removeClass(this.options.activeClass);b&&this._trigger("deactivate",a,this.ui(b))},_over:function(a){var b=d.ui.ddmanager.current;if(!(!b||(b.currentItem||b.element)[0]==this.element[0]))if(this.accept.call(this.element[0],b.currentItem||b.element)){this.options.hoverClass&&this.element.addClass(this.options.hoverClass);
 this._trigger("over",a,this.ui(b))}},_out:function(a){var b=d.ui.ddmanager.current;if(!(!b||(b.currentItem||b.element)[0]==this.element[0]))if(this.accept.call(this.element[0],b.currentItem||b.element)){this.options.hoverClass&&this.element.removeClass(this.options.hoverClass);this._trigger("out",a,this.ui(b))}},_drop:function(a,b){var c=b||d.ui.ddmanager.current;if(!c||(c.currentItem||c.element)[0]==this.element[0])return false;var e=false;this.element.find(":data(droppable)").not(".ui-draggable-dragging").each(function(){var g=
 d.data(this,"droppable");if(g.options.greedy&&!g.options.disabled&&g.options.scope==c.options.scope&&g.accept.call(g.element[0],c.currentItem||c.element)&&d.ui.intersect(c,d.extend(g,{offset:g.element.offset()}),g.options.tolerance)){e=true;return false}});if(e)return false;if(this.accept.call(this.element[0],c.currentItem||c.element)){this.options.activeClass&&this.element.removeClass(this.options.activeClass);this.options.hoverClass&&this.element.removeClass(this.options.hoverClass);this._trigger("drop",
-a,this.ui(c));return this.element}return false},ui:function(a){return{draggable:a.currentItem||a.element,helper:a.helper,position:a.position,offset:a.positionAbs}}});d.extend(d.ui.droppable,{version:"1.8.12"});d.ui.intersect=function(a,b,c){if(!b.offset)return false;var e=(a.positionAbs||a.position.absolute).left,g=e+a.helperProportions.width,f=(a.positionAbs||a.position.absolute).top,h=f+a.helperProportions.height,i=b.offset.left,k=i+b.proportions.width,j=b.offset.top,l=j+b.proportions.height;
+a,this.ui(c));return this.element}return false},ui:function(a){return{draggable:a.currentItem||a.element,helper:a.helper,position:a.position,offset:a.positionAbs}}});d.extend(d.ui.droppable,{version:"1.8.16"});d.ui.intersect=function(a,b,c){if(!b.offset)return false;var e=(a.positionAbs||a.position.absolute).left,g=e+a.helperProportions.width,f=(a.positionAbs||a.position.absolute).top,h=f+a.helperProportions.height,i=b.offset.left,k=i+b.proportions.width,j=b.offset.top,l=j+b.proportions.height;
 switch(c){case "fit":return i<=e&&g<=k&&j<=f&&h<=l;case "intersect":return i<e+a.helperProportions.width/2&&g-a.helperProportions.width/2<k&&j<f+a.helperProportions.height/2&&h-a.helperProportions.height/2<l;case "pointer":return d.ui.isOver((a.positionAbs||a.position.absolute).top+(a.clickOffset||a.offset.click).top,(a.positionAbs||a.position.absolute).left+(a.clickOffset||a.offset.click).left,j,i,b.proportions.height,b.proportions.width);case "touch":return(f>=j&&f<=l||h>=j&&h<=l||f<j&&h>l)&&(e>=
 i&&e<=k||g>=i&&g<=k||e<i&&g>k);default:return false}};d.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(a,b){var c=d.ui.ddmanager.droppables[a.options.scope]||[],e=b?b.type:null,g=(a.currentItem||a.element).find(":data(droppable)").andSelf(),f=0;a:for(;f<c.length;f++)if(!(c[f].options.disabled||a&&!c[f].accept.call(c[f].element[0],a.currentItem||a.element))){for(var h=0;h<g.length;h++)if(g[h]==c[f].element[0]){c[f].proportions.height=0;continue a}c[f].visible=c[f].element.css("display")!=
 "none";if(c[f].visible){e=="mousedown"&&c[f]._activate.call(c[f],b);c[f].offset=c[f].element.offset();c[f].proportions={width:c[f].element[0].offsetWidth,height:c[f].element[0].offsetHeight}}}},drop:function(a,b){var c=false;d.each(d.ui.ddmanager.droppables[a.options.scope]||[],function(){if(this.options){if(!this.options.disabled&&this.visible&&d.ui.intersect(a,this,this.options.tolerance))c=c||this._drop.call(this,b);if(!this.options.disabled&&this.visible&&this.accept.call(this.element[0],a.currentItem||
 switch(c){case "fit":return i<=e&&g<=k&&j<=f&&h<=l;case "intersect":return i<e+a.helperProportions.width/2&&g-a.helperProportions.width/2<k&&j<f+a.helperProportions.height/2&&h-a.helperProportions.height/2<l;case "pointer":return d.ui.isOver((a.positionAbs||a.position.absolute).top+(a.clickOffset||a.offset.click).top,(a.positionAbs||a.position.absolute).left+(a.clickOffset||a.offset.click).left,j,i,b.proportions.height,b.proportions.width);case "touch":return(f>=j&&f<=l||h>=j&&h<=l||f<j&&h>l)&&(e>=
 i&&e<=k||g>=i&&g<=k||e<i&&g>k);default:return false}};d.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(a,b){var c=d.ui.ddmanager.droppables[a.options.scope]||[],e=b?b.type:null,g=(a.currentItem||a.element).find(":data(droppable)").andSelf(),f=0;a:for(;f<c.length;f++)if(!(c[f].options.disabled||a&&!c[f].accept.call(c[f].element[0],a.currentItem||a.element))){for(var h=0;h<g.length;h++)if(g[h]==c[f].element[0]){c[f].proportions.height=0;continue a}c[f].visible=c[f].element.css("display")!=
 "none";if(c[f].visible){e=="mousedown"&&c[f]._activate.call(c[f],b);c[f].offset=c[f].element.offset();c[f].proportions={width:c[f].element[0].offsetWidth,height:c[f].element[0].offsetHeight}}}},drop:function(a,b){var c=false;d.each(d.ui.ddmanager.droppables[a.options.scope]||[],function(){if(this.options){if(!this.options.disabled&&this.visible&&d.ui.intersect(a,this,this.options.tolerance))c=c||this._drop.call(this,b);if(!this.options.disabled&&this.visible&&this.accept.call(this.element[0],a.currentItem||
-a.element)){this.isout=1;this.isover=0;this._deactivate.call(this,b)}}});return c},drag:function(a,b){a.options.refreshPositions&&d.ui.ddmanager.prepareOffsets(a,b);d.each(d.ui.ddmanager.droppables[a.options.scope]||[],function(){if(!(this.options.disabled||this.greedyChild||!this.visible)){var c=d.ui.intersect(a,this,this.options.tolerance);if(c=!c&&this.isover==1?"isout":c&&this.isover==0?"isover":null){var e;if(this.options.greedy){var g=this.element.parents(":data(droppable):eq(0)");if(g.length){e=
-d.data(g[0],"droppable");e.greedyChild=c=="isover"?1:0}}if(e&&c=="isover"){e.isover=0;e.isout=1;e._out.call(e,b)}this[c]=1;this[c=="isout"?"isover":"isout"]=0;this[c=="isover"?"_over":"_out"].call(this,b);if(e&&c=="isout"){e.isout=0;e.isover=1;e._over.call(e,b)}}}})}}})(jQuery);
+a.element)){this.isout=1;this.isover=0;this._deactivate.call(this,b)}}});return c},dragStart:function(a,b){a.element.parents(":not(body,html)").bind("scroll.droppable",function(){a.options.refreshPositions||d.ui.ddmanager.prepareOffsets(a,b)})},drag:function(a,b){a.options.refreshPositions&&d.ui.ddmanager.prepareOffsets(a,b);d.each(d.ui.ddmanager.droppables[a.options.scope]||[],function(){if(!(this.options.disabled||this.greedyChild||!this.visible)){var c=d.ui.intersect(a,this,this.options.tolerance);
+if(c=!c&&this.isover==1?"isout":c&&this.isover==0?"isover":null){var e;if(this.options.greedy){var g=this.element.parents(":data(droppable):eq(0)");if(g.length){e=d.data(g[0],"droppable");e.greedyChild=c=="isover"?1:0}}if(e&&c=="isover"){e.isover=0;e.isout=1;e._out.call(e,b)}this[c]=1;this[c=="isout"?"isover":"isout"]=0;this[c=="isover"?"_over":"_out"].call(this,b);if(e&&c=="isout"){e.isout=0;e.isover=1;e._over.call(e,b)}}}})},dragStop:function(a,b){a.element.parents(":not(body,html)").unbind("scroll.droppable");
+a.options.refreshPositions||d.ui.ddmanager.prepareOffsets(a,b)}}})(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.ui.mouse.min.js b/wp-includes/js/jquery/ui/jquery.ui.mouse.min.js
new file mode 100644 (file)
index 0000000..9c51579
--- /dev/null
@@ -0,0 +1,17 @@
+/*!
+ * jQuery UI Mouse 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Mouse
+ *
+ * Depends:
+ *     jquery.ui.widget.js
+ */
+(function(b){var d=false;b(document).mouseup(function(){d=false});b.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var a=this;this.element.bind("mousedown."+this.widgetName,function(c){return a._mouseDown(c)}).bind("click."+this.widgetName,function(c){if(true===b.data(c.target,a.widgetName+".preventClickEvent")){b.removeData(c.target,a.widgetName+".preventClickEvent");c.stopImmediatePropagation();return false}});this.started=false},_mouseDestroy:function(){this.element.unbind("."+
+this.widgetName)},_mouseDown:function(a){if(!d){this._mouseStarted&&this._mouseUp(a);this._mouseDownEvent=a;var c=this,f=a.which==1,g=typeof this.options.cancel=="string"&&a.target.nodeName?b(a.target).closest(this.options.cancel).length:false;if(!f||g||!this._mouseCapture(a))return true;this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet)this._mouseDelayTimer=setTimeout(function(){c.mouseDelayMet=true},this.options.delay);if(this._mouseDistanceMet(a)&&this._mouseDelayMet(a)){this._mouseStarted=
+this._mouseStart(a)!==false;if(!this._mouseStarted){a.preventDefault();return true}}true===b.data(a.target,this.widgetName+".preventClickEvent")&&b.removeData(a.target,this.widgetName+".preventClickEvent");this._mouseMoveDelegate=function(e){return c._mouseMove(e)};this._mouseUpDelegate=function(e){return c._mouseUp(e)};b(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);a.preventDefault();return d=true}},_mouseMove:function(a){if(b.browser.msie&&
+!(document.documentMode>=9)&&!a.button)return this._mouseUp(a);if(this._mouseStarted){this._mouseDrag(a);return a.preventDefault()}if(this._mouseDistanceMet(a)&&this._mouseDelayMet(a))(this._mouseStarted=this._mouseStart(this._mouseDownEvent,a)!==false)?this._mouseDrag(a):this._mouseUp(a);return!this._mouseStarted},_mouseUp:function(a){b(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=
+false;a.target==this._mouseDownEvent.target&&b.data(a.target,this.widgetName+".preventClickEvent",true);this._mouseStop(a)}return false},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return true}})})(jQuery);
similarity index 99%
rename from wp-includes/js/jquery/ui.position.js
rename to wp-includes/js/jquery/ui/jquery.ui.position.min.js
index 37e50e5d10c622ffa7bd0e419e13cc6d2b451e27..42d93654dea863e02945b30ffec62131de99a4a3 100644 (file)
@@ -1,5 +1,5 @@
 /*
 /*
- * jQuery UI Position 1.8.12
+ * jQuery UI Position 1.8.16
  *
  * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
  * Dual licensed under the MIT or GPL Version 2 licenses.
  *
  * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
  * Dual licensed under the MIT or GPL Version 2 licenses.
diff --git a/wp-includes/js/jquery/ui/jquery.ui.progressbar.min.js b/wp-includes/js/jquery/ui/jquery.ui.progressbar.min.js
new file mode 100644 (file)
index 0000000..b758eba
--- /dev/null
@@ -0,0 +1,16 @@
+/*
+ * jQuery UI Progressbar 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Progressbar
+ *
+ * Depends:
+ *   jquery.ui.core.js
+ *   jquery.ui.widget.js
+ */
+(function(b,d){b.widget("ui.progressbar",{options:{value:0,max:100},min:0,_create:function(){this.element.addClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").attr({role:"progressbar","aria-valuemin":this.min,"aria-valuemax":this.options.max,"aria-valuenow":this._value()});this.valueDiv=b("<div class='ui-progressbar-value ui-widget-header ui-corner-left'></div>").appendTo(this.element);this.oldValue=this._value();this._refreshValue()},destroy:function(){this.element.removeClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").removeAttr("role").removeAttr("aria-valuemin").removeAttr("aria-valuemax").removeAttr("aria-valuenow");
+this.valueDiv.remove();b.Widget.prototype.destroy.apply(this,arguments)},value:function(a){if(a===d)return this._value();this._setOption("value",a);return this},_setOption:function(a,c){if(a==="value"){this.options.value=c;this._refreshValue();this._value()===this.options.max&&this._trigger("complete")}b.Widget.prototype._setOption.apply(this,arguments)},_value:function(){var a=this.options.value;if(typeof a!=="number")a=0;return Math.min(this.options.max,Math.max(this.min,a))},_percentage:function(){return 100*
+this._value()/this.options.max},_refreshValue:function(){var a=this.value(),c=this._percentage();if(this.oldValue!==a){this.oldValue=a;this._trigger("change")}this.valueDiv.toggle(a>this.min).toggleClass("ui-corner-right",a===this.options.max).width(c.toFixed(0)+"%");this.element.attr("aria-valuenow",a)}});b.extend(b.ui.progressbar,{version:"1.8.16"})})(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.ui.resizable.min.js b/wp-includes/js/jquery/ui/jquery.ui.resizable.min.js
new file mode 100644 (file)
index 0000000..d6b71b3
--- /dev/null
@@ -0,0 +1,49 @@
+/*
+ * jQuery UI Resizable 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Resizables
+ *
+ * Depends:
+ *     jquery.ui.core.js
+ *     jquery.ui.mouse.js
+ *     jquery.ui.widget.js
+ */
+(function(e){e.widget("ui.resizable",e.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,containment:false,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1E3},_create:function(){var b=this,a=this.options;this.element.addClass("ui-resizable");e.extend(this,{_aspectRatio:!!a.aspectRatio,aspectRatio:a.aspectRatio,originalElement:this.element,
+_proportionallyResizeElements:[],_helper:a.helper||a.ghost||a.animate?a.helper||"ui-resizable-helper":null});if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)){/relative/.test(this.element.css("position"))&&e.browser.opera&&this.element.css({position:"relative",top:"auto",left:"auto"});this.element.wrap(e('<div class="ui-wrapper" style="overflow: hidden;"></div>').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),
+top:this.element.css("top"),left:this.element.css("left")}));this.element=this.element.parent().data("resizable",this.element.data("resizable"));this.elementIsWrapper=true;this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});this.originalResizeStyle=
+this.originalElement.css("resize");this.originalElement.css("resize","none");this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"}));this.originalElement.css({margin:this.originalElement.css("margin")});this._proportionallyResize()}this.handles=a.handles||(!e(".ui-resizable-handle",this.element).length?"e,s,se":{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",
+nw:".ui-resizable-nw"});if(this.handles.constructor==String){if(this.handles=="all")this.handles="n,e,s,w,se,sw,ne,nw";var c=this.handles.split(",");this.handles={};for(var d=0;d<c.length;d++){var f=e.trim(c[d]),g=e('<div class="ui-resizable-handle '+("ui-resizable-"+f)+'"></div>');/sw|se|ne|nw/.test(f)&&g.css({zIndex:++a.zIndex});"se"==f&&g.addClass("ui-icon ui-icon-gripsmall-diagonal-se");this.handles[f]=".ui-resizable-"+f;this.element.append(g)}}this._renderAxis=function(h){h=h||this.element;for(var i in this.handles){if(this.handles[i].constructor==
+String)this.handles[i]=e(this.handles[i],this.element).show();if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var j=e(this.handles[i],this.element),l=0;l=/sw|ne|nw|se|n|s/.test(i)?j.outerHeight():j.outerWidth();j=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join("");h.css(j,l);this._proportionallyResize()}e(this.handles[i])}};this._renderAxis(this.element);this._handles=e(".ui-resizable-handle",this.element).disableSelection();
+this._handles.mouseover(function(){if(!b.resizing){if(this.className)var h=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);b.axis=h&&h[1]?h[1]:"se"}});if(a.autoHide){this._handles.hide();e(this.element).addClass("ui-resizable-autohide").hover(function(){if(!a.disabled){e(this).removeClass("ui-resizable-autohide");b._handles.show()}},function(){if(!a.disabled)if(!b.resizing){e(this).addClass("ui-resizable-autohide");b._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy();
+var b=function(c){e(c).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){b(this.element);var a=this.element;a.after(this.originalElement.css({position:a.css("position"),width:a.outerWidth(),height:a.outerHeight(),top:a.css("top"),left:a.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle);b(this.originalElement);return this},_mouseCapture:function(b){var a=
+false;for(var c in this.handles)if(e(this.handles[c])[0]==b.target)a=true;return!this.options.disabled&&a},_mouseStart:function(b){var a=this.options,c=this.element.position(),d=this.element;this.resizing=true;this.documentScroll={top:e(document).scrollTop(),left:e(document).scrollLeft()};if(d.is(".ui-draggable")||/absolute/.test(d.css("position")))d.css({position:"absolute",top:c.top,left:c.left});e.browser.opera&&/relative/.test(d.css("position"))&&d.css({position:"relative",top:"auto",left:"auto"});
+this._renderProxy();c=m(this.helper.css("left"));var f=m(this.helper.css("top"));if(a.containment){c+=e(a.containment).scrollLeft()||0;f+=e(a.containment).scrollTop()||0}this.offset=this.helper.offset();this.position={left:c,top:f};this.size=this._helper?{width:d.outerWidth(),height:d.outerHeight()}:{width:d.width(),height:d.height()};this.originalSize=this._helper?{width:d.outerWidth(),height:d.outerHeight()}:{width:d.width(),height:d.height()};this.originalPosition={left:c,top:f};this.sizeDiff=
+{width:d.outerWidth()-d.width(),height:d.outerHeight()-d.height()};this.originalMousePosition={left:b.pageX,top:b.pageY};this.aspectRatio=typeof a.aspectRatio=="number"?a.aspectRatio:this.originalSize.width/this.originalSize.height||1;a=e(".ui-resizable-"+this.axis).css("cursor");e("body").css("cursor",a=="auto"?this.axis+"-resize":a);d.addClass("ui-resizable-resizing");this._propagate("start",b);return true},_mouseDrag:function(b){var a=this.helper,c=this.originalMousePosition,d=this._change[this.axis];
+if(!d)return false;c=d.apply(this,[b,b.pageX-c.left||0,b.pageY-c.top||0]);this._updateVirtualBoundaries(b.shiftKey);if(this._aspectRatio||b.shiftKey)c=this._updateRatio(c,b);c=this._respectSize(c,b);this._propagate("resize",b);a.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize();this._updateCache(c);this._trigger("resize",b,this.ui());return false},
+_mouseStop:function(b){this.resizing=false;var a=this.options,c=this;if(this._helper){var d=this._proportionallyResizeElements,f=d.length&&/textarea/i.test(d[0].nodeName);d=f&&e.ui.hasScroll(d[0],"left")?0:c.sizeDiff.height;f=f?0:c.sizeDiff.width;f={width:c.helper.width()-f,height:c.helper.height()-d};d=parseInt(c.element.css("left"),10)+(c.position.left-c.originalPosition.left)||null;var g=parseInt(c.element.css("top"),10)+(c.position.top-c.originalPosition.top)||null;a.animate||this.element.css(e.extend(f,
+{top:g,left:d}));c.helper.height(c.size.height);c.helper.width(c.size.width);this._helper&&!a.animate&&this._proportionallyResize()}e("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",b);this._helper&&this.helper.remove();return false},_updateVirtualBoundaries:function(b){var a=this.options,c,d,f;a={minWidth:k(a.minWidth)?a.minWidth:0,maxWidth:k(a.maxWidth)?a.maxWidth:Infinity,minHeight:k(a.minHeight)?a.minHeight:0,maxHeight:k(a.maxHeight)?a.maxHeight:
+Infinity};if(this._aspectRatio||b){b=a.minHeight*this.aspectRatio;d=a.minWidth/this.aspectRatio;c=a.maxHeight*this.aspectRatio;f=a.maxWidth/this.aspectRatio;if(b>a.minWidth)a.minWidth=b;if(d>a.minHeight)a.minHeight=d;if(c<a.maxWidth)a.maxWidth=c;if(f<a.maxHeight)a.maxHeight=f}this._vBoundaries=a},_updateCache:function(b){this.offset=this.helper.offset();if(k(b.left))this.position.left=b.left;if(k(b.top))this.position.top=b.top;if(k(b.height))this.size.height=b.height;if(k(b.width))this.size.width=
+b.width},_updateRatio:function(b){var a=this.position,c=this.size,d=this.axis;if(k(b.height))b.width=b.height*this.aspectRatio;else if(k(b.width))b.height=b.width/this.aspectRatio;if(d=="sw"){b.left=a.left+(c.width-b.width);b.top=null}if(d=="nw"){b.top=a.top+(c.height-b.height);b.left=a.left+(c.width-b.width)}return b},_respectSize:function(b){var a=this._vBoundaries,c=this.axis,d=k(b.width)&&a.maxWidth&&a.maxWidth<b.width,f=k(b.height)&&a.maxHeight&&a.maxHeight<b.height,g=k(b.width)&&a.minWidth&&
+a.minWidth>b.width,h=k(b.height)&&a.minHeight&&a.minHeight>b.height;if(g)b.width=a.minWidth;if(h)b.height=a.minHeight;if(d)b.width=a.maxWidth;if(f)b.height=a.maxHeight;var i=this.originalPosition.left+this.originalSize.width,j=this.position.top+this.size.height,l=/sw|nw|w/.test(c);c=/nw|ne|n/.test(c);if(g&&l)b.left=i-a.minWidth;if(d&&l)b.left=i-a.maxWidth;if(h&&c)b.top=j-a.minHeight;if(f&&c)b.top=j-a.maxHeight;if((a=!b.width&&!b.height)&&!b.left&&b.top)b.top=null;else if(a&&!b.top&&b.left)b.left=
+null;return b},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var b=this.helper||this.element,a=0;a<this._proportionallyResizeElements.length;a++){var c=this._proportionallyResizeElements[a];if(!this.borderDif){var d=[c.css("borderTopWidth"),c.css("borderRightWidth"),c.css("borderBottomWidth"),c.css("borderLeftWidth")],f=[c.css("paddingTop"),c.css("paddingRight"),c.css("paddingBottom"),c.css("paddingLeft")];this.borderDif=e.map(d,function(g,h){g=parseInt(g,10)||
+0;h=parseInt(f[h],10)||0;return g+h})}e.browser.msie&&(e(b).is(":hidden")||e(b).parents(":hidden").length)||c.css({height:b.height()-this.borderDif[0]-this.borderDif[2]||0,width:b.width()-this.borderDif[1]-this.borderDif[3]||0})}},_renderProxy:function(){var b=this.options;this.elementOffset=this.element.offset();if(this._helper){this.helper=this.helper||e('<div style="overflow:hidden;"></div>');var a=e.browser.msie&&e.browser.version<7,c=a?1:0;a=a?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+
+a,height:this.element.outerHeight()+a,position:"absolute",left:this.elementOffset.left-c+"px",top:this.elementOffset.top-c+"px",zIndex:++b.zIndex});this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(b,a){return{width:this.originalSize.width+a}},w:function(b,a){return{left:this.originalPosition.left+a,width:this.originalSize.width-a}},n:function(b,a,c){return{top:this.originalPosition.top+c,height:this.originalSize.height-c}},s:function(b,a,c){return{height:this.originalSize.height+
+c}},se:function(b,a,c){return e.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[b,a,c]))},sw:function(b,a,c){return e.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,a,c]))},ne:function(b,a,c){return e.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[b,a,c]))},nw:function(b,a,c){return e.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,a,c]))}},_propagate:function(b,a){e.ui.plugin.call(this,b,[a,this.ui()]);
+b!="resize"&&this._trigger(b,a,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}});e.extend(e.ui.resizable,{version:"1.8.16"});e.ui.plugin.add("resizable","alsoResize",{start:function(){var b=e(this).data("resizable").options,a=function(c){e(c).each(function(){var d=e(this);d.data("resizable-alsoresize",{width:parseInt(d.width(),
+10),height:parseInt(d.height(),10),left:parseInt(d.css("left"),10),top:parseInt(d.css("top"),10),position:d.css("position")})})};if(typeof b.alsoResize=="object"&&!b.alsoResize.parentNode)if(b.alsoResize.length){b.alsoResize=b.alsoResize[0];a(b.alsoResize)}else e.each(b.alsoResize,function(c){a(c)});else a(b.alsoResize)},resize:function(b,a){var c=e(this).data("resizable");b=c.options;var d=c.originalSize,f=c.originalPosition,g={height:c.size.height-d.height||0,width:c.size.width-d.width||0,top:c.position.top-
+f.top||0,left:c.position.left-f.left||0},h=function(i,j){e(i).each(function(){var l=e(this),q=e(this).data("resizable-alsoresize"),p={},r=j&&j.length?j:l.parents(a.originalElement[0]).length?["width","height"]:["width","height","top","left"];e.each(r,function(n,o){if((n=(q[o]||0)+(g[o]||0))&&n>=0)p[o]=n||null});if(e.browser.opera&&/relative/.test(l.css("position"))){c._revertToRelativePosition=true;l.css({position:"absolute",top:"auto",left:"auto"})}l.css(p)})};typeof b.alsoResize=="object"&&!b.alsoResize.nodeType?
+e.each(b.alsoResize,function(i,j){h(i,j)}):h(b.alsoResize)},stop:function(){var b=e(this).data("resizable"),a=b.options,c=function(d){e(d).each(function(){var f=e(this);f.css({position:f.data("resizable-alsoresize").position})})};if(b._revertToRelativePosition){b._revertToRelativePosition=false;typeof a.alsoResize=="object"&&!a.alsoResize.nodeType?e.each(a.alsoResize,function(d){c(d)}):c(a.alsoResize)}e(this).removeData("resizable-alsoresize")}});e.ui.plugin.add("resizable","animate",{stop:function(b){var a=
+e(this).data("resizable"),c=a.options,d=a._proportionallyResizeElements,f=d.length&&/textarea/i.test(d[0].nodeName),g=f&&e.ui.hasScroll(d[0],"left")?0:a.sizeDiff.height;f={width:a.size.width-(f?0:a.sizeDiff.width),height:a.size.height-g};g=parseInt(a.element.css("left"),10)+(a.position.left-a.originalPosition.left)||null;var h=parseInt(a.element.css("top"),10)+(a.position.top-a.originalPosition.top)||null;a.element.animate(e.extend(f,h&&g?{top:h,left:g}:{}),{duration:c.animateDuration,easing:c.animateEasing,
+step:function(){var i={width:parseInt(a.element.css("width"),10),height:parseInt(a.element.css("height"),10),top:parseInt(a.element.css("top"),10),left:parseInt(a.element.css("left"),10)};d&&d.length&&e(d[0]).css({width:i.width,height:i.height});a._updateCache(i);a._propagate("resize",b)}})}});e.ui.plugin.add("resizable","containment",{start:function(){var b=e(this).data("resizable"),a=b.element,c=b.options.containment;if(a=c instanceof e?c.get(0):/parent/.test(c)?a.parent().get(0):c){b.containerElement=
+e(a);if(/document/.test(c)||c==document){b.containerOffset={left:0,top:0};b.containerPosition={left:0,top:0};b.parentData={element:e(document),left:0,top:0,width:e(document).width(),height:e(document).height()||document.body.parentNode.scrollHeight}}else{var d=e(a),f=[];e(["Top","Right","Left","Bottom"]).each(function(i,j){f[i]=m(d.css("padding"+j))});b.containerOffset=d.offset();b.containerPosition=d.position();b.containerSize={height:d.innerHeight()-f[3],width:d.innerWidth()-f[1]};c=b.containerOffset;
+var g=b.containerSize.height,h=b.containerSize.width;h=e.ui.hasScroll(a,"left")?a.scrollWidth:h;g=e.ui.hasScroll(a)?a.scrollHeight:g;b.parentData={element:a,left:c.left,top:c.top,width:h,height:g}}}},resize:function(b){var a=e(this).data("resizable"),c=a.options,d=a.containerOffset,f=a.position;b=a._aspectRatio||b.shiftKey;var g={top:0,left:0},h=a.containerElement;if(h[0]!=document&&/static/.test(h.css("position")))g=d;if(f.left<(a._helper?d.left:0)){a.size.width+=a._helper?a.position.left-d.left:
+a.position.left-g.left;if(b)a.size.height=a.size.width/c.aspectRatio;a.position.left=c.helper?d.left:0}if(f.top<(a._helper?d.top:0)){a.size.height+=a._helper?a.position.top-d.top:a.position.top;if(b)a.size.width=a.size.height*c.aspectRatio;a.position.top=a._helper?d.top:0}a.offset.left=a.parentData.left+a.position.left;a.offset.top=a.parentData.top+a.position.top;c=Math.abs((a._helper?a.offset.left-g.left:a.offset.left-g.left)+a.sizeDiff.width);d=Math.abs((a._helper?a.offset.top-g.top:a.offset.top-
+d.top)+a.sizeDiff.height);f=a.containerElement.get(0)==a.element.parent().get(0);g=/relative|absolute/.test(a.containerElement.css("position"));if(f&&g)c-=a.parentData.left;if(c+a.size.width>=a.parentData.width){a.size.width=a.parentData.width-c;if(b)a.size.height=a.size.width/a.aspectRatio}if(d+a.size.height>=a.parentData.height){a.size.height=a.parentData.height-d;if(b)a.size.width=a.size.height*a.aspectRatio}},stop:function(){var b=e(this).data("resizable"),a=b.options,c=b.containerOffset,d=b.containerPosition,
+f=b.containerElement,g=e(b.helper),h=g.offset(),i=g.outerWidth()-b.sizeDiff.width;g=g.outerHeight()-b.sizeDiff.height;b._helper&&!a.animate&&/relative/.test(f.css("position"))&&e(this).css({left:h.left-d.left-c.left,width:i,height:g});b._helper&&!a.animate&&/static/.test(f.css("position"))&&e(this).css({left:h.left-d.left-c.left,width:i,height:g})}});e.ui.plugin.add("resizable","ghost",{start:function(){var b=e(this).data("resizable"),a=b.options,c=b.size;b.ghost=b.originalElement.clone();b.ghost.css({opacity:0.25,
+display:"block",position:"relative",height:c.height,width:c.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof a.ghost=="string"?a.ghost:"");b.ghost.appendTo(b.helper)},resize:function(){var b=e(this).data("resizable");b.ghost&&b.ghost.css({position:"relative",height:b.size.height,width:b.size.width})},stop:function(){var b=e(this).data("resizable");b.ghost&&b.helper&&b.helper.get(0).removeChild(b.ghost.get(0))}});e.ui.plugin.add("resizable","grid",{resize:function(){var b=
+e(this).data("resizable"),a=b.options,c=b.size,d=b.originalSize,f=b.originalPosition,g=b.axis;a.grid=typeof a.grid=="number"?[a.grid,a.grid]:a.grid;var h=Math.round((c.width-d.width)/(a.grid[0]||1))*(a.grid[0]||1);a=Math.round((c.height-d.height)/(a.grid[1]||1))*(a.grid[1]||1);if(/^(se|s|e)$/.test(g)){b.size.width=d.width+h;b.size.height=d.height+a}else if(/^(ne)$/.test(g)){b.size.width=d.width+h;b.size.height=d.height+a;b.position.top=f.top-a}else{if(/^(sw)$/.test(g)){b.size.width=d.width+h;b.size.height=
+d.height+a}else{b.size.width=d.width+h;b.size.height=d.height+a;b.position.top=f.top-a}b.position.left=f.left-h}}});var m=function(b){return parseInt(b,10)||0},k=function(b){return!isNaN(parseInt(b,10))}})(jQuery);
similarity index 97%
rename from wp-includes/js/jquery/ui.selectable.js
rename to wp-includes/js/jquery/ui/jquery.ui.selectable.min.js
index d32e21221aeed3349c7027680a567e5def54c084..3c600af0a5eee41f95da26addae5ca5708760dd1 100644 (file)
@@ -1,5 +1,5 @@
 /*
 /*
- * jQuery UI Selectable 1.8.12
+ * jQuery UI Selectable 1.8.16
  *
  * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
  * Dual licensed under the MIT or GPL Version 2 licenses.
  *
  * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
  * Dual licensed under the MIT or GPL Version 2 licenses.
@@ -19,4 +19,4 @@ c,{unselecting:b.element})}});e(c.target).parents().andSelf().each(function(){va
 this.options,b=this.opos[0],g=this.opos[1],h=c.pageX,i=c.pageY;if(b>h){var j=h;h=b;b=j}if(g>i){j=i;i=g;g=j}this.helper.css({left:b,top:g,width:h-b,height:i-g});this.selectees.each(function(){var a=e.data(this,"selectable-item");if(!(!a||a.element==f.element[0])){var k=false;if(d.tolerance=="touch")k=!(a.left>h||a.right<b||a.top>i||a.bottom<g);else if(d.tolerance=="fit")k=a.left>b&&a.right<h&&a.top>g&&a.bottom<i;if(k){if(a.selected){a.$element.removeClass("ui-selected");a.selected=false}if(a.unselecting){a.$element.removeClass("ui-unselecting");
 a.unselecting=false}if(!a.selecting){a.$element.addClass("ui-selecting");a.selecting=true;f._trigger("selecting",c,{selecting:a.element})}}else{if(a.selecting)if(c.metaKey&&a.startselected){a.$element.removeClass("ui-selecting");a.selecting=false;a.$element.addClass("ui-selected");a.selected=true}else{a.$element.removeClass("ui-selecting");a.selecting=false;if(a.startselected){a.$element.addClass("ui-unselecting");a.unselecting=true}f._trigger("unselecting",c,{unselecting:a.element})}if(a.selected)if(!c.metaKey&&
 !a.startselected){a.$element.removeClass("ui-selected");a.selected=false;a.$element.addClass("ui-unselecting");a.unselecting=true;f._trigger("unselecting",c,{unselecting:a.element})}}}});return false}},_mouseStop:function(c){var f=this;this.dragged=false;e(".ui-unselecting",this.element[0]).each(function(){var d=e.data(this,"selectable-item");d.$element.removeClass("ui-unselecting");d.unselecting=false;d.startselected=false;f._trigger("unselected",c,{unselected:d.element})});e(".ui-selecting",this.element[0]).each(function(){var d=
 this.options,b=this.opos[0],g=this.opos[1],h=c.pageX,i=c.pageY;if(b>h){var j=h;h=b;b=j}if(g>i){j=i;i=g;g=j}this.helper.css({left:b,top:g,width:h-b,height:i-g});this.selectees.each(function(){var a=e.data(this,"selectable-item");if(!(!a||a.element==f.element[0])){var k=false;if(d.tolerance=="touch")k=!(a.left>h||a.right<b||a.top>i||a.bottom<g);else if(d.tolerance=="fit")k=a.left>b&&a.right<h&&a.top>g&&a.bottom<i;if(k){if(a.selected){a.$element.removeClass("ui-selected");a.selected=false}if(a.unselecting){a.$element.removeClass("ui-unselecting");
 a.unselecting=false}if(!a.selecting){a.$element.addClass("ui-selecting");a.selecting=true;f._trigger("selecting",c,{selecting:a.element})}}else{if(a.selecting)if(c.metaKey&&a.startselected){a.$element.removeClass("ui-selecting");a.selecting=false;a.$element.addClass("ui-selected");a.selected=true}else{a.$element.removeClass("ui-selecting");a.selecting=false;if(a.startselected){a.$element.addClass("ui-unselecting");a.unselecting=true}f._trigger("unselecting",c,{unselecting:a.element})}if(a.selected)if(!c.metaKey&&
 !a.startselected){a.$element.removeClass("ui-selected");a.selected=false;a.$element.addClass("ui-unselecting");a.unselecting=true;f._trigger("unselecting",c,{unselecting:a.element})}}}});return false}},_mouseStop:function(c){var f=this;this.dragged=false;e(".ui-unselecting",this.element[0]).each(function(){var d=e.data(this,"selectable-item");d.$element.removeClass("ui-unselecting");d.unselecting=false;d.startselected=false;f._trigger("unselected",c,{unselected:d.element})});e(".ui-selecting",this.element[0]).each(function(){var d=
-e.data(this,"selectable-item");d.$element.removeClass("ui-selecting").addClass("ui-selected");d.selecting=false;d.selected=true;d.startselected=true;f._trigger("selected",c,{selected:d.element})});this._trigger("stop",c);this.helper.remove();return false}});e.extend(e.ui.selectable,{version:"1.8.12"})})(jQuery);
+e.data(this,"selectable-item");d.$element.removeClass("ui-selecting").addClass("ui-selected");d.selecting=false;d.selected=true;d.startselected=true;f._trigger("selected",c,{selected:d.element})});this._trigger("stop",c);this.helper.remove();return false}});e.extend(e.ui.selectable,{version:"1.8.16"})})(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.ui.slider.min.js b/wp-includes/js/jquery/ui/jquery.ui.slider.min.js
new file mode 100644 (file)
index 0000000..cc8dee1
--- /dev/null
@@ -0,0 +1,33 @@
+/*
+ * jQuery UI Slider 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Slider
+ *
+ * Depends:
+ *     jquery.ui.core.js
+ *     jquery.ui.mouse.js
+ *     jquery.ui.widget.js
+ */
+(function(d){d.widget("ui.slider",d.ui.mouse,{widgetEventPrefix:"slide",options:{animate:false,distance:0,max:100,min:0,orientation:"horizontal",range:false,step:1,value:0,values:null},_create:function(){var a=this,b=this.options,c=this.element.find(".ui-slider-handle").addClass("ui-state-default ui-corner-all"),f=b.values&&b.values.length||1,e=[];this._mouseSliding=this._keySliding=false;this._animateOff=true;this._handleIndex=null;this._detectOrientation();this._mouseInit();this.element.addClass("ui-slider ui-slider-"+
+this.orientation+" ui-widget ui-widget-content ui-corner-all"+(b.disabled?" ui-slider-disabled ui-disabled":""));this.range=d([]);if(b.range){if(b.range===true){if(!b.values)b.values=[this._valueMin(),this._valueMin()];if(b.values.length&&b.values.length!==2)b.values=[b.values[0],b.values[0]]}this.range=d("<div></div>").appendTo(this.element).addClass("ui-slider-range ui-widget-header"+(b.range==="min"||b.range==="max"?" ui-slider-range-"+b.range:""))}for(var j=c.length;j<f;j+=1)e.push("<a class='ui-slider-handle ui-state-default ui-corner-all' href='#'></a>");
+this.handles=c.add(d(e.join("")).appendTo(a.element));this.handle=this.handles.eq(0);this.handles.add(this.range).filter("a").click(function(g){g.preventDefault()}).hover(function(){b.disabled||d(this).addClass("ui-state-hover")},function(){d(this).removeClass("ui-state-hover")}).focus(function(){if(b.disabled)d(this).blur();else{d(".ui-slider .ui-state-focus").removeClass("ui-state-focus");d(this).addClass("ui-state-focus")}}).blur(function(){d(this).removeClass("ui-state-focus")});this.handles.each(function(g){d(this).data("index.ui-slider-handle",
+g)});this.handles.keydown(function(g){var k=true,l=d(this).data("index.ui-slider-handle"),i,h,m;if(!a.options.disabled){switch(g.keyCode){case d.ui.keyCode.HOME:case d.ui.keyCode.END:case d.ui.keyCode.PAGE_UP:case d.ui.keyCode.PAGE_DOWN:case d.ui.keyCode.UP:case d.ui.keyCode.RIGHT:case d.ui.keyCode.DOWN:case d.ui.keyCode.LEFT:k=false;if(!a._keySliding){a._keySliding=true;d(this).addClass("ui-state-active");i=a._start(g,l);if(i===false)return}break}m=a.options.step;i=a.options.values&&a.options.values.length?
+(h=a.values(l)):(h=a.value());switch(g.keyCode){case d.ui.keyCode.HOME:h=a._valueMin();break;case d.ui.keyCode.END:h=a._valueMax();break;case d.ui.keyCode.PAGE_UP:h=a._trimAlignValue(i+(a._valueMax()-a._valueMin())/5);break;case d.ui.keyCode.PAGE_DOWN:h=a._trimAlignValue(i-(a._valueMax()-a._valueMin())/5);break;case d.ui.keyCode.UP:case d.ui.keyCode.RIGHT:if(i===a._valueMax())return;h=a._trimAlignValue(i+m);break;case d.ui.keyCode.DOWN:case d.ui.keyCode.LEFT:if(i===a._valueMin())return;h=a._trimAlignValue(i-
+m);break}a._slide(g,l,h);return k}}).keyup(function(g){var k=d(this).data("index.ui-slider-handle");if(a._keySliding){a._keySliding=false;a._stop(g,k);a._change(g,k);d(this).removeClass("ui-state-active")}});this._refreshValue();this._animateOff=false},destroy:function(){this.handles.remove();this.range.remove();this.element.removeClass("ui-slider ui-slider-horizontal ui-slider-vertical ui-slider-disabled ui-widget ui-widget-content ui-corner-all").removeData("slider").unbind(".slider");this._mouseDestroy();
+return this},_mouseCapture:function(a){var b=this.options,c,f,e,j,g;if(b.disabled)return false;this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()};this.elementOffset=this.element.offset();c=this._normValueFromMouse({x:a.pageX,y:a.pageY});f=this._valueMax()-this._valueMin()+1;j=this;this.handles.each(function(k){var l=Math.abs(c-j.values(k));if(f>l){f=l;e=d(this);g=k}});if(b.range===true&&this.values(1)===b.min){g+=1;e=d(this.handles[g])}if(this._start(a,g)===false)return false;
+this._mouseSliding=true;j._handleIndex=g;e.addClass("ui-state-active").focus();b=e.offset();this._clickOffset=!d(a.target).parents().andSelf().is(".ui-slider-handle")?{left:0,top:0}:{left:a.pageX-b.left-e.width()/2,top:a.pageY-b.top-e.height()/2-(parseInt(e.css("borderTopWidth"),10)||0)-(parseInt(e.css("borderBottomWidth"),10)||0)+(parseInt(e.css("marginTop"),10)||0)};this.handles.hasClass("ui-state-hover")||this._slide(a,g,c);return this._animateOff=true},_mouseStart:function(){return true},_mouseDrag:function(a){var b=
+this._normValueFromMouse({x:a.pageX,y:a.pageY});this._slide(a,this._handleIndex,b);return false},_mouseStop:function(a){this.handles.removeClass("ui-state-active");this._mouseSliding=false;this._stop(a,this._handleIndex);this._change(a,this._handleIndex);this._clickOffset=this._handleIndex=null;return this._animateOff=false},_detectOrientation:function(){this.orientation=this.options.orientation==="vertical"?"vertical":"horizontal"},_normValueFromMouse:function(a){var b;if(this.orientation==="horizontal"){b=
+this.elementSize.width;a=a.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)}else{b=this.elementSize.height;a=a.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)}b=a/b;if(b>1)b=1;if(b<0)b=0;if(this.orientation==="vertical")b=1-b;a=this._valueMax()-this._valueMin();return this._trimAlignValue(this._valueMin()+b*a)},_start:function(a,b){var c={handle:this.handles[b],value:this.value()};if(this.options.values&&this.options.values.length){c.value=this.values(b);
+c.values=this.values()}return this._trigger("start",a,c)},_slide:function(a,b,c){var f;if(this.options.values&&this.options.values.length){f=this.values(b?0:1);if(this.options.values.length===2&&this.options.range===true&&(b===0&&c>f||b===1&&c<f))c=f;if(c!==this.values(b)){f=this.values();f[b]=c;a=this._trigger("slide",a,{handle:this.handles[b],value:c,values:f});this.values(b?0:1);a!==false&&this.values(b,c,true)}}else if(c!==this.value()){a=this._trigger("slide",a,{handle:this.handles[b],value:c});
+a!==false&&this.value(c)}},_stop:function(a,b){var c={handle:this.handles[b],value:this.value()};if(this.options.values&&this.options.values.length){c.value=this.values(b);c.values=this.values()}this._trigger("stop",a,c)},_change:function(a,b){if(!this._keySliding&&!this._mouseSliding){var c={handle:this.handles[b],value:this.value()};if(this.options.values&&this.options.values.length){c.value=this.values(b);c.values=this.values()}this._trigger("change",a,c)}},value:function(a){if(arguments.length){this.options.value=
+this._trimAlignValue(a);this._refreshValue();this._change(null,0)}else return this._value()},values:function(a,b){var c,f,e;if(arguments.length>1){this.options.values[a]=this._trimAlignValue(b);this._refreshValue();this._change(null,a)}else if(arguments.length)if(d.isArray(arguments[0])){c=this.options.values;f=arguments[0];for(e=0;e<c.length;e+=1){c[e]=this._trimAlignValue(f[e]);this._change(null,e)}this._refreshValue()}else return this.options.values&&this.options.values.length?this._values(a):
+this.value();else return this._values()},_setOption:function(a,b){var c,f=0;if(d.isArray(this.options.values))f=this.options.values.length;d.Widget.prototype._setOption.apply(this,arguments);switch(a){case "disabled":if(b){this.handles.filter(".ui-state-focus").blur();this.handles.removeClass("ui-state-hover");this.handles.propAttr("disabled",true);this.element.addClass("ui-disabled")}else{this.handles.propAttr("disabled",false);this.element.removeClass("ui-disabled")}break;case "orientation":this._detectOrientation();
+this.element.removeClass("ui-slider-horizontal ui-slider-vertical").addClass("ui-slider-"+this.orientation);this._refreshValue();break;case "value":this._animateOff=true;this._refreshValue();this._change(null,0);this._animateOff=false;break;case "values":this._animateOff=true;this._refreshValue();for(c=0;c<f;c+=1)this._change(null,c);this._animateOff=false;break}},_value:function(){var a=this.options.value;return a=this._trimAlignValue(a)},_values:function(a){var b,c;if(arguments.length){b=this.options.values[a];
+return b=this._trimAlignValue(b)}else{b=this.options.values.slice();for(c=0;c<b.length;c+=1)b[c]=this._trimAlignValue(b[c]);return b}},_trimAlignValue:function(a){if(a<=this._valueMin())return this._valueMin();if(a>=this._valueMax())return this._valueMax();var b=this.options.step>0?this.options.step:1,c=(a-this._valueMin())%b;a=a-c;if(Math.abs(c)*2>=b)a+=c>0?b:-b;return parseFloat(a.toFixed(5))},_valueMin:function(){return this.options.min},_valueMax:function(){return this.options.max},_refreshValue:function(){var a=
+this.options.range,b=this.options,c=this,f=!this._animateOff?b.animate:false,e,j={},g,k,l,i;if(this.options.values&&this.options.values.length)this.handles.each(function(h){e=(c.values(h)-c._valueMin())/(c._valueMax()-c._valueMin())*100;j[c.orientation==="horizontal"?"left":"bottom"]=e+"%";d(this).stop(1,1)[f?"animate":"css"](j,b.animate);if(c.options.range===true)if(c.orientation==="horizontal"){if(h===0)c.range.stop(1,1)[f?"animate":"css"]({left:e+"%"},b.animate);if(h===1)c.range[f?"animate":"css"]({width:e-
+g+"%"},{queue:false,duration:b.animate})}else{if(h===0)c.range.stop(1,1)[f?"animate":"css"]({bottom:e+"%"},b.animate);if(h===1)c.range[f?"animate":"css"]({height:e-g+"%"},{queue:false,duration:b.animate})}g=e});else{k=this.value();l=this._valueMin();i=this._valueMax();e=i!==l?(k-l)/(i-l)*100:0;j[c.orientation==="horizontal"?"left":"bottom"]=e+"%";this.handle.stop(1,1)[f?"animate":"css"](j,b.animate);if(a==="min"&&this.orientation==="horizontal")this.range.stop(1,1)[f?"animate":"css"]({width:e+"%"},
+b.animate);if(a==="max"&&this.orientation==="horizontal")this.range[f?"animate":"css"]({width:100-e+"%"},{queue:false,duration:b.animate});if(a==="min"&&this.orientation==="vertical")this.range.stop(1,1)[f?"animate":"css"]({height:e+"%"},b.animate);if(a==="max"&&this.orientation==="vertical")this.range[f?"animate":"css"]({height:100-e+"%"},{queue:false,duration:b.animate})}}});d.extend(d.ui.slider,{version:"1.8.16"})})(jQuery);
similarity index 89%
rename from wp-includes/js/jquery/ui.sortable.js
rename to wp-includes/js/jquery/ui/jquery.ui.sortable.min.js
index b825bbf34680b21d62120b8a446e20bbda8e42aa..d0ad528df65559a8ec6c75feb7c6ed8bc48e2ac7 100644 (file)
@@ -1,5 +1,5 @@
 /*
 /*
- * jQuery UI Sortable 1.8.12
+ * jQuery UI Sortable 1.8.16
  *
  * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
  * Dual licensed under the MIT or GPL Version 2 licenses.
  *
  * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
  * Dual licensed under the MIT or GPL Version 2 licenses.
  *     jquery.ui.mouse.js
  *     jquery.ui.widget.js
  */
  *     jquery.ui.mouse.js
  *     jquery.ui.widget.js
  */
-(function(d){d.widget("ui.sortable",d.ui.mouse,{widgetEventPrefix:"sort",options:{appendTo:"parent",axis:false,connectWith:false,containment:false,cursor:"auto",cursorAt:false,dropOnEmpty:true,forcePlaceholderSize:false,forceHelperSize:false,grid:false,handle:false,helper:"original",items:"> *",opacity:false,placeholder:false,revert:false,scroll:true,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1E3},_create:function(){this.containerCache={};this.element.addClass("ui-sortable");
-this.refresh();this.floating=this.items.length?/left|right/.test(this.items[0].item.css("float"))||/inline|table-cell/.test(this.items[0].item.css("display")):false;this.offset=this.element.offset();this._mouseInit()},destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled").removeData("sortable").unbind(".sortable");this._mouseDestroy();for(var a=this.items.length-1;a>=0;a--)this.items[a].item.removeData("sortable-item");return this},_setOption:function(a,b){if(a==="disabled"){this.options[a]=
-b;this.widget()[b?"addClass":"removeClass"]("ui-sortable-disabled")}else d.Widget.prototype._setOption.apply(this,arguments)},_mouseCapture:function(a,b){if(this.reverting)return false;if(this.options.disabled||this.options.type=="static")return false;this._refreshItems(a);var c=null,e=this;d(a.target).parents().each(function(){if(d.data(this,"sortable-item")==e){c=d(this);return false}});if(d.data(a.target,"sortable-item")==e)c=d(a.target);if(!c)return false;if(this.options.handle&&!b){var f=false;
-d(this.options.handle,c).find("*").andSelf().each(function(){if(this==a.target)f=true});if(!f)return false}this.currentItem=c;this._removeCurrentsFromItems();return true},_mouseStart:function(a,b,c){b=this.options;var e=this;this.currentContainer=this;this.refreshPositions();this.helper=this._createHelper(a);this._cacheHelperProportions();this._cacheMargins();this.scrollParent=this.helper.scrollParent();this.offset=this.currentItem.offset();this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-
-this.margins.left};this.helper.css("position","absolute");this.cssPosition=this.helper.css("position");d.extend(this.offset,{click:{left:a.pageX-this.offset.left,top:a.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this._generatePosition(a);this.originalPageX=a.pageX;this.originalPageY=a.pageY;b.cursorAt&&this._adjustOffsetFromHelper(b.cursorAt);this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]};
+(function(d){d.widget("ui.sortable",d.ui.mouse,{widgetEventPrefix:"sort",options:{appendTo:"parent",axis:false,connectWith:false,containment:false,cursor:"auto",cursorAt:false,dropOnEmpty:true,forcePlaceholderSize:false,forceHelperSize:false,grid:false,handle:false,helper:"original",items:"> *",opacity:false,placeholder:false,revert:false,scroll:true,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1E3},_create:function(){var a=this.options;this.containerCache={};this.element.addClass("ui-sortable");
+this.refresh();this.floating=this.items.length?a.axis==="x"||/left|right/.test(this.items[0].item.css("float"))||/inline|table-cell/.test(this.items[0].item.css("display")):false;this.offset=this.element.offset();this._mouseInit()},destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled").removeData("sortable").unbind(".sortable");this._mouseDestroy();for(var a=this.items.length-1;a>=0;a--)this.items[a].item.removeData("sortable-item");return this},_setOption:function(a,b){if(a===
+"disabled"){this.options[a]=b;this.widget()[b?"addClass":"removeClass"]("ui-sortable-disabled")}else d.Widget.prototype._setOption.apply(this,arguments)},_mouseCapture:function(a,b){if(this.reverting)return false;if(this.options.disabled||this.options.type=="static")return false;this._refreshItems(a);var c=null,e=this;d(a.target).parents().each(function(){if(d.data(this,"sortable-item")==e){c=d(this);return false}});if(d.data(a.target,"sortable-item")==e)c=d(a.target);if(!c)return false;if(this.options.handle&&
+!b){var f=false;d(this.options.handle,c).find("*").andSelf().each(function(){if(this==a.target)f=true});if(!f)return false}this.currentItem=c;this._removeCurrentsFromItems();return true},_mouseStart:function(a,b,c){b=this.options;var e=this;this.currentContainer=this;this.refreshPositions();this.helper=this._createHelper(a);this._cacheHelperProportions();this._cacheMargins();this.scrollParent=this.helper.scrollParent();this.offset=this.currentItem.offset();this.offset={top:this.offset.top-this.margins.top,
+left:this.offset.left-this.margins.left};this.helper.css("position","absolute");this.cssPosition=this.helper.css("position");d.extend(this.offset,{click:{left:a.pageX-this.offset.left,top:a.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this._generatePosition(a);this.originalPageX=a.pageX;this.originalPageY=a.pageY;b.cursorAt&&this._adjustOffsetFromHelper(b.cursorAt);this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]};
 this.helper[0]!=this.currentItem[0]&&this.currentItem.hide();this._createPlaceholder();b.containment&&this._setContainment();if(b.cursor){if(d("body").css("cursor"))this._storedCursor=d("body").css("cursor");d("body").css("cursor",b.cursor)}if(b.opacity){if(this.helper.css("opacity"))this._storedOpacity=this.helper.css("opacity");this.helper.css("opacity",b.opacity)}if(b.zIndex){if(this.helper.css("zIndex"))this._storedZIndex=this.helper.css("zIndex");this.helper.css("zIndex",b.zIndex)}if(this.scrollParent[0]!=
 document&&this.scrollParent[0].tagName!="HTML")this.overflowOffset=this.scrollParent.offset();this._trigger("start",a,this._uiHash());this._preserveHelperProportions||this._cacheHelperProportions();if(!c)for(c=this.containers.length-1;c>=0;c--)this.containers[c]._trigger("activate",a,e._uiHash(this));if(d.ui.ddmanager)d.ui.ddmanager.current=this;d.ui.ddmanager&&!b.dropBehaviour&&d.ui.ddmanager.prepareOffsets(this,a);this.dragging=true;this.helper.addClass("ui-sortable-helper");this._mouseDrag(a);
 return true},_mouseDrag:function(a){this.position=this._generatePosition(a);this.positionAbs=this._convertPositionTo("absolute");if(!this.lastPositionAbs)this.lastPositionAbs=this.positionAbs;if(this.options.scroll){var b=this.options,c=false;if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"){if(this.overflowOffset.top+this.scrollParent[0].offsetHeight-a.pageY<b.scrollSensitivity)this.scrollParent[0].scrollTop=c=this.scrollParent[0].scrollTop+b.scrollSpeed;else if(a.pageY-this.overflowOffset.top<
 this.helper[0]!=this.currentItem[0]&&this.currentItem.hide();this._createPlaceholder();b.containment&&this._setContainment();if(b.cursor){if(d("body").css("cursor"))this._storedCursor=d("body").css("cursor");d("body").css("cursor",b.cursor)}if(b.opacity){if(this.helper.css("opacity"))this._storedOpacity=this.helper.css("opacity");this.helper.css("opacity",b.opacity)}if(b.zIndex){if(this.helper.css("zIndex"))this._storedZIndex=this.helper.css("zIndex");this.helper.css("zIndex",b.zIndex)}if(this.scrollParent[0]!=
 document&&this.scrollParent[0].tagName!="HTML")this.overflowOffset=this.scrollParent.offset();this._trigger("start",a,this._uiHash());this._preserveHelperProportions||this._cacheHelperProportions();if(!c)for(c=this.containers.length-1;c>=0;c--)this.containers[c]._trigger("activate",a,e._uiHash(this));if(d.ui.ddmanager)d.ui.ddmanager.current=this;d.ui.ddmanager&&!b.dropBehaviour&&d.ui.ddmanager.prepareOffsets(this,a);this.dragging=true;this.helper.addClass("ui-sortable-helper");this._mouseDrag(a);
 return true},_mouseDrag:function(a){this.position=this._generatePosition(a);this.positionAbs=this._convertPositionTo("absolute");if(!this.lastPositionAbs)this.lastPositionAbs=this.positionAbs;if(this.options.scroll){var b=this.options,c=false;if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"){if(this.overflowOffset.top+this.scrollParent[0].offsetHeight-a.pageY<b.scrollSensitivity)this.scrollParent[0].scrollTop=c=this.scrollParent[0].scrollTop+b.scrollSpeed;else if(a.pageY-this.overflowOffset.top<
@@ -52,9 +52,9 @@ this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scroll
 var f=a.pageX,g=a.pageY;if(this.originalPosition){if(this.containment){if(a.pageX-this.offset.click.left<this.containment[0])f=this.containment[0]+this.offset.click.left;if(a.pageY-this.offset.click.top<this.containment[1])g=this.containment[1]+this.offset.click.top;if(a.pageX-this.offset.click.left>this.containment[2])f=this.containment[2]+this.offset.click.left;if(a.pageY-this.offset.click.top>this.containment[3])g=this.containment[3]+this.offset.click.top}if(b.grid){g=this.originalPageY+Math.round((g-
 this.originalPageY)/b.grid[1])*b.grid[1];g=this.containment?!(g-this.offset.click.top<this.containment[1]||g-this.offset.click.top>this.containment[3])?g:!(g-this.offset.click.top<this.containment[1])?g-b.grid[1]:g+b.grid[1]:g;f=this.originalPageX+Math.round((f-this.originalPageX)/b.grid[0])*b.grid[0];f=this.containment?!(f-this.offset.click.left<this.containment[0]||f-this.offset.click.left>this.containment[2])?f:!(f-this.offset.click.left<this.containment[0])?f-b.grid[0]:f+b.grid[0]:f}}return{top:g-
 this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(d.browser.safari&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollTop():e?0:c.scrollTop()),left:f-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(d.browser.safari&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():e?0:c.scrollLeft())}},_rearrange:function(a,b,c,e){c?c[0].appendChild(this.placeholder[0]):b.item[0].parentNode.insertBefore(this.placeholder[0],
 var f=a.pageX,g=a.pageY;if(this.originalPosition){if(this.containment){if(a.pageX-this.offset.click.left<this.containment[0])f=this.containment[0]+this.offset.click.left;if(a.pageY-this.offset.click.top<this.containment[1])g=this.containment[1]+this.offset.click.top;if(a.pageX-this.offset.click.left>this.containment[2])f=this.containment[2]+this.offset.click.left;if(a.pageY-this.offset.click.top>this.containment[3])g=this.containment[3]+this.offset.click.top}if(b.grid){g=this.originalPageY+Math.round((g-
 this.originalPageY)/b.grid[1])*b.grid[1];g=this.containment?!(g-this.offset.click.top<this.containment[1]||g-this.offset.click.top>this.containment[3])?g:!(g-this.offset.click.top<this.containment[1])?g-b.grid[1]:g+b.grid[1]:g;f=this.originalPageX+Math.round((f-this.originalPageX)/b.grid[0])*b.grid[0];f=this.containment?!(f-this.offset.click.left<this.containment[0]||f-this.offset.click.left>this.containment[2])?f:!(f-this.offset.click.left<this.containment[0])?f-b.grid[0]:f+b.grid[0]:f}}return{top:g-
 this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(d.browser.safari&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollTop():e?0:c.scrollTop()),left:f-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(d.browser.safari&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():e?0:c.scrollLeft())}},_rearrange:function(a,b,c,e){c?c[0].appendChild(this.placeholder[0]):b.item[0].parentNode.insertBefore(this.placeholder[0],
-this.direction=="down"?b.item[0]:b.item[0].nextSibling);this.counter=this.counter?++this.counter:1;var f=this,g=this.counter;window.setTimeout(function(){g==f.counter&&f.refreshPositions(!e)},0)},_clear:function(a,b){this.reverting=false;var c=[];!this._noFinalSort&&this.currentItem[0].parentNode&&this.placeholder.before(this.currentItem);this._noFinalSort=null;if(this.helper[0]==this.currentItem[0]){for(var e in this._storedCSS)if(this._storedCSS[e]=="auto"||this._storedCSS[e]=="static")this._storedCSS[e]=
+this.direction=="down"?b.item[0]:b.item[0].nextSibling);this.counter=this.counter?++this.counter:1;var f=this,g=this.counter;window.setTimeout(function(){g==f.counter&&f.refreshPositions(!e)},0)},_clear:function(a,b){this.reverting=false;var c=[];!this._noFinalSort&&this.currentItem.parent().length&&this.placeholder.before(this.currentItem);this._noFinalSort=null;if(this.helper[0]==this.currentItem[0]){for(var e in this._storedCSS)if(this._storedCSS[e]=="auto"||this._storedCSS[e]=="static")this._storedCSS[e]=
 "";this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")}else this.currentItem.show();this.fromOutside&&!b&&c.push(function(f){this._trigger("receive",f,this._uiHash(this.fromOutside))});if((this.fromOutside||this.domPosition.prev!=this.currentItem.prev().not(".ui-sortable-helper")[0]||this.domPosition.parent!=this.currentItem.parent()[0])&&!b)c.push(function(f){this._trigger("update",f,this._uiHash())});if(!d.ui.contains(this.element[0],this.currentItem[0])){b||c.push(function(f){this._trigger("remove",
 f,this._uiHash())});for(e=this.containers.length-1;e>=0;e--)if(d.ui.contains(this.containers[e].element[0],this.currentItem[0])&&!b){c.push(function(f){return function(g){f._trigger("receive",g,this._uiHash(this))}}.call(this,this.containers[e]));c.push(function(f){return function(g){f._trigger("update",g,this._uiHash(this))}}.call(this,this.containers[e]))}}for(e=this.containers.length-1;e>=0;e--){b||c.push(function(f){return function(g){f._trigger("deactivate",g,this._uiHash(this))}}.call(this,
 this.containers[e]));if(this.containers[e].containerCache.over){c.push(function(f){return function(g){f._trigger("out",g,this._uiHash(this))}}.call(this,this.containers[e]));this.containers[e].containerCache.over=0}}this._storedCursor&&d("body").css("cursor",this._storedCursor);this._storedOpacity&&this.helper.css("opacity",this._storedOpacity);if(this._storedZIndex)this.helper.css("zIndex",this._storedZIndex=="auto"?"":this._storedZIndex);this.dragging=false;if(this.cancelHelperRemoval){if(!b){this._trigger("beforeStop",
 a,this._uiHash());for(e=0;e<c.length;e++)c[e].call(this,a);this._trigger("stop",a,this._uiHash())}return false}b||this._trigger("beforeStop",a,this._uiHash());this.placeholder[0].parentNode.removeChild(this.placeholder[0]);this.helper[0]!=this.currentItem[0]&&this.helper.remove();this.helper=null;if(!b){for(e=0;e<c.length;e++)c[e].call(this,a);this._trigger("stop",a,this._uiHash())}this.fromOutside=false;return true},_trigger:function(){d.Widget.prototype._trigger.apply(this,arguments)===false&&this.cancel()},
 "";this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")}else this.currentItem.show();this.fromOutside&&!b&&c.push(function(f){this._trigger("receive",f,this._uiHash(this.fromOutside))});if((this.fromOutside||this.domPosition.prev!=this.currentItem.prev().not(".ui-sortable-helper")[0]||this.domPosition.parent!=this.currentItem.parent()[0])&&!b)c.push(function(f){this._trigger("update",f,this._uiHash())});if(!d.ui.contains(this.element[0],this.currentItem[0])){b||c.push(function(f){this._trigger("remove",
 f,this._uiHash())});for(e=this.containers.length-1;e>=0;e--)if(d.ui.contains(this.containers[e].element[0],this.currentItem[0])&&!b){c.push(function(f){return function(g){f._trigger("receive",g,this._uiHash(this))}}.call(this,this.containers[e]));c.push(function(f){return function(g){f._trigger("update",g,this._uiHash(this))}}.call(this,this.containers[e]))}}for(e=this.containers.length-1;e>=0;e--){b||c.push(function(f){return function(g){f._trigger("deactivate",g,this._uiHash(this))}}.call(this,
 this.containers[e]));if(this.containers[e].containerCache.over){c.push(function(f){return function(g){f._trigger("out",g,this._uiHash(this))}}.call(this,this.containers[e]));this.containers[e].containerCache.over=0}}this._storedCursor&&d("body").css("cursor",this._storedCursor);this._storedOpacity&&this.helper.css("opacity",this._storedOpacity);if(this._storedZIndex)this.helper.css("zIndex",this._storedZIndex=="auto"?"":this._storedZIndex);this.dragging=false;if(this.cancelHelperRemoval){if(!b){this._trigger("beforeStop",
 a,this._uiHash());for(e=0;e<c.length;e++)c[e].call(this,a);this._trigger("stop",a,this._uiHash())}return false}b||this._trigger("beforeStop",a,this._uiHash());this.placeholder[0].parentNode.removeChild(this.placeholder[0]);this.helper[0]!=this.currentItem[0]&&this.helper.remove();this.helper=null;if(!b){for(e=0;e<c.length;e++)c[e].call(this,a);this._trigger("stop",a,this._uiHash())}this.fromOutside=false;return true},_trigger:function(){d.Widget.prototype._trigger.apply(this,arguments)===false&&this.cancel()},
-_uiHash:function(a){var b=a||this;return{helper:b.helper,placeholder:b.placeholder||d([]),position:b.position,originalPosition:b.originalPosition,offset:b.positionAbs,item:b.currentItem,sender:a?a.element:null}}});d.extend(d.ui.sortable,{version:"1.8.12"})})(jQuery);
+_uiHash:function(a){var b=a||this;return{helper:b.helper,placeholder:b.placeholder||d([]),position:b.position,originalPosition:b.originalPosition,offset:b.positionAbs,item:b.currentItem,sender:a?a.element:null}}});d.extend(d.ui.sortable,{version:"1.8.16"})})(jQuery);
similarity index 99%
rename from wp-includes/js/jquery/ui.tabs.js
rename to wp-includes/js/jquery/ui/jquery.ui.tabs.min.js
index 59520ac67a93309654acf4f31ab32c82ac65d86a..3697f421cf82ec696504a93ef070057111a6b3f8 100644 (file)
@@ -1,5 +1,5 @@
 /*
 /*
- * jQuery UI Tabs 1.8.12
+ * jQuery UI Tabs 1.8.16
  *
  * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
  * Dual licensed under the MIT or GPL Version 2 licenses.
  *
  * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
  * Dual licensed under the MIT or GPL Version 2 licenses.
@@ -31,5 +31,5 @@ if(a.hasClass("ui-tabs-selected")&&this.anchors.length>1)this.select(b+(b+1<this
 this._ui(this.anchors[b],this.panels[b]));return this}},disable:function(b){b=this._getIndex(b);var e=this.options;if(b!=e.selected){this.lis.eq(b).addClass("ui-state-disabled");e.disabled.push(b);e.disabled.sort();this._trigger("disable",null,this._ui(this.anchors[b],this.panels[b]))}return this},select:function(b){b=this._getIndex(b);if(b==-1)if(this.options.collapsible&&this.options.selected!=-1)b=this.options.selected;else return this;this.anchors.eq(b).trigger(this.options.event+".tabs");return this},
 load:function(b){b=this._getIndex(b);var e=this,a=this.options,c=this.anchors.eq(b)[0],h=d.data(c,"load.tabs");this.abort();if(!h||this.element.queue("tabs").length!==0&&d.data(c,"cache.tabs"))this.element.dequeue("tabs");else{this.lis.eq(b).addClass("ui-state-processing");if(a.spinner){var j=d("span",c);j.data("label.tabs",j.html()).html(a.spinner)}this.xhr=d.ajax(d.extend({},a.ajaxOptions,{url:h,success:function(k,n){e.element.find(e._sanitizeSelector(c.hash)).html(k);e._cleanup();a.cache&&d.data(c,
 "cache.tabs",true);e._trigger("load",null,e._ui(e.anchors[b],e.panels[b]));try{a.ajaxOptions.success(k,n)}catch(m){}},error:function(k,n){e._cleanup();e._trigger("load",null,e._ui(e.anchors[b],e.panels[b]));try{a.ajaxOptions.error(k,n,b,c)}catch(m){}}}));e.element.dequeue("tabs");return this}},abort:function(){this.element.queue([]);this.panels.stop(false,true);this.element.queue("tabs",this.element.queue("tabs").splice(-2,2));if(this.xhr){this.xhr.abort();delete this.xhr}this._cleanup();return this},
 this._ui(this.anchors[b],this.panels[b]));return this}},disable:function(b){b=this._getIndex(b);var e=this.options;if(b!=e.selected){this.lis.eq(b).addClass("ui-state-disabled");e.disabled.push(b);e.disabled.sort();this._trigger("disable",null,this._ui(this.anchors[b],this.panels[b]))}return this},select:function(b){b=this._getIndex(b);if(b==-1)if(this.options.collapsible&&this.options.selected!=-1)b=this.options.selected;else return this;this.anchors.eq(b).trigger(this.options.event+".tabs");return this},
 load:function(b){b=this._getIndex(b);var e=this,a=this.options,c=this.anchors.eq(b)[0],h=d.data(c,"load.tabs");this.abort();if(!h||this.element.queue("tabs").length!==0&&d.data(c,"cache.tabs"))this.element.dequeue("tabs");else{this.lis.eq(b).addClass("ui-state-processing");if(a.spinner){var j=d("span",c);j.data("label.tabs",j.html()).html(a.spinner)}this.xhr=d.ajax(d.extend({},a.ajaxOptions,{url:h,success:function(k,n){e.element.find(e._sanitizeSelector(c.hash)).html(k);e._cleanup();a.cache&&d.data(c,
 "cache.tabs",true);e._trigger("load",null,e._ui(e.anchors[b],e.panels[b]));try{a.ajaxOptions.success(k,n)}catch(m){}},error:function(k,n){e._cleanup();e._trigger("load",null,e._ui(e.anchors[b],e.panels[b]));try{a.ajaxOptions.error(k,n,b,c)}catch(m){}}}));e.element.dequeue("tabs");return this}},abort:function(){this.element.queue([]);this.panels.stop(false,true);this.element.queue("tabs",this.element.queue("tabs").splice(-2,2));if(this.xhr){this.xhr.abort();delete this.xhr}this._cleanup();return this},
-url:function(b,e){this.anchors.eq(b).removeData("cache.tabs").data("load.tabs",e);return this},length:function(){return this.anchors.length}});d.extend(d.ui.tabs,{version:"1.8.12"});d.extend(d.ui.tabs.prototype,{rotation:null,rotate:function(b,e){var a=this,c=this.options,h=a._rotate||(a._rotate=function(j){clearTimeout(a.rotation);a.rotation=setTimeout(function(){var k=c.selected;a.select(++k<a.anchors.length?k:0)},b);j&&j.stopPropagation()});e=a._unrotate||(a._unrotate=!e?function(j){j.clientX&&
+url:function(b,e){this.anchors.eq(b).removeData("cache.tabs").data("load.tabs",e);return this},length:function(){return this.anchors.length}});d.extend(d.ui.tabs,{version:"1.8.16"});d.extend(d.ui.tabs.prototype,{rotation:null,rotate:function(b,e){var a=this,c=this.options,h=a._rotate||(a._rotate=function(j){clearTimeout(a.rotation);a.rotation=setTimeout(function(){var k=c.selected;a.select(++k<a.anchors.length?k:0)},b);j&&j.stopPropagation()});e=a._unrotate||(a._unrotate=!e?function(j){j.clientX&&
 a.rotate(null)}:function(){t=c.selected;h()});if(b){this.element.bind("tabsshow",h);this.anchors.bind(c.event+".tabs",e);h()}else{clearTimeout(a.rotation);this.element.unbind("tabsshow",h);this.anchors.unbind(c.event+".tabs",e);delete this._rotate;delete this._unrotate}return this}})})(jQuery);
 a.rotate(null)}:function(){t=c.selected;h()});if(b){this.element.bind("tabsshow",h);this.anchors.bind(c.event+".tabs",e);h()}else{clearTimeout(a.rotation);this.element.unbind("tabsshow",h);this.anchors.unbind(c.event+".tabs",e);delete this._rotate;delete this._unrotate}return this}})})(jQuery);
diff --git a/wp-includes/js/jquery/ui/jquery.ui.widget.min.js b/wp-includes/js/jquery/ui/jquery.ui.widget.min.js
new file mode 100644 (file)
index 0000000..64893bb
--- /dev/null
@@ -0,0 +1,15 @@
+/*!
+ * jQuery UI Widget 1.8.16
+ *
+ * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about)
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * http://docs.jquery.com/UI/Widget
+ */
+(function(b,j){if(b.cleanData){var k=b.cleanData;b.cleanData=function(a){for(var c=0,d;(d=a[c])!=null;c++)try{b(d).triggerHandler("remove")}catch(e){}k(a)}}else{var l=b.fn.remove;b.fn.remove=function(a,c){return this.each(function(){if(!c)if(!a||b.filter(a,[this]).length)b("*",this).add([this]).each(function(){try{b(this).triggerHandler("remove")}catch(d){}});return l.call(b(this),a,c)})}}b.widget=function(a,c,d){var e=a.split(".")[0],f;a=a.split(".")[1];f=e+"-"+a;if(!d){d=c;c=b.Widget}b.expr[":"][f]=
+function(h){return!!b.data(h,a)};b[e]=b[e]||{};b[e][a]=function(h,g){arguments.length&&this._createWidget(h,g)};c=new c;c.options=b.extend(true,{},c.options);b[e][a].prototype=b.extend(true,c,{namespace:e,widgetName:a,widgetEventPrefix:b[e][a].prototype.widgetEventPrefix||a,widgetBaseClass:f},d);b.widget.bridge(a,b[e][a])};b.widget.bridge=function(a,c){b.fn[a]=function(d){var e=typeof d==="string",f=Array.prototype.slice.call(arguments,1),h=this;d=!e&&f.length?b.extend.apply(null,[true,d].concat(f)):
+d;if(e&&d.charAt(0)==="_")return h;e?this.each(function(){var g=b.data(this,a),i=g&&b.isFunction(g[d])?g[d].apply(g,f):g;if(i!==g&&i!==j){h=i;return false}}):this.each(function(){var g=b.data(this,a);g?g.option(d||{})._init():b.data(this,a,new c(d,this))});return h}};b.Widget=function(a,c){arguments.length&&this._createWidget(a,c)};b.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(a,c){b.data(c,this.widgetName,this);this.element=b(c);this.options=
+b.extend(true,{},this.options,this._getCreateOptions(),a);var d=this;this.element.bind("remove."+this.widgetName,function(){d.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return b.metadata&&b.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+
+"-disabled ui-state-disabled")},widget:function(){return this.element},option:function(a,c){var d=a;if(arguments.length===0)return b.extend({},this.options);if(typeof a==="string"){if(c===j)return this.options[a];d={};d[a]=c}this._setOptions(d);return this},_setOptions:function(a){var c=this;b.each(a,function(d,e){c._setOption(d,e)});return this},_setOption:function(a,c){this.options[a]=c;if(a==="disabled")this.widget()[c?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",
+c);return this},enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(a,c,d){var e=this.options[a];c=b.Event(c);c.type=(a===this.widgetEventPrefix?a:this.widgetEventPrefix+a).toLowerCase();d=d||{};if(c.originalEvent){a=b.event.props.length;for(var f;a;){f=b.event.props[--a];c[f]=c.originalEvent[f]}}this.element.trigger(c,d);return!(b.isFunction(e)&&e.call(this.element[0],c,d)===false||c.isDefaultPrevented())}}})(jQuery);
diff --git a/wp-includes/js/l10n.dev.js b/wp-includes/js/l10n.dev.js
deleted file mode 100644 (file)
index 96fca67..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-//Used to ensure that Entities used in L10N strings are correct
-function convertEntities(o) {
-       var c, v;
-       c = function(s) {
-               if (/&[^;]+;/.test(s)) {
-                       var e = document.createElement("div");
-                       e.innerHTML = s;
-                       return !e.firstChild ? s : e.firstChild.nodeValue;
-               }
-               return s;
-       }
-
-       if ( typeof o === 'string' ) {
-               return c(o);
-       } else if ( typeof o === 'object' ) {
-               for (v in o) {
-                       if ( typeof o[v] === 'string' ) {
-                               o[v] = c(o[v]);
-                       }
-               }
-       }
-       return o;
-}
\ No newline at end of file
diff --git a/wp-includes/js/l10n.js b/wp-includes/js/l10n.js
deleted file mode 100644 (file)
index db2e814..0000000
+++ /dev/null
@@ -1 +0,0 @@
-function convertEntities(b){var d,a;d=function(c){if(/&[^;]+;/.test(c)){var f=document.createElement("div");f.innerHTML=c;return !f.firstChild?c:f.firstChild.nodeValue}return c};if(typeof b==="string"){return d(b)}else{if(typeof b==="object"){for(a in b){if(typeof b[a]==="string"){b[a]=d(b[a])}}}}return b};
\ No newline at end of file
diff --git a/wp-includes/js/plupload/changelog.txt b/wp-includes/js/plupload/changelog.txt
new file mode 100644 (file)
index 0000000..bec5aee
--- /dev/null
@@ -0,0 +1,184 @@
+Version 1.5.1.1 (2011-09-27)
+       HTML5: Fix mechanical typo, that successfully broke drag and drop, wherever could.
+Version 1.5.1 (2011-09-26)
+       HTML4: Add support for server responses in HTML format.
+       HTML5: Disable multiple file selection in Safari 5.x for Windows (see #363).
+       HTML5: Gecko 2/5/6 should upload chunks as binary strings when in chunking mode and client side resize is requested.
+       Flash: Enforce URLStream mode when custom headers are passed.
+       Flash: Fix embedding problems in IE9 (and all other IEs).
+       Flash/Gears/BrowserPlus/SilverLight: Expose multi_selection feature, to be used in required_features (mainly to overcome Safari for Windows problem).
+       SilverLight: Properly handle custom and null headers.
+       UploadComplete moved to fire after the last StateChanged event.
+       Additional language packs: Finnish.
+Version 1.5b (2011-09-11)
+       UI Widget: Fix sortable logic.
+       UI Widget: Fix bug, when message was displayed simultaneously across all Plupload UI instances on the page.
+       UI Widget: notify() method is now public - users can throw their own messages into the widget header.
+       HTML4/HTML5: Revise input[type=file] placement logic to support cursor styling on Geko 2+.
+       HTML5: Revise Drag'n'Drop detection logic.
+       HTML5: Make Exif and GPS information available to user, introduce two new events: ExifData and GpsData.
+       HTML5: Add support for File.prototype.slice() method (mozSlice/webkitSlice) in order to be able to upload files in chunks without preloading.
+       HTML5: Remove any JPEG headers before restoring them, 'cause user agent (like Chrome), might be inserting it's own.
+       Flash: Remove a limit on the depth of image header check, since it still fails in some cases and performance gain is negligible.
+       Flash: Fix regression, when runtime hanged when not images where passed in as images.   
+       SilverLight: Fix bug, when JSON serializer was failing on null.
+       SilverLight: Remove cast to integer for chunk boundary, which resulted in a wrong size for last chunks on huge files.
+       SilverLight: Increase read buffer, add disposal of ImageStream and FileStream, optimize for performance.
+       Updated build.xml to include language packs in release package under js/ folder.
+       Gears/BrowserPlus: Add support for * file filter.
+       BeforeUpload now can cancel upload if required.
+       Additional MIME types: text/csv, image/photoshop, video/x-ms-wmv, video/avi, video/webm support
+       Additional language packs: Japanese
+       Cleaned examples.
+Version 1.4.3.2 (2011-04-13)
+       Fixed bug in HTML5 runtime, when was reduced by a factor of 100 after every upload.
+Version 1.4.3.1 (2011-04-12)
+       Fixed build script, mistakenly populating jquery.plupload.queue directory from jquery.ui.plupload sources.
+       Fixed script urls in all examples, build script now will alter them automatically from dev to release when needed.
+       Fixed isEmptyObj undefined error in HTML4 runtime.
+       Fixed bug in UI Widget preventing UploadComplete from triggering.
+Version 1.4.3 (2011-04-11)
+       Added Latvian language pack and updated French.
+       Fixed bug in Flash runtime when JPEG header was not investigated deep enough to reach SOFn marker in large images.
+       Fixed bug, when PNGs were cropped to width in Flash runtimes, rather then resized. 
+       Fixed Flash to allow multiple uploading of the same file, with different settings.
+       Fixed Flash runtime to clean anonymous listeners properly. 
+       Fixed HTML5 runtime to resolve to mimeType in case-insensitive way.
+       Fixed HTML5/Flash/SilverLight/Gears runtimes for inconsistency in naming of chunks feature, comparing to other runtimes.
+       Fixed HTML4/HTML5 runtimes for input[type=file] to outsize contaner effectively enough to fill the whole click area.
+       Fixed all runtimes to preserve position (relative/absolute) rule on containers that already have it.
+       Fixed SilverLight runtime to support large files (over 2GB).
+       Restructured the examples, src and build scripts to make it more clear that jQuery is optional.
+       Added support for *.* filter.
+       Added support for preserving ICC and IPTC headers when resizing JPEGs.
+       Added Image.onerror/onabort handlers to HTML5 in order to gracefully bypass faulty images.
+       Added ability to drop image size (by lowering quality), while preserving original dimension (HTML5/Flash/Gears).
+       Ported EXIF, ICC, IPTC preservation code to Flash runtime. 
+Version 1.4.2 (2011-02-20)
+       Added Brazilian Portuguese, German, Russian and Spanish translations.
+       Added support for file_data_name option to SilverLight runtime.
+       Added support for better quality image resizing to Flash runtime.
+       Added support for properly handling images with dimensions up to 8191x8191 pixels to Flash runtime.
+       Added 'updatelist' event to UI Widget, which will be triggered every time file list will get redrawn. 
+       Added support for dynamically changing options to UI Widget.
+       Fixed HTML4 runtime bug, when UploadFile handler was attached twice. 
+       Fixed HTML5 to use FileReader.readAsBinaryString() instead of File.getAsBinary() on newer WebKit browsers (like Chrome 9).
+       Fixed Flash runtime from sending duplicate Filename param, when using FileReference.upload(). 
+       Updated S3 example to illustrate support for a proper progress indication. 
+Version 1.4.1 (2011-02-01)
+       Added an example on how to use Plupload with Amazon S3 written in PHP but can easily be ported to other languages.
+       Fixed bug where hidden input elements wasn't created when the multiple_queues option wasn't used.
+       Fixed bug where FF4 would produce an exception about missing BlobBuilder.
+Version 1.4.0 (2011-01-26)
+       Added removeEvent and removeAllEvents methods and modified addEvent accordingly, in order to support dynamic unload.
+       Added unbindAll method.
+       Added UploadComplete event, which fires when internal iterator reaches the end of the queue.
+       Added public destroy method to plupload object, new event - Destroy, and corresponding handlers to all runtimes.
+       Added Czech, Italian, French, Dutch translations.
+       Added support for translatable error messages.
+       Added two new options: browse_button_hover and browse_button_active, in order to support browse_button interactivity.   
+       Added support for 'multi_selection: false' to Silverlight runtime.
+       Added support for video/mp4, video/x-m4v and audio/mp4 MIME Types. 
+       Added artificial sendAsBinary method to XMLHttpRequest.prototype for browsers that have support for BlobBuilder and typed arrays.
+       Added version tracking variable into plupload object and version comment to the header of every file.
+       Fixed measurements of browse_button element in order to size and position input[type=file] element to fit it fully.
+       Fixed Flash runtime behavior for multiple_select=false and other simpleUpload usage cases: basically new FileReference has to be created for every select dialog. 
+       Fixed browser sniffer to match only Safari, for fakeSafariDragDrop (seems like Safari on Mac doesn't require it either).
+       Fixed so that ExternalInterface escapes strings properly, before passing them to JS. 
+       Fixed eventual reinitialization of flash/silverlight runtimes, especially for cases when object wrapper needed to be programmatically hidden and then shown again.
+       Fixed so that Plupload will now ignore files with duplicate names when adding to the queue, in one set. Mainly introduced to work around Safari on Windows bug (https://bugs.webkit.org/show_bug.cgi?id=37957).
+       Fixed bug, when final UploadProgress was firing after FileUploaded for Flash simpleUpload. 
+       Fixed bug where upload would fail if an error was produced inside the FilesAdded event.
+       Fixed bug in Flash runtime when it used a wrong size when resizing, but not chunking.
+       Fixed bug in Silverlight runtime that would keep sending 0 byte packages when a picture was chunked before resized.
+       Disabled blur filter (is going to be replaced with some bilinear resampling in next release).
+       Completely revised UI Widget, to be more jQuery UI oriented. Optionally depends on UI Button, UI Sortable, UI ProgressBar.      
+Version 1.3.0 (2010-11-24)
+       Added new jQuery UI widget that supports jQuery UI themes.
+       Added new multiple_queues option that enables you to upload multiple times in the queue widgets.
+       Added support for crossdomain loading of the XAP and SWF files and crossdomain upload.
+       Added new multiple_queues option that enables you to upload multiple times in the queue widgets.
+       Added support for crossdomain loading of the XAP and SWF files and crossdomain upload.
+       Added preinit/init options to to ease up the binding of custom events to queueWidget and the Uploader class.
+       Added drag/drop support for Safari until they fix the broken drag/drop support on Windows.
+       Added events example file that show how to bind all events and display event specific data.
+       Added support for retaining Exif data on images when they where resized using the HTML5 runtime.
+       Fixed logic issue with the upload.php example file. Chunking wasn't working correctly.
+       Fixed issue with HTML4 not handling the form encoding correctly on older IE versions. Patch contributed by jinxdone.
+       Fixed so the HTML4 runtime only submits the defined multipart_params arguments.
+       Fixes issue where it wasn't possible to dynamically override url or mutlipart_params for the HTML4 runtime.
+       Fixed so all runtimes pass the name, chunk and chunks parameters as multipart parameters instead of querystring parameters.
+       Fixed so files are read using the newer FileReader class if it's available if not it tries the older getAsXXX on Gecko.
+       Fixed bug where IE 9 beta 1 wouldn't render Silverlight properly.
+       Fixed bug where Flash would do extra empty requests if images below a specific size would be uploaded.
+       Fixed bug where Google Gears would resize and re-encode images even if the it wasn't changed in scale.
+       Fixed bug where the HTML5 runtime wouldn't free memory after each request on Gecko.
+Version 1.2.4 (2010-09-08)
+       Added new BeforeUpload event to make it easier to override settings before a file is uploaded.
+       Added new automatic usage of FileReference in Flash if it's possible. Contributed by Marcel Jackwerth.
+       Added new chunking support for Chrome 5 and Firefox 3.6 using the HTML 5 runtime.
+       Added new multipart upload support for WebKit using the HTML 5 runtime and the FormData object.
+       Added new image scaling method for the Flash runtime contributed by rcoopman.
+       Added new alert error message if the user selected invalid files.
+       Added new automatic unique name generation to the example.php script. Contributed by Brandon Kelly.
+       Changed so the default upload method is multipart and the default chunk size is 0.
+       Fixed progress issue with the HTML5 runtime running on Gecko.
+       Fixed so longer extensions can be used such as .tar.gz.
+       Fixed so the file extension is retained when using the unique_names option.
+Version 1.2.3 (2010-05-27)
+       Added new drag/drop support for HTML5 running on Chrome beta.
+       Added new multipart state for the features object. It's now possible to detect multipart support.
+       Added new getFeatures function to all runtime. Basic concept by Javier Martinez Fernandez.
+       Fixed bug where runtimes where initialized even if they didn't match the required_features setting.
+Version 1.2.2.1 (2010-05-04)
+       Added new headers option, enables you to set custom headers for the upload requests.
+       Fixed bug where the file extension checking was case sensitive.
+Version 1.2.2 (2010-04-26)
+       Added new file_data_name option that enables you to set the multipart file data param. Patch contributed by Alex Ganov.
+       Added new FILE_SIZE_ERROR type that will be triggered if the user selected a file that is to large or zero bytes.
+       Added new FILE_EXTENSION_ERROR type that will be triggered if you add a file with an invalid file extension.
+       Added new required_features setting, enables you to specify a list of required features that the runtime must have.
+       Fixed so the plupload.buildUrl function uses the UTF compatible encodeURIComponent method instead of escape.
+       Fixed so that all file types can be selected if you don't specify a filter setting.
+       Fixed so more valid HTTP status codes are accepted as valid responses.
+       Fixed so all runtimes fills the features object with available features.
+       Fixed some issues with the HTML4 runtime if there wasn't any existing forms on the page.
+       Fixed some conflict issues with HTML4 runtime and forms with the input names of action or target.
+       Fixed bug where some Gecko versions would produce exceptions when checking the HTTP status of a XHR.
+Version 1.2.1 (2010-03-22)
+       Fixed bug with incorrect aspect ratio in Flash image scaling.
+       Fixed bug where chunked uploads could get scrambled in the Flash runtime. Patch contributed by Grady Werner.
+       Fixed bug where a beta version of Chrome wouldn't handle drag/drop correctly because of missing drag effect.
+       Fixed so the HTML 4 runtime displays N/A for file sizes and the progress is based on uploaded files instead of bytes.
+       Fixed so chunking can be disabled properly in Flash but that will affect the progress bar.
+       Fixed so queue widget displays the drag/drop message if file queue is emptied.
+       Fixed small files are uploaded as one single chunk and not forced into 4 chunks in the Flash runtime.
+Version 1.2 (2010-03-09)
+       Added new rename file support for jQuery queue widget, click on a file name to rename it if it's enabled.
+       Added official ChunkUploaded event, it similar to FileUploaded but executed for each chunk.
+       Added bytes per second support to total queue progress.
+       Added better error handling to core API using the new Error event.
+       Added better error handling to jQuery queue widget.
+       Fixed so chunking uploads is dispatch from JS not from inside Flash/Silverlight.
+Version 1.1.1 (2010-02-25)
+       Added new setup setting to queue widget. Makes it easier to bind custom events to uploader instance.
+       Fixed so it's possible to disable chunking compleatly. It's now disabled by default.
+       Fixed bug where multipart mode was enabled all the time in the Flash runtime.
+       Fixed bug where chunked uploading in Silverlight would fail.
+       Fixed bug where the delete button was visible while uploading.
+       Fixed bug where unique_names setting wasn't working when the core API was used.
+       Fixed bug where the queue widget wouldn't display the currently uploaded file if the unique_names was enabled.
+Version 1.1 (2010-02-24)
+       Added new multipart and multipart_params support.
+       Added new container option, enables you to specify where flash/silverlight objects would be added.
+       Added chunking support to BrowserPlus runtime, contributed by Steve Spencer.
+       Added FileUploaded event that fires when a file is uploaded.
+       Added more easily understandable buttons to queue widget.
+       Added html4 runtime, contributed by Ryan Demmer.
+       Fixed issues with i18n support and added a Swedish and Danish language pack.
+       Fixed bug where the Flash runtime could do empty requests if the image was scaled down.
+       Fixed bug where uploading small images in Silverlight would produce an exception.
+       Fixed so the runtime list can include whitespace or missing runtimes. Patch contributed by Ã˜yvind Sean Kinsey.
+       Fixed so to large files are ignored and never dispatched to the FilesAdded event.
+Version 1.0 (2010-02-03)
+       First official release of Plupload.
diff --git a/wp-includes/js/plupload/handlers.dev.js b/wp-includes/js/plupload/handlers.dev.js
new file mode 100644 (file)
index 0000000..d0f8708
--- /dev/null
@@ -0,0 +1,479 @@
+var topWin = window.dialogArguments || opener || parent || top, uploader, uploader_init;
+
+function fileDialogStart() {
+       jQuery("#media-upload-error").empty();
+}
+
+// progress and success handlers for media multi uploads
+function fileQueued(fileObj) {
+       // Get rid of unused form
+       jQuery('.media-blank').remove();
+
+       var items = jQuery('#media-items').children(), postid = post_id || 0;
+
+       // Collapse a single item
+       if ( items.length == 1 ) {
+               items.removeClass('open').find('.slidetoggle').slideUp(200);
+       }
+       // Create a progress bar containing the filename
+       jQuery('#media-items').append('<div id="media-item-' + fileObj.id + '" class="media-item child-of-' + postid + '"><div class="progress"><div class="percent">0%</div><div class="bar"></div></div><div class="filename original"> ' + fileObj.name + '</div></div>');
+
+       // Disable submit
+       jQuery('#insert-gallery').prop('disabled', true);
+}
+
+function uploadStart() {
+       try {
+               if ( typeof topWin.tb_remove != 'undefined' )
+                       topWin.jQuery('#TB_overlay').unbind('click', topWin.tb_remove);
+       } catch(e){}
+
+       return true;
+}
+
+function uploadProgress(up, file) {
+       var item = jQuery('#media-item-' + file.id);
+
+       jQuery('.bar', item).width( (200 * file.loaded) / file.size );
+       jQuery('.percent', item).html( file.percent + '%' );
+}
+
+// check to see if a large file failed to upload
+function fileUploading(up, file) {
+       var hundredmb = 100 * 1024 * 1024, max = parseInt(up.settings.max_file_size, 10);
+
+       if ( max > hundredmb && file.size > hundredmb ) {
+               setTimeout(function(){
+                       if ( file.status == 2 && file.loaded == 0 ) { // not uploading
+                               wpFileError(file, pluploadL10n.big_upload_failed.replace('%1$s', '<a class="uploader-html" href="#">').replace('%2$s', '</a>'));
+
+                               if ( up.current && up.current.file.id == file.id && up.current.xhr.abort )
+                                       up.current.xhr.abort();
+                       }
+               }, 10000); // wait for 10 sec. for the file to start uploading
+       }
+}
+
+function updateMediaForm() {
+       var items = jQuery('#media-items').children();
+
+       // Just one file, no need for collapsible part
+       if ( items.length == 1 ) {
+               items.addClass('open').find('.slidetoggle').show();
+               jQuery('.insert-gallery').hide();
+       } else if ( items.length > 1 ) {
+               items.removeClass('open');
+               // Only show Gallery button when there are at least two files.
+               jQuery('.insert-gallery').show();
+       }
+
+       // Only show Save buttons when there is at least one file.
+       if ( items.not('.media-blank').length > 0 )
+               jQuery('.savebutton').show();
+       else
+               jQuery('.savebutton').hide();
+}
+
+function uploadSuccess(fileObj, serverData) {
+       var item = jQuery('#media-item-' + fileObj.id);
+
+       // on success serverData should be numeric, fix bug in html4 runtime returning the serverData wrapped in a <pre> tag
+       serverData = serverData.replace(/^<pre>(\d+)<\/pre>$/, '$1');
+
+       // if async-upload returned an error message, place it in the media item div and return
+       if ( serverData.match('media-upload-error') ) {
+               item.html(serverData);
+               return;
+       } else {
+               jQuery('.percent', item).html( pluploadL10n.crunching );
+       }
+
+       prepareMediaItem(fileObj, serverData);
+       updateMediaForm();
+
+       // Increment the counter.
+       if ( post_id && item.hasClass('child-of-' + post_id) )
+               jQuery('#attachments-count').text(1 * jQuery('#attachments-count').text() + 1);
+}
+
+function setResize(arg) {
+       if ( arg ) {
+               if ( uploader.features.jpgresize )
+                       uploader.settings['resize'] = { width: resize_width, height: resize_height, quality: 100 };
+               else
+                       uploader.settings.multipart_params.image_resize = true;
+       } else {
+               delete(uploader.settings.resize);
+               delete(uploader.settings.multipart_params.image_resize);
+       }
+}
+
+function prepareMediaItem(fileObj, serverData) {
+       var f = ( typeof shortform == 'undefined' ) ? 1 : 2, item = jQuery('#media-item-' + fileObj.id);
+
+       try {
+               if ( typeof topWin.tb_remove != 'undefined' )
+                       topWin.jQuery('#TB_overlay').click(topWin.tb_remove);
+       } catch(e){}
+
+       if ( isNaN(serverData) || !serverData ) { // Old style: Append the HTML returned by the server -- thumbnail and form inputs
+               item.append(serverData);
+               prepareMediaItemInit(fileObj);
+       } else { // New style: server data is just the attachment ID, fetch the thumbnail and form html from the server
+               item.load('async-upload.php', {attachment_id:serverData, fetch:f}, function(){prepareMediaItemInit(fileObj);updateMediaForm()});
+       }
+}
+
+function prepareMediaItemInit(fileObj) {
+       var item = jQuery('#media-item-' + fileObj.id);
+       // Clone the thumbnail as a "pinkynail" -- a tiny image to the left of the filename
+       jQuery('.thumbnail', item).clone().attr('class', 'pinkynail toggle').prependTo(item);
+
+       // Replace the original filename with the new (unique) one assigned during upload
+       jQuery('.filename.original', item).replaceWith( jQuery('.filename.new', item) );
+
+       // Bind AJAX to the new Delete button
+       jQuery('a.delete', item).click(function(){
+               // Tell the server to delete it. TODO: handle exceptions
+               jQuery.ajax({
+                       url: 'admin-ajax.php',
+                       type: 'post',
+                       success: deleteSuccess,
+                       error: deleteError,
+                       id: fileObj.id,
+                       data: {
+                               id : this.id.replace(/[^0-9]/g, ''),
+                               action : 'trash-post',
+                               _ajax_nonce : this.href.replace(/^.*wpnonce=/,'')
+                       }
+               });
+               return false;
+       });
+
+       // Bind AJAX to the new Undo button
+       jQuery('a.undo', item).click(function(){
+               // Tell the server to untrash it. TODO: handle exceptions
+               jQuery.ajax({
+                       url: 'admin-ajax.php',
+                       type: 'post',
+                       id: fileObj.id,
+                       data: {
+                               id : this.id.replace(/[^0-9]/g,''),
+                               action: 'untrash-post',
+                               _ajax_nonce: this.href.replace(/^.*wpnonce=/,'')
+                       },
+                       success: function(data, textStatus){
+                               var item = jQuery('#media-item-' + fileObj.id);
+
+                               if ( type = jQuery('#type-of-' + fileObj.id).val() )
+                                       jQuery('#' + type + '-counter').text(jQuery('#' + type + '-counter').text()-0+1);
+
+                               if ( post_id && item.hasClass('child-of-'+post_id) )
+                                       jQuery('#attachments-count').text(jQuery('#attachments-count').text()-0+1);
+
+                               jQuery('.filename .trashnotice', item).remove();
+                               jQuery('.filename .title', item).css('font-weight','normal');
+                               jQuery('a.undo', item).addClass('hidden');
+                               jQuery('.menu_order_input', item).show();
+                               item.css( {backgroundColor:'#ceb'} ).animate( {backgroundColor: '#fff'}, { queue: false, duration: 500, complete: function(){ jQuery(this).css({backgroundColor:''}); } }).removeClass('undo');
+                       }
+               });
+               return false;
+       });
+
+       // Open this item if it says to start open (e.g. to display an error)
+       jQuery('#media-item-' + fileObj.id + '.startopen').removeClass('startopen').addClass('open').find('slidetoggle').fadeIn();
+}
+
+// generic error message
+function wpQueueError(message) {
+       jQuery('#media-upload-error').show().html( '<div class="error"><p>' + message + '</p></div>' );
+}
+
+// file-specific error messages
+function wpFileError(fileObj, message) {
+       itemAjaxError(fileObj.id, message);
+}
+
+function itemAjaxError(id, message) {
+       var item = jQuery('#media-item-' + id), filename = item.find('.filename').text(), last_err = item.data('last-err');
+
+       if ( last_err == id ) // prevent firing an error for the same file twice
+               return;
+
+       item.html('<div class="error-div">'
+                               + '<a class="dismiss" href="#">' + pluploadL10n.dismiss + '</a>'
+                               + '<strong>' + pluploadL10n.error_uploading.replace('%s', jQuery.trim(filename)) + '</strong> '
+                               + message
+                               + '</div>').data('last-err', id);
+}
+
+function deleteSuccess(data, textStatus) {
+       if ( data == '-1' )
+               return itemAjaxError(this.id, 'You do not have permission. Has your session expired?');
+
+       if ( data == '0' )
+               return itemAjaxError(this.id, 'Could not be deleted. Has it been deleted already?');
+
+       var id = this.id, item = jQuery('#media-item-' + id);
+
+       // Decrement the counters.
+       if ( type = jQuery('#type-of-' + id).val() )
+               jQuery('#' + type + '-counter').text( jQuery('#' + type + '-counter').text() - 1 );
+
+       if ( post_id && item.hasClass('child-of-'+post_id) )
+               jQuery('#attachments-count').text( jQuery('#attachments-count').text() - 1 );
+
+       if ( jQuery('form.type-form #media-items').children().length == 1 && jQuery('.hidden', '#media-items').length > 0 ) {
+               jQuery('.toggle').toggle();
+               jQuery('.slidetoggle').slideUp(200).siblings().removeClass('hidden');
+       }
+
+       // Vanish it.
+       jQuery('.toggle', item).toggle();
+       jQuery('.slidetoggle', item).slideUp(200).siblings().removeClass('hidden');
+       item.css( {backgroundColor:'#faa'} ).animate( {backgroundColor:'#f4f4f4'}, {queue:false, duration:500} ).addClass('undo');
+
+       jQuery('.filename:empty', item).remove();
+       jQuery('.filename .title', item).css('font-weight','bold');
+       jQuery('.filename', item).append('<span class="trashnotice"> ' + pluploadL10n.deleted + ' </span>').siblings('a.toggle').hide();
+       jQuery('.filename', item).append( jQuery('a.undo', item).removeClass('hidden') );
+       jQuery('.menu_order_input', item).hide();
+
+       return;
+}
+
+function deleteError(X, textStatus, errorThrown) {
+       // TODO
+}
+
+function uploadComplete() {
+       jQuery('#insert-gallery').prop('disabled', false);
+}
+
+function switchUploader(s) {
+       if ( s ) {
+               deleteUserSetting('uploader');
+               jQuery('.media-upload-form').removeClass('html-uploader');
+
+               if ( typeof(uploader) == 'object' )
+                       uploader.refresh();
+       } else {
+               setUserSetting('uploader', '1'); // 1 == html uploader
+               jQuery('.media-upload-form').addClass('html-uploader');
+       }
+}
+
+function dndHelper(s) {
+       var d = document.getElementById('dnd-helper');
+
+       if ( s ) {
+               d.style.display = 'block';
+       } else {
+               d.style.display = 'none';
+       }
+}
+
+function uploadError(fileObj, errorCode, message, uploader) {
+       var hundredmb = 100 * 1024 * 1024, max;
+
+       switch (errorCode) {
+               case plupload.FAILED:
+                       wpFileError(fileObj, pluploadL10n.upload_failed);
+                       break;
+               case plupload.FILE_EXTENSION_ERROR:
+                       wpFileError(fileObj, pluploadL10n.invalid_filetype);
+                       break;
+               case plupload.FILE_SIZE_ERROR:
+                       uploadSizeError(uploader, fileObj);
+                       break;
+               case plupload.IMAGE_FORMAT_ERROR:
+                       wpFileError(fileObj, pluploadL10n.not_an_image);
+                       break;
+               case plupload.IMAGE_MEMORY_ERROR:
+                       wpFileError(fileObj, pluploadL10n.image_memory_exceeded);
+                       break;
+               case plupload.IMAGE_DIMENSIONS_ERROR:
+                       wpFileError(fileObj, pluploadL10n.image_dimensions_exceeded);
+                       break;
+               case plupload.GENERIC_ERROR:
+                       wpQueueError(pluploadL10n.upload_failed);
+                       break;
+               case plupload.IO_ERROR:
+                       max = parseInt(uploader.settings.max_file_size, 10);
+
+                       if ( max > hundredmb && fileObj.size > hundredmb )
+                               wpFileError(fileObj, pluploadL10n.big_upload_failed.replace('%1$s', '<a class="uploader-html" href="#">').replace('%2$s', '</a>'));
+                       else
+                               wpQueueError(pluploadL10n.io_error);
+                       break;
+               case plupload.HTTP_ERROR:
+                       wpQueueError(pluploadL10n.http_error);
+                       break;
+               case plupload.INIT_ERROR:
+                       jQuery('.media-upload-form').addClass('html-uploader');
+                       break;
+               case plupload.SECURITY_ERROR:
+                       wpQueueError(pluploadL10n.security_error);
+                       break;
+/*             case plupload.UPLOAD_ERROR.UPLOAD_STOPPED:
+               case plupload.UPLOAD_ERROR.FILE_CANCELLED:
+                       jQuery('#media-item-' + fileObj.id).remove();
+                       break;*/
+               default:
+                       wpFileError(fileObj, pluploadL10n.default_error);
+       }
+}
+
+function uploadSizeError( up, file, over100mb ) {
+       var message;
+
+       if ( over100mb )
+               message = pluploadL10n.big_upload_queued.replace('%s', file.name) + ' ' + pluploadL10n.big_upload_failed.replace('%1$s', '<a class="uploader-html" href="#">').replace('%2$s', '</a>');
+       else
+               message = pluploadL10n.file_exceeds_size_limit.replace('%s', file.name);
+
+       jQuery('#media-items').append('<div id="media-item-' + file.id + '" class="media-item error"><p>' + message + '</p></div>');
+       up.removeFile(file);
+}
+
+jQuery(document).ready(function($){
+       $('.media-upload-form').bind('click.uploader', function(e) {
+               var target = $(e.target), tr, c;
+
+               if ( target.is('input[type="radio"]') ) { // remember the last used image size and alignment
+                       tr = target.closest('tr');
+
+                       if ( $(tr).hasClass('align') )
+                               setUserSetting('align', target.val());
+                       else if ( $(tr).hasClass('image-size') )
+                               setUserSetting('imgsize', target.val());
+
+               } else if ( target.is('button.button') ) { // remember the last used image link url
+                       c = e.target.className || '';
+                       c = c.match(/url([^ '"]+)/);
+
+                       if ( c && c[1] ) {
+                               setUserSetting('urlbutton', c[1]);
+                               target.siblings('.urlfield').val( target.attr('title') );
+                       }
+               } else if ( target.is('a.dismiss') ) {
+                       target.parents('.media-item').fadeOut(200, function(){
+                               $(this).remove();
+                       });
+               } else if ( target.is('.upload-flash-bypass a') || target.is('a.uploader-html') ) { // switch uploader to html4
+                       $('#media-items, p.submit, span.big-file-warning').css('display', 'none');
+                       switchUploader(0);
+                       return false;
+               } else if ( target.is('.upload-html-bypass a') ) { // switch uploader to multi-file
+                       $('#media-items, p.submit, span.big-file-warning').css('display', '');
+                       switchUploader(1);
+                       return false;
+               } else if ( target.is('a.describe-toggle-on') ) { // Show
+                       target.parent().addClass('open');
+                       target.siblings('.slidetoggle').fadeIn(250, function(){
+                               var S = $(window).scrollTop(), H = $(window).height(), top = $(this).offset().top, h = $(this).height(), b, B;
+
+                               if ( H && top && h ) {
+                                       b = top + h;
+                                       B = S + H;
+
+                                       if ( b > B ) {
+                                               if ( b - B < top - S )
+                                                       window.scrollBy(0, (b - B) + 10);
+                                               else
+                                                       window.scrollBy(0, top - S - 40);
+                                       }
+                               }
+                       });
+                       return false;
+               } else if ( target.is('a.describe-toggle-off') ) { // Hide
+                       target.siblings('.slidetoggle').fadeOut(250, function(){
+                               target.parent().removeClass('open');
+                       });
+                       return false;
+               }
+       });
+
+       // init and set the uploader
+       uploader_init = function() {
+               uploader = new plupload.Uploader(wpUploaderInit);
+
+               $('#image_resize').bind('change', function() {
+                       var arg = $(this).prop('checked');
+
+                       setResize( arg );
+
+                       if ( arg )
+                               setUserSetting('upload_resize', '1');
+                       else
+                               deleteUserSetting('upload_resize');
+               });
+
+               uploader.bind('Init', function(up) {
+                       var uploaddiv = $('#plupload-upload-ui');
+
+                       setResize( getUserSetting('upload_resize', false) );
+
+                       if ( up.features.dragdrop ) {
+                               uploaddiv.addClass('drag-drop');
+                               $('#drag-drop-area').bind('dragover.wp-uploader', function(){ // dragenter doesn't fire right :(
+                                       uploaddiv.addClass('drag-over');
+                               }).bind('dragleave.wp-uploader, drop.wp-uploader', function(){
+                                       uploaddiv.removeClass('drag-over');
+                               });
+                       } else {
+                               uploaddiv.removeClass('drag-drop');
+                               $('#drag-drop-area').unbind('.wp-uploader');
+                       }
+               });
+
+               uploader.init();
+
+               uploader.bind('FilesAdded', function(up, files) {
+                       var hundredmb = 100 * 1024 * 1024, max = parseInt(up.settings.max_file_size, 10);
+
+                       $('#media-upload-error').html('');
+                       uploadStart();
+
+                       plupload.each(files, function(file){
+                               if ( max > hundredmb && file.size > hundredmb && up.runtime != 'html5' )
+                                       uploadSizeError( up, file, true );
+                               else
+                                       fileQueued(file);
+                       });
+
+                       up.refresh();
+                       up.start();
+               });
+
+               uploader.bind('BeforeUpload', function(up, file) {
+                       // something
+               });
+
+               uploader.bind('UploadFile', function(up, file) {
+                       fileUploading(up, file);
+               });
+
+               uploader.bind('UploadProgress', function(up, file) {
+                       uploadProgress(up, file);
+               });
+
+               uploader.bind('Error', function(up, err) {
+                       uploadError(err.file, err.code, err.message, up);
+                       up.refresh();
+               });
+
+               uploader.bind('FileUploaded', function(up, file, response) {
+                       uploadSuccess(file, response.response);
+               });
+
+               uploader.bind('UploadComplete', function(up, files) {
+                       uploadComplete();
+               });
+       }
+
+       if ( typeof(wpUploaderInit) == 'object' )
+               uploader_init();
+
+});
diff --git a/wp-includes/js/plupload/handlers.js b/wp-includes/js/plupload/handlers.js
new file mode 100644 (file)
index 0000000..96076a2
--- /dev/null
@@ -0,0 +1 @@
+var topWin=window.dialogArguments||opener||parent||top,uploader,uploader_init;function fileDialogStart(){jQuery("#media-upload-error").empty()}function fileQueued(b){jQuery(".media-blank").remove();var a=jQuery("#media-items").children(),c=post_id||0;if(a.length==1){a.removeClass("open").find(".slidetoggle").slideUp(200)}jQuery("#media-items").append('<div id="media-item-'+b.id+'" class="media-item child-of-'+c+'"><div class="progress"><div class="percent">0%</div><div class="bar"></div></div><div class="filename original"> '+b.name+"</div></div>");jQuery("#insert-gallery").prop("disabled",true)}function uploadStart(){try{if(typeof topWin.tb_remove!="undefined"){topWin.jQuery("#TB_overlay").unbind("click",topWin.tb_remove)}}catch(a){}return true}function uploadProgress(a,b){var c=jQuery("#media-item-"+b.id);jQuery(".bar",c).width((200*b.loaded)/b.size);jQuery(".percent",c).html(b.percent+"%")}function fileUploading(c,d){var b=100*1024*1024,a=parseInt(c.settings.max_file_size,10);if(a>b&&d.size>b){setTimeout(function(){if(d.status==2&&d.loaded==0){wpFileError(d,pluploadL10n.big_upload_failed.replace("%1$s",'<a class="uploader-html" href="#">').replace("%2$s","</a>"));if(c.current&&c.current.file.id==d.id&&c.current.xhr.abort){c.current.xhr.abort()}}},10000)}}function updateMediaForm(){var a=jQuery("#media-items").children();if(a.length==1){a.addClass("open").find(".slidetoggle").show();jQuery(".insert-gallery").hide()}else{if(a.length>1){a.removeClass("open");jQuery(".insert-gallery").show()}}if(a.not(".media-blank").length>0){jQuery(".savebutton").show()}else{jQuery(".savebutton").hide()}}function uploadSuccess(c,a){var b=jQuery("#media-item-"+c.id);a=a.replace(/^<pre>(\d+)<\/pre>$/,"$1");if(a.match("media-upload-error")){b.html(a);return}else{jQuery(".percent",b).html(pluploadL10n.crunching)}prepareMediaItem(c,a);updateMediaForm();if(post_id&&b.hasClass("child-of-"+post_id)){jQuery("#attachments-count").text(1*jQuery("#attachments-count").text()+1)}}function setResize(a){if(a){if(uploader.features.jpgresize){uploader.settings.resize={width:resize_width,height:resize_height,quality:100}}else{uploader.settings.multipart_params.image_resize=true}}else{delete (uploader.settings.resize);delete (uploader.settings.multipart_params.image_resize)}}function prepareMediaItem(c,a){var d=(typeof shortform=="undefined")?1:2,b=jQuery("#media-item-"+c.id);try{if(typeof topWin.tb_remove!="undefined"){topWin.jQuery("#TB_overlay").click(topWin.tb_remove)}}catch(g){}if(isNaN(a)||!a){b.append(a);prepareMediaItemInit(c)}else{b.load("async-upload.php",{attachment_id:a,fetch:d},function(){prepareMediaItemInit(c);updateMediaForm()})}}function prepareMediaItemInit(b){var a=jQuery("#media-item-"+b.id);jQuery(".thumbnail",a).clone().attr("class","pinkynail toggle").prependTo(a);jQuery(".filename.original",a).replaceWith(jQuery(".filename.new",a));jQuery("a.delete",a).click(function(){jQuery.ajax({url:"admin-ajax.php",type:"post",success:deleteSuccess,error:deleteError,id:b.id,data:{id:this.id.replace(/[^0-9]/g,""),action:"trash-post",_ajax_nonce:this.href.replace(/^.*wpnonce=/,"")}});return false});jQuery("a.undo",a).click(function(){jQuery.ajax({url:"admin-ajax.php",type:"post",id:b.id,data:{id:this.id.replace(/[^0-9]/g,""),action:"untrash-post",_ajax_nonce:this.href.replace(/^.*wpnonce=/,"")},success:function(d,e){var c=jQuery("#media-item-"+b.id);if(type=jQuery("#type-of-"+b.id).val()){jQuery("#"+type+"-counter").text(jQuery("#"+type+"-counter").text()-0+1)}if(post_id&&c.hasClass("child-of-"+post_id)){jQuery("#attachments-count").text(jQuery("#attachments-count").text()-0+1)}jQuery(".filename .trashnotice",c).remove();jQuery(".filename .title",c).css("font-weight","normal");jQuery("a.undo",c).addClass("hidden");jQuery(".menu_order_input",c).show();c.css({backgroundColor:"#ceb"}).animate({backgroundColor:"#fff"},{queue:false,duration:500,complete:function(){jQuery(this).css({backgroundColor:""})}}).removeClass("undo")}});return false});jQuery("#media-item-"+b.id+".startopen").removeClass("startopen").addClass("open").find("slidetoggle").fadeIn()}function wpQueueError(a){jQuery("#media-upload-error").show().html('<div class="error"><p>'+a+"</p></div>")}function wpFileError(b,a){itemAjaxError(b.id,a)}function itemAjaxError(e,c){var b=jQuery("#media-item-"+e),a=b.find(".filename").text(),d=b.data("last-err");if(d==e){return}b.html('<div class="error-div"><a class="dismiss" href="#">'+pluploadL10n.dismiss+"</a><strong>"+pluploadL10n.error_uploading.replace("%s",jQuery.trim(a))+"</strong> "+c+"</div>").data("last-err",e)}function deleteSuccess(b,d){if(b=="-1"){return itemAjaxError(this.id,"You do not have permission. Has your session expired?")}if(b=="0"){return itemAjaxError(this.id,"Could not be deleted. Has it been deleted already?")}var c=this.id,a=jQuery("#media-item-"+c);if(type=jQuery("#type-of-"+c).val()){jQuery("#"+type+"-counter").text(jQuery("#"+type+"-counter").text()-1)}if(post_id&&a.hasClass("child-of-"+post_id)){jQuery("#attachments-count").text(jQuery("#attachments-count").text()-1)}if(jQuery("form.type-form #media-items").children().length==1&&jQuery(".hidden","#media-items").length>0){jQuery(".toggle").toggle();jQuery(".slidetoggle").slideUp(200).siblings().removeClass("hidden")}jQuery(".toggle",a).toggle();jQuery(".slidetoggle",a).slideUp(200).siblings().removeClass("hidden");a.css({backgroundColor:"#faa"}).animate({backgroundColor:"#f4f4f4"},{queue:false,duration:500}).addClass("undo");jQuery(".filename:empty",a).remove();jQuery(".filename .title",a).css("font-weight","bold");jQuery(".filename",a).append('<span class="trashnotice"> '+pluploadL10n.deleted+" </span>").siblings("a.toggle").hide();jQuery(".filename",a).append(jQuery("a.undo",a).removeClass("hidden"));jQuery(".menu_order_input",a).hide();return}function deleteError(c,b,a){}function uploadComplete(){jQuery("#insert-gallery").prop("disabled",false)}function switchUploader(a){if(a){deleteUserSetting("uploader");jQuery(".media-upload-form").removeClass("html-uploader");if(typeof(uploader)=="object"){uploader.refresh()}}else{setUserSetting("uploader","1");jQuery(".media-upload-form").addClass("html-uploader")}}function dndHelper(a){var b=document.getElementById("dnd-helper");if(a){b.style.display="block"}else{b.style.display="none"}}function uploadError(d,f,c,e){var b=100*1024*1024,a;switch(f){case plupload.FAILED:wpFileError(d,pluploadL10n.upload_failed);break;case plupload.FILE_EXTENSION_ERROR:wpFileError(d,pluploadL10n.invalid_filetype);break;case plupload.FILE_SIZE_ERROR:uploadSizeError(e,d);break;case plupload.IMAGE_FORMAT_ERROR:wpFileError(d,pluploadL10n.not_an_image);break;case plupload.IMAGE_MEMORY_ERROR:wpFileError(d,pluploadL10n.image_memory_exceeded);break;case plupload.IMAGE_DIMENSIONS_ERROR:wpFileError(d,pluploadL10n.image_dimensions_exceeded);break;case plupload.GENERIC_ERROR:wpQueueError(pluploadL10n.upload_failed);break;case plupload.IO_ERROR:a=parseInt(e.settings.max_file_size,10);if(a>b&&d.size>b){wpFileError(d,pluploadL10n.big_upload_failed.replace("%1$s",'<a class="uploader-html" href="#">').replace("%2$s","</a>"))}else{wpQueueError(pluploadL10n.io_error)}break;case plupload.HTTP_ERROR:wpQueueError(pluploadL10n.http_error);break;case plupload.INIT_ERROR:jQuery(".media-upload-form").addClass("html-uploader");break;case plupload.SECURITY_ERROR:wpQueueError(pluploadL10n.security_error);break;default:wpFileError(d,pluploadL10n.default_error)}}function uploadSizeError(a,b,d){var c;if(d){c=pluploadL10n.big_upload_queued.replace("%s",b.name)+" "+pluploadL10n.big_upload_failed.replace("%1$s",'<a class="uploader-html" href="#">').replace("%2$s","</a>")}else{c=pluploadL10n.file_exceeds_size_limit.replace("%s",b.name)}jQuery("#media-items").append('<div id="media-item-'+b.id+'" class="media-item error"><p>'+c+"</p></div>");a.removeFile(b)}jQuery(document).ready(function(a){a(".media-upload-form").bind("click.uploader",function(f){var d=a(f.target),b,g;if(d.is('input[type="radio"]')){b=d.closest("tr");if(a(b).hasClass("align")){setUserSetting("align",d.val())}else{if(a(b).hasClass("image-size")){setUserSetting("imgsize",d.val())}}}else{if(d.is("button.button")){g=f.target.className||"";g=g.match(/url([^ '"]+)/);if(g&&g[1]){setUserSetting("urlbutton",g[1]);d.siblings(".urlfield").val(d.attr("title"))}}else{if(d.is("a.dismiss")){d.parents(".media-item").fadeOut(200,function(){a(this).remove()})}else{if(d.is(".upload-flash-bypass a")||d.is("a.uploader-html")){a("#media-items, p.submit, span.big-file-warning").css("display","none");switchUploader(0);return false}else{if(d.is(".upload-html-bypass a")){a("#media-items, p.submit, span.big-file-warning").css("display","");switchUploader(1);return false}else{if(d.is("a.describe-toggle-on")){d.parent().addClass("open");d.siblings(".slidetoggle").fadeIn(250,function(){var i=a(window).scrollTop(),e=a(window).height(),k=a(this).offset().top,j=a(this).height(),c,l;if(e&&k&&j){c=k+j;l=i+e;if(c>l){if(c-l<k-i){window.scrollBy(0,(c-l)+10)}else{window.scrollBy(0,k-i-40)}}}});return false}else{if(d.is("a.describe-toggle-off")){d.siblings(".slidetoggle").fadeOut(250,function(){d.parent().removeClass("open")});return false}}}}}}}});uploader_init=function(){uploader=new plupload.Uploader(wpUploaderInit);a("#image_resize").bind("change",function(){var b=a(this).prop("checked");setResize(b);if(b){setUserSetting("upload_resize","1")}else{deleteUserSetting("upload_resize")}});uploader.bind("Init",function(b){var c=a("#plupload-upload-ui");setResize(getUserSetting("upload_resize",false));if(b.features.dragdrop){c.addClass("drag-drop");a("#drag-drop-area").bind("dragover.wp-uploader",function(){c.addClass("drag-over")}).bind("dragleave.wp-uploader, drop.wp-uploader",function(){c.removeClass("drag-over")})}else{c.removeClass("drag-drop");a("#drag-drop-area").unbind(".wp-uploader")}});uploader.init();uploader.bind("FilesAdded",function(d,e){var c=100*1024*1024,b=parseInt(d.settings.max_file_size,10);a("#media-upload-error").html("");uploadStart();plupload.each(e,function(f){if(b>c&&f.size>c&&d.runtime!="html5"){uploadSizeError(d,f,true)}else{fileQueued(f)}});d.refresh();d.start()});uploader.bind("BeforeUpload",function(b,c){});uploader.bind("UploadFile",function(b,c){fileUploading(b,c)});uploader.bind("UploadProgress",function(b,c){uploadProgress(b,c)});uploader.bind("Error",function(b,c){uploadError(c.file,c.code,c.message,b);b.refresh()});uploader.bind("FileUploaded",function(b,d,c){uploadSuccess(d,c.response)});uploader.bind("UploadComplete",function(b,c){uploadComplete()})};if(typeof(wpUploaderInit)=="object"){uploader_init()}});
\ No newline at end of file
diff --git a/wp-includes/js/plupload/license.txt b/wp-includes/js/plupload/license.txt
new file mode 100644 (file)
index 0000000..d511905
--- /dev/null
@@ -0,0 +1,339 @@
+                   GNU GENERAL PUBLIC LICENSE
+                      Version 2, June 1991
+
+ Copyright (C) 1989, 1991 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.
+
+                           Preamble
+
+  The licenses for most software are designed to take away your
+freedom to share and change it.  By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users.  This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it.  (Some other Free Software Foundation software is covered by
+the GNU Lesser General Public License instead.)  You can apply it to
+your programs, too.
+
+  When we speak of free software, we are referring to freedom, 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 or use pieces of it
+in new free programs; and that you know you can do these things.
+
+  To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+  For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have.  You must make sure that they, too, receive or can get the
+source code.  And you must show them these terms so they know their
+rights.
+
+  We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+  Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software.  If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+  Finally, any free program is threatened constantly by software
+patents.  We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary.  To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.
+
+                   GNU GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License.  The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language.  (Hereinafter, translation is included without limitation in
+the term "modification".)  Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+  1. You may copy and distribute verbatim copies of the Program's
+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 give any other recipients of the Program a copy of this License
+along with the Program.
+
+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 Program or any portion
+of it, thus forming a work based on the Program, 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) You must cause the modified files to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    b) You must cause any work that you distribute or publish, that in
+    whole or in part contains or is derived from the Program or any
+    part thereof, to be licensed as a whole at no charge to all third
+    parties under the terms of this License.
+
+    c) If the modified program normally reads commands interactively
+    when run, you must cause it, when started running for such
+    interactive use in the most ordinary way, to print or display an
+    announcement including an appropriate copyright notice and a
+    notice that there is no warranty (or else, saying that you provide
+    a warranty) and that users may redistribute the program under
+    these conditions, and telling the user how to view a copy of this
+    License.  (Exception: if the Program itself is interactive but
+    does not normally print such an announcement, your work based on
+    the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Program,
+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 Program, 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 Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+  3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+    a) 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; or,
+
+    b) Accompany it with a written offer, valid for at least three
+    years, to give any third party, for a charge no more than your
+    cost of physically performing source distribution, a complete
+    machine-readable copy of the corresponding source code, to be
+    distributed under the terms of Sections 1 and 2 above on a medium
+    customarily used for software interchange; or,
+
+    c) Accompany it with the information you received as to the offer
+    to distribute corresponding source code.  (This alternative is
+    allowed only for noncommercial distribution and only if you
+    received the program in object code or executable form with such
+    an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it.  For an executable work, 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 executable.  However, as a
+special exception, the source code 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.
+
+If distribution of executable or 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 counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+  4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License.  Any attempt
+otherwise to copy, modify, sublicense or distribute the Program 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.
+
+  5. 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 Program or its derivative works.  These actions are
+prohibited by law if you do not accept this License.  Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+  6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program 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 to
+this License.
+
+  7. 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 Program at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Program 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 Program.
+
+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.
+
+  8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program 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.
+
+  9. The Free Software Foundation may publish revised and/or new versions
+of the 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 Program
+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 Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+  10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, 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
+
+  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "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 PROGRAM IS WITH YOU.  SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+  12. 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 PROGRAM 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 PROGRAM (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 PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), 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 Programs
+
+  If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+  To do so, attach the following notices to the program.  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.
+
+    <one line to give the program's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 2 of the License, or
+    (at your option) any later version.
+
+    This program 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 General Public License for more details.
+
+    You should have received a copy of the GNU General Public License along
+    with this program; 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.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+    Gnomovision version 69, Copyright (C) year name of author
+    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+    This is free software, and you are welcome to redistribute it
+    under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License.  Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary.  Here is a sample; alter the names:
+
+  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+  `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+  <signature of Ty Coon>, 1 April 1989
+  Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs.  If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library.  If this is what you want to do, use the GNU Lesser General
+Public License instead of this License.
diff --git a/wp-includes/js/plupload/plupload.flash.js b/wp-includes/js/plupload/plupload.flash.js
new file mode 100644 (file)
index 0000000..8dc2f55
--- /dev/null
@@ -0,0 +1 @@
+(function(f,b,d,e){var a={},g={};function c(){var h;try{h=navigator.plugins["Shockwave Flash"];h=h.description}catch(j){try{h=new ActiveXObject("ShockwaveFlash.ShockwaveFlash").GetVariable("$version")}catch(i){h="0.0"}}h=h.match(/\d+/g);return parseFloat(h[0]+"."+h[1])}d.flash={trigger:function(j,h,i){setTimeout(function(){var m=a[j],l,k;if(m){m.trigger("Flash:"+h,i)}},0)}};d.runtimes.Flash=d.addRuntime("flash",{getFeatures:function(){return{jpgresize:true,pngresize:true,maxWidth:8091,maxHeight:8091,chunks:true,progress:true,multipart:true,multi_selection:true}},init:function(m,o){var k,l,h=0,i=b.body;if(c()<10){o({success:false});return}g[m.id]=false;a[m.id]=m;k=b.getElementById(m.settings.browse_button);l=b.createElement("div");l.id=m.id+"_flash_container";d.extend(l.style,{position:"absolute",top:"0px",background:m.settings.shim_bgcolor||"transparent",zIndex:99999,width:"100%",height:"100%"});l.className="plupload flash";if(m.settings.container){i=b.getElementById(m.settings.container);if(d.getStyle(i,"position")==="static"){i.style.position="relative"}}i.appendChild(l);(function(){var p,q;p='<object id="'+m.id+'_flash" type="application/x-shockwave-flash" data="'+m.settings.flash_swf_url+'" ';if(d.ua.ie){p+='classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" '}p+='width="100%" height="100%" style="outline:0"><param name="movie" value="'+m.settings.flash_swf_url+'" /><param name="flashvars" value="id='+escape(m.id)+'" /><param name="wmode" value="transparent" /><param name="allowscriptaccess" value="always" /></object>';if(d.ua.ie){q=b.createElement("div");l.appendChild(q);q.outerHTML=p;q=null}else{l.innerHTML=p}}());function n(){return b.getElementById(m.id+"_flash")}function j(){if(h++>5000){o({success:false});return}if(!g[m.id]){setTimeout(j,1)}}j();k=l=null;m.bind("Flash:Init",function(){var q={},p;n().setFileFilters(m.settings.filters,m.settings.multi_selection);if(g[m.id]){return}g[m.id]=true;m.bind("UploadFile",function(r,t){var u=r.settings,s=m.settings.resize||{};n().uploadFile(q[t.id],u.url,{name:t.target_name||t.name,mime:d.mimeTypes[t.name.replace(/^.+\.([^.]+)/,"$1").toLowerCase()]||"application/octet-stream",chunk_size:u.chunk_size,width:s.width,height:s.height,quality:s.quality,multipart:u.multipart,multipart_params:u.multipart_params||{},file_data_name:u.file_data_name,format:/\.(jpg|jpeg)$/i.test(t.name)?"jpg":"png",headers:u.headers,urlstream_upload:u.urlstream_upload})});m.bind("Flash:UploadProcess",function(s,r){var t=s.getFile(q[r.id]);if(t.status!=d.FAILED){t.loaded=r.loaded;t.size=r.size;s.trigger("UploadProgress",t)}});m.bind("Flash:UploadChunkComplete",function(r,t){var u,s=r.getFile(q[t.id]);u={chunk:t.chunk,chunks:t.chunks,response:t.text};r.trigger("ChunkUploaded",s,u);if(s.status!=d.FAILED){n().uploadNextChunk()}if(t.chunk==t.chunks-1){s.status=d.DONE;r.trigger("FileUploaded",s,{response:t.text})}});m.bind("Flash:SelectFiles",function(r,u){var t,s,v=[],w;for(s=0;s<u.length;s++){t=u[s];w=d.guid();q[w]=t.id;q[t.id]=w;v.push(new d.File(w,t.name,t.size))}if(v.length){m.trigger("FilesAdded",v)}});m.bind("Flash:SecurityError",function(r,s){m.trigger("Error",{code:d.SECURITY_ERROR,message:d.translate("Security error."),details:s.message,file:m.getFile(q[s.id])})});m.bind("Flash:GenericError",function(r,s){m.trigger("Error",{code:d.GENERIC_ERROR,message:d.translate("Generic error."),details:s.message,file:m.getFile(q[s.id])})});m.bind("Flash:IOError",function(r,s){m.trigger("Error",{code:d.IO_ERROR,message:d.translate("IO error."),details:s.message,file:m.getFile(q[s.id])})});m.bind("Flash:ImageError",function(r,s){m.trigger("Error",{code:parseInt(s.code,10),message:d.translate("Image error."),file:m.getFile(q[s.id])})});m.bind("Flash:StageEvent:rollOver",function(r){var s,t;s=b.getElementById(m.settings.browse_button);t=r.settings.browse_button_hover;if(s&&t){d.addClass(s,t)}});m.bind("Flash:StageEvent:rollOut",function(r){var s,t;s=b.getElementById(m.settings.browse_button);t=r.settings.browse_button_hover;if(s&&t){d.removeClass(s,t)}});m.bind("Flash:StageEvent:mouseDown",function(r){var s,t;s=b.getElementById(m.settings.browse_button);t=r.settings.browse_button_active;if(s&&t){d.addClass(s,t);d.addEvent(b.body,"mouseup",function(){d.removeClass(s,t)},r.id)}});m.bind("Flash:StageEvent:mouseUp",function(r){var s,t;s=b.getElementById(m.settings.browse_button);t=r.settings.browse_button_active;if(s&&t){d.removeClass(s,t)}});m.bind("Flash:ExifData",function(r,s){m.trigger("ExifData",m.getFile(q[s.id]),s.data)});m.bind("Flash:GpsData",function(r,s){m.trigger("GpsData",m.getFile(q[s.id]),s.data)});m.bind("QueueChanged",function(r){m.refresh()});m.bind("FilesRemoved",function(r,t){var s;for(s=0;s<t.length;s++){n().removeFile(q[t[s].id])}});m.bind("StateChanged",function(r){m.refresh()});m.bind("Refresh",function(r){var s,t,u;n().setFileFilters(m.settings.filters,m.settings.multi_selection);s=b.getElementById(r.settings.browse_button);if(s){t=d.getPos(s,b.getElementById(r.settings.container));u=d.getSize(s);d.extend(b.getElementById(r.id+"_flash_container").style,{top:t.y+"px",left:t.x+"px",width:u.w+"px",height:u.h+"px"})}});m.bind("Destroy",function(r){var s;d.removeAllEvents(b.body,r.id);delete g[r.id];delete a[r.id];s=b.getElementById(r.id+"_flash_container");if(s){i.removeChild(s)}});o({success:true})})}})})(window,document,plupload);
\ No newline at end of file
diff --git a/wp-includes/js/plupload/plupload.flash.swf b/wp-includes/js/plupload/plupload.flash.swf
new file mode 100644 (file)
index 0000000..3646056
Binary files /dev/null and b/wp-includes/js/plupload/plupload.flash.swf differ
diff --git a/wp-includes/js/plupload/plupload.html4.js b/wp-includes/js/plupload/plupload.html4.js
new file mode 100644 (file)
index 0000000..d97f97c
--- /dev/null
@@ -0,0 +1 @@
+(function(d,a,b,c){function e(f){return a.getElementById(f)}b.runtimes.Html4=b.addRuntime("html4",{getFeatures:function(){return{multipart:true,triggerDialog:(b.ua.gecko&&d.FormData||b.ua.webkit)}},init:function(f,g){f.bind("Init",function(p){var j=a.body,n,h="javascript",k,x,q,z=[],r=/MSIE/.test(navigator.userAgent),t=[],m=p.settings.filters,o,l,s,w;no_type_restriction:for(o=0;o<m.length;o++){l=m[o].extensions.split(/,/);for(w=0;w<l.length;w++){if(l[w]==="*"){t=[];break no_type_restriction}s=b.mimeTypes[l[w]];if(s){t.push(s)}}}t=t.join(",");function v(){var B,y,i,A;q=b.guid();z.push(q);B=a.createElement("form");B.setAttribute("id","form_"+q);B.setAttribute("method","post");B.setAttribute("enctype","multipart/form-data");B.setAttribute("encoding","multipart/form-data");B.setAttribute("target",p.id+"_iframe");B.style.position="absolute";y=a.createElement("input");y.setAttribute("id","input_"+q);y.setAttribute("type","file");y.setAttribute("accept",t);y.setAttribute("size",1);A=e(p.settings.browse_button);if(p.features.triggerDialog&&A){b.addEvent(e(p.settings.browse_button),"click",function(C){y.click();C.preventDefault()},p.id)}b.extend(y.style,{width:"100%",height:"100%",opacity:0,fontSize:"999px"});b.extend(B.style,{overflow:"hidden"});i=p.settings.shim_bgcolor;if(i){B.style.background=i}if(r){b.extend(y.style,{filter:"alpha(opacity=0)"})}b.addEvent(y,"change",function(F){var D=F.target,C,E=[],G;if(D.value){e("form_"+q).style.top=-1048575+"px";C=D.value.replace(/\\/g,"/");C=C.substring(C.length,C.lastIndexOf("/")+1);E.push(new b.File(q,C));if(!p.features.triggerDialog){b.removeAllEvents(B,p.id)}else{b.removeEvent(A,"click",p.id)}b.removeEvent(y,"change",p.id);v();if(E.length){f.trigger("FilesAdded",E)}}},p.id);B.appendChild(y);j.appendChild(B);p.refresh()}function u(){var i=a.createElement("div");i.innerHTML='<iframe id="'+p.id+'_iframe" name="'+p.id+'_iframe" src="'+h+':&quot;&quot;" style="display:none"></iframe>';n=i.firstChild;j.appendChild(n);b.addEvent(n,"load",function(C){var D=C.target,B,y;if(!k){return}try{B=D.contentWindow.document||D.contentDocument||d.frames[D.id].document}catch(A){p.trigger("Error",{code:b.SECURITY_ERROR,message:b.translate("Security error."),file:k});return}y=B.body.innerHTML;if(y){k.status=b.DONE;k.loaded=1025;k.percent=100;p.trigger("UploadProgress",k);p.trigger("FileUploaded",k,{response:y})}},p.id)}if(p.settings.container){j=e(p.settings.container);if(b.getStyle(j,"position")==="static"){j.style.position="relative"}}p.bind("UploadFile",function(i,A){var B,y;if(A.status==b.DONE||A.status==b.FAILED||i.state==b.STOPPED){return}B=e("form_"+A.id);y=e("input_"+A.id);y.setAttribute("name",i.settings.file_data_name);B.setAttribute("action",i.settings.url);b.each(b.extend({name:A.target_name||A.name},i.settings.multipart_params),function(E,C){var D=a.createElement("input");b.extend(D,{type:"hidden",name:C,value:E});B.insertBefore(D,B.firstChild)});k=A;e("form_"+q).style.top=-1048575+"px";B.submit();B.parentNode.removeChild(B)});p.bind("FileUploaded",function(i){i.refresh()});p.bind("StateChanged",function(i){if(i.state==b.STARTED){u()}if(i.state==b.STOPPED){d.setTimeout(function(){b.removeEvent(n,"load",i.id);if(n.parentNode){n.parentNode.removeChild(n)}},0)}});p.bind("Refresh",function(y){var F,A,B,C,i,G,H,E,D;F=e(y.settings.browse_button);if(F){i=b.getPos(F,e(y.settings.container));G=b.getSize(F);H=e("form_"+q);E=e("input_"+q);b.extend(H.style,{top:i.y+"px",left:i.x+"px",width:G.w+"px",height:G.h+"px"});if(y.features.triggerDialog){if(b.getStyle(F,"position")==="static"){b.extend(F.style,{position:"relative"})}D=parseInt(F.style.zIndex,10);if(isNaN(D)){D=0}b.extend(F.style,{zIndex:D});b.extend(H.style,{zIndex:D-1})}B=y.settings.browse_button_hover;C=y.settings.browse_button_active;A=y.features.triggerDialog?F:H;if(B){b.addEvent(A,"mouseover",function(){b.addClass(F,B)},y.id);b.addEvent(A,"mouseout",function(){b.removeClass(F,B)},y.id)}if(C){b.addEvent(A,"mousedown",function(){b.addClass(F,C)},y.id);b.addEvent(a.body,"mouseup",function(){b.removeClass(F,C)},y.id)}}});f.bind("FilesRemoved",function(y,B){var A,C;for(A=0;A<B.length;A++){C=e("form_"+B[A].id);if(C){C.parentNode.removeChild(C)}}});f.bind("Destroy",function(i){var y,A,B,C={inputContainer:"form_"+q,inputFile:"input_"+q,browseButton:i.settings.browse_button};for(y in C){A=e(C[y]);if(A){b.removeAllEvents(A,i.id)}}b.removeAllEvents(a.body,i.id);b.each(z,function(E,D){B=e("form_"+E);if(B){j.removeChild(B)}})});v()});g({success:true})}})})(window,document,plupload);
\ No newline at end of file
diff --git a/wp-includes/js/plupload/plupload.html5.js b/wp-includes/js/plupload/plupload.html5.js
new file mode 100644 (file)
index 0000000..5d4b8f4
--- /dev/null
@@ -0,0 +1 @@
+(function(h,k,j,e){var c={},g;function m(o,p){var n;if("FileReader" in h){n=new FileReader();n.readAsDataURL(o);n.onload=function(){p(n.result)}}else{return p(o.getAsDataURL())}}function l(o,p){var n;if("FileReader" in h){n=new FileReader();n.readAsBinaryString(o);n.onload=function(){p(n.result)}}else{return p(o.getAsBinary())}}function d(r,p,n,v){var q,o,u,s,t=this;m(c[r.id],function(w){q=k.createElement("canvas");q.style.display="none";k.body.appendChild(q);o=q.getContext("2d");u=new Image();u.onerror=u.onabort=function(){v({success:false})};u.onload=function(){var B,x,z,y,A;if(!p.width){p.width=u.width}if(!p.height){p.height=u.height}s=Math.min(p.width/u.width,p.height/u.height);if(s<1||(s===1&&n==="image/jpeg")){B=Math.round(u.width*s);x=Math.round(u.height*s);q.width=B;q.height=x;o.drawImage(u,0,0,B,x);if(n==="image/jpeg"){y=new f(atob(w.substring(w.indexOf("base64,")+7)));if(y.headers&&y.headers.length){A=new a();if(A.init(y.get("exif")[0])){A.setExif("PixelXDimension",B);A.setExif("PixelYDimension",x);y.set("exif",A.getBinary());if(t.hasEventListener("ExifData")){t.trigger("ExifData",r,A.EXIF())}if(t.hasEventListener("GpsData")){t.trigger("GpsData",r,A.GPS())}}}if(p.quality){try{w=q.toDataURL(n,p.quality/100)}catch(C){w=q.toDataURL(n)}}}else{w=q.toDataURL(n)}w=w.substring(w.indexOf("base64,")+7);w=atob(w);if(y&&y.headers&&y.headers.length){w=y.restore(w);y.purge()}q.parentNode.removeChild(q);v({success:true,data:w})}else{v({success:false})}};u.src=w})}j.runtimes.Html5=j.addRuntime("html5",{getFeatures:function(){var s,o,r,q,p,n;o=r=p=n=false;if(h.XMLHttpRequest){s=new XMLHttpRequest();r=!!s.upload;o=!!(s.sendAsBinary||s.upload)}if(o){q=!!(s.sendAsBinary||(h.Uint8Array&&h.ArrayBuffer));p=!!(File&&(File.prototype.getAsDataURL||h.FileReader)&&q);n=!!(File&&(File.prototype.mozSlice||File.prototype.webkitSlice||File.prototype.slice))}g=j.ua.safari&&j.ua.windows;return{html5:o,dragdrop:(function(){var t=k.createElement("div");return("draggable" in t)||("ondragstart" in t&&"ondrop" in t)}()),jpgresize:p,pngresize:p,multipart:p||!!h.FileReader||!!h.FormData,canSendBinary:q,cantSendBlobInFormData:!!(j.ua.gecko&&h.FormData&&h.FileReader&&!FileReader.prototype.readAsArrayBuffer),progress:r,chunks:n,multi_selection:!(j.ua.safari&&j.ua.windows),triggerDialog:(j.ua.gecko&&h.FormData||j.ua.webkit)}},init:function(p,q){var n;function o(v){var t,s,u=[],w,r={};for(s=0;s<v.length;s++){t=v[s];if(r[t.name]){continue}r[t.name]=true;w=j.guid();c[w]=t;u.push(new j.File(w,t.fileName||t.name,t.fileSize||t.size))}if(u.length){p.trigger("FilesAdded",u)}}n=this.getFeatures();if(!n.html5){q({success:false});return}p.bind("Init",function(v){var F,E,B=[],u,C,s=v.settings.filters,t,A,r=k.body,D;F=k.createElement("div");F.id=v.id+"_html5_container";j.extend(F.style,{position:"absolute",background:p.settings.shim_bgcolor||"transparent",width:"100px",height:"100px",overflow:"hidden",zIndex:99999,opacity:p.settings.shim_bgcolor?"":0});F.className="plupload html5";if(p.settings.container){r=k.getElementById(p.settings.container);if(j.getStyle(r,"position")==="static"){r.style.position="relative"}}r.appendChild(F);no_type_restriction:for(u=0;u<s.length;u++){t=s[u].extensions.split(/,/);for(C=0;C<t.length;C++){if(t[C]==="*"){B=[];break no_type_restriction}A=j.mimeTypes[t[C]];if(A){B.push(A)}}}F.innerHTML='<input id="'+p.id+'_html5"  style="font-size:999px" type="file" accept="'+B.join(",")+'" '+(p.settings.multi_selection&&p.features.multi_selection?'multiple="multiple"':"")+" />";F.scrollTop=100;D=k.getElementById(p.id+"_html5");if(v.features.triggerDialog){j.extend(D.style,{position:"absolute",width:"100%",height:"100%"})}else{j.extend(D.style,{cssFloat:"right",styleFloat:"right"})}D.onchange=function(){o(this.files);this.value=""};E=k.getElementById(v.settings.browse_button);if(E){var x=v.settings.browse_button_hover,z=v.settings.browse_button_active,w=v.features.triggerDialog?E:F;if(x){j.addEvent(w,"mouseover",function(){j.addClass(E,x)},v.id);j.addEvent(w,"mouseout",function(){j.removeClass(E,x)},v.id)}if(z){j.addEvent(w,"mousedown",function(){j.addClass(E,z)},v.id);j.addEvent(k.body,"mouseup",function(){j.removeClass(E,z)},v.id)}if(v.features.triggerDialog){j.addEvent(E,"click",function(y){k.getElementById(v.id+"_html5").click();y.preventDefault()},v.id)}}});p.bind("PostInit",function(){var r=k.getElementById(p.settings.drop_element);if(r){if(g){j.addEvent(r,"dragenter",function(v){var u,s,t;u=k.getElementById(p.id+"_drop");if(!u){u=k.createElement("input");u.setAttribute("type","file");u.setAttribute("id",p.id+"_drop");u.setAttribute("multiple","multiple");j.addEvent(u,"change",function(){o(this.files);j.removeEvent(u,"change",p.id);u.parentNode.removeChild(u)},p.id);r.appendChild(u)}s=j.getPos(r,k.getElementById(p.settings.container));t=j.getSize(r);if(j.getStyle(r,"position")==="static"){j.extend(r.style,{position:"relative"})}j.extend(u.style,{position:"absolute",display:"block",top:0,left:0,width:t.w+"px",height:t.h+"px",opacity:0})},p.id);return}j.addEvent(r,"dragover",function(s){s.preventDefault()},p.id);j.addEvent(r,"drop",function(t){var s=t.dataTransfer;if(s&&s.files){o(s.files)}t.preventDefault()},p.id)}});p.bind("Refresh",function(r){var s,t,u,w,v;s=k.getElementById(p.settings.browse_button);if(s){t=j.getPos(s,k.getElementById(r.settings.container));u=j.getSize(s);w=k.getElementById(p.id+"_html5_container");j.extend(w.style,{top:t.y+"px",left:t.x+"px",width:u.w+"px",height:u.h+"px"});if(p.features.triggerDialog){if(j.getStyle(s,"position")==="static"){j.extend(s.style,{position:"relative"})}v=parseInt(j.getStyle(s,"z-index"),10);if(isNaN(v)){v=0}j.extend(s.style,{zIndex:v});j.extend(w.style,{zIndex:v-1})}}});p.bind("UploadFile",function(r,t){var u=r.settings,x,s;function w(z,C,y){var A;if(File.prototype.slice){try{z.slice();return z.slice(C,y)}catch(B){return z.slice(C,y-C)}}else{if(A=File.prototype.webkitSlice||File.prototype.mozSlice){return A.call(z,C,y)}else{return null}}}function v(z){var C=0,B=0,y=("FileReader" in h)?new FileReader:null;function A(){var H,L,J,K,G,I,E,D=r.settings.url;function F(V){var S=0,T=new XMLHttpRequest,W=T.upload,M="----pluploadboundary"+j.guid(),N,O="--",U="\r\n",Q="";r.current={xhr:T,file:t};if(W){W.onprogress=function(X){t.loaded=Math.min(t.size,B+X.loaded-S);r.trigger("UploadProgress",t)}}T.onreadystatechange=function(){var X,Z;if(T.readyState==4){try{X=T.status}catch(Y){X=0}if(X>=400){r.trigger("Error",{code:j.HTTP_ERROR,message:j.translate("HTTP Error."),file:t,status:X})}else{if(J){Z={chunk:C,chunks:J,response:T.responseText,status:X};r.trigger("ChunkUploaded",t,Z);B+=I;if(Z.cancelled){t.status=j.FAILED;return}t.loaded=Math.min(t.size,(C+1)*G)}else{t.loaded=t.size}r.trigger("UploadProgress",t);V=H=N=Q=null;if(!J||++C>=J){t.status=j.DONE;r.trigger("FileUploaded",t,{response:T.responseText,status:X})}else{A()}}T=null;r.current={};}};if(r.settings.multipart&&n.multipart){K.name=t.target_name||t.name;T.open("post",D,true);j.each(r.settings.headers,function(Y,X){T.setRequestHeader(X,Y)});if(typeof(V)!=="string"&&!!h.FormData){N=new FormData();j.each(j.extend(K,r.settings.multipart_params),function(Y,X){N.append(X,Y)});N.append(r.settings.file_data_name,V);T.send(N);return}if(typeof(V)==="string"){T.setRequestHeader("Content-Type","multipart/form-data; boundary="+M);j.each(j.extend(K,r.settings.multipart_params),function(Y,X){Q+=O+M+U+'Content-Disposition: form-data; name="'+X+'"'+U+U;Q+=unescape(encodeURIComponent(Y))+U});E=j.mimeTypes[t.name.replace(/^.+\.([^.]+)/,"$1").toLowerCase()]||"application/octet-stream";Q+=O+M+U+'Content-Disposition: form-data; name="'+r.settings.file_data_name+'"; filename="'+unescape(encodeURIComponent(t.name))+'"'+U+"Content-Type: "+E+U+U+V+U+O+M+O+U;S=Q.length-V.length;V=Q;if(T.sendAsBinary){T.sendAsBinary(V)}else{if(n.canSendBinary){var R=new Uint8Array(V.length);for(var P=0;P<V.length;P++){R[P]=(V.charCodeAt(P)&255)}T.send(R.buffer)}}return}}D=j.buildUrl(r.settings.url,j.extend(K,r.settings.multipart_params));T.open("post",D,true);T.setRequestHeader("Content-Type","application/octet-stream");j.each(r.settings.headers,function(Y,X){T.setRequestHeader(X,Y)});T.send(V)}if(t.status==j.DONE||t.status==j.FAILED||r.state==j.STOPPED){return}K={name:t.target_name||t.name};if(u.chunk_size&&t.size>u.chunk_size&&(n.chunks||typeof(z)=="string")){G=u.chunk_size;J=Math.ceil(t.size/G);I=Math.min(G,t.size-(C*G));if(typeof(z)=="string"){H=z.substring(C*G,C*G+I)}else{H=w(z,C*G,C*G+I)}K.chunk=C;K.chunks=J}else{I=t.size;H=z}if(typeof(H)!=="string"&&y&&n.cantSendBlobInFormData&&n.chunks&&r.settings.chunk_size){y.onload=function(){F(y.result)};y.readAsBinaryString(H)}else{F(H)}}A()}x=c[t.id];if(n.jpgresize&&r.settings.resize&&/\.(png|jpg|jpeg)$/i.test(t.name)){d.call(r,t,r.settings.resize,/\.png$/i.test(t.name)?"image/png":"image/jpeg",function(y){if(y.success){t.size=y.data.length;v(y.data)}else{v(x)}})}else{if(!n.chunks&&n.jpgresize){l(x,v)}else{v(x)}}});p.bind("Destroy",function(r){var t,u,s=k.body,v={inputContainer:r.id+"_html5_container",inputFile:r.id+"_html5",browseButton:r.settings.browse_button,dropElm:r.settings.drop_element};for(t in v){u=k.getElementById(v[t]);if(u){j.removeAllEvents(u,r.id)}}j.removeAllEvents(k.body,r.id);if(r.settings.container){s=k.getElementById(r.settings.container)}s.removeChild(k.getElementById(v.inputContainer))});q({success:true})}});function b(){var q=false,o;function r(t,v){var s=q?0:-8*(v-1),w=0,u;for(u=0;u<v;u++){w|=(o.charCodeAt(t+u)<<Math.abs(s+u*8))}return w}function n(u,s,t){var t=arguments.length===3?t:o.length-s-1;o=o.substr(0,s)+u+o.substr(t+s)}function p(t,u,w){var x="",s=q?0:-8*(w-1),v;for(v=0;v<w;v++){x+=String.fromCharCode((u>>Math.abs(s+v*8))&255)}n(x,t,w)}return{II:function(s){if(s===e){return q}else{q=s}},init:function(s){q=false;o=s},SEGMENT:function(s,u,t){switch(arguments.length){case 1:return o.substr(s,o.length-s-1);case 2:return o.substr(s,u);case 3:n(t,s,u);break;default:return o}},BYTE:function(s){return r(s,1)},SHORT:function(s){return r(s,2)},LONG:function(s,t){if(t===e){return r(s,4)}else{p(s,t,4)}},SLONG:function(s){var t=r(s,4);return(t>2147483647?t-4294967296:t)},STRING:function(s,t){var u="";for(t+=s;s<t;s++){u+=String.fromCharCode(r(s,1))}return u}}}function f(s){var u={65505:{app:"EXIF",name:"APP1",signature:"Exif\0"},65506:{app:"ICC",name:"APP2",signature:"ICC_PROFILE\0"},65517:{app:"IPTC",name:"APP13",signature:"Photoshop 3.0\0"}},t=[],r,n,p=e,q=0,o;r=new b();r.init(s);if(r.SHORT(0)!==65496){return}n=2;o=Math.min(1048576,s.length);while(n<=o){p=r.SHORT(n);if(p>=65488&&p<=65495){n+=2;continue}if(p===65498||p===65497){break}q=r.SHORT(n+2)+2;if(u[p]&&r.STRING(n+4,u[p].signature.length)===u[p].signature){t.push({hex:p,app:u[p].app.toUpperCase(),name:u[p].name.toUpperCase(),start:n,length:q,segment:r.SEGMENT(n,q)})}n+=q}r.init(null);return{headers:t,restore:function(y){r.init(y);var w=new f(y);if(!w.headers){return false}for(var x=w.headers.length;x>0;x--){var z=w.headers[x-1];r.SEGMENT(z.start,z.length,"")}w.purge();n=r.SHORT(2)==65504?4+r.SHORT(4):2;for(var x=0,v=t.length;x<v;x++){r.SEGMENT(n,0,t[x].segment);n+=t[x].length}return r.SEGMENT()},get:function(x){var y=[];for(var w=0,v=t.length;w<v;w++){if(t[w].app===x.toUpperCase()){y.push(t[w].segment)}}return y},set:function(y,x){var z=[];if(typeof(x)==="string"){z.push(x)}else{z=x}for(var w=ii=0,v=t.length;w<v;w++){if(t[w].app===y.toUpperCase()){t[w].segment=z[ii];t[w].length=z[ii].length;ii++}if(ii>=z.length){break}}},purge:function(){t=[];r.init(null)}}}function a(){var q,n,o={},t;q=new b();n={tiff:{274:"Orientation",34665:"ExifIFDPointer",34853:"GPSInfoIFDPointer"},exif:{36864:"ExifVersion",40961:"ColorSpace",40962:"PixelXDimension",40963:"PixelYDimension",36867:"DateTimeOriginal",33434:"ExposureTime",33437:"FNumber",34855:"ISOSpeedRatings",37377:"ShutterSpeedValue",37378:"ApertureValue",37383:"MeteringMode",37384:"LightSource",37385:"Flash",41986:"ExposureMode",41987:"WhiteBalance",41990:"SceneCaptureType",41988:"DigitalZoomRatio",41992:"Contrast",41993:"Saturation",41994:"Sharpness"},gps:{0:"GPSVersionID",1:"GPSLatitudeRef",2:"GPSLatitude",3:"GPSLongitudeRef",4:"GPSLongitude"}};t={ColorSpace:{1:"sRGB",0:"Uncalibrated"},MeteringMode:{0:"Unknown",1:"Average",2:"CenterWeightedAverage",3:"Spot",4:"MultiSpot",5:"Pattern",6:"Partial",255:"Other"},LightSource:{1:"Daylight",2:"Fliorescent",3:"Tungsten",4:"Flash",9:"Fine weather",10:"Cloudy weather",11:"Shade",12:"Daylight fluorescent (D 5700 - 7100K)",13:"Day white fluorescent (N 4600 -5400K)",14:"Cool white fluorescent (W 3900 - 4500K)",15:"White fluorescent (WW 3200 - 3700K)",17:"Standard light A",18:"Standard light B",19:"Standard light C",20:"D55",21:"D65",22:"D75",23:"D50",24:"ISO studio tungsten",255:"Other"},Flash:{0:"Flash did not fire.",1:"Flash fired.",5:"Strobe return light not detected.",7:"Strobe return light detected.",9:"Flash fired, compulsory flash mode",13:"Flash fired, compulsory flash mode, return light not detected",15:"Flash fired, compulsory flash mode, return light detected",16:"Flash did not fire, compulsory flash mode",24:"Flash did not fire, auto mode",25:"Flash fired, auto mode",29:"Flash fired, auto mode, return light not detected",31:"Flash fired, auto mode, return light detected",32:"No flash function",65:"Flash fired, red-eye reduction mode",69:"Flash fired, red-eye reduction mode, return light not detected",71:"Flash fired, red-eye reduction mode, return light detected",73:"Flash fired, compulsory flash mode, red-eye reduction mode",77:"Flash fired, compulsory flash mode, red-eye reduction mode, return light not detected",79:"Flash fired, compulsory flash mode, red-eye reduction mode, return light detected",89:"Flash fired, auto mode, red-eye reduction mode",93:"Flash fired, auto mode, return light not detected, red-eye reduction mode",95:"Flash fired, auto mode, return light detected, red-eye reduction mode"},ExposureMode:{0:"Auto exposure",1:"Manual exposure",2:"Auto bracket"},WhiteBalance:{0:"Auto white balance",1:"Manual white balance"},SceneCaptureType:{0:"Standard",1:"Landscape",2:"Portrait",3:"Night scene"},Contrast:{0:"Normal",1:"Soft",2:"Hard"},Saturation:{0:"Normal",1:"Low saturation",2:"High saturation"},Sharpness:{0:"Normal",1:"Soft",2:"Hard"},GPSLatitudeRef:{N:"North latitude",S:"South latitude"},GPSLongitudeRef:{E:"East longitude",W:"West longitude"}};function p(u,C){var w=q.SHORT(u),z,F,G,B,A,v,x,D,E=[],y={};for(z=0;z<w;z++){x=v=u+12*z+2;G=C[q.SHORT(x)];if(G===e){continue}B=q.SHORT(x+=2);A=q.LONG(x+=2);x+=4;E=[];switch(B){case 1:case 7:if(A>4){x=q.LONG(x)+o.tiffHeader}for(F=0;F<A;F++){E[F]=q.BYTE(x+F)}break;case 2:if(A>4){x=q.LONG(x)+o.tiffHeader}y[G]=q.STRING(x,A-1);continue;case 3:if(A>2){x=q.LONG(x)+o.tiffHeader}for(F=0;F<A;F++){E[F]=q.SHORT(x+F*2)}break;case 4:if(A>1){x=q.LONG(x)+o.tiffHeader}for(F=0;F<A;F++){E[F]=q.LONG(x+F*4)}break;case 5:x=q.LONG(x)+o.tiffHeader;for(F=0;F<A;F++){E[F]=q.LONG(x+F*4)/q.LONG(x+F*4+4)}break;case 9:x=q.LONG(x)+o.tiffHeader;for(F=0;F<A;F++){E[F]=q.SLONG(x+F*4)}break;case 10:x=q.LONG(x)+o.tiffHeader;for(F=0;F<A;F++){E[F]=q.SLONG(x+F*4)/q.SLONG(x+F*4+4)}break;default:continue}D=(A==1?E[0]:E);if(t.hasOwnProperty(G)&&typeof D!="object"){y[G]=t[G][D]}else{y[G]=D}}return y}function s(){var v=e,u=o.tiffHeader;q.II(q.SHORT(u)==18761);if(q.SHORT(u+=2)!==42){return false}o.IFD0=o.tiffHeader+q.LONG(u+=2);v=p(o.IFD0,n.tiff);o.exifIFD=("ExifIFDPointer" in v?o.tiffHeader+v.ExifIFDPointer:e);o.gpsIFD=("GPSInfoIFDPointer" in v?o.tiffHeader+v.GPSInfoIFDPointer:e);return true}function r(w,u,z){var B,y,x,A=0;if(typeof(u)==="string"){var v=n[w.toLowerCase()];for(hex in v){if(v[hex]===u){u=hex;break}}}B=o[w.toLowerCase()+"IFD"];y=q.SHORT(B);for(i=0;i<y;i++){x=B+12*i+2;if(q.SHORT(x)==u){A=x+8;break}}if(!A){return false}q.LONG(A,z);return true}return{init:function(u){o={tiffHeader:10};if(u===e||!u.length){return false}q.init(u);if(q.SHORT(0)===65505&&q.STRING(4,5).toUpperCase()==="EXIF\0"){return s()}return false},EXIF:function(){var u;u=p(o.exifIFD,n.exif);if(u.ExifVersion){u.ExifVersion=String.fromCharCode(u.ExifVersion[0],u.ExifVersion[1],u.ExifVersion[2],u.ExifVersion[3])}return u},GPS:function(){var u;u=p(o.gpsIFD,n.gps);if(u.GPSVersionID){u.GPSVersionID=u.GPSVersionID.join(".")}return u},setExif:function(u,v){if(u!=="PixelXDimension"&&u!=="PixelYDimension"){return false}return r("exif",u,v)},getBinary:function(){return q.SEGMENT()}}}})(window,document,plupload);
diff --git a/wp-includes/js/plupload/plupload.js b/wp-includes/js/plupload/plupload.js
new file mode 100644 (file)
index 0000000..57ca5aa
--- /dev/null
@@ -0,0 +1,2 @@
+/*1.5.1.1*/
+(function(){var f=0,k=[],m={},i={},a={"<":"lt",">":"gt","&":"amp",'"':"quot","'":"#39"},l=/[<>&\"\']/g,b,c=window.setTimeout,d={},e;function h(){this.returnValue=false}function j(){this.cancelBubble=true}(function(n){var o=n.split(/,/),p,r,q;for(p=0;p<o.length;p+=2){q=o[p+1].split(/ /);for(r=0;r<q.length;r++){i[q[r]]=o[p]}}})("application/msword,doc dot,application/pdf,pdf,application/pgp-signature,pgp,application/postscript,ps ai eps,application/rtf,rtf,application/vnd.ms-excel,xls xlb,application/vnd.ms-powerpoint,ppt pps pot,application/zip,zip,application/x-shockwave-flash,swf swfl,application/vnd.openxmlformats,docx pptx xlsx,audio/mpeg,mpga mpega mp2 mp3,audio/x-wav,wav,audio/mp4,m4a,image/bmp,bmp,image/gif,gif,image/jpeg,jpeg jpg jpe,image/photoshop,psd,image/png,png,image/svg+xml,svg svgz,image/tiff,tiff tif,text/html,htm html xhtml,text/rtf,rtf,video/mpeg,mpeg mpg mpe,video/quicktime,qt mov,video/mp4,mp4,video/x-m4v,m4v,video/x-flv,flv,video/x-ms-wmv,wmv,video/avi,avi,video/webm,webm,video/vnd.rn-realvideo,rv,text/csv,csv,text/plain,asc txt text diff log,application/octet-stream,exe");var g={VERSION:"1.5.1.1",STOPPED:1,STARTED:2,QUEUED:1,UPLOADING:2,FAILED:4,DONE:5,GENERIC_ERROR:-100,HTTP_ERROR:-200,IO_ERROR:-300,SECURITY_ERROR:-400,INIT_ERROR:-500,FILE_SIZE_ERROR:-600,FILE_EXTENSION_ERROR:-601,IMAGE_FORMAT_ERROR:-700,IMAGE_MEMORY_ERROR:-701,IMAGE_DIMENSIONS_ERROR:-702,mimeTypes:i,ua:(function(){var r=navigator,q=r.userAgent,s=r.vendor,o,n,p;o=/WebKit/.test(q);p=o&&s.indexOf("Apple")!==-1;n=window.opera&&window.opera.buildNumber;return{windows:navigator.platform.indexOf("Win")!==-1,ie:!o&&!n&&(/MSIE/gi).test(q)&&(/Explorer/gi).test(r.appName),webkit:o,gecko:!o&&/Gecko/.test(q),safari:p,opera:!!n}}()),extend:function(n){g.each(arguments,function(o,p){if(p>0){g.each(o,function(r,q){n[q]=r})}});return n},cleanName:function(n){var o,p;p=[/[\300-\306]/g,"A",/[\340-\346]/g,"a",/\307/g,"C",/\347/g,"c",/[\310-\313]/g,"E",/[\350-\353]/g,"e",/[\314-\317]/g,"I",/[\354-\357]/g,"i",/\321/g,"N",/\361/g,"n",/[\322-\330]/g,"O",/[\362-\370]/g,"o",/[\331-\334]/g,"U",/[\371-\374]/g,"u"];for(o=0;o<p.length;o+=2){n=n.replace(p[o],p[o+1])}n=n.replace(/\s+/g,"_");n=n.replace(/[^a-z0-9_\-\.]+/gi,"");return n},addRuntime:function(n,o){o.name=n;k[n]=o;k.push(o);return o},guid:function(){var n=new Date().getTime().toString(32),o;for(o=0;o<5;o++){n+=Math.floor(Math.random()*65535).toString(32)}return(g.guidPrefix||"p")+n+(f++).toString(32)},buildUrl:function(o,n){var p="";g.each(n,function(r,q){p+=(p?"&":"")+encodeURIComponent(q)+"="+encodeURIComponent(r)});if(p){o+=(o.indexOf("?")>0?"&":"?")+p}return o},each:function(q,r){var p,o,n;if(q){p=q.length;if(p===b){for(o in q){if(q.hasOwnProperty(o)){if(r(q[o],o)===false){return}}}}else{for(n=0;n<p;n++){if(r(q[n],n)===false){return}}}}},formatSize:function(n){if(n===b||/\D/.test(n)){return g.translate("N/A")}if(n>1073741824){return Math.round(n/1073741824,1)+" GB"}if(n>1048576){return Math.round(n/1048576,1)+" MB"}if(n>1024){return Math.round(n/1024,1)+" KB"}return n+" b"},getPos:function(o,s){var t=0,r=0,v,u=document,p,q;o=o;s=s||u.body;function n(B){var z,A,w=0,C=0;if(B){A=B.getBoundingClientRect();z=u.compatMode==="CSS1Compat"?u.documentElement:u.body;w=A.left+z.scrollLeft;C=A.top+z.scrollTop}return{x:w,y:C}}if(o&&o.getBoundingClientRect&&(navigator.userAgent.indexOf("MSIE")>0&&u.documentMode!==8)){p=n(o);q=n(s);return{x:p.x-q.x,y:p.y-q.y}}v=o;while(v&&v!=s&&v.nodeType){t+=v.offsetLeft||0;r+=v.offsetTop||0;v=v.offsetParent}v=o.parentNode;while(v&&v!=s&&v.nodeType){t-=v.scrollLeft||0;r-=v.scrollTop||0;v=v.parentNode}return{x:t,y:r}},getSize:function(n){return{w:n.offsetWidth||n.clientWidth,h:n.offsetHeight||n.clientHeight}},parseSize:function(n){var o;if(typeof(n)=="string"){n=/^([0-9]+)([mgk]?)$/.exec(n.toLowerCase().replace(/[^0-9mkg]/g,""));o=n[2];n=+n[1];if(o=="g"){n*=1073741824}if(o=="m"){n*=1048576}if(o=="k"){n*=1024}}return n},xmlEncode:function(n){return n?(""+n).replace(l,function(o){return a[o]?"&"+a[o]+";":o}):n},toArray:function(p){var o,n=[];for(o=0;o<p.length;o++){n[o]=p[o]}return n},addI18n:function(n){return g.extend(m,n)},translate:function(n){return m[n]||n},isEmptyObj:function(n){if(n===b){return true}for(var o in n){return false}return true},hasClass:function(p,o){var n;if(p.className==""){return false}n=new RegExp("(^|\\s+)"+o+"(\\s+|$)");return n.test(p.className)},addClass:function(o,n){if(!g.hasClass(o,n)){o.className=o.className==""?n:o.className.replace(/\s+$/,"")+" "+n}},removeClass:function(p,o){var n=new RegExp("(^|\\s+)"+o+"(\\s+|$)");p.className=p.className.replace(n,function(r,q,s){return q===" "&&s===" "?" ":""})},getStyle:function(o,n){if(o.currentStyle){return o.currentStyle[n]}else{if(window.getComputedStyle){return window.getComputedStyle(o,null)[n]}}},addEvent:function(s,n,t){var r,q,p,o;o=arguments[3];n=n.toLowerCase();if(e===b){e="Plupload_"+g.guid()}if(s.addEventListener){r=t;s.addEventListener(n,r,false)}else{if(s.attachEvent){r=function(){var u=window.event;if(!u.target){u.target=u.srcElement}u.preventDefault=h;u.stopPropagation=j;t(u)};s.attachEvent("on"+n,r)}}if(s[e]===b){s[e]=g.guid()}if(!d.hasOwnProperty(s[e])){d[s[e]]={}}q=d[s[e]];if(!q.hasOwnProperty(n)){q[n]=[]}q[n].push({func:r,orig:t,key:o})},removeEvent:function(s,n){var q,t,p;if(typeof(arguments[2])=="function"){t=arguments[2]}else{p=arguments[2]}n=n.toLowerCase();if(s[e]&&d[s[e]]&&d[s[e]][n]){q=d[s[e]][n]}else{return}for(var o=q.length-1;o>=0;o--){if(q[o].key===p||q[o].orig===t){if(s.detachEvent){s.detachEvent("on"+n,q[o].func)}else{if(s.removeEventListener){s.removeEventListener(n,q[o].func,false)}}q[o].orig=null;q[o].func=null;q.splice(o,1);if(t!==b){break}}}if(!q.length){delete d[s[e]][n]}if(g.isEmptyObj(d[s[e]])){delete d[s[e]];try{delete s[e]}catch(r){s[e]=b}}},removeAllEvents:function(o){var n=arguments[1];if(o[e]===b||!o[e]){return}g.each(d[o[e]],function(q,p){g.removeEvent(o,p,n)})}};g.Uploader=function(q){var o={},t,s=[],p;t=new g.QueueProgress();q=g.extend({chunk_size:0,multipart:true,multi_selection:true,file_data_name:"file",filters:[]},q);function r(){var v,w=0,u;if(this.state==g.STARTED){for(u=0;u<s.length;u++){if(!v&&s[u].status==g.QUEUED){v=s[u];v.status=g.UPLOADING;if(this.trigger("BeforeUpload",v)){this.trigger("UploadFile",v)}}else{w++}}if(w==s.length){this.stop();this.trigger("UploadComplete",s)}}}function n(){var v,u;t.reset();for(v=0;v<s.length;v++){u=s[v];if(u.size!==b){t.size+=u.size;t.loaded+=u.loaded}else{t.size=b}if(u.status==g.DONE){t.uploaded++}else{if(u.status==g.FAILED){t.failed++}else{t.queued++}}}if(t.size===b){t.percent=s.length>0?Math.ceil(t.uploaded/s.length*100):0}else{t.bytesPerSec=Math.ceil(t.loaded/((+new Date()-p||1)/1000));t.percent=t.size>0?Math.ceil(t.loaded/t.size*100):0}}g.extend(this,{state:g.STOPPED,current:{},runtime:"",features:{},files:s,settings:q,total:t,id:g.guid(),init:function(){var z=this,A,w,v,y=0,x;if(typeof(q.preinit)=="function"){q.preinit(z)}else{g.each(q.preinit,function(C,B){z.bind(B,C)})}q.page_url=q.page_url||document.location.pathname.replace(/\/[^\/]+$/g,"/");if(!/^(\w+:\/\/|\/)/.test(q.url)){q.url=q.page_url+q.url}q.chunk_size=g.parseSize(q.chunk_size);q.max_file_size=g.parseSize(q.max_file_size);z.bind("FilesAdded",function(B,E){var D,C,G=0,H,F=q.filters;if(F&&F.length){H=[];g.each(F,function(I){g.each(I.extensions.split(/,/),function(J){if(/^\s*\*\s*$/.test(J)){H.push("\\.*")}else{H.push("\\."+J.replace(new RegExp("["+("/^$.*+?|()[]{}\\".replace(/./g,"\\$&"))+"]","g"),"\\$&"))}})});H=new RegExp(H.join("|")+"$","i")}for(D=0;D<E.length;D++){C=E[D];C.loaded=0;C.percent=0;C.status=g.QUEUED;if(H&&!H.test(C.name)){B.trigger("Error",{code:g.FILE_EXTENSION_ERROR,message:g.translate("File extension error."),file:C});continue}if(C.size!==b&&C.size>q.max_file_size){B.trigger("Error",{code:g.FILE_SIZE_ERROR,message:g.translate("File size error."),file:C});continue}s.push(C);G++}if(G){c(function(){z.trigger("QueueChanged");z.refresh()},1)}else{return false}});if(q.unique_names){z.bind("UploadFile",function(B,C){var E=C.name.match(/\.([^.]+)$/),D="tmp";if(E){D=E[1]}C.target_name=C.id+"."+D})}z.bind("UploadProgress",function(B,C){C.percent=C.size>0?Math.ceil(C.loaded/C.size*100):100;n()});z.bind("StateChanged",function(B){if(B.state==g.STARTED){p=(+new Date())}else{if(B.state==g.STOPPED){for(A=B.files.length-1;A>=0;A--){if(B.files[A].status==g.UPLOADING){B.files[A].status=g.QUEUED;n()}}}}});z.bind("QueueChanged",n);z.bind("Error",function(B,C){if(C.file){C.file.status=g.FAILED;n();if(B.state==g.STARTED){c(function(){r.call(z)},1)}}});z.bind("FileUploaded",function(B,C){C.status=g.DONE;C.loaded=C.size;B.trigger("UploadProgress",C);c(function(){r.call(z)},1)});if(q.runtimes){w=[];x=q.runtimes.split(/\s?,\s?/);for(A=0;A<x.length;A++){if(k[x[A]]){w.push(k[x[A]])}}}else{w=k}function u(){var E=w[y++],D,B,C;if(E){D=E.getFeatures();B=z.settings.required_features;if(B){B=B.split(",");for(C=0;C<B.length;C++){if(!D[B[C]]){u();return}}}E.init(z,function(F){if(F&&F.success){z.features=D;z.runtime=E.name;z.trigger("Init",{runtime:E.name});z.trigger("PostInit");z.refresh()}else{u()}})}else{z.trigger("Error",{code:g.INIT_ERROR,message:g.translate("Init error.")})}}u();if(typeof(q.init)=="function"){q.init(z)}else{g.each(q.init,function(C,B){z.bind(B,C)})}},refresh:function(){this.trigger("Refresh")},start:function(){if(this.state!=g.STARTED){this.state=g.STARTED;this.trigger("StateChanged");r.call(this)}},stop:function(){if(this.state!=g.STOPPED){this.state=g.STOPPED;this.trigger("StateChanged")}},getFile:function(v){var u;for(u=s.length-1;u>=0;u--){if(s[u].id===v){return s[u]}}},removeFile:function(v){var u;for(u=s.length-1;u>=0;u--){if(s[u].id===v.id){return this.splice(u,1)[0]}}},splice:function(w,u){var v;v=s.splice(w===b?0:w,u===b?s.length:u);this.trigger("FilesRemoved",v);this.trigger("QueueChanged");return v},trigger:function(v){var x=o[v.toLowerCase()],w,u;if(x){u=Array.prototype.slice.call(arguments);u[0]=this;for(w=0;w<x.length;w++){if(x[w].func.apply(x[w].scope,u)===false){return false}}}return true},hasEventListener:function(u){return !!o[u.toLowerCase()]},bind:function(u,w,v){var x;u=u.toLowerCase();x=o[u]||[];x.push({func:w,scope:v||this});o[u]=x},unbind:function(u){u=u.toLowerCase();var x=o[u],v,w=arguments[1];if(x){if(w!==b){for(v=x.length-1;v>=0;v--){if(x[v].func===w){x.splice(v,1);break}}}else{x=[]}if(!x.length){delete o[u]}}},unbindAll:function(){var u=this;g.each(o,function(w,v){u.unbind(v)})},destroy:function(){this.trigger("Destroy");this.unbindAll()}})};g.File=function(q,o,p){var n=this;n.id=q;n.name=o;n.size=p;n.loaded=0;n.percent=0;n.status=0};g.Runtime=function(){this.getFeatures=function(){};this.init=function(n,o){}};g.QueueProgress=function(){var n=this;n.size=0;n.loaded=0;n.uploaded=0;n.failed=0;n.queued=0;n.percent=0;n.bytesPerSec=0;n.reset=function(){n.size=n.loaded=n.uploaded=n.failed=n.queued=n.percent=n.bytesPerSec=0}};g.runtimes={};window.plupload=g})();
diff --git a/wp-includes/js/plupload/plupload.silverlight.js b/wp-includes/js/plupload/plupload.silverlight.js
new file mode 100644 (file)
index 0000000..beecef1
--- /dev/null
@@ -0,0 +1 @@
+(function(g,b,d,e){var a={},h={};function c(o){var n,m=typeof o,j,l,k;if(o===e||o===null){return"null"}if(m==="string"){n="\bb\tt\nn\ff\rr\"\"''\\\\";return'"'+o.replace(/([\u0080-\uFFFF\x00-\x1f\"])/g,function(q,p){var i=n.indexOf(p);if(i+1){return"\\"+n.charAt(i+1)}q=p.charCodeAt().toString(16);return"\\u"+"0000".substring(q.length)+q})+'"'}if(m=="object"){j=o.length!==e;n="";if(j){for(l=0;l<o.length;l++){if(n){n+=","}n+=c(o[l])}n="["+n+"]"}else{for(k in o){if(o.hasOwnProperty(k)){if(n){n+=","}n+=c(k)+":"+c(o[k])}}n="{"+n+"}"}return n}return""+o}function f(r){var u=false,i=null,n=null,j,k,l,t,m,p=0;try{try{n=new ActiveXObject("AgControl.AgControl");if(n.IsVersionSupported(r)){u=true}n=null}catch(q){var o=navigator.plugins["Silverlight Plug-In"];if(o){j=o.description;if(j==="1.0.30226.2"){j="2.0.30226.2"}k=j.split(".");while(k.length>3){k.pop()}while(k.length<4){k.push(0)}l=r.split(".");while(l.length>4){l.pop()}do{t=parseInt(l[p],10);m=parseInt(k[p],10);p++}while(p<l.length&&t===m);if(t<=m&&!isNaN(t)){u=true}}}}catch(s){u=false}return u}d.silverlight={trigger:function(n,k){var m=a[n],l,j;if(m){j=d.toArray(arguments).slice(1);j[0]="Silverlight:"+k;setTimeout(function(){m.trigger.apply(m,j)},0)}}};d.runtimes.Silverlight=d.addRuntime("silverlight",{getFeatures:function(){return{jpgresize:true,pngresize:true,chunks:true,progress:true,multipart:true,multi_selection:true}},init:function(p,q){var o,m="",n=p.settings.filters,l,k=b.body;if(!f("2.0.31005.0")||(g.opera&&g.opera.buildNumber)){q({success:false});return}h[p.id]=false;a[p.id]=p;o=b.createElement("div");o.id=p.id+"_silverlight_container";d.extend(o.style,{position:"absolute",top:"0px",background:p.settings.shim_bgcolor||"transparent",zIndex:99999,width:"100px",height:"100px",overflow:"hidden",opacity:p.settings.shim_bgcolor||b.documentMode>8?"":0.01});o.className="plupload silverlight";if(p.settings.container){k=b.getElementById(p.settings.container);if(d.getStyle(k,"position")==="static"){k.style.position="relative"}}k.appendChild(o);for(l=0;l<n.length;l++){m+=(m!=""?"|":"")+n[l].title+" | *."+n[l].extensions.replace(/,/g,";*.")}o.innerHTML='<object id="'+p.id+'_silverlight" data="data:application/x-silverlight," type="application/x-silverlight-2" style="outline:none;" width="1024" height="1024"><param name="source" value="'+p.settings.silverlight_xap_url+'"/><param name="background" value="Transparent"/><param name="windowless" value="true"/><param name="enablehtmlaccess" value="true"/><param name="initParams" value="id='+p.id+",filter="+m+",multiselect="+p.settings.multi_selection+'"/></object>';function j(){return b.getElementById(p.id+"_silverlight").content.Upload}p.bind("Silverlight:Init",function(){var i,r={};if(h[p.id]){return}h[p.id]=true;p.bind("Silverlight:StartSelectFiles",function(s){i=[]});p.bind("Silverlight:SelectFile",function(s,v,t,u){var w;w=d.guid();r[w]=v;r[v]=w;i.push(new d.File(w,t,u))});p.bind("Silverlight:SelectSuccessful",function(){if(i.length){p.trigger("FilesAdded",i)}});p.bind("Silverlight:UploadChunkError",function(s,v,t,w,u){p.trigger("Error",{code:d.IO_ERROR,message:"IO Error.",details:u,file:s.getFile(r[v])})});p.bind("Silverlight:UploadFileProgress",function(s,w,t,v){var u=s.getFile(r[w]);if(u.status!=d.FAILED){u.size=v;u.loaded=t;s.trigger("UploadProgress",u)}});p.bind("Refresh",function(s){var t,u,v;t=b.getElementById(s.settings.browse_button);if(t){u=d.getPos(t,b.getElementById(s.settings.container));v=d.getSize(t);d.extend(b.getElementById(s.id+"_silverlight_container").style,{top:u.y+"px",left:u.x+"px",width:v.w+"px",height:v.h+"px"})}});p.bind("Silverlight:UploadChunkSuccessful",function(s,v,t,y,x){var w,u=s.getFile(r[v]);w={chunk:t,chunks:y,response:x};s.trigger("ChunkUploaded",u,w);if(u.status!=d.FAILED){j().UploadNextChunk()}if(t==y-1){u.status=d.DONE;s.trigger("FileUploaded",u,{response:x})}});p.bind("Silverlight:UploadSuccessful",function(s,v,t){var u=s.getFile(r[v]);u.status=d.DONE;s.trigger("FileUploaded",u,{response:t})});p.bind("FilesRemoved",function(s,u){var t;for(t=0;t<u.length;t++){j().RemoveFile(r[u[t].id])}});p.bind("UploadFile",function(s,u){var v=s.settings,t=v.resize||{};j().UploadFile(r[u.id],s.settings.url,c({name:u.target_name||u.name,mime:d.mimeTypes[u.name.replace(/^.+\.([^.]+)/,"$1").toLowerCase()]||"application/octet-stream",chunk_size:v.chunk_size,image_width:t.width,image_height:t.height,image_quality:t.quality||90,multipart:!!v.multipart,multipart_params:v.multipart_params||{},file_data_name:v.file_data_name,headers:v.headers}))});p.bind("Silverlight:MouseEnter",function(s){var t,u;t=b.getElementById(p.settings.browse_button);u=s.settings.browse_button_hover;if(t&&u){d.addClass(t,u)}});p.bind("Silverlight:MouseLeave",function(s){var t,u;t=b.getElementById(p.settings.browse_button);u=s.settings.browse_button_hover;if(t&&u){d.removeClass(t,u)}});p.bind("Silverlight:MouseLeftButtonDown",function(s){var t,u;t=b.getElementById(p.settings.browse_button);u=s.settings.browse_button_active;if(t&&u){d.addClass(t,u);d.addEvent(b.body,"mouseup",function(){d.removeClass(t,u)})}});p.bind("Sliverlight:StartSelectFiles",function(s){var t,u;t=b.getElementById(p.settings.browse_button);u=s.settings.browse_button_active;if(t&&u){d.removeClass(t,u)}});p.bind("Destroy",function(s){var t;d.removeAllEvents(b.body,s.id);delete h[s.id];delete a[s.id];t=b.getElementById(s.id+"_silverlight_container");if(t){k.removeChild(t)}});q({success:true})})}})})(window,document,plupload);
\ No newline at end of file
diff --git a/wp-includes/js/plupload/plupload.silverlight.xap b/wp-includes/js/plupload/plupload.silverlight.xap
new file mode 100644 (file)
index 0000000..1a5cbb5
Binary files /dev/null and b/wp-includes/js/plupload/plupload.silverlight.xap differ
index f6ab23a4ba748c66a5218eca5f53a4ff6748e144..903f320994b4dc5f3c6dcb821b835d7d13312c9a 100644 (file)
+/*
+ * Quicktags
+ * 
+ * This is the HTML editor in WordPress. It can be attached to any textarea and will
+ * append a toolbar above it. This script is self-contained (does not require external libraries).
+ *
+ * Run quicktags(settings) to initialize it, where settings is an object containing up to 3 properties:
+ * settings = {
+ *   id : 'my_id',          the HTML ID of the textarea, required
+ *   buttons: ''            Comma separated list of the names of the default buttons to show. Optional.
+ *                          Current list of default button names: 'strong,em,link,block,del,ins,img,ul,ol,li,code,more,spell,close';
+ * }
+ *
+ * The settings can also be a string quicktags_id.
+ *
+ * quicktags_id string The ID of the textarea that will be the editor canvas
+ * buttons string Comma separated list of the default buttons names that will be shown in that instance.
+ */
+
 // new edit toolbar used with permission
 // by Alex King
 // http://www.alexking.org/
 
 // new edit toolbar used with permission
 // by Alex King
 // http://www.alexking.org/
 
-var edButtons = new Array(), edLinks = new Array(), edOpenTags = new Array(), now = new Date(), datetime;
-
-function edButton(id, display, tagStart, tagEnd, access, open) {
-       this.id = id;                           // used to name the toolbar button
-       this.display = display;         // label on button
-       this.tagStart = tagStart;       // open tag
-       this.tagEnd = tagEnd;           // close tag
-       this.access = access;           // access key
-       this.open = open;                       // set to -1 if tag does not need to be closed
+var QTags, edButtons = [], edCanvas,
+
+/**
+ * Back-compat
+ *
+ * Define all former global functions so plugins that hack quicktags.js directly don't cause fatal errors.
+ */
+edAddTag = function(){},
+edCheckOpenTags = function(){},
+edCloseAllTags = function(){},
+edInsertImage = function(){},
+edInsertLink = function(){},
+edInsertTag = function(){},
+edLink = function(){},
+edQuickLink = function(){},
+edRemoveTag = function(){},
+edShowButton = function(){},
+edShowLinks = function(){},
+edSpell = function(){},
+edToolbar = function(){};
+
+/**
+ * Initialize new instance of the Quicktags editor
+ */
+function quicktags(settings) {
+       return new QTags(settings);
 }
 
 }
 
-function zeroise(number, threshold) {
-       // FIXME: or we could use an implementation of printf in js here
-       var str = number.toString();
-       if (number < 0) { str = str.substr(1, str.length) }
-       while (str.length < threshold) { str = "0" + str }
-       if (number < 0) { str = '-' + str }
-       return str;
+/**
+ * Inserts content at the caret in the active editor (textarea)
+ * 
+ * Added for back compatibility
+ * @see QTags.insertContent()
+ */
+function edInsertContent(bah, txt) {
+       return QTags.insertContent(txt);
 }
 
 }
 
-datetime = now.getUTCFullYear() + '-' +
-zeroise(now.getUTCMonth() + 1, 2) + '-' +
-zeroise(now.getUTCDate(), 2) + 'T' +
-zeroise(now.getUTCHours(), 2) + ':' +
-zeroise(now.getUTCMinutes(), 2) + ':' +
-zeroise(now.getUTCSeconds() ,2) +
-'+00:00';
-
-edButtons[edButtons.length] =
-new edButton('ed_strong'
-,'b'
-,'<strong>'
-,'</strong>'
-,'b'
-);
-
-edButtons[edButtons.length] =
-new edButton('ed_em'
-,'i'
-,'<em>'
-,'</em>'
-,'i'
-);
-
-edButtons[edButtons.length] =
-new edButton('ed_link'
-,'link'
-,''
-,'</a>'
-,'a'
-); // special case
-
-edButtons[edButtons.length] =
-new edButton('ed_block'
-,'b-quote'
-,'\n\n<blockquote>'
-,'</blockquote>\n\n'
-,'q'
-);
-
-
-edButtons[edButtons.length] =
-new edButton('ed_del'
-,'del'
-,'<del datetime="' + datetime + '">'
-,'</del>'
-,'d'
-);
-
-edButtons[edButtons.length] =
-new edButton('ed_ins'
-,'ins'
-,'<ins datetime="' + datetime + '">'
-,'</ins>'
-,'s'
-);
-
-edButtons[edButtons.length] =
-new edButton('ed_img'
-,'img'
-,''
-,''
-,'m'
-,-1
-); // special case
-
-edButtons[edButtons.length] =
-new edButton('ed_ul'
-,'ul'
-,'<ul>\n'
-,'</ul>\n\n'
-,'u'
-);
-
-edButtons[edButtons.length] =
-new edButton('ed_ol'
-,'ol'
-,'<ol>\n'
-,'</ol>\n\n'
-,'o'
-);
-
-edButtons[edButtons.length] =
-new edButton('ed_li'
-,'li'
-,'\t<li>'
-,'</li>\n'
-,'l'
-);
-
-edButtons[edButtons.length] =
-new edButton('ed_code'
-,'code'
-,'<code>'
-,'</code>'
-,'c'
-);
-
-edButtons[edButtons.length] =
-new edButton('ed_more'
-,'more'
-,'<!--more-->'
-,''
-,'t'
-,-1
-);
-/*
-edButtons[edButtons.length] =
-new edButton('ed_next'
-,'page'
-,'<!--nextpage-->'
-,''
-,'p'
-,-1
-);
-*/
-function edLink() {
-       this.display = '';
-       this.URL = '';
-       this.newWin = 0;
+/**
+ * Adds a button to all instances of the editor
+ * 
+ * Added for back compatibility, use QTags.addButton() as it gives more flexibility like type of button, button placement, etc.
+ * @see QTags.addButton()
+ */
+function edButton(id, display, tagStart, tagEnd, access, open) {
+       return QTags.addButton( id, display, tagStart, tagEnd, access, '', -1 );        
 }
 
 }
 
-edLinks[edLinks.length] = new edLink('WordPress'
-                                    ,'http://wordpress.org/'
-                                    );
-
-edLinks[edLinks.length] = new edLink('alexking.org'
-                                    ,'http://www.alexking.org/'
-                                    );
-
-function edShowButton(button, i) {
-       if (button.id == 'ed_img') {
-               document.write('<input type="button" id="' + button.id + '" accesskey="' + button.access + '" class="ed_button" onclick="edInsertImage(edCanvas);" value="' + button.display + '" />');
-       }
-       else if (button.id == 'ed_link') {
-               document.write('<input type="button" id="' + button.id + '" accesskey="' + button.access + '" class="ed_button" onclick="edInsertLink(edCanvas, ' + i + ');" value="' + button.display + '" />');
-       }
-       else {
-               document.write('<input type="button" id="' + button.id + '" accesskey="' + button.access + '" class="ed_button" onclick="edInsertTag(edCanvas, ' + i + ');" value="' + button.display + '"  />');
-       }
-}
+(function(){
+       // private stuff is prefixed with an underscore
+       var _domReady = function(func) {
+               var t, i,  DOMContentLoaded;
 
 
-function edShowLinks() {
-       var tempStr = '<select onchange="edQuickLink(this.options[this.selectedIndex].value, this);"><option value="-1" selected>' + quicktagsL10n.quickLinks + '</option>', i;
-       for (i = 0; i < edLinks.length; i++) {
-               tempStr += '<option value="' + i + '">' + edLinks[i].display + '</option>';
-       }
-       tempStr += '</select>';
-       document.write(tempStr);
-}
+               if ( typeof jQuery != 'undefined' ) {
+                       jQuery(document).ready(func);
+               } else {
+                       t = _domReady;
+                       t.funcs = [];
+
+                       t.ready = function() {
+                               if ( ! t.isReady ) {
+                                       t.isReady = true;
+                                       for ( i = 0; i < t.funcs.length; i++ ) {
+                                               t.funcs[i]();
+                                       }
+                               }
+                       };
 
 
-function edAddTag(button) {
-       if (edButtons[button].tagEnd != '') {
-               edOpenTags[edOpenTags.length] = button;
-               document.getElementById(edButtons[button].id).value = '/' + document.getElementById(edButtons[button].id).value;
-       }
-}
+                       if ( t.isReady ) {
+                               func();
+                       } else {
+                               t.funcs.push(func);
+                       }
 
 
-function edRemoveTag(button) {
-       for (var i = 0; i < edOpenTags.length; i++) {
-               if (edOpenTags[i] == button) {
-                       edOpenTags.splice(i, 1);
-                       document.getElementById(edButtons[button].id).value =           document.getElementById(edButtons[button].id).value.replace('/', '');
-               }
-       }
-}
+                       if ( ! t.eventAttached ) {
+                               if ( document.addEventListener ) {
+                                       DOMContentLoaded = function(){document.removeEventListener('DOMContentLoaded', DOMContentLoaded, false);t.ready();};
+                                       document.addEventListener('DOMContentLoaded', DOMContentLoaded, false);
+                                       window.addEventListener('load', t.ready, false);
+                               } else if ( document.attachEvent ) {
+                                       DOMContentLoaded = function(){if (document.readyState === 'complete'){ document.detachEvent('onreadystatechange', DOMContentLoaded);t.ready();}};
+                                       document.attachEvent('onreadystatechange', DOMContentLoaded);
+                                       window.attachEvent('onload', t.ready);
+
+                                       (function(){
+                                               try {
+                                                       document.documentElement.doScroll("left");
+                                               } catch(e) {
+                                                       setTimeout(arguments.callee, 50);
+                                                       return;
+                                               }
+
+                                               t.ready();
+                                       })();
+                               }
 
 
-function edCheckOpenTags(button) {
-       var tag = 0, i;
-       for (i = 0; i < edOpenTags.length; i++) {
-               if (edOpenTags[i] == button) {
-                       tag++;
+                               t.eventAttached = true;
+                       }
                }
                }
-       }
-       if (tag > 0) {
-               return true; // tag found
-       }
-       else {
-               return false; // tag not found
-       }
-}
+       },
 
 
-function edCloseAllTags() {
-       var count = edOpenTags.length, o;
-       for (o = 0; o < count; o++) {
-               edInsertTag(edCanvas, edOpenTags[edOpenTags.length - 1]);
-       }
-}
+       _datetime = (function() {
+               var now = new Date(), zeroise;
 
 
-function edQuickLink(i, thisSelect) {
-       if (i > -1) {
-               var newWin = '', tempStr;
-               if (edLinks[i].newWin == 1) {
-                       newWin = ' target="_blank"';
-               }
-               tempStr = '<a href="' + edLinks[i].URL + '"' + newWin + '>'
-                           + edLinks[i].display
-                           + '</a>';
-               thisSelect.selectedIndex = 0;
-               edInsertContent(edCanvas, tempStr);
-       }
-       else {
-               thisSelect.selectedIndex = 0;
-       }
-}
+               zeroise = function(number) {
+                       var str = number.toString();
 
 
-function edSpell(myField) {
-       var word = '', sel, startPos, endPos;
-       if (document.selection) {
-               myField.focus();
-           sel = document.selection.createRange();
-               if (sel.text.length > 0) {
-                       word = sel.text;
+                       if ( str.length < 2 )
+                               str = "0" + str;
+
+                       return str;
                }
                }
-       }
-       else if (myField.selectionStart || myField.selectionStart == '0') {
-               startPos = myField.selectionStart;
-               endPos = myField.selectionEnd;
-               if (startPos != endPos) {
-                       word = myField.value.substring(startPos, endPos);
+
+               return now.getUTCFullYear() + '-' +
+                       zeroise( now.getUTCMonth() + 1 ) + '-' +
+                       zeroise( now.getUTCDate() ) + 'T' +
+                       zeroise( now.getUTCHours() ) + ':' +
+                       zeroise( now.getUTCMinutes() ) + ':' +
+                       zeroise( now.getUTCSeconds() ) +
+                       '+00:00';
+       })(),
+       qt;
+
+       qt = QTags = function(settings) {
+               if ( typeof(settings) == 'string' )
+                       settings = {id: settings};
+               else if ( typeof(settings) != 'object' )
+                       return false;
+
+               var t = this,
+                       id = settings.id,
+                       canvas = document.getElementById(id),
+                       name = 'qt_' + id,
+                       tb, onclick, toolbar_id;
+
+               if ( !id || !canvas )
+                       return false;
+
+               t.name = name;
+               t.id = id;
+               t.canvas = canvas;
+               t.settings = settings;
+
+               if ( id == 'content' && typeof(adminpage) == 'string' && ( adminpage == 'post-new-php' || adminpage == 'post-php' ) ) {
+                       // back compat hack :-(
+                       edCanvas = canvas;
+                       toolbar_id = 'ed_toolbar';
+               } else {
+                       toolbar_id = name + '_toolbar';
                }
                }
-       }
-       if (word == '') {
-               word = prompt(quicktagsL10n.wordLookup, '');
-       }
-       if (word !== null && /^\w[\w ]*$/.test(word)) {
-               window.open('http://www.answers.com/' + escape(word));
-       }
-}
 
 
-function edToolbar() {
-       document.write('<div id="ed_toolbar">');
-       for (var i = 0; i < edButtons.length; i++) {
-               edShowButton(edButtons[i], i);
-       }
-       document.write('<input type="button" id="ed_spell" class="ed_button" onclick="edSpell(edCanvas);" title="' + quicktagsL10n.dictionaryLookup + '" value="' + quicktagsL10n.lookup + '" />');
-       document.write('<input type="button" id="ed_close" class="ed_button" onclick="edCloseAllTags();" title="' + quicktagsL10n.closeAllOpenTags + '" value="' + quicktagsL10n.closeTags + '" />');
-       document.write('<input type="button" id="ed_fullscreen" class="ed_button" onclick="fullscreen.on();" title="' + quicktagsL10n.toggleFullscreen + '" value="' + quicktagsL10n.fullscreen + '" />');
-//     edShowLinks(); // disabled by default
-       document.write('</div>');
-}
+               tb = document.createElement('div');
+               tb.id = toolbar_id;
+               tb.className = 'quicktags-toolbar';
 
 
-// insertion code
+               canvas.parentNode.insertBefore(tb, canvas);
+               t.toolbar = tb;
 
 
-function edInsertTag(myField, i) {
-       //IE support
-       if (document.selection) {
-               myField.focus();
-           var sel = document.selection.createRange();
-               if (sel.text.length > 0) {
-                       sel.text = edButtons[i].tagStart + sel.text + edButtons[i].tagEnd;
-               }
-               else {
-                       if (!edCheckOpenTags(i) || edButtons[i].tagEnd == '') {
-                               sel.text = edButtons[i].tagStart;
-                               edAddTag(i);
-                       }
-                       else {
-                               sel.text = edButtons[i].tagEnd;
-                               edRemoveTag(i);
-                       }
-               }
-               myField.focus();
-       }
-       //MOZILLA/NETSCAPE support
-       else if (myField.selectionStart || myField.selectionStart == '0') {
-               var startPos = myField.selectionStart, endPos = myField.selectionEnd, cursorPos = endPos, scrollTop = myField.scrollTop;
-
-               if (startPos != endPos) {
-                       myField.value = myField.value.substring(0, startPos)
-                                     + edButtons[i].tagStart
-                                     + myField.value.substring(startPos, endPos)
-                                     + edButtons[i].tagEnd
-                                     + myField.value.substring(endPos, myField.value.length);
-                       cursorPos += edButtons[i].tagStart.length + edButtons[i].tagEnd.length;
-               }
-               else {
-                       if (!edCheckOpenTags(i) || edButtons[i].tagEnd == '') {
-                               myField.value = myField.value.substring(0, startPos)
-                                             + edButtons[i].tagStart
-                                             + myField.value.substring(endPos, myField.value.length);
-                               edAddTag(i);
-                               cursorPos = startPos + edButtons[i].tagStart.length;
-                       }
-                       else {
-                               myField.value = myField.value.substring(0, startPos)
-                                             + edButtons[i].tagEnd
-                                             + myField.value.substring(endPos, myField.value.length);
-                               edRemoveTag(i);
-                               cursorPos = startPos + edButtons[i].tagEnd.length;
-                       }
-               }
-               myField.focus();
-               myField.selectionStart = cursorPos;
-               myField.selectionEnd = cursorPos;
-               myField.scrollTop = scrollTop;
-       }
-       else {
-               if (!edCheckOpenTags(i) || edButtons[i].tagEnd == '') {
-                       myField.value += edButtons[i].tagStart;
-                       edAddTag(i);
-               }
-               else {
-                       myField.value += edButtons[i].tagEnd;
-                       edRemoveTag(i);
-               }
-               myField.focus();
-       }
-}
+               // listen for click events
+               onclick = function(e) {
+                       e = e || window.event;
+                       var target = e.target || e.srcElement, i;
 
 
-function edInsertContent(myField, myValue) {
-       var sel, startPos, endPos, scrollTop;
-
-       //IE support
-       if (document.selection) {
-               myField.focus();
-               sel = document.selection.createRange();
-               sel.text = myValue;
-               myField.focus();
-       }
-       //MOZILLA/NETSCAPE support
-       else if (myField.selectionStart || myField.selectionStart == '0') {
-               startPos = myField.selectionStart;
-               endPos = myField.selectionEnd;
-               scrollTop = myField.scrollTop;
-               myField.value = myField.value.substring(0, startPos)
-                             + myValue
-                      + myField.value.substring(endPos, myField.value.length);
-               myField.focus();
-               myField.selectionStart = startPos + myValue.length;
-               myField.selectionEnd = startPos + myValue.length;
-               myField.scrollTop = scrollTop;
-       } else {
-               myField.value += myValue;
-               myField.focus();
-       }
-}
+                       // as long as it has the class ed_button, execute the callback
+                       if ( / ed_button /.test(' ' + target.className + ' ') ) {
+                               // we have to reassign canvas here
+                               t.canvas = canvas = document.getElementById(id);
+                               i = target.id.replace(name + '_', '');
 
 
-function edInsertLink(myField, i, defaultValue) {
-       if ( 'object' == typeof(wpLink) ) {
-               wpLink.open();
-       } else {
-               if (!defaultValue) {
-                       defaultValue = 'http://';
-               }
-               if (!edCheckOpenTags(i)) {
-                       var URL = prompt(quicktagsL10n.enterURL, defaultValue);
-                       if (URL) {
-                               edButtons[i].tagStart = '<a href="' + URL + '">';
-                               edInsertTag(myField, i);
+                               if ( t.theButtons[i] )
+                                       t.theButtons[i].callback.call(t.theButtons[i], target, canvas, t);
                        }
                        }
+               };
+
+               if ( tb.addEventListener ) {
+                       tb.addEventListener('click', onclick, false);
+               } else if ( tb.attachEvent ) {
+                       tb.attachEvent('onclick', onclick);
                }
                }
-               else {
-                       edInsertTag(myField, i);
+
+               t.getButton = function(id) {
+                       return t.theButtons[id];
+               };
+
+               t.getButtonElement = function(id) {
+                       return document.getElementById(name + '_' + id);
+               };
+
+               qt.instances[id] = t;
+
+               if ( !qt.instances[0] ) {
+                       qt.instances[0] = qt.instances[id];
+                       _domReady( function(){ qt._buttonsInit(); } );
                }
                }
-       }
-}
+       };
 
 
-function edInsertImage(myField) {
-       var myValue = prompt(quicktagsL10n.enterImageURL, 'http://');
-       if (myValue) {
-               myValue = '<img src="'
-                               + myValue
-                               + '" alt="' + prompt(quicktagsL10n.enterImageDescription, '')
-                               + '" />';
-               edInsertContent(myField, myValue);
-       }
-}
+       qt.instances = {};
 
 
+       qt.getInstance = function(id) {
+               return qt.instances[id];
+       };
 
 
-// Allow multiple instances.
-// Name = unique value, id = textarea id, container = container div.
-// Can disable some buttons by passing comma delimited string as 4th param.
-var QTags = function(name, id, container, disabled) {
-       var t = this, cont = document.getElementById(container), i, tag, tb, html, sel;
+       qt._buttonsInit = function() {
+               var t = this, canvas, name, settings, theButtons, html, inst, ed, id, i, use,
+                       defaults = ',strong,em,link,block,del,ins,img,ul,ol,li,code,more,spell,close,';
 
 
-       t.Buttons = [];
-       t.Links = [];
-       t.OpenTags = [];
-       t.Canvas = document.getElementById(id);
+               for ( inst in t.instances ) {
+                       if ( inst == 0 )
+                               continue;
 
 
-       if ( ! t.Canvas || ! cont )
-               return;
+                       ed = t.instances[inst];
+                       canvas = ed.canvas;
+                       name = ed.name;
+                       settings = ed.settings;
+                       html = '';
+                       theButtons = {};
+                       use = '';
 
 
-       disabled = ( typeof disabled != 'undefined' ) ? ','+disabled+',' : '';
+                       // set buttons
+                       if ( settings.buttons )
+                               use = ','+settings.buttons+',';
 
 
-       t.edShowButton = function(button, i) {
-               if ( disabled && (disabled.indexOf(','+button.display+',') != -1) )
-                       return '';
-               else if ( button.id == name+'_img' )
-                       return '<input type="button" id="' + button.id + '" accesskey="' + button.access + '" class="ed_button" onclick="edInsertImage('+name+'.Canvas);" value="' + button.display + '" />';
-               else if (button.id == name+'_link')
-                       return '<input type="button" id="' + button.id + '" accesskey="' + button.access + '" class="ed_button" onclick="'+name+'.edInsertLink('+i+');" value="'+button.display+'" />';
-               else
-                       return '<input type="button" id="' + button.id + '" accesskey="'+button.access+'" class="ed_button" onclick="'+name+'.edInsertTag('+i+');" value="'+button.display+'" />';
-       };
+                       for ( i in edButtons ) {
+                               if ( !edButtons[i] )
+                                       continue;
+
+                               id = edButtons[i].id;
+                               if ( use && defaults.indexOf(','+id+',') != -1 && use.indexOf(','+id+',') == -1 )
+                                       continue;
+
+                               if ( !edButtons[i].instance || edButtons[i].instance == inst ) {
+                                       theButtons[id] = edButtons[i];
 
 
-       t.edAddTag = function(button) {
-               if ( t.Buttons[button].tagEnd != '' ) {
-                       t.OpenTags[t.OpenTags.length] = button;
-                       document.getElementById(t.Buttons[button].id).value = '/' + document.getElementById(t.Buttons[button].id).value;
+                                       if ( edButtons[i].html )
+                                               html += edButtons[i].html(name + '_');
+                               }
+                       }
+
+                       if ( use && use.indexOf(',fullscreen,') != -1 ) {
+                               theButtons['fullscreen'] = new qt.FullscreenButton();
+                               html += theButtons['fullscreen'].html(name + '_');
+                       }
+
+                       ed.toolbar.innerHTML = html;
+                       ed.theButtons = theButtons;
                }
                }
+               t.buttonsInitDone = true;
        };
 
        };
 
-       t.edRemoveTag = function(button) {
-               for ( i = 0; i < t.OpenTags.length; i++ ) {
-                       if ( t.OpenTags[i] == button ) {
-                               t.OpenTags.splice(i, 1);
-                               document.getElementById(t.Buttons[button].id).value = document.getElementById(t.Buttons[button].id).value.replace('/', '');
+       /**
+        * Main API function for adding a button to Quicktags
+        * 
+        * Adds qt.Button or qt.TagButton depending on the args. The first three args are always required.
+        * To be able to add button(s) to Quicktags, your script should be enqueued as dependent
+        * on "quicktags" and outputted in the footer. If you are echoing JS directly from PHP,
+        * use add_action( 'admin_print_footer_scripts', 'output_my_js', 100 ) or add_action( 'wp_footer', 'output_my_js', 100 )
+        *
+        * Minimum required to add a button that calls an external function:
+        *     QTags.addButton( 'my_id', 'my button', my_callback );
+        *     function my_callback() { alert('yeah!'); }
+        *
+        * Minimum required to add a button that inserts a tag:
+        *     QTags.addButton( 'my_id', 'my button', '<span>', '</span>' );
+        *     QTags.addButton( 'my_id2', 'my button', '<br />' );
+        *
+        * @param id string required Button HTML ID
+        * @param display string required Button's value="..."
+        * @param arg1 string || function required Either a starting tag to be inserted like "<span>" or a callback that is executed when the button is clicked.
+        * @param arg2 string optional Ending tag like "</span>"
+        * @param access_key string optional Access key for the button.
+        * @param title string optional Button's title="..." 
+        * @param priority int optional Number representing the desired position of the button in the toolbar. 1 - 9 = first, 11 - 19 = second, 21 - 29 = third, etc.
+        * @param instance string optional Limit the button to a specifric instance of Quicktags, add to all instances if not present.
+        * @return mixed null or the button object that is needed for back-compat.
+        */                             
+       qt.addButton = function( id, display, arg1, arg2, access_key, title, priority, instance ) {
+               var btn;
+               
+               if ( !id || !display )
+                       return;
+
+               priority = priority || 0;
+               arg2 = arg2 || '';
+
+               if ( typeof(arg1) === 'function' ) {
+                       btn = new qt.Button(id, display, access_key, title, instance);
+                       btn.callback = arg1;
+               } else if ( typeof(arg1) === 'string' ) {
+                       btn = new qt.TagButton(id, display, arg1, arg2, access_key, title, instance);
+               } else {
+                       return;
+               }
+
+               if ( priority == -1 ) // back-compat
+                       return btn;
+
+               if ( priority > 0 ) {
+                       while ( typeof(edButtons[priority]) != 'undefined' ) {
+                               priority++
                        }
                        }
+
+                       edButtons[priority] = btn;
+               } else {
+                       edButtons[edButtons.length] = btn;
                }
                }
+
+               if ( this.buttonsInitDone )
+                       this._buttonsInit(); // add the button HTML to all instances toolbars if addButton() was called too late
        };
 
        };
 
-       t.edCheckOpenTags = function(button) {
-               tag = 0;
-               for ( var i = 0; i < t.OpenTags.length; i++ ) {
-                       if ( t.OpenTags[i] == button )
-                               tag++;
+       qt.insertContent = function(content) {
+               var sel, startPos, endPos, scrollTop, text, canvas = document.getElementById(wpActiveEditor);
+
+               if ( !canvas )
+                       return false;
+
+               if ( document.selection ) { //IE
+                       canvas.focus();
+                       sel = document.selection.createRange();
+                       sel.text = content;
+                       canvas.focus();
+               } else if ( canvas.selectionStart || canvas.selectionStart == '0' ) { // FF, WebKit, Opera
+                       text = canvas.value;
+                       startPos = canvas.selectionStart;
+                       endPos = canvas.selectionEnd;
+                       scrollTop = canvas.scrollTop;
+
+                       canvas.value = text.substring(0, startPos) + content + text.substring(endPos, text.length);
+
+                       canvas.focus();
+                       canvas.selectionStart = startPos + content.length;
+                       canvas.selectionEnd = startPos + content.length;
+                       canvas.scrollTop = scrollTop;
+               } else {
+                       canvas.value += content;
+                       canvas.focus();
                }
                }
-               if ( tag > 0 ) return true; // tag found
-               else return false; // tag not found
+               return true;
        };
 
        };
 
-       this.edCloseAllTags = function() {
-               var count = t.OpenTags.length;
-               for ( var o = 0; o < count; o++ )
-                       t.edInsertTag(t.OpenTags[t.OpenTags.length - 1]);
+       // a plain, dumb button
+       qt.Button = function(id, display, access, title, instance) {
+               var t = this;
+               t.id = id;
+               t.display = display;
+               t.access = access;
+               t.title = title || '';
+               t.instance = instance || '';
+       };
+       qt.Button.prototype.html = function(idPrefix) {
+               var access = this.access ? ' accesskey="' + this.access + '"' : '';
+               return '<input type="button" id="' + idPrefix + this.id + '"' + access + ' class="ed_button" title="' + this.title + '" value="' + this.display + '" />';
+       };
+       qt.Button.prototype.callback = function(){};
+
+       // a button that inserts HTML tag
+       qt.TagButton = function(id, display, tagStart, tagEnd, access, title, instance) {
+               var t = this;
+               qt.Button.call(t, id, display, access, title, instance);
+               t.tagStart = tagStart;
+               t.tagEnd = tagEnd;
        };
        };
+       qt.TagButton.prototype = new qt.Button();
+       qt.TagButton.prototype.openTag = function(e, ed) {
+               var t = this;
 
 
-       this.edQuickLink = function(i, thisSelect) {
-               if ( i > -1 ) {
-                       var newWin = '', tempStr;
-                       if ( Links[i].newWin == 1 ) {
-                               newWin = ' target="_blank"';
+               if ( ! ed.openTags ) {
+                       ed.openTags = [];
+               }
+               if ( t.tagEnd ) {
+                       ed.openTags.push(t.id);
+                       e.value = '/' + e.value;
+               }
+       };
+       qt.TagButton.prototype.closeTag = function(e, ed) {
+               var t = this, i = t.isOpen(ed);
+
+               if ( i !== false ) {
+                       ed.openTags.splice(i, 1);
+               }
+
+               e.value = t.display;
+       };
+       // whether a tag is open or not. Returns false if not open, or current open depth of the tag
+       qt.TagButton.prototype.isOpen = function (ed) {
+               var t = this, i = 0, ret = false;
+               if ( ed.openTags ) {
+                       while ( ret === false && i < ed.openTags.length ) {
+                               ret = ed.openTags[i] == t.id ? i : false;
+                               i ++;
                        }
                        }
-                       tempStr = '<a href="' + Links[i].URL + '"' + newWin + '>'
-                                   + Links[i].display
-                                   + '</a>';
-                       thisSelect.selectedIndex = 0;
-                       edInsertContent(t.Canvas, tempStr);
                } else {
                } else {
-                       thisSelect.selectedIndex = 0;
+                       ret = false;
                }
                }
+               return ret;
        };
        };
+       qt.TagButton.prototype.callback = function(element, canvas, ed) {
+               var t = this, startPos, endPos, cursorPos, scrollTop, v = canvas.value, l, r, i, sel, endTag = v ? t.tagEnd : '';
 
 
-       // insertion code
-       t.edInsertTag = function(i) {
-               //IE support
-               if ( document.selection ) {
-                       t.Canvas.focus();
-                   sel = document.selection.createRange();
+               if ( document.selection ) { // IE
+                       canvas.focus();
+                       sel = document.selection.createRange();
                        if ( sel.text.length > 0 ) {
                        if ( sel.text.length > 0 ) {
-                               sel.text = t.Buttons[i].tagStart + sel.text + t.Buttons[i].tagEnd;
+                               if ( !t.tagEnd )
+                                       sel.text = sel.text + t.tagStart;
+                               else
+                                       sel.text = t.tagStart + sel.text + endTag;
                        } else {
                        } else {
-                               if ( ! t.edCheckOpenTags(i) || t.Buttons[i].tagEnd == '' ) {
-                                       sel.text = t.Buttons[i].tagStart;
-                                       t.edAddTag(i);
+                               if ( !t.tagEnd ) {
+                                       sel.text = t.tagStart;
+                               } else if ( t.isOpen(ed) === false ) {
+                                       sel.text = t.tagStart;
+                                       t.openTag(element, ed);
                                } else {
                                } else {
-                                       sel.text = t.Buttons[i].tagEnd;
-                                       t.edRemoveTag(i);
+                                       sel.text = endTag;
+                                       t.closeTag(element, ed);
                                }
                        }
                                }
                        }
-                       t.Canvas.focus();
-               } else if ( t.Canvas.selectionStart || t.Canvas.selectionStart == '0' ) { //MOZILLA/NETSCAPE support
-                       var startPos = t.Canvas.selectionStart, endPos = t.Canvas.selectionEnd, cursorPos = endPos, scrollTop = t.Canvas.scrollTop;
-
+                       canvas.focus();
+               } else if ( canvas.selectionStart || canvas.selectionStart == '0' ) { // FF, WebKit, Opera
+                       startPos = canvas.selectionStart;
+                       endPos = canvas.selectionEnd;
+                       cursorPos = endPos;
+                       scrollTop = canvas.scrollTop;
+                       l = v.substring(0, startPos); // left of the selection
+                       r = v.substring(endPos, v.length); // right of the selection
+                       i = v.substring(startPos, endPos); // inside the selection
                        if ( startPos != endPos ) {
                        if ( startPos != endPos ) {
-                               t.Canvas.value = t.Canvas.value.substring(0, startPos)
-                                             + t.Buttons[i].tagStart
-                                             + t.Canvas.value.substring(startPos, endPos)
-                                             + t.Buttons[i].tagEnd
-                                             + t.Canvas.value.substring(endPos, t.Canvas.value.length);
-                               cursorPos += t.Buttons[i].tagStart.length + t.Buttons[i].tagEnd.length;
+                               if ( !t.tagEnd ) {
+                                       canvas.value = l + i + t.tagStart + r; // insert self closing tags after the selection
+                                       cursorPos += t.tagStart.length;
+                               } else {
+                                       canvas.value = l + t.tagStart + i + endTag + r;
+                                       cursorPos += t.tagStart.length + endTag.length;
+                               }
                        } else {
                        } else {
-                               if ( !t.edCheckOpenTags(i) || t.Buttons[i].tagEnd == '' ) {
-                                       t.Canvas.value = t.Canvas.value.substring(0, startPos)
-                                                     + t.Buttons[i].tagStart
-                                                     + t.Canvas.value.substring(endPos, t.Canvas.value.length);
-                                       t.edAddTag(i);
-                                       cursorPos = startPos + t.Buttons[i].tagStart.length;
+                               if ( !t.tagEnd ) {
+                                       canvas.value = l + t.tagStart + r;
+                                       cursorPos = startPos + t.tagStart.length;
+                               } else if ( t.isOpen(ed) === false ) {
+                                       canvas.value = l + t.tagStart + r;
+                                       t.openTag(element, ed);
+                                       cursorPos = startPos + t.tagStart.length;
                                } else {
                                } else {
-                                       t.Canvas.value = t.Canvas.value.substring(0, startPos)
-                                                     + t.Buttons[i].tagEnd
-                                                     + t.Canvas.value.substring(endPos, t.Canvas.value.length);
-                                       t.edRemoveTag(i);
-                                       cursorPos = startPos + t.Buttons[i].tagEnd.length;
+                                       canvas.value = l + endTag + r;
+                                       cursorPos = startPos + endTag.length;
+                                       t.closeTag(element, ed);
                                }
                        }
                                }
                        }
-                       t.Canvas.focus();
-                       t.Canvas.selectionStart = cursorPos;
-                       t.Canvas.selectionEnd = cursorPos;
-                       t.Canvas.scrollTop = scrollTop;
-               } else {
-                       if ( ! t.edCheckOpenTags(i) || t.Buttons[i].tagEnd == '' ) {
-                               t.Canvas.value += Buttons[i].tagStart;
-                               t.edAddTag(i);
+
+                       canvas.focus();
+                       canvas.selectionStart = cursorPos;
+                       canvas.selectionEnd = cursorPos;
+                       canvas.scrollTop = scrollTop;
+               } else { // other browsers?
+                       if ( !endTag ) {
+                               canvas.value += t.tagStart;
+                       } else if ( t.isOpen(ed) !== false ) {
+                               canvas.value += t.tagStart;
+                               t.openTag(element, ed);
                        } else {
                        } else {
-                               t.Canvas.value += Buttons[i].tagEnd;
-                               t.edRemoveTag(i);
+                               canvas.value += endTag;
+                               t.closeTag(element, ed);
+                       }
+                       canvas.focus();
+               }
+       };
+
+       // the spell button
+       qt.SpellButton = function() {
+               qt.Button.call(this, 'spell', quicktagsL10n.lookup, '', quicktagsL10n.dictionaryLookup);
+       };
+       qt.SpellButton.prototype = new qt.Button();
+       qt.SpellButton.prototype.callback = function(element, canvas, ed) {
+               var word = '', sel, startPos, endPos;
+
+               if ( document.selection ) {
+                       canvas.focus();
+                       sel = document.selection.createRange();
+                       if ( sel.text.length > 0 ) {
+                               word = sel.text;
+                       }
+               } else if ( canvas.selectionStart || canvas.selectionStart == '0' ) {
+                       startPos = canvas.selectionStart;
+                       endPos = canvas.selectionEnd;
+                       if ( startPos != endPos ) {
+                               word = canvas.value.substring(startPos, endPos);
+                       }
+               }
+
+               if ( word === '' ) {
+                       word = prompt(quicktagsL10n.wordLookup, '');
+               }
+
+               if ( word !== null && /^\w[\w ]*$/.test(word)) {
+                       window.open('http://www.answers.com/' + encodeURIComponent(word));
+               }
+       };
+
+       // the close tags button
+       qt.CloseButton = function() {
+               qt.Button.call(this, 'close', quicktagsL10n.closeTags, '', quicktagsL10n.closeAllOpenTags);
+       };
+
+       qt.CloseButton.prototype = new qt.Button();
+
+       qt._close = function(e, c, ed) {
+               var button, element, tbo = ed.openTags;
+
+               if ( tbo ) {
+                       while ( tbo.length > 0 ) {
+                               button = ed.getButton(tbo[tbo.length - 1]);
+                               element = document.getElementById(ed.name + '_' + button.id);
+
+                               if ( e )
+                                       button.callback.call(button, element, c, ed);
+                               else
+                                       button.closeTag(element, ed);
                        }
                        }
-                       t.Canvas.focus();
                }
        };
 
                }
        };
 
-       this.edInsertLink = function(i, defaultValue) {
+       qt.CloseButton.prototype.callback = qt._close;
+
+       qt.closeAllTags = function(editor_id) {
+               var ed = this.getInstance(editor_id);
+               qt._close('', ed.canvas, ed);
+       };
+
+       // the link button
+       qt.LinkButton = function() {
+               qt.TagButton.call(this, 'link', 'link', '', '</a>', 'a');
+       };
+       qt.LinkButton.prototype = new qt.TagButton();
+       qt.LinkButton.prototype.callback = function(e, c, ed, defaultValue) {
+               var URL, t = this;
+
+               if ( typeof(wpLink) != 'undefined' ) {
+                       wpLink.open();
+                       return;
+               }
+
                if ( ! defaultValue )
                        defaultValue = 'http://';
 
                if ( ! defaultValue )
                        defaultValue = 'http://';
 
-               if ( ! t.edCheckOpenTags(i) ) {
-                       var URL = prompt(quicktagsL10n.enterURL, defaultValue);
+               if ( t.isOpen(ed) === false ) {
+                       URL = prompt(quicktagsL10n.enterURL, defaultValue);
                        if ( URL ) {
                        if ( URL ) {
-                               t.Buttons[i].tagStart = '<a href="' + URL + '">';
-                               t.edInsertTag(i);
+                               t.tagStart = '<a href="' + URL + '">';
+                               qt.TagButton.prototype.callback.call(t, e, c, ed);
                        }
                } else {
                        }
                } else {
-                       t.edInsertTag(i);
+                       qt.TagButton.prototype.callback.call(t, e, c, ed);
                }
        };
 
                }
        };
 
-       this.edInsertImage = function() {
-               var myValue = prompt(quicktagsL10n.enterImageURL, 'http://');
-               if ( myValue ) {
-                       myValue = '<img src="'
-                                       + myValue
-                                       + '" alt="' + prompt(quicktagsL10n.enterImageDescription, '')
-                                       + '" />';
-                       edInsertContent(t.Canvas, myValue);
+       // the img button
+       qt.ImgButton = function() {
+               qt.TagButton.call(this, 'img', 'img', '', '', 'm');
+       };
+       qt.ImgButton.prototype = new qt.TagButton();
+       qt.ImgButton.prototype.callback = function(e, c, ed, defaultValue) {
+               if ( ! defaultValue ) {
+                       defaultValue = 'http://';
                }
                }
+               var src = prompt(quicktagsL10n.enterImageURL, defaultValue), alt;
+               if ( src ) {
+                       alt = prompt(quicktagsL10n.enterImageDescription, '');
+                       this.tagStart = '<img src="' + src + '" alt="' + alt + '" />';
+                       qt.TagButton.prototype.callback.call(this, e, c, ed);
+               }
+       };
+
+       qt.FullscreenButton = function() {
+               qt.Button.call(this, 'fullscreen', quicktagsL10n.fullscreen, 'f', quicktagsL10n.toggleFullscreen);
+       };
+       qt.FullscreenButton.prototype = new qt.Button();
+       qt.FullscreenButton.prototype.callback = function(e, c) {
+               if ( c.id != 'content' || typeof(fullscreen) == 'undefined' )
+                       return;
+
+               fullscreen.on();
        };
 
        };
 
-       t.Buttons[t.Buttons.length] = new edButton(name+'_strong','b','<strong>','</strong>','b');
-       t.Buttons[t.Buttons.length] = new edButton(name+'_em','i','<em>','</em>','i');
-       t.Buttons[t.Buttons.length] = new edButton(name+'_link','link','','</a>','a'); // special case
-       t.Buttons[t.Buttons.length] = new edButton(name+'_block','b-quote','\n\n<blockquote>','</blockquote>\n\n','q');
-       t.Buttons[t.Buttons.length] = new edButton(name+'_del','del','<del datetime="' + datetime + '">','</del>','d');
-       t.Buttons[t.Buttons.length] = new edButton(name+'_ins','ins','<ins datetime="' + datetime + '">','</ins>','s');
-       t.Buttons[t.Buttons.length] = new edButton(name+'_img','img','','','m',-1); // special case
-       t.Buttons[t.Buttons.length] = new edButton(name+'_ul','ul','<ul>\n','</ul>\n\n','u');
-       t.Buttons[t.Buttons.length] = new edButton(name+'_ol','ol','<ol>\n','</ol>\n\n','o');
-       t.Buttons[t.Buttons.length] = new edButton(name+'_li','li','\t<li>','</li>\n','l');
-       t.Buttons[t.Buttons.length] = new edButton(name+'_code','code','<code>','</code>','c');
-       t.Buttons[t.Buttons.length] = new edButton(name+'_more','more','<!--more-->','','t',-1);
-//     t.Buttons[t.Buttons.length] = new edButton(name+'_next','page','<!--nextpage-->','','p',-1);
-
-       tb = document.createElement('div');
-       tb.id = name+'_qtags';
-
-       html = '<div id="'+name+'_toolbar">';
-       for (i = 0; i < t.Buttons.length; i++)
-               html += t.edShowButton(t.Buttons[i], i);
-
-       html += '<input type="button" id="'+name+'_ed_spell" class="ed_button" onclick="edSpell('+name+'.Canvas);" title="' + quicktagsL10n.dictionaryLookup + '" value="' + quicktagsL10n.lookup + '" />';
-       html += '<input type="button" id="'+name+'_ed_close" class="ed_button" onclick="'+name+'.edCloseAllTags();" title="' + quicktagsL10n.closeAllOpenTags + '" value="' + quicktagsL10n.closeTags + '" /></div>';
-
-       tb.innerHTML = html;
-       cont.parentNode.insertBefore(tb, cont);
-
-};
+       // ensure backward compatibility
+       edButtons[10] = new qt.TagButton('strong','b','<strong>','</strong>','b');
+       edButtons[20] = new qt.TagButton('em','i','<em>','</em>','i'),
+       edButtons[30] = new qt.LinkButton(), // special case
+       edButtons[40] = new qt.TagButton('block','b-quote','\n\n<blockquote>','</blockquote>\n\n','q'),
+       edButtons[50] = new qt.TagButton('del','del','<del datetime="' + _datetime + '">','</del>','d'),
+       edButtons[60] = new qt.TagButton('ins','ins','<ins datetime="' + _datetime + '">','</ins>','s'),
+       edButtons[70] = new qt.ImgButton(), // special case
+       edButtons[80] = new qt.TagButton('ul','ul','<ul>\n','</ul>\n\n','u'),
+       edButtons[90] = new qt.TagButton('ol','ol','<ol>\n','</ol>\n\n','o'),
+       edButtons[100] = new qt.TagButton('li','li','\t<li>','</li>\n','l'),
+       edButtons[110] = new qt.TagButton('code','code','<code>','</code>','c'),
+       edButtons[120] = new qt.TagButton('more','more','<!--more-->','','t'),
+       edButtons[130] = new qt.SpellButton(),
+       edButtons[140] = new qt.CloseButton()
+
+})();
index e179e1b482fc097cf990436192aadb8e5bb70eb8..fb2ed4fef57126c6df7c1d1dd186af85c2ddabd1 100644 (file)
@@ -1 +1 @@
-var edButtons=new Array(),edLinks=new Array(),edOpenTags=new Array(),now=new Date(),datetime;function edButton(f,e,c,b,a,d){this.id=f;this.display=e;this.tagStart=c;this.tagEnd=b;this.access=a;this.open=d}function zeroise(b,a){var c=b.toString();if(b<0){c=c.substr(1,c.length)}while(c.length<a){c="0"+c}if(b<0){c="-"+c}return c}datetime=now.getUTCFullYear()+"-"+zeroise(now.getUTCMonth()+1,2)+"-"+zeroise(now.getUTCDate(),2)+"T"+zeroise(now.getUTCHours(),2)+":"+zeroise(now.getUTCMinutes(),2)+":"+zeroise(now.getUTCSeconds(),2)+"+00:00";edButtons[edButtons.length]=new edButton("ed_strong","b","<strong>","</strong>","b");edButtons[edButtons.length]=new edButton("ed_em","i","<em>","</em>","i");edButtons[edButtons.length]=new edButton("ed_link","link","","</a>","a");edButtons[edButtons.length]=new edButton("ed_block","b-quote","\n\n<blockquote>","</blockquote>\n\n","q");edButtons[edButtons.length]=new edButton("ed_del","del",'<del datetime="'+datetime+'">',"</del>","d");edButtons[edButtons.length]=new edButton("ed_ins","ins",'<ins datetime="'+datetime+'">',"</ins>","s");edButtons[edButtons.length]=new edButton("ed_img","img","","","m",-1);edButtons[edButtons.length]=new edButton("ed_ul","ul","<ul>\n","</ul>\n\n","u");edButtons[edButtons.length]=new edButton("ed_ol","ol","<ol>\n","</ol>\n\n","o");edButtons[edButtons.length]=new edButton("ed_li","li","\t<li>","</li>\n","l");edButtons[edButtons.length]=new edButton("ed_code","code","<code>","</code>","c");edButtons[edButtons.length]=new edButton("ed_more","more","<!--more-->","","t",-1);function edLink(){this.display="";this.URL="";this.newWin=0}edLinks[edLinks.length]=new edLink("WordPress","http://wordpress.org/");edLinks[edLinks.length]=new edLink("alexking.org","http://www.alexking.org/");function edShowButton(b,a){if(b.id=="ed_img"){document.write('<input type="button" id="'+b.id+'" accesskey="'+b.access+'" class="ed_button" onclick="edInsertImage(edCanvas);" value="'+b.display+'" />')}else{if(b.id=="ed_link"){document.write('<input type="button" id="'+b.id+'" accesskey="'+b.access+'" class="ed_button" onclick="edInsertLink(edCanvas, '+a+');" value="'+b.display+'" />')}else{document.write('<input type="button" id="'+b.id+'" accesskey="'+b.access+'" class="ed_button" onclick="edInsertTag(edCanvas, '+a+');" value="'+b.display+'"  />')}}}function edShowLinks(){var a='<select onchange="edQuickLink(this.options[this.selectedIndex].value, this);"><option value="-1" selected>'+quicktagsL10n.quickLinks+"</option>",b;for(b=0;b<edLinks.length;b++){a+='<option value="'+b+'">'+edLinks[b].display+"</option>"}a+="</select>";document.write(a)}function edAddTag(a){if(edButtons[a].tagEnd!=""){edOpenTags[edOpenTags.length]=a;document.getElementById(edButtons[a].id).value="/"+document.getElementById(edButtons[a].id).value}}function edRemoveTag(b){for(var a=0;a<edOpenTags.length;a++){if(edOpenTags[a]==b){edOpenTags.splice(a,1);document.getElementById(edButtons[b].id).value=document.getElementById(edButtons[b].id).value.replace("/","")}}}function edCheckOpenTags(c){var a=0,b;for(b=0;b<edOpenTags.length;b++){if(edOpenTags[b]==c){a++}}if(a>0){return true}else{return false}}function edCloseAllTags(){var a=edOpenTags.length,b;for(b=0;b<a;b++){edInsertTag(edCanvas,edOpenTags[edOpenTags.length-1])}}function edQuickLink(c,d){if(c>-1){var b="",a;if(edLinks[c].newWin==1){b=' target="_blank"'}a='<a href="'+edLinks[c].URL+'"'+b+">"+edLinks[c].display+"</a>";d.selectedIndex=0;edInsertContent(edCanvas,a)}else{d.selectedIndex=0}}function edSpell(c){var e="",d,b,a;if(document.selection){c.focus();d=document.selection.createRange();if(d.text.length>0){e=d.text}}else{if(c.selectionStart||c.selectionStart=="0"){b=c.selectionStart;a=c.selectionEnd;if(b!=a){e=c.value.substring(b,a)}}}if(e==""){e=prompt(quicktagsL10n.wordLookup,"")}if(e!==null&&/^\w[\w ]*$/.test(e)){window.open("http://www.answers.com/"+escape(e))}}function edToolbar(){document.write('<div id="ed_toolbar">');for(var a=0;a<edButtons.length;a++){edShowButton(edButtons[a],a)}document.write('<input type="button" id="ed_spell" class="ed_button" onclick="edSpell(edCanvas);" title="'+quicktagsL10n.dictionaryLookup+'" value="'+quicktagsL10n.lookup+'" />');document.write('<input type="button" id="ed_close" class="ed_button" onclick="edCloseAllTags();" title="'+quicktagsL10n.closeAllOpenTags+'" value="'+quicktagsL10n.closeTags+'" />');document.write('<input type="button" id="ed_fullscreen" class="ed_button" onclick="fullscreen.on();" title="'+quicktagsL10n.toggleFullscreen+'" value="'+quicktagsL10n.fullscreen+'" />');document.write("</div>")}function edInsertTag(d,c){if(document.selection){d.focus();var e=document.selection.createRange();if(e.text.length>0){e.text=edButtons[c].tagStart+e.text+edButtons[c].tagEnd}else{if(!edCheckOpenTags(c)||edButtons[c].tagEnd==""){e.text=edButtons[c].tagStart;edAddTag(c)}else{e.text=edButtons[c].tagEnd;edRemoveTag(c)}}d.focus()}else{if(d.selectionStart||d.selectionStart=="0"){var b=d.selectionStart,a=d.selectionEnd,g=a,f=d.scrollTop;if(b!=a){d.value=d.value.substring(0,b)+edButtons[c].tagStart+d.value.substring(b,a)+edButtons[c].tagEnd+d.value.substring(a,d.value.length);g+=edButtons[c].tagStart.length+edButtons[c].tagEnd.length}else{if(!edCheckOpenTags(c)||edButtons[c].tagEnd==""){d.value=d.value.substring(0,b)+edButtons[c].tagStart+d.value.substring(a,d.value.length);edAddTag(c);g=b+edButtons[c].tagStart.length}else{d.value=d.value.substring(0,b)+edButtons[c].tagEnd+d.value.substring(a,d.value.length);edRemoveTag(c);g=b+edButtons[c].tagEnd.length}}d.focus();d.selectionStart=g;d.selectionEnd=g;d.scrollTop=f}else{if(!edCheckOpenTags(c)||edButtons[c].tagEnd==""){d.value+=edButtons[c].tagStart;edAddTag(c)}else{d.value+=edButtons[c].tagEnd;edRemoveTag(c)}d.focus()}}}function edInsertContent(d,c){var e,b,a,f;if(document.selection){d.focus();e=document.selection.createRange();e.text=c;d.focus()}else{if(d.selectionStart||d.selectionStart=="0"){b=d.selectionStart;a=d.selectionEnd;f=d.scrollTop;d.value=d.value.substring(0,b)+c+d.value.substring(a,d.value.length);d.focus();d.selectionStart=b+c.length;d.selectionEnd=b+c.length;d.scrollTop=f}else{d.value+=c;d.focus()}}}function edInsertLink(d,c,b){if("object"==typeof(wpLink)){wpLink.open()}else{if(!b){b="http://"}if(!edCheckOpenTags(c)){var a=prompt(quicktagsL10n.enterURL,b);if(a){edButtons[c].tagStart='<a href="'+a+'">';edInsertTag(d,c)}}else{edInsertTag(d,c)}}}function edInsertImage(b){var a=prompt(quicktagsL10n.enterImageURL,"http://");if(a){a='<img src="'+a+'" alt="'+prompt(quicktagsL10n.enterImageDescription,"")+'" />';edInsertContent(b,a)}}var QTags=function(a,c,b,f){var j=this,k=document.getElementById(b),g,l,e,h,d;j.Buttons=[];j.Links=[];j.OpenTags=[];j.Canvas=document.getElementById(c);if(!j.Canvas||!k){return}f=(typeof f!="undefined")?","+f+",":"";j.edShowButton=function(n,m){if(f&&(f.indexOf(","+n.display+",")!=-1)){return""}else{if(n.id==a+"_img"){return'<input type="button" id="'+n.id+'" accesskey="'+n.access+'" class="ed_button" onclick="edInsertImage('+a+'.Canvas);" value="'+n.display+'" />'}else{if(n.id==a+"_link"){return'<input type="button" id="'+n.id+'" accesskey="'+n.access+'" class="ed_button" onclick="'+a+".edInsertLink("+m+');" value="'+n.display+'" />'}else{return'<input type="button" id="'+n.id+'" accesskey="'+n.access+'" class="ed_button" onclick="'+a+".edInsertTag("+m+');" value="'+n.display+'" />'}}}};j.edAddTag=function(i){if(j.Buttons[i].tagEnd!=""){j.OpenTags[j.OpenTags.length]=i;document.getElementById(j.Buttons[i].id).value="/"+document.getElementById(j.Buttons[i].id).value}};j.edRemoveTag=function(i){for(g=0;g<j.OpenTags.length;g++){if(j.OpenTags[g]==i){j.OpenTags.splice(g,1);document.getElementById(j.Buttons[i].id).value=document.getElementById(j.Buttons[i].id).value.replace("/","")}}};j.edCheckOpenTags=function(n){l=0;for(var m=0;m<j.OpenTags.length;m++){if(j.OpenTags[m]==n){l++}}if(l>0){return true}else{return false}};this.edCloseAllTags=function(){var i=j.OpenTags.length;for(var m=0;m<i;m++){j.edInsertTag(j.OpenTags[j.OpenTags.length-1])}};this.edQuickLink=function(o,p){if(o>-1){var n="",m;if(Links[o].newWin==1){n=' target="_blank"'}m='<a href="'+Links[o].URL+'"'+n+">"+Links[o].display+"</a>";p.selectedIndex=0;edInsertContent(j.Canvas,m)}else{p.selectedIndex=0}};j.edInsertTag=function(o){if(document.selection){j.Canvas.focus();d=document.selection.createRange();if(d.text.length>0){d.text=j.Buttons[o].tagStart+d.text+j.Buttons[o].tagEnd}else{if(!j.edCheckOpenTags(o)||j.Buttons[o].tagEnd==""){d.text=j.Buttons[o].tagStart;j.edAddTag(o)}else{d.text=j.Buttons[o].tagEnd;j.edRemoveTag(o)}}j.Canvas.focus()}else{if(j.Canvas.selectionStart||j.Canvas.selectionStart=="0"){var n=j.Canvas.selectionStart,m=j.Canvas.selectionEnd,q=m,p=j.Canvas.scrollTop;if(n!=m){j.Canvas.value=j.Canvas.value.substring(0,n)+j.Buttons[o].tagStart+j.Canvas.value.substring(n,m)+j.Buttons[o].tagEnd+j.Canvas.value.substring(m,j.Canvas.value.length);q+=j.Buttons[o].tagStart.length+j.Buttons[o].tagEnd.length}else{if(!j.edCheckOpenTags(o)||j.Buttons[o].tagEnd==""){j.Canvas.value=j.Canvas.value.substring(0,n)+j.Buttons[o].tagStart+j.Canvas.value.substring(m,j.Canvas.value.length);j.edAddTag(o);q=n+j.Buttons[o].tagStart.length}else{j.Canvas.value=j.Canvas.value.substring(0,n)+j.Buttons[o].tagEnd+j.Canvas.value.substring(m,j.Canvas.value.length);j.edRemoveTag(o);q=n+j.Buttons[o].tagEnd.length}}j.Canvas.focus();j.Canvas.selectionStart=q;j.Canvas.selectionEnd=q;j.Canvas.scrollTop=p}else{if(!j.edCheckOpenTags(o)||j.Buttons[o].tagEnd==""){j.Canvas.value+=Buttons[o].tagStart;j.edAddTag(o)}else{j.Canvas.value+=Buttons[o].tagEnd;j.edRemoveTag(o)}j.Canvas.focus()}}};this.edInsertLink=function(o,n){if(!n){n="http://"}if(!j.edCheckOpenTags(o)){var m=prompt(quicktagsL10n.enterURL,n);if(m){j.Buttons[o].tagStart='<a href="'+m+'">';j.edInsertTag(o)}}else{j.edInsertTag(o)}};this.edInsertImage=function(){var i=prompt(quicktagsL10n.enterImageURL,"http://");if(i){i='<img src="'+i+'" alt="'+prompt(quicktagsL10n.enterImageDescription,"")+'" />';edInsertContent(j.Canvas,i)}};j.Buttons[j.Buttons.length]=new edButton(a+"_strong","b","<strong>","</strong>","b");j.Buttons[j.Buttons.length]=new edButton(a+"_em","i","<em>","</em>","i");j.Buttons[j.Buttons.length]=new edButton(a+"_link","link","","</a>","a");j.Buttons[j.Buttons.length]=new edButton(a+"_block","b-quote","\n\n<blockquote>","</blockquote>\n\n","q");j.Buttons[j.Buttons.length]=new edButton(a+"_del","del",'<del datetime="'+datetime+'">',"</del>","d");j.Buttons[j.Buttons.length]=new edButton(a+"_ins","ins",'<ins datetime="'+datetime+'">',"</ins>","s");j.Buttons[j.Buttons.length]=new edButton(a+"_img","img","","","m",-1);j.Buttons[j.Buttons.length]=new edButton(a+"_ul","ul","<ul>\n","</ul>\n\n","u");j.Buttons[j.Buttons.length]=new edButton(a+"_ol","ol","<ol>\n","</ol>\n\n","o");j.Buttons[j.Buttons.length]=new edButton(a+"_li","li","\t<li>","</li>\n","l");j.Buttons[j.Buttons.length]=new edButton(a+"_code","code","<code>","</code>","c");j.Buttons[j.Buttons.length]=new edButton(a+"_more","more","<!--more-->","","t",-1);e=document.createElement("div");e.id=a+"_qtags";h='<div id="'+a+'_toolbar">';for(g=0;g<j.Buttons.length;g++){h+=j.edShowButton(j.Buttons[g],g)}h+='<input type="button" id="'+a+'_ed_spell" class="ed_button" onclick="edSpell('+a+'.Canvas);" title="'+quicktagsL10n.dictionaryLookup+'" value="'+quicktagsL10n.lookup+'" />';h+='<input type="button" id="'+a+'_ed_close" class="ed_button" onclick="'+a+'.edCloseAllTags();" title="'+quicktagsL10n.closeAllOpenTags+'" value="'+quicktagsL10n.closeTags+'" /></div>';e.innerHTML=h;k.parentNode.insertBefore(e,k)};
\ No newline at end of file
+var QTags,edButtons=[],edCanvas,edAddTag=function(){},edCheckOpenTags=function(){},edCloseAllTags=function(){},edInsertImage=function(){},edInsertLink=function(){},edInsertTag=function(){},edLink=function(){},edQuickLink=function(){},edRemoveTag=function(){},edShowButton=function(){},edShowLinks=function(){},edSpell=function(){},edToolbar=function(){};function quicktags(a){return new QTags(a)}function edInsertContent(b,a){return QTags.insertContent(a)}function edButton(f,e,c,b,a,d){return QTags.addButton(f,e,c,b,a,"",-1)}(function(){var b=function(g){var f,e,d;if(typeof jQuery!="undefined"){jQuery(document).ready(g)}else{f=b;f.funcs=[];f.ready=function(){if(!f.isReady){f.isReady=true;for(e=0;e<f.funcs.length;e++){f.funcs[e]()}}};if(f.isReady){g()}else{f.funcs.push(g)}if(!f.eventAttached){if(document.addEventListener){d=function(){document.removeEventListener("DOMContentLoaded",d,false);f.ready()};document.addEventListener("DOMContentLoaded",d,false);window.addEventListener("load",f.ready,false)}else{if(document.attachEvent){d=function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",d);f.ready()}};document.attachEvent("onreadystatechange",d);window.attachEvent("onload",f.ready);(function(){try{document.documentElement.doScroll("left")}catch(h){setTimeout(arguments.callee,50);return}f.ready()})()}}f.eventAttached=true}}},a=(function(){var d=new Date(),e;e=function(f){var g=f.toString();if(g.length<2){g="0"+g}return g};return d.getUTCFullYear()+"-"+e(d.getUTCMonth()+1)+"-"+e(d.getUTCDate())+"T"+e(d.getUTCHours())+":"+e(d.getUTCMinutes())+":"+e(d.getUTCSeconds())+"+00:00"})(),c;c=QTags=function(j){if(typeof(j)=="string"){j={id:j}}else{if(typeof(j)!="object"){return false}}var i=this,k=j.id,h=document.getElementById(k),g="qt_"+k,d,f,e;if(!k||!h){return false}i.name=g;i.id=k;i.canvas=h;i.settings=j;if(k=="content"&&typeof(adminpage)=="string"&&(adminpage=="post-new-php"||adminpage=="post-php")){edCanvas=h;e="ed_toolbar"}else{e=g+"_toolbar"}d=document.createElement("div");d.id=e;d.className="quicktags-toolbar";h.parentNode.insertBefore(d,h);i.toolbar=d;f=function(n){n=n||window.event;var m=n.target||n.srcElement,l;if(/ ed_button /.test(" "+m.className+" ")){i.canvas=h=document.getElementById(k);l=m.id.replace(g+"_","");if(i.theButtons[l]){i.theButtons[l].callback.call(i.theButtons[l],m,h,i)}}};if(d.addEventListener){d.addEventListener("click",f,false)}else{if(d.attachEvent){d.attachEvent("onclick",f)}}i.getButton=function(l){return i.theButtons[l]};i.getButtonElement=function(l){return document.getElementById(g+"_"+l)};c.instances[k]=i;if(!c.instances[0]){c.instances[0]=c.instances[k];b(function(){c._buttonsInit()})}};c.instances={};c.getInstance=function(d){return c.instances[d]};c._buttonsInit=function(){var p=this,g,e,h,o,m,l,n,f,k,d,j=",strong,em,link,block,del,ins,img,ul,ol,li,code,more,spell,close,";for(l in p.instances){if(l==0){continue}n=p.instances[l];g=n.canvas;e=n.name;h=n.settings;m="";o={};d="";if(h.buttons){d=","+h.buttons+","}for(k in edButtons){if(!edButtons[k]){continue}f=edButtons[k].id;if(d&&j.indexOf(","+f+",")!=-1&&d.indexOf(","+f+",")==-1){continue}if(!edButtons[k].instance||edButtons[k].instance==l){o[f]=edButtons[k];if(edButtons[k].html){m+=edButtons[k].html(e+"_")}}}if(d&&d.indexOf(",fullscreen,")!=-1){o.fullscreen=new c.FullscreenButton();m+=o.fullscreen.html(e+"_")}n.toolbar.innerHTML=m;n.theButtons=o}p.buttonsInitDone=true};c.addButton=function(e,i,h,g,d,j,k,l){var f;if(!e||!i){return}k=k||0;g=g||"";if(typeof(h)==="function"){f=new c.Button(e,i,d,j,l);f.callback=h}else{if(typeof(h)==="string"){f=new c.TagButton(e,i,h,g,d,j,l)}else{return}}if(k==-1){return f}if(k>0){while(typeof(edButtons[k])!="undefined"){k++}edButtons[k]=f}else{edButtons[edButtons.length]=f}if(this.buttonsInitDone){this._buttonsInit()}};c.insertContent=function(g){var h,f,e,i,j,d=document.getElementById(wpActiveEditor);if(!d){return false}if(document.selection){d.focus();h=document.selection.createRange();h.text=g;d.focus()}else{if(d.selectionStart||d.selectionStart=="0"){j=d.value;f=d.selectionStart;e=d.selectionEnd;i=d.scrollTop;d.value=j.substring(0,f)+g+j.substring(e,j.length);d.focus();d.selectionStart=f+g.length;d.selectionEnd=f+g.length;d.scrollTop=i}else{d.value+=g;d.focus()}}return true};c.Button=function(i,g,e,h,d){var f=this;f.id=i;f.display=g;f.access=e;f.title=h||"";f.instance=d||""};c.Button.prototype.html=function(e){var d=this.access?' accesskey="'+this.access+'"':"";return'<input type="button" id="'+e+this.id+'"'+d+' class="ed_button" title="'+this.title+'" value="'+this.display+'" />'};c.Button.prototype.callback=function(){};c.TagButton=function(k,i,g,f,e,j,d){var h=this;c.Button.call(h,k,i,e,j,d);h.tagStart=g;h.tagEnd=f};c.TagButton.prototype=new c.Button();c.TagButton.prototype.openTag=function(g,d){var f=this;if(!d.openTags){d.openTags=[]}if(f.tagEnd){d.openTags.push(f.id);g.value="/"+g.value}};c.TagButton.prototype.closeTag=function(h,d){var g=this,f=g.isOpen(d);if(f!==false){d.openTags.splice(f,1)}h.value=g.display};c.TagButton.prototype.isOpen=function(d){var g=this,f=0,e=false;if(d.openTags){while(e===false&&f<d.openTags.length){e=d.openTags[f]==g.id?f:false;f++}}else{e=false}return e};c.TagButton.prototype.callback=function(o,h,p){var u=this,q,e,m,g,s=h.value,j,d,n,f,k=s?u.tagEnd:"";if(document.selection){h.focus();f=document.selection.createRange();if(f.text.length>0){if(!u.tagEnd){f.text=f.text+u.tagStart}else{f.text=u.tagStart+f.text+k}}else{if(!u.tagEnd){f.text=u.tagStart}else{if(u.isOpen(p)===false){f.text=u.tagStart;u.openTag(o,p)}else{f.text=k;u.closeTag(o,p)}}}h.focus()}else{if(h.selectionStart||h.selectionStart=="0"){q=h.selectionStart;e=h.selectionEnd;m=e;g=h.scrollTop;j=s.substring(0,q);d=s.substring(e,s.length);n=s.substring(q,e);if(q!=e){if(!u.tagEnd){h.value=j+n+u.tagStart+d;m+=u.tagStart.length}else{h.value=j+u.tagStart+n+k+d;m+=u.tagStart.length+k.length}}else{if(!u.tagEnd){h.value=j+u.tagStart+d;m=q+u.tagStart.length}else{if(u.isOpen(p)===false){h.value=j+u.tagStart+d;u.openTag(o,p);m=q+u.tagStart.length}else{h.value=j+k+d;m=q+k.length;u.closeTag(o,p)}}}h.focus();h.selectionStart=m;h.selectionEnd=m;h.scrollTop=g}else{if(!k){h.value+=u.tagStart}else{if(u.isOpen(p)!==false){h.value+=u.tagStart;u.openTag(o,p)}else{h.value+=k;u.closeTag(o,p)}}h.focus()}}};c.SpellButton=function(){c.Button.call(this,"spell",quicktagsL10n.lookup,"",quicktagsL10n.dictionaryLookup)};c.SpellButton.prototype=new c.Button();c.SpellButton.prototype.callback=function(h,g,d){var j="",i,f,e;if(document.selection){g.focus();i=document.selection.createRange();if(i.text.length>0){j=i.text}}else{if(g.selectionStart||g.selectionStart=="0"){f=g.selectionStart;e=g.selectionEnd;if(f!=e){j=g.value.substring(f,e)}}}if(j===""){j=prompt(quicktagsL10n.wordLookup,"")}if(j!==null&&/^\w[\w ]*$/.test(j)){window.open("http://www.answers.com/"+encodeURIComponent(j))}};c.CloseButton=function(){c.Button.call(this,"close",quicktagsL10n.closeTags,"",quicktagsL10n.closeAllOpenTags)};c.CloseButton.prototype=new c.Button();c._close=function(i,j,d){var g,f,h=d.openTags;if(h){while(h.length>0){g=d.getButton(h[h.length-1]);f=document.getElementById(d.name+"_"+g.id);if(i){g.callback.call(g,f,j,d)}else{g.closeTag(f,d)}}}};c.CloseButton.prototype.callback=c._close;c.closeAllTags=function(e){var d=this.getInstance(e);c._close("",d.canvas,d)};c.LinkButton=function(){c.TagButton.call(this,"link","link","","</a>","a")};c.LinkButton.prototype=new c.TagButton();c.LinkButton.prototype.callback=function(i,j,g,f){var d,h=this;if(typeof(wpLink)!="undefined"){wpLink.open();return}if(!f){f="http://"}if(h.isOpen(g)===false){d=prompt(quicktagsL10n.enterURL,f);if(d){h.tagStart='<a href="'+d+'">';c.TagButton.prototype.callback.call(h,i,j,g)}}else{c.TagButton.prototype.callback.call(h,i,j,g)}};c.ImgButton=function(){c.TagButton.call(this,"img","img","","","m")};c.ImgButton.prototype=new c.TagButton();c.ImgButton.prototype.callback=function(h,j,f,d){if(!d){d="http://"}var i=prompt(quicktagsL10n.enterImageURL,d),g;if(i){g=prompt(quicktagsL10n.enterImageDescription,"");this.tagStart='<img src="'+i+'" alt="'+g+'" />';c.TagButton.prototype.callback.call(this,h,j,f)}};c.FullscreenButton=function(){c.Button.call(this,"fullscreen",quicktagsL10n.fullscreen,"f",quicktagsL10n.toggleFullscreen)};c.FullscreenButton.prototype=new c.Button();c.FullscreenButton.prototype.callback=function(d,f){if(f.id!="content"||typeof(fullscreen)=="undefined"){return}fullscreen.on()};edButtons[10]=new c.TagButton("strong","b","<strong>","</strong>","b");edButtons[20]=new c.TagButton("em","i","<em>","</em>","i"),edButtons[30]=new c.LinkButton(),edButtons[40]=new c.TagButton("block","b-quote","\n\n<blockquote>","</blockquote>\n\n","q"),edButtons[50]=new c.TagButton("del","del",'<del datetime="'+a+'">',"</del>","d"),edButtons[60]=new c.TagButton("ins","ins",'<ins datetime="'+a+'">',"</ins>","s"),edButtons[70]=new c.ImgButton(),edButtons[80]=new c.TagButton("ul","ul","<ul>\n","</ul>\n\n","u"),edButtons[90]=new c.TagButton("ol","ol","<ol>\n","</ol>\n\n","o"),edButtons[100]=new c.TagButton("li","li","\t<li>","</li>\n","l"),edButtons[110]=new c.TagButton("code","code","<code>","</code>","c"),edButtons[120]=new c.TagButton("more","more","<!--more-->","","t"),edButtons[130]=new c.SpellButton(),edButtons[140]=new c.CloseButton()})();
\ No newline at end of file
index 72962690e8679ac098e7330619373594cab51577..8252ca9e24afc53759a251575d49923531b0e06b 100644 (file)
@@ -1,32 +1,32 @@
-/**\r
- * SWFUpload: http://www.swfupload.org, http://swfupload.googlecode.com\r
- *\r
- * mmSWFUpload 1.0: Flash upload dialog - http://profandesign.se/swfupload/,  http://www.vinterwebb.se/\r
- *\r
- * SWFUpload is (c) 2006-2007 Lars Huring, Olov Nilzén and Mammon Media and is released under the MIT License:\r
- * http://www.opensource.org/licenses/mit-license.php\r
- *\r
- * SWFUpload 2 is (c) 2007-2008 Jake Roberts and is released under the MIT License:\r
- * http://www.opensource.org/licenses/mit-license.php\r
- *\r
- */\r
-\r
-The MIT License\r
-\r
-Permission is hereby granted, free of charge, to any person obtaining a copy\r
-of this software and associated documentation files (the "Software"), to deal\r
-in the Software without restriction, including without limitation the rights\r
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r
-copies of the Software, and to permit persons to whom the Software is\r
-furnished to do so, subject to the following conditions:\r
-\r
-The above copyright notice and this permission notice shall be included in\r
-all copies or substantial portions of the Software.\r
-\r
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\r
+/**
+ * SWFUpload: http://www.swfupload.org, http://swfupload.googlecode.com
+ *
+ * mmSWFUpload 1.0: Flash upload dialog - http://profandesign.se/swfupload/,  http://www.vinterwebb.se/
+ *
+ * SWFUpload is (c) 2006-2007 Lars Huring, Olov Nilzén and Mammon Media and is released under the MIT License:
+ * http://www.opensource.org/licenses/mit-license.php
+ *
+ * SWFUpload 2 is (c) 2007-2008 Jake Roberts and is released under the MIT License:
+ * http://www.opensource.org/licenses/mit-license.php
+ *
+ */
+
+The MIT License
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 THE SOFTWARE.
\ No newline at end of file
 THE SOFTWARE.
\ No newline at end of file
index eac043423e72e1435fdb09863b2a8250f8096137..43f9081de78e2fd9b3c1123320dcc951e3391584 100644 (file)
@@ -49,7 +49,7 @@
        background: #ffffff;
        z-index: 102;
        color:#000000;
        background: #ffffff;
        z-index: 102;
        color:#000000;
-       display:none;
+       visibility: hidden;
        text-align:left;
        top:50%;
        left:50%;
        text-align:left;
        top:50%;
        left:50%;
index 5cc986882e5fe25aa2a09d737bd0f6c6a5c11319..e31b29d370c252d3c095e1827dd8c40b10df497d 100644 (file)
@@ -182,7 +182,7 @@ function tb_show(caption, url, imageGroup) {//function called when the user clic
                        tb_position();
                        jQuery("#TB_load").remove();
                        jQuery("#TB_ImageOff").click(tb_remove);
                        tb_position();
                        jQuery("#TB_load").remove();
                        jQuery("#TB_ImageOff").click(tb_remove);
-                       jQuery("#TB_window").css({display:"block"}); //for safari using css instead of show
+                       jQuery("#TB_window").css({'visibility':'visible'}); //for safari using css instead of show
                        };
 
                        imgPreloader.src = url;
                        };
 
                        imgPreloader.src = url;
@@ -206,7 +206,7 @@ function tb_show(caption, url, imageGroup) {//function called when the user clic
                                                jQuery("#TB_window").append("<iframe frameborder='0' hspace='0' src='"+urlNoQuery[0]+"' id='TB_iframeContent' name='TB_iframeContent"+Math.round(Math.random()*1000)+"' onload='tb_showIframe()' style='width:"+(ajaxContentW + 29)+"px;height:"+(ajaxContentH + 17)+"px;'>"+thickboxL10n.noiframes+"</iframe>");
                                        }
                        }else{// not an iframe, ajax
                                                jQuery("#TB_window").append("<iframe frameborder='0' hspace='0' src='"+urlNoQuery[0]+"' id='TB_iframeContent' name='TB_iframeContent"+Math.round(Math.random()*1000)+"' onload='tb_showIframe()' style='width:"+(ajaxContentW + 29)+"px;height:"+(ajaxContentH + 17)+"px;'>"+thickboxL10n.noiframes+"</iframe>");
                                        }
                        }else{// not an iframe, ajax
-                                       if(jQuery("#TB_window").css("display") != "block"){
+                                       if(jQuery("#TB_window").css("visibility") != "visible"){
                                                if(params['modal'] != "true"){//ajax no modal
                                                jQuery("#TB_window").append("<div id='TB_title'><div id='TB_ajaxWindowTitle'>"+caption+"</div><div id='TB_closeAjaxWindow'><a href='#' id='TB_closeWindowButton'><img src='" + tb_closeImage + "' /></a></div></div><div id='TB_ajaxContent' style='width:"+ajaxContentW+"px;height:"+ajaxContentH+"px'></div>");
                                                }else{//ajax modal
                                                if(params['modal'] != "true"){//ajax no modal
                                                jQuery("#TB_window").append("<div id='TB_title'><div id='TB_ajaxWindowTitle'>"+caption+"</div><div id='TB_closeAjaxWindow'><a href='#' id='TB_closeWindowButton'><img src='" + tb_closeImage + "' /></a></div></div><div id='TB_ajaxContent' style='width:"+ajaxContentW+"px;height:"+ajaxContentH+"px'></div>");
                                                }else{//ajax modal
@@ -225,24 +225,24 @@ function tb_show(caption, url, imageGroup) {//function called when the user clic
 
                                if(url.indexOf('TB_inline') != -1){
                                        jQuery("#TB_ajaxContent").append(jQuery('#' + params['inlineId']).children());
 
                                if(url.indexOf('TB_inline') != -1){
                                        jQuery("#TB_ajaxContent").append(jQuery('#' + params['inlineId']).children());
-                                       jQuery("#TB_window").unload(function () {
+                                       jQuery("#TB_window").bind('tb_unload', function () {
                                                jQuery('#' + params['inlineId']).append( jQuery("#TB_ajaxContent").children() ); // move elements back when you're finished
                                        });
                                        tb_position();
                                        jQuery("#TB_load").remove();
                                                jQuery('#' + params['inlineId']).append( jQuery("#TB_ajaxContent").children() ); // move elements back when you're finished
                                        });
                                        tb_position();
                                        jQuery("#TB_load").remove();
-                                       jQuery("#TB_window").css({display:"block"});
+                                       jQuery("#TB_window").css({'visibility':'visible'});
                                }else if(url.indexOf('TB_iframe') != -1){
                                        tb_position();
                                        if(jQuery.browser.safari){//safari needs help because it will not fire iframe onload
                                                jQuery("#TB_load").remove();
                                }else if(url.indexOf('TB_iframe') != -1){
                                        tb_position();
                                        if(jQuery.browser.safari){//safari needs help because it will not fire iframe onload
                                                jQuery("#TB_load").remove();
-                                               jQuery("#TB_window").css({display:"block"});
+                                               jQuery("#TB_window").css({'visibility':'visible'});
                                        }
                                }else{
                                        jQuery("#TB_ajaxContent").load(url += "&random=" + (new Date().getTime()),function(){//to do a post change this load method
                                                tb_position();
                                                jQuery("#TB_load").remove();
                                                tb_init("#TB_ajaxContent a.thickbox");
                                        }
                                }else{
                                        jQuery("#TB_ajaxContent").load(url += "&random=" + (new Date().getTime()),function(){//to do a post change this load method
                                                tb_position();
                                                jQuery("#TB_load").remove();
                                                tb_init("#TB_ajaxContent a.thickbox");
-                                               jQuery("#TB_window").css({display:"block"});
+                                               jQuery("#TB_window").css({'visibility':'visible'});
                                        });
                                }
 
                                        });
                                }
 
@@ -269,13 +269,13 @@ function tb_show(caption, url, imageGroup) {//function called when the user clic
 //helper functions below
 function tb_showIframe(){
        jQuery("#TB_load").remove();
 //helper functions below
 function tb_showIframe(){
        jQuery("#TB_load").remove();
-       jQuery("#TB_window").css({display:"block"});
+       jQuery("#TB_window").css({'visibility':'visible'});
 }
 
 function tb_remove() {
        jQuery("#TB_imageOff").unbind("click");
        jQuery("#TB_closeWindowButton").unbind("click");
 }
 
 function tb_remove() {
        jQuery("#TB_imageOff").unbind("click");
        jQuery("#TB_closeWindowButton").unbind("click");
-       jQuery("#TB_window").fadeOut("fast",function(){jQuery('#TB_window,#TB_overlay,#TB_HideSelect').trigger("unload").unbind().remove();});
+       jQuery("#TB_window").fadeOut("fast",function(){jQuery('#TB_window,#TB_overlay,#TB_HideSelect').trigger("tb_unload").unbind().remove();});
        jQuery("#TB_load").remove();
        if (typeof document.body.style.maxHeight == "undefined") {//if IE 6
                jQuery("body","html").css({height: "auto", width: "auto"});
        jQuery("#TB_load").remove();
        if (typeof document.body.style.maxHeight == "undefined") {//if IE 6
                jQuery("body","html").css({height: "auto", width: "auto"});
index 8373ed5401ac9bc9c6eefae24dafbb6a54d29ba5..7909082a1d8451666245dc8aa04f1ec94a3f5727 100644 (file)
@@ -140,9 +140,9 @@ plaintext_mode_sticky:"Paste is now in plain text mode. Click again to toggle ba
 plaintext_mode:"Paste is now in plain text mode. Click again to toggle back to regular paste mode."
 },
 paste_dlg:{
 plaintext_mode:"Paste is now in plain text mode. Click again to toggle back to regular paste mode."
 },
 paste_dlg:{
-text_title:"Use CTRL+V on your keyboard to paste the text into the window.",
+text_title:"Use CTRL + V on your keyboard to paste the text into the window.",
 text_linebreaks:"Keep linebreaks",
 text_linebreaks:"Keep linebreaks",
-word_title:"Use CTRL+V on your keyboard to paste the text into the window."
+word_title:"Use CTRL + V on your keyboard to paste the text into the window."
 },
 table:{
 desc:"Inserts a new table",
 },
 table:{
 desc:"Inserts a new table",
@@ -170,7 +170,7 @@ autosave:{
 unload_msg:"The changes you made will be lost if you navigate away from this page."
 },
 fullscreen:{
 unload_msg:"The changes you made will be lost if you navigate away from this page."
 },
 fullscreen:{
-desc:"Toggle fullscreen mode (Alt+Shift+G)"
+desc:"Toggle fullscreen mode (Alt + Shift + G)"
 },
 media:{
 desc:"Insert / edit embedded media",
 },
 media:{
 desc:"Insert / edit embedded media",
@@ -186,7 +186,7 @@ visualchars:{
 desc:"Visual control characters on/off."
 },
 spellchecker:{
 desc:"Visual control characters on/off."
 },
 spellchecker:{
-desc:"Toggle spellchecker (Alt+Shift+N)",
+desc:"Toggle spellchecker (Alt + Shift + N)",
 menu:"Spellchecker settings",
 ignore_word:"Ignore word",
 ignore_words:"Ignore all",
 menu:"Spellchecker settings",
 ignore_word:"Ignore word",
 ignore_words:"Ignore all",
@@ -240,23 +240,23 @@ code:"Code",
 samp:"Code sample",
 dt:"Definition term ",
 dd:"Definition description",
 samp:"Code sample",
 dt:"Definition term ",
 dd:"Definition description",
-bold_desc:"Bold (Ctrl / Alt+Shift + B)",
-italic_desc:"Italic (Ctrl / Alt+Shift + I)",
+bold_desc:"Bold (Ctrl / Alt + Shift + B)",
+italic_desc:"Italic (Ctrl / Alt + Shift + I)",
 underline_desc:"Underline",
 underline_desc:"Underline",
-striketrough_desc:"Strikethrough (Alt+Shift+D)",
-justifyleft_desc:"Align Left (Alt+Shift+L)",
-justifycenter_desc:"Align Center (Alt+Shift+C)",
-justifyright_desc:"Align Right (Alt+Shift+R)",
-justifyfull_desc:"Align Full (Alt+Shift+J)",
-bullist_desc:"Unordered list (Alt+Shift+U)",
-numlist_desc:"Ordered list (Alt+Shift+O)",
+striketrough_desc:"Strikethrough (Alt + Shift + D)",
+justifyleft_desc:"Align Left (Alt + Shift + L)",
+justifycenter_desc:"Align Center (Alt + Shift + C)",
+justifyright_desc:"Align Right (Alt + Shift + R)",
+justifyfull_desc:"Align Full (Alt + Shift + J)",
+bullist_desc:"Unordered list (Alt + Shift + U)",
+numlist_desc:"Ordered list (Alt + Shift + O)",
 outdent_desc:"Outdent",
 indent_desc:"Indent",
 outdent_desc:"Outdent",
 indent_desc:"Indent",
-undo_desc:"Undo (Ctrl+Z)",
-redo_desc:"Redo (Ctrl+Y)",
-link_desc:"Insert/edit link (Alt+Shift+A)",
-unlink_desc:"Unlink (Alt+Shift+S)",
-image_desc:"Insert/edit image (Alt+Shift+M)",
+undo_desc:"Undo (Ctrl + Z)",
+redo_desc:"Redo (Ctrl + Y)",
+link_desc:"Insert/edit link (Alt + Shift + A)",
+unlink_desc:"Unlink (Alt + Shift + S)",
+image_desc:"Insert/edit image (Alt + Shift + M)",
 cleanup_desc:"Cleanup messy code",
 code_desc:"Edit HTML Source",
 sub_desc:"Subscript",
 cleanup_desc:"Cleanup messy code",
 code_desc:"Edit HTML Source",
 sub_desc:"Subscript",
@@ -274,11 +274,11 @@ paste_desc:"Paste",
 image_props_desc:"Image properties",
 newdocument_desc:"New document",
 help_desc:"Help",
 image_props_desc:"Image properties",
 newdocument_desc:"New document",
 help_desc:"Help",
-blockquote_desc:"Blockquote (Alt+Shift+Q)",
+blockquote_desc:"Blockquote (Alt + Shift + Q)",
 clipboard_msg:"Copy/Cut/Paste is not available in Mozilla and Firefox.",
 path:"Path",
 newdocument:"Are you sure you want to clear all contents?",
 clipboard_msg:"Copy/Cut/Paste is not available in Mozilla and Firefox.",
 path:"Path",
 newdocument:"Are you sure you want to clear all contents?",
-toolbar_focus:"Jump to tool buttons - Alt+Q, Jump to editor - Alt-Z, Jump to element path - Alt-X",
+toolbar_focus:"Jump to tool buttons - Alt + Q, Jump to editor - Alt-Z, Jump to element path - Alt-X",
 more_colors:"More colors",
 shortcuts_desc:"Accessibility Help",
 help_shortcut:" Press ALT F10 for toolbar. Press ALT 0 for help.",
 more_colors:"More colors",
 shortcuts_desc:"Accessibility Help",
 help_shortcut:" Press ALT F10 for toolbar. Press ALT 0 for help.",
@@ -451,10 +451,10 @@ source:"Source"
 });
 
 tinyMCE.addI18n("en.wordpress",{
 });
 
 tinyMCE.addI18n("en.wordpress",{
-wp_adv_desc:"Show/Hide Kitchen Sink (Alt+Shift+Z)",
-wp_more_desc:"Insert More Tag (Alt+Shift+T)",
-wp_page_desc:"Insert Page break (Alt+Shift+P)",
-wp_help_desc:"Help (Alt+Shift+H)",
+wp_adv_desc:"Show/Hide Kitchen Sink (Alt + Shift + Z)",
+wp_more_desc:"Insert More Tag (Alt + Shift + T)",
+wp_page_desc:"Insert Page break (Alt + Shift + P)",
+wp_help_desc:"Help (Alt + Shift + H)",
 wp_more_alt:"More...",
 wp_page_alt:"Next page...",
 add_media:"Add Media",
 wp_more_alt:"More...",
 wp_page_alt:"Next page...",
 add_media:"Add Media",
index 32e9c370485857842dcef03d161d1ee964c1783a..f9299fb157b8d57f5f082058f594f8fb1abff9d2 100644 (file)
@@ -1,16 +1,13 @@
 <?php
 
 <?php
 
-// escape text only if it needs translating
 function mce_escape($text) {
 function mce_escape($text) {
-       global $language;
-
-       if ( 'en' == $language )
-               return $text;
-       else
-               return esc_js($text);
+       return esc_js($text);
 }
 
 }
 
-$lang = 'tinyMCE.addI18n({' . $language . ':{
+if ( ! class_exists( '_WP_Editors' ) )
+       require( ABSPATH . WPINC . '/class-wp-editor.php' );
+
+$lang = 'tinyMCE.addI18n({' . _WP_Editors::$mce_locale . ':{
 common:{
 edit_confirm:"' . mce_escape( __('Do you want to use the WYSIWYG mode for this textarea?') ) . '",
 apply:"' . mce_escape( __('Apply') ) . '",
 common:{
 edit_confirm:"' . mce_escape( __('Do you want to use the WYSIWYG mode for this textarea?') ) . '",
 apply:"' . mce_escape( __('Apply') ) . '",
@@ -24,7 +21,7 @@ not_set:"' . mce_escape( __('-- Not set --') ) . '",
 clipboard_msg:"' . mce_escape( __('Copy/Cut/Paste is not available in Mozilla and Firefox.') ) . '",
 clipboard_no_support:"' . mce_escape( __('Currently not supported by your browser, use keyboard shortcuts instead.') ) . '",
 popup_blocked:"' . mce_escape( __('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.') ) . '",
 clipboard_msg:"' . mce_escape( __('Copy/Cut/Paste is not available in Mozilla and Firefox.') ) . '",
 clipboard_no_support:"' . mce_escape( __('Currently not supported by your browser, use keyboard shortcuts instead.') ) . '",
 popup_blocked:"' . mce_escape( __('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:"' . mce_escape( __('Error: Invalid values entered, these are marked in red.') ) . '",
+invalid_data:"' . mce_escape( __('ERROR: Invalid values entered, these are marked in red.') ) . '",
 invalid_data_number:"' . mce_escape( __('{#field} must be a number') ) . '",
 invalid_data_min:"' . mce_escape( __('{#field} must be a number greater than {#min}') ) . '",
 invalid_data_size:"' . mce_escape( __('{#field} must be a number or percentage') ) . '",
 invalid_data_number:"' . mce_escape( __('{#field} must be a number') ) . '",
 invalid_data_min:"' . mce_escape( __('{#field} must be a number greater than {#min}') ) . '",
 invalid_data_size:"' . mce_escape( __('{#field} must be a number or percentage') ) . '",
@@ -182,7 +179,7 @@ autosave:{
 unload_msg:"' . mce_escape( __('The changes you made will be lost if you navigate away from this page.') ) . '"
 },
 fullscreen:{
 unload_msg:"' . mce_escape( __('The changes you made will be lost if you navigate away from this page.') ) . '"
 },
 fullscreen:{
-desc:"' . mce_escape( __('Toggle fullscreen mode') ) . ' (Alt+Shift+G)"
+desc:"' . mce_escape( __('Toggle fullscreen mode (Alt + Shift + G)') ) . '"
 },
 media:{
 desc:"' . mce_escape( __('Insert / edit embedded media') ) . '",
 },
 media:{
 desc:"' . mce_escape( __('Insert / edit embedded media') ) . '",
@@ -198,7 +195,7 @@ visualchars:{
 desc:"' . mce_escape( __('Visual control characters on/off.') ) . '"
 },
 spellchecker:{
 desc:"' . mce_escape( __('Visual control characters on/off.') ) . '"
 },
 spellchecker:{
-desc:"' . mce_escape( __('Toggle spellchecker') ) . ' (Alt+Shift+N)",
+desc:"' . mce_escape( __('Toggle spellchecker (Alt + Shift + N)') ) . '",
 menu:"' . mce_escape( __('Spellchecker settings') ) . '",
 ignore_word:"' . mce_escape( __('Ignore word') ) . '",
 ignore_words:"' . mce_escape( __('Ignore all') ) . '",
 menu:"' . mce_escape( __('Spellchecker settings') ) . '",
 ignore_word:"' . mce_escape( __('Ignore word') ) . '",
 ignore_words:"' . mce_escape( __('Ignore all') ) . '",
@@ -232,7 +229,7 @@ words:"' . mce_escape( __('Words:') ) . ' "
 }
 }});
 
 }
 }});
 
-tinyMCE.addI18n("' . $language . '.advanced",{
+tinyMCE.addI18n("' . _WP_Editors::$mce_locale . '.advanced",{
 style_select:"' . mce_escape( /* translators: TinyMCE font styles */ _x('Styles', 'TinyMCE font styles') ) . '",
 font_size:"' . mce_escape( __('Font size') ) . '",
 fontdefault:"' . mce_escape( __('Font family') ) . '",
 style_select:"' . mce_escape( /* translators: TinyMCE font styles */ _x('Styles', 'TinyMCE font styles') ) . '",
 font_size:"' . mce_escape( __('Font size') ) . '",
 fontdefault:"' . mce_escape( __('Font family') ) . '",
@@ -252,23 +249,23 @@ code:"' . mce_escape( __('Code') ) . '",
 samp:"' . mce_escape( __('Code sample') ) . '",
 dt:"' . mce_escape( __('Definition term ') ) . '",
 dd:"' . mce_escape( __('Definition description') ) . '",
 samp:"' . mce_escape( __('Code sample') ) . '",
 dt:"' . mce_escape( __('Definition term ') ) . '",
 dd:"' . mce_escape( __('Definition description') ) . '",
-bold_desc:"' . mce_escape( __('Bold') ) . ' (Ctrl / Alt+Shift + B)",
-italic_desc:"' . mce_escape( __('Italic') ) . ' (Ctrl / Alt+Shift + I)",
+bold_desc:"' . mce_escape( __('Bold (Ctrl + B)') ) . '",
+italic_desc:"' . mce_escape( __('Italic (Ctrl + I)') ) . '",
 underline_desc:"' . mce_escape( __('Underline') ) . '",
 underline_desc:"' . mce_escape( __('Underline') ) . '",
-striketrough_desc:"' . mce_escape( __('Strikethrough') ) . ' (Alt+Shift+D)",
-justifyleft_desc:"' . mce_escape( __('Align Left') ) . ' (Alt+Shift+L)",
-justifycenter_desc:"' . mce_escape( __('Align Center') ) . ' (Alt+Shift+C)",
-justifyright_desc:"' . mce_escape( __('Align Right') ) . ' (Alt+Shift+R)",
-justifyfull_desc:"' . mce_escape( __('Align Full') ) . ' (Alt+Shift+J)",
-bullist_desc:"' . mce_escape( __('Unordered list') ) . ' (Alt+Shift+U)",
-numlist_desc:"' . mce_escape( __('Ordered list') ) . ' (Alt+Shift+O)",
+striketrough_desc:"' . mce_escape( __('Strikethrough (Alt + Shift + D)') ) . '",
+justifyleft_desc:"' . mce_escape( __('Align Left (Alt + Shift + L)') ) . '",
+justifycenter_desc:"' . mce_escape( __('Align Center (Alt + Shift + C)') ) . '",
+justifyright_desc:"' . mce_escape( __('Align Right (Alt + Shift + R)') ) . '",
+justifyfull_desc:"' . mce_escape( __('Align Full (Alt + Shift + J)') ) . '",
+bullist_desc:"' . mce_escape( __('Unordered list (Alt + Shift + U)') ) . '",
+numlist_desc:"' . mce_escape( __('Ordered list (Alt + Shift + O)') ) . '",
 outdent_desc:"' . mce_escape( __('Outdent') ) . '",
 indent_desc:"' . mce_escape( __('Indent') ) . '",
 outdent_desc:"' . mce_escape( __('Outdent') ) . '",
 indent_desc:"' . mce_escape( __('Indent') ) . '",
-undo_desc:"' . mce_escape( __('Undo') ) . ' (Ctrl+Z)",
-redo_desc:"' . mce_escape( __('Redo') ) . ' (Ctrl+Y)",
-link_desc:"' . mce_escape( __('Insert/edit link') ) . ' (Alt+Shift+A)",
-unlink_desc:"' . mce_escape( __('Unlink') ) . ' (Alt+Shift+S)",
-image_desc:"' . mce_escape( __('Insert/edit image') ) . ' (Alt+Shift+M)",
+undo_desc:"' . mce_escape( __('Undo (Ctrl + Z)') ) . '",
+redo_desc:"' . mce_escape( __('Redo (Ctrl + Y)') ) . '",
+link_desc:"' . mce_escape( __('Insert/edit link (Alt + Shift + A)') ) . '",
+unlink_desc:"' . mce_escape( __('Unlink (Alt + Shift + S)') ) . '",
+image_desc:"' . mce_escape( __('Insert/edit image (Alt + Shift + M)') ) . '",
 cleanup_desc:"' . mce_escape( __('Cleanup messy code') ) . '",
 code_desc:"' . mce_escape( __('Edit HTML Source') ) . '",
 sub_desc:"' . mce_escape( __('Subscript') ) . '",
 cleanup_desc:"' . mce_escape( __('Cleanup messy code') ) . '",
 code_desc:"' . mce_escape( __('Edit HTML Source') ) . '",
 sub_desc:"' . mce_escape( __('Subscript') ) . '",
@@ -286,7 +283,7 @@ paste_desc:"' . mce_escape( __('Paste') ) . '",
 image_props_desc:"' . mce_escape( __('Image properties') ) . '",
 newdocument_desc:"' . mce_escape( __('New document') ) . '",
 help_desc:"' . mce_escape( __('Help') ) . '",
 image_props_desc:"' . mce_escape( __('Image properties') ) . '",
 newdocument_desc:"' . mce_escape( __('New document') ) . '",
 help_desc:"' . mce_escape( __('Help') ) . '",
-blockquote_desc:"' . mce_escape( __('Blockquote') ) . ' (Alt+Shift+Q)",
+blockquote_desc:"' . mce_escape( __('Blockquote (Alt + Shift + Q)') ) . '",
 clipboard_msg:"' . mce_escape( __('Copy/Cut/Paste is not available in Mozilla and Firefox.') ) . '",
 path:"' . mce_escape( __('Path') ) . '",
 newdocument:"' . mce_escape( __('Are you sure you want to clear all contents?') ) . '",
 clipboard_msg:"' . mce_escape( __('Copy/Cut/Paste is not available in Mozilla and Firefox.') ) . '",
 path:"' . mce_escape( __('Path') ) . '",
 newdocument:"' . mce_escape( __('Are you sure you want to clear all contents?') ) . '",
@@ -298,7 +295,7 @@ rich_text_area:"' . mce_escape( __('Rich Text Area') ) . '",
 toolbar:"' . mce_escape( __('Toolbar') ) . '"
 });
 
 toolbar:"' . mce_escape( __('Toolbar') ) . '"
 });
 
-tinyMCE.addI18n("' . $language . '.advanced_dlg",{
+tinyMCE.addI18n("' . _WP_Editors::$mce_locale . '.advanced_dlg",{
 about_title:"' . mce_escape( __('About TinyMCE') ) . '",
 about_general:"' . mce_escape( __('About') ) . '",
 about_help:"' . mce_escape( __('Help') ) . '",
 about_title:"' . mce_escape( __('About TinyMCE') ) . '",
 about_general:"' . mce_escape( __('About') ) . '",
 about_help:"' . mce_escape( __('Help') ) . '",
@@ -352,7 +349,7 @@ accessibility_help:"' . mce_escape( __('Accessibility Help') ) . '",
 accessibility_usage_title:"' . mce_escape( __('General Usage') ) . '"
 });
 
 accessibility_usage_title:"' . mce_escape( __('General Usage') ) . '"
 });
 
-tinyMCE.addI18n("' . $language . '.media_dlg",{
+tinyMCE.addI18n("' . _WP_Editors::$mce_locale . '.media_dlg",{
 title:"' . mce_escape( __('Insert / edit embedded media') ) . '",
 general:"' . mce_escape( __('General') ) . '",
 advanced:"' . mce_escape( __('Advanced') ) . '",
 title:"' . mce_escape( __('Insert / edit embedded media') ) . '",
 general:"' . mce_escape( __('General') ) . '",
 advanced:"' . mce_escape( __('Advanced') ) . '",
@@ -462,11 +459,11 @@ poster:"' . mce_escape( __('Poster') ) . '",
 source:"' . mce_escape( __('Source') ) . '"
 });
 
 source:"' . mce_escape( __('Source') ) . '"
 });
 
-tinyMCE.addI18n("' . $language . '.wordpress",{
-wp_adv_desc:"' . mce_escape( __('Show/Hide Kitchen Sink') )  . ' (Alt+Shift+Z)",
-wp_more_desc:"' . mce_escape( __('Insert More Tag') ) . ' (Alt+Shift+T)",
-wp_page_desc:"' . mce_escape( __('Insert Page break') ) . ' (Alt+Shift+P)",
-wp_help_desc:"' . mce_escape( __('Help') ) . ' (Alt+Shift+H)",
+tinyMCE.addI18n("' . _WP_Editors::$mce_locale . '.wordpress",{
+wp_adv_desc:"' . mce_escape( __('Show/Hide Kitchen Sink (Alt + Shift + Z)') )  . '",
+wp_more_desc:"' . mce_escape( __('Insert More Tag (Alt + Shift + T)') ) . '",
+wp_page_desc:"' . mce_escape( __('Insert Page break (Alt + Shift + P)') ) . '",
+wp_help_desc:"' . mce_escape( __('Help (Alt + Shift + H)') ) . '",
 wp_more_alt:"' . mce_escape( __('More...') ) . '",
 wp_page_alt:"' . mce_escape( __('Next page...') ) . '",
 add_media:"' . mce_escape( __('Add Media') ) . '",
 wp_more_alt:"' . mce_escape( __('More...') ) . '",
 wp_page_alt:"' . mce_escape( __('Next page...') ) . '",
 add_media:"' . mce_escape( __('Add Media') ) . '",
@@ -477,7 +474,7 @@ editgallery:"' . mce_escape( __('Edit Gallery') ) . '",
 delgallery:"' . mce_escape( __('Delete Gallery') ) . '"
 });
 
 delgallery:"' . mce_escape( __('Delete Gallery') ) . '"
 });
 
-tinyMCE.addI18n("' . $language . '.wpeditimage",{
+tinyMCE.addI18n("' . _WP_Editors::$mce_locale . '.wpeditimage",{
 edit_img:"' . mce_escape( __('Edit Image') )  . '",
 del_img:"' . mce_escape( __('Delete Image') )  . '",
 adv_settings:"' . mce_escape( __('Advanced Settings') )  . '",
 edit_img:"' . mce_escape( __('Edit Image') )  . '",
 del_img:"' . mce_escape( __('Delete Image') )  . '",
 adv_settings:"' . mce_escape( __('Advanced Settings') )  . '",
index 6eae3ec84a1a577ad65494723cf6b452c4ddff9d..a6456f89dd86052508f8619cbf8070e89d54a755 100644 (file)
@@ -1 +1 @@
-(function(){var a=tinymce.DOM;tinymce.create("tinymce.plugins.FullScreenPlugin",{init:function(d,e){var f=this,g={},c,b;f.editor=d;d.addCommand("mceFullScreen",function(){var i,j=a.doc.documentElement;if(d.getParam("fullscreen_is_enabled")){if(d.getParam("fullscreen_new_window")){closeFullscreen()}else{a.win.setTimeout(function(){tinymce.dom.Event.remove(a.win,"resize",f.resizeFunc);tinyMCE.get(d.getParam("fullscreen_editor_id")).setContent(d.getContent({format:"raw"}),{format:"raw"});tinyMCE.remove(d);a.remove("mce_fullscreen_container");j.style.overflow=d.getParam("fullscreen_html_overflow");a.setStyle(a.doc.body,"overflow",d.getParam("fullscreen_overflow"));a.win.scrollTo(d.getParam("fullscreen_scrollx"),d.getParam("fullscreen_scrolly"));tinyMCE.settings=tinyMCE.oldSettings},10)}return}if(d.getParam("fullscreen_new_window")){i=a.win.open(e+"/fullscreen.htm","mceFullScreenPopup","fullscreen=yes,menubar=no,toolbar=no,scrollbars=no,resizable=yes,left=0,top=0,width="+screen.availWidth+",height="+screen.availHeight);try{i.resizeTo(screen.availWidth,screen.availHeight)}catch(h){}}else{tinyMCE.oldSettings=tinyMCE.settings;g.fullscreen_overflow=a.getStyle(a.doc.body,"overflow",1)||"auto";g.fullscreen_html_overflow=a.getStyle(j,"overflow",1);c=a.getViewPort();g.fullscreen_scrollx=c.x;g.fullscreen_scrolly=c.y;if(tinymce.isOpera&&g.fullscreen_overflow=="visible"){g.fullscreen_overflow="auto"}if(tinymce.isIE&&g.fullscreen_overflow=="scroll"){g.fullscreen_overflow="auto"}if(tinymce.isIE&&(g.fullscreen_html_overflow=="visible"||g.fullscreen_html_overflow=="scroll")){g.fullscreen_html_overflow="auto"}if(g.fullscreen_overflow=="0px"){g.fullscreen_overflow=""}a.setStyle(a.doc.body,"overflow","hidden");j.style.overflow="hidden";c=a.getViewPort();a.win.scrollTo(0,0);if(tinymce.isIE){c.h-=1}if(tinymce.isIE6){b="absolute;top:"+c.y}else{b="fixed;top:0"}n=a.add(a.doc.body,"div",{id:"mce_fullscreen_container",style:"position:"+b+";left:0;width:"+c.w+"px;height:"+c.h+"px;z-index:200000;"});a.add(n,"div",{id:"mce_fullscreen"});tinymce.each(d.settings,function(k,l){g[l]=k});g.id="mce_fullscreen";g.width=n.clientWidth;g.height=n.clientHeight-15;g.fullscreen_is_enabled=true;g.fullscreen_editor_id=d.id;g.theme_advanced_resizing=false;g.save_onsavecallback=function(){d.setContent(tinyMCE.get(g.id).getContent({format:"raw"}),{format:"raw"});d.execCommand("mceSave")};tinymce.each(d.getParam("fullscreen_settings"),function(m,l){g[l]=m});if(g.theme_advanced_toolbar_location==="external"){g.theme_advanced_toolbar_location="top"}f.fullscreenEditor=new tinymce.Editor("mce_fullscreen",g);f.fullscreenEditor.onInit.add(function(){f.fullscreenEditor.setContent(d.getContent());f.fullscreenEditor.focus()});f.fullscreenEditor.render();f.fullscreenElement=new tinymce.dom.Element("mce_fullscreen_container");f.fullscreenElement.update();f.resizeFunc=tinymce.dom.Event.add(a.win,"resize",function(){var o=tinymce.DOM.getViewPort(),l=f.fullscreenEditor,k,m;k=l.dom.getSize(l.getContainer().firstChild);m=l.dom.getSize(l.getContainer().getElementsByTagName("iframe")[0]);l.theme.resizeTo(o.w-k.w+m.w,o.h-k.h+m.h)})}});d.addButton("fullscreen",{title:"fullscreen.desc",cmd:"mceFullScreen"});d.onNodeChange.add(function(i,h){h.setActive("fullscreen",i.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
+(function(){var a=tinymce.DOM;tinymce.create("tinymce.plugins.FullScreenPlugin",{init:function(d,e){var f=this,g={},c,b;f.editor=d;d.addCommand("mceFullScreen",function(){var i,j=a.doc.documentElement;if(d.getParam("fullscreen_is_enabled")){if(d.getParam("fullscreen_new_window")){closeFullscreen()}else{a.win.setTimeout(function(){tinymce.dom.Event.remove(a.win,"resize",f.resizeFunc);tinyMCE.get(d.getParam("fullscreen_editor_id")).setContent(d.getContent());tinyMCE.remove(d);a.remove("mce_fullscreen_container");j.style.overflow=d.getParam("fullscreen_html_overflow");a.setStyle(a.doc.body,"overflow",d.getParam("fullscreen_overflow"));a.win.scrollTo(d.getParam("fullscreen_scrollx"),d.getParam("fullscreen_scrolly"));tinyMCE.settings=tinyMCE.oldSettings},10)}return}if(d.getParam("fullscreen_new_window")){i=a.win.open(e+"/fullscreen.htm","mceFullScreenPopup","fullscreen=yes,menubar=no,toolbar=no,scrollbars=no,resizable=yes,left=0,top=0,width="+screen.availWidth+",height="+screen.availHeight);try{i.resizeTo(screen.availWidth,screen.availHeight)}catch(h){}}else{tinyMCE.oldSettings=tinyMCE.settings;g.fullscreen_overflow=a.getStyle(a.doc.body,"overflow",1)||"auto";g.fullscreen_html_overflow=a.getStyle(j,"overflow",1);c=a.getViewPort();g.fullscreen_scrollx=c.x;g.fullscreen_scrolly=c.y;if(tinymce.isOpera&&g.fullscreen_overflow=="visible"){g.fullscreen_overflow="auto"}if(tinymce.isIE&&g.fullscreen_overflow=="scroll"){g.fullscreen_overflow="auto"}if(tinymce.isIE&&(g.fullscreen_html_overflow=="visible"||g.fullscreen_html_overflow=="scroll")){g.fullscreen_html_overflow="auto"}if(g.fullscreen_overflow=="0px"){g.fullscreen_overflow=""}a.setStyle(a.doc.body,"overflow","hidden");j.style.overflow="hidden";c=a.getViewPort();a.win.scrollTo(0,0);if(tinymce.isIE){c.h-=1}if(tinymce.isIE6){b="absolute;top:"+c.y}else{b="fixed;top:0"}n=a.add(a.doc.body,"div",{id:"mce_fullscreen_container",style:"position:"+b+";left:0;width:"+c.w+"px;height:"+c.h+"px;z-index:200000;"});a.add(n,"div",{id:"mce_fullscreen"});tinymce.each(d.settings,function(k,l){g[l]=k});g.id="mce_fullscreen";g.width=n.clientWidth;g.height=n.clientHeight-15;g.fullscreen_is_enabled=true;g.fullscreen_editor_id=d.id;g.theme_advanced_resizing=false;g.save_onsavecallback=function(){d.setContent(tinyMCE.get(g.id).getContent());d.execCommand("mceSave")};tinymce.each(d.getParam("fullscreen_settings"),function(m,l){g[l]=m});if(g.theme_advanced_toolbar_location==="external"){g.theme_advanced_toolbar_location="top"}f.fullscreenEditor=new tinymce.Editor("mce_fullscreen",g);f.fullscreenEditor.onInit.add(function(){f.fullscreenEditor.setContent(d.getContent());f.fullscreenEditor.focus()});f.fullscreenEditor.render();f.fullscreenElement=new tinymce.dom.Element("mce_fullscreen_container");f.fullscreenElement.update();f.resizeFunc=tinymce.dom.Event.add(a.win,"resize",function(){var o=tinymce.DOM.getViewPort(),l=f.fullscreenEditor,k,m;k=l.dom.getSize(l.getContainer().firstChild);m=l.dom.getSize(l.getContainer().getElementsByTagName("iframe")[0]);l.theme.resizeTo(o.w-k.w+m.w,o.h-k.h+m.h)})}});d.addButton("fullscreen",{title:"fullscreen.desc",cmd:"mceFullScreen"});d.onNodeChange.add(function(i,h){h.setActive("fullscreen",i.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
index 7331e6cbec9a561f4bad5ac382fc68e78f8e87c1..fe49d3b6a55a87a40f1224a3a1068d7c85e216ce 100644 (file)
@@ -1,8 +1,9 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<!DOCTYPE html>
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
        <title></title>
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
        <title></title>
-       <script type="text/javascript" src="../../tiny_mce.js?ver=342-20110407"></script>
+       <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+       <script type="text/javascript" src="../../tiny_mce.js?ver=345-20110908"></script>
        <script type="text/javascript">
                function patchCallback(settings, key) {
                        if (settings[key])
        <script type="text/javascript">
                function patchCallback(settings, key) {
                        if (settings[key])
index ef648174f062c2af47271b5f94126ad9d1d69cf7..8bb96f9cbec31d66a874ed1c3e3438e3d74ad51d 100644 (file)
@@ -1 +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(s,j){var z=this,i,k="",r=z.editor,g=0,v=0,h,m,o,q,l,x,y,n;s=s||{};j=j||{};if(!s.inline){return z.parent(s,j)}n=z._frontWindow();if(n&&d.get(n.id+"_ifr")){n.focussedElement=d.get(n.id+"_ifr").contentWindow.document.activeElement}if(!s.type){z.bookmark=r.selection.getBookmark(1)}i=d.uniqueId();h=d.getViewPort();s.width=parseInt(s.width||320);s.height=parseInt(s.height||240)+(tinymce.isIE?8:0);s.min_width=parseInt(s.min_width||150);s.min_height=parseInt(s.min_height||100);s.max_width=parseInt(s.max_width||2000);s.max_height=parseInt(s.max_height||2000);s.left=s.left||Math.round(Math.max(h.x,h.x+(h.w/2)-(s.width/2)));s.top=s.top||Math.round(Math.max(h.y,h.y+(h.h/2)-(s.height/2)));s.movable=s.resizable=true;j.mce_width=s.width;j.mce_height=s.height;j.mce_inline=true;j.mce_window_id=i;j.mce_auto_focus=s.auto_focus;z.features=s;z.params=j;z.onOpen.dispatch(z,s,j);if(s.type){k+=" mceModal";if(s.type){k+=" mce"+s.type.substring(0,1).toUpperCase()+s.type.substring(1)}s.resizable=false}if(s.statusbar){k+=" mceStatusbar"}if(s.resizable){k+=" mceResizable"}if(s.minimizable){k+=" mceMinimizable"}if(s.maximizable){k+=" mceMaximizable"}if(s.movable){k+=" mceMovable"}z._addAll(d.doc.body,["div",{id:i,role:"dialog","aria-labelledby":s.type?i+"_content":i+"_title","class":(r.settings.inlinepopups_skin||"clearlooks2")+(tinymce.isIE&&window.getSelection?" ie9":""),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"},s.title||""]],["div",{id:i+"_middle","class":"mceMiddle"},["div",{id:i+"_left","class":"mceLeft",tabindex:"0"}],["span",{id:i+"_content"}],["div",{id:i+"_right","class":"mceRight",tabindex:"0"}]],["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(!s.type){g+=d.get(i+"_left").clientWidth;g+=d.get(i+"_right").clientWidth;v+=d.get(i+"_top").clientHeight;v+=d.get(i+"_bottom").clientHeight}d.setStyles(i,{top:s.top,left:s.left,width:s.width+g,height:s.height+v});y=s.url||s.file;if(y){if(tinymce.relaxedDomain){y+=(y.indexOf("?")==-1?"?":"&")+"mce_rdomain="+tinymce.relaxedDomain}y=tinymce._addVer(y)}if(!s.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:s.width,height:s.height});d.setAttrib(i+"_ifr","src",y)}else{d.add(i+"_wrapper","a",{id:i+"_ok","class":"mceButton mceOk",href:"javascript:;",onmousedown:"return false;"},"Ok");if(s.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",s.content.replace("\n","<br />"));a.add(i,"keyup",function(f){var p=27;if(f.keyCode===p){s.button_func(false);return a.cancel(f)}});a.add(i,"keydown",function(f){var t,p=9;if(f.keyCode===p){t=d.select("a.mceCancel",i+"_wrapper")[0];if(t&&t!==f.target){t.focus()}else{d.get(i+"_ok").focus()}return a.cancel(f)}})}o=a.add(i,"mousedown",function(t){var u=t.target,f,p;f=z.windows[i];z.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 z._startDrag(i,t,u.className)}else{if(d.hasClass(u,"mceResize")){return z._startDrag(i,t,u.className.substring(13))}}}}}});q=a.add(i,"click",function(f){var p=f.target;z.focus(i);if(p.nodeName=="A"||p.nodeName=="a"){switch(p.className){case"mceClose":z.close(null,i);return a.cancel(f);case"mceButton mceOk":case"mceButton mceCancel":s.button_func(p.className=="mceButton mceOk");return a.cancel(f)}}});a.add([i+"_left",i+"_right"],"focus",function(p){var t=d.get(i+"_ifr");if(t){var f=t.contentWindow.document.body;var u=d.select(":input:enabled,*[tabindex=0]",f);if(p.target.id===(i+"_left")){u[u.length-1].focus()}else{u[0].focus()}}else{d.get(i+"_ok").focus()}});x=z.windows[i]={id:i,mousedown_func:o,click_func:q,element:new b(i,{blocker:1,container:r.getContainer()}),iframeElement:new b(i+"_ifr"),features:s,deltaWidth:g,deltaHeight:v};x.iframeElement.on("focus",function(){z.focus(i)});if(z.count==0&&z.editor.getParam("dialog_type","modal")=="modal"){d.add(d.doc.body,"div",{id:"mceModalBlocker","class":(z.editor.settings.inlinepopups_skin||"clearlooks2")+"_modalBlocker",style:{zIndex:z.zIndex-1}});d.show("mceModalBlocker");d.setAttrib(d.doc.body,"aria-hidden","true")}else{d.setStyle("mceModalBlocker","z-index",z.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})}d.setAttrib(i,"aria-hidden","false");z.focus(i);z._fixIELayout(i,1);if(d.get(i+"_ok")){d.get(i+"_ok").focus()}z.count++;return x},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;if(f.focussedElement){f.focussedElement.focus()}else{if(d.get(h+"_ok")){d.get(f.id+"_ok").focus()}else{if(d.get(f.id+"_ifr")){d.get(f.id+"_ifr").focus()}}}}},_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;g<h.length;g++){f._addAll(k,h[g])}}}},_startDrag:function(v,G,E){var o=this,u,z,C=d.doc,f,l=o.windows[v],h=l.element,y=h.getXY(),x,q,F,g,A,s,r,j,i,m,k,n,B;g={x:0,y:0};A=d.getViewPort();A.w-=2;A.h-=2;j=G.screenX;i=G.screenY;m=k=n=B=0;u=a.add(C,"mouseup",function(p){a.remove(C,"mouseup",u);a.remove(C,"mousemove",z);if(f){f.remove()}h.moveBy(m,k);h.resizeBy(n,B);q=h.getSize();d.setStyles(v+"_ifr",{width:q.w-l.deltaWidth,height:q.h-l.deltaHeight});o._fixIELayout(v,1);return a.cancel(p)});if(E!="Move"){D()}function D(){if(f){return}o._fixIELayout(v,0);d.add(C.body,"div",{id:"mceEventBlocker","class":"mceEventBlocker "+(o.editor.settings.inlinepopups_skin||"clearlooks2"),style:{zIndex:o.zIndex+1}});if(tinymce.isIE6||(tinymce.isIE&&!d.boxModel)){d.setStyles("mceEventBlocker",{position:"absolute",left:A.x,top:A.y,width:A.w-2,height:A.h-2})}f=new b("mceEventBlocker");f.update();x=h.getXY();q=h.getSize();s=g.x+x.x-A.x;r=g.y+x.y-A.y;d.add(f.get(),"div",{id:"mcePlaceHolder","class":"mcePlaceHolder",style:{left:s,top:r,width:q.w,height:q.h}});F=new b("mcePlaceHolder")}z=a.add(C,"mousemove",function(w){var p,H,t;D();p=w.screenX-j;H=w.screenY-i;switch(E){case"ResizeW":m=p;n=0-p;break;case"ResizeE":n=p;break;case"ResizeN":case"ResizeNW":case"ResizeNE":if(E=="ResizeNW"){m=p;n=0-p}else{if(E=="ResizeNE"){n=p}}k=H;B=0-H;break;case"ResizeS":case"ResizeSW":case"ResizeSE":if(E=="ResizeSW"){m=p;n=0-p}else{if(E=="ResizeSE"){n=p}}B=H;break;case"mceMove":m=p;k=H;break}if(n<(t=l.features.min_width-q.w)){if(m!==0){m+=n-t}n=t}if(B<(t=l.features.min_height-q.h)){if(k!==0){k+=B-t}B=t}n=Math.min(n,l.features.max_width-q.w);B=Math.min(B,l.features.max_height-q.h);m=Math.max(m,A.x-(s+A.x));k=Math.max(k,A.y-(r+A.y));m=Math.min(m,(A.w+A.x)-(s+q.w+A.x));k=Math.min(k,(A.h+A.y)-(r+q.h+A.y));if(m+k!==0){if(s+m<0){m=0}if(r+k<0){k=0}F.moveTo(s+m,r+k)}if(n+B!==0){F.resizeTo(q.w+n,q.h+B)}return a.cancel(w)});return a.cancel(G)},resizeBy:function(g,h,i){var f=this.windows[i];if(f){f.element.resizeBy(g,h);f.iframeElement.resizeBy(g,h)}},close:function(i,k){var g=this,f,j=d.doc,h,k;k=g._findId(k||i);if(!g.windows[k]){g.parent(i);return}g.count--;if(g.count==0){d.remove("mceModalBlocker");d.setAttrib(d.doc.body,"aria-hidden","false");g.editor.focus()}if(f=g.windows[k]){g.onClose.dispatch(g);a.remove(j,"mousedown",f.mousedownFunc);a.remove(j,"click",f.clickFunc);a.clear(k);a.clear(k+"_ifr");d.setAttrib(k+"_ifr","src",'javascript:""');f.element.remove();delete g.windows[k];h=g._frontWindow();if(h){g.focus(h.id)}}},_frontWindow:function(){var g,f=0;e(this.windows,function(h){if(h.zIndex>f){g=h;f=h.zIndex}});return g},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
+(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(s,j){var z=this,i,k="",r=z.editor,g=0,v=0,h,m,o,q,l,x,y,n;s=s||{};j=j||{};if(!s.inline){return z.parent(s,j)}n=z._frontWindow();if(n&&d.get(n.id+"_ifr")){n.focussedElement=d.get(n.id+"_ifr").contentWindow.document.activeElement}if(!s.type){z.bookmark=r.selection.getBookmark(1)}i=d.uniqueId();h=d.getViewPort();s.width=parseInt(s.width||320);s.height=parseInt(s.height||240)+(tinymce.isIE?8:0);s.min_width=parseInt(s.min_width||150);s.min_height=parseInt(s.min_height||100);s.max_width=parseInt(s.max_width||2000);s.max_height=parseInt(s.max_height||2000);s.left=s.left||Math.round(Math.max(h.x,h.x+(h.w/2)-(s.width/2)));s.top=s.top||Math.round(Math.max(h.y,h.y+(h.h/2)-(s.height/2)));s.movable=s.resizable=true;j.mce_width=s.width;j.mce_height=s.height;j.mce_inline=true;j.mce_window_id=i;j.mce_auto_focus=s.auto_focus;z.features=s;z.params=j;z.onOpen.dispatch(z,s,j);if(s.type){k+=" mceModal";if(s.type){k+=" mce"+s.type.substring(0,1).toUpperCase()+s.type.substring(1)}s.resizable=false}if(s.statusbar){k+=" mceStatusbar"}if(s.resizable){k+=" mceResizable"}if(s.minimizable){k+=" mceMinimizable"}if(s.maximizable){k+=" mceMaximizable"}if(s.movable){k+=" mceMovable"}z._addAll(d.doc.body,["div",{id:i,role:"dialog","aria-labelledby":s.type?i+"_content":i+"_title","class":(r.settings.inlinepopups_skin||"clearlooks2")+(tinymce.isIE&&window.getSelection?" ie9":""),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"},s.title||""]],["div",{id:i+"_middle","class":"mceMiddle"},["div",{id:i+"_left","class":"mceLeft",tabindex:"0"}],["span",{id:i+"_content"}],["div",{id:i+"_right","class":"mceRight",tabindex:"0"}]],["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(!s.type){g+=d.get(i+"_left").clientWidth;g+=d.get(i+"_right").clientWidth;v+=d.get(i+"_top").clientHeight;v+=d.get(i+"_bottom").clientHeight}d.setStyles(i,{top:s.top,left:s.left,width:s.width+g,height:s.height+v});y=s.url||s.file;if(y){if(tinymce.relaxedDomain){y+=(y.indexOf("?")==-1?"?":"&")+"mce_rdomain="+tinymce.relaxedDomain}y=tinymce._addVer(y)}if(!s.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:s.width,height:s.height});d.setAttrib(i+"_ifr","src",y)}else{d.add(i+"_wrapper","a",{id:i+"_ok","class":"mceButton mceOk",href:"javascript:;",onmousedown:"return false;"},"Ok");if(s.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",s.content.replace("\n","<br />"));a.add(i,"keyup",function(f){var p=27;if(f.keyCode===p){s.button_func(false);return a.cancel(f)}});a.add(i,"keydown",function(f){var t,p=9;if(f.keyCode===p){t=d.select("a.mceCancel",i+"_wrapper")[0];if(t&&t!==f.target){t.focus()}else{d.get(i+"_ok").focus()}return a.cancel(f)}})}o=a.add(i,"mousedown",function(t){var u=t.target,f,p;f=z.windows[i];z.focus(i);if(u.nodeName=="A"||u.nodeName=="a"){if(u.className=="mceClose"){z.close(null,i);return a.cancel(t)}else{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 z._startDrag(i,t,u.className)}else{if(d.hasClass(u,"mceResize")){return z._startDrag(i,t,u.className.substring(13))}}}}}}});q=a.add(i,"click",function(f){var p=f.target;z.focus(i);if(p.nodeName=="A"||p.nodeName=="a"){switch(p.className){case"mceClose":z.close(null,i);return a.cancel(f);case"mceButton mceOk":case"mceButton mceCancel":s.button_func(p.className=="mceButton mceOk");return a.cancel(f)}}});a.add([i+"_left",i+"_right"],"focus",function(p){var t=d.get(i+"_ifr");if(t){var f=t.contentWindow.document.body;var u=d.select(":input:enabled,*[tabindex=0]",f);if(p.target.id===(i+"_left")){u[u.length-1].focus()}else{u[0].focus()}}else{d.get(i+"_ok").focus()}});x=z.windows[i]={id:i,mousedown_func:o,click_func:q,element:new b(i,{blocker:1,container:r.getContainer()}),iframeElement:new b(i+"_ifr"),features:s,deltaWidth:g,deltaHeight:v};x.iframeElement.on("focus",function(){z.focus(i)});if(z.count==0&&z.editor.getParam("dialog_type","modal")=="modal"){d.add(d.doc.body,"div",{id:"mceModalBlocker","class":(z.editor.settings.inlinepopups_skin||"clearlooks2")+"_modalBlocker",style:{zIndex:z.zIndex-1}});d.show("mceModalBlocker");d.setAttrib(d.doc.body,"aria-hidden","true")}else{d.setStyle("mceModalBlocker","z-index",z.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})}d.setAttrib(i,"aria-hidden","false");z.focus(i);z._fixIELayout(i,1);if(d.get(i+"_ok")){d.get(i+"_ok").focus()}z.count++;return x},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;if(f.focussedElement){f.focussedElement.focus()}else{if(d.get(h+"_ok")){d.get(f.id+"_ok").focus()}else{if(d.get(f.id+"_ifr")){d.get(f.id+"_ifr").focus()}}}}},_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;g<h.length;g++){f._addAll(k,h[g])}}}},_startDrag:function(v,G,E){var o=this,u,z,C=d.doc,f,l=o.windows[v],h=l.element,y=h.getXY(),x,q,F,g,A,s,r,j,i,m,k,n,B;g={x:0,y:0};A=d.getViewPort();A.w-=2;A.h-=2;j=G.screenX;i=G.screenY;m=k=n=B=0;u=a.add(C,"mouseup",function(p){a.remove(C,"mouseup",u);a.remove(C,"mousemove",z);if(f){f.remove()}h.moveBy(m,k);h.resizeBy(n,B);q=h.getSize();d.setStyles(v+"_ifr",{width:q.w-l.deltaWidth,height:q.h-l.deltaHeight});o._fixIELayout(v,1);return a.cancel(p)});if(E!="Move"){D()}function D(){if(f){return}o._fixIELayout(v,0);d.add(C.body,"div",{id:"mceEventBlocker","class":"mceEventBlocker "+(o.editor.settings.inlinepopups_skin||"clearlooks2"),style:{zIndex:o.zIndex+1}});if(tinymce.isIE6||(tinymce.isIE&&!d.boxModel)){d.setStyles("mceEventBlocker",{position:"absolute",left:A.x,top:A.y,width:A.w-2,height:A.h-2})}f=new b("mceEventBlocker");f.update();x=h.getXY();q=h.getSize();s=g.x+x.x-A.x;r=g.y+x.y-A.y;d.add(f.get(),"div",{id:"mcePlaceHolder","class":"mcePlaceHolder",style:{left:s,top:r,width:q.w,height:q.h}});F=new b("mcePlaceHolder")}z=a.add(C,"mousemove",function(w){var p,H,t;D();p=w.screenX-j;H=w.screenY-i;switch(E){case"ResizeW":m=p;n=0-p;break;case"ResizeE":n=p;break;case"ResizeN":case"ResizeNW":case"ResizeNE":if(E=="ResizeNW"){m=p;n=0-p}else{if(E=="ResizeNE"){n=p}}k=H;B=0-H;break;case"ResizeS":case"ResizeSW":case"ResizeSE":if(E=="ResizeSW"){m=p;n=0-p}else{if(E=="ResizeSE"){n=p}}B=H;break;case"mceMove":m=p;k=H;break}if(n<(t=l.features.min_width-q.w)){if(m!==0){m+=n-t}n=t}if(B<(t=l.features.min_height-q.h)){if(k!==0){k+=B-t}B=t}n=Math.min(n,l.features.max_width-q.w);B=Math.min(B,l.features.max_height-q.h);m=Math.max(m,A.x-(s+A.x));k=Math.max(k,A.y-(r+A.y));m=Math.min(m,(A.w+A.x)-(s+q.w+A.x));k=Math.min(k,(A.h+A.y)-(r+q.h+A.y));if(m+k!==0){if(s+m<0){m=0}if(r+k<0){k=0}F.moveTo(s+m,r+k)}if(n+B!==0){F.resizeTo(q.w+n,q.h+B)}return a.cancel(w)});return a.cancel(G)},resizeBy:function(g,h,i){var f=this.windows[i];if(f){f.element.resizeBy(g,h);f.iframeElement.resizeBy(g,h)}},close:function(i,k){var g=this,f,j=d.doc,h,k;k=g._findId(k||i);if(!g.windows[k]){g.parent(i);return}g.count--;if(g.count==0){d.remove("mceModalBlocker");d.setAttrib(d.doc.body,"aria-hidden","false");g.editor.focus()}if(f=g.windows[k]){g.onClose.dispatch(g);a.remove(j,"mousedown",f.mousedownFunc);a.remove(j,"click",f.clickFunc);a.clear(k);a.clear(k+"_ifr");d.setAttrib(k+"_ifr","src",'javascript:""');f.element.remove();delete g.windows[k];h=g._frontWindow();if(h){g.focus(h.id)}}},_frontWindow:function(){var g,f=0;e(this.windows,function(h){if(h.zIndex>f){g=h;f=h.zIndex}});return g},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
index 1001789461c99d8cd832265c4b802fa6ad52c5c2..ad07434df4633a744eade865a42ff57c9298044b 100644 (file)
@@ -79,7 +79,7 @@ color:#FFF
 .clearlooks2 .mceStatusbar .mceBottom span {display:block; left:7px; font-family:Arial, Verdana; font-size:11px; line-height:23px}
 
 /* Actions */
 .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 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 .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}
@@ -107,7 +107,7 @@ color:#FFF
 .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.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.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.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}
@@ -124,13 +124,3 @@ color:#FFF
 .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)}
 .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)}
-
-/* IE9 fixes */
-.clearlooks2.ie9 .mceTop .mceCenter {clip:auto;}
-.clearlooks2.ie9 .mceMiddle {clip:auto;}
-.clearlooks2.ie9 .mceMiddle .mceLeft, .clearlooks2.ie9 .mceMiddle .mceRight {top: 23px;}
-.clearlooks2.ie9 .mceAlert .mceMiddle span, .clearlooks2.ie9 .mceConfirm .mceMiddle span {top:13px;}
-.clearlooks2.ie9 .mceModal .mceMiddle {top:23px}
-.clearlooks2.ie9 .mceModal .mceMiddle .mceLeft, .clearlooks2.ie9 .mceModal .mceMiddle .mceRight {top: 0}
-.clearlooks2.ie9 .mceMiddle .mceIcon {top:13px}
-.clearlooks2.ie9 .mceTop .mceCenter {top:0; right:auto; left:6px; width:calc(100%-12px)}
index b376842aadb8afee928a06c7a26fbd29f0a10fc7..a4d9873c8afaa2803c197f554fee87978576baed 100644 (file)
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <title>Template for dialogs</title>
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <title>Template for dialogs</title>
-<link rel="stylesheet" type="text/css" href="skins/clearlooks2/window.css?ver=342-20110407" />
+<link rel="stylesheet" type="text/css" href="skins/clearlooks2/window.css?ver=345-20110908" />
 </head>
 <body>
 
 </head>
 <body>
 
index 66219078cbece453c204623a0679c12d9918e8f7..f89959e2e25831233a6b272f93a13b5bfc922284 100644 (file)
@@ -1 +1 @@
-(function(){var d=tinymce.explode("id,name,width,height,style,align,class,hspace,vspace,bgcolor,type"),h=tinymce.makeMap(d.join(",")),b=tinymce.html.Node,f,a,g=tinymce.util.JSON,e;f=[["Flash","d27cdb6e-ae6d-11cf-96b8-444553540000","application/x-shockwave-flash","http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"],["ShockWave","166b1bca-3f9c-11cf-8075-444553540000","application/x-director","http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0"],["WindowsMedia","6bf52a52-394a-11d3-b153-00c04f79faa6,22d6f312-b0f6-11d0-94ab-0080c74c7e95,05589fa1-c356-11ce-bf01-00aa0055595a","application/x-mplayer2","http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701"],["QuickTime","02bf25d5-8c17-4b23-bc80-d3488abddc6b","video/quicktime","http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0"],["RealMedia","cfcdaa03-8be4-11cf-b84b-0020afbbccfa","audio/x-pn-realaudio-plugin","http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"],["Java","8ad9c840-044e-11d1-b3e9-00805f499d93","application/x-java-applet","http://java.sun.com/products/plugin/autodl/jinstall-1_5_0-windows-i586.cab#Version=1,5,0,0"],["Silverlight","dfeaf541-f3e1-4c24-acac-99c30715084a","application/x-silverlight-2"],["Iframe"],["Video"]];function c(m){var l,j,k;if(m&&!m.splice){j=[];for(k=0;true;k++){if(m[k]){j[k]=m[k]}else{break}}return j}return m}tinymce.create("tinymce.plugins.MediaPlugin",{init:function(n,j){var r=this,l={},m,p,q,k;function o(i){return i&&i.nodeName==="IMG"&&n.dom.hasClass(i,"mceItemMedia")}r.editor=n;r.url=j;a="";for(m=0;m<f.length;m++){k=f[m][0];q={name:k,clsids:tinymce.explode(f[m][1]||""),mimes:tinymce.explode(f[m][2]||""),codebase:f[m][3]};for(p=0;p<q.clsids.length;p++){l["clsid:"+q.clsids[p]]=q}for(p=0;p<q.mimes.length;p++){l[q.mimes[p]]=q}l["mceItem"+k]=q;l[k.toLowerCase()]=q;a+=(a?"|":"")+k}tinymce.each(n.getParam("media_types","video=mp4,m4v,ogv,webm;silverlight=xap;flash=swf,flv;shockwave=dcr;quicktime=mov,qt,mpg,mp3,mpeg;shockwave=dcr;windowsmedia=avi,wmv,wm,asf,asx,wmx,wvx;realmedia=rm,ra,ram;java=jar").split(";"),function(v){var s,u,t;v=v.split(/=/);u=tinymce.explode(v[1].toLowerCase());for(s=0;s<u.length;s++){t=l[v[0].toLowerCase()];if(t){l[u[s]]=t}}});a=new RegExp("write("+a+")\\(([^)]+)\\)");r.lookup=l;n.onPreInit.add(function(){n.schema.addValidElements("object[id|style|width|height|classid|codebase|*],param[name|value],embed[id|style|width|height|type|src|*],video[*],audio[*],source[*]");n.parser.addNodeFilter("object,embed,video,audio,script,iframe",function(s){var t=s.length;while(t--){r.objectToImg(s[t])}});n.serializer.addNodeFilter("img",function(s,u,t){var v=s.length,w;while(v--){w=s[v];if((w.attr("class")||"").indexOf("mceItemMedia")!==-1){r.imgToObject(w,t)}}})});n.onInit.add(function(){if(n.theme&&n.theme.onResolveName){n.theme.onResolveName.add(function(i,s){if(s.name==="img"&&n.dom.hasClass(s.node,"mceItemMedia")){s.name="media"}})}if(n&&n.plugins.contextmenu){n.plugins.contextmenu.onContextMenu.add(function(s,t,i){if(i.nodeName==="IMG"&&i.className.indexOf("mceItemMedia")!==-1){t.add({title:"media.edit",icon:"media",cmd:"mceMedia"})}})}});n.addCommand("mceMedia",function(){var s,i;i=n.selection.getNode();if(o(i)){s=g.parse(n.dom.getAttrib(i,"data-mce-json"));tinymce.each(d,function(t){var u=n.dom.getAttrib(i,t);if(u){s[t]=u}});s.type=r.getType(i.className).name.toLowerCase()}if(!s){s={type:"flash",video:{sources:[]},params:{}}}n.windowManager.open({file:j+"/media.htm",width:430+parseInt(n.getLang("media.delta_width",0)),height:500+parseInt(n.getLang("media.delta_height",0)),inline:1},{plugin_url:j,data:s})});n.addButton("media",{title:"media.desc",cmd:"mceMedia"});n.onNodeChange.add(function(s,i,t){i.setActive("media",o(t))})},convertUrl:function(k,n){var j=this,m=j.editor,l=m.settings,o=l.url_converter,i=l.url_converter_scope||j;if(!k){return k}if(n){return m.documentBaseURI.toAbsolute(k)}return o.call(i,k,"src","object")},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}},dataToImg:function(m,k){var r=this,o=r.editor,p=o.documentBaseURI,j,q,n,l;m.params.src=r.convertUrl(m.params.src,k);q=m.video.attrs;if(q){q.src=r.convertUrl(q.src,k)}if(q){q.poster=r.convertUrl(q.poster,k)}j=c(m.video.sources);if(j){for(l=0;l<j.length;l++){j[l].src=r.convertUrl(j[l].src,k)}}n=r.editor.dom.create("img",{id:m.id,style:m.style,align:m.align,src:r.editor.theme.url+"/img/trans.gif","class":"mceItemMedia mceItem"+r.getType(m.type).name,"data-mce-json":g.serialize(m,"'")});n.width=m.width||"320";n.height=m.height||"240";return n},dataToHtml:function(i,j){return this.editor.serializer.serialize(this.dataToImg(i,j),{force_absolute:j})},htmlToData:function(k){var j,i,l;l={type:"flash",video:{sources:[]},params:{}};j=this.editor.parser.parse(k);i=j.getAll("img")[0];if(i){l=g.parse(i.attr("data-mce-json"));l.type=this.getType(i.attr("class")).name.toLowerCase();tinymce.each(d,function(m){var n=i.attr(m);if(n){l[m]=n}})}return l},getType:function(m){var k,j,l;j=tinymce.explode(m," ");for(k=0;k<j.length;k++){l=this.lookup[j[k]];if(l){return l}}},imgToObject:function(x,n){var t=this,o=t.editor,A,E,j,s,F,w,D,u,k,C,r,p,y,B,m,v,l,z;function q(i,G){var K,J,L,I,H;H=o.getParam("flash_video_player_url",t.convertUrl(t.url+"/moxieplayer.swf"));if(H){K=o.documentBaseURI;D.params.src=H;if(o.getParam("flash_video_player_absvideourl",true)){i=K.toAbsolute(i||"",true);G=K.toAbsolute(G||"",true)}L="";J=o.getParam("flash_video_player_flashvars",{url:"$url",poster:"$poster"});tinymce.each(J,function(N,M){N=N.replace(/\$url/,i||"");N=N.replace(/\$poster/,G||"");if(N.length>0){L+=(L?"&":"")+M+"="+escape(N)}});if(L.length){D.params.flashvars=L}I=o.getParam("flash_video_player_params",{allowfullscreen:true,allowscriptaccess:true});tinymce.each(I,function(N,M){D.params[M]=""+N})}}D=g.parse(x.attr("data-mce-json"));p=this.getType(x.attr("class"));z=x.attr("data-mce-style");if(!z){z=x.attr("style");if(z){z=o.dom.serializeStyle(o.dom.parseStyle(z,"img"))}}if(p.name==="Iframe"){v=new b("iframe",1);tinymce.each(d,function(i){var G=x.attr(i);if(i=="class"&&G){G=G.replace(/mceItem.+ ?/g,"")}if(G&&G.length>0){v.attr(i,G)}});for(F in D.params){v.attr(F,D.params[F])}v.attr({style:z,src:D.params.src});x.replace(v);return}if(this.editor.settings.media_use_script){v=new b("script",1).attr("type","text/javascript");w=new b("#text",3);w.value="write"+p.name+"("+g.serialize(tinymce.extend(D.params,{width:x.attr("width"),height:x.attr("height")}))+");";v.append(w);x.replace(v);return}if(p.name==="Video"&&D.video.sources[0]){A=new b("video",1).attr(tinymce.extend({id:x.attr("id"),width:x.attr("width"),height:x.attr("height"),style:z},D.video.attrs));if(D.video.attrs){l=D.video.attrs.poster}k=D.video.sources=c(D.video.sources);for(y=0;y<k.length;y++){if(/\.mp4$/.test(k[y].src)){m=k[y].src}}if(!k[0].type){A.attr("src",k[0].src);k.splice(0,1)}for(y=0;y<k.length;y++){u=new b("source",1).attr(k[y]);u.shortEnded=true;A.append(u)}if(m){q(m,l);p=t.getType("flash")}else{D.params.src=""}}if(D.params.src){if(/\.flv$/i.test(D.params.src)){q(D.params.src,"")}if(n&&n.force_absolute){D.params.src=o.documentBaseURI.toAbsolute(D.params.src)}E=new b("object",1).attr({id:x.attr("id"),width:x.attr("width"),height:x.attr("height"),style:z});tinymce.each(d,function(i){if(D[i]&&i!="type"){E.attr(i,D[i])}});for(F in D.params){r=new b("param",1);r.shortEnded=true;w=D.params[F];if(F==="src"&&p.name==="WindowsMedia"){F="url"}r.attr({name:F,value:w});E.append(r)}if(this.editor.getParam("media_strict",true)){E.attr({data:D.params.src,type:p.mimes[0]})}else{E.attr({classid:"clsid:"+p.clsids[0],codebase:p.codebase});j=new b("embed",1);j.shortEnded=true;j.attr({id:x.attr("id"),width:x.attr("width"),height:x.attr("height"),style:z,type:p.mimes[0]});for(F in D.params){j.attr(F,D.params[F])}tinymce.each(d,function(i){if(D[i]&&i!="type"){j.attr(i,D[i])}});E.append(j)}if(D.object_html){w=new b("#text",3);w.raw=true;w.value=D.object_html;E.append(w)}if(A){A.append(E)}}if(A){if(D.video_html){w=new b("#text",3);w.raw=true;w.value=D.video_html;A.append(w)}}if(A||E){x.replace(A||E)}else{x.remove()}},objectToImg:function(y){var F,j,A,p,G,H,u,w,t,B,z,q,o,D,x,k,E,n,C=this.lookup,l,v,s=this.editor.settings.url_converter,m=this.editor.settings.url_converter_scope;function r(i){return new tinymce.html.Serializer({inner:true,validate:false}).serialize(i)}if(!y.parent){return}if(y.name==="script"){if(y.firstChild){l=a.exec(y.firstChild.value)}if(!l){return}n=l[1];E={video:{},params:g.parse(l[2])};w=E.params.width;t=E.params.height}E=E||{video:{},params:{}};G=new b("img",1);G.attr({src:this.editor.theme.url+"/img/trans.gif"});H=y.name;if(H==="video"){A=y;F=y.getAll("object")[0];j=y.getAll("embed")[0];w=A.attr("width");t=A.attr("height");u=A.attr("id");E.video={attrs:{},sources:[]};v=E.video.attrs;for(H in A.attributes.map){v[H]=A.attributes.map[H]}x=y.attr("src");if(x){E.video.sources.push({src:s.call(m,x,"src","video")})}k=A.getAll("source");for(z=0;z<k.length;z++){x=k[z].remove();E.video.sources.push({src:s.call(m,x.attr("src"),"src","source"),type:x.attr("type"),media:x.attr("media")})}if(v.poster){v.poster=s.call(m,v.poster,"poster","video")}}if(y.name==="object"){F=y;j=y.getAll("embed")[0]}if(y.name==="embed"){j=y}if(y.name==="iframe"){p=y;n="Iframe"}if(F){w=w||F.attr("width");t=t||F.attr("height");B=B||F.attr("style");u=u||F.attr("id");D=F.getAll("param");for(z=0;z<D.length;z++){o=D[z];H=o.remove().attr("name");if(!h[H]){E.params[H]=o.attr("value")}}E.params.src=E.params.src||F.attr("data")}if(j){w=w||j.attr("width");t=t||j.attr("height");B=B||j.attr("style");u=u||j.attr("id");for(H in j.attributes.map){if(!h[H]&&!E.params[H]){E.params[H]=j.attributes.map[H]}}}if(p){w=p.attr("width");t=p.attr("height");B=B||p.attr("style");u=p.attr("id");tinymce.each(d,function(i){G.attr(i,p.attr(i))});for(H in p.attributes.map){if(!h[H]&&!E.params[H]){E.params[H]=p.attributes.map[H]}}}if(E.params.movie){E.params.src=E.params.src||E.params.movie;delete E.params.movie}if(E.params.src){E.params.src=s.call(m,E.params.src,"src","object")}if(A){n=C.video.name}if(F&&!n){n=(C[(F.attr("clsid")||"").toLowerCase()]||C[(F.attr("type")||"").toLowerCase()]||{}).name}if(j&&!n){n=(C[(j.attr("type")||"").toLowerCase()]||{}).name}y.replace(G);if(j){j.remove()}if(F){q=r(F.remove());if(q){E.object_html=q}}if(A){q=r(A.remove());if(q){E.video_html=q}}G.attr({id:u,"class":"mceItemMedia mceItem"+(n||"Flash"),style:B,width:w||"320",height:t||"240","data-mce-json":g.serialize(E,"'")})}});tinymce.PluginManager.add("media",tinymce.plugins.MediaPlugin)})();
\ No newline at end of file
+(function(){var d=tinymce.explode("id,name,width,height,style,align,class,hspace,vspace,bgcolor,type"),h=tinymce.makeMap(d.join(",")),b=tinymce.html.Node,f,a,g=tinymce.util.JSON,e;f=[["Flash","d27cdb6e-ae6d-11cf-96b8-444553540000","application/x-shockwave-flash","http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"],["ShockWave","166b1bca-3f9c-11cf-8075-444553540000","application/x-director","http://download.macromedia.com/pub/shockwave/cabs/director/sw.cab#version=8,5,1,0"],["WindowsMedia","6bf52a52-394a-11d3-b153-00c04f79faa6,22d6f312-b0f6-11d0-94ab-0080c74c7e95,05589fa1-c356-11ce-bf01-00aa0055595a","application/x-mplayer2","http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701"],["QuickTime","02bf25d5-8c17-4b23-bc80-d3488abddc6b","video/quicktime","http://www.apple.com/qtactivex/qtplugin.cab#version=6,0,2,0"],["RealMedia","cfcdaa03-8be4-11cf-b84b-0020afbbccfa","audio/x-pn-realaudio-plugin","http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"],["Java","8ad9c840-044e-11d1-b3e9-00805f499d93","application/x-java-applet","http://java.sun.com/products/plugin/autodl/jinstall-1_5_0-windows-i586.cab#Version=1,5,0,0"],["Silverlight","dfeaf541-f3e1-4c24-acac-99c30715084a","application/x-silverlight-2"],["Iframe"],["Video"],["Audio"]];function c(m){var l,j,k;if(m&&!m.splice){j=[];for(k=0;true;k++){if(m[k]){j[k]=m[k]}else{break}}return j}return m}tinymce.create("tinymce.plugins.MediaPlugin",{init:function(n,j){var r=this,l={},m,p,q,k;function o(i){return i&&i.nodeName==="IMG"&&n.dom.hasClass(i,"mceItemMedia")}r.editor=n;r.url=j;a="";for(m=0;m<f.length;m++){k=f[m][0];q={name:k,clsids:tinymce.explode(f[m][1]||""),mimes:tinymce.explode(f[m][2]||""),codebase:f[m][3]};for(p=0;p<q.clsids.length;p++){l["clsid:"+q.clsids[p]]=q}for(p=0;p<q.mimes.length;p++){l[q.mimes[p]]=q}l["mceItem"+k]=q;l[k.toLowerCase()]=q;a+=(a?"|":"")+k}tinymce.each(n.getParam("media_types","video=mp4,m4v,ogv,webm;silverlight=xap;flash=swf,flv;shockwave=dcr;quicktime=mov,qt,mpg,mpeg;shockwave=dcr;windowsmedia=avi,wmv,wm,asf,asx,wmx,wvx;realmedia=rm,ra,ram;java=jar;audio=mp3,ogg").split(";"),function(v){var s,u,t;v=v.split(/=/);u=tinymce.explode(v[1].toLowerCase());for(s=0;s<u.length;s++){t=l[v[0].toLowerCase()];if(t){l[u[s]]=t}}});a=new RegExp("write("+a+")\\(([^)]+)\\)");r.lookup=l;n.onPreInit.add(function(){n.schema.addValidElements("object[id|style|width|height|classid|codebase|*],param[name|value],embed[id|style|width|height|type|src|*],video[*],audio[*],source[*]");n.parser.addNodeFilter("object,embed,video,audio,script,iframe",function(s){var t=s.length;while(t--){r.objectToImg(s[t])}});n.serializer.addNodeFilter("img",function(s,u,t){var v=s.length,w;while(v--){w=s[v];if((w.attr("class")||"").indexOf("mceItemMedia")!==-1){r.imgToObject(w,t)}}})});n.onInit.add(function(){if(n.theme&&n.theme.onResolveName){n.theme.onResolveName.add(function(i,s){if(s.name==="img"&&n.dom.hasClass(s.node,"mceItemMedia")){s.name="media"}})}if(n&&n.plugins.contextmenu){n.plugins.contextmenu.onContextMenu.add(function(s,t,i){if(i.nodeName==="IMG"&&i.className.indexOf("mceItemMedia")!==-1){t.add({title:"media.edit",icon:"media",cmd:"mceMedia"})}})}});n.addCommand("mceMedia",function(){var s,i;i=n.selection.getNode();if(o(i)){s=n.dom.getAttrib(i,"data-mce-json");if(s){s=g.parse(s);tinymce.each(d,function(t){var u=n.dom.getAttrib(i,t);if(u){s[t]=u}});s.type=r.getType(i.className).name.toLowerCase()}}if(!s){s={type:"flash",video:{sources:[]},params:{}}}n.windowManager.open({file:j+"/media.htm",width:430+parseInt(n.getLang("media.delta_width",0)),height:500+parseInt(n.getLang("media.delta_height",0)),inline:1},{plugin_url:j,data:s})});n.addButton("media",{title:"media.desc",cmd:"mceMedia"});n.onNodeChange.add(function(s,i,t){i.setActive("media",o(t))})},convertUrl:function(k,n){var j=this,m=j.editor,l=m.settings,o=l.url_converter,i=l.url_converter_scope||j;if(!k){return k}if(n){return m.documentBaseURI.toAbsolute(k)}return o.call(i,k,"src","object")},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}},dataToImg:function(m,k){var r=this,o=r.editor,p=o.documentBaseURI,j,q,n,l;m.params.src=r.convertUrl(m.params.src,k);q=m.video.attrs;if(q){q.src=r.convertUrl(q.src,k)}if(q){q.poster=r.convertUrl(q.poster,k)}j=c(m.video.sources);if(j){for(l=0;l<j.length;l++){j[l].src=r.convertUrl(j[l].src,k)}}n=r.editor.dom.create("img",{id:m.id,style:m.style,align:m.align,src:r.editor.theme.url+"/img/trans.gif","class":"mceItemMedia mceItem"+r.getType(m.type).name,"data-mce-json":g.serialize(m,"'")});n.width=m.width||(m.type=="audio"?"300":"320");n.height=m.height||(m.type=="audio"?"32":"240");return n},dataToHtml:function(i,j){return this.editor.serializer.serialize(this.dataToImg(i,j),{forced_root_block:"",force_absolute:j})},htmlToData:function(k){var j,i,l;l={type:"flash",video:{sources:[]},params:{}};j=this.editor.parser.parse(k);i=j.getAll("img")[0];if(i){l=g.parse(i.attr("data-mce-json"));l.type=this.getType(i.attr("class")).name.toLowerCase();tinymce.each(d,function(m){var n=i.attr(m);if(n){l[m]=n}})}return l},getType:function(m){var k,j,l;j=tinymce.explode(m," ");for(k=0;k<j.length;k++){l=this.lookup[j[k]];if(l){return l}}},imgToObject:function(x,n){var t=this,o=t.editor,A,F,j,s,G,w,E,u,k,C,r,p,y,B,m,v,l,z,D;function q(i,H){var L,K,M,J,I;I=o.getParam("flash_video_player_url",t.convertUrl(t.url+"/moxieplayer.swf"));if(I){L=o.documentBaseURI;E.params.src=I;if(o.getParam("flash_video_player_absvideourl",true)){i=L.toAbsolute(i||"",true);H=L.toAbsolute(H||"",true)}M="";K=o.getParam("flash_video_player_flashvars",{url:"$url",poster:"$poster"});tinymce.each(K,function(O,N){O=O.replace(/\$url/,i||"");O=O.replace(/\$poster/,H||"");if(O.length>0){M+=(M?"&":"")+N+"="+escape(O)}});if(M.length){E.params.flashvars=M}J=o.getParam("flash_video_player_params",{allowfullscreen:true,allowscriptaccess:true});tinymce.each(J,function(O,N){E.params[N]=""+O})}}E=x.attr("data-mce-json");if(!E){return}E=g.parse(E);p=this.getType(x.attr("class"));z=x.attr("data-mce-style");if(!z){z=x.attr("style");if(z){z=o.dom.serializeStyle(o.dom.parseStyle(z,"img"))}}if(p.name==="Iframe"){v=new b("iframe",1);tinymce.each(d,function(i){var H=x.attr(i);if(i=="class"&&H){H=H.replace(/mceItem.+ ?/g,"")}if(H&&H.length>0){v.attr(i,H)}});for(G in E.params){v.attr(G,E.params[G])}v.attr({style:z,src:E.params.src});x.replace(v);return}if(this.editor.settings.media_use_script){v=new b("script",1).attr("type","text/javascript");w=new b("#text",3);w.value="write"+p.name+"("+g.serialize(tinymce.extend(E.params,{width:x.attr("width"),height:x.attr("height")}))+");";v.append(w);x.replace(v);return}if(p.name==="Video"&&E.video.sources[0]){A=new b("video",1).attr(tinymce.extend({id:x.attr("id"),width:x.attr("width"),height:x.attr("height"),style:z},E.video.attrs));if(E.video.attrs){l=E.video.attrs.poster}k=E.video.sources=c(E.video.sources);for(y=0;y<k.length;y++){if(/\.mp4$/.test(k[y].src)){m=k[y].src}}if(!k[0].type){A.attr("src",k[0].src);k.splice(0,1)}for(y=0;y<k.length;y++){u=new b("source",1).attr(k[y]);u.shortEnded=true;A.append(u)}if(m){q(m,l);p=t.getType("flash")}else{E.params.src=""}}if(p.name==="Audio"&&E.video.sources[0]){D=new b("audio",1).attr(tinymce.extend({id:x.attr("id"),width:x.attr("width"),height:x.attr("height"),style:z},E.video.attrs));if(E.video.attrs){l=E.video.attrs.poster}k=E.video.sources=c(E.video.sources);if(!k[0].type){D.attr("src",k[0].src);k.splice(0,1)}for(y=0;y<k.length;y++){u=new b("source",1).attr(k[y]);u.shortEnded=true;D.append(u)}E.params.src=""}if(E.params.src){if(/\.flv$/i.test(E.params.src)){q(E.params.src,"")}if(n&&n.force_absolute){E.params.src=o.documentBaseURI.toAbsolute(E.params.src)}F=new b("object",1).attr({id:x.attr("id"),width:x.attr("width"),height:x.attr("height"),style:z});tinymce.each(d,function(i){if(E[i]&&i!="type"){F.attr(i,E[i])}});for(G in E.params){r=new b("param",1);r.shortEnded=true;w=E.params[G];if(G==="src"&&p.name==="WindowsMedia"){G="url"}r.attr({name:G,value:w});F.append(r)}if(this.editor.getParam("media_strict",true)){F.attr({data:E.params.src,type:p.mimes[0]})}else{F.attr({classid:"clsid:"+p.clsids[0],codebase:p.codebase});j=new b("embed",1);j.shortEnded=true;j.attr({id:x.attr("id"),width:x.attr("width"),height:x.attr("height"),style:z,type:p.mimes[0]});for(G in E.params){j.attr(G,E.params[G])}tinymce.each(d,function(i){if(E[i]&&i!="type"){j.attr(i,E[i])}});F.append(j)}if(E.object_html){w=new b("#text",3);w.raw=true;w.value=E.object_html;F.append(w)}if(A){A.append(F)}}if(A){if(E.video_html){w=new b("#text",3);w.raw=true;w.value=E.video_html;A.append(w)}}if(D){if(E.video_html){w=new b("#text",3);w.raw=true;w.value=E.video_html;D.append(w)}}if(A||D||F){x.replace(A||D||F)}else{x.remove()}},objectToImg:function(y){var F,j,A,p,G,H,u,w,t,B,z,q,o,D,x,k,E,n,C=this.lookup,l,v,s=this.editor.settings.url_converter,m=this.editor.settings.url_converter_scope;function r(i){return new tinymce.html.Serializer({inner:true,validate:false}).serialize(i)}if(!y.parent){return}if(y.name==="script"){if(y.firstChild){l=a.exec(y.firstChild.value)}if(!l){return}n=l[1];E={video:{},params:g.parse(l[2])};w=E.params.width;t=E.params.height}E=E||{video:{},params:{}};G=new b("img",1);G.attr({src:this.editor.theme.url+"/img/trans.gif"});H=y.name;if(H==="video"||H=="audio"){A=y;F=y.getAll("object")[0];j=y.getAll("embed")[0];w=A.attr("width");t=A.attr("height");u=A.attr("id");E.video={attrs:{},sources:[]};v=E.video.attrs;for(H in A.attributes.map){v[H]=A.attributes.map[H]}x=y.attr("src");if(x){E.video.sources.push({src:s.call(m,x,"src",y.name)})}k=A.getAll("source");for(z=0;z<k.length;z++){x=k[z].remove();E.video.sources.push({src:s.call(m,x.attr("src"),"src","source"),type:x.attr("type"),media:x.attr("media")})}if(v.poster){v.poster=s.call(m,v.poster,"poster",y.name)}}if(y.name==="object"){F=y;j=y.getAll("embed")[0]}if(y.name==="embed"){j=y}if(y.name==="iframe"){p=y;n="Iframe"}if(F){w=w||F.attr("width");t=t||F.attr("height");B=B||F.attr("style");u=u||F.attr("id");D=F.getAll("param");for(z=0;z<D.length;z++){o=D[z];H=o.remove().attr("name");if(!h[H]){E.params[H]=o.attr("value")}}E.params.src=E.params.src||F.attr("data")}if(j){w=w||j.attr("width");t=t||j.attr("height");B=B||j.attr("style");u=u||j.attr("id");for(H in j.attributes.map){if(!h[H]&&!E.params[H]){E.params[H]=j.attributes.map[H]}}}if(p){w=p.attr("width");t=p.attr("height");B=B||p.attr("style");u=p.attr("id");tinymce.each(d,function(i){G.attr(i,p.attr(i))});for(H in p.attributes.map){if(!h[H]&&!E.params[H]){E.params[H]=p.attributes.map[H]}}}if(E.params.movie){E.params.src=E.params.src||E.params.movie;delete E.params.movie}if(E.params.src){E.params.src=s.call(m,E.params.src,"src","object")}if(A){if(y.name==="video"){n=C.video.name}else{if(y.name==="audio"){n=C.audio.name}}}if(F&&!n){n=(C[(F.attr("clsid")||"").toLowerCase()]||C[(F.attr("type")||"").toLowerCase()]||{}).name}if(j&&!n){n=(C[(j.attr("type")||"").toLowerCase()]||{}).name}y.replace(G);if(j){j.remove()}if(F){q=r(F.remove());if(q){E.object_html=q}}if(A){q=r(A.remove());if(q){E.video_html=q}}G.attr({id:u,"class":"mceItemMedia mceItem"+(n||"Flash"),style:B,width:w||(y.name=="audio"?"300":"320"),height:t||(y.name=="audio"?"32":"240"),"data-mce-json":g.serialize(E,"'")})}});tinymce.PluginManager.add("media",tinymce.plugins.MediaPlugin)})();
\ No newline at end of file
index 2c10f9e89e697c8600310e10e9c15aff5d4952b2..c96fc4fc7ea86ce88d54af8282caf4306ab5dff5 100644 (file)
                return elm.value;
        }
 
                return elm.value;
        }
 
-       function setVal(id, value) {
+       function setVal(id, value, name) {
                if (typeof(value) != 'undefined') {
                        var elm = get(id);
 
                        if (elm.nodeName == "SELECT")
                                selectByValue(document.forms[0], id, value);
                        else if (elm.type == "checkbox") {
                if (typeof(value) != 'undefined') {
                        var elm = get(id);
 
                        if (elm.nodeName == "SELECT")
                                selectByValue(document.forms[0], id, value);
                        else if (elm.type == "checkbox") {
-                               if (typeof(value) == 'string')
-                                       elm.checked = value.toLowerCase() === 'true' ? true : false;
-                               else
-                                       elm.checked = !!value;
+                               if (typeof(value) == 'string') {
+                                       value = value.toLowerCase();
+                                       value = (!name && value === 'true') || (name && value === name.toLowerCase());
+                               }
+                               elm.checked = !!value;
                        } else
                                elm.value = value;
                }
                        } else
                                elm.value = value;
                }
                        get('filebrowsercontainer').innerHTML = getBrowserHTML('filebrowser','src','media','media');
                        get('qtsrcfilebrowsercontainer').innerHTML = getBrowserHTML('qtsrcfilebrowser','quicktime_qtsrc','media','media');
                        get('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor');
                        get('filebrowsercontainer').innerHTML = getBrowserHTML('filebrowser','src','media','media');
                        get('qtsrcfilebrowsercontainer').innerHTML = getBrowserHTML('qtsrcfilebrowser','quicktime_qtsrc','media','media');
                        get('bgcolor_pickcontainer').innerHTML = getColorPickerHTML('bgcolor_pick','bgcolor');
-                       get('video_altsource1_filebrowser').innerHTML = getBrowserHTML('filebrowser_altsource1','video_altsource1','media','media');
-                       get('video_altsource2_filebrowser').innerHTML = getBrowserHTML('filebrowser_altsource2','video_altsource2','media','media');
+                       get('video_altsource1_filebrowser').innerHTML = getBrowserHTML('video_filebrowser_altsource1','video_altsource1','media','media');
+                       get('video_altsource2_filebrowser').innerHTML = getBrowserHTML('video_filebrowser_altsource2','video_altsource2','media','media');
+                       get('audio_altsource1_filebrowser').innerHTML = getBrowserHTML('audio_filebrowser_altsource1','audio_altsource1','media','media');
+                       get('audio_altsource2_filebrowser').innerHTML = getBrowserHTML('audio_filebrowser_altsource2','audio_altsource2','media','media');
                        get('video_poster_filebrowser').innerHTML = getBrowserHTML('filebrowser_poster','video_poster','media','image');
 
                        html = this.getMediaListHTML('medialist', 'src', 'media', 'media');
                        get('video_poster_filebrowser').innerHTML = getBrowserHTML('filebrowser_poster','video_poster','media','image');
 
                        html = this.getMediaListHTML('medialist', 'src', 'media', 'media');
                        if (isVisible('filebrowser'))
                                get('src').style.width = '230px';
 
                        if (isVisible('filebrowser'))
                                get('src').style.width = '230px';
 
-                       if (isVisible('filebrowser_altsource1'))
+                       if (isVisible('video_filebrowser_altsource1'))
                                get('video_altsource1').style.width = '220px';
 
                                get('video_altsource1').style.width = '220px';
 
-                       if (isVisible('filebrowser_altsource2'))
+                       if (isVisible('video_filebrowser_altsource2'))
                                get('video_altsource2').style.width = '220px';
 
                                get('video_altsource2').style.width = '220px';
 
+                       if (isVisible('audio_filebrowser_altsource1'))
+                               get('audio_altsource1').style.width = '220px';
+
+                       if (isVisible('audio_filebrowser_altsource2'))
+                               get('audio_altsource2').style.width = '220px';
+
                        if (isVisible('filebrowser_poster'))
                                get('video_poster').style.width = '220px';
 
                        if (isVisible('filebrowser_poster'))
                                get('video_poster').style.width = '220px';
 
 
                                                if (type == 'global')
                                                        list = data;
 
                                                if (type == 'global')
                                                        list = data;
-                                               else if (type == 'video') {
+                                               else if (type == 'video' || type == 'audio') {
                                                        list = data.video.attrs;
 
                                                        if (!list && !to_form)
                                                        list = data.video.attrs;
 
                                                        if (!list && !to_form)
 
                                                if (list) {
                                                        if (to_form) {
 
                                                if (list) {
                                                        if (to_form) {
-                                                               setVal(formItemName, list[name]);
+                                                               setVal(formItemName, list[name], type == 'video' || type == 'audio' ? name : '');
                                                        } else {
                                                                delete list[name];
 
                                                                value = getVal(formItemName);
                                                        } else {
                                                                delete list[name];
 
                                                                value = getVal(formItemName);
-                                                               if (type == 'video' && value === true)
+                                                               if ((type == 'video' || type == 'audio') && value === true)
                                                                        value = name;
 
                                                                if (defaultStates[formItemName]) {
                                                                        value = name;
 
                                                                if (defaultStates[formItemName]) {
                                        setVal('media_type', data.type);
                                }
 
                                        setVal('media_type', data.type);
                                }
 
-                               if (data.type == "video") {
+                               if (data.type == "video" || data.type == "audio") {
                                        if (!data.video.sources)
                                                data.video.sources = [];
 
                                        if (!data.video.sources)
                                                data.video.sources = [];
 
 
                        // Hide all fieldsets and show the one active
                        get('video_options').style.display = 'none';
 
                        // Hide all fieldsets and show the one active
                        get('video_options').style.display = 'none';
+                       get('audio_options').style.display = 'none';
                        get('flash_options').style.display = 'none';
                        get('quicktime_options').style.display = 'none';
                        get('shockwave_options').style.display = 'none';
                        get('flash_options').style.display = 'none';
                        get('quicktime_options').style.display = 'none';
                        get('shockwave_options').style.display = 'none';
                        setOptions('shockwave', 'sound,progress,autostart,swliveconnect,swvolume,swstretchstyle,swstretchhalign,swstretchvalign');
                        setOptions('windowsmedia', 'autostart,enabled,enablecontextmenu,fullscreen,invokeurls,mute,stretchtofit,windowlessvideo,balance,baseurl,captioningid,currentmarker,currentposition,defaultframe,playcount,rate,uimode,volume');
                        setOptions('realmedia', 'autostart,loop,autogotourl,center,imagestatus,maintainaspect,nojava,prefetch,shuffle,console,controls,numloop,scriptcallbacks');
                        setOptions('shockwave', 'sound,progress,autostart,swliveconnect,swvolume,swstretchstyle,swstretchhalign,swstretchvalign');
                        setOptions('windowsmedia', 'autostart,enabled,enablecontextmenu,fullscreen,invokeurls,mute,stretchtofit,windowlessvideo,balance,baseurl,captioningid,currentmarker,currentposition,defaultframe,playcount,rate,uimode,volume');
                        setOptions('realmedia', 'autostart,loop,autogotourl,center,imagestatus,maintainaspect,nojava,prefetch,shuffle,console,controls,numloop,scriptcallbacks');
-                       setOptions('video', 'poster,autoplay,loop,preload,controls');
+                       setOptions('video', 'poster,autoplay,loop,muted,preload,controls');
+                       setOptions('audio', 'autoplay,loop,preload,controls');
                        setOptions('global', 'id,name,vspace,hspace,bgcolor,align,width,height');
 
                        if (to_form) {
                        setOptions('global', 'id,name,vspace,hspace,bgcolor,align,width,height');
 
                        if (to_form) {
                                        src = data.video.sources[2];
                                        if (src)
                                                setVal('video_altsource2', src.src);
                                        src = data.video.sources[2];
                                        if (src)
                                                setVal('video_altsource2', src.src);
+                } else if (data.type == 'audio') {
+                    if (data.video.sources[0])
+                        setVal('src', data.video.sources[0].src);
+                    
+                    src = data.video.sources[1];
+                    if (src)
+                        setVal('audio_altsource1', src.src);
+                    
+                    src = data.video.sources[2];
+                    if (src)
+                        setVal('audio_altsource2', src.src);
                                } else {
                                        // Check flash vars
                                        if (data.type == 'flash') {
                                } else {
                                        // Check flash vars
                                        if (data.type == 'flash') {
                                        src = getVal("video_altsource2");
                                        if (src)
                                                data.video.sources[2] = {src : src};
                                        src = getVal("video_altsource2");
                                        if (src)
                                                data.video.sources[2] = {src : src};
+                } else if (data.type == 'audio') {
+                    if (!data.video.sources)
+                        data.video.sources = [];
+                    
+                    data.video.sources[0] = {src : src};
+                    
+                    src = getVal("audio_altsource1");
+                    if (src)
+                        data.video.sources[1] = {src : src};
+                    
+                    src = getVal("audio_altsource2");
+                    if (src)
+                        data.video.sources[2] = {src : src};
                                } else
                                        data.params.src = src;
 
                                // Set default size
                                } else
                                        data.params.src = src;
 
                                // Set default size
-                               setVal('width', data.width || 320);
-                               setVal('height', data.height || 240);
+                setVal('width', data.width || (data.type == 'audio' ? 300 : 320));
+                setVal('height', data.height || (data.type == 'audio' ? 32 : 240));
                        }
                },
 
                        }
                },
 
                },
 
                beforeResize : function() {
                },
 
                beforeResize : function() {
-                       this.width = parseInt(getVal('width') || "320", 10);
-                       this.height = parseInt(getVal('height') || "240", 10);
+            this.width = parseInt(getVal('width') || (this.data.type == 'audio' ? "300" : "320"), 10);
+            this.height = parseInt(getVal('height') || (this.data.type == 'audio' ? "32" : "240"), 10);
                },
 
                changeSize : function(type) {
                        var width, height, scale, size;
 
                        if (get('constrain').checked) {
                },
 
                changeSize : function(type) {
                        var width, height, scale, size;
 
                        if (get('constrain').checked) {
-                               width = parseInt(getVal('width') || "320", 10);
-                               height = parseInt(getVal('height') || "240", 10);
+                width = parseInt(getVal('width') || (this.data.type == 'audio' ? "300" : "320"), 10);
+                height = parseInt(getVal('height') || (this.data.type == 'audio' ? "32" : "240"), 10);
 
                                if (type == 'width') {
                                        this.height = Math.round((width / this.width) * height);
 
                                if (type == 'width') {
                                        this.height = Math.round((width / this.width) * height);
index edc2b0fcc7b91b53d99b1d787ef92c54d18b34db..dc4354d1b910197820915843261296bbade73bd9 100644 (file)
@@ -2,13 +2,13 @@
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
        <title>{#media_dlg.title}</title>
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
        <title>{#media_dlg.title}</title>
-       <script type="text/javascript" src="../../tiny_mce_popup.js?ver=342-20110407"></script>
-       <script type="text/javascript" src="js/media.js?ver=342-20110407"></script>
-       <script type="text/javascript" src="../../utils/mctabs.js?ver=342-20110407"></script>
-       <script type="text/javascript" src="../../utils/validate.js?ver=342-20110407"></script>
-       <script type="text/javascript" src="../../utils/form_utils.js?ver=342-20110407"></script>
-       <script type="text/javascript" src="../../utils/editable_selects.js?ver=342-20110407"></script>
-       <link href="css/media.css?ver=342-20110407" rel="stylesheet" type="text/css" />
+       <script type="text/javascript" src="../../tiny_mce_popup.js?ver=345-20110908"></script>
+       <script type="text/javascript" src="js/media.js?ver=345-20110908"></script>
+       <script type="text/javascript" src="../../utils/mctabs.js?ver=345-20110908"></script>
+       <script type="text/javascript" src="../../utils/validate.js?ver=345-20110908"></script>
+       <script type="text/javascript" src="../../utils/form_utils.js?ver=345-20110908"></script>
+       <script type="text/javascript" src="../../utils/editable_selects.js?ver=345-20110908"></script>
+       <link href="css/media.css?ver=345-20110908" rel="stylesheet" type="text/css" />
 </head>
 <body style="display: none" role="application">
 <form onsubmit="Media.insert();return false;" action="#">
 </head>
 <body style="display: none" role="application">
 <form onsubmit="Media.insert();return false;" action="#">
@@ -31,6 +31,7 @@
                                                                <td>
                                                                        <select id="media_type" name="media_type" onchange="Media.formToData('type');">
                                                                                <option value="video">HTML5 Video</option>
                                                                <td>
                                                                        <select id="media_type" name="media_type" onchange="Media.formToData('type');">
                                                                                <option value="video">HTML5 Video</option>
+                                                                               <option value="audio">HTML5 Audio</option>
                                                                                <option value="flash">Flash</option>
                                                                                <option value="quicktime">QuickTime</option>
                                                                                <option value="shockwave">Shockwave</option>
                                                                                <option value="flash">Flash</option>
                                                                                <option value="quicktime">QuickTime</option>
                                                                                <option value="shockwave">Shockwave</option>
                                                                </table>
                                                        </td>
                                                </tr>
                                                                </table>
                                                        </td>
                                                </tr>
+
+                                               <tr>
+                                                       <td><label for="video_preload">{#media_dlg.preload}</label></td>
+                                                       <td>
+                                                               <select id="video_preload" name="video_preload" onchange="Media.formToData();">
+                                                                       <option value="none">{#media_dlg.preload_none}</option> 
+                                                                       <option value="metadata">{#media_dlg.preload_metadata}</option>
+                                                                       <option value="auto">{#media_dlg.preload_auto}</option>
+                                                               </select>
+                                                       </td>
+                                               </tr>
                                        </table>
 
                                        <table role="presentation" border="0" cellpadding="4" cellspacing="0">
                                        </table>
 
                                        <table role="presentation" border="0" cellpadding="4" cellspacing="0">
                                                        <td>
                                                                <table role="presentation" border="0" cellpadding="0" cellspacing="0">
                                                                        <tr>
                                                        <td>
                                                                <table role="presentation" border="0" cellpadding="0" cellspacing="0">
                                                                        <tr>
-                                                                               <td><input type="checkbox" class="checkbox" id="video_loop" name="video_loop" onchange="Media.formToData();" /></td>
-                                                                               <td><label for="video_loop">{#media_dlg.loop}</label></td>
+                                                                               <td><input type="checkbox" class="checkbox" id="video_muted" name="video_muted" onchange="Media.formToData();" /></td>
+                                                                               <td><label for="video_muted">{#media_dlg.mute}</label></td>
+                                                                       </tr>
+                                                               </table>
+                                                       </td>
+
+                                                       <td>
+                                                                       <table role="presentation" border="0" cellpadding="0" cellspacing="0">
+                                                                                       <tr>
+                                                                                                       <td><input type="checkbox" class="checkbox" id="video_loop" name="video_loop" onchange="Media.formToData();" /></td>
+                                                                                                       <td><label for="video_loop">{#media_dlg.loop}</label></td>
+                                                                                       </tr>
+                                                                       </table>
+                                                       </td>
+
+                                                       <td>
+                                                               <table role="presentation" border="0" cellpadding="0" cellspacing="0">
+                                                                       <tr>
+                                                                               <td><input type="checkbox" class="checkbox" id="video_controls" name="video_controls" onchange="Media.formToData();" /></td>
+                                                                               <td><label for="video_controls">{#media_dlg.controls}</label></td>
+                                                                       </tr>
+                                                               </table>
+                                                       </td>
+                                               </tr>
+                                       </table>
+                               </fieldset>
+
+                               <fieldset id="audio_options">
+                                       <legend>{#media_dlg.html5_audio_options}</legend>
+
+                                       <table role="presentation">
+                                               <tr>
+                                                       <td><label for="audio_altsource1">{#media_dlg.altsource1}</label></td>
+                                                       <td>
+                                                               <table role="presentation" border="0" cellspacing="0" cellpadding="0">
+                                                                       <tr>
+                                                                               <td><input type="text" id="audio_altsource1" name="audio_altsource1" onchange="Media.formToData();" style="width: 240px" /></td>
+                                                                               <td id="audio_altsource1_filebrowser">&nbsp;</td>
+                                                                       </tr>
+                                                               </table>
+                                                       </td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td><label for="audio_altsource2">{#media_dlg.altsource2}</label></td>
+                                                       <td>
+                                                               <table role="presentation" border="0" cellspacing="0" cellpadding="0">
+                                                                       <tr>
+                                                                               <td><input type="text" id="audio_altsource2" name="audio_altsource2" onchange="Media.formToData();" style="width: 240px" /></td>
+                                                                               <td id="audio_altsource2_filebrowser">&nbsp;</td>
+                                                                       </tr>
+                                                               </table>
+                                                       </td>
+                                               </tr>
+
+                                               <tr>
+                                                       <td><label for="audio_preload">{#media_dlg.preload}</label></td>
+                                                       <td>
+                                                               <select id="audio_preload" name="audio_preload" onchange="Media.formToData();">
+                                                                       <option value="none">{#media_dlg.preload_none}</option> 
+                                                                       <option value="metadata">{#media_dlg.preload_metadata}</option>
+                                                                       <option value="auto">{#media_dlg.preload_auto}</option>
+                                                               </select>
+                                                       </td>
+                                               </tr>
+                                       </table>
+
+                                       <table role="presentation" border="0" cellpadding="4" cellspacing="0">
+                                               <tr>
+                                                       <td>
+                                                               <table role="presentation" border="0" cellpadding="0" cellspacing="0">
+                                                                       <tr>
+                                                                               <td><input type="checkbox" class="checkbox" id="audio_autoplay" name="audio_autoplay" onchange="Media.formToData();" /></td>
+                                                                               <td><label for="audio_autoplay">{#media_dlg.play}</label></td>
                                                                        </tr>
                                                                </table>
                                                        </td>
                                                                        </tr>
                                                                </table>
                                                        </td>
                                                        <td>
                                                                <table role="presentation" border="0" cellpadding="0" cellspacing="0">
                                                                        <tr>
                                                        <td>
                                                                <table role="presentation" border="0" cellpadding="0" cellspacing="0">
                                                                        <tr>
-                                                                               <td><input type="checkbox" class="checkbox" id="video_preload" name="video_preload" onchange="Media.formToData();" /></td>
-                                                                               <td><label for="video_preload">{#media_dlg.preload}</label></td>
+                                                                               <td><input type="checkbox" class="checkbox" id="audio_loop" name="audio_loop" onchange="Media.formToData();" /></td>
+                                                                               <td><label for="audio_loop">{#media_dlg.loop}</label></td>
                                                                        </tr>
                                                                </table>
                                                        </td>
                                                                        </tr>
                                                                </table>
                                                        </td>
                                                        <td>
                                                                <table role="presentation" border="0" cellpadding="0" cellspacing="0">
                                                                        <tr>
                                                        <td>
                                                                <table role="presentation" border="0" cellpadding="0" cellspacing="0">
                                                                        <tr>
-                                                                               <td><input type="checkbox" class="checkbox" id="video_controls" name="video_controls" onchange="Media.formToData();" /></td>
-                                                                               <td><label for="video_controls">{#media_dlg.controls}</label></td>
+                                                                               <td><input type="checkbox" class="checkbox" id="audio_controls" name="audio_controls" onchange="Media.formToData();" /></td>
+                                                                               <td><label for="audio_controls">{#media_dlg.controls}</label></td>
                                                                        </tr>
                                                                </table>
                                                        </td>
                                                                        </tr>
                                                                </table>
                                                        </td>
                                        </table>
                                </fieldset>
 
                                        </table>
                                </fieldset>
 
+
                                <fieldset id="flash_options">
                                        <legend>{#media_dlg.flash_options}</legend>
 
                                <fieldset id="flash_options">
                                        <legend>{#media_dlg.flash_options}</legend>
 
                        <div id="source_panel" class="panel">
                                <fieldset>
                                        <legend>{#media_dlg.source}</legend>
                        <div id="source_panel" class="panel">
                                <fieldset>
                                        <legend>{#media_dlg.source}</legend>
-                                       <textarea id="source" style="width: 100%; height: 390px"></textarea>
+                                       <textarea id="source" style="width: 99%; height: 390px"></textarea>
                                </fieldset>
                        </div>
                </div>
                                </fieldset>
                        </div>
                </div>
index 6c65069f3ee22e761aae344abaf536a46bbe95c3..4de97103a0d267e4815ac2006d6d4e68bd59a8d1 100644 (file)
@@ -1 +1 @@
-(function(){var c=tinymce.each,a={paste_auto_cleanup_on_paste:true,paste_enable_default_filters: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_sticky_default: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(d,e){return d.getParam(e,a[e])}tinymce.create("tinymce.plugins.PastePlugin",{init:function(d,e){var f=this;f.editor=d;f.url=e;f.onPreProcess=new tinymce.util.Dispatcher(f);f.onPostProcess=new tinymce.util.Dispatcher(f);f.onPreProcess.add(f._preProcess);f.onPostProcess.add(f._postProcess);f.onPreProcess.add(function(i,j){d.execCallback("paste_preprocess",i,j)});f.onPostProcess.add(function(i,j){d.execCallback("paste_postprocess",i,j)});d.onKeyDown.addToTop(function(i,j){if(((tinymce.isMac?j.metaKey:j.ctrlKey)&&j.keyCode==86)||(j.shiftKey&&j.keyCode==45)){return false}});d.pasteAsPlainText=b(d,"paste_text_sticky_default");function h(m,k){var l=d.dom,i,j;f.onPreProcess.dispatch(f,m);m.node=l.create("div",0,m.content);if(tinymce.isGecko){i=d.selection.getRng(true);if(i.startContainer==i.endContainer&&i.startContainer.nodeType==3){j=l.select("p,h1,h2,h3,h4,h5,h6,pre",m.node);if(j.length==1&&m.content.indexOf("__MCE_ITEM__")===-1){l.remove(j.reverse(),true)}}}f.onPostProcess.dispatch(f,m);m.content=d.serializer.serialize(m.node,{getInner:1});if((!k)&&(d.pasteAsPlainText)){f._insertPlainText(d,l,m.content);if(!b(d,"paste_text_sticky")){d.pasteAsPlainText=false;d.controlManager.setActive("pastetext",false)}}else{f._insert(m.content)}}d.addCommand("mceInsertClipboardContent",function(i,j){h(j,true)});if(!b(d,"paste_text_use_dialog")){d.addCommand("mcePasteText",function(j,i){var k=tinymce.util.Cookie;d.pasteAsPlainText=!d.pasteAsPlainText;d.controlManager.setActive("pastetext",d.pasteAsPlainText);if((d.pasteAsPlainText)&&(!k.get("tinymcePasteText"))){if(b(d,"paste_text_sticky")){d.windowManager.alert(d.translate("paste.plaintext_mode_sticky"))}else{d.windowManager.alert(d.translate("paste.plaintext_mode_sticky"))}if(!b(d,"paste_text_notifyalways")){k.set("tinymcePasteText","1",new Date(new Date().getFullYear()+1,12,31))}}})}d.addButton("pastetext",{title:"paste.paste_text_desc",cmd:"mcePasteText"});d.addButton("selectall",{title:"paste.selectall_desc",cmd:"selectall"});function g(s){var l,p,j,t,k=d.selection,o=d.dom,q=d.getBody(),i,r;if(s.clipboardData||o.doc.dataTransfer){r=(s.clipboardData||o.doc.dataTransfer).getData("Text");if(d.pasteAsPlainText){s.preventDefault();h({content:r.replace(/\r?\n/g,"<br />")});return}}if(o.get("_mcePaste")){return}l=o.add(q,"div",{id:"_mcePaste","class":"mcePaste","data-mce-bogus":"1"},"\uFEFF\uFEFF");if(q!=d.getDoc().body){i=o.getPos(d.selection.getStart(),q).y}else{i=q.scrollTop+o.getViewPort().y}o.setStyles(l,{position:"absolute",left:-10000,top:i,width:1,height:1,overflow:"hidden"});if(tinymce.isIE){t=k.getRng();j=o.doc.body.createTextRange();j.moveToElementText(l);j.execCommand("Paste");o.remove(l);if(l.innerHTML==="\uFEFF\uFEFF"){d.execCommand("mcePasteWord");s.preventDefault();return}k.setRng(t);k.setContent("");setTimeout(function(){h({content:l.innerHTML})},0);return tinymce.dom.Event.cancel(s)}else{function m(n){n.preventDefault()}o.bind(d.getDoc(),"mousedown",m);o.bind(d.getDoc(),"keydown",m);p=d.selection.getRng();l=l.firstChild;j=d.getDoc().createRange();j.setStart(l,0);j.setEnd(l,2);k.setRng(j);window.setTimeout(function(){var u="",n;if(!o.select("div.mcePaste > div.mcePaste").length){n=o.select("div.mcePaste");c(n,function(w){var v=w.firstChild;if(v&&v.nodeName=="DIV"&&v.style.marginTop&&v.style.backgroundColor){o.remove(v,1)}c(o.select("span.Apple-style-span",w),function(x){o.remove(x,1)});c(o.select("br[data-mce-bogus]",w),function(x){o.remove(x)});if(w.parentNode.className!="mcePaste"){u+=w.innerHTML}})}else{u="<pre>"+o.encode(r).replace(/\r?\n/g,"<br />")+"</pre>"}c(o.select("div.mcePaste"),function(v){o.remove(v)});if(p){k.setRng(p)}h({content:u});o.unbind(d.getDoc(),"mousedown",m);o.unbind(d.getDoc(),"keydown",m)},0)}}if(b(d,"paste_auto_cleanup_on_paste")){if(tinymce.isOpera||/Firefox\/2/.test(navigator.userAgent)){d.onKeyDown.addToTop(function(i,j){if(((tinymce.isMac?j.metaKey:j.ctrlKey)&&j.keyCode==86)||(j.shiftKey&&j.keyCode==45)){g(j)}})}else{d.onPaste.addToTop(function(i,j){return g(j)})}}d.onInit.add(function(){d.controlManager.setActive("pastetext",d.pasteAsPlainText);if(b(d,"paste_block_drop")){d.dom.bind(d.getBody(),["dragend","dragover","draggesture","dragdrop","drop","drag"],function(i){i.preventDefault();i.stopPropagation();return false})}});f._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(g,e){var k=this.editor,j=e.content,p=tinymce.grep,n=tinymce.explode,f=tinymce.trim,l,i;function d(h){c(h,function(o){if(o.constructor==RegExp){j=j.replace(o,"")}else{j=j.replace(o[0],o[1])}})}if(k.settings.paste_enable_default_filters==false){return}if(tinymce.isIE&&document.documentMode>=9){d([[/(?:<br>&nbsp;[\s\r\n]+|<br>)*(<\/?(h[1-6r]|p|div|address|pre|form|table|tbody|thead|tfoot|th|tr|td|li|ol|ul|caption|blockquote|center|dl|dt|dd|dir|fieldset)[^>]*>)(?:<br>&nbsp;[\s\r\n]+|<br>)*/g,"$1"]])}if(/class="?Mso|style="[^"]*\bmso-|w:WordDocument/i.test(j)||e.wordContent){e.wordContent=true;d([/^\s*(&nbsp;)+/gi,/(&nbsp;|<br[^>]*>)+\s*$/gi]);if(b(k,"paste_convert_headers_to_strong")){j=j.replace(/<p [^>]*class="?MsoHeading"?[^>]*>(.*?)<\/p>/gi,"<p><strong>$1</strong></p>")}if(b(k,"paste_convert_middot_lists")){d([[/<!--\[if !supportLists\]-->/gi,"$&__MCE_ITEM__"],[/(<span[^>]+(?:mso-list:|:\s*symbol)[^>]+>)/gi,"$1__MCE_ITEM__"],[/(<p[^>]+(?:MsoListParagraph)[^>]+>)/gi,"$1__MCE_ITEM__"]])}d([/<!--[\s\S]+?-->/gi,/<(!|script[^>]*>.*?<\/script(?=[>\s])|\/?(\?xml(:\w+)?|img|meta|link|style|\w:\w+)(?=[\s\/>]))[^>]*>/gi,[/<(\/?)s>/gi,"<$1strike>"],[/&nbsp;/gi,"\u00a0"]]);do{l=j.length;j=j.replace(/(<[a-z][^>]*\s)(?:id|name|language|type|on\w+|\w+:\w+)=(?:"[^"]*"|\w+)\s?/gi,"$1")}while(l!=j.length);if(b(k,"paste_retain_style_properties").replace(/^none$/i,"").length==0){j=j.replace(/<\/?span[^>]*>/gi,"")}else{d([[/<span\s+style\s*=\s*"\s*mso-spacerun\s*:\s*yes\s*;?\s*"\s*>([\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(t,h,r){var u=[],o=0,q=n(f(r).replace(/&quot;/gi,"'"),";");c(q,function(s){var w,y,z=n(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":u[o++]=w.replace(/^mso-|-alt$/g,"")+":"+x(y);return;case"horiz-align":u[o++]="text-align:"+y;return;case"vert-align":u[o++]="vertical-align:"+y;return;case"font-color":case"mso-foreground":u[o++]="color:"+y;return;case"mso-background":case"mso-highlight":u[o++]="background:"+y;return;case"mso-default-height":u[o++]="min-height:"+x(y);return;case"mso-default-width":u[o++]="min-width:"+x(y);return;case"mso-padding-between-alt":u[o++]="border-collapse:separate;border-spacing:"+x(y);return;case"text-line-through":if((y=="single")||(y=="double")){u[o++]="text-decoration:line-through"}return;case"mso-zero-height":if(y=="yes"){u[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}u[o++]=w+":"+z[1]}});if(o>0){return h+' style="'+u.join(";")+'"'}else{return h}}]])}}if(b(k,"paste_convert_headers_to_strong")){d([[/<h[1-6][^>]*>/gi,"<p><strong>"],[/<\/h[1-6][^>]*>/gi,"</strong></p>"]])}d([[/Version:[\d.]+\nStartHTML:\d+\nEndHTML:\d+\nStartFragment:\d+\nEndFragment:\d+/gi,""]]);i=b(k,"paste_strip_class_attributes");if(i!=="none"){function m(q,o){if(i==="all"){return""}var h=p(n(o.replace(/^(["'])(.*)\1$/,"$2")," "),function(r){return(/^(?!mso)/i.test(r))});return h.length?' class="'+h.join(" ")+'"':""}j=j.replace(/ class="([^"]+)"/gi,m);j=j.replace(/ class=([\-\w]+)/gi,m)}if(b(k,"paste_remove_spans")){j=j.replace(/<\/?span[^>]*>/gi,"")}e.content=j},_postProcess:function(g,i){var f=this,e=f.editor,h=e.dom,d;if(e.settings.paste_enable_default_filters==false){return}if(i.wordContent){c(h.select("a",i.node),function(j){if(!j.href||j.href.indexOf("#_Toc")!=-1){h.remove(j,1)}});if(b(e,"paste_convert_middot_lists")){f._convertLists(g,i)}d=b(e,"paste_retain_style_properties");if((tinymce.is(d,"string"))&&(d!=="all")&&(d!=="*")){d=tinymce.explode(d.replace(/^none$/i,""));c(h.select("*",i.node),function(m){var n={},k=0,l,o,j;if(d){for(l=0;l<d.length;l++){o=d[l];j=h.getStyle(m,o);if(j){n[o]=j;k++}}}h.setAttrib(m,"style","");if(d&&k>0){h.setStyles(m,n)}else{if(m.nodeName=="SPAN"&&!m.className){h.remove(m,true)}}})}}if(b(e,"paste_remove_styles")||(b(e,"paste_remove_styles_if_webkit")&&tinymce.isWebKit)){c(h.select("*[style]",i.node),function(j){j.removeAttribute("style");j.removeAttribute("data-mce-style")})}else{if(tinymce.isWebKit){c(h.select("*",i.node),function(j){j.removeAttribute("data-mce-style")})}}},_convertLists:function(g,e){var i=g.editor.dom,h,l,d=-1,f,m=[],k,j;c(i.select("p",e.node),function(t){var q,u="",s,r,n,o;for(q=t.firstChild;q&&q.nodeType==3;q=q.nextSibling){u+=q.nodeValue}u=t.innerHTML.replace(/<\/?\w+[^>]*>/gi,"").replace(/&nbsp;/g,"\u00a0");if(/^(__MCE_ITEM__)+[\u2022\u00b7\u00a7\u00d8o\u25CF]\s*\u00a0*/.test(u)){s="ul"}if(/^__MCE_ITEM__\s*\w+\.\s*\u00a0+/.test(u)){s="ol"}if(s){f=parseFloat(t.style.marginLeft||0);if(f>d){m.push(f)}if(!h||s!=k){h=i.create(s);i.insertAfter(h,t)}else{if(f>d){h=l.appendChild(i.create(s))}else{if(f<d){n=tinymce.inArray(m,f);o=i.getParents(h.parentNode,s);h=o[o.length-1-n]||h}}}c(i.select("span",t),function(v){var p=v.innerHTML.replace(/<\/?\w+[^>]*>/gi,"");if(s=="ul"&&/^__MCE_ITEM__[\u2022\u00b7\u00a7\u00d8o\u25CF]/.test(p)){i.remove(v)}else{if(/^__MCE_ITEM__[\s\S]*\w+\.(&nbsp;|\u00a0)*\s*/.test(p)){i.remove(v)}}});r=t.innerHTML;if(s=="ul"){r=t.innerHTML.replace(/__MCE_ITEM__/g,"").replace(/^[\u2022\u00b7\u00a7\u00d8o\u25CF]\s*(&nbsp;|\u00a0)+\s*/,"")}else{r=t.innerHTML.replace(/__MCE_ITEM__/g,"").replace(/^\s*\w+\.(&nbsp;|\u00a0)+\s*/,"")}l=h.appendChild(i.create("li",0,r));i.remove(t);d=f;k=s}else{h=d=0}});j=e.node.innerHTML;if(j.indexOf("__MCE_ITEM__")!=-1){e.node.innerHTML=j.replace(/__MCE_ITEM__/g,"")}},_insert:function(f,d){var e=this.editor,g=e.selection.getRng();if(!e.selection.isCollapsed()&&g.startContainer!=g.endContainer){e.getDoc().execCommand("Delete",false,null)}e.execCommand("mceInsertContent",false,f,{skip_undo:d})},_insertPlainText:function(j,x,v){var t,u,l,k,r,e,p,f,n=j.getWin(),z=j.getDoc(),s=j.selection,m=tinymce.is,y=tinymce.inArray,g=b(j,"paste_text_linebreaktype"),o=b(j,"paste_text_replacements");function q(d){c(d,function(h){if(h.constructor==RegExp){v=v.replace(h,"")}else{v=v.replace(h[0],h[1])}})}if((typeof(v)==="string")&&(v.length>0)){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"],[/<br[^>]*>|<\/tr>/gi,"\n"],[/<\/t[dh]>\s*<t[dh][^>]*>/gi,"\t"],/<[a-z!\/?][^>]*>/gi,[/&nbsp;/gi," "],[/(?:(?!\n)\s)*(\n+)(?:(?!\n)\s)*/gi,"$1"],[/\n{3,}/g,"\n\n"],/^\s+|\s+$/g]);v=x.decode(tinymce.html.Entities.encodeRaw(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,"<br />"]])}else{q([/^\s+|\s+$/g,[/\n\n/g,"</p><p>"],[/\n/g,"<br />"]])}}if((l=v.indexOf("</p><p>"))!=-1){k=v.lastIndexOf("</p><p>");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<u;t++){p+="</"+e[t].nodeName.toLowerCase()+">";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+'<span id="_plain_text_marker">&nbsp;</span>');window.setTimeout(function(){var d=x.get("_plain_text_marker"),A,h,w,i;s.select(d,false);z.execCommand("Delete",false,null);d=null;A=s.getStart();h=x.getViewPort(n);w=x.getPos(A).y;i=A.clientHeight;if((w<h.y)||(w+i>h.y+h.h)){z.body.scrollTop=w<h.y?w:w-h.h+25}},0)}},_legacySupport:function(){var e=this,d=e.editor;d.addCommand("mcePasteWord",function(){d.windowManager.open({file:e.url+"/pasteword.htm",width:parseInt(b(d,"paste_dialog_width")),height:parseInt(b(d,"paste_dialog_height")),inline:1})});if(b(d,"paste_text_use_dialog")){d.addCommand("mcePasteText",function(){d.windowManager.open({file:e.url+"/pastetext.htm",width:parseInt(b(d,"paste_dialog_width")),height:parseInt(b(d,"paste_dialog_height")),inline:1})})}d.addButton("pasteword",{title:"paste.paste_word_desc",cmd:"mcePasteWord"})}});tinymce.PluginManager.add("paste",tinymce.plugins.PastePlugin)})();
\ No newline at end of file
+(function(){var c=tinymce.each,a={paste_auto_cleanup_on_paste:true,paste_enable_default_filters: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_sticky_default: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(d,e){return d.getParam(e,a[e])}tinymce.create("tinymce.plugins.PastePlugin",{init:function(d,e){var f=this;f.editor=d;f.url=e;f.onPreProcess=new tinymce.util.Dispatcher(f);f.onPostProcess=new tinymce.util.Dispatcher(f);f.onPreProcess.add(f._preProcess);f.onPostProcess.add(f._postProcess);f.onPreProcess.add(function(i,j){d.execCallback("paste_preprocess",i,j)});f.onPostProcess.add(function(i,j){d.execCallback("paste_postprocess",i,j)});d.onKeyDown.addToTop(function(i,j){if(((tinymce.isMac?j.metaKey:j.ctrlKey)&&j.keyCode==86)||(j.shiftKey&&j.keyCode==45)){return false}});d.pasteAsPlainText=b(d,"paste_text_sticky_default");function h(l,j){var k=d.dom,i;f.onPreProcess.dispatch(f,l);l.node=k.create("div",0,l.content);if(tinymce.isGecko){i=d.selection.getRng(true);if(i.startContainer==i.endContainer&&i.startContainer.nodeType==3){if(l.node.childNodes.length===1&&/^(p|h[1-6]|pre)$/i.test(l.node.firstChild.nodeName)&&l.content.indexOf("__MCE_ITEM__")===-1){k.remove(l.node.firstChild,true)}}}f.onPostProcess.dispatch(f,l);l.content=d.serializer.serialize(l.node,{getInner:1,forced_root_block:""});if((!j)&&(d.pasteAsPlainText)){f._insertPlainText(l.content);if(!b(d,"paste_text_sticky")){d.pasteAsPlainText=false;d.controlManager.setActive("pastetext",false)}}else{f._insert(l.content)}}d.addCommand("mceInsertClipboardContent",function(i,j){h(j,true)});if(!b(d,"paste_text_use_dialog")){d.addCommand("mcePasteText",function(j,i){var k=tinymce.util.Cookie;d.pasteAsPlainText=!d.pasteAsPlainText;d.controlManager.setActive("pastetext",d.pasteAsPlainText);if((d.pasteAsPlainText)&&(!k.get("tinymcePasteText"))){if(b(d,"paste_text_sticky")){d.windowManager.alert(d.translate("paste.plaintext_mode_sticky"))}else{d.windowManager.alert(d.translate("paste.plaintext_mode"))}if(!b(d,"paste_text_notifyalways")){k.set("tinymcePasteText","1",new Date(new Date().getFullYear()+1,12,31))}}})}d.addButton("pastetext",{title:"paste.paste_text_desc",cmd:"mcePasteText"});d.addButton("selectall",{title:"paste.selectall_desc",cmd:"selectall"});function g(s){var l,p,j,t,k=d.selection,o=d.dom,q=d.getBody(),i,r;if(s.clipboardData||o.doc.dataTransfer){r=(s.clipboardData||o.doc.dataTransfer).getData("Text");if(d.pasteAsPlainText){s.preventDefault();h({content:o.encode(r).replace(/\r?\n/g,"<br />")});return}}if(o.get("_mcePaste")){return}l=o.add(q,"div",{id:"_mcePaste","class":"mcePaste","data-mce-bogus":"1"},"\uFEFF\uFEFF");if(q!=d.getDoc().body){i=o.getPos(d.selection.getStart(),q).y}else{i=q.scrollTop+o.getViewPort(d.getWin()).y}o.setStyles(l,{position:"absolute",left:tinymce.isGecko?-40:0,top:i-25,width:1,height:1,overflow:"hidden"});if(tinymce.isIE){t=k.getRng();j=o.doc.body.createTextRange();j.moveToElementText(l);j.execCommand("Paste");o.remove(l);if(l.innerHTML==="\uFEFF\uFEFF"){d.execCommand("mcePasteWord");s.preventDefault();return}k.setRng(t);k.setContent("");setTimeout(function(){h({content:l.innerHTML})},0);return tinymce.dom.Event.cancel(s)}else{function m(n){n.preventDefault()}o.bind(d.getDoc(),"mousedown",m);o.bind(d.getDoc(),"keydown",m);p=d.selection.getRng();l=l.firstChild;j=d.getDoc().createRange();j.setStart(l,0);j.setEnd(l,2);k.setRng(j);window.setTimeout(function(){var u="",n;if(!o.select("div.mcePaste > div.mcePaste").length){n=o.select("div.mcePaste");c(n,function(w){var v=w.firstChild;if(v&&v.nodeName=="DIV"&&v.style.marginTop&&v.style.backgroundColor){o.remove(v,1)}c(o.select("span.Apple-style-span",w),function(x){o.remove(x,1)});c(o.select("br[data-mce-bogus]",w),function(x){o.remove(x)});if(w.parentNode.className!="mcePaste"){u+=w.innerHTML}})}else{u="<p>"+o.encode(r).replace(/\r?\n\r?\n/g,"</p><p>").replace(/\r?\n/g,"<br />")+"</p>"}c(o.select("div.mcePaste"),function(v){o.remove(v)});if(p){k.setRng(p)}h({content:u});o.unbind(d.getDoc(),"mousedown",m);o.unbind(d.getDoc(),"keydown",m)},0)}}if(b(d,"paste_auto_cleanup_on_paste")){if(tinymce.isOpera||/Firefox\/2/.test(navigator.userAgent)){d.onKeyDown.addToTop(function(i,j){if(((tinymce.isMac?j.metaKey:j.ctrlKey)&&j.keyCode==86)||(j.shiftKey&&j.keyCode==45)){g(j)}})}else{d.onPaste.addToTop(function(i,j){return g(j)})}}d.onInit.add(function(){d.controlManager.setActive("pastetext",d.pasteAsPlainText);if(b(d,"paste_block_drop")){d.dom.bind(d.getBody(),["dragend","dragover","draggesture","dragdrop","drop","drag"],function(i){i.preventDefault();i.stopPropagation();return false})}});f._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(g,e){var k=this.editor,j=e.content,p=tinymce.grep,n=tinymce.explode,f=tinymce.trim,l,i;function d(h){c(h,function(o){if(o.constructor==RegExp){j=j.replace(o,"")}else{j=j.replace(o[0],o[1])}})}if(k.settings.paste_enable_default_filters==false){return}if(tinymce.isIE&&document.documentMode>=9){d([[/(?:<br>&nbsp;[\s\r\n]+|<br>)*(<\/?(h[1-6r]|p|div|address|pre|form|table|tbody|thead|tfoot|th|tr|td|li|ol|ul|caption|blockquote|center|dl|dt|dd|dir|fieldset)[^>]*>)(?:<br>&nbsp;[\s\r\n]+|<br>)*/g,"$1"]]);d([[/<br><br>/g,"<BR><BR>"],[/<br>/g," "],[/<BR><BR>/g,"<br>"]])}if(/class="?Mso|style="[^"]*\bmso-|w:WordDocument/i.test(j)||e.wordContent){e.wordContent=true;d([/^\s*(&nbsp;)+/gi,/(&nbsp;|<br[^>]*>)+\s*$/gi]);if(b(k,"paste_convert_headers_to_strong")){j=j.replace(/<p [^>]*class="?MsoHeading"?[^>]*>(.*?)<\/p>/gi,"<p><strong>$1</strong></p>")}if(b(k,"paste_convert_middot_lists")){d([[/<!--\[if !supportLists\]-->/gi,"$&__MCE_ITEM__"],[/(<span[^>]+(?:mso-list:|:\s*symbol)[^>]+>)/gi,"$1__MCE_ITEM__"],[/(<p[^>]+(?:MsoListParagraph)[^>]+>)/gi,"$1__MCE_ITEM__"]])}d([/<!--[\s\S]+?-->/gi,/<(!|script[^>]*>.*?<\/script(?=[>\s])|\/?(\?xml(:\w+)?|img|meta|link|style|\w:\w+)(?=[\s\/>]))[^>]*>/gi,[/<(\/?)s>/gi,"<$1strike>"],[/&nbsp;/gi,"\u00a0"]]);do{l=j.length;j=j.replace(/(<[a-z][^>]*\s)(?:id|name|language|type|on\w+|\w+:\w+)=(?:"[^"]*"|\w+)\s?/gi,"$1")}while(l!=j.length);if(b(k,"paste_retain_style_properties").replace(/^none$/i,"").length==0){j=j.replace(/<\/?span[^>]*>/gi,"")}else{d([[/<span\s+style\s*=\s*"\s*mso-spacerun\s*:\s*yes\s*;?\s*"\s*>([\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(t,h,r){var u=[],o=0,q=n(f(r).replace(/&quot;/gi,"'"),";");c(q,function(s){var w,y,z=n(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":u[o++]=w.replace(/^mso-|-alt$/g,"")+":"+x(y);return;case"horiz-align":u[o++]="text-align:"+y;return;case"vert-align":u[o++]="vertical-align:"+y;return;case"font-color":case"mso-foreground":u[o++]="color:"+y;return;case"mso-background":case"mso-highlight":u[o++]="background:"+y;return;case"mso-default-height":u[o++]="min-height:"+x(y);return;case"mso-default-width":u[o++]="min-width:"+x(y);return;case"mso-padding-between-alt":u[o++]="border-collapse:separate;border-spacing:"+x(y);return;case"text-line-through":if((y=="single")||(y=="double")){u[o++]="text-decoration:line-through"}return;case"mso-zero-height":if(y=="yes"){u[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}u[o++]=w+":"+z[1]}});if(o>0){return h+' style="'+u.join(";")+'"'}else{return h}}]])}}if(b(k,"paste_convert_headers_to_strong")){d([[/<h[1-6][^>]*>/gi,"<p><strong>"],[/<\/h[1-6][^>]*>/gi,"</strong></p>"]])}d([[/Version:[\d.]+\nStartHTML:\d+\nEndHTML:\d+\nStartFragment:\d+\nEndFragment:\d+/gi,""]]);i=b(k,"paste_strip_class_attributes");if(i!=="none"){function m(q,o){if(i==="all"){return""}var h=p(n(o.replace(/^(["'])(.*)\1$/,"$2")," "),function(r){return(/^(?!mso)/i.test(r))});return h.length?' class="'+h.join(" ")+'"':""}j=j.replace(/ class="([^"]+)"/gi,m);j=j.replace(/ class=([\-\w]+)/gi,m)}if(b(k,"paste_remove_spans")){j=j.replace(/<\/?span[^>]*>/gi,"")}e.content=j},_postProcess:function(g,i){var f=this,e=f.editor,h=e.dom,d;if(e.settings.paste_enable_default_filters==false){return}if(i.wordContent){c(h.select("a",i.node),function(j){if(!j.href||j.href.indexOf("#_Toc")!=-1){h.remove(j,1)}});if(b(e,"paste_convert_middot_lists")){f._convertLists(g,i)}d=b(e,"paste_retain_style_properties");if((tinymce.is(d,"string"))&&(d!=="all")&&(d!=="*")){d=tinymce.explode(d.replace(/^none$/i,""));c(h.select("*",i.node),function(m){var n={},k=0,l,o,j;if(d){for(l=0;l<d.length;l++){o=d[l];j=h.getStyle(m,o);if(j){n[o]=j;k++}}}h.setAttrib(m,"style","");if(d&&k>0){h.setStyles(m,n)}else{if(m.nodeName=="SPAN"&&!m.className){h.remove(m,true)}}})}}if(b(e,"paste_remove_styles")||(b(e,"paste_remove_styles_if_webkit")&&tinymce.isWebKit)){c(h.select("*[style]",i.node),function(j){j.removeAttribute("style");j.removeAttribute("data-mce-style")})}else{if(tinymce.isWebKit){c(h.select("*",i.node),function(j){j.removeAttribute("data-mce-style")})}}},_convertLists:function(g,e){var i=g.editor.dom,h,l,d=-1,f,m=[],k,j;c(i.select("p",e.node),function(t){var q,u="",s,r,n,o;for(q=t.firstChild;q&&q.nodeType==3;q=q.nextSibling){u+=q.nodeValue}u=t.innerHTML.replace(/<\/?\w+[^>]*>/gi,"").replace(/&nbsp;/g,"\u00a0");if(/^(__MCE_ITEM__)+[\u2022\u00b7\u00a7\u00d8o\u25CF]\s*\u00a0*/.test(u)){s="ul"}if(/^__MCE_ITEM__\s*\w+\.\s*\u00a0+/.test(u)){s="ol"}if(s){f=parseFloat(t.style.marginLeft||0);if(f>d){m.push(f)}if(!h||s!=k){h=i.create(s);i.insertAfter(h,t)}else{if(f>d){h=l.appendChild(i.create(s))}else{if(f<d){n=tinymce.inArray(m,f);o=i.getParents(h.parentNode,s);h=o[o.length-1-n]||h}}}c(i.select("span",t),function(v){var p=v.innerHTML.replace(/<\/?\w+[^>]*>/gi,"");if(s=="ul"&&/^__MCE_ITEM__[\u2022\u00b7\u00a7\u00d8o\u25CF]/.test(p)){i.remove(v)}else{if(/^__MCE_ITEM__[\s\S]*\w+\.(&nbsp;|\u00a0)*\s*/.test(p)){i.remove(v)}}});r=t.innerHTML;if(s=="ul"){r=t.innerHTML.replace(/__MCE_ITEM__/g,"").replace(/^[\u2022\u00b7\u00a7\u00d8o\u25CF]\s*(&nbsp;|\u00a0)+\s*/,"")}else{r=t.innerHTML.replace(/__MCE_ITEM__/g,"").replace(/^\s*\w+\.(&nbsp;|\u00a0)+\s*/,"")}l=h.appendChild(i.create("li",0,r));i.remove(t);d=f;k=s}else{h=d=0}});j=e.node.innerHTML;if(j.indexOf("__MCE_ITEM__")!=-1){e.node.innerHTML=j.replace(/__MCE_ITEM__/g,"")}},_insert:function(f,d){var e=this.editor,g=e.selection.getRng();if(!e.selection.isCollapsed()&&g.startContainer!=g.endContainer){e.getDoc().execCommand("Delete",false,null)}e.execCommand("mceInsertContent",false,f,{skip_undo:d})},_insertPlainText:function(g){var d=this.editor,e=b(d,"paste_text_linebreaktype"),i=b(d,"paste_text_replacements"),f=tinymce.is;function h(j){c(j,function(k){if(k.constructor==RegExp){g=g.replace(k,"")}else{g=g.replace(k[0],k[1])}})}if((typeof(g)==="string")&&(g.length>0)){if(/<(?:p|br|h[1-6]|ul|ol|dl|table|t[rdh]|div|blockquote|fieldset|pre|address|center)[^>]*>/i.test(g)){h([/[\n\r]+/g])}else{h([/\r+/g])}h([[/<\/(?:p|h[1-6]|ul|ol|dl|table|div|blockquote|fieldset|pre|address|center)>/gi,"\n\n"],[/<br[^>]*>|<\/tr>/gi,"\n"],[/<\/t[dh]>\s*<t[dh][^>]*>/gi,"\t"],/<[a-z!\/?][^>]*>/gi,[/&nbsp;/gi," "],[/(?:(?!\n)\s)*(\n+)(?:(?!\n)\s)*/gi,"$1"],[/\n{3,}/g,"\n\n"]]);g=d.dom.decode(tinymce.html.Entities.encodeRaw(g));if(f(i,"array")){h(i)}else{if(f(i,"string")){h(new RegExp(i,"gi"))}}if(e=="none"){h([[/\n+/g," "]])}else{if(e=="br"){h([[/\n/g,"<br />"]])}else{h([[/\n\n/g,"</p><p>"],[/^(.*<\/p>)(<p>)$/,"<p>$1"],[/\n/g,"<br />"]])}}d.execCommand("mceInsertContent",false,g)}},_legacySupport:function(){var e=this,d=e.editor;d.addCommand("mcePasteWord",function(){d.windowManager.open({file:e.url+"/pasteword.htm",width:parseInt(b(d,"paste_dialog_width")),height:parseInt(b(d,"paste_dialog_height")),inline:1})});if(b(d,"paste_text_use_dialog")){d.addCommand("mcePasteText",function(){d.windowManager.open({file:e.url+"/pastetext.htm",width:parseInt(b(d,"paste_dialog_width")),height:parseInt(b(d,"paste_dialog_height")),inline:1})})}d.addButton("pasteword",{title:"paste.paste_word_desc",cmd:"mcePasteWord"})}});tinymce.PluginManager.add("paste",tinymce.plugins.PastePlugin)})();
\ No newline at end of file
index 85c6d54905a803da11d7e5ac8217af6932e07790..dcf1a4b401fbcffa558aeefaa4295226ec6222a9 100644 (file)
@@ -1,8 +1,8 @@
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
        <title>{#paste.paste_text_desc}</title>
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
        <title>{#paste.paste_text_desc}</title>
-       <script type="text/javascript" src="../../tiny_mce_popup.js?ver=342-20110407"></script>
-       <script type="text/javascript" src="js/pastetext.js?ver=342-20110407"></script>
+       <script type="text/javascript" src="../../tiny_mce_popup.js?ver=345-20110908"></script>
+       <script type="text/javascript" src="js/pastetext.js?ver=345-20110908"></script>
 </head>
 <body onresize="PasteTextDialog.resize();" style="display:none; overflow:hidden;">
        <form name="source" onsubmit="return PasteTextDialog.insert();" action="#">
 </head>
 <body onresize="PasteTextDialog.resize();" style="display:none; overflow:hidden;">
        <form name="source" onsubmit="return PasteTextDialog.insert();" action="#">
index 88413c4e83f5bd022fc20cd45511943a8d340480..31583e3f4b6d044dd9f05c5be1537f67f27a7ac3 100644 (file)
@@ -1,8 +1,8 @@
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
        <title>{#paste.paste_word_desc}</title>
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
        <title>{#paste.paste_word_desc}</title>
-       <script type="text/javascript" src="../../tiny_mce_popup.js?ver=342-20110407"></script>
-       <script type="text/javascript" src="js/pasteword.js?ver=342-20110407"></script>
+       <script type="text/javascript" src="../../tiny_mce_popup.js?ver=345-20110908"></script>
+       <script type="text/javascript" src="js/pasteword.js?ver=345-20110908"></script>
 </head>
 <body onresize="PasteWordDialog.resize();" style="display:none; overflow:hidden;">
        <form name="source" onsubmit="return PasteWordDialog.insert();" action="#">
 </head>
 <body onresize="PasteWordDialog.resize();" style="display:none; overflow:hidden;">
        <form name="source" onsubmit="return PasteWordDialog.insert();" action="#">
index 22f6b72a4a1dae4659ebc9c08c8f734e22dc248a..f41ec7fdb1ce6cea159f04d296b71cf69262ee76 100644 (file)
@@ -1,3 +1,8 @@
+Version 2.0.6 (2011-09-29)
+       Fixed incorrect position of suggestion menu.
+       Fixed handling of mispelled words with no suggestions in PSpellShell engine.
+       Fixed PSpellShell command on Windows.
+       Fixed bug where Javascript error is produced when enchant_dict_suggest() returns unexpected result.
 Version 2.0.5 (2011-03-24)
        Merged with the latest TinyMCE spellchecker version.
 Version 2.0.4 (2010-12-20)
 Version 2.0.5 (2011-03-24)
        Merged with the latest TinyMCE spellchecker version.
 Version 2.0.4 (2010-12-20)
index 7e2bd9770e56f9272045108029cfb45b2a15d7e2..cefc8cf2ce7a7300e504f2170bb7e338257c8449 100644 (file)
@@ -48,16 +48,20 @@ class EnchantSpell extends SpellChecker {
         */
        function &getSuggestions($lang, $word) {
                $r = enchant_broker_init();
         */
        function &getSuggestions($lang, $word) {
                $r = enchant_broker_init();
-               $suggs = array();
 
                if (enchant_broker_dict_exists($r,$lang)) {
                        $d = enchant_broker_request_dict($r, $lang);
                        $suggs = enchant_dict_suggest($d, $word);
 
 
                if (enchant_broker_dict_exists($r,$lang)) {
                        $d = enchant_broker_request_dict($r, $lang);
                        $suggs = enchant_dict_suggest($d, $word);
 
+                       // enchant_dict_suggest() sometimes returns NULL
+                       if (!is_array($suggs))
+                               $suggs = array();
+
                        enchant_broker_free_dict($d);
                } else {
                        enchant_broker_free_dict($d);
                } else {
-
+                       $suggs = array();
                }
                }
+
                enchant_broker_free($r);
 
                return $suggs;
                enchant_broker_free($r);
 
                return $suggs;
index c4b5220d3d64ecc0a246f6b6acc66aecc0562116..3d6d4a9a26055f4dd6aca0f36d53172e52e39772 100644 (file)
@@ -38,13 +38,13 @@ class PSpellShell extends SpellChecker {
                        $matches = array();
 
                        // Skip this line.
                        $matches = array();
 
                        // Skip this line.
-                       if (strpos($dstr, "@") === 0)
+                       if ($dstr[0] == "@")
                                continue;
 
                                continue;
 
-                       preg_match("/\& ([^ ]+) .*/i", $dstr, $matches);
+                       preg_match("/(\&|#) ([^ ]+) .*/i", $dstr, $matches);
 
 
-                       if (!empty($matches[1]))
-                               $returnData[] = utf8_encode(trim($matches[1]));
+                       if (!empty($matches[2]))
+                               $returnData[] = utf8_encode(trim($matches[2]));
                }
 
                return $returnData;
                }
 
                return $returnData;
@@ -82,7 +82,7 @@ class PSpellShell extends SpellChecker {
                        $matches = array();
 
                        // Skip this line.
                        $matches = array();
 
                        // Skip this line.
-                       if (strpos($dstr, "@") === 0)
+                       if ($dstr[0] == "@")
                                continue;
 
                        preg_match("/\&[^:]+:(.*)/i", $dstr, $matches);
                                continue;
 
                        preg_match("/\&[^:]+:(.*)/i", $dstr, $matches);
@@ -103,10 +103,14 @@ class PSpellShell extends SpellChecker {
        function _getCMD($lang) {
                $this->_tmpfile = tempnam($this->_config['PSpellShell.tmp'], "tinyspell");
 
        function _getCMD($lang) {
                $this->_tmpfile = tempnam($this->_config['PSpellShell.tmp'], "tinyspell");
 
-               if(preg_match("#win#i", php_uname()))
-                       return $this->_config['PSpellShell.aspell'] . " -a --lang=". escapeshellarg($lang) . " --encoding=utf-8 -H < " . $this->_tmpfile . " 2>&1";
+               $file = $this->_tmpfile;
+               $lang = preg_replace("/[^-_a-z]/", "", strtolower($lang));
+               $bin  = $this->_config['PSpellShell.aspell'];
 
 
-               return "cat ". $this->_tmpfile ." | " . $this->_config['PSpellShell.aspell'] . " -a --encoding=utf-8 -H --lang=". escapeshellarg($lang);
+               if (preg_match("#win#i", php_uname()))
+                       return "$bin -a --lang=$lang --encoding=utf-8 -H < $file 2>&1";
+
+               return "cat $file | $bin -a --lang=$lang --encoding=utf-8 -H";
        }
 }
 
        }
 }
 
index e59c2c157b7e35fdfec0c1de45b28fbfdf7ead3e..f7cadd6e7f4811f56023bf8660b3f482a504848c 100644 (file)
@@ -1 +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;g.rpcUrl=e.getParam("spellchecker_rpc_url",this.url+'/rpc.php');if(g.rpcUrl=="{backend}"){if(tinymce.isIE){return}g.hasSupport=true;e.onContextMenu.addToTop(function(h,i){if(g.active){return false}})}e.addCommand("mceSpellCheck",function(){if(g.rpcUrl=="{backend}"){g.editor.getBody().spellcheck=g.active=!g.active;return}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);if(e.getParam("spellchecker_report_no_misspellings",true)){e.windowManager.alert("spellchecker.no_mpell")}}})}else{g._done()}});if(e.settings.content_css!==false){e.contentCSS.push(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"){if(f.rpcUrl=="{backend}"){if(f.hasSupport){g=d.createButton(h,{title:"spellchecker.desc",cmd:"mceSpellCheck",scope:f})}return g}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(){if(n==f.selectedLang){return}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<f.length;d++){e+="\\"+f.charAt(d)}return e},_getWords:function(){var e=this.editor,g=[],d="",f={},h=[];this._walk(e.getBody(),function(i){if(i.nodeType==3){d+=i.nodeValue+" "}});if(e.getParam("spellchecker_word_pattern")){h=d.match("("+e.getParam("spellchecker_word_pattern")+")","gi")}else{d=d.replace(new RegExp("([0-9]|["+this._getSeparators()+"])","g")," ");d=tinymce.trim(d.replace(/(\s+)/g," "));h=d.split(" ")}c(h,function(i){if(!f[i]){g.push(i);f[i]=1}});return g},_removeWords:function(e){var f=this.editor,h=f.dom,g=f.selection,d=g.getBookmark();c(h.select("span").reverse(),function(i){if(i&&(h.hasClass(i,"mceItemHiddenSpellWord")||h.hasClass(i,"mceItemHidden"))){if(!e||h.decode(i.innerHTML)==e){h.remove(i,1)}}});g.moveToBookmark(d)},_markWords:function(k){var g=this.editor,f=g.dom,h=g.selection,i=h.getBookmark(),d=[],j=k.join("|"),l=this._getSeparators(),e=new RegExp("(^|["+l+"])("+j+")(?=["+l+"]|$)","g");this._walk(g.getBody(),function(m){if(m.nodeType==3){d.push(m)}});c(d,function(s){var q,p,m,r,o=s.nodeValue;if(e.test(o)){o=f.encode(o);p=f.create("span",{"class":"mceItemHidden"});if(tinymce.isIE){o=o.replace(e,"$1<mcespell>$2</mcespell>");while((r=o.indexOf("<mcespell>"))!=-1){m=o.substring(0,r);if(m.length){q=document.createTextNode(f.decode(m));p.appendChild(q)}o=o.substring(r+10);r=o.indexOf("</mcespell>");m=o.substring(0,r);o=o.substring(r+11);p.appendChild(f.create("span",{"class":"mceItemHiddenSpellWord"},m))}if(o.length){q=document.createTextNode(f.decode(o));p.appendChild(q)}}else{p.innerHTML=o.replace(e,'$1<span class="mceItemHiddenSpellWord">$2</span>')}f.replace(p,s)}});h.moveToBookmark(i)},_showMenu:function(h,j){var i=this,h=i.editor,d=i._menu,l,k=h.dom,g=k.getViewPort(h.getWin()),f=j.target;j=0;if(!d){d=h.controlManager.createDropMenu("spellcheckermenu",{"class":"mceNoIcons"});i._menu=d}if(k.hasClass(f,"mceItemHiddenSpellWord")){d.removeAll();d.add({title:"spellchecker.wait","class":"mceMenuItemTitle"}).setDisabled(1);i._sendRPC("getSuggestions",[i.selectedLang,k.decode(f.innerHTML)],function(m){var e;d.removeAll();if(m.length>0){d.add({title:"spellchecker.sug","class":"mceMenuItemTitle"}).setDisabled(1);c(m,function(n){d.add({title:n,onclick:function(){k.replace(h.getDoc().createTextNode(n),f);i._checkDone()}})});d.addSeparator()}else{d.add({title:"spellchecker.no_sug","class":"mceMenuItemTitle"}).setDisabled(1)}e=i.editor.getParam("spellchecker_enable_ignore_rpc","");d.add({title:"spellchecker.ignore_word",onclick:function(){var n=f.innerHTML;k.remove(f,1);i._checkDone();if(e){h.setProgressState(1);i._sendRPC("ignoreWord",[i.selectedLang,n],function(o){h.setProgressState(0)})}}});d.add({title:"spellchecker.ignore_words",onclick:function(){var n=f.innerHTML;i._removeWords(k.decode(n));i._checkDone();if(e){h.setProgressState(1);i._sendRPC("ignoreWords",[i.selectedLang,n],function(o){h.setProgressState(0)})}}});if(i.editor.getParam("spellchecker_enable_learn_rpc")){d.add({title:"spellchecker.learn_word",onclick:function(){var n=f.innerHTML;k.remove(f,1);i._checkDone();h.setProgressState(1);i._sendRPC("learnWord",[i.selectedLang,n],function(o){h.setProgressState(0)})}})}d.update()});l=k.getPos(h.getContentAreaContainer());d.settings.offset_x=l.x;d.settings.offset_y=l.y;h.selection.select(f);l=k.getPos(f);d.showMenu(l.x,l.y+f.offsetHeight-g.y);return tinymce.dom.Event.cancel(j)}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,g,d){var f=this;a.sendRPC({url:f.rpcUrl,method:e,params:g,success:d,error:function(i,h){f.editor.setProgressState(0);f.editor.windowManager.alert(i.errstr||("Error response: "+h.responseText))}})}});tinymce.PluginManager.add("spellchecker",tinymce.plugins.SpellcheckerPlugin)})();
\ No newline at end of file
+(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;g.rpcUrl=e.getParam("spellchecker_rpc_url",this.url+'/rpc.php');if(g.rpcUrl=="{backend}"){if(tinymce.isIE){return}g.hasSupport=true;e.onContextMenu.addToTop(function(h,i){if(g.active){return false}})}e.addCommand("mceSpellCheck",function(){if(g.rpcUrl=="{backend}"){g.editor.getBody().spellcheck=g.active=!g.active;return}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);if(e.getParam("spellchecker_report_no_misspellings",true)){e.windowManager.alert("spellchecker.no_mpell")}}})}else{g._done()}});if(e.settings.content_css!==false){e.contentCSS.push(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"){if(f.rpcUrl=="{backend}"){if(f.hasSupport){g=d.createButton(h,{title:"spellchecker.desc",cmd:"mceSpellCheck",scope:f})}return g}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(){if(n==f.selectedLang){return}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<f.length;d++){e+="\\"+f.charAt(d)}return e},_getWords:function(){var e=this.editor,g=[],d="",f={},h=[];this._walk(e.getBody(),function(i){if(i.nodeType==3){d+=i.nodeValue+" "}});if(e.getParam("spellchecker_word_pattern")){h=d.match("("+e.getParam("spellchecker_word_pattern")+")","gi")}else{d=d.replace(new RegExp("([0-9]|["+this._getSeparators()+"])","g")," ");d=tinymce.trim(d.replace(/(\s+)/g," "));h=d.split(" ")}c(h,function(i){if(!f[i]){g.push(i);f[i]=1}});return g},_removeWords:function(e){var f=this.editor,h=f.dom,g=f.selection,d=g.getBookmark();c(h.select("span").reverse(),function(i){if(i&&(h.hasClass(i,"mceItemHiddenSpellWord")||h.hasClass(i,"mceItemHidden"))){if(!e||h.decode(i.innerHTML)==e){h.remove(i,1)}}});g.moveToBookmark(d)},_markWords:function(l){var g=this.editor,f=g.dom,j=g.getDoc(),h=g.selection,i=h.getBookmark(),d=[],k=l.join("|"),m=this._getSeparators(),e=new RegExp("(^|["+m+"])("+k+")(?=["+m+"]|$)","g");this._walk(g.getBody(),function(o){if(o.nodeType==3){d.push(o)}});c(d,function(t){var r,q,o,s,p=t.nodeValue;if(e.test(p)){p=f.encode(p);q=f.create("span",{"class":"mceItemHidden"});if(tinymce.isIE){p=p.replace(e,"$1<mcespell>$2</mcespell>");while((s=p.indexOf("<mcespell>"))!=-1){o=p.substring(0,s);if(o.length){r=j.createTextNode(f.decode(o));q.appendChild(r)}p=p.substring(s+10);s=p.indexOf("</mcespell>");o=p.substring(0,s);p=p.substring(s+11);q.appendChild(f.create("span",{"class":"mceItemHiddenSpellWord"},o))}if(p.length){r=j.createTextNode(f.decode(p));q.appendChild(r)}}else{q.innerHTML=p.replace(e,'$1<span class="mceItemHiddenSpellWord">$2</span>')}f.replace(q,t)}});h.moveToBookmark(i)},_showMenu:function(h,j){var i=this,h=i.editor,d=i._menu,l,k=h.dom,g=k.getViewPort(h.getWin()),f=j.target;j=0;if(!d){d=h.controlManager.createDropMenu("spellcheckermenu",{"class":"mceNoIcons"});i._menu=d}if(k.hasClass(f,"mceItemHiddenSpellWord")){d.removeAll();d.add({title:"spellchecker.wait","class":"mceMenuItemTitle"}).setDisabled(1);i._sendRPC("getSuggestions",[i.selectedLang,k.decode(f.innerHTML)],function(m){var e;d.removeAll();if(m.length>0){d.add({title:"spellchecker.sug","class":"mceMenuItemTitle"}).setDisabled(1);c(m,function(n){d.add({title:n,onclick:function(){k.replace(h.getDoc().createTextNode(n),f);i._checkDone()}})});d.addSeparator()}else{d.add({title:"spellchecker.no_sug","class":"mceMenuItemTitle"}).setDisabled(1)}if(h.getParam("show_ignore_words",true)){e=i.editor.getParam("spellchecker_enable_ignore_rpc","");d.add({title:"spellchecker.ignore_word",onclick:function(){var n=f.innerHTML;k.remove(f,1);i._checkDone();if(e){h.setProgressState(1);i._sendRPC("ignoreWord",[i.selectedLang,n],function(o){h.setProgressState(0)})}}});d.add({title:"spellchecker.ignore_words",onclick:function(){var n=f.innerHTML;i._removeWords(k.decode(n));i._checkDone();if(e){h.setProgressState(1);i._sendRPC("ignoreWords",[i.selectedLang,n],function(o){h.setProgressState(0)})}}})}if(i.editor.getParam("spellchecker_enable_learn_rpc")){d.add({title:"spellchecker.learn_word",onclick:function(){var n=f.innerHTML;k.remove(f,1);i._checkDone();h.setProgressState(1);i._sendRPC("learnWord",[i.selectedLang,n],function(o){h.setProgressState(0)})}})}d.update()});l=b.getPos(h.getContentAreaContainer());d.settings.offset_x=l.x;d.settings.offset_y=l.y;h.selection.select(f);l=k.getPos(f);d.showMenu(l.x,l.y+f.offsetHeight-g.y);return tinymce.dom.Event.cancel(j)}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,g,d){var f=this;a.sendRPC({url:f.rpcUrl,method:e,params:g,success:d,error:function(i,h){f.editor.setProgressState(0);f.editor.windowManager.alert(i.errstr||("Error response: "+h.responseText))}})}});tinymce.PluginManager.add("spellchecker",tinymce.plugins.SpellcheckerPlugin)})();
\ No newline at end of file
index d18689ddb9a9753d4d73d9a93bb79d8704a2e871..42a82d112c5d568031498bb94d978777225ab35f 100644 (file)
@@ -1 +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(r){n=c.select(":input:enabled,*[tabindex]");function i(s){return s.type!="hidden"&&s.tabIndex!="-1"&&!(n[m].style.display=="none")&&!(n[m].style.visibility=="hidden")}d(n,function(t,s){if(t.id==l.id){j=s;return false}});if(r>0){for(m=j+1;m<n.length;m++){if(i(n[m])){return n[m]}}}else{for(m=j-1;m>=0;m--){if(i(n[m])){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(n.id&&(l=tinymce.get(n.id||n.name))){l.focus()}else{window.setTimeout(function(){if(!tinymce.isWebKit){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)}},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
+(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(t){n=c.select(":input:enabled,*[tabindex]");function s(v){return v.nodeName==="BODY"||(v.type!="hidden"&&!(v.style.display=="none")&&!(v.style.visibility=="hidden")&&s(v.parentNode))}function i(v){return v.attributes.tabIndex.specified||v.nodeName=="INPUT"||v.nodeName=="TEXTAREA"}function u(){return tinymce.isIE6||tinymce.isIE7}function r(v){return((!u()||i(v)))&&v.getAttribute("tabindex")!="-1"&&s(v)}d(n,function(w,v){if(w.id==l.id){j=v;return false}});if(t>0){for(m=j+1;m<n.length;m++){if(r(n[m])){return n[m]}}}else{for(m=j-1;m>=0;m--){if(r(n[m])){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(n.id&&(l=tinymce.get(n.id||n.name))){l.focus()}else{window.setTimeout(function(){if(!tinymce.isWebKit){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)}},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
index 6c0083c8e40664a8ebfa19f6712ad827e0fc7d42..c897a601c70f35f05f145adeebdcbad5b3dca5c5 100644 (file)
                                        setUserSetting('hidetb', '0');
                                }
                        });
                                        setUserSetting('hidetb', '0');
                                }
                        });
+                       
+                       ed.addCommand('WP_Medialib', function() {
+                               var id = ed.getParam('wp_fullscreen_editor_id') || ed.getParam('fullscreen_editor_id') || ed.id,
+                                       link = tinymce.DOM.select('#wp-' + id + '-media-buttons a.thickbox');
+
+                               if ( link && link[0] )
+                                       link = link[0];
+                               else
+                                       return;
+
+                               tb_show('', link.href);
+                               tinymce.DOM.setStyle( ['TB_overlay','TB_window','TB_load'], 'z-index', '999999' );
+                       });
 
                        // Register buttons
                        ed.addButton('wp_more', {
 
                        // Register buttons
                        ed.addButton('wp_more', {
                                cmd : 'WP_Adv'
                        });
 
                                cmd : 'WP_Adv'
                        });
 
-                       // Add Media buttons
+                       // Add Media button
                        ed.addButton('add_media', {
                                title : 'wordpress.add_media',
                        ed.addButton('add_media', {
                                title : 'wordpress.add_media',
-                               image : url + '/img/media.gif',
-                               onclick : function() {
-                                       tb_show('', tinymce.DOM.get('add_media').href);
-                                       tinymce.DOM.setStyle( ['TB_overlay','TB_window','TB_load'], 'z-index', '999999' );
-                               }
-                       });
-
-                       ed.addButton('add_image', {
-                               title : 'wordpress.add_image',
                                image : url + '/img/image.gif',
                                image : url + '/img/image.gif',
-                               onclick : function() {
-                                       tb_show('', tinymce.DOM.get('add_image').href);
-                                       tinymce.DOM.setStyle( ['TB_overlay','TB_window','TB_load'], 'z-index', '999999' );
-                               }
-                       });
-
-                       ed.addButton('add_video', {
-                               title : 'wordpress.add_video',
-                               image : url + '/img/video.gif',
-                               onclick : function() {
-                                       tb_show('', tinymce.DOM.get('add_video').href);
-                                       tinymce.DOM.setStyle( ['TB_overlay','TB_window','TB_load'], 'z-index', '999999' );
-                               }
-                       });
-
-                       ed.addButton('add_audio', {
-                               title : 'wordpress.add_audio',
-                               image : url + '/img/audio.gif',
-                               onclick : function() {
-                                       tb_show('', tinymce.DOM.get('add_audio').href);
-                                       tinymce.DOM.setStyle( ['TB_overlay','TB_window','TB_load'], 'z-index', '999999' );
-                               }
+                               cmd : 'WP_Medialib'
                        });
 
                        // Add Media buttons to fullscreen and handle align buttons for image captions
                        ed.onBeforeExecCommand.add(function(ed, cmd, ui, val, o) {
                                var DOM = tinymce.DOM, n, DL, DIV, cls, a, align;
                                if ( 'mceFullScreen' == cmd ) {
                        });
 
                        // Add Media buttons to fullscreen and handle align buttons for image captions
                        ed.onBeforeExecCommand.add(function(ed, cmd, ui, val, o) {
                                var DOM = tinymce.DOM, n, DL, DIV, cls, a, align;
                                if ( 'mceFullScreen' == cmd ) {
-                                       if ( 'mce_fullscreen' != ed.id && DOM.get('add_audio') && DOM.get('add_video') && DOM.get('add_image') && DOM.get('add_media') )
-                                               ed.settings.theme_advanced_buttons1 += ',|,add_image,add_video,add_audio,add_media';
+                                       if ( 'mce_fullscreen' != ed.id && DOM.select('a.thickbox').length )
+                                               ed.settings.theme_advanced_buttons1 += ',|,add_media';
                                }
 
                                if ( 'JustifyLeft' == cmd || 'JustifyRight' == cmd || 'JustifyCenter' == cmd ) {
                                }
 
                                if ( 'JustifyLeft' == cmd || 'JustifyRight' == cmd || 'JustifyCenter' == cmd ) {
                                        }
                                });
 
                                        }
                                });
 
-                               if ( ed.id != 'wp_mce_fullscreen' )
+                               if ( ed.id != 'wp_mce_fullscreen' && ed.id != 'mce_fullscreen' )
                                        ed.dom.addClass(ed.getBody(), 'wp-editor');
                                        ed.dom.addClass(ed.getBody(), 'wp-editor');
+                               else if ( ed.id == 'mce_fullscreen' )
+                                       ed.dom.addClass(ed.getBody(), 'mce-fullscreen');
 
                                // remove invalid parent paragraphs when pasting HTML and/or switching to the HTML editor and back
                                ed.onBeforeSetContent.add(function(ed, o) {
 
                                // remove invalid parent paragraphs when pasting HTML and/or switching to the HTML editor and back
                                ed.onBeforeSetContent.add(function(ed, o) {
                        });
 
                        ed.onSaveContent.add(function(ed, o) {
                        });
 
                        ed.onSaveContent.add(function(ed, o) {
-                               if ( typeof(switchEditors) == 'object' ) {
+                               if ( ed.getParam('wpautop', true) && typeof(switchEditors) == 'object' ) {
                                        if ( ed.isHidden() )
                                                o.content = o.element.value;
                                        else
                                        if ( ed.isHidden() )
                                                o.content = o.element.value;
                                        else
                        ed.addShortcut('alt+shift+n', ed.getLang('spellchecker.desc'), 'mceSpellCheck');
                        ed.addShortcut('alt+shift+a', ed.getLang('link_desc'), 'mceLink');
                        ed.addShortcut('alt+shift+s', ed.getLang('unlink_desc'), 'unlink');
                        ed.addShortcut('alt+shift+n', ed.getLang('spellchecker.desc'), 'mceSpellCheck');
                        ed.addShortcut('alt+shift+a', ed.getLang('link_desc'), 'mceLink');
                        ed.addShortcut('alt+shift+s', ed.getLang('unlink_desc'), 'unlink');
-                       ed.addShortcut('alt+shift+m', ed.getLang('image_desc'), 'mceImage');
+                       ed.addShortcut('alt+shift+m', ed.getLang('image_desc'), 'WP_Medialib');
                        ed.addShortcut('alt+shift+g', ed.getLang('fullscreen.desc'), 'mceFullScreen');
                        ed.addShortcut('alt+shift+z', ed.getLang('wp_adv_desc'), 'WP_Adv');
                        ed.addShortcut('alt+shift+h', ed.getLang('help_desc'), 'WP_Help');
                        ed.addShortcut('alt+shift+g', ed.getLang('fullscreen.desc'), 'mceFullScreen');
                        ed.addShortcut('alt+shift+z', ed.getLang('wp_adv_desc'), 'WP_Adv');
                        ed.addShortcut('alt+shift+h', ed.getLang('help_desc'), 'WP_Help');
        // Register plugin
        tinymce.PluginManager.add('wordpress', tinymce.plugins.WordPress);
 })();
        // Register plugin
        tinymce.PluginManager.add('wordpress', tinymce.plugins.WordPress);
 })();
+
index 115661aeabbdad73a1a2a4c96ac1145917f1349b..00278c85cf9b6d08485500a02d6fcf37f3e96fed 100644 (file)
@@ -1 +1 @@
-(function(){var a=tinymce.DOM;tinymce.create("tinymce.plugins.WordPress",{mceTout:0,init:function(c,d){var e=this,h=c.getParam("wordpress_adv_toolbar","toolbar2"),g=0,f,b;f='<img src="'+d+'/img/trans.gif" class="mceWPmore mceItemNoResize" title="'+c.getLang("wordpress.wp_more_alt")+'" />';b='<img src="'+d+'/img/trans.gif" class="mceWPnextpage mceItemNoResize" title="'+c.getLang("wordpress.wp_page_alt")+'" />';if(getUserSetting("hidetb","0")=="1"){c.settings.wordpress_adv_hidden=0}c.onPostRender.add(function(){var i=c.controlManager.get(h);if(c.getParam("wordpress_adv_hidden",1)&&i){a.hide(i.id);e._resizeIframe(c,h,28)}});c.addCommand("WP_More",function(){c.execCommand("mceInsertContent",0,f)});c.addCommand("WP_Page",function(){c.execCommand("mceInsertContent",0,b)});c.addCommand("WP_Help",function(){c.windowManager.open({url:tinymce.baseURL+"/wp-mce-help.php",width:450,height:420,inline:1})});c.addCommand("WP_Adv",function(){var i=c.controlManager,j=i.get(h).id;if("undefined"==j){return}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("wp_more",{title:"wordpress.wp_more_desc",cmd:"WP_More"});c.addButton("wp_page",{title:"wordpress.wp_page_desc",image:d+"/img/page.gif",cmd:"WP_Page"});c.addButton("wp_help",{title:"wordpress.wp_help_desc",cmd:"WP_Help"});c.addButton("wp_adv",{title:"wordpress.wp_adv_desc",cmd:"WP_Adv"});c.addButton("add_media",{title:"wordpress.add_media",image:d+"/img/media.gif",onclick:function(){tb_show("",tinymce.DOM.get("add_media").href);tinymce.DOM.setStyle(["TB_overlay","TB_window","TB_load"],"z-index","999999")}});c.addButton("add_image",{title:"wordpress.add_image",image:d+"/img/image.gif",onclick:function(){tb_show("",tinymce.DOM.get("add_image").href);tinymce.DOM.setStyle(["TB_overlay","TB_window","TB_load"],"z-index","999999")}});c.addButton("add_video",{title:"wordpress.add_video",image:d+"/img/video.gif",onclick:function(){tb_show("",tinymce.DOM.get("add_video").href);tinymce.DOM.setStyle(["TB_overlay","TB_window","TB_load"],"z-index","999999")}});c.addButton("add_audio",{title:"wordpress.add_audio",image:d+"/img/audio.gif",onclick:function(){tb_show("",tinymce.DOM.get("add_audio").href);tinymce.DOM.setStyle(["TB_overlay","TB_window","TB_load"],"z-index","999999")}});c.onBeforeExecCommand.add(function(p,m,s,l,j){var v=tinymce.DOM,k,i,r,u,t,q;if("mceFullScreen"==m){if("mce_fullscreen"!=p.id&&v.get("add_audio")&&v.get("add_video")&&v.get("add_image")&&v.get("add_media")){p.settings.theme_advanced_buttons1+=",|,add_image,add_video,add_audio,add_media"}}if("JustifyLeft"==m||"JustifyRight"==m||"JustifyCenter"==m){k=p.selection.getNode();if(k.nodeName=="IMG"){q=m.substr(7).toLowerCase();t="align"+q;i=p.dom.getParent(k,"dl.wp-caption");r=p.dom.getParent(k,"div.mceTemp");if(i&&r){u=p.dom.hasClass(i,t)?"alignnone":t;i.className=i.className.replace(/align[^ '"]+\s?/g,"");p.dom.addClass(i,u);if(u=="aligncenter"){p.dom.addClass(r,"mceIEcenter")}else{p.dom.removeClass(r,"mceIEcenter")}j.terminate=true;p.execCommand("mceRepaint")}else{if(p.dom.hasClass(k,t)){p.dom.addClass(k,"alignnone")}else{p.dom.removeClass(k,"alignnone")}}}}});c.onInit.add(function(i){i.onNodeChange.add(function(k,j,m){var l;if(m.nodeName=="IMG"){l=k.dom.getParent(m,"dl.wp-caption")}else{if(m.nodeName=="DIV"&&k.dom.hasClass(m,"mceTemp")){l=m.firstChild;if(!k.dom.hasClass(l,"wp-caption")){l=false}}}if(l){if(k.dom.hasClass(l,"alignleft")){j.setActive("justifyleft",1)}else{if(k.dom.hasClass(l,"alignright")){j.setActive("justifyright",1)}else{if(k.dom.hasClass(l,"aligncenter")){j.setActive("justifycenter",1)}}}}});if(i.id!="wp_mce_fullscreen"){i.dom.addClass(i.getBody(),"wp-editor")}i.onBeforeSetContent.add(function(j,k){if(k.content){k.content=k.content.replace(/<p>\s*<(p|div|ul|ol|dl|table|blockquote|h[1-6]|fieldset|pre|address)( [^>]*)?>/gi,"<$1$2>");k.content=k.content.replace(/<\/(p|div|ul|ol|dl|table|blockquote|h[1-6]|fieldset|pre|address)>\s*<\/p>/gi,"</$1>")}})});if("undefined"!=typeof(jQuery)){c.onKeyUp.add(function(j,l){var i=l.keyCode||l.charCode;if(i==g){return}if(13==i||8==g||46==g){jQuery(document).triggerHandler("wpcountwords",[j.getContent({format:"raw"})])}g=i})}c.onSaveContent.addToTop(function(i,j){j.content=j.content.replace(/<p>(<br ?\/?>|\u00a0|\uFEFF)?<\/p>/g,"<p>&nbsp;</p>")});c.onSaveContent.add(function(i,j){if(typeof(switchEditors)=="object"){if(i.isHidden()){j.content=j.element.value}else{j.content=switchEditors.pre_wpautop(j.content)}}});e._handleMoreBreak(c,d);c.addShortcut("alt+shift+c",c.getLang("justifycenter_desc"),"JustifyCenter");c.addShortcut("alt+shift+r",c.getLang("justifyright_desc"),"JustifyRight");c.addShortcut("alt+shift+l",c.getLang("justifyleft_desc"),"JustifyLeft");c.addShortcut("alt+shift+j",c.getLang("justifyfull_desc"),"JustifyFull");c.addShortcut("alt+shift+q",c.getLang("blockquote_desc"),"mceBlockQuote");c.addShortcut("alt+shift+u",c.getLang("bullist_desc"),"InsertUnorderedList");c.addShortcut("alt+shift+o",c.getLang("numlist_desc"),"InsertOrderedList");c.addShortcut("alt+shift+d",c.getLang("striketrough_desc"),"Strikethrough");c.addShortcut("alt+shift+n",c.getLang("spellchecker.desc"),"mceSpellCheck");c.addShortcut("alt+shift+a",c.getLang("link_desc"),"mceLink");c.addShortcut("alt+shift+s",c.getLang("unlink_desc"),"unlink");c.addShortcut("alt+shift+m",c.getLang("image_desc"),"mceImage");c.addShortcut("alt+shift+g",c.getLang("fullscreen.desc"),"mceFullScreen");c.addShortcut("alt+shift+z",c.getLang("wp_adv_desc"),"WP_Adv");c.addShortcut("alt+shift+h",c.getLang("help_desc"),"WP_Help");c.addShortcut("alt+shift+t",c.getLang("wp_more_desc"),"WP_More");c.addShortcut("alt+shift+p",c.getLang("wp_page_desc"),"WP_Page");c.addShortcut("ctrl+s",c.getLang("save_desc"),function(){if("function"==typeof autosave){autosave()}});if(tinymce.isWebKit){c.addShortcut("alt+shift+b",c.getLang("bold_desc"),"Bold");c.addShortcut("alt+shift+i",c.getLang("italic_desc"),"Italic")}c.onInit.add(function(i){tinymce.dom.Event.add(i.getWin(),"scroll",function(j){i.plugins.wordpress._hideButtons()});tinymce.dom.Event.add(i.getBody(),"dragstart",function(j){i.plugins.wordpress._hideButtons()})});c.onBeforeExecCommand.add(function(i,k,j,l){i.plugins.wordpress._hideButtons()});c.onSaveContent.add(function(i,j){i.plugins.wordpress._hideButtons()});c.onMouseDown.add(function(i,j){if(j.target.nodeName!="IMG"){i.plugins.wordpress._hideButtons()}})},getInfo:function(){return{longname:"WordPress Plugin",author:"WordPress",authorurl:"http://wordpress.org",infourl:"http://wordpress.org",version:"3.0"}},_setEmbed:function(b){return b.replace(/\[embed\]([\s\S]+?)\[\/embed\][\s\u00a0]*/g,function(d,c){return'<img width="300" height="200" src="'+tinymce.baseURL+'/plugins/wordpress/img/trans.gif" class="wp-oembed mceItemNoResize" alt="'+c+'" title="'+c+'" />'})},_getEmbed:function(b){return b.replace(/<img[^>]+>/g,function(c){if(c.indexOf('class="wp-oembed')!=-1){var d=c.match(/alt="([^\"]+)"/);if(d[1]){c="[embed]"+d[1]+"[/embed]"}}return c})},_showButtons:function(f,d){var g=tinyMCE.activeEditor,i,h,b,j=tinymce.DOM,e,c;b=g.dom.getViewPort(g.getWin());i=j.getPos(g.getContentAreaContainer());h=g.dom.getPos(f);e=Math.max(h.x-b.x,0)+i.x;c=Math.max(h.y-b.y,0)+i.y;j.setStyles(d,{top:c+5+"px",left:e+5+"px",display:"block"});if(this.mceTout){clearTimeout(this.mceTout)}this.mceTout=setTimeout(function(){g.plugins.wordpress._hideButtons()},5000)},_hideButtons:function(){if(!this.mceTout){return}if(document.getElementById("wp_editbtns")){tinymce.DOM.hide("wp_editbtns")}if(document.getElementById("wp_gallerybtns")){tinymce.DOM.hide("wp_gallerybtns")}clearTimeout(this.mceTout);this.mceTout=0},_resizeIframe:function(c,e,b){var d=c.getContentAreaContainer().firstChild;a.setStyle(d,"height",d.clientHeight+b);c.theme.deltaHeight+=b},_handleMoreBreak:function(c,d){var e,b;e='<img src="'+d+'/img/trans.gif" alt="$1" class="mceWPmore mceItemNoResize" title="'+c.getLang("wordpress.wp_more_alt")+'" />';b='<img src="'+d+'/img/trans.gif" class="mceWPnextpage mceItemNoResize" title="'+c.getLang("wordpress.wp_page_alt")+'" />';c.onInit.add(function(){c.dom.loadCSS(d+"/css/content.css")});c.onPostRender.add(function(){if(c.theme.onResolveName){c.theme.onResolveName.add(function(f,g){if(g.node.nodeName=="IMG"){if(c.dom.hasClass(g.node,"mceWPmore")){g.name="wpmore"}if(c.dom.hasClass(g.node,"mceWPnextpage")){g.name="wppage"}}})}});c.onBeforeSetContent.add(function(f,g){if(g.content){g.content=g.content.replace(/<!--more(.*?)-->/g,e);g.content=g.content.replace(/<!--nextpage-->/g,b)}});c.onPostProcess.add(function(f,g){if(g.get){g.content=g.content.replace(/<img[^>]+>/g,function(i){if(i.indexOf('class="mceWPmore')!==-1){var h,j=(h=i.match(/alt="(.*?)"/))?h[1]:"";i="<!--more"+j+"-->"}if(i.indexOf('class="mceWPnextpage')!==-1){i="<!--nextpage-->"}return i})}});c.onNodeChange.add(function(g,f,h){f.setActive("wp_page",h.nodeName==="IMG"&&g.dom.hasClass(h,"mceWPnextpage"));f.setActive("wp_more",h.nodeName==="IMG"&&g.dom.hasClass(h,"mceWPmore"))})}});tinymce.PluginManager.add("wordpress",tinymce.plugins.WordPress)})();
\ No newline at end of file
+(function(){var a=tinymce.DOM;tinymce.create("tinymce.plugins.WordPress",{mceTout:0,init:function(c,d){var e=this,h=c.getParam("wordpress_adv_toolbar","toolbar2"),g=0,f,b;f='<img src="'+d+'/img/trans.gif" class="mceWPmore mceItemNoResize" title="'+c.getLang("wordpress.wp_more_alt")+'" />';b='<img src="'+d+'/img/trans.gif" class="mceWPnextpage mceItemNoResize" title="'+c.getLang("wordpress.wp_page_alt")+'" />';if(getUserSetting("hidetb","0")=="1"){c.settings.wordpress_adv_hidden=0}c.onPostRender.add(function(){var i=c.controlManager.get(h);if(c.getParam("wordpress_adv_hidden",1)&&i){a.hide(i.id);e._resizeIframe(c,h,28)}});c.addCommand("WP_More",function(){c.execCommand("mceInsertContent",0,f)});c.addCommand("WP_Page",function(){c.execCommand("mceInsertContent",0,b)});c.addCommand("WP_Help",function(){c.windowManager.open({url:tinymce.baseURL+"/wp-mce-help.php",width:450,height:420,inline:1})});c.addCommand("WP_Adv",function(){var i=c.controlManager,j=i.get(h).id;if("undefined"==j){return}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.addCommand("WP_Medialib",function(){var j=c.getParam("wp_fullscreen_editor_id")||c.getParam("fullscreen_editor_id")||c.id,i=tinymce.DOM.select("#wp-"+j+"-media-buttons a.thickbox");if(i&&i[0]){i=i[0]}else{return}tb_show("",i.href);tinymce.DOM.setStyle(["TB_overlay","TB_window","TB_load"],"z-index","999999")});c.addButton("wp_more",{title:"wordpress.wp_more_desc",cmd:"WP_More"});c.addButton("wp_page",{title:"wordpress.wp_page_desc",image:d+"/img/page.gif",cmd:"WP_Page"});c.addButton("wp_help",{title:"wordpress.wp_help_desc",cmd:"WP_Help"});c.addButton("wp_adv",{title:"wordpress.wp_adv_desc",cmd:"WP_Adv"});c.addButton("add_media",{title:"wordpress.add_media",image:d+"/img/image.gif",cmd:"WP_Medialib"});c.onBeforeExecCommand.add(function(p,m,s,l,j){var v=tinymce.DOM,k,i,r,u,t,q;if("mceFullScreen"==m){if("mce_fullscreen"!=p.id&&v.select("a.thickbox").length){p.settings.theme_advanced_buttons1+=",|,add_media"}}if("JustifyLeft"==m||"JustifyRight"==m||"JustifyCenter"==m){k=p.selection.getNode();if(k.nodeName=="IMG"){q=m.substr(7).toLowerCase();t="align"+q;i=p.dom.getParent(k,"dl.wp-caption");r=p.dom.getParent(k,"div.mceTemp");if(i&&r){u=p.dom.hasClass(i,t)?"alignnone":t;i.className=i.className.replace(/align[^ '"]+\s?/g,"");p.dom.addClass(i,u);if(u=="aligncenter"){p.dom.addClass(r,"mceIEcenter")}else{p.dom.removeClass(r,"mceIEcenter")}j.terminate=true;p.execCommand("mceRepaint")}else{if(p.dom.hasClass(k,t)){p.dom.addClass(k,"alignnone")}else{p.dom.removeClass(k,"alignnone")}}}}});c.onInit.add(function(i){i.onNodeChange.add(function(k,j,m){var l;if(m.nodeName=="IMG"){l=k.dom.getParent(m,"dl.wp-caption")}else{if(m.nodeName=="DIV"&&k.dom.hasClass(m,"mceTemp")){l=m.firstChild;if(!k.dom.hasClass(l,"wp-caption")){l=false}}}if(l){if(k.dom.hasClass(l,"alignleft")){j.setActive("justifyleft",1)}else{if(k.dom.hasClass(l,"alignright")){j.setActive("justifyright",1)}else{if(k.dom.hasClass(l,"aligncenter")){j.setActive("justifycenter",1)}}}}});if(i.id!="wp_mce_fullscreen"&&i.id!="mce_fullscreen"){i.dom.addClass(i.getBody(),"wp-editor")}else{if(i.id=="mce_fullscreen"){i.dom.addClass(i.getBody(),"mce-fullscreen")}}i.onBeforeSetContent.add(function(j,k){if(k.content){k.content=k.content.replace(/<p>\s*<(p|div|ul|ol|dl|table|blockquote|h[1-6]|fieldset|pre|address)( [^>]*)?>/gi,"<$1$2>");k.content=k.content.replace(/<\/(p|div|ul|ol|dl|table|blockquote|h[1-6]|fieldset|pre|address)>\s*<\/p>/gi,"</$1>")}})});if("undefined"!=typeof(jQuery)){c.onKeyUp.add(function(j,l){var i=l.keyCode||l.charCode;if(i==g){return}if(13==i||8==g||46==g){jQuery(document).triggerHandler("wpcountwords",[j.getContent({format:"raw"})])}g=i})}c.onSaveContent.addToTop(function(i,j){j.content=j.content.replace(/<p>(<br ?\/?>|\u00a0|\uFEFF)?<\/p>/g,"<p>&nbsp;</p>")});c.onSaveContent.add(function(i,j){if(i.getParam("wpautop",true)&&typeof(switchEditors)=="object"){if(i.isHidden()){j.content=j.element.value}else{j.content=switchEditors.pre_wpautop(j.content)}}});e._handleMoreBreak(c,d);c.addShortcut("alt+shift+c",c.getLang("justifycenter_desc"),"JustifyCenter");c.addShortcut("alt+shift+r",c.getLang("justifyright_desc"),"JustifyRight");c.addShortcut("alt+shift+l",c.getLang("justifyleft_desc"),"JustifyLeft");c.addShortcut("alt+shift+j",c.getLang("justifyfull_desc"),"JustifyFull");c.addShortcut("alt+shift+q",c.getLang("blockquote_desc"),"mceBlockQuote");c.addShortcut("alt+shift+u",c.getLang("bullist_desc"),"InsertUnorderedList");c.addShortcut("alt+shift+o",c.getLang("numlist_desc"),"InsertOrderedList");c.addShortcut("alt+shift+d",c.getLang("striketrough_desc"),"Strikethrough");c.addShortcut("alt+shift+n",c.getLang("spellchecker.desc"),"mceSpellCheck");c.addShortcut("alt+shift+a",c.getLang("link_desc"),"mceLink");c.addShortcut("alt+shift+s",c.getLang("unlink_desc"),"unlink");c.addShortcut("alt+shift+m",c.getLang("image_desc"),"WP_Medialib");c.addShortcut("alt+shift+g",c.getLang("fullscreen.desc"),"mceFullScreen");c.addShortcut("alt+shift+z",c.getLang("wp_adv_desc"),"WP_Adv");c.addShortcut("alt+shift+h",c.getLang("help_desc"),"WP_Help");c.addShortcut("alt+shift+t",c.getLang("wp_more_desc"),"WP_More");c.addShortcut("alt+shift+p",c.getLang("wp_page_desc"),"WP_Page");c.addShortcut("ctrl+s",c.getLang("save_desc"),function(){if("function"==typeof autosave){autosave()}});if(tinymce.isWebKit){c.addShortcut("alt+shift+b",c.getLang("bold_desc"),"Bold");c.addShortcut("alt+shift+i",c.getLang("italic_desc"),"Italic")}c.onInit.add(function(i){tinymce.dom.Event.add(i.getWin(),"scroll",function(j){i.plugins.wordpress._hideButtons()});tinymce.dom.Event.add(i.getBody(),"dragstart",function(j){i.plugins.wordpress._hideButtons()})});c.onBeforeExecCommand.add(function(i,k,j,l){i.plugins.wordpress._hideButtons()});c.onSaveContent.add(function(i,j){i.plugins.wordpress._hideButtons()});c.onMouseDown.add(function(i,j){if(j.target.nodeName!="IMG"){i.plugins.wordpress._hideButtons()}})},getInfo:function(){return{longname:"WordPress Plugin",author:"WordPress",authorurl:"http://wordpress.org",infourl:"http://wordpress.org",version:"3.0"}},_setEmbed:function(b){return b.replace(/\[embed\]([\s\S]+?)\[\/embed\][\s\u00a0]*/g,function(d,c){return'<img width="300" height="200" src="'+tinymce.baseURL+'/plugins/wordpress/img/trans.gif" class="wp-oembed mceItemNoResize" alt="'+c+'" title="'+c+'" />'})},_getEmbed:function(b){return b.replace(/<img[^>]+>/g,function(c){if(c.indexOf('class="wp-oembed')!=-1){var d=c.match(/alt="([^\"]+)"/);if(d[1]){c="[embed]"+d[1]+"[/embed]"}}return c})},_showButtons:function(f,d){var g=tinyMCE.activeEditor,i,h,b,j=tinymce.DOM,e,c;b=g.dom.getViewPort(g.getWin());i=j.getPos(g.getContentAreaContainer());h=g.dom.getPos(f);e=Math.max(h.x-b.x,0)+i.x;c=Math.max(h.y-b.y,0)+i.y;j.setStyles(d,{top:c+5+"px",left:e+5+"px",display:"block"});if(this.mceTout){clearTimeout(this.mceTout)}this.mceTout=setTimeout(function(){g.plugins.wordpress._hideButtons()},5000)},_hideButtons:function(){if(!this.mceTout){return}if(document.getElementById("wp_editbtns")){tinymce.DOM.hide("wp_editbtns")}if(document.getElementById("wp_gallerybtns")){tinymce.DOM.hide("wp_gallerybtns")}clearTimeout(this.mceTout);this.mceTout=0},_resizeIframe:function(c,e,b){var d=c.getContentAreaContainer().firstChild;a.setStyle(d,"height",d.clientHeight+b);c.theme.deltaHeight+=b},_handleMoreBreak:function(c,d){var e,b;e='<img src="'+d+'/img/trans.gif" alt="$1" class="mceWPmore mceItemNoResize" title="'+c.getLang("wordpress.wp_more_alt")+'" />';b='<img src="'+d+'/img/trans.gif" class="mceWPnextpage mceItemNoResize" title="'+c.getLang("wordpress.wp_page_alt")+'" />';c.onInit.add(function(){c.dom.loadCSS(d+"/css/content.css")});c.onPostRender.add(function(){if(c.theme.onResolveName){c.theme.onResolveName.add(function(f,g){if(g.node.nodeName=="IMG"){if(c.dom.hasClass(g.node,"mceWPmore")){g.name="wpmore"}if(c.dom.hasClass(g.node,"mceWPnextpage")){g.name="wppage"}}})}});c.onBeforeSetContent.add(function(f,g){if(g.content){g.content=g.content.replace(/<!--more(.*?)-->/g,e);g.content=g.content.replace(/<!--nextpage-->/g,b)}});c.onPostProcess.add(function(f,g){if(g.get){g.content=g.content.replace(/<img[^>]+>/g,function(i){if(i.indexOf('class="mceWPmore')!==-1){var h,j=(h=i.match(/alt="(.*?)"/))?h[1]:"";i="<!--more"+j+"-->"}if(i.indexOf('class="mceWPnextpage')!==-1){i="<!--nextpage-->"}return i})}});c.onNodeChange.add(function(g,f,h){f.setActive("wp_page",h.nodeName==="IMG"&&g.dom.hasClass(h,"mceWPnextpage"));f.setActive("wp_more",h.nodeName==="IMG"&&g.dom.hasClass(h,"mceWPmore"))})}});tinymce.PluginManager.add("wordpress",tinymce.plugins.WordPress)})();
\ No newline at end of file
index 3f79a257ed8dbaef2567cc7b5c9924346d1147a7..b45a1fd2e595defe6f7341991b7c63f66a0e5a82 100644 (file)
@@ -1,8 +1,8 @@
 /**
  * popup.js
 /**
  * popup.js
- * 
+ *
  * An altered version of tinyMCEPopup to work in the same window as tinymce.
  * An altered version of tinyMCEPopup to work in the same window as tinymce.
- * 
+ *
  * ------------------------------------------------------------------
  *
  * Copyright 2009, Moxiecode Systems AB
  * ------------------------------------------------------------------
  *
  * Copyright 2009, Moxiecode Systems AB
@@ -67,7 +67,7 @@ var tinyMCEPopup = {
         * Returns a window argument/parameter by name.
         *
         * @method getWindowArg
         * Returns a window argument/parameter by name.
         *
         * @method getWindowArg
-        * @param {String} n Name of the window argument to retrive.
+        * @param {String} n Name of the window argument to retrieve.
         * @param {String} dv Optional default value to return.
         * @return {String} Argument value or default value if it wasn't found.
         */
         * @param {String} dv Optional default value to return.
         * @return {String} Argument value or default value if it wasn't found.
         */
@@ -81,7 +81,7 @@ var tinyMCEPopup = {
         * Returns a editor parameter/config option value.
         *
         * @method getParam
         * Returns a editor parameter/config option value.
         *
         * @method getParam
-        * @param {String} n Name of the editor config option to retrive.
+        * @param {String} n Name of the editor config option to retrieve.
         * @param {String} dv Optional default value to return.
         * @return {String} Parameter value or default value if it wasn't found.
         */
         * @param {String} dv Optional default value to return.
         * @return {String} Parameter value or default value if it wasn't found.
         */
@@ -278,7 +278,7 @@ var tinyMCEPopup = {
                        close();
        },
 
                        close();
        },
 
-       // Internal functions   
+       // Internal functions
 
        _restoreSelection : function() {
                var e = window.event.srcElement;
 
        _restoreSelection : function() {
                var e = window.event.srcElement;
index 12bb771ae62f6ab2c3444809c81977e010357894..323591d91d956bdd60cdc47294284d43b8d1ba61 100644 (file)
@@ -18,8 +18,6 @@ html, body {
        cursor: pointer;
        border-width: 1px;
        border-style: solid;
        cursor: pointer;
        border-width: 1px;
        border-style: solid;
-       -moz-border-radius: 11px;
-       -khtml-border-radius: 11px;
        -webkit-border-radius: 11px;
        border-radius: 11px;
        -moz-box-sizing: content-box;
        -webkit-border-radius: 11px;
        border-radius: 11px;
        -moz-box-sizing: content-box;
@@ -146,20 +144,32 @@ th.label {
        white-space: nowrap;
        margin: 0;
        padding: 0pt 7px;
        white-space: nowrap;
        margin: 0;
        padding: 0pt 7px;
+       background-color: #f9f9f9;
+       border-color: #f9f9f9;
+       border-bottom-color: #dfdfdf;
+}
+
+a {
+       color: #21759B;
+}
+
+a:hover,
+a:active,
+a:focus {
+    color: #D54E21;
 }
 
 #sidemenu a.current {
 }
 
 #sidemenu a.current {
-       -moz-border-radius-topleft: 4px;
-       -khtml-border-top-left-radius: 4px;
        -webkit-border-top-left-radius: 4px;
        border-top-left-radius: 4px;
        -webkit-border-top-left-radius: 4px;
        border-top-left-radius: 4px;
-       -moz-border-radius-topright: 4px;
-       -khtml-border-top-right-radius: 4px;
        -webkit-border-top-right-radius: 4px;
        border-top-right-radius: 4px;
        border-style: solid;
        border-width: 1px;
        font-weight: normal;
        -webkit-border-top-right-radius: 4px;
        border-top-right-radius: 4px;
        border-style: solid;
        border-width: 1px;
        font-weight: normal;
+       background-color: #fff;
+       border-color: #dfdfdf #dfdfdf #fff;
+       color: #D54E21;
 }
 
 #adv_settings .field label {
 }
 
 #adv_settings .field label {
@@ -229,8 +239,6 @@ td {
        border: 1px solid #f1f1f1;
        line-height: 15px;
        height: 15px;
        border: 1px solid #f1f1f1;
        line-height: 15px;
        height: 15px;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
        -webkit-border-radius: 3px;
        border-radius: 3px;
        color: #07273E;
        -webkit-border-radius: 3px;
        border-radius: 3px;
        color: #07273E;
@@ -287,8 +295,6 @@ form {
 .describe textarea {
        width: 460px;
        border: 1px solid #dfdfdf;
 .describe textarea {
        width: 460px;
        border: 1px solid #dfdfdf;
-       -moz-border-radius: 4px;
-       -khtml-border-radius: 4px;
        -webkit-border-radius: 4px;
        border-radius: 4px;
 }
        -webkit-border-radius: 4px;
        border-radius: 4px;
 }
@@ -329,6 +335,8 @@ div#media-upload-header {
        border-bottom-width: 1px;
        border-bottom-style: solid;
        height: 2.5em;
        border-bottom-width: 1px;
        border-bottom-style: solid;
        height: 2.5em;
+       background-color: #f9f9f9;
+       border-bottom-color: #dfdfdf;
 }
 
 body#media-upload ul#sidemenu {
 }
 
 body#media-upload ul#sidemenu {
@@ -344,15 +352,8 @@ div#media-upload-error {
        font-weight: bold;
 }
 
        font-weight: bold;
 }
 
-* html #sidemenu li {
-       zoom: 100%;
-}
-
-* html #sidemenu a {
-       height: 27px;
-       line-height: 26px;
+#TB_window #TB_title {
+       background-color: #222222;
+       color: #CFCFCF;
 }
 
 }
 
-* html input {
-       border: 1px solid #ddd;
-}
index ff3cb479777da1eff70a1e7b9e22a4dad7a4a8bb..f79b6250ee4ec84c6231d79848b7320566be227a 100644 (file)
@@ -3,7 +3,7 @@
        tinymce.create('tinymce.plugins.wpEditImage', {
 
                init : function(ed, url) {
        tinymce.create('tinymce.plugins.wpEditImage', {
 
                init : function(ed, url) {
-                       var t = this;
+                       var t = this, mouse = {};
 
                        t.url = url;
                        t._createButtons();
 
                        t.url = url;
                        t._createButtons();
                                if ( tinymce.isWebKit || tinymce.isOpera )
                                        return;
 
                                if ( tinymce.isWebKit || tinymce.isOpera )
                                        return;
 
-                               if ( ed.dom.getParent(e.target, 'div.mceTemp') || ed.dom.is(e.target, 'div.mceTemp') ) {
-                                       window.setTimeout(function(){
-                                               var ed = tinyMCE.activeEditor, n = ed.selection.getNode(), DL, width;
+                               if ( mouse.x && (e.clientX != mouse.x || e.clientY != mouse.y) ) {
+                                       var n = ed.selection.getNode();
 
 
-                                               if ( 'IMG' == n.nodeName ) {
-                                                       DL = ed.dom.getParent(n, 'dl.wp-caption');
-                                                       width = ed.dom.getAttrib(n, 'width') || n.width;
-                                                       width = parseInt(width, 10);
+                                       if ( 'IMG' == n.nodeName ) {
+                                               window.setTimeout(function(){
+                                                       var DL, width;
+
+                                                       if ( n.width != mouse.img_w || n.height != mouse.img_h )
+                                                               n.className = n.className.replace(/size-[^ "']+/, '');
+
+                                                       if ( ed.dom.getParent(n, 'div.mceTemp') ) {
+                                                               DL = ed.dom.getParent(n, 'dl.wp-caption');
+
+                                                               if ( DL ) {
+                                                                       width = ed.dom.getAttrib(n, 'width') || n.width;
+                                                                       width = parseInt(width, 10);
+                                                                       ed.dom.setStyle(DL, 'width', 10 + width);
+                                                                       ed.execCommand('mceRepaint');
+                                                               }
 
 
-                                                       if ( DL && width != ( parseInt(ed.dom.getStyle(DL, 'width'), 10) - 10 ) ) {
-                                                               ed.dom.setStyle(DL, 'width', 10 + width);
-                                                               ed.execCommand('mceRepaint');
                                                        }
                                                        }
-                                               }
-                                       }, 100);
+                                               }, 100);
+                                       }
                                }
                                }
+                               mouse = {};
                        });
 
                        // show editimage buttons
                        ed.onMouseDown.add(function(ed, e) {
                        });
 
                        // show editimage buttons
                        ed.onMouseDown.add(function(ed, e) {
-                               var p;
 
 
-                               if ( e.target.nodeName == 'IMG' && ed.dom.getAttrib(e.target, 'class').indexOf('mceItem') == -1 ) {
-                                       ed.plugins.wordpress._showButtons(e.target, 'wp_editbtns');
-                                       if ( tinymce.isGecko && (p = ed.dom.getParent(e.target, 'dl.wp-caption')) && ed.dom.hasClass(p.parentNode, 'mceTemp') )
-                                               ed.selection.select(p.parentNode);
+                               if ( e.target && ( e.target.nodeName == 'IMG' || (e.target.firstChild && e.target.firstChild.nodeName == 'IMG') ) ) {
+                                       mouse = {
+                                               x: e.clientX,
+                                               y: e.clientY,
+                                               img_w: e.target.clientWidth,
+                                               img_h: e.target.clientHeight
+                                       };
+
+                                       if ( ed.dom.getAttrib(e.target, 'class').indexOf('mceItem') == -1 )
+                                               ed.plugins.wordpress._showButtons(e.target, 'wp_editbtns');
                                }
                        });
 
                                }
                        });
 
index ece134b1c7ca2229b788a8f33fc5ce896b6f8a1c..fae5b5c985bff6ffb267c88c3fba2f2d5dce0c3f 100644 (file)
@@ -1 +1 @@
-(function(){tinymce.create("tinymce.plugins.wpEditImage",{init:function(a,b){var c=this;c.url=b;c._createButtons();a.addCommand("WP_EditImage",function(){var h=a.selection.getNode(),f=tinymce.DOM.getViewPort(),g=f.h,d=(720<f.w)?720:f.w,e=a.dom.getAttrib(h,"class");if(e.indexOf("mceItem")!=-1||e.indexOf("wpGallery")!=-1||h.nodeName!="IMG"){return}tb_show("",b+"/editimage.html?ver=321&TB_iframe=true");tinymce.DOM.setStyles("TB_window",{width:(d-50)+"px",height:(g-45)+"px","margin-left":"-"+parseInt(((d-50)/2),10)+"px"});if(!tinymce.isIE6){tinymce.DOM.setStyles("TB_window",{top:"20px",marginTop:"0"})}tinymce.DOM.setStyles("TB_iframeContent",{width:(d-50)+"px",height:(g-75)+"px"});tinymce.DOM.setStyle(["TB_overlay","TB_window","TB_load"],"z-index","999999")});a.onInit.add(function(d){tinymce.dom.Event.add(d.getBody(),"dragstart",function(f){if(!tinymce.isGecko&&f.target.nodeName=="IMG"&&d.dom.getParent(f.target,"dl.wp-caption")){return tinymce.dom.Event.cancel(f)}})});a.onMouseUp.add(function(d,f){if(tinymce.isWebKit||tinymce.isOpera){return}if(d.dom.getParent(f.target,"div.mceTemp")||d.dom.is(f.target,"div.mceTemp")){window.setTimeout(function(){var e=tinyMCE.activeEditor,i=e.selection.getNode(),g,h;if("IMG"==i.nodeName){g=e.dom.getParent(i,"dl.wp-caption");h=e.dom.getAttrib(i,"width")||i.width;h=parseInt(h,10);if(g&&h!=(parseInt(e.dom.getStyle(g,"width"),10)-10)){e.dom.setStyle(g,"width",10+h);e.execCommand("mceRepaint")}}},100)}});a.onMouseDown.add(function(d,g){var f;if(g.target.nodeName=="IMG"&&d.dom.getAttrib(g.target,"class").indexOf("mceItem")==-1){d.plugins.wordpress._showButtons(g.target,"wp_editbtns");if(tinymce.isGecko&&(f=d.dom.getParent(g.target,"dl.wp-caption"))&&d.dom.hasClass(f.parentNode,"mceTemp")){d.selection.select(f.parentNode)}}});a.onKeyPress.add(function(d,i){var j,f,h,g;if(i.keyCode==13){j=d.selection.getNode();f=d.dom.getParent(j,"dl.wp-caption");h=d.dom.getParent(f,"div.mceTemp");if(f&&h){g=d.dom.create("p",{},"&nbsp;");d.dom.insertAfter(g,h);if(g.firstChild){d.selection.select(g.firstChild)}else{d.selection.select(g)}tinymce.dom.Event.cancel(i);return false}}});a.onBeforeSetContent.add(function(d,e){e.content=c._do_shcode(e.content)});a.onPostProcess.add(function(d,e){if(e.get){e.content=c._get_shcode(e.content)}})},_do_shcode:function(a){return a.replace(/(?:<p>)?\[(?:wp_)?caption([^\]]+)\]([\s\S]+?)\[\/(?:wp_)?caption\](?:<\/p>)?[\s\u00a0]*/g,function(g,d,k){var j,f,e,h,i;d=d.replace(/\\'|\\&#39;|\\&#039;/g,"&#39;").replace(/\\"|\\&quot;/g,"&quot;");k=k.replace(/\\&#39;|\\&#039;/g,"&#39;").replace(/\\&quot;/g,"&quot;");j=d.match(/id=['"]([^'"]+)/i);f=d.match(/align=['"]([^'"]+)/i);e=d.match(/width=['"]([0-9]+)/);h=d.match(/caption=['"]([^'"]+)/i);j=(j&&j[1])?j[1]:"";f=(f&&f[1])?f[1]:"alignnone";e=(e&&e[1])?e[1]:"";h=(h&&h[1])?h[1]:"";if(!e||!h){return k}i=(f=="aligncenter")?"mceTemp mceIEcenter":"mceTemp";return'<div class="'+i+'" draggable><dl id="'+j+'" class="wp-caption '+f+'" style="width: '+(10+parseInt(e))+'px"><dt class="wp-caption-dt">'+k+'</dt><dd class="wp-caption-dd">'+h+"</dd></dl></div>"})},_get_shcode:function(a){return a.replace(/<div class="mceTemp[^"]*">\s*<dl([^>]+)>\s*<dt[^>]+>([\s\S]+?)<\/dt>\s*<dd[^>]+>(.+?)<\/dd>\s*<\/dl>\s*<\/div>\s*/gi,function(g,d,j,h){var i,f,e;i=d.match(/id=['"]([^'"]+)/i);f=d.match(/class=['"]([^'"]+)/i);e=j.match(/width=['"]([0-9]+)/);i=(i&&i[1])?i[1]:"";f=(f&&f[1])?f[1]:"alignnone";e=(e&&e[1])?e[1]:"";if(!e||!h){return j}f=f.match(/align[^ '"]+/)||"alignnone";h=h.replace(/<\S[^<>]*>/gi,"").replace(/'/g,"&#39;").replace(/"/g,"&quot;");return'[caption id="'+i+'" align="'+f+'" width="'+e+'" caption="'+h+'"]'+j+"[/caption]"})},_createButtons:function(){var b=this,a=tinyMCE.activeEditor,d=tinymce.DOM,e,c;d.remove("wp_editbtns");d.add(document.body,"div",{id:"wp_editbtns",style:"display:none;"});e=d.add("wp_editbtns","img",{src:b.url+"/img/image.png",id:"wp_editimgbtn",width:"24",height:"24",title:a.getLang("wpeditimage.edit_img")});tinymce.dom.Event.add(e,"mousedown",function(g){var f=tinyMCE.activeEditor;f.windowManager.bookmark=f.selection.getBookmark("simple");f.execCommand("WP_EditImage")});c=d.add("wp_editbtns","img",{src:b.url+"/img/delete.png",id:"wp_delimgbtn",width:"24",height:"24",title:a.getLang("wpeditimage.del_img")});tinymce.dom.Event.add(c,"mousedown",function(i){var f=tinyMCE.activeEditor,g=f.selection.getNode(),h;if(g.nodeName=="IMG"&&f.dom.getAttrib(g,"class").indexOf("mceItem")==-1){if((h=f.dom.getParent(g,"div"))&&f.dom.hasClass(h,"mceTemp")){f.dom.remove(h)}else{if((h=f.dom.getParent(g,"A"))&&h.childNodes.length==1){f.dom.remove(h)}else{f.dom.remove(g)}}f.execCommand("mceRepaint");return false}})},getInfo:function(){return{longname:"Edit Image",author:"WordPress",authorurl:"http://wordpress.org",infourl:"",version:"1.0"}}});tinymce.PluginManager.add("wpeditimage",tinymce.plugins.wpEditImage)})();
\ No newline at end of file
+(function(){tinymce.create("tinymce.plugins.wpEditImage",{init:function(a,c){var d=this,b={};d.url=c;d._createButtons();a.addCommand("WP_EditImage",function(){var i=a.selection.getNode(),g=tinymce.DOM.getViewPort(),h=g.h,e=(720<g.w)?720:g.w,f=a.dom.getAttrib(i,"class");if(f.indexOf("mceItem")!=-1||f.indexOf("wpGallery")!=-1||i.nodeName!="IMG"){return}tb_show("",c+"/editimage.html?ver=321&TB_iframe=true");tinymce.DOM.setStyles("TB_window",{width:(e-50)+"px",height:(h-45)+"px","margin-left":"-"+parseInt(((e-50)/2),10)+"px"});if(!tinymce.isIE6){tinymce.DOM.setStyles("TB_window",{top:"20px",marginTop:"0"})}tinymce.DOM.setStyles("TB_iframeContent",{width:(e-50)+"px",height:(h-75)+"px"});tinymce.DOM.setStyle(["TB_overlay","TB_window","TB_load"],"z-index","999999")});a.onInit.add(function(e){tinymce.dom.Event.add(e.getBody(),"dragstart",function(f){if(!tinymce.isGecko&&f.target.nodeName=="IMG"&&e.dom.getParent(f.target,"dl.wp-caption")){return tinymce.dom.Event.cancel(f)}})});a.onMouseUp.add(function(f,g){if(tinymce.isWebKit||tinymce.isOpera){return}if(b.x&&(g.clientX!=b.x||g.clientY!=b.y)){var h=f.selection.getNode();if("IMG"==h.nodeName){window.setTimeout(function(){var e,i;if(h.width!=b.img_w||h.height!=b.img_h){h.className=h.className.replace(/size-[^ "']+/,"")}if(f.dom.getParent(h,"div.mceTemp")){e=f.dom.getParent(h,"dl.wp-caption");if(e){i=f.dom.getAttrib(h,"width")||h.width;i=parseInt(i,10);f.dom.setStyle(e,"width",10+i);f.execCommand("mceRepaint")}}},100)}}b={}});a.onMouseDown.add(function(f,g){if(g.target&&(g.target.nodeName=="IMG"||(g.target.firstChild&&g.target.firstChild.nodeName=="IMG"))){b={x:g.clientX,y:g.clientY,img_w:g.target.clientWidth,img_h:g.target.clientHeight};if(f.dom.getAttrib(g.target,"class").indexOf("mceItem")==-1){f.plugins.wordpress._showButtons(g.target,"wp_editbtns")}}});a.onKeyPress.add(function(f,j){var k,g,i,h;if(j.keyCode==13){k=f.selection.getNode();g=f.dom.getParent(k,"dl.wp-caption");i=f.dom.getParent(g,"div.mceTemp");if(g&&i){h=f.dom.create("p",{},"&nbsp;");f.dom.insertAfter(h,i);if(h.firstChild){f.selection.select(h.firstChild)}else{f.selection.select(h)}tinymce.dom.Event.cancel(j);return false}}});a.onBeforeSetContent.add(function(e,f){f.content=d._do_shcode(f.content)});a.onPostProcess.add(function(e,f){if(f.get){f.content=d._get_shcode(f.content)}})},_do_shcode:function(a){return a.replace(/(?:<p>)?\[(?:wp_)?caption([^\]]+)\]([\s\S]+?)\[\/(?:wp_)?caption\](?:<\/p>)?[\s\u00a0]*/g,function(g,d,k){var j,f,e,h,i;d=d.replace(/\\'|\\&#39;|\\&#039;/g,"&#39;").replace(/\\"|\\&quot;/g,"&quot;");k=k.replace(/\\&#39;|\\&#039;/g,"&#39;").replace(/\\&quot;/g,"&quot;");j=d.match(/id=['"]([^'"]+)/i);f=d.match(/align=['"]([^'"]+)/i);e=d.match(/width=['"]([0-9]+)/);h=d.match(/caption=['"]([^'"]+)/i);j=(j&&j[1])?j[1]:"";f=(f&&f[1])?f[1]:"alignnone";e=(e&&e[1])?e[1]:"";h=(h&&h[1])?h[1]:"";if(!e||!h){return k}i=(f=="aligncenter")?"mceTemp mceIEcenter":"mceTemp";return'<div class="'+i+'" draggable><dl id="'+j+'" class="wp-caption '+f+'" style="width: '+(10+parseInt(e))+'px"><dt class="wp-caption-dt">'+k+'</dt><dd class="wp-caption-dd">'+h+"</dd></dl></div>"})},_get_shcode:function(a){return a.replace(/<div class="mceTemp[^"]*">\s*<dl([^>]+)>\s*<dt[^>]+>([\s\S]+?)<\/dt>\s*<dd[^>]+>(.+?)<\/dd>\s*<\/dl>\s*<\/div>\s*/gi,function(g,d,j,h){var i,f,e;i=d.match(/id=['"]([^'"]+)/i);f=d.match(/class=['"]([^'"]+)/i);e=j.match(/width=['"]([0-9]+)/);i=(i&&i[1])?i[1]:"";f=(f&&f[1])?f[1]:"alignnone";e=(e&&e[1])?e[1]:"";if(!e||!h){return j}f=f.match(/align[^ '"]+/)||"alignnone";h=h.replace(/<\S[^<>]*>/gi,"").replace(/'/g,"&#39;").replace(/"/g,"&quot;");return'[caption id="'+i+'" align="'+f+'" width="'+e+'" caption="'+h+'"]'+j+"[/caption]"})},_createButtons:function(){var b=this,a=tinyMCE.activeEditor,d=tinymce.DOM,e,c;d.remove("wp_editbtns");d.add(document.body,"div",{id:"wp_editbtns",style:"display:none;"});e=d.add("wp_editbtns","img",{src:b.url+"/img/image.png",id:"wp_editimgbtn",width:"24",height:"24",title:a.getLang("wpeditimage.edit_img")});tinymce.dom.Event.add(e,"mousedown",function(g){var f=tinyMCE.activeEditor;f.windowManager.bookmark=f.selection.getBookmark("simple");f.execCommand("WP_EditImage")});c=d.add("wp_editbtns","img",{src:b.url+"/img/delete.png",id:"wp_delimgbtn",width:"24",height:"24",title:a.getLang("wpeditimage.del_img")});tinymce.dom.Event.add(c,"mousedown",function(i){var f=tinyMCE.activeEditor,g=f.selection.getNode(),h;if(g.nodeName=="IMG"&&f.dom.getAttrib(g,"class").indexOf("mceItem")==-1){if((h=f.dom.getParent(g,"div"))&&f.dom.hasClass(h,"mceTemp")){f.dom.remove(h)}else{if((h=f.dom.getParent(g,"A"))&&h.childNodes.length==1){f.dom.remove(h)}else{f.dom.remove(g)}}f.execCommand("mceRepaint");return false}})},getInfo:function(){return{longname:"Edit Image",author:"WordPress",authorurl:"http://wordpress.org",infourl:"",version:"1.0"}}});tinymce.PluginManager.add("wpeditimage",tinymce.plugins.wpEditImage)})();
\ No newline at end of file
index 1acf9f046dbbb73dfce14ad4229e26b7b4869766..2d7e38e49aaf062af424ce1425771772f6ab2b6b 100644 (file)
@@ -374,6 +374,9 @@ wpImage = {
 
                tinyMCEPopup.execCommand("mceBeginUndoLevel");
 
 
                tinyMCEPopup.execCommand("mceBeginUndoLevel");
 
+               if ( f.width.value != el.width || f.height.value != el.height )
+                       img_class = img_class.replace(/size-[^ "']+/, '');
+
                ed.dom.setAttribs(el, {
                        src : f.img_src.value,
                        title : f.img_title.value,
                ed.dom.setAttribs(el, {
                        src : f.img_src.value,
                        title : f.img_title.value,
index 0a801bd550f4ea17c07f93586f70771465326f9c..ef628ed102db76487501d8fca78c6c1e5cc4527b 100644 (file)
@@ -1 +1 @@
-var tinymce=null,tinyMCEPopup,tinyMCE,wpImage;tinyMCEPopup={init:function(){var d=this,b,a,f,c,e;a=(""+document.location.search).replace(/^\?/,"").split("&");f={};for(c=0;c<a.length;c++){e=a[c].split("=");f[unescape(e[0])]=unescape(e[1])}if(f.mce_rdomain){document.domain=f.mce_rdomain}b=d.getWin();tinymce=b.tinymce;tinyMCE=b.tinyMCE;d.editor=tinymce.EditorManager.activeEditor;d.params=d.editor.windowManager.params;d.dom=d.editor.windowManager.createInstance("tinymce.dom.DOMUtils",document);d.editor.windowManager.onOpen.dispatch(d.editor.windowManager,window)},getWin:function(){return window.dialogArguments||opener||parent||top},getParam:function(b,a){return this.editor.getParam(b,a)},close:function(){var a=this,b=a.getWin();function c(){b.tb_remove();tinymce=tinyMCE=a.editor=a.dom=a.dom.doc=null}if(tinymce.isOpera){b.setTimeout(c,0)}else{c()}},execCommand:function(d,c,e,b){b=b||{};b.skip_focus=1;this.restoreSelection();return this.editor.execCommand(d,c,e,b)},storeSelection:function(){this.editor.windowManager.bookmark=tinyMCEPopup.editor.selection.getBookmark("simple")},restoreSelection:function(){var a=tinyMCEPopup;if(tinymce.isIE){a.editor.selection.moveToBookmark(a.editor.windowManager.bookmark)}}};tinyMCEPopup.init();wpImage={preInit:function(){var d=tinyMCEPopup.getWin(),c=d.document.styleSheets,a,b;for(b=0;b<c.length;b++){a=c.item(b).href;if(a&&a.indexOf("colors")!=-1){document.write('<link rel="stylesheet" href="'+a+'" type="text/css" media="all" />')}}},I:function(a){return document.getElementById(a)},current:"",link:"",link_rel:"",target_value:"",current_size_sel:"s100",width:"",height:"",align:"",img_alt:"",setTabs:function(b){var a=this;if("current"==b.className){return false}a.I("div_advanced").style.display=("tab_advanced"==b.id)?"block":"none";a.I("div_basic").style.display=("tab_basic"==b.id)?"block":"none";a.I("tab_basic").className=a.I("tab_advanced").className="";b.className="current";return false},img_seturl:function(b){var c=this,a=c.I("link_rel").value;if("current"==b){c.I("link_href").value=c.current;c.I("link_rel").value=c.link_rel}else{c.I("link_href").value=c.link;if(a){a=a.replace(/attachment|wp-att-[0-9]+/gi,"");c.I("link_rel").value=tinymce.trim(a)}}},imgAlignCls:function(b){var c=this,a=c.I("img_classes").value;c.I("img_demo").className=c.align=b;a=a.replace(/align[^ "']+/gi,"");a+=(" "+b);a=a.replace(/\s+/g," ").replace(/^\s/,"");if("aligncenter"==b){c.I("hspace").value="";c.updateStyle("hspace")}c.I("img_classes").value=a},showSize:function(e){var c=this,f=c.I("img_demo"),a=c.width,d=c.height,g=e.id||"s100",b;b=parseInt(g.substring(1))/200;f.width=Math.round(a*b);f.height=Math.round(d*b);c.showSizeClear();e.style.borderColor="#A3A3A3";e.style.backgroundColor="#E5E5E5"},showSizeSet:function(){var b=this,d,c,a;if((b.width*1.3)>parseInt(b.preloadImg.width)){d=b.I("s130"),c=b.I("s120"),a=b.I("s110");d.onclick=c.onclick=a.onclick=null;d.onmouseover=c.onmouseover=a.onmouseover=null;d.style.color=c.style.color=a.style.color="#aaa"}},showSizeRem:function(){var a=this,c=a.I("img_demo"),b=document.forms[0];c.width=Math.round(b.width.value*0.5);c.height=Math.round(b.height.value*0.5);a.showSizeClear();a.I(a.current_size_sel).style.borderColor="#A3A3A3";a.I(a.current_size_sel).style.backgroundColor="#E5E5E5";return false},showSizeClear:function(){var b=this.I("img_size").getElementsByTagName("div"),a;for(a=0;a<b.length;a++){b[a].style.borderColor="#f1f1f1";b[a].style.backgroundColor="#f1f1f1"}},imgEditSize:function(g){var d=this,i=document.forms[0],a,c,b,e,j;if(!d.preloadImg||!d.preloadImg.width||!d.preloadImg.height){return}a=parseInt(d.preloadImg.width),c=parseInt(d.preloadImg.height),b=d.width||a,e=d.height||c,j=g.id||"s100";size=parseInt(j.substring(1))/100;b=Math.round(b*size);e=Math.round(e*size);i.width.value=Math.min(a,b);i.height.value=Math.min(c,e);d.current_size_sel=j;d.demoSetSize()},demoSetSize:function(a){var c=this.I("img_demo"),b=document.forms[0];c.width=b.width.value?Math.round(b.width.value*0.5):"";c.height=b.height.value?Math.round(b.height.value*0.5):""},demoSetStyle:function(){var b=document.forms[0],a=this.I("img_demo"),c=tinyMCEPopup.editor.dom;if(a){c.setAttrib(a,"style",b.img_style.value);c.setStyle(a,"width","");c.setStyle(a,"height","")}},origSize:function(){var a=this,c=document.forms[0],b=a.I("s100");c.width.value=a.width=a.preloadImg.width;c.height.value=a.height=a.preloadImg.height;a.showSizeSet();a.demoSetSize();a.showSize(b)},init:function(){var a=tinyMCEPopup.editor,b;b=document.body.innerHTML;document.body.innerHTML=a.translate(b);window.setTimeout(function(){wpImage.setup()},500)},setup:function(){var p=this,k,b,l,e,i=document.forms[0],h=tinyMCEPopup.editor,j=p.I("img_demo"),g=tinyMCEPopup.dom,a,o="",n,m;document.dir=tinyMCEPopup.editor.getParam("directionality","");if(tinyMCEPopup.editor.getParam("wpeditimage_disable_captions",false)){p.I("cap_field").style.display="none"}tinyMCEPopup.restoreSelection();b=h.selection.getNode();if(b.nodeName!="IMG"){return}i.img_src.value=j.src=l=h.dom.getAttrib(b,"src");h.dom.setStyle(b,"float","");p.getImageData();k=h.dom.getAttrib(b,"class");if(a=g.getParent(b,"dl")){n=h.dom.getAttrib(a,"class");n=n.match(/align[^ "']+/i);if(n&&!g.hasClass(b,n)){k+=" "+n;tinymce.trim(k)}tinymce.each(a.childNodes,function(c){if(c.nodeName=="DD"&&g.hasClass(c,"wp-caption-dd")){o=c.innerHTML;return}})}i.img_cap.value=o;i.img_title.value=h.dom.getAttrib(b,"title");i.img_alt.value=h.dom.getAttrib(b,"alt");i.border.value=h.dom.getAttrib(b,"border");i.vspace.value=h.dom.getAttrib(b,"vspace");i.hspace.value=h.dom.getAttrib(b,"hspace");i.align.value=h.dom.getAttrib(b,"align");i.width.value=p.width=h.dom.getAttrib(b,"width");i.height.value=p.height=h.dom.getAttrib(b,"height");i.img_classes.value=k;i.img_style.value=h.dom.getAttrib(b,"style");if(g.getAttrib(b,"hspace")){p.updateStyle("hspace")}if(g.getAttrib(b,"border")){p.updateStyle("border")}if(g.getAttrib(b,"vspace")){p.updateStyle("vspace")}if(m=h.dom.getParent(b,"A")){i.link_href.value=p.current=h.dom.getAttrib(m,"href");i.link_title.value=h.dom.getAttrib(m,"title");i.link_rel.value=p.link_rel=h.dom.getAttrib(m,"rel");i.link_style.value=h.dom.getAttrib(m,"style");p.target_value=h.dom.getAttrib(m,"target");i.link_classes.value=h.dom.getAttrib(m,"class")}i.link_target.checked=(p.target_value&&p.target_value=="_blank")?"checked":"";e=l.substring(l.lastIndexOf("/"));e=e.replace(/-[0-9]{2,4}x[0-9]{2,4}/,"");p.link=l.substring(0,l.lastIndexOf("/"))+e;if(k.indexOf("alignleft")!=-1){p.I("alignleft").checked="checked";j.className=p.align="alignleft"}else{if(k.indexOf("aligncenter")!=-1){p.I("aligncenter").checked="checked";j.className=p.align="aligncenter"}else{if(k.indexOf("alignright")!=-1){p.I("alignright").checked="checked";j.className=p.align="alignright"}else{if(k.indexOf("alignnone")!=-1){p.I("alignnone").checked="checked";j.className=p.align="alignnone"}}}}if(p.width&&p.preloadImg.width){p.showSizeSet()}document.body.style.display=""},remove:function(){var a=tinyMCEPopup.editor,c,b;tinyMCEPopup.restoreSelection();b=a.selection.getNode();if(b.nodeName!="IMG"){return}if((c=a.dom.getParent(b,"div"))&&a.dom.hasClass(c,"mceTemp")){a.dom.remove(c)}else{if((c=a.dom.getParent(b,"A"))&&c.childNodes.length==1){a.dom.remove(c)}else{a.dom.remove(b)}}a.execCommand("mceRepaint");tinyMCEPopup.close();return},update:function(){var m=this,v=document.forms[0],g=tinyMCEPopup.editor,e,x,d=null,n,h,p,r,o=null,k=v.img_classes.value,l,q,u="",j,i,s,a,z,w="",c,y;tinyMCEPopup.restoreSelection();e=g.selection.getNode();if(e.nodeName!="IMG"){return}if(v.img_src.value===""){m.remove();return}if(v.img_cap.value!=""&&v.width.value!=""){o=1;k=k.replace(/align[^ "']+\s?/gi,"")}p=g.dom.getParent(e,"a");h=g.dom.getParent(e,"p");n=g.dom.getParent(e,"dl");r=g.dom.getParent(e,"div");tinyMCEPopup.execCommand("mceBeginUndoLevel");g.dom.setAttribs(e,{src:v.img_src.value,title:v.img_title.value,alt:v.img_alt.value,width:v.width.value,height:v.height.value,style:v.img_style.value,"class":k});if(v.link_href.value){if(p==null){if(!v.link_href.value.match(/https?:\/\//i)){v.link_href.value=tinyMCEPopup.editor.documentBaseURI.toAbsolute(v.link_href.value)}if(tinymce.isWebKit&&g.dom.hasClass(e,"aligncenter")){g.dom.removeClass(e,"aligncenter");d=1}tinyMCEPopup.execCommand("CreateLink",false,"#mce_temp_url#",{skip_undo:1});if(d){g.dom.addClass(e,"aligncenter")}tinymce.each(g.dom.select("a"),function(b){if(g.dom.getAttrib(b,"href")=="#mce_temp_url#"){g.dom.setAttribs(b,{href:v.link_href.value,title:v.link_title.value,rel:v.link_rel.value,target:(v.link_target.checked==true)?"_blank":"","class":v.link_classes.value,style:v.link_style.value})}})}else{g.dom.setAttribs(p,{href:v.link_href.value,title:v.link_title.value,rel:v.link_rel.value,target:(v.link_target.checked==true)?"_blank":"","class":v.link_classes.value,style:v.link_style.value})}}if(o){a=10+parseInt(v.width.value);z=(m.align=="aligncenter")?"mceTemp mceIEcenter":"mceTemp";if(n){g.dom.setAttribs(n,{"class":"wp-caption "+m.align,style:"width: "+a+"px;"});if(r){g.dom.setAttrib(r,"class",z)}if((i=g.dom.getParent(e,"dt"))&&(s=i.nextSibling)&&g.dom.hasClass(s,"wp-caption-dd")){g.dom.setHTML(s,v.img_cap.value)}}else{if((q=v.img_classes.value.match(/wp-image-([0-9]{1,6})/))&&q[1]){u="attachment_"+q[1]}if(v.link_href.value&&(w=g.dom.getParent(e,"a"))){if(w.childNodes.length==1){l=g.dom.getOuterHTML(w)}else{l=g.dom.getOuterHTML(w);l=l.match(/<a[^>]+>/i);l=l+g.dom.getOuterHTML(e)+"</a>"}}else{l=g.dom.getOuterHTML(e)}l='<dl id="'+u+'" class="wp-caption '+m.align+'" style="width: '+a+'px"><dt class="wp-caption-dt">'+l+'</dt><dd class="wp-caption-dd">'+v.img_cap.value+"</dd></dl>";j=g.dom.create("div",{"class":z},l);if(h){h.parentNode.insertBefore(j,h);if(h.childNodes.length==1){g.dom.remove(h)}else{if(w&&w.childNodes.length==1){g.dom.remove(w)}else{g.dom.remove(e)}}}else{if(c=g.dom.getParent(e,"TD,TH,LI")){c.appendChild(j);if(w&&w.childNodes.length==1){g.dom.remove(w)}else{g.dom.remove(e)}}}}}else{if(n&&r){if(v.link_href.value&&(y=g.dom.getParent(e,"a"))){l=g.dom.getOuterHTML(y)}else{l=g.dom.getOuterHTML(e)}h=g.dom.create("p",{},l);r.parentNode.insertBefore(h,r);g.dom.remove(r)}}if(v.img_classes.value.indexOf("aligncenter")!=-1){if(h&&(!h.style||h.style.textAlign!="center")){g.dom.setStyle(h,"textAlign","center")}}else{if(h&&h.style&&h.style.textAlign=="center"){g.dom.setStyle(h,"textAlign","")}}if(!v.link_href.value&&p){x=g.selection.getBookmark();g.dom.remove(p,1);g.selection.moveToBookmark(x)}tinyMCEPopup.execCommand("mceEndUndoLevel");g.execCommand("mceRepaint");tinyMCEPopup.close()},updateStyle:function(a){var e=tinyMCEPopup.dom,c,d=document.forms[0],b=e.create("img",{style:d.img_style.value});if(tinyMCEPopup.editor.settings.inline_styles){if(a=="align"){e.setStyle(b,"float","");e.setStyle(b,"vertical-align","");c=d.align.value;if(c){if(c=="left"||c=="right"){e.setStyle(b,"float",c)}else{b.style.verticalAlign=c}}}if(a=="border"){e.setStyle(b,"border","");c=d.border.value;if(c||c=="0"){if(c=="0"){b.style.border="0"}else{b.style.border=c+"px solid black"}}}if(a=="hspace"){e.setStyle(b,"marginLeft","");e.setStyle(b,"marginRight","");c=d.hspace.value;if(c){b.style.marginLeft=c+"px";b.style.marginRight=c+"px"}}if(a=="vspace"){e.setStyle(b,"marginTop","");e.setStyle(b,"marginBottom","");c=d.vspace.value;if(c){b.style.marginTop=c+"px";b.style.marginBottom=c+"px"}}d.img_style.value=e.serializeStyle(e.parseStyle(b.style.cssText));this.demoSetStyle()}},checkVal:function(a){if(a.value==""){if(a.id=="img_src"){a.value=this.I("img_demo").src||this.preloadImg.src}}},resetImageData:function(){var a=document.forms[0];a.width.value=a.height.value=""},updateImageData:function(){var d=document.forms[0],b=wpImage,a=d.width.value,c=d.height.value;if(!a&&c){a=d.width.value=b.width=Math.round(b.preloadImg.width/(b.preloadImg.height/c))}else{if(a&&!c){c=d.height.value=b.height=Math.round(b.preloadImg.height/(b.preloadImg.width/a))}}if(!a){d.width.value=b.width=b.preloadImg.width}if(!c){d.height.value=b.height=b.preloadImg.height}b.showSizeSet();b.demoSetSize();if(d.img_style.value){b.demoSetStyle()}},getImageData:function(){var a=wpImage,b=document.forms[0];a.preloadImg=new Image();a.preloadImg.onload=a.updateImageData;a.preloadImg.onerror=a.resetImageData;a.preloadImg.src=tinyMCEPopup.editor.documentBaseURI.toAbsolute(b.img_src.value)}};window.onload=function(){wpImage.init()};wpImage.preInit();
\ No newline at end of file
+var tinymce=null,tinyMCEPopup,tinyMCE,wpImage;tinyMCEPopup={init:function(){var d=this,b,a,f,c,e;a=(""+document.location.search).replace(/^\?/,"").split("&");f={};for(c=0;c<a.length;c++){e=a[c].split("=");f[unescape(e[0])]=unescape(e[1])}if(f.mce_rdomain){document.domain=f.mce_rdomain}b=d.getWin();tinymce=b.tinymce;tinyMCE=b.tinyMCE;d.editor=tinymce.EditorManager.activeEditor;d.params=d.editor.windowManager.params;d.dom=d.editor.windowManager.createInstance("tinymce.dom.DOMUtils",document);d.editor.windowManager.onOpen.dispatch(d.editor.windowManager,window)},getWin:function(){return window.dialogArguments||opener||parent||top},getParam:function(b,a){return this.editor.getParam(b,a)},close:function(){var a=this,b=a.getWin();function c(){b.tb_remove();tinymce=tinyMCE=a.editor=a.dom=a.dom.doc=null}if(tinymce.isOpera){b.setTimeout(c,0)}else{c()}},execCommand:function(d,c,e,b){b=b||{};b.skip_focus=1;this.restoreSelection();return this.editor.execCommand(d,c,e,b)},storeSelection:function(){this.editor.windowManager.bookmark=tinyMCEPopup.editor.selection.getBookmark("simple")},restoreSelection:function(){var a=tinyMCEPopup;if(tinymce.isIE){a.editor.selection.moveToBookmark(a.editor.windowManager.bookmark)}}};tinyMCEPopup.init();wpImage={preInit:function(){var d=tinyMCEPopup.getWin(),c=d.document.styleSheets,a,b;for(b=0;b<c.length;b++){a=c.item(b).href;if(a&&a.indexOf("colors")!=-1){document.write('<link rel="stylesheet" href="'+a+'" type="text/css" media="all" />')}}},I:function(a){return document.getElementById(a)},current:"",link:"",link_rel:"",target_value:"",current_size_sel:"s100",width:"",height:"",align:"",img_alt:"",setTabs:function(b){var a=this;if("current"==b.className){return false}a.I("div_advanced").style.display=("tab_advanced"==b.id)?"block":"none";a.I("div_basic").style.display=("tab_basic"==b.id)?"block":"none";a.I("tab_basic").className=a.I("tab_advanced").className="";b.className="current";return false},img_seturl:function(b){var c=this,a=c.I("link_rel").value;if("current"==b){c.I("link_href").value=c.current;c.I("link_rel").value=c.link_rel}else{c.I("link_href").value=c.link;if(a){a=a.replace(/attachment|wp-att-[0-9]+/gi,"");c.I("link_rel").value=tinymce.trim(a)}}},imgAlignCls:function(b){var c=this,a=c.I("img_classes").value;c.I("img_demo").className=c.align=b;a=a.replace(/align[^ "']+/gi,"");a+=(" "+b);a=a.replace(/\s+/g," ").replace(/^\s/,"");if("aligncenter"==b){c.I("hspace").value="";c.updateStyle("hspace")}c.I("img_classes").value=a},showSize:function(e){var c=this,f=c.I("img_demo"),a=c.width,d=c.height,g=e.id||"s100",b;b=parseInt(g.substring(1))/200;f.width=Math.round(a*b);f.height=Math.round(d*b);c.showSizeClear();e.style.borderColor="#A3A3A3";e.style.backgroundColor="#E5E5E5"},showSizeSet:function(){var b=this,d,c,a;if((b.width*1.3)>parseInt(b.preloadImg.width)){d=b.I("s130"),c=b.I("s120"),a=b.I("s110");d.onclick=c.onclick=a.onclick=null;d.onmouseover=c.onmouseover=a.onmouseover=null;d.style.color=c.style.color=a.style.color="#aaa"}},showSizeRem:function(){var a=this,c=a.I("img_demo"),b=document.forms[0];c.width=Math.round(b.width.value*0.5);c.height=Math.round(b.height.value*0.5);a.showSizeClear();a.I(a.current_size_sel).style.borderColor="#A3A3A3";a.I(a.current_size_sel).style.backgroundColor="#E5E5E5";return false},showSizeClear:function(){var b=this.I("img_size").getElementsByTagName("div"),a;for(a=0;a<b.length;a++){b[a].style.borderColor="#f1f1f1";b[a].style.backgroundColor="#f1f1f1"}},imgEditSize:function(g){var d=this,i=document.forms[0],a,c,b,e,j;if(!d.preloadImg||!d.preloadImg.width||!d.preloadImg.height){return}a=parseInt(d.preloadImg.width),c=parseInt(d.preloadImg.height),b=d.width||a,e=d.height||c,j=g.id||"s100";size=parseInt(j.substring(1))/100;b=Math.round(b*size);e=Math.round(e*size);i.width.value=Math.min(a,b);i.height.value=Math.min(c,e);d.current_size_sel=j;d.demoSetSize()},demoSetSize:function(a){var c=this.I("img_demo"),b=document.forms[0];c.width=b.width.value?Math.round(b.width.value*0.5):"";c.height=b.height.value?Math.round(b.height.value*0.5):""},demoSetStyle:function(){var b=document.forms[0],a=this.I("img_demo"),c=tinyMCEPopup.editor.dom;if(a){c.setAttrib(a,"style",b.img_style.value);c.setStyle(a,"width","");c.setStyle(a,"height","")}},origSize:function(){var a=this,c=document.forms[0],b=a.I("s100");c.width.value=a.width=a.preloadImg.width;c.height.value=a.height=a.preloadImg.height;a.showSizeSet();a.demoSetSize();a.showSize(b)},init:function(){var a=tinyMCEPopup.editor,b;b=document.body.innerHTML;document.body.innerHTML=a.translate(b);window.setTimeout(function(){wpImage.setup()},500)},setup:function(){var p=this,k,b,l,e,i=document.forms[0],h=tinyMCEPopup.editor,j=p.I("img_demo"),g=tinyMCEPopup.dom,a,o="",n,m;document.dir=tinyMCEPopup.editor.getParam("directionality","");if(tinyMCEPopup.editor.getParam("wpeditimage_disable_captions",false)){p.I("cap_field").style.display="none"}tinyMCEPopup.restoreSelection();b=h.selection.getNode();if(b.nodeName!="IMG"){return}i.img_src.value=j.src=l=h.dom.getAttrib(b,"src");h.dom.setStyle(b,"float","");p.getImageData();k=h.dom.getAttrib(b,"class");if(a=g.getParent(b,"dl")){n=h.dom.getAttrib(a,"class");n=n.match(/align[^ "']+/i);if(n&&!g.hasClass(b,n)){k+=" "+n;tinymce.trim(k)}tinymce.each(a.childNodes,function(c){if(c.nodeName=="DD"&&g.hasClass(c,"wp-caption-dd")){o=c.innerHTML;return}})}i.img_cap.value=o;i.img_title.value=h.dom.getAttrib(b,"title");i.img_alt.value=h.dom.getAttrib(b,"alt");i.border.value=h.dom.getAttrib(b,"border");i.vspace.value=h.dom.getAttrib(b,"vspace");i.hspace.value=h.dom.getAttrib(b,"hspace");i.align.value=h.dom.getAttrib(b,"align");i.width.value=p.width=h.dom.getAttrib(b,"width");i.height.value=p.height=h.dom.getAttrib(b,"height");i.img_classes.value=k;i.img_style.value=h.dom.getAttrib(b,"style");if(g.getAttrib(b,"hspace")){p.updateStyle("hspace")}if(g.getAttrib(b,"border")){p.updateStyle("border")}if(g.getAttrib(b,"vspace")){p.updateStyle("vspace")}if(m=h.dom.getParent(b,"A")){i.link_href.value=p.current=h.dom.getAttrib(m,"href");i.link_title.value=h.dom.getAttrib(m,"title");i.link_rel.value=p.link_rel=h.dom.getAttrib(m,"rel");i.link_style.value=h.dom.getAttrib(m,"style");p.target_value=h.dom.getAttrib(m,"target");i.link_classes.value=h.dom.getAttrib(m,"class")}i.link_target.checked=(p.target_value&&p.target_value=="_blank")?"checked":"";e=l.substring(l.lastIndexOf("/"));e=e.replace(/-[0-9]{2,4}x[0-9]{2,4}/,"");p.link=l.substring(0,l.lastIndexOf("/"))+e;if(k.indexOf("alignleft")!=-1){p.I("alignleft").checked="checked";j.className=p.align="alignleft"}else{if(k.indexOf("aligncenter")!=-1){p.I("aligncenter").checked="checked";j.className=p.align="aligncenter"}else{if(k.indexOf("alignright")!=-1){p.I("alignright").checked="checked";j.className=p.align="alignright"}else{if(k.indexOf("alignnone")!=-1){p.I("alignnone").checked="checked";j.className=p.align="alignnone"}}}}if(p.width&&p.preloadImg.width){p.showSizeSet()}document.body.style.display=""},remove:function(){var a=tinyMCEPopup.editor,c,b;tinyMCEPopup.restoreSelection();b=a.selection.getNode();if(b.nodeName!="IMG"){return}if((c=a.dom.getParent(b,"div"))&&a.dom.hasClass(c,"mceTemp")){a.dom.remove(c)}else{if((c=a.dom.getParent(b,"A"))&&c.childNodes.length==1){a.dom.remove(c)}else{a.dom.remove(b)}}a.execCommand("mceRepaint");tinyMCEPopup.close();return},update:function(){var m=this,v=document.forms[0],g=tinyMCEPopup.editor,e,x,d=null,n,h,p,r,o=null,k=v.img_classes.value,l,q,u="",j,i,s,a,z,w="",c,y;tinyMCEPopup.restoreSelection();e=g.selection.getNode();if(e.nodeName!="IMG"){return}if(v.img_src.value===""){m.remove();return}if(v.img_cap.value!=""&&v.width.value!=""){o=1;k=k.replace(/align[^ "']+\s?/gi,"")}p=g.dom.getParent(e,"a");h=g.dom.getParent(e,"p");n=g.dom.getParent(e,"dl");r=g.dom.getParent(e,"div");tinyMCEPopup.execCommand("mceBeginUndoLevel");if(v.width.value!=e.width||v.height.value!=e.height){k=k.replace(/size-[^ "']+/,"")}g.dom.setAttribs(e,{src:v.img_src.value,title:v.img_title.value,alt:v.img_alt.value,width:v.width.value,height:v.height.value,style:v.img_style.value,"class":k});if(v.link_href.value){if(p==null){if(!v.link_href.value.match(/https?:\/\//i)){v.link_href.value=tinyMCEPopup.editor.documentBaseURI.toAbsolute(v.link_href.value)}if(tinymce.isWebKit&&g.dom.hasClass(e,"aligncenter")){g.dom.removeClass(e,"aligncenter");d=1}tinyMCEPopup.execCommand("CreateLink",false,"#mce_temp_url#",{skip_undo:1});if(d){g.dom.addClass(e,"aligncenter")}tinymce.each(g.dom.select("a"),function(b){if(g.dom.getAttrib(b,"href")=="#mce_temp_url#"){g.dom.setAttribs(b,{href:v.link_href.value,title:v.link_title.value,rel:v.link_rel.value,target:(v.link_target.checked==true)?"_blank":"","class":v.link_classes.value,style:v.link_style.value})}})}else{g.dom.setAttribs(p,{href:v.link_href.value,title:v.link_title.value,rel:v.link_rel.value,target:(v.link_target.checked==true)?"_blank":"","class":v.link_classes.value,style:v.link_style.value})}}if(o){a=10+parseInt(v.width.value);z=(m.align=="aligncenter")?"mceTemp mceIEcenter":"mceTemp";if(n){g.dom.setAttribs(n,{"class":"wp-caption "+m.align,style:"width: "+a+"px;"});if(r){g.dom.setAttrib(r,"class",z)}if((i=g.dom.getParent(e,"dt"))&&(s=i.nextSibling)&&g.dom.hasClass(s,"wp-caption-dd")){g.dom.setHTML(s,v.img_cap.value)}}else{if((q=v.img_classes.value.match(/wp-image-([0-9]{1,6})/))&&q[1]){u="attachment_"+q[1]}if(v.link_href.value&&(w=g.dom.getParent(e,"a"))){if(w.childNodes.length==1){l=g.dom.getOuterHTML(w)}else{l=g.dom.getOuterHTML(w);l=l.match(/<a[^>]+>/i);l=l+g.dom.getOuterHTML(e)+"</a>"}}else{l=g.dom.getOuterHTML(e)}l='<dl id="'+u+'" class="wp-caption '+m.align+'" style="width: '+a+'px"><dt class="wp-caption-dt">'+l+'</dt><dd class="wp-caption-dd">'+v.img_cap.value+"</dd></dl>";j=g.dom.create("div",{"class":z},l);if(h){h.parentNode.insertBefore(j,h);if(h.childNodes.length==1){g.dom.remove(h)}else{if(w&&w.childNodes.length==1){g.dom.remove(w)}else{g.dom.remove(e)}}}else{if(c=g.dom.getParent(e,"TD,TH,LI")){c.appendChild(j);if(w&&w.childNodes.length==1){g.dom.remove(w)}else{g.dom.remove(e)}}}}}else{if(n&&r){if(v.link_href.value&&(y=g.dom.getParent(e,"a"))){l=g.dom.getOuterHTML(y)}else{l=g.dom.getOuterHTML(e)}h=g.dom.create("p",{},l);r.parentNode.insertBefore(h,r);g.dom.remove(r)}}if(v.img_classes.value.indexOf("aligncenter")!=-1){if(h&&(!h.style||h.style.textAlign!="center")){g.dom.setStyle(h,"textAlign","center")}}else{if(h&&h.style&&h.style.textAlign=="center"){g.dom.setStyle(h,"textAlign","")}}if(!v.link_href.value&&p){x=g.selection.getBookmark();g.dom.remove(p,1);g.selection.moveToBookmark(x)}tinyMCEPopup.execCommand("mceEndUndoLevel");g.execCommand("mceRepaint");tinyMCEPopup.close()},updateStyle:function(a){var e=tinyMCEPopup.dom,c,d=document.forms[0],b=e.create("img",{style:d.img_style.value});if(tinyMCEPopup.editor.settings.inline_styles){if(a=="align"){e.setStyle(b,"float","");e.setStyle(b,"vertical-align","");c=d.align.value;if(c){if(c=="left"||c=="right"){e.setStyle(b,"float",c)}else{b.style.verticalAlign=c}}}if(a=="border"){e.setStyle(b,"border","");c=d.border.value;if(c||c=="0"){if(c=="0"){b.style.border="0"}else{b.style.border=c+"px solid black"}}}if(a=="hspace"){e.setStyle(b,"marginLeft","");e.setStyle(b,"marginRight","");c=d.hspace.value;if(c){b.style.marginLeft=c+"px";b.style.marginRight=c+"px"}}if(a=="vspace"){e.setStyle(b,"marginTop","");e.setStyle(b,"marginBottom","");c=d.vspace.value;if(c){b.style.marginTop=c+"px";b.style.marginBottom=c+"px"}}d.img_style.value=e.serializeStyle(e.parseStyle(b.style.cssText));this.demoSetStyle()}},checkVal:function(a){if(a.value==""){if(a.id=="img_src"){a.value=this.I("img_demo").src||this.preloadImg.src}}},resetImageData:function(){var a=document.forms[0];a.width.value=a.height.value=""},updateImageData:function(){var d=document.forms[0],b=wpImage,a=d.width.value,c=d.height.value;if(!a&&c){a=d.width.value=b.width=Math.round(b.preloadImg.width/(b.preloadImg.height/c))}else{if(a&&!c){c=d.height.value=b.height=Math.round(b.preloadImg.height/(b.preloadImg.width/a))}}if(!a){d.width.value=b.width=b.preloadImg.width}if(!c){d.height.value=b.height=b.preloadImg.height}b.showSizeSet();b.demoSetSize();if(d.img_style.value){b.demoSetStyle()}},getImageData:function(){var a=wpImage,b=document.forms[0];a.preloadImg=new Image();a.preloadImg.onload=a.updateImageData;a.preloadImg.onerror=a.resetImageData;a.preloadImg.src=tinyMCEPopup.editor.documentBaseURI.toAbsolute(b.img_src.value)}};window.onload=function(){wpImage.init()};wpImage.preInit();
\ No newline at end of file
index a60af7776760f896091a22c71037e7d47d3f410c..267f4674950032bbbb27aed8bebee8921e329b39 100644 (file)
@@ -1,7 +1,7 @@
 /*\r
 Distraction Free Writing mode TinyMCE Styles\r
 */\r
 /*\r
 Distraction Free Writing mode TinyMCE Styles\r
 */\r
-\r
+
 html, body {\r
        background: transparent;\r
        width: auto !important;\r
 html, body {\r
        background: transparent;\r
        width: auto !important;\r
index 29b56caaccb79b66be4e0ce352b5649b95b1a35b..6290c11233ba9181c75690cf1a7b6e6e7d050bb8 100644 (file)
                        });
 
                        ed.addCommand('wpFullScreenInit', function() {
                        });
 
                        ed.addCommand('wpFullScreenInit', function() {
-                               var d = ed.getDoc(), b = d.body, fsed;
+                               var d, b, fsed;
 
 
-                               // Only init the editor if necessary.
-                               if ( ed.id == 'wp_mce_fullscreen' )
-                                       return;
+                               ed = tinymce.get('content');
+                               d = ed.getDoc();
+                               b = d.body;
 
                                tinyMCE.oldSettings = tinyMCE.settings; // Store old settings
 
 
                                tinyMCE.oldSettings = tinyMCE.settings; // Store old settings
 
@@ -95,7 +95,7 @@
 
                        // Register buttons
                        if ( 'undefined' != fullscreen ) {
 
                        // Register buttons
                        if ( 'undefined' != fullscreen ) {
-                               ed.addButton('fullscreen', {
+                               ed.addButton('wp_fullscreen', {
                                        title : 'fullscreen.desc',
                                        onclick : function(){ fullscreen.on(); }
                                });
                                        title : 'fullscreen.desc',
                                        onclick : function(){ fullscreen.on(); }
                                });
index ed271503c7df0168469ca76e36e418cafbec4baf..6c54415f8e0f3c5d7d22ef4b368c25d08762fe59 100644 (file)
@@ -1 +1 @@
-(function(){tinymce.create("tinymce.plugins.wpFullscreenPlugin",{init:function(b,d){var e=this,h=0,f={},g=tinymce.DOM,a=false;b.addCommand("wpFullScreenClose",function(){if(b.getParam("wp_fullscreen_is_enabled")){g.win.setTimeout(function(){tinyMCE.remove(b);g.remove("wp_mce_fullscreen_parent");tinyMCE.settings=tinyMCE.oldSettings},10)}});b.addCommand("wpFullScreenSave",function(){var i=tinyMCE.get("wp_mce_fullscreen"),j;i.focus();j=tinyMCE.get(i.getParam("wp_fullscreen_editor_id"));j.setContent(i.getContent({format:"raw"}),{format:"raw"})});b.addCommand("wpFullScreenInit",function(){var k=b.getDoc(),i=k.body,j;if(b.id=="wp_mce_fullscreen"){return}tinyMCE.oldSettings=tinyMCE.settings;tinymce.each(b.settings,function(l,m){f[m]=l});f.id="wp_mce_fullscreen";f.wp_fullscreen_is_enabled=true;f.wp_fullscreen_editor_id=b.id;f.theme_advanced_resizing=false;f.theme_advanced_statusbar_location="none";f.content_css=f.content_css?f.content_css+","+f.wp_fullscreen_content_css:f.wp_fullscreen_content_css;f.height=tinymce.isIE?i.scrollHeight:i.offsetHeight;tinymce.each(b.getParam("wp_fullscreen_settings"),function(m,l){f[l]=m});j=new tinymce.Editor("wp_mce_fullscreen",f);j.onInit.add(function(l){var n=tinymce.DOM,m=n.select("a.mceButton",n.get("wp-fullscreen-buttons"));if(!b.isHidden()){l.setContent(b.getContent())}else{l.setContent(switchEditors.wpautop(l.getElement().value))}setTimeout(function(){l.onNodeChange.add(function(p,o,q){tinymce.each(m,function(t){var s,r;if(s=n.get("wp_mce_fullscreen_"+t.id.substr(6))){r=s.className;if(r){t.className=r}}})})},1000);l.dom.addClass(l.getBody(),"wp-fullscreen-editor");l.focus()});j.render();if("undefined"!=fullscreen){j.dom.bind(j.dom.doc,"mousemove",function(l){fullscreen.bounder("showToolbar","hideToolbar",2000,l)})}});if("undefined"!=fullscreen){b.addButton("fullscreen",{title:"fullscreen.desc",onclick:function(){fullscreen.on()}})}if(b.getParam("fullscreen_is_enabled")||!b.getParam("wp_fullscreen_is_enabled")){return}function c(){if(a){return}var k=b.getDoc(),j=tinymce.DOM,l,i;if(tinymce.isIE){i=k.body.scrollHeight}else{i=k.documentElement.offsetHeight}l=(i>300)?i:300;if(h!=l){h=l;a=true;setTimeout(function(){a=false},100);j.setStyle(j.get(b.id+"_ifr"),"height",l+"px")}}b.onInit.add(function(j,i){j.onChange.add(c);j.onSetContent.add(c);j.onPaste.add(c);j.onKeyUp.add(c);j.onPostRender.add(c);j.getBody().style.overflowY="hidden"});if(b.getParam("autoresize_on_init",true)){b.onLoadContent.add(function(j,i){setTimeout(function(){c()},1200)})}b.addCommand("wpAutoResize",c)},getInfo:function(){return{longname:"WP Fullscreen",author:"WordPress",authorurl:"http://wordpress.org",infourl:"",version:"1.0"}}});tinymce.PluginManager.add("wpfullscreen",tinymce.plugins.wpFullscreenPlugin)})();
\ No newline at end of file
+(function(){tinymce.create("tinymce.plugins.wpFullscreenPlugin",{init:function(b,d){var e=this,h=0,f={},g=tinymce.DOM,a=false;b.addCommand("wpFullScreenClose",function(){if(b.getParam("wp_fullscreen_is_enabled")){g.win.setTimeout(function(){tinyMCE.remove(b);g.remove("wp_mce_fullscreen_parent");tinyMCE.settings=tinyMCE.oldSettings},10)}});b.addCommand("wpFullScreenSave",function(){var i=tinyMCE.get("wp_mce_fullscreen"),j;i.focus();j=tinyMCE.get(i.getParam("wp_fullscreen_editor_id"));j.setContent(i.getContent({format:"raw"}),{format:"raw"})});b.addCommand("wpFullScreenInit",function(){var k,i,j;b=tinymce.get("content");k=b.getDoc();i=k.body;tinyMCE.oldSettings=tinyMCE.settings;tinymce.each(b.settings,function(l,m){f[m]=l});f.id="wp_mce_fullscreen";f.wp_fullscreen_is_enabled=true;f.wp_fullscreen_editor_id=b.id;f.theme_advanced_resizing=false;f.theme_advanced_statusbar_location="none";f.content_css=f.content_css?f.content_css+","+f.wp_fullscreen_content_css:f.wp_fullscreen_content_css;f.height=tinymce.isIE?i.scrollHeight:i.offsetHeight;tinymce.each(b.getParam("wp_fullscreen_settings"),function(m,l){f[l]=m});j=new tinymce.Editor("wp_mce_fullscreen",f);j.onInit.add(function(l){var n=tinymce.DOM,m=n.select("a.mceButton",n.get("wp-fullscreen-buttons"));if(!b.isHidden()){l.setContent(b.getContent())}else{l.setContent(switchEditors.wpautop(l.getElement().value))}setTimeout(function(){l.onNodeChange.add(function(p,o,q){tinymce.each(m,function(t){var s,r;if(s=n.get("wp_mce_fullscreen_"+t.id.substr(6))){r=s.className;if(r){t.className=r}}})})},1000);l.dom.addClass(l.getBody(),"wp-fullscreen-editor");l.focus()});j.render();if("undefined"!=fullscreen){j.dom.bind(j.dom.doc,"mousemove",function(l){fullscreen.bounder("showToolbar","hideToolbar",2000,l)})}});if("undefined"!=fullscreen){b.addButton("wp_fullscreen",{title:"fullscreen.desc",onclick:function(){fullscreen.on()}})}if(b.getParam("fullscreen_is_enabled")||!b.getParam("wp_fullscreen_is_enabled")){return}function c(){if(a){return}var k=b.getDoc(),j=tinymce.DOM,l,i;if(tinymce.isIE){i=k.body.scrollHeight}else{i=k.documentElement.offsetHeight}l=(i>300)?i:300;if(h!=l){h=l;a=true;setTimeout(function(){a=false},100);j.setStyle(j.get(b.id+"_ifr"),"height",l+"px")}}b.onInit.add(function(j,i){j.onChange.add(c);j.onSetContent.add(c);j.onPaste.add(c);j.onKeyUp.add(c);j.onPostRender.add(c);j.getBody().style.overflowY="hidden"});if(b.getParam("autoresize_on_init",true)){b.onLoadContent.add(function(j,i){setTimeout(function(){c()},1200)})}b.addCommand("wpAutoResize",c)},getInfo:function(){return{longname:"WP Fullscreen",author:"WordPress",authorurl:"http://wordpress.org",infourl:"",version:"1.0"}}});tinymce.PluginManager.add("wpfullscreen",tinymce.plugins.wpFullscreenPlugin)})();
\ No newline at end of file
diff --git a/wp-includes/js/tinymce/plugins/wplink/css/wplink-rtl.css b/wp-includes/js/tinymce/plugins/wplink/css/wplink-rtl.css
deleted file mode 100644 (file)
index 6d0d4c3..0000000
+++ /dev/null
@@ -1 +0,0 @@
-#wp-link #internal-toggle{padding-right:18px;padding-left:0;}#wp-link label span{text-align:left;padding-left:5px;padding-right:0;}#wp-link .link-search-wrapper span{float:right;}#wp-link .link-search-wrapper input[type="text"]{float:right;}#wp-link .link-search-wrapper img.waiting{margin:8px 4px 0 1px;float:right;}#wp-link .link-target{margin:0 87px 0 0;}#wp-link .item-info{left:5px;right:auto;top:4px;bottom:0;}#wp-link #search-panel{float:right;}#wp-link-cancel{float:right;}#wp-link-update{float:left;}#wp-link .toggle-arrow{background-position:bottom right;}#wp-link .toggle-arrow-active{background-position:center right;}
\ No newline at end of file
diff --git a/wp-includes/js/tinymce/plugins/wplink/css/wplink-rtl.dev.css b/wp-includes/js/tinymce/plugins/wplink/css/wplink-rtl.dev.css
deleted file mode 100644 (file)
index d64f198..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-#wp-link #internal-toggle {
-       padding-right: 18px;
-       padding-left: 0;
-}
-
-#wp-link label span {
-       text-align: left;
-       padding-left: 5px;
-       padding-right: 0;
-}
-
-#wp-link .link-search-wrapper span {
-       float: right;
-}
-
-#wp-link .link-search-wrapper input[type="text"] {
-       float: right;
-}
-
-#wp-link .link-search-wrapper img.waiting {
-       margin: 8px 4px 0 1px;
-       float: right;
-}
-
-#wp-link .link-target {
-       margin: 0 87px 0 0;
-}
-
-#wp-link .item-info {
-       left: 5px;
-       right: auto;
-       top: 4px;
-       bottom: 0;
-}
-
-#wp-link #search-panel {
-       float: right;
-}
-
-#wp-link-cancel {
-       float: right;
-}
-
-#wp-link-update {
-       float: left;
-}
-
-#wp-link .toggle-arrow {
-       background-position: bottom right;
-}
-
-#wp-link .toggle-arrow-active {
-       background-position: center right;
-}
\ No newline at end of file
diff --git a/wp-includes/js/tinymce/plugins/wplink/css/wplink.css b/wp-includes/js/tinymce/plugins/wplink/css/wplink.css
deleted file mode 100644 (file)
index a1560b3..0000000
+++ /dev/null
@@ -1 +0,0 @@
-#wp-link{line-height:1.4em;font-size:12px;}#wp-link ol,#wp-link ul{list-style:none;margin:0;padding:0;}#wp-link input[type="text"]{-webkit-box-sizing:border-box;}#wp-link input[type="text"],#wp-link textarea{border-width:1px;border-style:solid;-moz-border-radius:4px;-khtml-border-radius:4px;-webkit-border-radius:4px;border-radius:4px;font-size:12px;margin:1px;padding:3px;}#wp-link #link-options{padding:10px 0 14px;border-bottom:1px solid #dfdfdf;margin:0 6px 14px;}#wp-link p.howto{margin:3px;}#wp-link #internal-toggle{display:inline-block;cursor:pointer;padding-left:18px;}#wp-link .toggle-arrow{background:transparent url('../img/toggle-arrow.png') top left no-repeat;height:23px;line-height:23px;}#wp-link .toggle-arrow-active{background-position:center left;}#wp-link label input[type="text"]{width:360px;margin-top:5px;}#wp-link label span{display:inline-block;width:80px;text-align:right;padding-right:5px;}#wp-link .link-search-wrapper{margin:5px 6px 9px;display:block;overflow:hidden;}#wp-link .link-search-wrapper span{float:left;margin-top:6px;}#wp-link .link-search-wrapper input[type="text"]{float:left;width:220px;}#wp-link .link-search-wrapper img.waiting{margin:8px 1px 0 4px;float:left;display:none;}#wp-link .link-target{width:auto;padding:3px 0 0;margin:0 0 0 87px;font-size:11px;}#wp-link .query-results{border:1px #dfdfdf solid;margin:0 5px 5px;background:#fff;height:185px;overflow:auto;position:relative;}#wp-link li,#wp-link .query-notice{clear:both;margin-bottom:0;border-bottom:1px solid #f1f1f1;color:#333;padding:4px 6px;cursor:pointer;position:relative;}#wp-link li:hover{background:#eaf2fa;color:#151515;}#wp-link li.unselectable{border-bottom:1px solid #dfdfdf;}#wp-link li.unselectable:hover{background:#fff;cursor:auto;color:#333;}#wp-link li.selected{background:#ddd;color:#333;}#wp-link li.selected .item-title{font-weight:bold;}#wp-link .item-title{display:inline-block;width:80%;}#wp-link .item-info{text-transform:uppercase;color:#666;font-size:11px;position:absolute;right:5px;top:4px;bottom:0;}#wp-link #search-results{display:none;}#wp-link #search-panel{float:left;width:100%;}#wp-link .river-waiting{display:none;padding:10px 0;}#wp-link .river-waiting img.waiting{margin:0 auto;display:block;}#wp-link .submitbox{padding:5px 10px;font-size:11px;overflow:auto;height:29px;}#wp-link-cancel{line-height:25px;float:left;}#wp-link-update{line-height:23px;float:right;}
\ No newline at end of file
diff --git a/wp-includes/js/tinymce/plugins/wplink/css/wplink.dev.css b/wp-includes/js/tinymce/plugins/wplink/css/wplink.dev.css
deleted file mode 100644 (file)
index 16db9e5..0000000
+++ /dev/null
@@ -1,163 +0,0 @@
-#wp-link {
-       line-height: 1.4em;
-       font-size: 12px;
-}
-
-#wp-link ol,
-#wp-link ul {
-       list-style: none;
-       margin: 0;
-       padding: 0;
-}
-
-#wp-link input[type="text"] {
-       -webkit-box-sizing: border-box;
-}
-
-#wp-link input[type="text"],
-#wp-link textarea {
-       border-width: 1px;
-       border-style: solid;
-       -moz-border-radius: 4px;
-       -khtml-border-radius: 4px;
-       -webkit-border-radius: 4px;
-       border-radius: 4px;
-       font-size: 12px;
-       margin: 1px;
-       padding: 3px;
-}
-
-#wp-link #link-options {
-       padding: 10px 0 14px;
-       border-bottom: 1px solid #dfdfdf;
-       margin: 0 6px 14px;
-}
-#wp-link p.howto {
-       margin: 3px;
-}
-#wp-link #internal-toggle {
-       display: inline-block;
-       cursor: pointer;
-       padding-left: 18px;
-}
-#wp-link .toggle-arrow {
-       background: transparent url( '../img/toggle-arrow.png' ) top left no-repeat;
-       height: 23px;
-       line-height: 23px;
-}
-#wp-link .toggle-arrow-active {
-       background-position: center left;
-}
-#wp-link label input[type="text"] {
-       width: 360px;
-       margin-top: 5px;
-}
-#wp-link label span {
-       display: inline-block;
-       width: 80px;
-       text-align: right;
-       padding-right: 5px;
-}
-#wp-link .link-search-wrapper {
-       margin: 5px 6px 9px;
-       display: block;
-       overflow: hidden;
-}
-#wp-link .link-search-wrapper span {
-       float: left;
-       margin-top: 6px;
-}
-#wp-link .link-search-wrapper input[type="text"] {
-       float: left;
-       width: 220px;
-}
-#wp-link .link-search-wrapper img.waiting {
-       margin: 8px 1px 0 4px;
-       float: left;
-       display: none;
-}
-#wp-link .link-target {
-       width: auto;
-       padding: 3px 0 0;
-       margin: 0 0 0 87px;
-       font-size: 11px;
-}
-#wp-link .query-results {
-       border: 1px #dfdfdf solid;
-       margin: 0 5px 5px;
-       background: #fff;
-       height: 185px;
-       overflow: auto;
-       position: relative;
-}
-#wp-link li,
-#wp-link .query-notice {
-       clear: both;
-       margin-bottom: 0;
-       border-bottom: 1px solid #f1f1f1;
-       color: #333;
-       padding: 4px 6px;
-       cursor: pointer;
-       position: relative;
-}
-#wp-link li:hover {
-       background: #eaf2fa;
-       color: #151515;
-}
-#wp-link li.unselectable {
-       border-bottom: 1px solid #dfdfdf;
-}
-#wp-link li.unselectable:hover {
-       background: #fff;
-       cursor: auto;
-       color: #333;
-}
-#wp-link li.selected {
-       background: #ddd;
-       color: #333;
-}
-#wp-link li.selected .item-title {
-       font-weight: bold;
-}
-#wp-link .item-title {
-       display: inline-block;
-       width: 80%;
-}
-#wp-link .item-info {
-       text-transform: uppercase;
-       color: #666;
-       font-size: 11px;
-       position: absolute;
-       right: 5px;
-       top: 4px;
-       bottom: 0;
-}
-#wp-link #search-results {
-       display: none;
-}
-#wp-link  #search-panel {
-       float: left;
-       width: 100%;
-}
-#wp-link .river-waiting {
-       display: none;
-       padding: 10px 0;
-}
-#wp-link .river-waiting img.waiting {
-       margin: 0 auto;
-       display: block;
-}
-#wp-link .submitbox {
-       padding: 5px 10px;
-       font-size: 11px;
-       overflow: auto;
-       height: 29px;
-}
-#wp-link-cancel {
-       line-height: 25px;
-       float: left;
-}
-#wp-link-update {
-       line-height: 23px;
-       float: right;
-}
\ No newline at end of file
diff --git a/wp-includes/js/tinymce/plugins/wplink/js/wplink.js b/wp-includes/js/tinymce/plugins/wplink/js/wplink.js
deleted file mode 100644 (file)
index 29b0c6c..0000000
+++ /dev/null
@@ -1 +0,0 @@
-var wpLink;(function(f){var b={},e={},d,a,c;wpLink={timeToTriggerRiver:150,minRiverAJAXDuration:200,riverBottomThreshold:5,keySensitivity:100,lastSearch:"",textarea:function(){return edCanvas},init:function(){b.dialog=f("#wp-link");b.submit=f("#wp-link-submit");b.url=f("#url-field");b.title=f("#link-title-field");b.openInNewTab=f("#link-target-checkbox");b.search=f("#search-field");e.search=new a(f("#search-results"));e.recent=new a(f("#most-recent-results"));e.elements=f(".query-results",b.dialog);b.dialog.keydown(wpLink.keydown);b.dialog.keyup(wpLink.keyup);b.submit.click(function(g){wpLink.update();g.preventDefault()});f("#wp-link-cancel").click(wpLink.close);f("#internal-toggle").click(wpLink.toggleInternalLinking);e.elements.bind("river-select",wpLink.updateFields);b.search.keyup(wpLink.searchInternalLinks);b.dialog.bind("wpdialogrefresh",wpLink.refresh);b.dialog.bind("wpdialogbeforeopen",wpLink.beforeOpen);b.dialog.bind("wpdialogclose",wpLink.onClose)},beforeOpen:function(){wpLink.range=null;if(!wpLink.isMCE()&&document.selection){wpLink.textarea().focus();wpLink.range=document.selection.createRange()}},open:function(){if(!b.dialog.data("wpdialog")){b.dialog.wpdialog({title:wpLinkL10n.title,width:480,height:"auto",modal:true,dialogClass:"wp-dialog",zIndex:300000})}b.dialog.wpdialog("open")},isMCE:function(){return tinyMCEPopup&&(d=tinyMCEPopup.editor)&&!d.isHidden()},refresh:function(){e.search.refresh();e.recent.refresh();if(wpLink.isMCE()){wpLink.mceRefresh()}else{wpLink.setDefaultValues()}b.url.focus()[0].select();if(!e.recent.ul.children().length){e.recent.ajax()}},mceRefresh:function(){var g;d=tinyMCEPopup.editor;tinyMCEPopup.restoreSelection();if(g=d.dom.getParent(d.selection.getNode(),"A")){b.url.val(g.href);b.title.val(d.dom.getAttrib(g,"title"));if("_blank"==d.dom.getAttrib(g,"target")){b.openInNewTab.prop("checked",true)}b.submit.val(wpLinkL10n.update)}else{wpLink.setDefaultValues()}tinyMCEPopup.storeSelection()},close:function(){if(wpLink.isMCE()){tinyMCEPopup.close()}else{b.dialog.wpdialog("close")}},onClose:function(){if(!wpLink.isMCE()){wpLink.textarea().focus();if(wpLink.range){wpLink.range.moveToBookmark(wpLink.range.getBookmark());wpLink.range.select()}}},getAttrs:function(){return{href:b.url.val(),title:b.title.val(),target:b.openInNewTab.prop("checked")?"_blank":""}},update:function(){if(wpLink.isMCE()){wpLink.mceUpdate()}else{wpLink.htmlUpdate()}},htmlUpdate:function(){var i,j,l,h,k,g=wpLink.textarea();if(!g){return}i=wpLink.getAttrs();if(!i.href||i.href=="http://"){return}j='<a href="'+i.href+'"';if(i.title){j+=' title="'+i.title+'"'}if(i.target){j+=' target="'+i.target+'"'}j+=">";if(typeof g.selectionStart!=="undefined"){l=g.selectionStart;h=g.selectionEnd;selection=g.value.substring(l,h);j=j+selection+"</a>";k=l+j.length;if(l==h){k-="</a>".length}g.value=g.value.substring(0,l)+j+g.value.substring(h,g.value.length);g.selectionStart=g.selectionEnd=k}else{if(document.selection&&wpLink.range){g.focus();wpLink.range.text=j+wpLink.range.text+"</a>";wpLink.range.moveToBookmark(wpLink.range.getBookmark());wpLink.range.select();wpLink.range=null}}wpLink.close();g.focus()},mceUpdate:function(){var h=tinyMCEPopup.editor,i=wpLink.getAttrs(),j,g;tinyMCEPopup.restoreSelection();j=h.dom.getParent(h.selection.getNode(),"A");if(!i.href||i.href=="http://"){if(j){tinyMCEPopup.execCommand("mceBeginUndoLevel");g=h.selection.getBookmark();h.dom.remove(j,1);h.selection.moveToBookmark(g);tinyMCEPopup.execCommand("mceEndUndoLevel");wpLink.close()}return}tinyMCEPopup.execCommand("mceBeginUndoLevel");if(j==null){h.getDoc().execCommand("unlink",false,null);tinyMCEPopup.execCommand("CreateLink",false,"#mce_temp_url#",{skip_undo:1});tinymce.each(h.dom.select("a"),function(k){if(h.dom.getAttrib(k,"href")=="#mce_temp_url#"){j=k;h.dom.setAttribs(j,i)}});if(f(j).text()=="#mce_temp_url#"){h.dom.remove(j);j=null}}else{h.dom.setAttribs(j,i)}if(j&&(j.childNodes.length!=1||j.firstChild.nodeName!="IMG")){h.focus();h.selection.select(j);h.selection.collapse(0);tinyMCEPopup.storeSelection()}tinyMCEPopup.execCommand("mceEndUndoLevel");wpLink.close()},updateFields:function(i,h,g){b.url.val(h.children(".item-permalink").val());b.title.val(h.hasClass("no-title")?"":h.children(".item-title").text());if(g&&g.type=="click"){b.url.focus()}},setDefaultValues:function(){b.url.val("http://");b.title.val("");b.submit.val(wpLinkL10n.save)},searchInternalLinks:function(){var h=f(this),i,g=h.val();if(g.length>2){e.recent.hide();e.search.show();if(wpLink.lastSearch==g){return}wpLink.lastSearch=g;i=h.siblings("img.waiting").show();e.search.change(g);e.search.ajax(function(){i.hide()})}else{e.search.hide();e.recent.show()}},next:function(){e.search.next();e.recent.next()},prev:function(){e.search.prev();e.recent.prev()},keydown:function(i){var h,g=f.ui.keyCode;switch(i.which){case g.UP:h="prev";case g.DOWN:h=h||"next";clearInterval(wpLink.keyInterval);wpLink[h]();wpLink.keyInterval=setInterval(wpLink[h],wpLink.keySensitivity);break;default:return}i.preventDefault()},keyup:function(h){var g=f.ui.keyCode;switch(h.which){case g.ESCAPE:h.stopImmediatePropagation();if(!f(document).triggerHandler("wp_CloseOnEscape",[{event:h,what:"wplink",cb:wpLink.close}])){wpLink.close()}return false;break;case g.UP:case g.DOWN:clearInterval(wpLink.keyInterval);break;default:return}h.preventDefault()},delayedCallback:function(i,g){var l,k,j,h;if(!g){return i}setTimeout(function(){if(k){return i.apply(h,j)}l=true},g);return function(){if(l){return i.apply(this,arguments)}j=arguments;h=this;k=true}},toggleInternalLinking:function(h){var g=f("#search-panel"),i=b.dialog.wpdialog("widget"),k=!g.is(":visible"),j=f(window);f(this).toggleClass("toggle-arrow-active",k);b.dialog.height("auto");g.slideToggle(300,function(){setUserSetting("wplink",k?"1":"0");b[k?"search":"url"].focus();var l=j.scrollTop(),o=i.offset().top,m=o+i.outerHeight(),n=m-j.height();if(n>l){i.animate({top:n<o?o-n:l},200)}});h.preventDefault()}};a=function(i,h){var g=this;this.element=i;this.ul=i.children("ul");this.waiting=i.find(".river-waiting");this.change(h);this.refresh();i.scroll(function(){g.maybeLoad()});i.delegate("li","click",function(j){g.select(f(this),j)})};f.extend(a.prototype,{refresh:function(){this.deselect();this.visible=this.element.is(":visible")},show:function(){if(!this.visible){this.deselect();this.element.show();this.visible=true}},hide:function(){this.element.hide();this.visible=false},select:function(h,k){var j,i,l,g;if(h.hasClass("unselectable")||h==this.selected){return}this.deselect();this.selected=h.addClass("selected");j=h.outerHeight();i=this.element.height();l=h.position().top;g=this.element.scrollTop();if(l<0){this.element.scrollTop(g+l)}else{if(l+j>i){this.element.scrollTop(g+l-i+j)}}this.element.trigger("river-select",[h,k,this])},deselect:function(){if(this.selected){this.selected.removeClass("selected")}this.selected=false},prev:function(){if(!this.visible){return}var g;if(this.selected){g=this.selected.prev("li");if(g.length){this.select(g)}}},next:function(){if(!this.visible){return}var g=this.selected?this.selected.next("li"):f("li:not(.unselectable):first",this.element);if(g.length){this.select(g)}},ajax:function(j){var h=this,i=this.query.page==1?0:wpLink.minRiverAJAXDuration,g=wpLink.delayedCallback(function(k,l){h.process(k,l);if(j){j(k,l)}},i);this.query.ajax(g)},change:function(g){if(this.query&&this._search==g){return}this._search=g;this.query=new c(g);this.element.scrollTop(0)},process:function(h,l){var i="",j=true,g="",k=l.page==1;if(!h){if(k){i+='<li class="unselectable"><span class="item-title"><em>'+wpLinkL10n.noMatchesFound+"</em></span></li>"}}else{f.each(h,function(){g=j?"alternate":"";g+=this["title"]?"":" no-title";i+=g?'<li class="'+g+'">':"<li>";i+='<input type="hidden" class="item-permalink" value="'+this["permalink"]+'" />';i+='<span class="item-title">';i+=this["title"]?this["title"]:wpLinkL10n.noTitle;i+='</span><span class="item-info">'+this["info"]+"</span></li>";j=!j})}this.ul[k?"html":"append"](i)},maybeLoad:function(){var h=this,i=this.element,g=i.scrollTop()+i.height();if(!this.query.ready()||g<this.ul.height()-wpLink.riverBottomThreshold){return}setTimeout(function(){var j=i.scrollTop(),k=j+i.height();if(!h.query.ready()||k<h.ul.height()-wpLink.riverBottomThreshold){return}h.waiting.show();i.scrollTop(j+h.waiting.outerHeight());h.ajax(function(){h.waiting.hide()})},wpLink.timeToTriggerRiver)}});c=function(g){this.page=1;this.allLoaded=false;this.querying=false;this.search=g};f.extend(c.prototype,{ready:function(){return !(this.querying||this.allLoaded)},ajax:function(i){var g=this,h={action:"wp-link-ajax",page:this.page,_ajax_linking_nonce:f("#_ajax_linking_nonce").val()};if(this.search){h.search=this.search}this.querying=true;f.post(ajaxurl,h,function(j){g.page++;g.querying=false;g.allLoaded=!j;i(j,h)},"json")}});f(document).ready(wpLink.init)})(jQuery);
\ No newline at end of file
index 3771892c606a0107a1e57f95cd5db7fa7a27a289..d4df984b6ab2954fb3ec4fb9821a13873607bb4a 100644 (file)
@@ -2,9 +2,9 @@
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
        <title>{#advanced_dlg.about_title}</title>
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
        <title>{#advanced_dlg.about_title}</title>
-       <script type="text/javascript" src="../../tiny_mce_popup.js?ver=342-20110407"></script>
-       <script type="text/javascript" src="../../utils/mctabs.js?ver=342-20110407"></script>
-       <script type="text/javascript" src="js/about.js?ver=342-20110407"></script>
+       <script type="text/javascript" src="../../tiny_mce_popup.js?ver=345-20110908"></script>
+       <script type="text/javascript" src="../../utils/mctabs.js?ver=345-20110908"></script>
+       <script type="text/javascript" src="js/about.js?ver=345-20110908"></script>
 </head>
 <body id="about" style="display: none">
                <div class="tabs">
 </head>
 <body id="about" style="display: none">
                <div class="tabs">
index 7f2b942142539e832c404625392011acf536c9f8..9a78c4508effc774e6059621bb6a3a944b383afb 100644 (file)
@@ -2,8 +2,8 @@
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
        <title>{#advanced_dlg.anchor_title}</title>
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
        <title>{#advanced_dlg.anchor_title}</title>
-       <script type="text/javascript" src="../../tiny_mce_popup.js?ver=342-20110407"></script>
-       <script type="text/javascript" src="js/anchor.js?ver=342-20110407"></script>
+       <script type="text/javascript" src="../../tiny_mce_popup.js?ver=345-20110908"></script>
+       <script type="text/javascript" src="js/anchor.js?ver=345-20110908"></script>
 </head>
 <body style="display: none" role="application" aria-labelledby="app_title">
 <form onsubmit="AnchorDialog.update();return false;" action="#">
 </head>
 <body style="display: none" role="application" aria-labelledby="app_title">
 <form onsubmit="AnchorDialog.update();return false;" action="#">
index 9b7a3ac4eba2263930919f1544ab7e3b7110d63d..b1afd19391883c451e7656edfede12d9937c0f6d 100644 (file)
@@ -2,8 +2,8 @@
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
        <title>{#advanced_dlg.charmap_title}</title>
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
        <title>{#advanced_dlg.charmap_title}</title>
-       <script type="text/javascript" src="../../tiny_mce_popup.js?ver=342-20110407"></script>
-       <script type="text/javascript" src="js/charmap.js?ver=342-20110407"></script>
+       <script type="text/javascript" src="../../tiny_mce_popup.js?ver=345-20110908"></script>
+       <script type="text/javascript" src="js/charmap.js?ver=345-20110908"></script>
 </head>
 <body id="charmap" style="display:none">
 <table align="center" border="0" cellspacing="0" cellpadding="2" role="presentation">
 </head>
 <body id="charmap" style="display:none">
 <table align="center" border="0" cellspacing="0" cellpadding="2" role="presentation">
index b26e5ccb4981963fa0285328bb66e83f2bfc8a49..5a71c0346650e9e58ec27600af253a0fb82d4e0b 100644 (file)
@@ -2,9 +2,9 @@
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
        <title>{#advanced_dlg.colorpicker_title}</title>
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
        <title>{#advanced_dlg.colorpicker_title}</title>
-       <script type="text/javascript" src="../../tiny_mce_popup.js?ver=342-20110407"></script>
-       <script type="text/javascript" src="../../utils/mctabs.js?ver=342-20110407"></script>
-       <script type="text/javascript" src="js/color_picker.js?ver=342-20110407"></script>
+       <script type="text/javascript" src="../../tiny_mce_popup.js?ver=345-20110908"></script>
+       <script type="text/javascript" src="../../utils/mctabs.js?ver=345-20110908"></script>
+       <script type="text/javascript" src="js/color_picker.js?ver=345-20110908"></script>
 </head>
 <body id="colorpicker" style="display: none" role="application" aria-labelledby="app_label">
        <span class="mceVoiceLabel" id="app_label" style="display:none;">{#advanced_dlg.colorpicker_title}</span>
 </head>
 <body id="colorpicker" style="display: none" role="application" aria-labelledby="app_label">
        <span class="mceVoiceLabel" id="app_label" style="display:none;">{#advanced_dlg.colorpicker_title}</span>
index ba8dd4c30432612fca279391bbb1cabce94f3018..7f30c18e4117f7136f09277712c4906df9cb5f8b 100644 (file)
@@ -1 +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);j.forcedHighContrastMode=j.settings.detect_highcontrast&&l._isHighContrast();j.settings.skin=j.forcedHighContrastMode?"highcontrast":j.settings.skin;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",theme_advanced_font_selector:"span",theme_advanced_show_current_color:0,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}if(j.settings.content_css!==false){j.contentCSS.push(j.baseURI.toAbsolute(k+"/skins/"+j.settings.skin+"/content.css"))}j.onInit.add(function(){if(!j.settings.readonly){j.onNodeChange.add(l._nodeChanged,l);j.onKeyUp.add(l._updateUndoStatus,l);j.onMouseUp.add(l._updateUndoStatus,l);j.dom.bind(j.dom.getRoot(),"dragend",function(){l._updateUndoStatus(j)})}});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")}},_isHighContrast:function(){var i,j=d.add(d.getRoot(),"div",{style:"background-color: rgb(171,239,86);"});i=(d.getStyle(j,"background-color",true)+"").toLowerCase().replace(/ /g,"");d.remove(j);return i!="rgb(171,239,86)"&&i!="#abef56"},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",attributes:{"class":n["class"]},selector:"*"});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(o){var p,n=[];f(l.items,function(q){n.push(q.value)});i.focus();i.undoManager.add();p=i.formatter.matchAll(n);if(!o||p[0]==o){if(p[0]){i.formatter.remove(p[0])}}else{i.formatter.apply(o)}i.undoManager.add();i.nodeChanged();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,selector:"*"});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){var m=k.items[k.selectedIndex];if(!l&&m){i.execCommand("FontName",false,m.value);return}i.execCommand("FontName",false,l);k.select(function(n){return l==n});if(m&&m.value==l){k.select(null)}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){var o=n.items[n.selectedIndex];if(!i&&o){o=o.value;if(o["class"]){k.formatter.toggle("fontsize_class",{value:o["class"]});k.undoManager.add();k.nodeChanged()}else{k.execCommand("FontSize",false,o.fontSize)}return}if(i["class"]){k.focus();k.undoManager.add();k.formatter.toggle("fontsize_class",{value:i["class"]});k.undoManager.add();k.nodeChanged()}else{k.execCommand("FontSize",false,i.fontSize)}n.select(function(p){return i==p});if(o&&(o.value.fontSize==i.fontSize||o.value["class"]==i["class"])){n.select(null)}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",onselect:function(l){j.editor.execCommand("FormatBlock",false,l);return false}});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;if(r.settings){r.settings.aria_label=w.aria_label+r.getLang("advanced.help_shortcut")}m=j=d.create("span",{role:"application","aria-labelledby":r.id+"_voice",id:r.id+"_parent","class":"mceEditor "+r.settings.skin+"Skin"+(w.skin_variant?" "+r.settings.skin+"Skin"+v._ufirst(w.skin_variant):"")});d.add(m,"span",{"class":"mceVoiceLabel",style:"display:none;",id:r.id+"_voice"},w.aria_label);if(!d.boxModel){m=d.add(m,"div",{"class":"mceOldBoxModel"})}m=u=d.add(m,"table",{role:"presentation",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=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:"#"},"<!-- IE -->"),"focus",function(){tinyMCE.get(r.id).focus()})}if(w.theme_advanced_toolbar_location=="external"){k.deltaHeight=0}v.deltaHeight=k.deltaHeight;k.targetNode=null;r.onKeyDown.add(function(p,n){var s=121,o=122;if(n.altKey){if(n.keyCode===s){v.toolbarGroup.focus();return b.cancel(n)}else{if(n.keyCode===o){d.get(p.id+"_path_row").focus();return b.cancel(n)}}}});r.addShortcut("alt+0","","mceShortcuts",v);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+"_ifr");this.resizeTo(k.clientWidth+i,k.clientHeight+j)},resizeTo:function(i,m,k){var j=this.editor,l=this.settings,n=d.get(j.id+"_tbl"),o=d.get(j.id+"_ifr");i=Math.max(l.theme_advanced_resizing_min_width||100,i);m=Math.max(l.theme_advanced_resizing_min_height||100,m);i=Math.min(l.theme_advanced_resizing_max_width||65535,i);m=Math.min(l.theme_advanced_resizing_max_height||65535,m);d.setStyle(n,"height","");d.setStyle(o,"height",m);if(l.theme_advanced_resize_horizontal){d.setStyle(n,"width","");d.setStyle(o,"width",i);if(i<n.clientWidth){i=n.clientWidth;d.setStyle(o,"width",n.clientWidth)}}if(k&&l.theme_advanced_resizing_use_cookie){a.setHash("TinyMCE_"+j.id+"_size",{cw:i,ch:m})}},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(s.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(x,k){var A=this,p,m,r=A.editor,B=A.settings,z,j=r.controlManager,u,l,q=[],y,w;w=j.createToolbarGroup("toolbargroup",{name:r.getLang("advanced.toolbar"),tab_focus_toolbar:r.getParam("theme_advanced_tab_focus_toolbar")});A.toolbarGroup=w;y=B.theme_advanced_toolbar_align.toLowerCase();y="mce"+A._ufirst(y);l=d.add(d.add(x,"tr",{role:"presentation"}),"td",{"class":"mceToolbar "+y,role:"presentation"});for(p=1;(z=B["theme_advanced_buttons"+p]);p++){m=j.createToolbar("toolbar"+p,{"class":"mceToolbarRow"+p});if(B["theme_advanced_buttons"+p+"_add"]){z+=","+B["theme_advanced_buttons"+p+"_add"]}if(B["theme_advanced_buttons"+p+"_add_before"]){z=B["theme_advanced_buttons"+p+"_add_before"]+","+z}A._addControls(z,m);w.add(m);k.deltaHeight-=B.theme_advanced_row_height}q.push(w.renderHTML());q.push(d.createHTML("a",{href:"#",accesskey:"z",title:r.getLang("advanced.toolbar_focus"),onfocus:"tinyMCE.getInstanceById('"+r.id+"').focus();"},"<!-- IE -->"));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",role:"group","aria-labelledby":p.id+"_path_voice"});if(w.theme_advanced_path){d.add(k,"span",{id:p.id+"_path_voice"},p.translate("advanced.path"));d.add(k,"span",{},": ")}else{d.add(k,"span",{},"&#160;")}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}v.resizeTo(n.cw,n.ch)})}p.onPostRender.add(function(){b.add(p.id+"_resize","click",function(n){n.preventDefault()});b.add(p.id+"_resize","mousedown",function(D){var t,r,s,o,C,z,A,F,n,E,x;function y(G){G.preventDefault();n=A+(G.screenX-C);E=F+(G.screenY-z);v.resizeTo(n,E)}function B(G){b.remove(d.doc,"mousemove",t);b.remove(p.getDoc(),"mousemove",r);b.remove(d.doc,"mouseup",s);b.remove(p.getDoc(),"mouseup",o);n=A+(G.screenX-C);E=F+(G.screenY-z);v.resizeTo(n,E,true)}D.preventDefault();C=D.screenX;z=D.screenY;x=d.get(v.editor.id+"_ifr");A=n=x.clientWidth;F=E=x.clientHeight;t=b.add(d.doc,"mousemove",y);r=b.add(p.getDoc(),"mousemove",y);s=b.add(d.doc,"mouseup",B);o=b.add(p.getDoc(),"mouseup",B)})})}j.deltaHeight-=21;k=m=null},_updateUndoStatus:function(j){var i=j.controlManager;i.setDisabled("undo",!j.undoManager.hasUndo()&&!j.typing);i.setDisabled("redo",!j.undoManager.hasRedo())},_nodeChanged:function(m,r,D,q,E){var y=this,C,F=0,x,G,z=y.settings,w,k,u,B,l,j,i;e.each(y.stateControls,function(n){r.setActive(n,m.queryCommandState(y.controls[n][1]))});function o(p){var s,n=E.parents,t=p;if(typeof(p)=="string"){t=function(v){return v.nodeName==p}}for(s=0;s<n.length;s++){if(t(n[s])){return n[s]}}}r.setActive("visualaid",m.hasVisual);y._updateUndoStatus(m);r.setDisabled("outdent",!m.queryCommandState("Outdent"));C=o("A");if(G=r.get("link")){if(!C||!C.name){G.setDisabled(!C&&q);G.setActive(!!C)}}if(G=r.get("unlink")){G.setDisabled(!C&&q);G.setActive(!!C&&!C.name)}if(G=r.get("anchor")){G.setActive(!q&&!!C&&C.name)}C=o("IMG");if(G=r.get("image")){G.setActive(!q&&!!C&&D.className.indexOf("mceItem")==-1)}if(G=r.get("styleselect")){y._importClasses();j=[];f(G.items,function(n){j.push(n.value)});i=m.formatter.matchAll(j);G.select(i[0])}if(G=r.get("formatselect")){C=o(d.isBlock);if(C){G.select(C.nodeName.toLowerCase())}}o(function(p){if(p.nodeName==="SPAN"){if(!w&&p.className){w=p.className}}if(m.dom.is(p,z.theme_advanced_font_selector)){if(!k&&p.style.fontSize){k=p.style.fontSize}if(!u&&p.style.fontFamily){u=p.style.fontFamily.replace(/[\"\']+/g,"").replace(/^([^,]+).*/,"$1").toLowerCase()}if(!B&&p.style.color){B=p.style.color}if(!l&&p.style.backgroundColor){l=p.style.backgroundColor}}return false});if(G=r.get("fontselect")){G.select(function(n){return n.replace(/^([^,]+).*/,"$1").toLowerCase()==u})}if(G=r.get("fontsizeselect")){if(z.theme_advanced_runtime_fontsize&&!k&&!w){k=m.dom.getStyle(D,"fontSize",true)}G.select(function(n){if(n.fontSize&&n.fontSize===k){return true}if(n["class"]&&n["class"]===w){return true}})}if(z.theme_advanced_show_current_color){function A(p,n){if(G=r.get(p)){if(!n){n=G.settings.default_color}if(n!==G.value){G.displayColor(n)}}}A("forecolor",B);A("backcolor",l)}if(z.theme_advanced_show_current_color){function A(p,n){if(G=r.get(p)){if(!n){n=G.settings.default_color}if(n!==G.value){G.displayColor(n)}}}A("forecolor",B);A("backcolor",l)}if(z.theme_advanced_path&&z.theme_advanced_statusbar_location){C=d.get(m.id+"_path")||d.add(m.id+"_path_row","span",{id:m.id+"_path"});if(y.statusKeyboardNavigation){y.statusKeyboardNavigation.destroy();y.statusKeyboardNavigation=null}d.setHTML(C,"");o(function(H){var p=H.nodeName.toLowerCase(),s,v,t="";if(H.getAttribute("data-mce-bogus")){return}if(H.nodeType!=1||H.nodeName==="BR"||(d.hasClass(H,"mceItemHidden")||d.hasClass(H,"mceItemRemoved"))){return}if(e.isIE&&H.scopeName!=="HTML"){p=H.scopeName+":"+p}p=p.replace(/mce\:/g,"");switch(p){case"b":p="strong";break;case"i":p="em";break;case"img":if(x=d.getAttrib(H,"src")){t+="src: "+x+" "}break;case"a":if(x=d.getAttrib(H,"name")){t+="name: "+x+" ";p+="#"+x}if(x=d.getAttrib(H,"href")){t+="href: "+x+" "}break;case"font":if(x=d.getAttrib(H,"face")){t+="font: "+x+" "}if(x=d.getAttrib(H,"size")){t+="size: "+x+" "}if(x=d.getAttrib(H,"color")){t+="color: "+x+" "}break;case"span":if(x=d.getAttrib(H,"style")){t+="style: "+x+" "}break}if(x=d.getAttrib(H,"id")){t+="id: "+x+" "}if(x=H.className){x=x.replace(/\b\s*(webkit|mce|Apple-)\w+\s*\b/g,"");if(x){t+="class: "+x+" ";if(d.isBlock(H)||p=="img"||p=="span"){p+="."+x}}}p=p.replace(/(html:)/g,"");p={name:p,node:H,title:t};y.onResolveName.dispatch(y,p);t=p.title;p=p.name;v=d.create("a",{href:"javascript:;",role:"button",onmousedown:"return false;",title:t,"class":"mcePath_"+(F++)},p);if(C.hasChildNodes()){C.insertBefore(d.create("span",{"aria-hidden":"true"},"\u00a0\u00bb "),C.firstChild);C.insertBefore(v,C.firstChild)}else{C.appendChild(v)}},m.getBody());if(d.select("a",C).length>0){y.statusKeyboardNavigation=new e.ui.KeyboardNavigation({root:m.id+"_path_row",items:d.select("a",C),excludeFromTabOrder:true,onCancel:function(){m.focus()}},d)}}},_sel:function(i){this.editor.execCommand("mceSelectNodeDepth",false,i)},_mceInsertAnchor:function(k,j){var i=this.editor;i.windowManager.open({url:this.url+"/anchor.htm",width:320+parseInt(i.getLang("advanced.anchor_delta_width",0)),height:90+parseInt(i.getLang("advanced.anchor_delta_height",0)),inline:true},{theme_url:this.url})},_mceCharMap:function(){var i=this.editor;i.windowManager.open({url:this.url+"/charmap.htm",width:550+parseInt(i.getLang("advanced.charmap_delta_width",0)),height:250+parseInt(i.getLang("advanced.charmap_delta_height",0)),inline:true},{theme_url:this.url})},_mceHelp:function(){var i=this.editor;i.windowManager.open({url:this.url+"/about.htm",width:480,height:380,inline:true},{theme_url:this.url})},_mceShortcuts:function(){var i=this.editor;i.windowManager.open({url:this.url+"/shortcuts.htm",width:480,height:380,inline:true},{theme_url:this.url})},_mceColorPicker:function(k,j){var i=this.editor;j=j||{};i.windowManager.open({url:this.url+"/color_picker.htm",width:375+parseInt(i.getLang("advanced.colorpicker_delta_width",0)),height:250+parseInt(i.getLang("advanced.colorpicker_delta_height",0)),close_previous:false,inline:true},{input_color:j.color,func:j.func,theme_url:this.url})},_mceCodeEditor:function(j,k){var i=this.editor;i.windowManager.open({url:this.url+"/source_editor.htm",width:parseInt(i.getParam("theme_advanced_source_editor_width",720)),height:parseInt(i.getParam("theme_advanced_source_editor_height",580)),inline:true,resizable:true,maximizable:true},{theme_url:this.url})},_mceImage:function(j,k){var i=this.editor;if(i.dom.getAttrib(i.selection.getNode(),"class").indexOf("mceItem")!=-1){return}i.windowManager.open({url:this.url+"/image.htm",width:355+parseInt(i.getLang("advanced.image_delta_width",0)),height:275+parseInt(i.getLang("advanced.image_delta_height",0)),inline:true},{theme_url:this.url})},_mceLink:function(j,k){var i=this.editor;i.windowManager.open({url:this.url+"/link.htm",width:310+parseInt(i.getLang("advanced.link_delta_width",0)),height:200+parseInt(i.getLang("advanced.link_delta_height",0)),inline:true},{theme_url:this.url})},_mceNewDocument:function(){var i=this.editor;i.windowManager.confirm("advanced.newdocument",function(j){if(j){i.execCommand("mceSetContent",false,"")}})},_mceForeColor:function(){var i=this;this._mceColorPicker(0,{color:i.fgColor,func:function(j){i.fgColor=j;i.editor.execCommand("ForeColor",false,j)}})},_mceBackColor:function(){var i=this;this._mceColorPicker(0,{color:i.bgColor,func:function(j){i.bgColor=j;i.editor.execCommand("HiliteColor",false,j)}})},_ufirst:function(i){return i.substring(0,1).toUpperCase()+i.substring(1)}});e.ThemeManager.add("advanced",e.themes.AdvancedTheme)}(tinymce));
\ No newline at end of file
+(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);j.forcedHighContrastMode=j.settings.detect_highcontrast&&l._isHighContrast();j.settings.skin=j.forcedHighContrastMode?"highcontrast":j.settings.skin;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",theme_advanced_font_selector:"span",theme_advanced_show_current_color:0,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}if(j.settings.content_css!==false){j.contentCSS.push(j.baseURI.toAbsolute(k+"/skins/"+j.settings.skin+"/content.css"))}j.onInit.add(function(){if(!j.settings.readonly){j.onNodeChange.add(l._nodeChanged,l);j.onKeyUp.add(l._updateUndoStatus,l);j.onMouseUp.add(l._updateUndoStatus,l);j.dom.bind(j.dom.getRoot(),"dragend",function(){l._updateUndoStatus(j)})}});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")}},_isHighContrast:function(){var i,j=d.add(d.getRoot(),"div",{style:"background-color: rgb(171,239,86);"});i=(d.getStyle(j,"background-color",true)+"").toLowerCase().replace(/ /g,"");d.remove(j);return i!="rgb(171,239,86)"&&i!="#abef56"},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",attributes:{"class":n["class"]},selector:"*"});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(o){var p,n=[];f(l.items,function(q){n.push(q.value)});i.focus();i.undoManager.add();p=i.formatter.matchAll(n);if(!o||p[0]==o){if(p[0]){i.formatter.remove(p[0])}}else{i.formatter.apply(o)}i.undoManager.add();i.nodeChanged();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,selector:"*"});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){var m=k.items[k.selectedIndex];if(!l&&m){i.execCommand("FontName",false,m.value);return}i.execCommand("FontName",false,l);k.select(function(n){return l==n});if(m&&m.value==l){k.select(null)}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){var o=n.items[n.selectedIndex];if(!i&&o){o=o.value;if(o["class"]){k.formatter.toggle("fontsize_class",{value:o["class"]});k.undoManager.add();k.nodeChanged()}else{k.execCommand("FontSize",false,o.fontSize)}return}if(i["class"]){k.focus();k.undoManager.add();k.formatter.toggle("fontsize_class",{value:i["class"]});k.undoManager.add();k.nodeChanged()}else{k.execCommand("FontSize",false,i.fontSize)}n.select(function(p){return i==p});if(o&&(o.value.fontSize==i.fontSize||o.value["class"]==i["class"])){n.select(null)}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",onselect:function(l){j.editor.execCommand("FormatBlock",false,l);return false}});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;if(r.settings){r.settings.aria_label=w.aria_label+r.getLang("advanced.help_shortcut")}m=j=d.create("span",{role:"application","aria-labelledby":r.id+"_voice",id:r.id+"_parent","class":"mceEditor "+r.settings.skin+"Skin"+(w.skin_variant?" "+r.settings.skin+"Skin"+v._ufirst(w.skin_variant):"")});d.add(m,"span",{"class":"mceVoiceLabel",style:"display:none;",id:r.id+"_voice"},w.aria_label);if(!d.boxModel){m=d.add(m,"div",{"class":"mceOldBoxModel"})}m=u=d.add(m,"table",{role:"presentation",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=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:"#"},"<!-- IE -->"),"focus",function(){tinyMCE.get(r.id).focus()})}if(w.theme_advanced_toolbar_location=="external"){k.deltaHeight=0}v.deltaHeight=k.deltaHeight;k.targetNode=null;r.onKeyDown.add(function(p,n){var s=121,o=122;if(n.altKey){if(n.keyCode===s){window.focus();v.toolbarGroup.focus();return b.cancel(n)}else{if(n.keyCode===o){d.get(p.id+"_path_row").focus();return b.cancel(n)}}}});r.addShortcut("alt+0","","mceShortcuts",v);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+"_ifr");this.resizeTo(k.clientWidth+i,k.clientHeight+j)},resizeTo:function(i,m,k){var j=this.editor,l=this.settings,n=d.get(j.id+"_tbl"),o=d.get(j.id+"_ifr");i=Math.max(l.theme_advanced_resizing_min_width||100,i);m=Math.max(l.theme_advanced_resizing_min_height||100,m);i=Math.min(l.theme_advanced_resizing_max_width||65535,i);m=Math.min(l.theme_advanced_resizing_max_height||65535,m);d.setStyle(n,"height","");d.setStyle(o,"height",m);if(l.theme_advanced_resize_horizontal){d.setStyle(n,"width","");d.setStyle(o,"width",i);if(i<n.clientWidth){i=n.clientWidth;d.setStyle(o,"width",n.clientWidth)}}if(k&&l.theme_advanced_resizing_use_cookie){a.setHash("TinyMCE_"+j.id+"_size",{cw:i,ch:m})}},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(s.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(x,k){var A=this,p,m,r=A.editor,B=A.settings,z,j=r.controlManager,u,l,q=[],y,w;w=j.createToolbarGroup("toolbargroup",{name:r.getLang("advanced.toolbar"),tab_focus_toolbar:r.getParam("theme_advanced_tab_focus_toolbar")});A.toolbarGroup=w;y=B.theme_advanced_toolbar_align.toLowerCase();y="mce"+A._ufirst(y);l=d.add(d.add(x,"tr",{role:"presentation"}),"td",{"class":"mceToolbar "+y,role:"presentation"});for(p=1;(z=B["theme_advanced_buttons"+p]);p++){m=j.createToolbar("toolbar"+p,{"class":"mceToolbarRow"+p});if(B["theme_advanced_buttons"+p+"_add"]){z+=","+B["theme_advanced_buttons"+p+"_add"]}if(B["theme_advanced_buttons"+p+"_add_before"]){z=B["theme_advanced_buttons"+p+"_add_before"]+","+z}A._addControls(z,m);w.add(m);k.deltaHeight-=B.theme_advanced_row_height}q.push(w.renderHTML());q.push(d.createHTML("a",{href:"#",accesskey:"z",title:r.getLang("advanced.toolbar_focus"),onfocus:"tinyMCE.getInstanceById('"+r.id+"').focus();"},"<!-- IE -->"));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",role:"group","aria-labelledby":p.id+"_path_voice"});if(w.theme_advanced_path){d.add(k,"span",{id:p.id+"_path_voice"},p.translate("advanced.path"));d.add(k,"span",{},": ")}else{d.add(k,"span",{},"&#160;")}if(w.theme_advanced_resizing){d.add(l,"a",{id:p.id+"_resize",href:"javascript:;",onclick:"return false;","class":"mceResize",tabIndex:"-1"});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}v.resizeTo(n.cw,n.ch)})}p.onPostRender.add(function(){b.add(p.id+"_resize","click",function(n){n.preventDefault()});b.add(p.id+"_resize","mousedown",function(D){var t,r,s,o,C,z,A,F,n,E,x;function y(G){G.preventDefault();n=A+(G.screenX-C);E=F+(G.screenY-z);v.resizeTo(n,E)}function B(G){b.remove(d.doc,"mousemove",t);b.remove(p.getDoc(),"mousemove",r);b.remove(d.doc,"mouseup",s);b.remove(p.getDoc(),"mouseup",o);n=A+(G.screenX-C);E=F+(G.screenY-z);v.resizeTo(n,E,true)}D.preventDefault();C=D.screenX;z=D.screenY;x=d.get(v.editor.id+"_ifr");A=n=x.clientWidth;F=E=x.clientHeight;t=b.add(d.doc,"mousemove",y);r=b.add(p.getDoc(),"mousemove",y);s=b.add(d.doc,"mouseup",B);o=b.add(p.getDoc(),"mouseup",B)})})}j.deltaHeight-=21;k=m=null},_updateUndoStatus:function(j){var i=j.controlManager,k=j.undoManager;i.setDisabled("undo",!k.hasUndo()&&!k.typing);i.setDisabled("redo",!k.hasRedo())},_nodeChanged:function(m,r,D,q,E){var y=this,C,F=0,x,G,z=y.settings,w,k,u,B,l,j,i;e.each(y.stateControls,function(n){r.setActive(n,m.queryCommandState(y.controls[n][1]))});function o(p){var s,n=E.parents,t=p;if(typeof(p)=="string"){t=function(v){return v.nodeName==p}}for(s=0;s<n.length;s++){if(t(n[s])){return n[s]}}}r.setActive("visualaid",m.hasVisual);y._updateUndoStatus(m);r.setDisabled("outdent",!m.queryCommandState("Outdent"));C=o("A");if(G=r.get("link")){if(!C||!C.name){G.setDisabled(!C&&q);G.setActive(!!C)}}if(G=r.get("unlink")){G.setDisabled(!C&&q);G.setActive(!!C&&!C.name)}if(G=r.get("anchor")){G.setActive(!q&&!!C&&C.name)}C=o("IMG");if(G=r.get("image")){G.setActive(!q&&!!C&&D.className.indexOf("mceItem")==-1)}if(G=r.get("styleselect")){y._importClasses();j=[];f(G.items,function(n){j.push(n.value)});i=m.formatter.matchAll(j);G.select(i[0])}if(G=r.get("formatselect")){C=o(d.isBlock);if(C){G.select(C.nodeName.toLowerCase())}}o(function(p){if(p.nodeName==="SPAN"){if(!w&&p.className){w=p.className}}if(m.dom.is(p,z.theme_advanced_font_selector)){if(!k&&p.style.fontSize){k=p.style.fontSize}if(!u&&p.style.fontFamily){u=p.style.fontFamily.replace(/[\"\']+/g,"").replace(/^([^,]+).*/,"$1").toLowerCase()}if(!B&&p.style.color){B=p.style.color}if(!l&&p.style.backgroundColor){l=p.style.backgroundColor}}return false});if(G=r.get("fontselect")){G.select(function(n){return n.replace(/^([^,]+).*/,"$1").toLowerCase()==u})}if(G=r.get("fontsizeselect")){if(z.theme_advanced_runtime_fontsize&&!k&&!w){k=m.dom.getStyle(D,"fontSize",true)}G.select(function(n){if(n.fontSize&&n.fontSize===k){return true}if(n["class"]&&n["class"]===w){return true}})}if(z.theme_advanced_show_current_color){function A(p,n){if(G=r.get(p)){if(!n){n=G.settings.default_color}if(n!==G.value){G.displayColor(n)}}}A("forecolor",B);A("backcolor",l)}if(z.theme_advanced_show_current_color){function A(p,n){if(G=r.get(p)){if(!n){n=G.settings.default_color}if(n!==G.value){G.displayColor(n)}}}A("forecolor",B);A("backcolor",l)}if(z.theme_advanced_path&&z.theme_advanced_statusbar_location){C=d.get(m.id+"_path")||d.add(m.id+"_path_row","span",{id:m.id+"_path"});if(y.statusKeyboardNavigation){y.statusKeyboardNavigation.destroy();y.statusKeyboardNavigation=null}d.setHTML(C,"");o(function(H){var p=H.nodeName.toLowerCase(),s,v,t="";if(H.nodeType!=1||p==="br"||H.getAttribute("data-mce-bogus")||d.hasClass(H,"mceItemHidden")||d.hasClass(H,"mceItemRemoved")){return}if(e.isIE&&H.scopeName!=="HTML"){p=H.scopeName+":"+p}p=p.replace(/mce\:/g,"");switch(p){case"b":p="strong";break;case"i":p="em";break;case"img":if(x=d.getAttrib(H,"src")){t+="src: "+x+" "}break;case"a":if(x=d.getAttrib(H,"name")){t+="name: "+x+" ";p+="#"+x}if(x=d.getAttrib(H,"href")){t+="href: "+x+" "}break;case"font":if(x=d.getAttrib(H,"face")){t+="font: "+x+" "}if(x=d.getAttrib(H,"size")){t+="size: "+x+" "}if(x=d.getAttrib(H,"color")){t+="color: "+x+" "}break;case"span":if(x=d.getAttrib(H,"style")){t+="style: "+x+" "}break}if(x=d.getAttrib(H,"id")){t+="id: "+x+" "}if(x=H.className){x=x.replace(/\b\s*(webkit|mce|Apple-)\w+\s*\b/g,"");if(x){t+="class: "+x+" ";if(d.isBlock(H)||p=="img"||p=="span"){p+="."+x}}}p=p.replace(/(html:)/g,"");p={name:p,node:H,title:t};y.onResolveName.dispatch(y,p);t=p.title;p=p.name;v=d.create("a",{href:"javascript:;",role:"button",onmousedown:"return false;",title:t,"class":"mcePath_"+(F++)},p);if(C.hasChildNodes()){C.insertBefore(d.create("span",{"aria-hidden":"true"},"\u00a0\u00bb "),C.firstChild);C.insertBefore(v,C.firstChild)}else{C.appendChild(v)}},m.getBody());if(d.select("a",C).length>0){y.statusKeyboardNavigation=new e.ui.KeyboardNavigation({root:m.id+"_path_row",items:d.select("a",C),excludeFromTabOrder:true,onCancel:function(){m.focus()}},d)}}},_sel:function(i){this.editor.execCommand("mceSelectNodeDepth",false,i)},_mceInsertAnchor:function(k,j){var i=this.editor;i.windowManager.open({url:this.url+"/anchor.htm",width:320+parseInt(i.getLang("advanced.anchor_delta_width",0)),height:90+parseInt(i.getLang("advanced.anchor_delta_height",0)),inline:true},{theme_url:this.url})},_mceCharMap:function(){var i=this.editor;i.windowManager.open({url:this.url+"/charmap.htm",width:550+parseInt(i.getLang("advanced.charmap_delta_width",0)),height:250+parseInt(i.getLang("advanced.charmap_delta_height",0)),inline:true},{theme_url:this.url})},_mceHelp:function(){var i=this.editor;i.windowManager.open({url:this.url+"/about.htm",width:480,height:380,inline:true},{theme_url:this.url})},_mceShortcuts:function(){var i=this.editor;i.windowManager.open({url:this.url+"/shortcuts.htm",width:480,height:380,inline:true},{theme_url:this.url})},_mceColorPicker:function(k,j){var i=this.editor;j=j||{};i.windowManager.open({url:this.url+"/color_picker.htm",width:375+parseInt(i.getLang("advanced.colorpicker_delta_width",0)),height:250+parseInt(i.getLang("advanced.colorpicker_delta_height",0)),close_previous:false,inline:true},{input_color:j.color,func:j.func,theme_url:this.url})},_mceCodeEditor:function(j,k){var i=this.editor;i.windowManager.open({url:this.url+"/source_editor.htm",width:parseInt(i.getParam("theme_advanced_source_editor_width",720)),height:parseInt(i.getParam("theme_advanced_source_editor_height",580)),inline:true,resizable:true,maximizable:true},{theme_url:this.url})},_mceImage:function(j,k){var i=this.editor;if(i.dom.getAttrib(i.selection.getNode(),"class").indexOf("mceItem")!=-1){return}i.windowManager.open({url:this.url+"/image.htm",width:355+parseInt(i.getLang("advanced.image_delta_width",0)),height:275+parseInt(i.getLang("advanced.image_delta_height",0)),inline:true},{theme_url:this.url})},_mceLink:function(j,k){var i=this.editor;i.windowManager.open({url:this.url+"/link.htm",width:310+parseInt(i.getLang("advanced.link_delta_width",0)),height:200+parseInt(i.getLang("advanced.link_delta_height",0)),inline:true},{theme_url:this.url})},_mceNewDocument:function(){var i=this.editor;i.windowManager.confirm("advanced.newdocument",function(j){if(j){i.execCommand("mceSetContent",false,"")}})},_mceForeColor:function(){var i=this;this._mceColorPicker(0,{color:i.fgColor,func:function(j){i.fgColor=j;i.editor.execCommand("ForeColor",false,j)}})},_mceBackColor:function(){var i=this;this._mceColorPicker(0,{color:i.bgColor,func:function(j){i.bgColor=j;i.editor.execCommand("HiliteColor",false,j)}})},_ufirst:function(i){return i.substring(0,1).toUpperCase()+i.substring(1)}});e.ThemeManager.add("advanced",e.themes.AdvancedTheme)}(tinymce));
\ No newline at end of file
index 8427381c5d8111e08958054f4f28a46a7180cb84..038ab97f9a4328f4529725180963a21b50973c2d 100644 (file)
@@ -2,10 +2,10 @@
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
        <title>{#advanced_dlg.image_title}</title>
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
        <title>{#advanced_dlg.image_title}</title>
-       <script type="text/javascript" src="../../tiny_mce_popup.js?ver=342-20110407"></script>
-       <script type="text/javascript" src="../../utils/mctabs.js?ver=342-20110407"></script>
-       <script type="text/javascript" src="../../utils/form_utils.js?ver=342-20110407"></script>
-       <script type="text/javascript" src="js/image.js?ver=342-20110407"></script>
+       <script type="text/javascript" src="../../tiny_mce_popup.js?ver=345-20110908"></script>
+       <script type="text/javascript" src="../../utils/mctabs.js?ver=345-20110908"></script>
+       <script type="text/javascript" src="../../utils/form_utils.js?ver=345-20110908"></script>
+       <script type="text/javascript" src="js/image.js?ver=345-20110908"></script>
 </head>
 <body id="image" style="display: none">
 <form onsubmit="ImageDialog.update();return false;" action="#">
 </head>
 <body id="image" style="display: none">
 <form onsubmit="ImageDialog.update();return false;" action="#">
                                        <td class="nowrap"><label for="hspace">{#advanced_dlg.image_hspace}</label></td>
                                        <td><input id="hspace" name="hspace" type="text" value="" size="3" maxlength="3" onchange="ImageDialog.updateStyle();" /></td>
                                </tr>
                                        <td class="nowrap"><label for="hspace">{#advanced_dlg.image_hspace}</label></td>
                                        <td><input id="hspace" name="hspace" type="text" value="" size="3" maxlength="3" onchange="ImageDialog.updateStyle();" /></td>
                                </tr>
-                               <tr>
-                                       <td class="nowrap"><label for="class_name">{#class_name}</label></td>
-                                       <td><input type="text" id="class_name" name="class_name" style="width: 140px" value="" /></td>
-                               </tr>
                        </table>
                </div>
        </div>
                        </table>
                </div>
        </div>
index b4c542d107b25f68a9d4f9d7a109d0565d1f1437..b1a377aba7784d3a0a0fabb4d22b8114cde25ace 100644 (file)
Binary files a/wp-includes/js/tinymce/themes/advanced/img/colorpicker.jpg and b/wp-includes/js/tinymce/themes/advanced/img/colorpicker.jpg differ
index cb192e6ceda8d19ad8e7d08dd1cfde0aa72ead2a..dec3f7c7028df98657860529461af29b8793601c 100644 (file)
Binary files a/wp-includes/js/tinymce/themes/advanced/img/flash.gif and b/wp-includes/js/tinymce/themes/advanced/img/flash.gif differ
index e46de5333082869b9bdab2576a554a2f9d01a966..641a9e3d314f4ea051692a2274aeb281456f5df9 100644 (file)
Binary files a/wp-includes/js/tinymce/themes/advanced/img/icons.gif and b/wp-includes/js/tinymce/themes/advanced/img/icons.gif differ
index 3b0499145b16138249f653a1a3f2c80230fb292c..8f10e7aa6b6ab40ee69a1a41a961c092168d6fda 100644 (file)
Binary files a/wp-includes/js/tinymce/themes/advanced/img/quicktime.gif and b/wp-includes/js/tinymce/themes/advanced/img/quicktime.gif differ
index 5f235dfc7363bd4957b5fe352e16a7eee9a38574..9314d044709c9845876e08003cf94526fd69177f 100644 (file)
Binary files a/wp-includes/js/tinymce/themes/advanced/img/shockwave.gif and b/wp-includes/js/tinymce/themes/advanced/img/shockwave.gif differ
index 54af100bd67864e16973d6714032e23b6818ff64..313ca5d17fd827acdf1be0b05ca6a456152259b8 100644 (file)
@@ -18,7 +18,7 @@ var ImageDialog = {
 
                e = ed.selection.getNode();
 
 
                e = ed.selection.getNode();
 
-               this.fillFileList('image_list', 'tinyMCEImageList');
+               this.fillFileList('image_list', tinyMCEPopup.getParam('external_image_list', 'tinyMCEImageList'));
 
                if (e.nodeName == 'IMG') {
                        f.src.value = ed.dom.getAttrib(e, 'src');
 
                if (e.nodeName == 'IMG') {
                        f.src.value = ed.dom.getAttrib(e, 'src');
@@ -39,7 +39,7 @@ var ImageDialog = {
        fillFileList : function(id, l) {
                var dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl;
 
        fillFileList : function(id, l) {
                var dom = tinyMCEPopup.dom, lst = dom.get(id), v, cl;
 
-               l = window[l];
+               l = typeof(l) === 'function' ? l() : window[l];
 
                if (l && l.length > 0) {
                        lst.options[lst.options.length] = new Option('', '');
 
                if (l && l.length > 0) {
                        lst.options[lst.options.length] = new Option('', '');
@@ -80,8 +80,7 @@ var ImageDialog = {
                        src : f.src.value.replace(/ /g, '%20'),
                        alt : f.alt.value,
                        width : f.width.value,
                        src : f.src.value.replace(/ /g, '%20'),
                        alt : f.alt.value,
                        width : f.width.value,
-                       height : f.height.value,
-                       'class' : f.class_name.value
+                       height : f.height.value
                });
 
                el = ed.selection.getNode();
                });
 
                el = ed.selection.getNode();
@@ -91,9 +90,13 @@ var ImageDialog = {
                        tinyMCEPopup.editor.execCommand('mceRepaint');
                        tinyMCEPopup.editor.focus();
                } else {
                        tinyMCEPopup.editor.execCommand('mceRepaint');
                        tinyMCEPopup.editor.focus();
                } else {
-                       ed.execCommand('mceInsertContent', false, '<img id="__mce_tmp" />', {skip_undo : 1});
-                       ed.dom.setAttribs('__mce_tmp', args);
-                       ed.dom.setAttrib('__mce_tmp', 'id', '');
+                       tinymce.each(args, function(value, name) {
+                               if (value === "") {
+                                       delete args[name];
+                               }
+                       });
+
+                       ed.execCommand('mceInsertContent', false, tinyMCEPopup.editor.dom.createHTML('img', args), {skip_undo : 1});
                        ed.undoManager.add();
                }
 
                        ed.undoManager.add();
                }
 
@@ -101,31 +104,24 @@ var ImageDialog = {
        },
 
        updateStyle : function() {
        },
 
        updateStyle : function() {
-               var dom = tinyMCEPopup.dom, st, v, cls, oldcls, rep, f = document.forms[0];
+               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 (tinyMCEPopup.editor.settings.inline_styles) {
                        st = tinyMCEPopup.dom.parseStyle(this.styleVal);
 
                        // Handle align
                        v = getSelectValue(f, 'align');
-                       cls = f.class_name.value || '';
-                       cls = cls ? cls.replace(/alignright\s*|alignleft\s*|aligncenter\s*/g, '') : '';
-                       cls = cls ? cls.replace(/^\s*(.+?)\s*$/, '$1') : '';
                        if (v) {
                                if (v == 'left' || v == 'right') {
                                        st['float'] = v;
                                        delete st['vertical-align'];
                        if (v) {
                                if (v == 'left' || v == 'right') {
                                        st['float'] = v;
                                        delete st['vertical-align'];
-                                       oldcls = cls ? ' '+cls : '';
-                                       f.class_name.value = 'align' + v + oldcls;
                                } else {
                                        st['vertical-align'] = v;
                                        delete st['float'];
                                } else {
                                        st['vertical-align'] = v;
                                        delete st['float'];
-                                       f.class_name.value = cls;
                                }
                        } else {
                                delete st['float'];
                                delete st['vertical-align'];
                                }
                        } else {
                                delete st['float'];
                                delete st['vertical-align'];
-                               f.class_name.value = cls;
                        }
 
                        // Handle border
                        }
 
                        // Handle border
index 7c34b6d36dabcb4be50868e0f08cd32759e1e310..fc5fa845d8020087b6e16ce6da3bb1a1072d71c8 100644 (file)
@@ -2,11 +2,11 @@
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
        <title>{#advanced_dlg.link_title}</title>
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
        <title>{#advanced_dlg.link_title}</title>
-       <script type="text/javascript" src="../../tiny_mce_popup.js?ver=342-20110407"></script>
-       <script type="text/javascript" src="../../utils/mctabs.js?ver=342-20110407"></script>
-       <script type="text/javascript" src="../../utils/form_utils.js?ver=342-20110407"></script>
-       <script type="text/javascript" src="../../utils/validate.js?ver=342-20110407"></script>
-       <script type="text/javascript" src="js/link.js?ver=342-20110407"></script>
+       <script type="text/javascript" src="../../tiny_mce_popup.js?ver=345-20110908"></script>
+       <script type="text/javascript" src="../../utils/mctabs.js?ver=345-20110908"></script>
+       <script type="text/javascript" src="../../utils/form_utils.js?ver=345-20110908"></script>
+       <script type="text/javascript" src="../../utils/validate.js?ver=345-20110908"></script>
+       <script type="text/javascript" src="js/link.js?ver=345-20110908"></script>
 </head>
 <body id="link" style="display: none">
 <form onsubmit="LinkDialog.update();return false;" action="#">
 </head>
 <body id="link" style="display: none">
 <form onsubmit="LinkDialog.update();return false;" action="#">
index 16a1502088f82522cc83f42d32fe11d392ddb392..e1908905f3ecc62b999935ff1dc605bfe5ae77e0 100644 (file)
@@ -2,7 +2,7 @@
 <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
                <title>{#advanced_dlg.accessibility_help}</title>
 <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
                <title>{#advanced_dlg.accessibility_help}</title>
-               <script type="text/javascript" src="../../tiny_mce_popup.js?ver=342-20110407"></script>
+               <script type="text/javascript" src="../../tiny_mce_popup.js?ver=345-20110908"></script>
                <script type="text/javascript">tinyMCEPopup.requireLangPack();</script>
        </head>
        <body id="content">
                <script type="text/javascript">tinyMCEPopup.requireLangPack();</script>
        </head>
        <body id="content">
index 842d52d4e3d165ee0544dfadf45669887bbd5a9c..b9adf6f02e1bf2ae2c30d280a3cd3ea159c1d622 100644 (file)
@@ -9,7 +9,7 @@ h4 {font-size: 1em}
 h5 {font-size: .83em}
 h6 {font-size: .75em}
 .mceItemTable, .mceItemTable td, .mceItemTable th, .mceItemTable caption, .mceItemVisualAid {border: 1px dashed #BBB;}
 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;}
+a.mceItemAnchor {display:inline-block; -webkit-user-select:all; -webkit-user-modify:read-only; -moz-user-select:all; -moz-user-modify:read-only; width:11px !important; height:11px !important; background:url(img/items.gif) no-repeat center center}
 span.mceItemNbsp {background: #DDD}
 td.mceSelected, th.mceSelected {background-color:#3399ff !important}
 img {border:0;}
 span.mceItemNbsp {background: #DDD}
 td.mceSelected, th.mceSelected {background-color:#3399ff !important}
 img {border:0;}
@@ -35,6 +35,7 @@ scrollbar-track-color:#F5F5F5;
 
 img:-moz-broken {-moz-force-broken-image-icon:1; width:24px; height:24px}
 font[face=mceinline] {font-family:inherit !important}
 
 img:-moz-broken {-moz-force-broken-image-icon:1; width:24px; height:24px}
 font[face=mceinline] {font-family:inherit !important}
+*[contentEditable]:focus {outline:0}
 
 .mceItemMedia {border:1px dotted #cc0000; background-position:center; background-repeat:no-repeat; background-color:#ffffcc}
 .mceItemShockWave {background-image:url(../../img/shockwave.gif)}
 
 .mceItemMedia {border:1px dotted #cc0000; background-position:center; background-repeat:no-repeat; background-color:#ffffcc}
 .mceItemShockWave {background-image:url(../../img/shockwave.gif)}
@@ -43,5 +44,6 @@ font[face=mceinline] {font-family:inherit !important}
 .mceItemWindowsMedia {background-image:url(../../img/windowsmedia.gif)}
 .mceItemRealMedia {background-image:url(../../img/realmedia.gif)}
 .mceItemVideo {background-image:url(../../img/video.gif)}
 .mceItemWindowsMedia {background-image:url(../../img/windowsmedia.gif)}
 .mceItemRealMedia {background-image:url(../../img/realmedia.gif)}
 .mceItemVideo {background-image:url(../../img/video.gif)}
+.mceItemAudio {background-image:url(../../img/video.gif)}
 .mceItemIframe {background-image:url(../../img/iframe.gif)}
 .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;}
 .mceItemIframe {background-image:url(../../img/iframe.gif)}
 .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;}
index 7dd58418ba7cfe58ae7efdf174e0b223fe3aa6a0..1e53560e0aa7bb1b9a0373fc2f330acab7d1d51f 100644 (file)
Binary files a/wp-includes/js/tinymce/themes/advanced/skins/default/img/buttons.png and b/wp-includes/js/tinymce/themes/advanced/skins/default/img/buttons.png differ
index 2eafd7954e6ebf24204b01db94b39299426d09da..d2f93671ca3090b277e16a67b1aa6cfb6ac4915f 100644 (file)
Binary files a/wp-includes/js/tinymce/themes/advanced/skins/default/img/items.gif and b/wp-includes/js/tinymce/themes/advanced/skins/default/img/items.gif differ
index ce4be63558b02e9837b995d2b9dd540ce6d61a6f..06812cb4109b0b236b9659c570458842e39c6416 100644 (file)
Binary files a/wp-includes/js/tinymce/themes/advanced/skins/default/img/tabs.gif and b/wp-includes/js/tinymce/themes/advanced/skins/default/img/tabs.gif differ
index e14d36fa2527a563e7087950c63375410ccec9c1..ab2204d9ee742668bc1ce1a4f216ba3db2dc5798 100644 (file)
 .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;}
 .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;}
+.defaultSkin .mceMenuItem td, .defaultSkin .mceMenuItem th {line-height: normal}
 
 /* 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}
 
 /* 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}
index 75cfaf1809be9527f552a19f1ddf3f1c47b87d0f..46007b04267cfe985e53cb46de90f3a36fc8d45b 100644 (file)
@@ -21,3 +21,4 @@ abbr {border-bottom:1px dashed #CCC; cursor:help}
 
 img:-moz-broken {-moz-force-broken-image-icon:1; width:24px; height:24px}
 font[face=mceinline] {font-family:inherit !important}
 
 img:-moz-broken {-moz-force-broken-image-icon:1; width:24px; height:24px}
 font[face=mceinline] {font-family:inherit !important}
+*[contentEditable]:focus {outline:0}
index a550c8f621fafdff463e6603c132571ea9d07801..81da151f6ef1b1b755a0c30aa196a6c85fd652c6 100644 (file)
@@ -73,6 +73,7 @@
 .highcontrastSkin .mceNoIcons .mceMenuItemSelected span.mceText:before {content: "\2713\A0";}
 .highcontrastSkin .mceMenu span.mceMenuLine {display:none}
 .highcontrastSkin .mceMenuItemSub a .mceText:after {content: "\A0\25B8"}
 .highcontrastSkin .mceNoIcons .mceMenuItemSelected span.mceText:before {content: "\2713\A0";}
 .highcontrastSkin .mceMenu span.mceMenuLine {display:none}
 .highcontrastSkin .mceMenuItemSub a .mceText:after {content: "\A0\25B8"}
+.highcontrastSkin .mceMenuItem td, .highcontrastSkin .mceMenuItem th {line-height: normal}
 
 /* ColorSplitButton */
 .highcontrastSkin div.mceColorSplitMenu table {background:#FFF; border:1px solid; color: #000}
 
 /* ColorSplitButton */
 .highcontrastSkin div.mceColorSplitMenu table {background:#FFF; border:1px solid; color: #000}
index 8569401b78e59fd712d948c922acb8ac9069b26f..47a39255a120184362db8b8cf835e81ac5132c84 100644 (file)
@@ -34,6 +34,7 @@ scrollbar-track-color:#F5F5F5;
 
 img:-moz-broken {-moz-force-broken-image-icon:1; width:24px; height:24px}
 font[face=mceinline] {font-family:inherit !important}
 
 img:-moz-broken {-moz-force-broken-image-icon:1; width:24px; height:24px}
 font[face=mceinline] {font-family:inherit !important}
+*[contentEditable]:focus {outline:0}
 
 .mceItemMedia {border:1px dotted #cc0000; background-position:center; background-repeat:no-repeat; background-color:#ffffcc}
 .mceItemShockWave {background-image:url(../../img/shockwave.gif)}
 
 .mceItemMedia {border:1px dotted #cc0000; background-position:center; background-repeat:no-repeat; background-color:#ffffcc}
 .mceItemShockWave {background-image:url(../../img/shockwave.gif)}
@@ -42,5 +43,6 @@ font[face=mceinline] {font-family:inherit !important}
 .mceItemWindowsMedia {background-image:url(../../img/windowsmedia.gif)}
 .mceItemRealMedia {background-image:url(../../img/realmedia.gif)}
 .mceItemVideo {background-image:url(../../img/video.gif)}
 .mceItemWindowsMedia {background-image:url(../../img/windowsmedia.gif)}
 .mceItemRealMedia {background-image:url(../../img/realmedia.gif)}
 .mceItemVideo {background-image:url(../../img/video.gif)}
+.mceItemAudio {background-image:url(../../img/video.gif)}
 .mceItemIframe {background-image:url(../../img/iframe.gif)}
 .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;}
 .mceItemIframe {background-image:url(../../img/iframe.gif)}
 .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;}
index 12cfb419bbf2fb87f845731aa0fceb653d0dbf88..13a5cb03097c004f7b37658654a9250748cf073c 100644 (file)
Binary files a/wp-includes/js/tinymce/themes/advanced/skins/o2k7/img/button_bg.png and b/wp-includes/js/tinymce/themes/advanced/skins/o2k7/img/button_bg.png differ
index 8996c7493e8a58c9c40845cbe8abdc3e6730716d..7fc57f2bc2d63a3ad6fbf98b663f336539f011ec 100644 (file)
Binary files a/wp-includes/js/tinymce/themes/advanced/skins/o2k7/img/button_bg_black.png and b/wp-includes/js/tinymce/themes/advanced/skins/o2k7/img/button_bg_black.png differ
index bd5d2550c06d83c1141b78c5af7217e89559fc32..c0dcc6cac2003f7405fff3ea5df7bcf276243596 100644 (file)
Binary files a/wp-includes/js/tinymce/themes/advanced/skins/o2k7/img/button_bg_silver.png and b/wp-includes/js/tinymce/themes/advanced/skins/o2k7/img/button_bg_silver.png differ
index 91edecad9dca07fd34418af8bd07f9bb8880f1cb..c0156d2ce9f7a485c8ea3745794071b45678bd9b 100644 (file)
 .o2k7Skin .mceSeparator {display:block; background:url(img/button_bg.png) -22px 0; width:5px; height:22px}
 
 /* ListBox */
 .o2k7Skin .mceSeparator {display:block; background:url(img/button_bg.png) -22px 0; width:5px; height:22px}
 
 /* ListBox */
-.o2k7Skin .mceListBox {margin-left:3px}
+.o2k7Skin .mceListBox  {padding-left: 3px}
 .o2k7Skin .mceListBox, .o2k7Skin .mceListBox a {display:block}
 .o2k7Skin .mceListBox .mceText {padding-left:4px; text-align:left; width:70px; border:1px solid #b3c7e1; border-right:0; background:#eaf2fb; font-family:Tahoma,Verdana,Arial,Helvetica; font-size:11px; height:20px; line-height:20px; overflow:hidden}
 .o2k7Skin .mceListBox .mceOpen {width:14px; height:22px; background:url(img/button_bg.png) -66px 0}
 .o2k7Skin table.mceListBoxEnabled:hover .mceText, .o2k7Skin .mceListBoxHover .mceText, .o2k7Skin .mceListBoxSelected .mceText {background:#FFF}
 .o2k7Skin table.mceListBoxEnabled:hover .mceOpen, .o2k7Skin .mceListBoxHover .mceOpen, .o2k7Skin .mceListBoxSelected .mceOpen {background-position:-66px -22px}
 .o2k7Skin .mceListBoxDisabled .mceText {color:gray}
 .o2k7Skin .mceListBox, .o2k7Skin .mceListBox a {display:block}
 .o2k7Skin .mceListBox .mceText {padding-left:4px; text-align:left; width:70px; border:1px solid #b3c7e1; border-right:0; background:#eaf2fb; font-family:Tahoma,Verdana,Arial,Helvetica; font-size:11px; height:20px; line-height:20px; overflow:hidden}
 .o2k7Skin .mceListBox .mceOpen {width:14px; height:22px; background:url(img/button_bg.png) -66px 0}
 .o2k7Skin table.mceListBoxEnabled:hover .mceText, .o2k7Skin .mceListBoxHover .mceText, .o2k7Skin .mceListBoxSelected .mceText {background:#FFF}
 .o2k7Skin table.mceListBoxEnabled:hover .mceOpen, .o2k7Skin .mceListBoxHover .mceOpen, .o2k7Skin .mceListBoxSelected .mceOpen {background-position:-66px -22px}
 .o2k7Skin .mceListBoxDisabled .mceText {color:gray}
-.o2k7Skin .mceListBoxMenu {overflow:auto; overflow-x:hidden}
+.o2k7Skin .mceListBoxMenu {overflow:auto; overflow-x:hidden; margin-left:3px}
 .o2k7Skin .mceOldBoxModel .mceListBox .mceText {height:22px}
 .o2k7Skin select.mceListBox {font-family:Tahoma,Verdana,Arial,Helvetica; font-size:12px; border:1px solid #b3c7e1; background:#FFF;}
 
 .o2k7Skin .mceOldBoxModel .mceListBox .mceText {height:22px}
 .o2k7Skin select.mceListBox {font-family:Tahoma,Verdana,Arial,Helvetica; font-size:12px; border:1px solid #b3c7e1; background:#FFF;}
 
 .o2k7Skin .mceNoIcons .mceMenuItemSelected a {background:url(../default/img/menu_arrow.gif) no-repeat -6px center}
 .o2k7Skin .mceMenu span.mceMenuLine {display:none}
 .o2k7Skin .mceMenuItemSub a {background:url(../default/img/menu_arrow.gif) no-repeat top right;}
 .o2k7Skin .mceNoIcons .mceMenuItemSelected a {background:url(../default/img/menu_arrow.gif) no-repeat -6px center}
 .o2k7Skin .mceMenu span.mceMenuLine {display:none}
 .o2k7Skin .mceMenuItemSub a {background:url(../default/img/menu_arrow.gif) no-repeat top right;}
+.o2k7Skin .mceMenuItem td, .o2k7Skin .mceMenuItem th {line-height: normal}
 
 /* Progress,Resize */
 .o2k7Skin .mceBlocker {position:absolute; left:0; top:0; z-index:1000; opacity:0.5; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=50); background:#FFF}
 
 /* Progress,Resize */
 .o2k7Skin .mceBlocker {position:absolute; left:0; top:0; z-index:1000; opacity:0.5; -ms-filter:'alpha(opacity=30)'; filter:alpha(opacity=50); background:#FFF}
index 0b7ec9f33f68457c2b4d91251883201dab8e0694..065a00457cfe526a159777aa70076be10a7c03b5 100644 (file)
@@ -1,6 +1,6 @@
 body {
        font: 13px/19px Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
 body {
        font: 13px/19px Georgia, "Times New Roman", "Bitstream Charter", Times, serif;
-       margin: 0.6em;
+       margin: 10px;
        color: #000;
 }
 body.mceForceColors {background:#FFF; color:#000;}
        color: #000;
 }
 body.mceForceColors {background:#FFF; color:#000;}
@@ -13,7 +13,7 @@ h4 {font-size: 1em}
 h5 {font-size: .83em}
 h6 {font-size: .75em}
 .mceItemTable, .mceItemTable td, .mceItemTable th, .mceItemTable caption, .mceItemVisualAid {border: 1px dashed #BBB;}
 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;}
+a.mceItemAnchor {display:inline-block; -webkit-user-select:all; -webkit-user-modify:read-only; -moz-user-select:all; -moz-user-modify:read-only; width:11px !important; height:11px !important; background:url(../default/img/items.gif) no-repeat center center}
 span.mceItemNbsp {background: #DDD}
 td.mceSelected, th.mceSelected {background-color:#3399ff !important}
 img {border:0;}
 span.mceItemNbsp {background: #DDD}
 td.mceSelected, th.mceSelected {background-color:#3399ff !important}
 img {border:0;}
@@ -27,6 +27,7 @@ abbr {border-bottom:1px dashed #CCC; cursor:help}
 
 img:-moz-broken {-moz-force-broken-image-icon:1; width:24px; height:24px}
 font[face=mceinline] {font-family:inherit !important}
 
 img:-moz-broken {-moz-force-broken-image-icon:1; width:24px; height:24px}
 font[face=mceinline] {font-family:inherit !important}
+*[contentEditable]:focus {outline:0}
 
 .mceItemMedia {border:1px dotted #cc0000; background-position:center; background-repeat:no-repeat; background-color:#ffffcc}
 .mceItemShockWave {background-image:url(../../img/shockwave.gif)}
 
 .mceItemMedia {border:1px dotted #cc0000; background-position:center; background-repeat:no-repeat; background-color:#ffffcc}
 .mceItemShockWave {background-image:url(../../img/shockwave.gif)}
@@ -35,6 +36,7 @@ font[face=mceinline] {font-family:inherit !important}
 .mceItemWindowsMedia {background-image:url(../../img/windowsmedia.gif)}
 .mceItemRealMedia {background-image:url(../../img/realmedia.gif)}
 .mceItemVideo {background-image:url(../../img/video.gif)}
 .mceItemWindowsMedia {background-image:url(../../img/windowsmedia.gif)}
 .mceItemRealMedia {background-image:url(../../img/realmedia.gif)}
 .mceItemVideo {background-image:url(../../img/video.gif)}
+.mceItemAudio {background-image:url(../../img/video.gif)}
 .mceItemIframe {background-image:url(../../img/iframe.gif)}
 .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;}
 
 .mceItemIframe {background-image:url(../../img/iframe.gif)}
 .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;}
 
@@ -60,9 +62,7 @@ dl.aligncenter {
        text-align: center;
        background-color: #f3f3f3;
        padding-top: 4px;
        text-align: center;
        background-color: #f3f3f3;
        padding-top: 4px;
-       margin: 10px;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
+       margin: 10px 0;
        -webkit-border-radius: 3px;
        border-radius: 3px;
 }
        -webkit-border-radius: 3px;
        border-radius: 3px;
 }
index 7fe6b8dcc41a5f0489d2844842f1186755f567af..fe48d85728ff0337f0fb592bb265930c7c183330 100644 (file)
@@ -35,13 +35,17 @@ input.checkbox {border:1px none #000000; background:transparent; vertical-align:
        font-size: 11px;
        width:94px; 
        height:24px;
        font-size: 11px;
        width:94px; 
        height:24px;
-       background:url(img/fade-butt.png) 0 0;
        color:#000;
        cursor:pointer;
        color:#000;
        cursor:pointer;
-       -moz-border-radius: 3px;
-       -khtml-border-radius: 3px;
        -webkit-border-radius: 3px;
        border-radius: 3px;
        -webkit-border-radius: 3px;
        border-radius: 3px;
+       background-color: #eee; /* Fallback */
+       background-image: -ms-linear-gradient(bottom, #ddd, #fff); /* IE10 */
+       background-image: -moz-linear-gradient(bottom, #ddd, #fff); /* Firefox */
+       background-image: -o-linear-gradient(bottom, #ddd, #fff); /* Opera */
+       background-image: -webkit-gradient(linear, left bottom, left top, from(#ddd), to(#fff)); /* old Webkit */
+       background-image: -webkit-linear-gradient(bottom, #ddd, #fff); /* new Webkit */
+       background-image: linear-gradient(bottom, #ddd, #fff); /* proposed W3C Markup */
 }
 #insert:hover, #cancel:hover, input.mceButton:hover, .updateButton:hover,
 #insert:focus, #cancel:focus, input.mceButton:focus, .updateButton:focus {
 }
 #insert:hover, #cancel:hover, input.mceButton:hover, .updateButton:hover,
 #insert:focus, #cancel:focus, input.mceButton:focus, .updateButton:focus {
@@ -114,4 +118,4 @@ h3 {font-size:14px;}
 #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 #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;}
\ No newline at end of file
+#colorpicker #picker_panel fieldset {margin:auto;width:325px;}
diff --git a/wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/butt2.png b/wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/butt2.png
deleted file mode 100644 (file)
index adb83cd..0000000
Binary files a/wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/butt2.png and /dev/null differ
diff --git a/wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/button_bg.png b/wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/button_bg.png
deleted file mode 100644 (file)
index 12cfb41..0000000
Binary files a/wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/button_bg.png and /dev/null differ
diff --git a/wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/fade-butt.png b/wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/fade-butt.png
deleted file mode 100644 (file)
index 42f08b7..0000000
Binary files a/wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/fade-butt.png and /dev/null differ
diff --git a/wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/separator.gif b/wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/separator.gif
deleted file mode 100644 (file)
index 4f39b80..0000000
Binary files a/wp-includes/js/tinymce/themes/advanced/skins/wp_theme/img/separator.gif and /dev/null differ
index 584980f80b05d170fb87c265e23d2b6e3f80d7c1..2097708f0b219d1bd752d37a48258fe71be38a37 100644 (file)
@@ -1,560 +1,2 @@
-/* Reset */
-.wp_themeSkin table, .wp_themeSkin tbody, .wp_themeSkin a, .wp_themeSkin img, .wp_themeSkin tr, .wp_themeSkin div, .wp_themeSkin td, .wp_themeSkin iframe, .wp_themeSkin span, .wp_themeSkin *, .wp_themeSkin .mceText {
-border:0; margin:0; padding:0; white-space:nowrap; text-decoration:none; font-weight:normal; cursor:default; vertical-align:baseline; width:auto; border-collapse:separate;
-}
-.wp_themeSkin a:hover, .wp_themeSkin a:link, .wp_themeSkin a:visited, .wp_themeSkin a:active {text-decoration:none; font-weight:normal; cursor:default;}
-.wp_themeSkin table td {vertical-align:middle}
-
-/* Containers */
-.wp_themeSkin table {}
-.wp_themeSkin iframe {display:block;}
-.wp_themeSkin .mceToolbar {padding: 2px;}
-
-/* External */
-.wp_themeSkin .mceExternalToolbar {position:absolute; border-bottom:0; display:none}
-.wp_themeSkin .mceExternalToolbar td.mceToolbar {padding-right:13px;}
-.wp_themeSkin .mceExternalClose {position:absolute; top:3px; right:3px; width:7px; height:7px; background:url(../../img/icons.gif) -820px 0}
-
-/* Layout */
-.wp_themeSkin table.mceToolbar, .wp_themeSkin tr.mceFirst .mceToolbar tr td, .wp_themeSkin tr.mceLast .mceToolbar tr td {border:0; margin:0; padding:0}
-.wp_themeSkin table.mceLayout {border:0;}
-.wp_themeSkin .mceIframeContainer {}
-.wp_themeSkin .mceStatusbar {
-       display: block;
-       font-family: Arial, "Bitstream Vera Sans", Helvetica, Verdana, sans-serif;
-       font-size: 12px;
-       line-height: 16px;
-       padding-left: 5px;
-       overflow: visible;
-       height: 20px;
-       border-top-width: 1px;
-       border-top-style: solid;
-}
-.wp_themeSkin .mceStatusbar div {float:left; padding:2px;}
-.wp_themeSkin .mceStatusbar a.mceResize {
-       display: block;
-       float: right;
-       background: url(../../img/icons.gif) -800px 0;
-       width: 20px;
-       height: 20px;
-       cursor: se-resize
-}
-.wp_themeSkin .mceStatusbar a:hover {text-decoration:underline}
-.wp_themeSkin table.mceToolbar {margin: 0 2px 2px;}
-.wp_themeSkin #content_toolbar1 {margin-top: 2px;}
-.wp_themeSkin .mceToolbar .mceToolbarEndListBox span {display:none}
-.wp_themeSkin span.mceIcon, .wp_themeSkin img.mceIcon {display:block; width:20px; height:20px}
-.wp_themeSkin .mceIcon {background:url(../../img/icons.gif) no-repeat 20px 20px}
-
-/* Button */
-.wp_themeSkin .mceButton {
-       display:block;
-       width: 20px;
-       height: 20px;
-       cursor: default;
-       padding: 1px 2px;
-       margin: 1px;
-       -moz-border-radius: 2px;
-       -webkit-border-radius: 2px;
-       -khtml-border-radius: 2px;
-       border-radius: 2px;
-       -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
-       -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
-       box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
-}
-
-.wp_themeSkin a.mceButtonEnabled:hover {
-       background-image: inherit 0 -10px;
-}
-
-.wp_themeSkin .mceOldBoxModel a.mceButton span, .wp_themeSkin .mceOldBoxModel a.mceButton img {margin:0 0 0 1px}
-
-.wp_themeSkin a.mceButton:active,
-.wp_themeSkin a.mceButtonActive,
-.wp_themeSkin a.mceButtonActive:hover,
-.wp_themeSkin a.mceButtonSelected {
-       -webkit-box-shadow:      0 1px 1px rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
-       -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
-       box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
-}
-.wp_themeSkin .mceButtonDisabled .mceIcon {opacity:0.4; filter:alpha(opacity=40);}
-
-/* Separator */
-.wp_themeSkin .mceSeparator {
-       height: 24px;
-       width: 1px;
-       display: block;
-       background: transparent;
-       overflow: hidden;
-       margin: 0 2px;
-}
-
-/* ListBox */
-.wp_themeSkin .mceListBox, .wp_themeSkin .mceListBox a {display:block}
-.wp_themeSkin .mceListBox .mceText {
-       padding: 1px 2px 1px 5px;
-       text-align:left;
-       text-decoration: none;
-       width:70px;
-       -moz-border-bottom-left-radius: 2px;
-       -webkit-border-bottom-left-radius: 2px;
-       -khtml-border-bottom-left-radius: 2px;
-       border-bottom-left-radius: 2px;
-       -moz-border-top-left-radius: 2px;
-       -webkit-border-top-left-radius: 2px;
-       -khtml-border-top-left-radius: 2px;
-       border-top-left-radius: 2px;
-       -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
-       -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
-       box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
-       font-family: Arial, "Bitstream Vera Sans", Helvetica, Verdana, sans-serif;
-       font-size: 12px;
-       height: 20px;
-       line-height: 20px;
-       overflow: hidden;
-}
-.wp_themeSkin .mceListBox {
-       margin: 1px;
-       direction: ltr;
-}
-.wp_themeSkin .mceListBox .mceOpen {
-       width: 14px;
-       height: 20px;
-       border-collapse: separate;
-       padding: 1px;
-       -moz-border-bottom-left-radius: 0;
-       -webkit-border-bottom-left-radius: 0;
-       -khtml-border-bottom-left-radius: 0;
-       border-bottom-left-radius: 0;
-       -moz-border-top-left-radius: 0;
-       -webkit-border-top-left-radius: 0;
-       -khtml-border-top-left-radius: 0;
-       border-top-left-radius: 0;
-       -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
-       -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
-       box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
-}
-.wp_themeSkin .mceListBox .mceOpen span {
-       display: block;
-       width:14px;
-       height:20px;
-       background-image: url(img/down_arrow.gif);
-       background-position: 2px 1px;
-       background-repeat: no-repeat;
-}
-.wp_themeSkin table.mceListBoxEnabled:hover .mceText,
-.wp_themeSkin .mceListBoxHover .mceText,
-.wp_themeSkin .mceListBoxSelected .mceText,
-.wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,
-.wp_themeSkin .mceListBoxHover .mceOpen,
-.wp_themeSkin .mceListBoxSelected .mceOpen {
-       background-image: none;
-}
-.wp_themeSkin .mceListBoxDisabled .mceText {color:gray}
-.wp_themeSkin .mceListBoxMenu {overflow:auto; overflow-x:hidden}
-.wp_themeSkin .mceOldBoxModel .mceListBox .mceText {height:22px}
-.wp_themeSkin select.mceListBox {
-       font-family: Arial, "Bitstream Vera Sans", Helvetica, Verdana, sans-serif;
-       font-size:12px;
-}
-
-/* SplitButton */
-.wp_themeSkin .mceSplitButton a, .wp_themeSkin .mceSplitButton span {display:block; height:20px}
-.wp_themeSkin .mceSplitButton {
-       display:block;
-       margin: 1px;
-       direction: ltr;
-}
-.wp_themeSkin table.mceSplitButton td {
-       padding: 2px;
-       -moz-border-bottom-left-radius: 0;
-       -webkit-border-bottom-left-radius: 0;
-       -khtml-border-bottom-left-radius: 0;
-       border-bottom-left-radius: 0;
-       -moz-border-top-left-radius: 0;
-       -webkit-border-top-left-radius: 0;
-       -khtml-border-top-left-radius: 0;
-       border-top-left-radius: 0;
-}
-
-.wp_themeSkin table.mceSplitButton td a {
-       -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
-       -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
-       box-shadow: 0 1px 0 rgba(0, 0, 0, 0.15), inset 0 0 2px 1px #fff;
-}
-
-.wp_themeSkin table.mceSplitButton:hover td {
-       background-image: inherit 0 -10px;
-}
-
-.wp_themeSkin .mceSplitButton a.mceAction {
-       height:20px;
-       width:20px;
-       padding: 1px 2px;
-}
-.wp_themeSkin .mceSplitButton span.mceAction {
-       background-image: url(../../img/icons.gif);
-       background-repeat: no-repeat;
-       background-color: transparent;
-       width:20px;
-}
-.wp_themeSkin .mceSplitButton a.mceOpen {
-       width:10px;
-       height:20px;
-       background-image: url(img/down_arrow.gif);
-       background-position: 1px 2px;
-       background-repeat: no-repeat;
-       padding: 1px;
-       border-left: 0 none !important;
-}
-.wp_themeSkin .mceSplitButton span.mceOpen {display:none}
-.wp_themeSkin .mceSplitButtonDisabled .mceAction {
-       opacity:0.3; filter:alpha(opacity=30);
-}
-.wp_themeSkin .mceListBox a.mceText, .wp_themeSkin .mceSplitButton a.mceAction {
-       -moz-border-radius-bottomleft: 3px;
-       -webkit-border-bottom-left-radius: 3px;
-       -khtml-border-bottom-left-radius: 3px;
-       border-bottom-left-radius: 3px;
-       -moz-border-radius-topleft: 3px;
-       -webkit-border-top-left-radius: 3px;
-       -khtml-border-top-left-radius: 3px;
-       border-top-left-radius: 3px;
-}
-.wp_themeSkin .mceSplitButton a.mceOpen, .wp_themeSkin .mceListBox a.mceOpen {
-       -moz-border-radius-bottomright: 3px;
-       -webkit-border-bottom-right-radius: 3px;
-       -khtml-border-bottom-right-radius: 3px;
-       border-bottom-right-radius: 3px;
-       -moz-border-radius-topright: 3px;
-       -webkit-border-top-right-radius: 3px;
-       -khtml-border-top-right-radius: 3px;
-       border-top-right-radius: 3px;
-}
-
-.wp_themeSkin span.mce_undo,
-.wp_themeSkin span.mce_redo,
-.wp_themeSkin span.mce_bullist,
-.wp_themeSkin span.mce_numlist,
-.wp_themeSkin span.mce_blockquote,
-.wp_themeSkin span.mce_charmap,
-.wp_themeSkin span.mce_bold,
-.wp_themeSkin span.mce_italic,
-.wp_themeSkin span.mce_underline,
-.wp_themeSkin span.mce_justifyleft,
-.wp_themeSkin span.mce_justifyright,
-.wp_themeSkin span.mce_justifycenter,
-.wp_themeSkin span.mce_justifyfull,
-.wp_themeSkin span.mce_indent,
-.wp_themeSkin span.mce_outdent,
-.wp_themeSkin span.mce_link,
-.wp_themeSkin span.mce_unlink,
-.wp_themeSkin span.mce_help,
-.wp_themeSkin span.mce_removeformat,
-.wp_themeSkin span.mce_fullscreen,
-.wp_themeSkin span.mce_media,
-.wp_themeSkin span.mce_pastetext,
-.wp_themeSkin span.mce_pasteword,
-.wp_themeSkin span.mce_wp_help,
-.wp_themeSkin span.mce_wp_adv,
-.wp_themeSkin span.mce_wp_more,
-.wp_themeSkin span.mce_strikethrough,
-.wp_themeSkin span.mce_spellchecker,
-.wp_themeSkin span.mce_forecolor,
-.wp_themeSkin .mce_forecolorpicker,
-.wp_themeSkin .mceSplitButton .mce_spellchecker span.mce_spellchecker,
-.wp_themeSkin .mceSplitButton .mce_forecolor span.mce_forecolor,
-.wp_themeSkin .mceSplitButton span.mce_numlist,
-.wp_themeSkin .mceSplitButton span.mce_bullist {
-       background-image: url(../../img/wpicons.png);
-}
-
-/* ColorSplitButton */
-.wp_themeSkin div.mceColorSplitMenu table {}
-.wp_themeSkin .mceColorSplitMenu td {padding:2px}
-.wp_themeSkin .mceColorSplitMenu a {display:block; width:9px; height:9px; overflow:hidden;}
-.wp_themeSkin .mceColorSplitMenu td.mceMoreColors {padding:1px 3px 1px 1px}
-.wp_themeSkin .mceColorSplitMenu a.mceMoreColors {width:100%; height:auto; text-align:center; font-family:Tahoma,Verdana,Arial,Helvetica; font-size:11px; line-height:20px;}
-.wp_themeSkin .mceColorSplitMenu a.mceMoreColors:hover {}
-.wp_themeSkin a.mceMoreColors:hover {}
-.wp_themeSkin .mceColorPreview {margin: -5px 0 0 2px; width:16px; height:4px; overflow:hidden}
-
-/* Menu */
-.wp_themeSkin .mceMenu {position:absolute; left:0; top:0; z-index:1000;}
-.wp_themeSkin .mceNoIcons span.mceIcon {width:0;}
-.wp_themeSkin .mceNoIcons a .mceText {padding-left:10px}
-.wp_themeSkin .mceMenu table {}
-.wp_themeSkin .mceMenu a, .wp_themeSkin .mceMenu span, .wp_themeSkin .mceMenu {display:block}
-.wp_themeSkin .mceMenu td {height:20px;overflow:hidden;}
-.wp_themeSkin .mceMenu a {
-       position:relative;
-       padding:3px 0 4px 0;
-       text-decoration: none !important;
-}
-.wp_themeSkin .mceMenu .mceText {
-       position:relative;
-       display:block;
-       font-family:Tahoma,Verdana,Arial,Helvetica;
-       cursor:default;
-       margin:0;
-       padding:0 25px;
-}
-.wp_themeSkin .mceMenu span.mceText, .wp_themeSkin .mceMenu .mcePreview {
-       font-size: 12px;
-}
-.wp_themeSkin .mceMenu pre.mceText {font-family:Monospace}
-.wp_themeSkin .mceMenu .mceIcon {position:absolute; top:0; left:0; width:22px;}
-.wp_themeSkin .mceMenu .mceMenuItemEnabled a:hover,
-.wp_themeSkin .mceMenu .mceMenuItemActive {}
-.wp_themeSkin td.mceMenuItemSeparator {height:1px}
-.wp_themeSkin .mceMenuItemTitle a {
-       border-top: 0;
-       border-right: 0;
-       border-left: 0;
-       border-bottom-style: solid;
-       border-bottom-width: 1px;
-       text-decoration: none !important;
-}
-.wp_themeSkin .mceMenuItemTitle span.mceText {font-weight:bold; padding-left:4px}
-.wp_themeSkin .mceMenuItemDisabled .mceText {}
-.wp_themeSkin .mceMenuItemSelected .mceIcon {background:url(../default/img/menu_check.gif)}
-.wp_themeSkin .mceNoIcons .mceMenuItemSelected a {background:url(../default/img/menu_arrow.gif) no-repeat -6px center}
-.wp_themeSkin .mceMenu span.mceMenuLine {display:none}
-.wp_themeSkin .mceMenuItemSub a {background:url(../default/img/menu_arrow.gif) no-repeat top right;}
-
-/* Progress,Resize */
-.wp_themeSkin .mceBlocker {position:absolute; left:0; top:0; z-index:1000; opacity:0.5; filter:alpha(opacity=50); background:#FFF}
-.wp_themeSkin .mceProgress {position:absolute; left:0; top:0; z-index:1001; background:url(../default/img/progress.gif) no-repeat; width:32px; height:32px; margin:-16px 0 0 -16px}
-.wp_themeSkin .mcePlaceHolder {border:1px dotted gray}
-
-/* Formats */
-.wp_themeSkin .mce_p span.mceText {}
-.wp_themeSkin .mce_address span.mceText {font-style:italic}
-.wp_themeSkin .mce_pre span.mceText {font-family:monospace}
-.wp_themeSkin .mce_h1 span.mceText {font-weight:bolder; font-size: 17px}
-.wp_themeSkin .mce_h2 span.mceText {font-weight:bolder; font-size: 16px}
-.wp_themeSkin .mce_h3 span.mceText {font-weight:bolder; font-size: 15px}
-.wp_themeSkin .mce_h4 span.mceText {font-weight:bolder; font-size: 14px}
-.wp_themeSkin .mce_h5 span.mceText {font-weight:bolder; font-size: 13px}
-.wp_themeSkin .mce_h6 span.mceText {font-weight:bolder; font-size: 12px}
-
-/* Theme */
-.wp_themeSkin span.mce_undo {background-position: -500px -20px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_undo,
-.wp_themeSkin .mceButtonActive span.mce_undo {background-position:-500px 0}
-
-.wp_themeSkin span.mce_redo {background-position:-480px -20px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_redo,
-.wp_themeSkin .mceButtonActive span.mce_redo {background-position:-480px 0}
-
-.wp_themeSkin span.mce_bullist {background-position:-40px -20px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_bullist,
-.wp_themeSkin .mceButtonActive span.mce_bullist,
-.wp_themeSkin .mceSplitButton:hover span.mce_bullist {background-position:-40px 0}
-
-.wp_themeSkin span.mce_numlist {background-position:-61px -20px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_numlist,
-.wp_themeSkin .mceButtonActive span.mce_numlist,
-.wp_themeSkin .mceSplitButton:hover span.mce_numlist {background-position:-61px 0}
-
-.wp_themeSkin span.mce_blockquote {background-position:-80px -20px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_blockquote,
-.wp_themeSkin .mceButtonActive span.mce_blockquote {background-position:-80px 0}
-
-.wp_themeSkin span.mce_charmap {background-position:-420px -20px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_charmap,
-.wp_themeSkin .mceButtonActive span.mce_charmap {background-position:-420px 0}
-
-.wp_themeSkin span.mce_bold {background-position:-1px -20px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_bold,
-.wp_themeSkin .mceButtonActive span.mce_bold {background-position:-1px 0}
-
-.wp_themeSkin span.mce_italic {background-position:-21px -20px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_italic,
-.wp_themeSkin .mceButtonActive span.mce_italic {background-position:-21px 0}
-
-.wp_themeSkin span.mce_underline {background-position:-280px -19px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_underline,
-.wp_themeSkin .mceButtonActive span.mce_underline {background-position:-280px 1px}
-
-.wp_themeSkin span.mce_justifyleft {background-position:-100px -19px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_justifyleft,
-.wp_themeSkin .mceButtonActive span.mce_justifyleft {background-position:-100px 1px}
-
-.wp_themeSkin span.mce_justifyright {background-position:-141px -19px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_justifyright,
-.wp_themeSkin .mceButtonActive span.mce_justifyright {background-position:-141px 1px}
-
-.wp_themeSkin span.mce_justifycenter {background-position:-120px -19px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_justifycenter,
-.wp_themeSkin .mceButtonActive span.mce_justifycenter {background-position:-120px 1px}
-
-.wp_themeSkin span.mce_justifyfull {background-position:-300px -19px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_justifyfull,
-.wp_themeSkin .mceButtonActive span.mce_justifyfull {background-position:-300px 1px}
-
-.wp_themeSkin span.mce_indent {background-position:-461px -19px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_indent,
-.wp_themeSkin .mceButtonActive span.mce_indent {background-position:-461px 1px}
-
-.wp_themeSkin span.mce_outdent {background-position:-440px -19px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_outdent,
-.wp_themeSkin .mceButtonActive span.mce_outdent {background-position:-440px 1px}
-
-.wp_themeSkin span.mce_link {background-position:-161px -20px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_link,
-.wp_themeSkin .mceButtonActive span.mce_link {background-position:-161px 0}
-
-.wp_themeSkin span.mce_unlink {background-position:-180px -20px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_unlink,
-.wp_themeSkin .mceButtonActive span.mce_unlink {background-position:-180px 0}
-
-.wp_themeSkin span.mce_help {background-position:-521px -20px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_help,
-.wp_themeSkin .mceButtonActive span.mce_help {background-position:-521px 0}
-
-.wp_themeSkin span.mce_removeformat {background-position:-381px -20px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_removeformat,
-.wp_themeSkin .mceButtonActive span.mce_removeformat {background-position:-381px 0}
-
-.wp_themeSkin span.mce_strikethrough {background-position:-540px -18px;}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_strikethrough,
-.wp_themeSkin .mceButtonActive span.mce_strikethrough {background-position:-540px 0}
-
-.wp_themeSkin .mceSplitButton .mce_forecolor span.mce_forecolor {background-position:-321px -22px}
-.wp_themeSkin .mceSplitButtonEnabled:hover span.mce_forecolor,
-.wp_themeSkin .mceSplitButtonActive span.mce_forecolor {background-position:-321px -2px}
-
-.wp_themeSkin .mce_forecolorpicker {background-position:-320px -20px}
-
-/* Plugins in WP */
-.wp_themeSkin span.mce_fullscreen {background-position:-240px -20px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_fullscreen,
-.wp_themeSkin .mceButtonActive span.mce_fullscreen {background-position:-240px 0}
-
-.wp_themeSkin span.mce_media {background-position:-401px -20px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_media,
-.wp_themeSkin .mceButtonActive span.mce_media {background-position:-401px 0}
-
-.wp_themeSkin span.mce_pastetext {background-position:-340px -20px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_pastetext,
-.wp_themeSkin .mceButtonActive span.mce_pastetext {background-position:-340px 0}
-
-.wp_themeSkin span.mce_pasteword {background-position:-360px -20px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_pasteword,
-.wp_themeSkin .mceButtonActive span.mce_pasteword {background-position:-360px 0}
-
-.wp_themeSkin span.mce_spellchecker {background-position:-220px -19px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_spellchecker,
-.wp_themeSkin .mceSplitButtonEnabled:hover span.mce_spellchecker,
-.wp_themeSkin .mceButtonActive span.mce_spellchecker,
-.wp_themeSkin .mceSplitButtonActive span.mce_spellchecker {background-position:-220px 1px}
-
-.wp_themeSkin span.mce_wp_help {background-position:-521px -20px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_wp_help,
-.wp_themeSkin .mceButtonActive span.mce_wp_help {background-position:-521px 0}
-
-.wp_themeSkin span.mce_wp_adv {background-position:-260px -20px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_wp_adv,
-.wp_themeSkin .mceButtonActive span.mce_wp_adv {background-position:-260px 0}
-
-.wp_themeSkin span.mce_wp_more {background-position:-201px -20px}
-.wp_themeSkin .mceButtonEnabled:hover span.mce_wp_more,
-.wp_themeSkin .mceButtonActive span.mce_wp_more {background-position:-201px 0}
-
-/* Default icons */
-.wp_themeSkin span.mce_cleanup {background-position:-380px -20px}
-.wp_themeSkin span.mce_anchor {background-position:-200px 0}
-.wp_themeSkin span.mce_sub {background-position:-600px 0}
-.wp_themeSkin span.mce_sup {background-position:-620px 0}
-.wp_themeSkin span.mce_newdocument {background-position:-520px 0}
-.wp_themeSkin span.mce_image {background-position:-380px 0}
-.wp_themeSkin span.mce_code {background-position:-260px 0}
-.wp_themeSkin span.mce_hr {background-position:-360px 0}
-.wp_themeSkin span.mce_visualaid {background-position:-660px 0}
-.wp_themeSkin span.mce_paste {background-position:-560px 0}
-.wp_themeSkin span.mce_copy {background-position:-700px 0}
-.wp_themeSkin span.mce_cut {background-position:-680px 0}
-.wp_themeSkin .mce_backcolor span.mceAction {background-position:-760px 0}
-.wp_themeSkin .mce_backcolorpicker {background-position:-760px 0}
-
-
-/* Plugins */
-.wp_themeSkin span.mce_advhr {background-position:-0px -20px}
-.wp_themeSkin span.mce_ltr {background-position:-20px -20px}
-.wp_themeSkin span.mce_rtl {background-position:-40px -20px}
-.wp_themeSkin span.mce_emotions {background-position:-60px -20px}
-.wp_themeSkin span.mce_fullpage {background-position:-80px -20px}
-.wp_themeSkin span.mce_iespell {background-position:-120px -20px}
-.wp_themeSkin span.mce_insertdate {background-position:-140px -20px}
-.wp_themeSkin span.mce_inserttime {background-position:-160px -20px}
-.wp_themeSkin span.mce_absolute {background-position:-180px -20px}
-.wp_themeSkin span.mce_backward {background-position:-200px -20px}
-.wp_themeSkin span.mce_forward {background-position:-220px -20px}
-.wp_themeSkin span.mce_insert_layer {background-position:-240px -20px}
-.wp_themeSkin span.mce_insertlayer {background-position:-260px -20px}
-.wp_themeSkin span.mce_movebackward {background-position:-280px -20px}
-.wp_themeSkin span.mce_moveforward {background-position:-300px -20px}
-.wp_themeSkin span.mce_nonbreaking {background-position:-340px -20px}
-.wp_themeSkin span.mce_selectall {background-position:-400px -20px}
-.wp_themeSkin span.mce_preview {background-position:-420px -20px}
-.wp_themeSkin span.mce_print {background-position:-440px -20px}
-.wp_themeSkin span.mce_cancel {background-position:-460px -20px}
-.wp_themeSkin span.mce_save {background-position:-480px -20px}
-.wp_themeSkin span.mce_replace {background-position:-500px -20px}
-.wp_themeSkin span.mce_search {background-position:-520px -20px}
-.wp_themeSkin span.mce_styleprops {background-position:-560px -20px}
-.wp_themeSkin span.mce_table {background-position:-580px -20px}
-.wp_themeSkin span.mce_cell_props {background-position:-600px -20px}
-.wp_themeSkin span.mce_delete_table {background-position:-620px -20px}
-.wp_themeSkin span.mce_delete_col {background-position:-640px -20px}
-.wp_themeSkin span.mce_delete_row {background-position:-660px -20px}
-.wp_themeSkin span.mce_col_after {background-position:-680px -20px}
-.wp_themeSkin span.mce_col_before {background-position:-700px -20px}
-.wp_themeSkin span.mce_row_after {background-position:-720px -20px}
-.wp_themeSkin span.mce_row_before {background-position:-740px -20px}
-.wp_themeSkin span.mce_merge_cells {background-position:-760px -20px}
-.wp_themeSkin span.mce_table_props {background-position:-980px -20px}
-.wp_themeSkin span.mce_row_props {background-position:-780px -20px}
-.wp_themeSkin span.mce_split_cells {background-position:-800px -20px}
-.wp_themeSkin span.mce_template {background-position:-820px -20px}
-.wp_themeSkin span.mce_visualchars {background-position:-840px -20px}
-.wp_themeSkin span.mce_abbr {background-position:-860px -20px}
-.wp_themeSkin span.mce_acronym {background-position:-880px -20px}
-.wp_themeSkin span.mce_attribs {background-position:-900px -20px}
-.wp_themeSkin span.mce_cite {background-position:-920px -20px}
-.wp_themeSkin span.mce_del {background-position:-940px -20px}
-.wp_themeSkin span.mce_ins {background-position:-960px -20px}
-.wp_themeSkin span.mce_pagebreak {background-position:0 -40px}
-
-
-/* border */
-.wp_themeSkin .mceExternalToolbar,
-.wp_themeSkin .mceButton,
-.wp_themeSkin a.mceButtonEnabled:hover,
-.wp_themeSkin a.mceButtonActive,
-.wp_themeSkin a.mceButtonSelected,
-.wp_themeSkin .mceListBox .mceText,
-.wp_themeSkin .mceListBox .mceOpen,
-.wp_themeSkin table.mceListBoxEnabled:hover .mceText,
-.wp_themeSkin .mceListBoxHover .mceText,
-.wp_themeSkin .mceListBoxSelected .mceText,
-.wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,
-.wp_themeSkin .mceListBoxHover .mceOpen,
-.wp_themeSkin .mceListBoxSelected .mceOpen,
-.wp_themeSkin select.mceListBox,
-.wp_themeSkin .mceSplitButton a.mceAction,
-.wp_themeSkin .mceSplitButton a.mceOpen,
-.wp_themeSkin .mceSplitButton a.mceOpen:hover,
-.wp_themeSkin .mceSplitButtonSelected a.mceOpen,
-.wp_themeSkin table.mceSplitButtonEnabled:hover a.mceAction,
-.wp_themeSkin .mceSplitButton a.mceAction:hover,
-.wp_themeSkin div.mceColorSplitMenu table,
-.wp_themeSkin .mceColorSplitMenu a,
-.wp_themeSkin .mceColorSplitMenu a.mceMoreColors,
-.wp_themeSkin .mceColorSplitMenu a.mceMoreColors:hover,
-.wp_themeSkin a.mceMoreColors:hover,
-.wp_themeSkin .mceMenu {
-       border-style: solid;
-       border-width: 1px;
-}
+/* not used, included for back-compat, see wp-includes/css/editor-buttons.css */
+@import url("../../../../../../css/editor-buttons.css?ver=20111114");
index d4e8ccdfdd15b0e5f7dc7cde90a4e999d97d9132..1116ff434119bca48c354e851b2619da8ab3d00b 100644 (file)
@@ -1,8 +1,8 @@
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
        <title>{#advanced_dlg.code_title}</title>
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
        <title>{#advanced_dlg.code_title}</title>
-       <script type="text/javascript" src="../../tiny_mce_popup.js?ver=342-20110407"></script>
-       <script type="text/javascript" src="js/source_editor.js?ver=342-20110407"></script>
+       <script type="text/javascript" src="../../tiny_mce_popup.js?ver=345-20110908"></script>
+       <script type="text/javascript" src="js/source_editor.js?ver=345-20110908"></script>
 </head>
 <body onresize="resizeInputs();" style="display:none; overflow:hidden;">
        <form name="source" onsubmit="saveContent();return false;" action="#">
 </head>
 <body onresize="resizeInputs();" style="display:none; overflow:hidden;">
        <form name="source" onsubmit="saveContent();return false;" action="#">
index d3871e2eb7c942498df5fe08a7197972416899a4..808f9ee465e178bb394e566f3b398efa91f686bf 100644 (file)
@@ -1 +1 @@
-(function(d){var a=/^\s*|\s*$/g,e,c="B".replace(/A(.)|B/,"$1")==="$1";var b={majorVersion:"3",minorVersion:"4.2",releaseDate:"2011-04-07",_init:function(){var s=this,q=document,o=navigator,g=o.userAgent,m,f,l,k,j,r;s.isOpera=d.opera&&opera.buildNumber;s.isWebKit=/WebKit/.test(g);s.isIE=!s.isWebKit&&!s.isOpera&&(/MSIE/gi).test(g)&&(/Explorer/gi).test(o.appName);s.isIE6=s.isIE&&/MSIE [56]/.test(g);s.isGecko=!s.isWebKit&&/Gecko/.test(g);s.isMac=g.indexOf("Mac")!=-1;s.isAir=/adobeair/i.test(g);s.isIDevice=/(iPad|iPhone)/.test(g);if(d.tinyMCEPreInit){s.suffix=tinyMCEPreInit.suffix;s.baseURL=tinyMCEPreInit.base;s.query=tinyMCEPreInit.query;return}s.suffix="";f=q.getElementsByTagName("base");for(m=0;m<f.length;m++){if(r=f[m].href){if(/^https?:\/\/[^\/]+$/.test(r)){r+="/"}k=r?r.match(/.*\//)[0]:""}}function h(i){if(i.src&&/tiny_mce(|_gzip|_jquery|_prototype|_full)(_dev|_src)?.js/.test(i.src)){if(/_(src|dev)\.js/g.test(i.src)){s.suffix="_src"}if((j=i.src.indexOf("?"))!=-1){s.query=i.src.substring(j+1)}s.baseURL=i.src.substring(0,i.src.lastIndexOf("/"));if(k&&s.baseURL.indexOf("://")==-1&&s.baseURL.indexOf("/")!==0){s.baseURL=k+s.baseURL}return s.baseURL}return null}f=q.getElementsByTagName("script");for(m=0;m<f.length;m++){if(h(f[m])){return}}l=q.getElementsByTagName("head")[0];if(l){f=l.getElementsByTagName("script");for(m=0;m<f.length;m++){if(h(f[m])){return}}}return},is:function(g,f){if(!f){return g!==e}if(f=="array"&&(g.hasOwnProperty&&g instanceof Array)){return true}return typeof(g)==f},makeMap:function(f,j,h){var g;f=f||[];j=j||",";if(typeof(f)=="string"){f=f.split(j)}h=h||{};g=f.length;while(g--){h[f[g]]={}}return h},each:function(i,f,h){var j,g;if(!i){return 0}h=h||i;if(i.length!==e){for(j=0,g=i.length;j<g;j++){if(f.call(h,i[j],j,i)===false){return 0}}}else{for(j in i){if(i.hasOwnProperty(j)){if(f.call(h,i[j],j,i)===false){return 0}}}}return 1},map:function(g,h){var i=[];b.each(g,function(f){i.push(h(f))});return i},grep:function(g,h){var i=[];b.each(g,function(f){if(!h||h(f)){i.push(f)}});return i},inArray:function(g,h){var j,f;if(g){for(j=0,f=g.length;j<f;j++){if(g[j]===h){return j}}}return -1},extend:function(k,j){var h,g,f=arguments;for(h=1,g=f.length;h<g;h++){j=f[h];b.each(j,function(i,l){if(i!==e){k[l]=i}})}return k},trim:function(f){return(f?""+f:"").replace(a,"")},create:function(o,f,j){var n=this,g,i,k,l,h,m=0;o=/^((static) )?([\w.]+)(:([\w.]+))?/.exec(o);k=o[3].match(/(^|\.)(\w+)$/i)[2];i=n.createNS(o[3].replace(/\.\w+$/,""),j);if(i[k]){return}if(o[2]=="static"){i[k]=f;if(this.onCreate){this.onCreate(o[2],o[3],i[k])}return}if(!f[k]){f[k]=function(){};m=1}i[k]=f[k];n.extend(i[k].prototype,f);if(o[5]){g=n.resolve(o[5]).prototype;l=o[5].match(/\.(\w+)$/i)[1];h=i[k];if(m){i[k]=function(){return g[l].apply(this,arguments)}}else{i[k]=function(){this.parent=g[l];return h.apply(this,arguments)}}i[k].prototype[k]=i[k];n.each(g,function(p,q){i[k].prototype[q]=g[q]});n.each(f,function(p,q){if(g[q]){i[k].prototype[q]=function(){this.parent=g[q];return p.apply(this,arguments)}}else{if(q!=k){i[k].prototype[q]=p}}})}n.each(f["static"],function(p,q){i[k][q]=p});if(this.onCreate){this.onCreate(o[2],o[3],i[k].prototype)}},walk:function(i,h,j,g){g=g||this;if(i){if(j){i=i[j]}b.each(i,function(k,f){if(h.call(g,k,f,j)===false){return false}b.walk(k,h,j,g)})}},createNS:function(j,h){var g,f;h=h||d;j=j.split(".");for(g=0;g<j.length;g++){f=j[g];if(!h[f]){h[f]={}}h=h[f]}return h},resolve:function(j,h){var g,f;h=h||d;j=j.split(".");for(g=0,f=j.length;g<f;g++){h=h[j[g]];if(!h){break}}return h},addUnload:function(j,i){var h=this;j={func:j,scope:i||this};if(!h.unloads){function g(){var f=h.unloads,l,m;if(f){for(m in f){l=f[m];if(l&&l.func){l.func.call(l.scope,1)}}if(d.detachEvent){d.detachEvent("onbeforeunload",k);d.detachEvent("onunload",g)}else{if(d.removeEventListener){d.removeEventListener("unload",g,false)}}h.unloads=l=f=w=g=0;if(d.CollectGarbage){CollectGarbage()}}}function k(){var l=document;if(l.readyState=="interactive"){function f(){l.detachEvent("onstop",f);if(g){g()}l=0}if(l){l.attachEvent("onstop",f)}d.setTimeout(function(){if(l){l.detachEvent("onstop",f)}},0)}}if(d.attachEvent){d.attachEvent("onunload",g);d.attachEvent("onbeforeunload",k)}else{if(d.addEventListener){d.addEventListener("unload",g,false)}}h.unloads=[j]}else{h.unloads.push(j)}return j},removeUnload:function(i){var g=this.unloads,h=null;b.each(g,function(j,f){if(j&&j.func==i){g.splice(f,1);h=i;return false}});return h},explode:function(f,g){return f?b.map(f.split(g||","),b.trim):f},_addVer:function(g){var f;if(!this.query){return g}f=(g.indexOf("?")==-1?"?":"&")+this.query;if(g.indexOf("#")==-1){return g+f}return g.replace("#",f+"#")},_replace:function(h,f,g){if(c){return g.replace(h,function(){var l=f,j=arguments,k;for(k=0;k<j.length-2;k++){if(j[k]===e){l=l.replace(new RegExp("\\$"+k,"g"),"")}else{l=l.replace(new RegExp("\\$"+k,"g"),j[k])}}return l})}return g.replace(h,f)}};b._init();d.tinymce=d.tinyMCE=b})(window);tinymce.create("tinymce.util.Dispatcher",{scope:null,listeners:null,Dispatcher:function(a){this.scope=a||this;this.listeners=[]},add:function(a,b){this.listeners.push({cb:a,scope:b||this.scope});return a},addToTop:function(a,b){this.listeners.unshift({cb:a,scope:b||this.scope});return a},remove:function(a){var b=this.listeners,c=null;tinymce.each(b,function(e,d){if(a==e.cb){c=a;b.splice(d,1);return false}});return c},dispatch:function(){var f,d=arguments,e,b=this.listeners,g;for(e=0;e<b.length;e++){g=b[e];f=g.cb.apply(g.scope,d);if(f===false){break}}return f}});(function(){var a=tinymce.each;tinymce.create("tinymce.util.URI",{URI:function(e,g){var f=this,h,d,c;e=tinymce.trim(e);g=f.settings=g||{};if(/^(mailto|tel|news|javascript|about|data):/i.test(e)||/^\s*#/.test(e)){f.source=e;return}if(e.indexOf("/")===0&&e.indexOf("//")!==0){e=(g.base_uri?g.base_uri.protocol||"http":"http")+"://mce_host"+e}if(!/^\w*:?\/\//.test(e)){e=(g.base_uri.protocol||"http")+"://mce_host"+f.toAbsPath(g.base_uri.path,e)}e=e.replace(/@@/g,"(mce_at)");e=/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/.exec(e);a(["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],function(b,j){var k=e[j];if(k){k=k.replace(/\(mce_at\)/g,"@@")}f[b]=k});if(c=g.base_uri){if(!f.protocol){f.protocol=c.protocol}if(!f.userInfo){f.userInfo=c.userInfo}if(!f.port&&f.host=="mce_host"){f.port=c.port}if(!f.host||f.host=="mce_host"){f.host=c.host}f.source=""}},setPath:function(c){var b=this;c=/^(.*?)\/?(\w+)?$/.exec(c);b.path=c[0];b.directory=c[1];b.file=c[2];b.source="";b.getURI()},toRelative:function(b){var c=this,d;if(b==="./"){return b}b=new tinymce.util.URI(b,{base_uri:c});if((b.host!="mce_host"&&c.host!=b.host&&b.host)||c.port!=b.port||c.protocol!=b.protocol){return b.getURI()}d=c.toRelPath(c.path,b.path);if(b.query){d+="?"+b.query}if(b.anchor){d+="#"+b.anchor}return d},toAbsolute:function(b,c){var b=new tinymce.util.URI(b,{base_uri:this});return b.getURI(this.host==b.host&&this.protocol==b.protocol?c:0)},toRelPath:function(g,h){var c,f=0,d="",e,b;g=g.substring(0,g.lastIndexOf("/"));g=g.split("/");c=h.split("/");if(g.length>=c.length){for(e=0,b=g.length;e<b;e++){if(e>=c.length||g[e]!=c[e]){f=e+1;break}}}if(g.length<c.length){for(e=0,b=c.length;e<b;e++){if(e>=g.length||g[e]!=c[e]){f=e+1;break}}}if(f==1){return h}for(e=0,b=g.length-(f-1);e<b;e++){d+="../"}for(e=f-1,b=c.length;e<b;e++){if(e!=f-1){d+="/"+c[e]}else{d+=c[e]}}return d},toAbsPath:function(e,f){var c,b=0,h=[],d,g;d=/\/$/.test(f)?"/":"";e=e.split("/");f=f.split("/");a(e,function(i){if(i){h.push(i)}});e=h;for(c=f.length-1,h=[];c>=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)}})})();(function(){function serialize(o,quote){var i,v,t;quote=quote||'"';if(o==null){return"null"}t=typeof o;if(t=="string"){v="\bb\tt\nn\ff\rr\"\"''\\\\";return quote+o.replace(/([\u0080-\uFFFF\x00-\x1f\"\'\\])/g,function(a,b){if(quote==='"'&&a==="'"){return a}i=v.indexOf(b);if(i+1){return"\\"+v.charAt(i+1)}a=b.charCodeAt().toString(16);return"\\u"+"0000".substring(a.length)+a})+quote}if(t=="object"){if(o.hasOwnProperty&&o instanceof Array){for(i=0,v="[";i<o.length;i++){v+=(i>0?",":"")+serialize(o[i],quote)}return v+"]"}v="{";for(i in o){v+=typeof o[i]!="function"?(v.length>1?","+quote:quote)+i+quote+":"+serialize(o[i],quote):""}return v+"}"}return""+o}tinymce.util.JSON={serialize:serialize,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){if(e){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(j){var a,g,d,k=/[&\"\u007E-\uD7FF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,b=/[<>&\u007E-\uD7FF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,f=/[<>&\"\']/g,c=/&(#)?([\w]+);/g,i={128:"\u20AC",130:"\u201A",131:"\u0192",132:"\u201E",133:"\u2026",134:"\u2020",135:"\u2021",136:"\u02C6",137:"\u2030",138:"\u0160",139:"\u2039",140:"\u0152",142:"\u017D",145:"\u2018",146:"\u2019",147:"\u201C",148:"\u201D",149:"\u2022",150:"\u2013",151:"\u2014",152:"\u02DC",153:"\u2122",154:"\u0161",155:"\u203A",156:"\u0153",158:"\u017E",159:"\u0178"};g={'"':"&quot;","'":"&#39;","<":"&lt;",">":"&gt;","&":"&amp;"};d={"&lt;":"<","&gt;":">","&amp;":"&","&quot;":'"',"&apos;":"'"};function h(l){var m;m=document.createElement("div");m.innerHTML=l;return m.textContent||m.innerText||l}function e(m,p){var n,o,l,q={};if(m){m=m.split(",");p=p||10;for(n=0;n<m.length;n+=2){o=String.fromCharCode(parseInt(m[n],p));if(!g[o]){l="&"+m[n+1]+";";q[o]=l;q[l]=o}}return q}}a=e("50,nbsp,51,iexcl,52,cent,53,pound,54,curren,55,yen,56,brvbar,57,sect,58,uml,59,copy,5a,ordf,5b,laquo,5c,not,5d,shy,5e,reg,5f,macr,5g,deg,5h,plusmn,5i,sup2,5j,sup3,5k,acute,5l,micro,5m,para,5n,middot,5o,cedil,5p,sup1,5q,ordm,5r,raquo,5s,frac14,5t,frac12,5u,frac34,5v,iquest,60,Agrave,61,Aacute,62,Acirc,63,Atilde,64,Auml,65,Aring,66,AElig,67,Ccedil,68,Egrave,69,Eacute,6a,Ecirc,6b,Euml,6c,Igrave,6d,Iacute,6e,Icirc,6f,Iuml,6g,ETH,6h,Ntilde,6i,Ograve,6j,Oacute,6k,Ocirc,6l,Otilde,6m,Ouml,6n,times,6o,Oslash,6p,Ugrave,6q,Uacute,6r,Ucirc,6s,Uuml,6t,Yacute,6u,THORN,6v,szlig,70,agrave,71,aacute,72,acirc,73,atilde,74,auml,75,aring,76,aelig,77,ccedil,78,egrave,79,eacute,7a,ecirc,7b,euml,7c,igrave,7d,iacute,7e,icirc,7f,iuml,7g,eth,7h,ntilde,7i,ograve,7j,oacute,7k,ocirc,7l,otilde,7m,ouml,7n,divide,7o,oslash,7p,ugrave,7q,uacute,7r,ucirc,7s,uuml,7t,yacute,7u,thorn,7v,yuml,ci,fnof,sh,Alpha,si,Beta,sj,Gamma,sk,Delta,sl,Epsilon,sm,Zeta,sn,Eta,so,Theta,sp,Iota,sq,Kappa,sr,Lambda,ss,Mu,st,Nu,su,Xi,sv,Omicron,t0,Pi,t1,Rho,t3,Sigma,t4,Tau,t5,Upsilon,t6,Phi,t7,Chi,t8,Psi,t9,Omega,th,alpha,ti,beta,tj,gamma,tk,delta,tl,epsilon,tm,zeta,tn,eta,to,theta,tp,iota,tq,kappa,tr,lambda,ts,mu,tt,nu,tu,xi,tv,omicron,u0,pi,u1,rho,u2,sigmaf,u3,sigma,u4,tau,u5,upsilon,u6,phi,u7,chi,u8,psi,u9,omega,uh,thetasym,ui,upsih,um,piv,812,bull,816,hellip,81i,prime,81j,Prime,81u,oline,824,frasl,88o,weierp,88h,image,88s,real,892,trade,89l,alefsym,8cg,larr,8ch,uarr,8ci,rarr,8cj,darr,8ck,harr,8dl,crarr,8eg,lArr,8eh,uArr,8ei,rArr,8ej,dArr,8ek,hArr,8g0,forall,8g2,part,8g3,exist,8g5,empty,8g7,nabla,8g8,isin,8g9,notin,8gb,ni,8gf,prod,8gh,sum,8gi,minus,8gn,lowast,8gq,radic,8gt,prop,8gu,infin,8h0,ang,8h7,and,8h8,or,8h9,cap,8ha,cup,8hb,int,8hk,there4,8hs,sim,8i5,cong,8i8,asymp,8j0,ne,8j1,equiv,8j4,le,8j5,ge,8k2,sub,8k3,sup,8k4,nsub,8k6,sube,8k7,supe,8kl,oplus,8kn,otimes,8l5,perp,8m5,sdot,8o8,lceil,8o9,rceil,8oa,lfloor,8ob,rfloor,8p9,lang,8pa,rang,9ea,loz,9j0,spades,9j3,clubs,9j5,hearts,9j6,diams,ai,OElig,aj,oelig,b0,Scaron,b1,scaron,bo,Yuml,m6,circ,ms,tilde,802,ensp,803,emsp,809,thinsp,80c,zwnj,80d,zwj,80e,lrm,80f,rlm,80j,ndash,80k,mdash,80o,lsquo,80p,rsquo,80q,sbquo,80s,ldquo,80t,rdquo,80u,bdquo,810,dagger,811,Dagger,81g,permil,81p,lsaquo,81q,rsaquo,85c,euro",32);j.html=j.html||{};j.html.Entities={encodeRaw:function(m,l){return m.replace(l?k:b,function(n){return g[n]||n})},encodeAllRaw:function(l){return(""+l).replace(f,function(m){return g[m]||m})},encodeNumeric:function(m,l){return m.replace(l?k:b,function(n){if(n.length>1){return"&#"+(((n.charCodeAt(0)-55296)*1024)+(n.charCodeAt(1)-56320)+65536)+";"}return g[n]||"&#"+n.charCodeAt(0)+";"})},encodeNamed:function(n,l,m){m=m||a;return n.replace(l?k:b,function(o){return g[o]||m[o]||o})},getEncodeFunc:function(l,o){var p=j.html.Entities;o=e(o)||a;function m(r,q){return r.replace(q?k:b,function(s){return g[s]||o[s]||"&#"+s.charCodeAt(0)+";"||s})}function n(r,q){return p.encodeNamed(r,q,o)}l=j.makeMap(l.replace(/\+/g,","));if(l.named&&l.numeric){return m}if(l.named){if(o){return n}return p.encodeNamed}if(l.numeric){return p.encodeNumeric}return p.encodeRaw},decode:function(l){return l.replace(c,function(n,m,o){if(m){o=parseInt(o,10);if(o>65535){o-=65536;return String.fromCharCode(55296+(o>>10),56320+(o&1023))}else{return i[o]||String.fromCharCode(o)}}return d[n]||a[n]||h(n)})}}})(tinymce);tinymce.html.Styles=function(d,f){var k=/rgb\s*\(\s*([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\s*\)/gi,h=/(?:url(?:(?:\(\s*\"([^\"]+)\"\s*\))|(?:\(\s*\'([^\']+)\'\s*\))|(?:\(\s*([^)\s]+)\s*\))))|(?:\'([^\']+)\')|(?:\"([^\"]+)\")/gi,b=/\s*([^:]+):\s*([^;]+);?/g,l=/\s+$/,m=/rgb/,e,g,a={},j;d=d||{};j="\\\" \\' \\; \\: ; : _".split(" ");for(g=0;g<j.length;g++){a[j[g]]="_"+g;a["_"+g]=j[g]}function c(n,q,p,i){function o(r){r=parseInt(r).toString(16);return r.length>1?r:"0"+r}return"#"+o(q)+o(p)+o(i)}return{toHex:function(i){return i.replace(k,c)},parse:function(r){var y={},p,n,v,q,u=d.url_converter,x=d.url_converter_scope||this;function o(C,F){var E,B,A,D;E=y[C+"-top"+F];if(!E){return}B=y[C+"-right"+F];if(E!=B){return}A=y[C+"-bottom"+F];if(B!=A){return}D=y[C+"-left"+F];if(A!=D){return}y[C+F]=D;delete y[C+"-top"+F];delete y[C+"-right"+F];delete y[C+"-bottom"+F];delete y[C+"-left"+F]}function t(B){var C=y[B],A;if(!C||C.indexOf(" ")<0){return}C=C.split(" ");A=C.length;while(A--){if(C[A]!==C[0]){return false}}y[B]=C[0];return true}function z(C,B,A,D){if(!t(B)){return}if(!t(A)){return}if(!t(D)){return}y[C]=y[B]+" "+y[A]+" "+y[D];delete y[B];delete y[A];delete y[D]}function s(A){q=true;return a[A]}function i(B,A){if(q){B=B.replace(/_[0-9]/g,function(C){return a[C]})}if(!A){B=B.replace(/\\([\'\";:])/g,"$1")}return B}if(r){r=r.replace(/\\[\"\';:_]/g,s).replace(/\"[^\"]+\"|\'[^\']+\'/g,function(A){return A.replace(/[;:]/g,s)});while(p=b.exec(r)){n=p[1].replace(l,"").toLowerCase();v=p[2].replace(l,"");if(n&&v.length>0){if(n==="font-weight"&&v==="700"){v="bold"}else{if(n==="color"||n==="background-color"){v=v.toLowerCase()}}v=v.replace(k,c);v=v.replace(h,function(B,A,E,D,F,C){F=F||C;if(F){F=i(F);return"'"+F.replace(/\'/g,"\\'")+"'"}A=i(A||E||D);if(u){A=u.call(x,A,"style")}return"url('"+A.replace(/\'/g,"\\'")+"')"});y[n]=q?i(v,true):v}b.lastIndex=p.index+p[0].length}o("border","");o("border","-width");o("border","-color");o("border","-style");o("padding","");o("margin","");z("border","border-width","border-style","border-color");if(y.border==="medium none"){delete y.border}}return y},serialize:function(p,r){var o="",n,q;function i(t){var x,u,s,t,v;x=f.styles[t];if(x){for(u=0,s=x.length;u<s;u++){t=x[u];v=p[t];if(v!==e&&v.length>0){o+=(o.length>0?" ":"")+t+": "+v+";"}}}}if(r&&f&&f.styles){i("*");i(n)}else{for(n in p){q=p[n];if(q!==e&&q.length>0){o+=(o.length>0?" ":"")+n+": "+q+";"}}}return o}}};(function(l){var g={},i,k,f,d,b,e,c=l.makeMap,j=l.each;function h(n,m){return n.split(m||",")}function a(q,p){var n,o={};function m(r){return r.replace(/[A-Z]+/g,function(s){return m(q[s])})}for(n in q){if(q.hasOwnProperty(n)){q[n]=m(q[n])}}m(p).replace(/#/g,"#text").replace(/(\w+)\[([^\]]+)\]\[([^\]]*)\]/g,function(u,s,r,t){r=h(r,"|");o[s]={attributes:c(r),attributesOrder:r,children:c(t,"|",{"#comment":{}})}});return o}k="h1,h2,h3,h4,h5,h6,hr,p,div,address,pre,form,table,tbody,thead,tfoot,th,tr,td,li,ol,ul,caption,blockquote,center,dl,dt,dd,dir,fieldset,noscript,menu,isindex,samp,header,footer,article,section,hgroup";k=c(k,",",c(k.toUpperCase()));g=a({Z:"H|K|N|O|P",Y:"X|form|R|Q",ZG:"E|span|width|align|char|charoff|valign",X:"p|T|div|U|W|isindex|fieldset|table",ZF:"E|align|char|charoff|valign",W:"pre|hr|blockquote|address|center|noframes",ZE:"abbr|axis|headers|scope|rowspan|colspan|align|char|charoff|valign|nowrap|bgcolor|width|height",ZD:"[E][S]",U:"ul|ol|dl|menu|dir",ZC:"p|Y|div|U|W|table|br|span|bdo|object|applet|img|map|K|N|Q",T:"h1|h2|h3|h4|h5|h6",ZB:"X|S|Q",S:"R|P",ZA:"a|G|J|M|O|P",R:"a|H|K|N|O",Q:"noscript|P",P:"ins|del|script",O:"input|select|textarea|label|button",N:"M|L",M:"em|strong|dfn|code|q|samp|kbd|var|cite|abbr|acronym",L:"sub|sup",K:"J|I",J:"tt|i|b|u|s|strike",I:"big|small|font|basefont",H:"G|F",G:"br|span|bdo",F:"object|applet|img|map|iframe",E:"A|B|C",D:"accesskey|tabindex|onfocus|onblur",C:"onclick|ondblclick|onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup",B:"lang|xml:lang|dir",A:"id|class|style|title"},"script[id|charset|type|language|src|defer|xml:space][]style[B|id|type|media|title|xml:space][]object[E|declare|classid|codebase|data|type|codetype|archive|standby|width|height|usemap|name|tabindex|align|border|hspace|vspace][#|param|Y]param[id|name|value|valuetype|type][]p[E|align][#|S]a[E|D|charset|type|name|href|hreflang|rel|rev|shape|coords|target][#|Z]br[A|clear][]span[E][#|S]bdo[A|C|B][#|S]applet[A|codebase|archive|code|object|alt|name|width|height|align|hspace|vspace][#|param|Y]h1[E|align][#|S]img[E|src|alt|name|longdesc|width|height|usemap|ismap|align|border|hspace|vspace][]map[B|C|A|name][X|form|Q|area]h2[E|align][#|S]iframe[A|longdesc|name|src|frameborder|marginwidth|marginheight|scrolling|align|width|height][#|Y]h3[E|align][#|S]tt[E][#|S]i[E][#|S]b[E][#|S]u[E][#|S]s[E][#|S]strike[E][#|S]big[E][#|S]small[E][#|S]font[A|B|size|color|face][#|S]basefont[id|size|color|face][]em[E][#|S]strong[E][#|S]dfn[E][#|S]code[E][#|S]q[E|cite][#|S]samp[E][#|S]kbd[E][#|S]var[E][#|S]cite[E][#|S]abbr[E][#|S]acronym[E][#|S]sub[E][#|S]sup[E][#|S]input[E|D|type|name|value|checked|disabled|readonly|size|maxlength|src|alt|usemap|onselect|onchange|accept|align][]select[E|name|size|multiple|disabled|tabindex|onfocus|onblur|onchange][optgroup|option]optgroup[E|disabled|label][option]option[E|selected|disabled|label|value][]textarea[E|D|name|rows|cols|disabled|readonly|onselect|onchange][]label[E|for|accesskey|onfocus|onblur][#|S]button[E|D|name|value|type|disabled][#|p|T|div|U|W|table|G|object|applet|img|map|K|N|Q]h4[E|align][#|S]ins[E|cite|datetime][#|Y]h5[E|align][#|S]del[E|cite|datetime][#|Y]h6[E|align][#|S]div[E|align][#|Y]ul[E|type|compact][li]li[E|type|value][#|Y]ol[E|type|compact|start][li]dl[E|compact][dt|dd]dt[E][#|S]dd[E][#|Y]menu[E|compact][li]dir[E|compact][li]pre[E|width|xml:space][#|ZA]hr[E|align|noshade|size|width][]blockquote[E|cite][#|Y]address[E][#|S|p]center[E][#|Y]noframes[E][#|Y]isindex[A|B|prompt][]fieldset[E][#|legend|Y]legend[E|accesskey|align][#|S]table[E|summary|width|border|frame|rules|cellspacing|cellpadding|align|bgcolor][caption|col|colgroup|thead|tfoot|tbody|tr]caption[E|align][#|S]col[ZG][]colgroup[ZG][col]thead[ZF][tr]tr[ZF|bgcolor][th|td]th[E|ZE][#|Y]form[E|action|method|name|enctype|onsubmit|onreset|accept|accept-charset|target][#|X|R|Q]noscript[E][#|Y]td[E|ZE][#|Y]tfoot[ZF][tr]tbody[ZF][tr]area[E|D|shape|coords|href|nohref|alt|target][]base[id|href|target][]body[E|onload|onunload|background|bgcolor|text|link|vlink|alink][#|Y]");i=c("checked,compact,declare,defer,disabled,ismap,multiple,nohref,noresize,noshade,nowrap,readonly,selected,preload,autoplay,loop,controls");f=c("area,base,basefont,br,col,frame,hr,img,input,isindex,link,meta,param,embed,source");d=l.extend(c("td,th,iframe,video,object"),f);b=c("pre,script,style");e=c("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr");l.html.Schema=function(p){var x=this,m={},n={},u=[],o;p=p||{};if(p.verify_html===false){p.valid_elements="*[*]"}if(p.valid_styles){o={};j(p.valid_styles,function(z,y){o[y]=l.explode(z)})}function v(y){return new RegExp("^"+y.replace(/([?+*])/g,".$1")+"$")}function r(F){var E,A,T,P,U,z,C,O,R,K,S,W,I,D,Q,y,M,B,V,X,J,N,H=/^([#+-])?([^\[\/]+)(?:\/([^\[]+))?(?:\[([^\]]+)\])?$/,L=/^([!\-])?(\w+::\w+|[^=:<]+)?(?:([=:<])(.*))?$/,G=/[*?+]/;if(F){F=h(F);if(m["@"]){M=m["@"].attributes;B=m["@"].attributesOrder}for(E=0,A=F.length;E<A;E++){z=H.exec(F[E]);if(z){Q=z[1];K=z[2];y=z[3];R=z[4];I={};D=[];C={attributes:I,attributesOrder:D};if(Q==="#"){C.paddEmpty=true}if(Q==="-"){C.removeEmpty=true}if(M){for(X in M){I[X]=M[X]}D.push.apply(D,B)}if(R){R=h(R,"|");for(T=0,P=R.length;T<P;T++){z=L.exec(R[T]);if(z){O={};W=z[1];S=z[2].replace(/::/g,":");Q=z[3];N=z[4];if(W==="!"){C.attributesRequired=C.attributesRequired||[];C.attributesRequired.push(S);O.required=true}if(W==="-"){delete I[S];D.splice(l.inArray(D,S),1);continue}if(Q){if(Q==="="){C.attributesDefault=C.attributesDefault||[];C.attributesDefault.push({name:S,value:N});O.defaultValue=N}if(Q===":"){C.attributesForced=C.attributesForced||[];C.attributesForced.push({name:S,value:N});O.forcedValue=N}if(Q==="<"){O.validValues=c(N,"?")}}if(G.test(S)){C.attributePatterns=C.attributePatterns||[];O.pattern=v(S);C.attributePatterns.push(O)}else{if(!I[S]){D.push(S)}I[S]=O}}}}if(!M&&K=="@"){M=I;B=D}if(y){C.outputName=K;m[y]=C}if(G.test(K)){C.pattern=v(K);u.push(C)}else{m[K]=C}}}}}function t(y){m={};u=[];r(y);j(g,function(A,z){n[z]=A.children})}function q(z){var y=/^(~)?(.+)$/;if(z){j(h(z),function(C){var B=y.exec(C),D=B[1]==="~"?"span":"div",A=B[2];n[A]=n[D];j(n,function(E,F){if(E[D]){E[A]=E[D]}})})}}function s(z){var y=/^([+\-]?)(\w+)\[([^\]]+)\]$/;if(z){j(h(z),function(D){var C=y.exec(D),A,B;if(C){B=C[1];if(B){A=n[C[2]]}else{A=n[C[2]]={"#comment":{}}}A=n[C[2]];j(h(C[3],"|"),function(E){if(B==="-"){delete A[E]}else{A[E]={}}})}})}}if(!p.valid_elements){j(g,function(z,y){m[y]={attributes:z.attributes,attributesOrder:z.attributesOrder};n[y]=z.children});j(h("strong/b,em/i"),function(y){y=h(y,"/");m[y[1]].outputName=y[0]});m.img.attributesDefault=[{name:"alt",value:""}];j(h("ol,ul,li,sub,sup,blockquote,tr,div,span,font,a,table,tbody"),function(y){m[y].removeEmpty=true});j(h("p,h1,h2,h3,h4,h5,h6,th,td,pre,div,address,caption"),function(y){m[y].paddEmpty=true})}else{t(p.valid_elements)}q(p.custom_elements);s(p.valid_children);r(p.extended_valid_elements);s("+ol[ul|ol],+ul[ul|ol]");if(p.invalid_elements){l.each(l.explode(p.invalid_elements),function(y){if(m[y]){delete m[y]}})}x.children=n;x.styles=o;x.getBoolAttrs=function(){return i};x.getBlockElements=function(){return k};x.getShortEndedElements=function(){return f};x.getSelfClosingElements=function(){return e};x.getNonEmptyElements=function(){return d};x.getWhiteSpaceElements=function(){return b};x.isValidChild=function(y,A){var z=n[y];return !!(z&&z[A])};x.getElementRule=function(y){var A=m[y],z;if(A){return A}z=u.length;while(z--){A=u[z];if(A.pattern.test(y)){return A}}};x.addValidElements=r;x.setValidElements=t;x.addCustomElements=q;x.addValidChildren=s};l.html.Schema.boolAttrMap=i;l.html.Schema.blockElementsMap=k})(tinymce);(function(a){a.html.SaxParser=function(c,e){var b=this,d=function(){};c=c||{};b.schema=e=e||new a.html.Schema();if(c.fix_self_closing!==false){c.fix_self_closing=true}a.each("comment cdata text start end pi doctype".split(" "),function(f){if(f){b[f]=c[f]||d}});b.parse=function(q){var A=this,f,m=0,G,j,l=[],B,K,t,N,F,k,p,x,I,r,E,o,J,n,H,M,L,z,D,h,g,u,s=0,v=a.html.Entities.decode,y;function C(O){var Q,P;Q=l.length;while(Q--){if(l[Q].name===O){break}}if(Q>=0){for(P=l.length-1;P>=Q;P--){O=l[P];if(O.valid){A.end(O.name)}}l.length=Q}}D=new RegExp("<(?:(?:!--([\\w\\W]*?)-->)|(?:!\\[CDATA\\[([\\w\\W]*?)\\]\\]>)|(?:!DOCTYPE([\\w\\W]*?)>)|(?:\\?([^\\s\\/<>]+) ?([\\w\\W]*?)[?/]>)|(?:\\/([^>]+)>)|(?:([^\\s\\/<>]+)\\s*((?:[^\"'>]+(?:(?:\"[^\"]*\")|(?:'[^']*')|[^>]*))*)>))","g");h=/([\w:\-]+)(?:\s*=\s*(?:(?:\"((?:\\.|[^\"])*)\")|(?:\'((?:\\.|[^\'])*)\')|([^>\s]+)))?/g;g={script:/<\/script[^>]*>/gi,style:/<\/style[^>]*>/gi,noscript:/<\/noscript[^>]*>/gi};F=e.getShortEndedElements();z=e.getSelfClosingElements();k=e.getBoolAttrs();x=c.validate;y=c.fix_self_closing;while(f=D.exec(q)){if(m<f.index){A.text(v(q.substr(m,f.index-m)))}if(G=f[6]){C(G.toLowerCase())}else{if(G=f[7]){G=G.toLowerCase();p=G in F;if(y&&z[G]&&l.length>0&&l[l.length-1].name===G){C(G)}if(!x||(I=e.getElementRule(G))){r=true;if(x){J=I.attributes;n=I.attributePatterns}if(o=f[8]){B=[];B.map={};o.replace(h,function(P,O,T,S,R){var U,Q;O=O.toLowerCase();T=O in k?O:v(T||S||R||"");if(x&&O.indexOf("data-")!==0){U=J[O];if(!U&&n){Q=n.length;while(Q--){U=n[Q];if(U.pattern.test(O)){break}}if(Q===-1){U=null}}if(!U){return}if(U.validValues&&!(T in U.validValues)){return}}B.map[O]=T;B.push({name:O,value:T})})}else{B=[];B.map={}}if(x){H=I.attributesRequired;M=I.attributesDefault;L=I.attributesForced;if(L){K=L.length;while(K--){E=L[K];N=E.name;u=E.value;if(u==="{$uid}"){u="mce_"+s++}B.map[N]=u;B.push({name:N,value:u})}}if(M){K=M.length;while(K--){E=M[K];N=E.name;if(!(N in B.map)){u=E.value;if(u==="{$uid}"){u="mce_"+s++}B.map[N]=u;B.push({name:N,value:u})}}}if(H){K=H.length;while(K--){if(H[K] in B.map){break}}if(K===-1){r=false}}if(B.map["data-mce-bogus"]){r=false}}if(r){A.start(G,B,p)}}else{r=false}if(j=g[G]){j.lastIndex=m=f.index+f[0].length;if(f=j.exec(q)){if(r){t=q.substr(m,f.index-m)}m=f.index+f[0].length}else{t=q.substr(m);m=q.length}if(r&&t.length>0){A.text(t,true)}if(r){A.end(G)}D.lastIndex=m;continue}if(!p){if(!o||o.indexOf("/")!=o.length-1){l.push({name:G,valid:r})}else{if(r){A.end(G)}}}}else{if(G=f[1]){A.comment(G)}else{if(G=f[2]){A.cdata(G)}else{if(G=f[3]){A.doctype(G)}else{if(G=f[4]){A.pi(G,f[5])}}}}}}m=f.index+f[0].length}if(m<q.length){A.text(v(q.substr(m)))}for(K=l.length-1;K>=0;K--){G=l[K];if(G.valid){A.end(G.name)}}}}})(tinymce);(function(d){var c=/^[ \t\r\n]*$/,e={"#text":3,"#comment":8,"#cdata":4,"#pi":7,"#doctype":10,"#document-fragment":11};function a(k,l,j){var i,h,f=j?"lastChild":"firstChild",g=j?"prev":"next";if(k[f]){return k[f]}if(k!==l){i=k[g];if(i){return i}for(h=k.parent;h&&h!==l;h=h.parent){i=h[g];if(i){return i}}}}function b(f,g){this.name=f;this.type=g;if(g===1){this.attributes=[];this.attributes.map={}}}d.extend(b.prototype,{replace:function(g){var f=this;if(g.parent){g.remove()}f.insert(g,f);f.remove();return f},attr:function(h,l){var f=this,g,j,k;if(typeof h!=="string"){for(j in h){f.attr(j,h[j])}return f}if(g=f.attributes){if(l!==k){if(l===null){if(h in g.map){delete g.map[h];j=g.length;while(j--){if(g[j].name===h){g=g.splice(j,1);return f}}}return f}if(h in g.map){j=g.length;while(j--){if(g[j].name===h){g[j].value=l;break}}}else{g.push({name:h,value:l})}g.map[h]=l;return f}else{return g.map[h]}}},clone:function(){var g=this,n=new b(g.name,g.type),h,f,m,j,k;if(m=g.attributes){k=[];k.map={};for(h=0,f=m.length;h<f;h++){j=m[h];if(j.name!=="id"){k[k.length]={name:j.name,value:j.value};k.map[j.name]=j.value}}n.attributes=k}n.value=g.value;n.shortEnded=g.shortEnded;return n},wrap:function(g){var f=this;f.parent.insert(g,f);g.append(f);return f},unwrap:function(){var f=this,h,g;for(h=f.firstChild;h;){g=h.next;f.insert(h,f,true);h=g}f.remove()},remove:function(){var f=this,h=f.parent,g=f.next,i=f.prev;if(h){if(h.firstChild===f){h.firstChild=g;if(g){g.prev=null}}else{i.next=g}if(h.lastChild===f){h.lastChild=i;if(i){i.next=null}}else{g.prev=i}f.parent=f.next=f.prev=null}return f},append:function(h){var f=this,g;if(h.parent){h.remove()}g=f.lastChild;if(g){g.next=h;h.prev=g;f.lastChild=h}else{f.lastChild=f.firstChild=h}h.parent=f;return h},insert:function(h,f,i){var g;if(h.parent){h.remove()}g=f.parent||this;if(i){if(f===g.firstChild){g.firstChild=h}else{f.prev.next=h}h.prev=f.prev;h.next=f;f.prev=h}else{if(f===g.lastChild){g.lastChild=h}else{f.next.prev=h}h.next=f.next;h.prev=f;f.next=h}h.parent=g;return h},getAll:function(g){var f=this,h,i=[];for(h=f.firstChild;h;h=a(h,f)){if(h.name===g){i.push(h)}}return i},empty:function(){var g=this,f,h,j;if(g.firstChild){f=[];for(j=g.firstChild;j;j=a(j,g)){f.push(j)}h=f.length;while(h--){j=f[h];j.parent=j.firstChild=j.lastChild=j.next=j.prev=null}}g.firstChild=g.lastChild=null;return g},isEmpty:function(k){var f=this,j=f.firstChild,h,g;if(j){do{if(j.type===1){if(j.attributes.map["data-mce-bogus"]){continue}if(k[j.name]){return false}h=j.attributes.length;while(h--){g=j.attributes[h].name;if(g==="name"||g.indexOf("data-")===0){return false}}}if((j.type===3&&!c.test(j.value))){return false}}while(j=a(j,f))}return true}});d.extend(b,{create:function(g,f){var i,h;i=new b(g,e[g]||1);if(f){for(h in f){i.attr(h,f[h])}}return i}});d.html.Node=b})(tinymce);(function(b){var a=b.html.Node;b.html.DomParser=function(g,h){var f=this,e={},d=[],i={},c={};g=g||{};g.validate="validate" in g?g.validate:true;g.root_name=g.root_name||"body";f.schema=h=h||new b.html.Schema();function j(m){var o,p,x,v,z,n,q,l,t,u,k,s,y,r;s=b.makeMap("tr,td,th,tbody,thead,tfoot,table");k=h.getNonEmptyElements();for(o=0;o<m.length;o++){p=m[o];if(!p.parent){continue}v=[p];for(x=p.parent;x&&!h.isValidChild(x.name,p.name)&&!s[x.name];x=x.parent){v.push(x)}if(x&&v.length>1){v.reverse();z=n=f.filterNode(v[0].clone());for(t=0;t<v.length-1;t++){if(h.isValidChild(n.name,v[t].name)){q=f.filterNode(v[t].clone());n.append(q)}else{q=n}for(l=v[t].firstChild;l&&l!=v[t+1];){r=l.next;q.append(l);l=r}n=q}if(!z.isEmpty(k)){x.insert(z,v[0],true);x.insert(p,z)}else{x.insert(p,v[0],true)}x=v[0];if(x.isEmpty(k)||x.firstChild===x.lastChild&&x.firstChild.name==="br"){x.empty().remove()}}else{if(p.parent){if(p.name==="li"){y=p.prev;if(y&&(y.name==="ul"||y.name==="ul")){y.append(p);continue}y=p.next;if(y&&(y.name==="ul"||y.name==="ul")){y.insert(p,y.firstChild,true);continue}p.wrap(f.filterNode(new a("ul",1)));continue}if(h.isValidChild(p.parent.name,"div")&&h.isValidChild("div",p.name)){p.wrap(f.filterNode(new a("div",1)))}else{if(p.name==="style"||p.name==="script"){p.empty().remove()}else{p.unwrap()}}}}}}f.filterNode=function(m){var l,k,n;if(k in e){n=i[k];if(n){n.push(m)}else{i[k]=[m]}}l=d.length;while(l--){k=d[l].name;if(k in m.attributes.map){n=c[k];if(n){n.push(m)}else{c[k]=[m]}}}return m};f.addNodeFilter=function(k,l){b.each(b.explode(k),function(m){var n=e[m];if(!n){e[m]=n=[]}n.push(l)})};f.addAttributeFilter=function(k,l){b.each(b.explode(k),function(m){var n;for(n=0;n<d.length;n++){if(d[n].name===m){d[n].callbacks.push(l);return}}d.push({name:m,callbacks:[l]})})};f.parse=function(u,m){var n,F,z,y,B,A,v,q,D,I,x,o,C,H=[],s,k,r,p,t;m=m||{};i={};c={};o=b.extend(b.makeMap("script,style,head,html,body,title,meta,param"),h.getBlockElements());t=h.getNonEmptyElements();p=h.children;x=g.validate;r=h.getWhiteSpaceElements();C=/^[ \t\r\n]+/;s=/[ \t\r\n]+$/;k=/[ \t\r\n]+/g;function G(l,J){var K=new a(l,J),L;if(l in e){L=i[l];if(L){L.push(K)}else{i[l]=[K]}}return K}function E(K){var L,l,J;for(L=K.prev;L&&L.type===3;){l=L.value.replace(s,"");if(l.length>0){L.value=l;L=L.prev}else{J=L.prev;L.remove();L=J}}}n=new b.html.SaxParser({validate:x,fix_self_closing:!x,cdata:function(l){z.append(G("#cdata",4)).value=l},text:function(K,l){var J;if(!r[z.name]){K=K.replace(k," ");if(z.lastChild&&o[z.lastChild.name]){K=K.replace(C,"")}}if(K.length!==0){J=G("#text",3);J.raw=!!l;z.append(J).value=K}},comment:function(l){z.append(G("#comment",8)).value=l},pi:function(l,J){z.append(G(l,7)).value=J;E(z)},doctype:function(J){var l;l=z.append(G("#doctype",10));l.value=J;E(z)},start:function(l,R,K){var P,M,L,J,N,S,Q,O;L=x?h.getElementRule(l):{};if(L){P=G(L.outputName||l,1);P.attributes=R;P.shortEnded=K;z.append(P);O=p[z.name];if(O&&p[P.name]&&!O[P.name]){H.push(P)}M=d.length;while(M--){N=d[M].name;if(N in R.map){D=c[N];if(D){D.push(P)}else{c[N]=[P]}}}if(o[l]){E(P)}if(!K){z=P}}},end:function(l){var N,K,M,J,L;K=x?h.getElementRule(l):{};if(K){if(o[l]){if(!r[z.name]){for(N=z.firstChild;N&&N.type===3;){M=N.value.replace(C,"");if(M.length>0){N.value=M;N=N.next}else{J=N.next;N.remove();N=J}}for(N=z.lastChild;N&&N.type===3;){M=N.value.replace(s,"");if(M.length>0){N.value=M;N=N.prev}else{J=N.prev;N.remove();N=J}}}N=z.prev;if(N&&N.type===3){M=N.value.replace(C,"");if(M.length>0){N.value=M}else{N.remove()}}}if(K.removeEmpty||K.paddEmpty){if(z.isEmpty(t)){if(K.paddEmpty){z.empty().append(new a("#text","3")).value="\u00a0"}else{if(!z.attributes.map.name){L=z.parent;z.empty().remove();z=L;return}}}}z=z.parent}}},h);F=z=new a(g.root_name,11);n.parse(u);if(x){j(H)}for(I in i){D=e[I];y=i[I];v=y.length;while(v--){if(!y[v].parent){y.splice(v,1)}}for(B=0,A=D.length;B<A;B++){D[B](y,I,m)}}for(B=0,A=d.length;B<A;B++){D=d[B];if(D.name in c){y=c[D.name];v=y.length;while(v--){if(!y[v].parent){y.splice(v,1)}}for(v=0,q=D.callbacks.length;v<q;v++){D.callbacks[v](y,D.name,m)}}}return F};if(g.remove_trailing_brs){f.addNodeFilter("br",function(n,m){var r,q=n.length,o,u=h.getBlockElements(),k=h.getNonEmptyElements(),s,p,t;for(r=0;r<q;r++){o=n[r];s=o.parent;if(u[o.parent.name]&&o===s.lastChild){p=o.prev;while(p){t=p.name;if(t!=="span"||p.attr("data-mce-type")!=="bookmark"){if(t!=="br"){break}if(t==="br"){o=null;break}}p=p.prev}if(o){o.remove();if(s.isEmpty(k)){elementRule=h.getElementRule(s.name);if(elementRule.removeEmpty){s.remove()}else{if(elementRule.paddEmpty){s.empty().append(new b.html.Node("#text",3)).value="\u00a0"}}}}}}})}}})(tinymce);tinymce.html.Writer=function(e){var c=[],a,b,d,f,g;e=e||{};a=e.indent;b=tinymce.makeMap(e.indent_before||"");d=tinymce.makeMap(e.indent_after||"");f=tinymce.html.Entities.getEncodeFunc(e.entity_encoding||"raw",e.entities);g=e.element_format=="html";return{start:function(m,k,p){var n,j,h,o;if(a&&b[m]&&c.length>0){o=c[c.length-1];if(o.length>0&&o!=="\n"){c.push("\n")}}c.push("<",m);if(k){for(n=0,j=k.length;n<j;n++){h=k[n];c.push(" ",h.name,'="',f(h.value,true),'"')}}if(!p||g){c[c.length]=">"}else{c[c.length]=" />"}if(p&&a&&d[m]&&c.length>0){o=c[c.length-1];if(o.length>0&&o!=="\n"){c.push("\n")}}},end:function(h){var i;c.push("</",h,">");if(a&&d[h]&&c.length>0){i=c[c.length-1];if(i.length>0&&i!=="\n"){c.push("\n")}}},text:function(i,h){if(i.length>0){c[c.length]=h?i:f(i)}},cdata:function(h){c.push("<![CDATA[",h,"]]>")},comment:function(h){c.push("<!--",h,"-->")},pi:function(h,i){if(i){c.push("<?",h," ",i,"?>")}else{c.push("<?",h,"?>")}if(a){c.push("\n")}},doctype:function(h){c.push("<!DOCTYPE",h,">",a?"\n":"")},reset:function(){c.length=0},getContent:function(){return c.join("").replace(/\n$/,"")}}};(function(a){a.html.Serializer=function(c,d){var b=this,e=new a.html.Writer(c);c=c||{};c.validate="validate" in c?c.validate:true;b.schema=d=d||new a.html.Schema();b.writer=e;b.serialize=function(h){var g,i;i=c.validate;g={3:function(k,j){e.text(k.value,k.raw)},8:function(j){e.comment(j.value)},7:function(j){e.pi(j.name,j.value)},10:function(j){e.doctype(j.value)},4:function(j){e.cdata(j.value)},11:function(j){if((j=j.firstChild)){do{f(j)}while(j=j.next)}}};e.reset();function f(k){var t=g[k.type],j,o,s,r,p,u,n,m,q;if(!t){j=k.name;o=k.shortEnded;s=k.attributes;if(i&&s&&s.length>1){u=[];u.map={};q=d.getElementRule(k.name);for(n=0,m=q.attributesOrder.length;n<m;n++){r=q.attributesOrder[n];if(r in s.map){p=s.map[r];u.map[r]=p;u.push({name:r,value:p})}}for(n=0,m=s.length;n<m;n++){r=s[n].name;if(!(r in u.map)){p=s.map[r];u.map[r]=p;u.push({name:r,value:p})}}s=u}e.start(k.name,s,o);if(!o){if((k=k.firstChild)){do{f(k)}while(k=k.next)}e.end(j)}}else{t(k)}}if(h.type==1&&!c.inner){f(h)}else{g[11](h)}return e.getContent()}}})(tinymce);(function(h){var f=h.each,e=h.is,d=h.isWebKit,b=h.isIE,c=h.html.Entities,a=/^([a-z0-9],?)+$/i,g=h.html.Schema.blockElementsMap,i=/^[ \t\r\n]*$/;h.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(n,l){var k=this,j;k.doc=n;k.win=window;k.files={};k.cssFlicker=false;k.counter=0;k.stdMode=!h.isIE||n.documentMode>=8;k.boxModel=!h.isIE||n.compatMode=="CSS1Compat"||k.stdMode;k.hasOuterHTML="outerHTML" in n.createElement("a");k.settings=l=h.extend({keep_values:false,hex_colors:1},l);k.schema=l.schema;k.styles=new h.html.Styles({url_converter:l.url_converter,url_converter_scope:l.url_converter_scope},l.schema);if(h.isIE6){try{n.execCommand("BackgroundImageCache",false,true)}catch(m){k.cssFlicker=true}}if(b){("abbr article aside audio canvas details figcaption figure footer header hgroup mark menu meter nav output progress section summary time video").replace(/\w+/g,function(o){n.createElement(o)})}h.addUnload(k.destroy,k)},getRoot:function(){var j=this,k=j.settings;return(k&&j.get(k.root_element))||j.doc.body},getViewPort:function(k){var l,j;k=!k?this.win:k;l=k.document;j=this.boxModel?l.documentElement:l.body;return{x:k.pageXOffset||j.scrollLeft,y:k.pageYOffset||j.scrollTop,w:k.innerWidth||j.clientWidth,h:k.innerHeight||j.clientHeight}},getRect:function(m){var l,j=this,k;m=j.get(m);l=j.getPos(m);k=j.getSize(m);return{x:l.x,y:l.y,w:k.w,h:k.h}},getSize:function(m){var k=this,j,l;m=k.get(m);j=k.getStyle(m,"width");l=k.getStyle(m,"height");if(j.indexOf("px")===-1){j=0}if(l.indexOf("px")===-1){l=0}return{w:parseInt(j)||m.offsetWidth||m.clientWidth,h:parseInt(l)||m.offsetHeight||m.clientHeight}},getParent:function(l,k,j){return this.getParents(l,k,j,false)},getParents:function(u,p,l,s){var k=this,j,m=k.settings,q=[];u=k.get(u);s=s===undefined;if(m.strict_root){l=l||k.getRoot()}if(e(p,"string")){j=p;if(p==="*"){p=function(o){return o.nodeType==1}}else{p=function(o){return k.is(o,j)}}}while(u){if(u==l||!u.nodeType||u.nodeType===9){break}if(!p||p(u)){if(s){q.push(u)}else{return u}}u=u.parentNode}return s?q:null},get:function(j){var k;if(j&&this.doc&&typeof(j)=="string"){k=j;j=this.doc.getElementById(j);if(j&&j.id!==k){return this.doc.getElementsByName(k)[1]}}return j},getNext:function(k,j){return this._findSib(k,j,"nextSibling")},getPrev:function(k,j){return this._findSib(k,j,"previousSibling")},select:function(l,k){var j=this;return h.dom.Sizzle(l,j.get(k)||j.get(j.settings.root_element)||j.doc,[])},is:function(l,j){var k;if(l.length===undefined){if(j==="*"){return l.nodeType==1}if(a.test(j)){j=j.toLowerCase().split(/,/);l=l.nodeName.toLowerCase();for(k=j.length-1;k>=0;k--){if(j[k]==l){return true}}return false}}return h.dom.Sizzle.matches(j,l.nodeType?[l]:l).length>0},add:function(m,q,j,l,o){var k=this;return this.run(m,function(s){var r,n;r=e(q,"string")?k.doc.createElement(q):q;k.setAttribs(r,j);if(l){if(l.nodeType){r.appendChild(l)}else{k.setHTML(r,l)}}return !o?s.appendChild(r):r})},create:function(l,j,k){return this.add(this.doc.createElement(l),l,j,k,1)},createHTML:function(r,j,p){var q="",m=this,l;q+="<"+r;for(l in j){if(j.hasOwnProperty(l)){q+=" "+l+'="'+m.encode(j[l])+'"'}}if(typeof(p)!="undefined"){return q+">"+p+"</"+r+">"}return q+" />"},remove:function(j,k){return this.run(j,function(m){var n,l=m.parentNode;if(!l){return null}if(k){while(n=m.firstChild){if(!h.isIE||n.nodeType!==3||n.nodeValue){l.insertBefore(n,m)}else{m.removeChild(n)}}}return l.removeChild(m)})},setStyle:function(m,j,k){var l=this;return l.run(m,function(p){var o,n;o=p.style;j=j.replace(/-(\D)/g,function(r,q){return q.toUpperCase()});if(l.pixelStyles.test(j)&&(h.is(k,"number")||/^[\-0-9\.]+$/.test(k))){k+="px"}switch(j){case"opacity":if(b){o.filter=k===""?"":"alpha(opacity="+(k*100)+")";if(!m.currentStyle||!m.currentStyle.hasLayout){o.display="inline-block"}}o[j]=o["-moz-opacity"]=o["-khtml-opacity"]=k||"";break;case"float":b?o.styleFloat=k:o.cssFloat=k;break;default:o[j]=k||""}if(l.settings.update_styles){l.setAttrib(p,"data-mce-style")}})},getStyle:function(m,j,l){m=this.get(m);if(!m){return}if(this.doc.defaultView&&l){j=j.replace(/[A-Z]/g,function(n){return"-"+n});try{return this.doc.defaultView.getComputedStyle(m,null).getPropertyValue(j)}catch(k){return null}}j=j.replace(/-(\D)/g,function(o,n){return n.toUpperCase()});if(j=="float"){j=b?"styleFloat":"cssFloat"}if(m.currentStyle&&l){return m.currentStyle[j]}return m.style?m.style[j]:undefined},setStyles:function(m,n){var k=this,l=k.settings,j;j=l.update_styles;l.update_styles=0;f(n,function(o,p){k.setStyle(m,p,o)});l.update_styles=j;if(l.update_styles){k.setAttrib(m,l.cssText)}},removeAllAttribs:function(j){return this.run(j,function(m){var l,k=m.attributes;for(l=k.length-1;l>=0;l--){m.removeAttributeNode(k.item(l))}})},setAttrib:function(l,m,j){var k=this;if(!l||!m){return}if(k.settings.strict){m=m.toLowerCase()}return this.run(l,function(o){var n=k.settings;switch(m){case"style":if(!e(j,"string")){f(j,function(p,q){k.setStyle(o,q,p)});return}if(n.keep_values){if(j&&!k._isRes(j)){o.setAttribute("data-mce-style",j,2)}else{o.removeAttribute("data-mce-style",2)}}o.style.cssText=j;break;case"class":o.className=j||"";break;case"src":case"href":if(n.keep_values){if(n.url_converter){j=n.url_converter.call(n.url_converter_scope||k,j,m,o)}k.setAttrib(o,"data-mce-"+m,j,2)}break;case"shape":o.setAttribute("data-mce-style",j);break}if(e(j)&&j!==null&&j.length!==0){o.setAttribute(m,""+j,2)}else{o.removeAttribute(m,2)}})},setAttribs:function(k,l){var j=this;return this.run(k,function(m){f(l,function(o,p){j.setAttrib(m,p,o)})})},getAttrib:function(m,o,l){var j,k=this;m=k.get(m);if(!m||m.nodeType!==1){return false}if(!e(l)){l=""}if(/^(src|href|style|coords|shape)$/.test(o)){j=m.getAttribute("data-mce-"+o);if(j){return j}}if(b&&k.props[o]){j=m[k.props[o]];j=j&&j.nodeValue?j.nodeValue:j}if(!j){j=m.getAttribute(o,2)}if(/^(checked|compact|declare|defer|disabled|ismap|multiple|nohref|noshade|nowrap|readonly|selected)$/.test(o)){if(m[k.props[o]]===true&&j===""){return o}return j?o:""}if(m.nodeName==="FORM"&&m.getAttributeNode(o)){return m.getAttributeNode(o).nodeValue}if(o==="style"){j=j||m.style.cssText;if(j){j=k.serializeStyle(k.parseStyle(j),m.nodeName);if(k.settings.keep_values&&!k._isRes(j)){m.setAttribute("data-mce-style",j)}}}if(d&&o==="class"&&j){j=j.replace(/(apple|webkit)\-[a-z\-]+/gi,"")}if(b){switch(o){case"rowspan":case"colspan":if(j===1){j=""}break;case"size":if(j==="+0"||j===20||j===0){j=""}break;case"width":case"height":case"vspace":case"checked":case"disabled":case"readonly":if(j===0){j=""}break;case"hspace":if(j===-1){j=""}break;case"maxlength":case"tabindex":if(j===32768||j===2147483647||j==="32768"){j=""}break;case"multiple":case"compact":case"noshade":case"nowrap":if(j===65535){return o}return l;case"shape":j=j.toLowerCase();break;default:if(o.indexOf("on")===0&&j){j=h._replace(/^function\s+\w+\(\)\s+\{\s+(.*)\s+\}$/,"$1",""+j)}}}return(j!==undefined&&j!==null&&j!=="")?""+j:l},getPos:function(s,m){var k=this,j=0,q=0,o,p=k.doc,l;s=k.get(s);m=m||p.body;if(s){if(b&&!k.stdMode){s=s.getBoundingClientRect();o=k.boxModel?p.documentElement:p.body;j=k.getStyle(k.select("html")[0],"borderWidth");j=(j=="medium"||k.boxModel&&!k.isIE6)&&2||j;return{x:s.left+o.scrollLeft-j,y:s.top+o.scrollTop-j}}l=s;while(l&&l!=m&&l.nodeType){j+=l.offsetLeft||0;q+=l.offsetTop||0;l=l.offsetParent}l=s.parentNode;while(l&&l!=m&&l.nodeType){j-=l.scrollLeft||0;q-=l.scrollTop||0;l=l.parentNode}}return{x:j,y:q}},parseStyle:function(j){return this.styles.parse(j)},serializeStyle:function(k,j){return this.styles.serialize(k,j)},loadCSS:function(j){var l=this,m=l.doc,k;if(!j){j=""}k=l.select("head")[0];f(j.split(","),function(n){var o;if(l.files[n]){return}l.files[n]=true;o=l.create("link",{rel:"stylesheet",href:h._addVer(n)});if(b&&m.documentMode&&m.recalc){o.onload=function(){if(m.recalc){m.recalc()}o.onload=null}}k.appendChild(o)})},addClass:function(j,k){return this.run(j,function(l){var m;if(!k){return 0}if(this.hasClass(l,k)){return l.className}m=this.removeClass(l,k);return l.className=(m!=""?(m+" "):"")+k})},removeClass:function(l,m){var j=this,k;return j.run(l,function(o){var n;if(j.hasClass(o,m)){if(!k){k=new RegExp("(^|\\s+)"+m+"(\\s+|$)","g")}n=o.className.replace(k," ");n=h.trim(n!=" "?n:"");o.className=n;if(!n){o.removeAttribute("class");o.removeAttribute("className")}return n}return o.className})},hasClass:function(k,j){k=this.get(k);if(!k||!j){return false}return(" "+k.className+" ").indexOf(" "+j+" ")!==-1},show:function(j){return this.setStyle(j,"display","block")},hide:function(j){return this.setStyle(j,"display","none")},isHidden:function(j){j=this.get(j);return !j||j.style.display=="none"||this.getStyle(j,"display")=="none"},uniqueId:function(j){return(!j?"mce_":j)+(this.counter++)},setHTML:function(l,k){var j=this;return j.run(l,function(n){if(b){while(n.firstChild){n.removeChild(n.firstChild)}try{n.innerHTML="<br />"+k;n.removeChild(n.firstChild)}catch(m){n=j.create("div");n.innerHTML="<br />"+k;f(n.childNodes,function(p,o){if(o){n.appendChild(p)}})}}else{n.innerHTML=k}return k})},getOuterHTML:function(l){var k,j=this;l=j.get(l);if(!l){return null}if(l.nodeType===1&&j.hasOuterHTML){return l.outerHTML}k=(l.ownerDocument||j.doc).createElement("body");k.appendChild(l.cloneNode(true));return k.innerHTML},setOuterHTML:function(m,k,n){var j=this;function l(p,o,r){var s,q;q=r.createElement("body");q.innerHTML=o;s=q.lastChild;while(s){j.insertAfter(s.cloneNode(true),p);s=s.previousSibling}j.remove(p)}return this.run(m,function(p){p=j.get(p);if(p.nodeType==1){n=n||p.ownerDocument||j.doc;if(b){try{if(b&&p.nodeType==1){p.outerHTML=k}else{l(p,k,n)}}catch(o){l(p,k,n)}}else{l(p,k,n)}}})},decode:c.decode,encode:c.encodeAllRaw,insertAfter:function(j,k){k=this.get(k);return this.run(j,function(m){var l,n;l=k.parentNode;n=k.nextSibling;if(n){l.insertBefore(m,n)}else{l.appendChild(m)}return m})},isBlock:function(k){var j=k.nodeType;if(j){return !!(j===1&&g[k.nodeName])}return !!g[k]},replace:function(p,m,j){var l=this;if(e(m,"array")){p=p.cloneNode(true)}return l.run(m,function(k){if(j){f(h.grep(k.childNodes),function(n){p.appendChild(n)})}return k.parentNode.replaceChild(p,k)})},rename:function(m,j){var l=this,k;if(m.nodeName!=j.toUpperCase()){k=l.create(j);f(l.getAttribs(m),function(n){l.setAttrib(k,n.nodeName,l.getAttrib(m,n.nodeName))});l.replace(k,m,1)}return k||m},findCommonAncestor:function(l,j){var m=l,k;while(m){k=j;while(k&&m!=k){k=k.parentNode}if(m==k){break}m=m.parentNode}if(!m&&l.ownerDocument){return l.ownerDocument.documentElement}return m},toHex:function(j){var l=/^\s*rgb\s*?\(\s*?([0-9]+)\s*?,\s*?([0-9]+)\s*?,\s*?([0-9]+)\s*?\)\s*$/i.exec(j);function k(m){m=parseInt(m).toString(16);return m.length>1?m:"0"+m}if(l){j="#"+k(l[1])+k(l[2])+k(l[3]);return j}return j},getClasses:function(){var n=this,j=[],m,o={},p=n.settings.class_filter,l;if(n.classes){return n.classes}function q(r){f(r.imports,function(s){q(s)});f(r.cssRules||r.rules,function(s){switch(s.type||1){case 1:if(s.selectorText){f(s.selectorText.split(","),function(t){t=t.replace(/^\s*|\s*$|^\s\./g,"");if(/\.mce/.test(t)||!/\.[\w\-]+$/.test(t)){return}l=t;t=h._replace(/.*\.([a-z0-9_\-]+).*/i,"$1",t);if(p&&!(t=p(t,l))){return}if(!o[t]){j.push({"class":t});o[t]=1}})}break;case 3:q(s.styleSheet);break}})}try{f(n.doc.styleSheets,q)}catch(k){}if(j.length>0){n.classes=j}return j},run:function(m,l,k){var j=this,n;if(j.doc&&typeof(m)==="string"){m=j.get(m)}if(!m){return false}k=k||this;if(!m.nodeType&&(m.length||m.length===0)){n=[];f(m,function(p,o){if(p){if(typeof(p)=="string"){p=j.doc.getElementById(p)}n.push(l.call(k,p,o))}});return n}return l.call(k,m)},getAttribs:function(k){var j;k=this.get(k);if(!k){return[]}if(b){j=[];if(k.nodeName=="OBJECT"){return k.attributes}if(k.nodeName==="OPTION"&&this.getAttrib(k,"selected")){j.push({specified:1,nodeName:"selected"})}k.cloneNode(false).outerHTML.replace(/<\/?[\w:\-]+ ?|=[\"][^\"]+\"|=\'[^\']+\'|=[\w\-]+|>/gi,"").replace(/[\w:\-]+/gi,function(l){j.push({specified:1,nodeName:l})});return j}return k.attributes},isEmpty:function(o,p){var k=this,m,j,n,q,l;o=o.firstChild;if(o){q=new h.dom.TreeWalker(o);p=p||k.schema?k.schema.getNonEmptyElements():null;do{n=o.nodeType;if(n===1){if(o.getAttribute("data-mce-bogus")){continue}if(p&&p[o.nodeName.toLowerCase()]){return false}j=k.getAttribs(o);m=o.attributes.length;while(m--){l=o.attributes[m].nodeName;if(l==="name"||l.indexOf("data-")===0){return false}}}if((n===3&&!i.test(o.nodeValue))){return false}}while(o=q.next())}return true},destroy:function(k){var j=this;if(j.events){j.events.destroy()}j.win=j.doc=j.root=j.events=null;if(!k){h.removeUnload(j.destroy)}},createRng:function(){var j=this.doc;return j.createRange?j.createRange():new h.dom.Range(this)},nodeIndex:function(o,p){var j=0,m,n,l,k;if(o){for(m=o.nodeType,o=o.previousSibling,n=o;o;o=o.previousSibling){l=o.nodeType;if(p&&l==3){k=false;try{k=o.nodeValue.length}catch(q){}if(l==m||!k){continue}}j++;m=l}}return j},split:function(n,m,q){var s=this,j=s.createRng(),o,l,p;function k(v){var t,r=v.childNodes,u=v.nodeType;if(u==1&&v.getAttribute("data-mce-type")=="bookmark"){return}for(t=r.length-1;t>=0;t--){k(r[t])}if(u!=9){if(u==3&&v.nodeValue.length>0){if(!s.isBlock(v.parentNode)||h.trim(v.nodeValue).length>0){return}}else{if(u==1){r=v.childNodes;if(r.length==1&&r[0]&&r[0].nodeType==1&&r[0].getAttribute("data-mce-type")=="bookmark"){v.parentNode.insertBefore(r[0],v)}if(r.length||/^(br|hr|input|img)$/i.test(v.nodeName)){return}}}s.remove(v)}return v}if(n&&m){j.setStart(n.parentNode,s.nodeIndex(n));j.setEnd(m.parentNode,s.nodeIndex(m));o=j.extractContents();j=s.createRng();j.setStart(m.parentNode,s.nodeIndex(m)+1);j.setEnd(n.parentNode,s.nodeIndex(n)+1);l=j.extractContents();p=n.parentNode;p.insertBefore(k(o),n);if(q){p.replaceChild(q,m)}else{p.insertBefore(m,n)}p.insertBefore(k(l),n);s.remove(n);return q||m}},bind:function(n,j,m,l){var k=this;if(!k.events){k.events=new h.dom.EventUtils()}return k.events.add(n,j,m,l||this)},unbind:function(m,j,l){var k=this;if(!k.events){k.events=new h.dom.EventUtils()}return k.events.remove(m,j,l)},_findSib:function(m,j,k){var l=this,n=j;if(m){if(e(n,"string")){n=function(o){return l.is(o,j)}}for(m=m[k];m;m=m[k]){if(n(m)){return m}}}return null},_isRes:function(j){return/^(top|left|bottom|right|width|height)/i.test(j)||/;\s*(top|left|bottom|right|width|height)/i.test(j)}});h.DOM=new h.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(Y,t){var ab=N[h],W=N[U],aa=N[P],V=N[z],Z=t.startContainer,ad=t.startOffset,X=t.endContainer,ac=t.endOffset;if(Y===0){return G(ab,W,Z,ad)}if(Y===1){return G(aa,V,Z,ad)}if(Y===2){return G(aa,V,X,ac)}if(Y===3){return G(ab,W,X,ac)}}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(Z<Y){return -1}return 1}aa=V;while(aa&&aa.parentNode!=X){aa=aa.parentNode}if(aa){W=0;t=X.firstChild;while(t!=aa&&W<Z){W++;t=t.nextSibling}if(Z<=W){return -1}return 1}aa=X;while(aa&&aa.parentNode!=V){aa=aa.parentNode}if(aa){W=0;t=V.firstChild;while(t!=aa&&W<Y){W++;t=t.nextSibling}if(W<Y){return -1}return 1}ab=c.findCommonAncestor(X,V);ad=X;while(ad&&ad.parentNode!=ab){ad=ad.parentNode}if(!ad){ad=ab}ac=V;while(ac&&ac.parentNode!=ab){ac=ac.parentNode}if(!ac){ac=ab}if(ad==ac){return 0}t=ab.firstChild;while(t){if(t==ad){return -1}if(t==ac){return 1}t=t.nextSibling}}function B(V,Y,X){var t,W;if(V){N[h]=Y;N[U]=X}else{N[P]=Y;N[z]=X}t=N[P];while(t.parentNode){t=t.parentNode}W=N[h];while(W.parentNode){W=W.parentNode}if(W==t){if(G(N[h],N[U],N[P],N[z])>0){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(g){var i=this,j="\uFEFF",e,h,d=g.dom,c=true,f=false;function b(){var n=g.getRng(),k=d.createRng(),m,o;m=n.item?n.item(0):n.parentElement();if(m.ownerDocument!=d.doc){return k}o=g.isCollapsed();if(n.item||!m.hasChildNodes()){if(o){k.setStart(m,0);k.setEnd(m,0)}else{k.setStart(m.parentNode,d.nodeIndex(m));k.setEnd(k.startContainer,k.startOffset+1)}return k}function l(s){var u,q,t,p,A=0,x,y,z,r,v;r=n.duplicate();r.collapse(s);u=d.create("a");z=r.parentElement();if(!z.hasChildNodes()){k[s?"setStart":"setEnd"](z,0);return}z.appendChild(u);r.moveToElementText(u);v=n.compareEndPoints(s?"StartToStart":"EndToEnd",r);if(v>0){k[s?"setStartAfter":"setEndAfter"](z);d.remove(u);return}p=tinymce.grep(z.childNodes);x=p.length-1;while(A<=x){y=Math.floor((A+x)/2);z.insertBefore(u,p[y]);r.moveToElementText(u);v=n.compareEndPoints(s?"StartToStart":"EndToEnd",r);if(v>0){A=y+1}else{if(v<0){x=y-1}else{found=true;break}}}q=v>0||y==0?u.nextSibling:u.previousSibling;if(q.nodeType==1){d.remove(u);t=d.nodeIndex(q);q=q.parentNode;if(!s||y>0){t++}}else{if(v>0||y==0){r.setEndPoint(s?"StartToStart":"EndToEnd",n);t=r.text.length}else{r.setEndPoint(s?"StartToStart":"EndToEnd",n);t=q.nodeValue.length-r.text.length}d.remove(u)}k[s?"setStart":"setEnd"](q,t)}l(true);if(!o){l()}return k}this.addRange=function(k){var p,n,m,r,u,s,t=g.dom.doc,o=t.body;function l(B){var x,A,v,z,y;v=d.create("a");x=B?m:u;A=B?r:s;z=p.duplicate();if(x==t||x==t.documentElement){x=o;A=0}if(x.nodeType==3){x.parentNode.insertBefore(v,x);z.moveToElementText(v);z.moveStart("character",A);d.remove(v);p.setEndPoint(B?"StartToStart":"EndToEnd",z)}else{y=x.childNodes;if(y.length){if(A>=y.length){d.insertAfter(v,y[y.length-1])}else{x.insertBefore(v,y[A])}z.moveToElementText(v)}else{v=t.createTextNode(j);x.appendChild(v);z.moveToElementText(v.parentNode);z.collapse(c)}p.setEndPoint(B?"StartToStart":"EndToEnd",z);d.remove(v)}}this.destroy();m=k.startContainer;r=k.startOffset;u=k.endContainer;s=k.endOffset;p=o.createTextRange();if(m==u&&m.nodeType==1&&r==s-1){if(r==s-1){try{n=o.createControlRange();n.addElement(m.childNodes[r]);n.select();return}catch(q){}}}l(true);l();p.select()};this.getRangeAt=function(){if(!e||!tinymce.dom.RangeUtils.compareRanges(h,g.getRng())){e=b();h=g.getRng()}try{e.startContainer.nextSibling}catch(k){e=b();h=null}return e};this.destroy=function(){h=e=null}}tinymce.dom.TridentSelection=a})();(function(){var p=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,j=0,d=Object.prototype.toString,o=false,i=true;[0,0].sort(function(){i=false;return 0});var b=function(v,e,z,A){z=z||[];e=e||document;var C=e;if(e.nodeType!==1&&e.nodeType!==9){return[]}if(!v||typeof v!=="string"){return z}var x=[],s,E,H,r,u=true,t=b.isXML(e),B=v,D,G,F,y;do{p.exec("");s=p.exec(B);if(s){B=s[3];x.push(s[1]);if(s[2]){r=s[3];break}}}while(s);if(x.length>1&&k.exec(v)){if(x.length===2&&f.relative[x[0]]){E=h(x[0]+x[1],e)}else{E=f.relative[x[0]]?[e]:b(x.shift(),e);while(x.length){v=x.shift();if(f.relative[v]){v+=x.shift()}E=h(v,E)}}}else{if(!A&&x.length>1&&e.nodeType===9&&!t&&f.match.ID.test(x[0])&&!f.match.ID.test(x[x.length-1])){D=b.find(x.shift(),e,t);e=D.expr?b.filter(D.expr,D.set)[0]:D.set[0]}if(e){D=A?{expr:x.pop(),set:a(A)}:b.find(x.pop(),x.length===1&&(x[0]==="~"||x[0]==="+")&&e.parentNode?e.parentNode:e,t);E=D.expr?b.filter(D.expr,D.set):D.set;if(x.length>0){H=a(E)}else{u=false}while(x.length){G=x.pop();F=G;if(!f.relative[G]){G=""}else{F=x.pop()}if(F==null){F=e}f.relative[G](H,F,t)}}else{H=x=[]}}if(!H){H=E}if(!H){b.error(G||v)}if(d.call(H)==="[object Array]"){if(!u){z.push.apply(z,H)}else{if(e&&e.nodeType===1){for(y=0;H[y]!=null;y++){if(H[y]&&(H[y]===true||H[y].nodeType===1&&b.contains(e,H[y]))){z.push(E[y])}}}else{for(y=0;H[y]!=null;y++){if(H[y]&&H[y].nodeType===1){z.push(E[y])}}}}}else{a(H,z)}if(r){b(r,C,z,A);b.uniqueSort(z)}return z};b.uniqueSort=function(r){if(c){o=i;r.sort(c);if(o){for(var e=1;e<r.length;e++){if(r[e]===r[e-1]){r.splice(e--,1)}}}}return r};b.matches=function(e,r){return b(e,null,null,r)};b.find=function(y,e,z){var x;if(!y){return[]}for(var t=0,s=f.order.length;t<s;t++){var v=f.order[t],u;if((u=f.leftMatch[v].exec(y))){var r=u[1];u.splice(1,1);if(r.substr(r.length-1)!=="\\"){u[1]=(u[1]||"").replace(/\\/g,"");x=f.find[v](u,e,z);if(x!=null){y=y.replace(f.match[v],"");break}}}}if(!x){x=e.getElementsByTagName("*")}return{set:x,expr:y}};b.filter=function(C,B,F,u){var s=C,H=[],z=B,x,e,y=B&&B[0]&&b.isXML(B[0]);while(C&&B.length){for(var A in f.filter){if((x=f.leftMatch[A].exec(C))!=null&&x[2]){var r=f.filter[A],G,E,t=x[1];e=false;x.splice(1,1);if(t.substr(t.length-1)==="\\"){continue}if(z===H){H=[]}if(f.preFilter[A]){x=f.preFilter[A](x,z,F,H,u,y);if(!x){e=G=true}else{if(x===true){continue}}}if(x){for(var v=0;(E=z[v])!=null;v++){if(E){G=r(E,x,v,z);var D=u^!!G;if(F&&G!=null){if(D){e=true}else{z[v]=false}}else{if(D){H.push(E);e=true}}}}}if(G!==undefined){if(!F){z=H}C=C.replace(f.match[A],"");if(!e){return[]}break}}}if(C===s){if(e==null){b.error(C)}else{break}}s=C}return z};b.error=function(e){throw"Syntax error, unrecognized expression: "+e};var f=b.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+\-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(e){return e.getAttribute("href")}},relative:{"+":function(x,r){var t=typeof r==="string",v=t&&!/\W/.test(r),y=t&&!v;if(v){r=r.toLowerCase()}for(var s=0,e=x.length,u;s<e;s++){if((u=x[s])){while((u=u.previousSibling)&&u.nodeType!==1){}x[s]=y||u&&u.nodeName.toLowerCase()===r?u||false:u===r}}if(y){b.filter(r,x,true)}},">":function(x,r){var u=typeof r==="string",v,s=0,e=x.length;if(u&&!/\W/.test(r)){r=r.toLowerCase();for(;s<e;s++){v=x[s];if(v){var t=v.parentNode;x[s]=t.nodeName.toLowerCase()===r?t:false}}}else{for(;s<e;s++){v=x[s];if(v){x[s]=u?v.parentNode:v.parentNode===r}}if(u){b.filter(r,x,true)}}},"":function(t,r,v){var s=j++,e=q,u;if(typeof r==="string"&&!/\W/.test(r)){r=r.toLowerCase();u=r;e=n}e("parentNode",r,s,t,u,v)},"~":function(t,r,v){var s=j++,e=q,u;if(typeof r==="string"&&!/\W/.test(r)){r=r.toLowerCase();u=r;e=n}e("previousSibling",r,s,t,u,v)}},find:{ID:function(r,s,t){if(typeof s.getElementById!=="undefined"&&!t){var e=s.getElementById(r[1]);return e?[e]:[]}},NAME:function(s,v){if(typeof v.getElementsByName!=="undefined"){var r=[],u=v.getElementsByName(s[1]);for(var t=0,e=u.length;t<e;t++){if(u[t].getAttribute("name")===s[1]){r.push(u[t])}}return r.length===0?null:r}},TAG:function(e,r){return r.getElementsByTagName(e[1])}},preFilter:{CLASS:function(t,r,s,e,x,y){t=" "+t[1].replace(/\\/g,"")+" ";if(y){return t}for(var u=0,v;(v=r[u])!=null;u++){if(v){if(x^(v.className&&(" "+v.className+" ").replace(/[\t\n]/g," ").indexOf(t)>=0)){if(!s){e.push(v)}}else{if(s){r[u]=false}}}}return false},ID:function(e){return e[1].replace(/\\/g,"")},TAG:function(r,e){return r[1].toLowerCase()},CHILD:function(e){if(e[1]==="nth"){var r=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(e[2]==="even"&&"2n"||e[2]==="odd"&&"2n+1"||!/\D/.test(e[2])&&"0n+"+e[2]||e[2]);e[2]=(r[1]+(r[2]||1))-0;e[3]=r[3]-0}e[0]=j++;return e},ATTR:function(u,r,s,e,v,x){var t=u[1].replace(/\\/g,"");if(!x&&f.attrMap[t]){u[1]=f.attrMap[t]}if(u[2]==="~="){u[4]=" "+u[4]+" "}return u},PSEUDO:function(u,r,s,e,v){if(u[1]==="not"){if((p.exec(u[3])||"").length>1||/^\w/.test(u[3])){u[3]=b(u[3],null,null,r)}else{var t=b.filter(u[3],r,s,true^v);if(!s){e.push.apply(e,t)}return false}}else{if(f.match.POS.test(u[0])||f.match.CHILD.test(u[0])){return true}}return u},POS:function(e){e.unshift(true);return e}},filters:{enabled:function(e){return e.disabled===false&&e.type!=="hidden"},disabled:function(e){return e.disabled===true},checked:function(e){return e.checked===true},selected:function(e){e.parentNode.selectedIndex;return e.selected===true},parent:function(e){return !!e.firstChild},empty:function(e){return !e.firstChild},has:function(s,r,e){return !!b(e[3],s).length},header:function(e){return(/h\d/i).test(e.nodeName)},text:function(e){return"text"===e.type},radio:function(e){return"radio"===e.type},checkbox:function(e){return"checkbox"===e.type},file:function(e){return"file"===e.type},password:function(e){return"password"===e.type},submit:function(e){return"submit"===e.type},image:function(e){return"image"===e.type},reset:function(e){return"reset"===e.type},button:function(e){return"button"===e.type||e.nodeName.toLowerCase()==="button"},input:function(e){return(/input|select|textarea|button/i).test(e.nodeName)}},setFilters:{first:function(r,e){return e===0},last:function(s,r,e,t){return r===t.length-1},even:function(r,e){return e%2===0},odd:function(r,e){return e%2===1},lt:function(s,r,e){return r<e[3]-0},gt:function(s,r,e){return r>e[3]-0},nth:function(s,r,e){return e[3]-0===r},eq:function(s,r,e){return e[3]-0===r}},filter:{PSEUDO:function(s,y,x,z){var e=y[1],r=f.filters[e];if(r){return r(s,x,y,z)}else{if(e==="contains"){return(s.textContent||s.innerText||b.getText([s])||"").indexOf(y[3])>=0}else{if(e==="not"){var t=y[3];for(var v=0,u=t.length;v<u;v++){if(t[v]===s){return false}}return true}else{b.error("Syntax error, unrecognized expression: "+e)}}}},CHILD:function(e,t){var x=t[1],r=e;switch(x){case"only":case"first":while((r=r.previousSibling)){if(r.nodeType===1){return false}}if(x==="first"){return true}r=e;case"last":while((r=r.nextSibling)){if(r.nodeType===1){return false}}return true;case"nth":var s=t[2],A=t[3];if(s===1&&A===0){return true}var v=t[0],z=e.parentNode;if(z&&(z.sizcache!==v||!e.nodeIndex)){var u=0;for(r=z.firstChild;r;r=r.nextSibling){if(r.nodeType===1){r.nodeIndex=++u}}z.sizcache=v}var y=e.nodeIndex-A;if(s===0){return y===0}else{return(y%s===0&&y/s>=0)}}},ID:function(r,e){return r.nodeType===1&&r.getAttribute("id")===e},TAG:function(r,e){return(e==="*"&&r.nodeType===1)||r.nodeName.toLowerCase()===e},CLASS:function(r,e){return(" "+(r.className||r.getAttribute("class"))+" ").indexOf(e)>-1},ATTR:function(v,t){var s=t[1],e=f.attrHandle[s]?f.attrHandle[s](v):v[s]!=null?v[s]:v.getAttribute(s),x=e+"",u=t[2],r=t[4];return e==null?u==="!=":u==="="?x===r:u==="*="?x.indexOf(r)>=0:u==="~="?(" "+x+" ").indexOf(r)>=0:!r?x&&e!==false:u==="!="?x!==r:u==="^="?x.indexOf(r)===0:u==="$="?x.substr(x.length-r.length)===r:u==="|="?x===r||x.substr(0,r.length+1)===r+"-":false},POS:function(u,r,s,v){var e=r[2],t=f.setFilters[e];if(t){return t(u,s,r,v)}}}};var k=f.match.POS,g=function(r,e){return"\\"+(e-0+1)};for(var m in f.match){f.match[m]=new RegExp(f.match[m].source+(/(?![^\[]*\])(?![^\(]*\))/.source));f.leftMatch[m]=new RegExp(/(^(?:.|\r|\n)*?)/.source+f.match[m].source.replace(/\\(\d+)/g,g))}var a=function(r,e){r=Array.prototype.slice.call(r,0);if(e){e.push.apply(e,r);return e}return r};try{Array.prototype.slice.call(document.documentElement.childNodes,0)[0].nodeType}catch(l){a=function(u,t){var r=t||[],s=0;if(d.call(u)==="[object Array]"){Array.prototype.push.apply(r,u)}else{if(typeof u.length==="number"){for(var e=u.length;s<e;s++){r.push(u[s])}}else{for(;u[s];s++){r.push(u[s])}}}return r}}var c;if(document.documentElement.compareDocumentPosition){c=function(r,e){if(!r.compareDocumentPosition||!e.compareDocumentPosition){if(r==e){o=true}return r.compareDocumentPosition?-1:1}var s=r.compareDocumentPosition(e)&4?-1:r===e?0:1;if(s===0){o=true}return s}}else{if("sourceIndex" in document.documentElement){c=function(r,e){if(!r.sourceIndex||!e.sourceIndex){if(r==e){o=true}return r.sourceIndex?-1:1}var s=r.sourceIndex-e.sourceIndex;if(s===0){o=true}return s}}else{if(document.createRange){c=function(t,r){if(!t.ownerDocument||!r.ownerDocument){if(t==r){o=true}return t.ownerDocument?-1:1}var s=t.ownerDocument.createRange(),e=r.ownerDocument.createRange();s.setStart(t,0);s.setEnd(t,0);e.setStart(r,0);e.setEnd(r,0);var u=s.compareBoundaryPoints(Range.START_TO_END,e);if(u===0){o=true}return u}}}}b.getText=function(e){var r="",t;for(var s=0;e[s];s++){t=e[s];if(t.nodeType===3||t.nodeType===4){r+=t.nodeValue}else{if(t.nodeType!==8){r+=b.getText(t.childNodes)}}}return r};(function(){var r=document.createElement("div"),s="script"+(new Date()).getTime();r.innerHTML="<a name='"+s+"'/>";var e=document.documentElement;e.insertBefore(r,e.firstChild);if(document.getElementById(s)){f.find.ID=function(u,v,x){if(typeof v.getElementById!=="undefined"&&!x){var t=v.getElementById(u[1]);return t?t.id===u[1]||typeof t.getAttributeNode!=="undefined"&&t.getAttributeNode("id").nodeValue===u[1]?[t]:undefined:[]}};f.filter.ID=function(v,t){var u=typeof v.getAttributeNode!=="undefined"&&v.getAttributeNode("id");return v.nodeType===1&&u&&u.nodeValue===t}}e.removeChild(r);e=r=null})();(function(){var e=document.createElement("div");e.appendChild(document.createComment(""));if(e.getElementsByTagName("*").length>0){f.find.TAG=function(r,v){var u=v.getElementsByTagName(r[1]);if(r[1]==="*"){var t=[];for(var s=0;u[s];s++){if(u[s].nodeType===1){t.push(u[s])}}u=t}return u}}e.innerHTML="<a href='#'></a>";if(e.firstChild&&typeof e.firstChild.getAttribute!=="undefined"&&e.firstChild.getAttribute("href")!=="#"){f.attrHandle.href=function(r){return r.getAttribute("href",2)}}e=null})();if(document.querySelectorAll){(function(){var e=b,s=document.createElement("div");s.innerHTML="<p class='TEST'></p>";if(s.querySelectorAll&&s.querySelectorAll(".TEST").length===0){return}b=function(x,v,t,u){v=v||document;if(!u&&v.nodeType===9&&!b.isXML(v)){try{return a(v.querySelectorAll(x),t)}catch(y){}}return e(x,v,t,u)};for(var r in e){b[r]=e[r]}s=null})()}(function(){var e=document.createElement("div");e.innerHTML="<div class='test e'></div><div class='test'></div>";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return}e.lastChild.className="e";if(e.getElementsByClassName("e").length===1){return}f.order.splice(1,0,"CLASS");f.find.CLASS=function(r,s,t){if(typeof s.getElementsByClassName!=="undefined"&&!t){return s.getElementsByClassName(r[1])}};e=null})();function n(r,x,v,A,y,z){for(var t=0,s=A.length;t<s;t++){var e=A[t];if(e){e=e[r];var u=false;while(e){if(e.sizcache===v){u=A[e.sizset];break}if(e.nodeType===1&&!z){e.sizcache=v;e.sizset=t}if(e.nodeName.toLowerCase()===x){u=e;break}e=e[r]}A[t]=u}}}function q(r,x,v,A,y,z){for(var t=0,s=A.length;t<s;t++){var e=A[t];if(e){e=e[r];var u=false;while(e){if(e.sizcache===v){u=A[e.sizset];break}if(e.nodeType===1){if(!z){e.sizcache=v;e.sizset=t}if(typeof x!=="string"){if(e===x){u=true;break}}else{if(b.filter(x,[e]).length>0){u=e;break}}}e=e[r]}A[t]=u}}}b.contains=document.compareDocumentPosition?function(r,e){return !!(r.compareDocumentPosition(e)&16)}:function(r,e){return r!==e&&(r.contains?r.contains(e):true)};b.isXML=function(e){var r=(e?e.ownerDocument||e:0).documentElement;return r?r.nodeName!=="HTML":false};var h=function(e,y){var t=[],u="",v,s=y.nodeType?[y]:y;while((v=f.match.PSEUDO.exec(e))){u+=v[0];e=e.replace(f.match.PSEUDO,"")}e=f.relative[e]?e+"*":e;for(var x=0,r=s.length;x<r;x++){b(e,s[x],t)}return b.filter(u,t)};window.tinymce.dom.Sizzle=b})();(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<arguments.length;j++){h.push(arguments[j])}h=e[g].apply(e,h);b.update(g);return h}});a.extend(b,{on:function(i,h,g){return a.dom.Event.add(b.id,i,h,g)},getXY:function(){return{x:parseInt(b.getStyle("left")),y:parseInt(b.getStyle("top"))}},getSize:function(){var g=e.get(b.id);return{w:parseInt(b.getStyle("width")||g.clientWidth),h:parseInt(b.getStyle("height")||g.clientHeight)}},moveTo:function(g,h){b.setStyles({left:g,top:h})},moveBy:function(g,i){var h=b.getXY();b.moveTo(h.x+g,h.y+i)},resizeTo:function(g,i){b.setStyles({width:g,height:i})},resizeBy:function(g,j){var i=b.getSize();b.resizeTo(i.w+g,i.h+j)},update:function(h){var g;if(a.isIE6&&d.blocker){h=h||"";if(h.indexOf("get")===0||h.indexOf("has")===0||h.indexOf("is")===0){return}if(h=="remove"){e.remove(b.blocker);return}if(!b.blocker){b.blocker=e.uniqueId();g=e.add(d.container||e.getRoot(),"iframe",{id:b.blocker,style:"position:absolute;",frameBorder:0,src:'javascript:""'});e.setStyle(g,"opacity",0)}else{g=e.get(b.blocker)}e.setStyles(g,{left:b.getStyle("left",1),top:b.getStyle("top",1),width:b.getStyle("width",1),height:b.getStyle("height",1),display:b.getStyle("display",1),zIndex:parseInt(b.getStyle("zIndex",1)||0)-1})}}})}})(tinymce);(function(c){function e(f){return f.replace(/[\n\r]+/g,"")}var b=c.is,a=c.isIE,d=c.each;c.create("tinymce.dom.Selection",{Selection:function(i,h,g){var f=this;f.dom=i;f.win=h;f.serializer=g;d(["onBeforeSetContent","onBeforeGetContent","onSetContent","onGetContent"],function(j){f[j]=new c.util.Dispatcher(f)});if(!f.win.getSelection){f.tridentSel=new c.dom.TridentSelection(f)}if(c.isIE&&i.boxModel){this._fixIESelection()}c.addUnload(f.destroy,f)},getContent:function(g){var f=this,h=f.getRng(),l=f.dom.create("body"),j=f.getSel(),i,k,m;g=g||{};i=k="";g.get=true;g.format=g.format||"html";f.onBeforeGetContent.dispatch(f,g);if(g.format=="text"){return f.isCollapsed()?"":(h.text||(j.toString?j.toString():""))}if(h.cloneContents){m=h.cloneContents();if(m){l.appendChild(m)}}else{if(b(h.item)||b(h.htmlText)){l.innerHTML=h.item?h.item(0).outerHTML:h.htmlText}else{l.innerHTML=h.toString()}}if(/^\s/.test(l.innerHTML)){i=" "}if(/\s+$/.test(l.innerHTML)){k=" "}g.getInner=true;g.content=f.isCollapsed()?"":i+f.serializer.serialize(l,g)+k;f.onGetContent.dispatch(f,g);return g.content},setContent:function(k,j){var h=this,f=h.getRng(),i,l=h.win.document,m,g;j=j||{format:"html"};j.set=true;k=j.content=k;if(!j.no_events){h.onBeforeSetContent.dispatch(h,j)}k=j.content;if(f.insertNode){k+='<span id="__caret">_</span>';if(f.startContainer==l&&f.endContainer==l){l.body.innerHTML=k}else{f.deleteContents();if(l.body.childNodes.length==0){l.body.innerHTML=k}else{if(f.createContextualFragment){f.insertNode(f.createContextualFragment(k))}else{m=l.createDocumentFragment();g=l.createElement("div");m.appendChild(g);g.outerHTML=k;f.insertNode(m)}}}i=h.dom.get("__caret");f=l.createRange();f.setStartBefore(i);f.setEndBefore(i);h.setRng(f);h.dom.remove("__caret");h.setRng(f)}else{if(f.item){l.execCommand("Delete",false,null);f=h.getRng()}f.pasteHTML(k)}if(!j.no_events){h.onSetContent.dispatch(h,j)}},getStart:function(){var g=this.getRng(),h,f,j,i;if(g.duplicate||g.item){if(g.item){return g.item(0)}j=g.duplicate();j.collapse(1);h=j.parentElement();f=i=g.parentElement();while(i=i.parentNode){if(i==h){h=f;break}}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(h.duplicate||h.item){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(r,s){var v=this,m=v.dom,g,j,i,n,h,o,p,l="\uFEFF",u;function f(x,y){var t=0;d(m.select(x),function(A,z){if(A==y){t=z}});return t}if(r==2){function k(){var x=v.getRng(true),t=m.getRoot(),y={};function z(C,H){var B=C[H?"startContainer":"endContainer"],G=C[H?"startOffset":"endOffset"],A=[],D,F,E=0;if(B.nodeType==3){if(s){for(D=B.previousSibling;D&&D.nodeType==3;D=D.previousSibling){G+=D.nodeValue.length}}A.push(G)}else{F=B.childNodes;if(G>=F.length&&F.length){E=1;G=Math.max(0,F.length-1)}A.push(v.dom.nodeIndex(F[G],s)+E)}for(;B&&B!=t;B=B.parentNode){A.push(v.dom.nodeIndex(B,s))}return A}y.start=z(x,true);if(!v.isCollapsed()){y.end=z(x)}return y}return k()}if(r){return{rng:v.getRng()}}g=v.getRng();i=m.uniqueId();n=tinyMCE.activeEditor.selection.isCollapsed();u="overflow:hidden;line-height:0px";if(g.duplicate||g.item){if(!g.item){j=g.duplicate();try{g.collapse();g.pasteHTML('<span data-mce-type="bookmark" id="'+i+'_start" style="'+u+'">'+l+"</span>");if(!n){j.collapse(false);g.moveToElementText(j.parentElement());if(g.compareEndPoints("StartToEnd",j)==0){j.move("character",-1)}j.pasteHTML('<span data-mce-type="bookmark" id="'+i+'_end" style="'+u+'">'+l+"</span>")}}catch(q){return null}}else{o=g.item(0);h=o.nodeName;return{name:h,index:f(h,o)}}}else{o=v.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",{"data-mce-type":"bookmark",id:i+"_end",style:u},l))}g.collapse(true);g.insertNode(m.create("span",{"data-mce-type":"bookmark",id:i+"_start",style:u},l))}v.moveToBookmark({id:i,keep:1});return{id:i}},moveToBookmark:function(n){var r=this,l=r.dom,i,h,f,q,j,s,o,p;if(r.tridentSel){r.tridentSel.destroy()}if(n){if(n.start){f=l.createRng();q=l.getRoot();function g(z){var t=n[z?"start":"end"],v,x,y,u;if(t){y=t[0];for(x=q,v=t.length-1;v>=1;v--){u=x.childNodes;if(t[v]>u.length-1){return}x=u[t[v]]}if(x.nodeType===3){y=Math.min(t[0],x.nodeValue.length)}if(x.nodeType===1){y=Math.min(t[0],x.childNodes.length)}if(z){f.setStart(x,y)}else{f.setEnd(x,y)}}return true}if(g(true)&&g()){r.setRng(f)}}else{if(n.id){function k(A){var u=l.get(n.id+"_"+A),z,t,x,y,v=n.keep;if(u){z=u.parentNode;if(A=="start"){if(!v){t=l.nodeIndex(u)}else{z=u.firstChild;t=1}j=s=z;o=p=t}else{if(!v){t=l.nodeIndex(u)}else{z=u.firstChild;t=1}s=z;p=t}if(!v){y=u.previousSibling;x=u.nextSibling;d(c.grep(u.childNodes),function(B){if(B.nodeType==3){B.nodeValue=B.nodeValue.replace(/\uFEFF/g,"")}});while(u=l.get(n.id+"_"+A)){l.remove(u,1)}if(y&&x&&y.nodeType==x.nodeType&&y.nodeType==3&&!c.isOpera){t=y.nodeValue.length;y.appendData(x.nodeValue);l.remove(x);if(A=="start"){j=s=y;o=p=t}else{s=y;p=t}}}}}function m(t){if(l.isBlock(t)&&!t.innerHTML){t.innerHTML=!a?'<br data-mce-bogus="1" />':" "}return t}k("start");k("end");if(j){f=l.createRng();f.setStart(m(j),o);f.setEnd(m(s),p);r.setRng(f)}}else{if(n.name){r.select(l.select(n.name)[n.index])}else{if(n.rng){r.setRng(n.rng)}}}}}},select:function(k,j){var i=this,l=i.dom,g=l.createRng(),f;if(k){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 h=this,g=h.getRng(),i;if(g.item){i=g.item(0);g=h.win.document.body.createTextRange();g.moveToElementText(i)}g.collapse(!!f);h.setRng(g)},getSel:function(){var g=this,f=this.win;return f.getSelection?f.getSelection():f.document.selection},getRng:function(l){var g=this,h,i,k,j=g.win.document;if(l&&g.tridentSel){return g.tridentSel.getRangeAt(0)}try{if(h=g.getSel()){i=h.rangeCount>0?h.getRangeAt(0):(h.createRange?h.createRange():j.createRange())}}catch(f){}if(c.isIE&&i&&i.setStart&&j.selection.createRange().item){k=j.selection.createRange().item(0);i=j.createRange();i.setStartBefore(k);i.setEndAfter(k)}if(!i){i=j.createRange?j.createRange():j.body.createTextRange()}if(g.selectedRange&&g.explicitRange){if(i.compareBoundaryPoints(i.START_TO_START,g.selectedRange)===0&&i.compareBoundaryPoints(i.END_TO_END,g.selectedRange)===0){i=g.explicitRange}else{g.selectedRange=null;g.explicitRange=null}}return i},setRng:function(i){var h,g=this;if(!g.tridentSel){h=g.getSel();if(h){g.explicitRange=i;try{h.removeAllRanges()}catch(f){}h.addRange(i);g.selectedRange=h.getRangeAt(0)}}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 h=this,g=h.getRng(),i=h.getSel(),l,k=g.startContainer,f=g.endContainer;if(!g){return h.dom.getRoot()}if(g.setStart){l=g.commonAncestorContainer;if(!g.collapsed){if(g.startContainer==g.endContainer){if(g.endOffset-g.startOffset<2){if(g.startContainer.hasChildNodes()){l=g.startContainer.childNodes[g.startOffset]}}}if(k.nodeType===3&&f.nodeType===3){function j(p,m){var o=p;while(p&&p.nodeType===3&&p.length===0){p=m?p.nextSibling:p.previousSibling}return p||o}if(k.length===g.startOffset){k=j(k.nextSibling,true)}else{k=k.parentNode}if(g.endOffset===0){f=j(f.previousSibling,false)}else{f=f.parentNode}if(k&&k===f){return k}}}if(l&&l.nodeType==3){return l.parentNode}return l}return g.item?g.item(0):g.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)}},_fixIESelection:function(){var g=this.dom,m=g.doc,h=m.body,j,n,f;m.documentElement.unselectable=true;function i(o,r){var p=h.createTextRange();try{p.moveToPoint(o,r)}catch(q){p=null}return p}function l(p){var o;if(p.button){o=i(p.x,p.y);if(o){if(o.compareEndPoints("StartToStart",n)>0){o.setEndPoint("StartToStart",n)}else{o.setEndPoint("EndToEnd",n)}o.select()}}else{k()}}function k(){var o=m.selection.createRange();if(n&&!o.item&&o.compareEndPoints("StartToEnd",o)===0){n.select()}g.unbind(m,"mouseup",k);g.unbind(m,"mousemove",l);n=j=0}g.bind(m,["mousedown","contextmenu"],function(o){if(o.target.nodeName==="HTML"){if(j){k()}f=m.documentElement;if(f.scrollHeight>f.clientHeight){return}j=1;n=i(o.x,o.y);if(n){g.bind(m,"mouseup",k);g.bind(m,"mousemove",l);g.win.focus();n.select()}}})}})})(tinymce);(function(a){a.dom.Serializer=function(e,i,f){var h,b,d=a.isIE,g=a.each,c;if(!e.apply_source_formatting){e.indent=false}e.remove_trailing_brs=true;i=i||a.DOM;f=f||new a.html.Schema(e);e.entity_encoding=e.entity_encoding||"named";h=new a.util.Dispatcher(self);b=new a.util.Dispatcher(self);c=new a.html.DomParser(e,f);c.addAttributeFilter("src,href,style",function(k,j){var o=k.length,l,q,n="data-mce-"+j,p=e.url_converter,r=e.url_converter_scope,m;while(o--){l=k[o];q=l.attributes.map[n];if(q!==m){l.attr(j,q.length>0?q:null);l.attr(n,null)}else{q=l.attributes.map[j];if(j==="style"){q=i.serializeStyle(i.parseStyle(q),l.name)}else{if(p){q=p.call(r,q,j,l.name)}}l.attr(j,q.length>0?q:null)}}});c.addAttributeFilter("class",function(j,k){var l=j.length,m,n;while(l--){m=j[l];n=m.attr("class").replace(/\s*mce(Item\w+|Selected)\s*/g,"");m.attr("class",n.length>0?n:null)}});c.addAttributeFilter("data-mce-type",function(j,l,k){var m=j.length,n;while(m--){n=j[m];if(n.attributes.map["data-mce-type"]==="bookmark"&&!k.cleanup){n.remove()}}});c.addNodeFilter("script,style",function(k,l){var m=k.length,n,o;function j(p){return p.replace(/(<!--\[CDATA\[|\]\]-->)/g,"\n").replace(/^[\r\n]*|[\r\n]*$/g,"").replace(/^\s*(\/\/\s*<!--|\/\/\s*<!\[CDATA\[|<!--|<!\[CDATA\[)[\r\n]*/g,"").replace(/\s*(\/\/\s*\]\]>|\/\/\s*-->|\]\]>|-->|\]\]-->)\s*$/g,"")}while(m--){n=k[m];o=n.firstChild?n.firstChild.value:"";if(l==="script"){n.attr("type",(n.attr("type")||"text/javascript").replace(/^mce\-/,""));if(o.length>0){n.firstChild.value="// <![CDATA[\n"+j(o)+"\n// ]]>"}}else{if(o.length>0){n.firstChild.value="<!--\n"+j(o)+"\n-->"}}}});c.addNodeFilter("#comment",function(j,k){var l=j.length,m;while(l--){m=j[l];if(m.value.indexOf("[CDATA[")===0){m.name="#cdata";m.type=4;m.value=m.value.replace(/^\[CDATA\[|\]\]$/g,"")}else{if(m.value.indexOf("mce:protected ")===0){m.name="#text";m.type=3;m.raw=true;m.value=unescape(m.value).substr(14)}}}});c.addNodeFilter("xml:namespace,input",function(j,k){var l=j.length,m;while(l--){m=j[l];if(m.type===7){m.remove()}else{if(m.type===1){if(k==="input"&&!("type" in m.attributes.map)){m.attr("type","text")}}}}});if(e.fix_list_elements){c.addNodeFilter("ul,ol",function(k,l){var m=k.length,n,j;while(m--){n=k[m];j=n.parent;if(j.name==="ul"||j.name==="ol"){if(n.prev&&n.prev.name==="li"){n.prev.append(n)}}}})}c.addAttributeFilter("data-mce-src,data-mce-href,data-mce-style",function(j,k){var l=j.length;while(l--){j[l].attr(k,null)}});return{schema:f,addNodeFilter:c.addNodeFilter,addAttributeFilter:c.addAttributeFilter,onPreProcess:h,onPostProcess:b,serialize:function(o,m){var l,p,k,j,n;if(d&&i.select("script,style,select").length>0){n=o.innerHTML;o=o.cloneNode(false);i.setHTML(o,n)}else{o=o.cloneNode(true)}l=o.ownerDocument.implementation;if(l.createHTMLDocument){p=l.createHTMLDocument("");g(o.nodeName=="BODY"?o.childNodes:[o],function(q){p.body.appendChild(p.importNode(q,true))});if(o.nodeName!="BODY"){o=p.body.firstChild}else{o=p.body}k=i.doc;i.doc=p}m=m||{};m.format=m.format||"html";if(!m.no_events){m.node=o;h.dispatch(self,m)}j=new a.html.Serializer(e,f);m.content=j.serialize(c.parse(m.getInner?o.innerHTML:a.trim(i.getOuterHTML(o),m),m));if(!m.cleanup){m.content=m.content.replace(/\uFEFF/g,"")}if(!m.no_events){b.dispatch(self,m)}if(k){i.doc=k}m.node=null;return m.content},addRules:function(j){f.addValidElements(j)},setRules:function(j){f.setValidElements(j)}}}})(tinymce);(function(a){a.dom.ScriptLoader=function(h){var c=0,k=1,i=2,l={},j=[],f={},d=[],g=0,e;function b(m,v){var x=this,q=a.DOM,s,o,r,n;function p(){q.remove(n);if(s){s.onreadystatechange=s.onload=s=null}v()}function u(){if(typeof(console)!=="undefined"&&console.log){console.log("Failed to load: "+m)}}n=q.uniqueId();if(a.isIE6){o=new a.util.URI(m);r=location;if(o.host==r.hostname&&o.port==r.port&&(o.protocol+":")==r.protocol&&o.protocol.toLowerCase()!="file"){a.util.XHR.send({url:a._addVer(o.getURI()),success:function(y){var t=q.create("script",{type:"text/javascript"});t.text=y;document.getElementsByTagName("head")[0].appendChild(t);q.remove(t);p()},error:u});return}}s=q.create("script",{id:n,type:"text/javascript",src:a._addVer(m)});if(!a.isIE){s.onload=p}s.onerror=u;if(!a.isOpera){s.onreadystatechange=function(){var t=s.readyState;if(t=="complete"||t=="loaded"){p()}}}(document.getElementsByTagName("head")[0]||document.body).appendChild(s)}this.isDone=function(m){return l[m]==i};this.markDone=function(m){l[m]=i};this.add=this.load=function(m,q,n){var o,p=l[m];if(p==e){j.push(m);l[m]=c}if(q){if(!f[m]){f[m]=[]}f[m].push({func:q,scope:n||this})}};this.loadQueue=function(n,m){this.loadScripts(j,n,m)};this.loadScripts=function(m,q,p){var o;function n(r){a.each(f[r],function(s){s.func.call(s.scope)});f[r]=e}d.push({func:q,scope:p||this});o=function(){var r=a.grep(m);m.length=0;a.each(r,function(s){if(l[s]==i){n(s);return}if(l[s]!=k){l[s]=k;g++;b(s,function(){l[s]=i;g--;n(s);o()})}});if(!g){a.each(d,function(s){s.func.call(s.scope)});d.length=0}};o()}};a.ScriptLoader=new a.dom.ScriptLoader()})(tinymce);tinymce.dom.TreeWalker=function(a,c){var b=a;function d(i,f,e,j){var h,g;if(i){if(!j&&i[f]){return i[f]}if(i!=c){h=i[e];if(h){return h}for(g=i.parentNode;g&&g!=c;g=g.parentNode){h=g[e];if(h){return h}}}}}this.current=function(){return b};this.next=function(e){return(b=d(b,"firstChild","nextSibling",e))};this.prev=function(e){return(b=d(b,"lastChild","previousSibling",e))}};(function(a){a.dom.RangeUtils=function(c){var b="\uFEFF";this.walk=function(d,r){var h=d.startContainer,k=d.startOffset,s=d.endContainer,l=d.endOffset,i,f,n,g,q,p,e;e=c.select("td.mceSelected,th.mceSelected");if(e.length>0){a.each(e,function(t){r([t])});return}function o(v,u,t){var x=[];for(;v&&v!=t;v=v[u]){x.push(v)}return x}function m(u,t){do{if(u.parentNode==t){return u}u=u.parentNode}while(u)}function j(v,u,x){var t=x?"nextSibling":"previousSibling";for(g=v,q=g.parentNode;g&&g!=u;g=q){q=g.parentNode;p=o(g==v?g:g[t],t);if(p.length){if(!x){p.reverse()}r(p)}}}if(h.nodeType==1&&h.hasChildNodes()){h=h.childNodes[k]}if(s.nodeType==1&&s.hasChildNodes()){s=s.childNodes[Math.min(l-1,s.childNodes.length-1)]}i=c.findCommonAncestor(h,s);if(h==s){return r([h])}for(g=h;g;g=g.parentNode){if(g==s){return j(h,i,true)}if(g==i){break}}for(g=s;g;g=g.parentNode){if(g==h){return j(s,i)}if(g==i){break}}f=m(h,i)||h;n=m(s,i)||s;j(h,f,true);p=o(f==h?f:f.nextSibling,"nextSibling",n==s?n.nextSibling:n);if(p.length){r(p)}j(s,n)}};a.dom.RangeUtils.compareRanges=function(c,b){if(c&&b){if(c.item||c.duplicate){if(c.item&&b.item&&c.item(0)===b.item(0)){return true}if(c.isEqual&&b.isEqual&&b.isEqual(c)){return true}}else{return c.startContainer==b.startContainer&&c.startOffset==b.startOffset}}return false}})(tinymce);(function(b){var a=b.dom.Event,c=b.each;b.create("tinymce.ui.KeyboardNavigation",{KeyboardNavigation:function(e,f){var p=this,m=e.root,l=e.items,n=e.enableUpDown,i=e.enableLeftRight||!e.enableUpDown,k=e.excludeFromTabOrder,j,h,o,d,g;f=f||b.DOM;j=function(q){g=q.target.id};h=function(q){f.setAttrib(q.target.id,"tabindex","-1")};d=function(q){var r=f.get(g);f.setAttrib(r,"tabindex","0");r.focus()};p.focus=function(){f.get(g).focus()};p.destroy=function(){c(l,function(q){f.unbind(f.get(q.id),"focus",j);f.unbind(f.get(q.id),"blur",h)});f.unbind(f.get(m),"focus",d);f.unbind(f.get(m),"keydown",o);l=f=m=p.focus=j=h=o=d=null;p.destroy=function(){}};p.moveFocus=function(u,r){var q=-1,t=p.controls,s;if(!g){return}c(l,function(x,v){if(x.id===g){q=v;return false}});q+=u;if(q<0){q=l.length-1}else{if(q>=l.length){q=0}}s=l[q];f.setAttrib(g,"tabindex","-1");f.setAttrib(s.id,"tabindex","0");f.get(s.id).focus();if(e.actOnFocus){e.onAction(s.id)}if(r){a.cancel(r)}};o=function(y){var u=37,t=39,x=38,z=40,q=27,s=14,r=13,v=32;switch(y.keyCode){case u:if(i){p.moveFocus(-1)}break;case t:if(i){p.moveFocus(1)}break;case x:if(n){p.moveFocus(-1)}break;case z:if(n){p.moveFocus(1)}break;case q:if(e.onCancel){e.onCancel();a.cancel(y)}break;case s:case r:case v:if(e.onAction){e.onAction(g);a.cancel(y)}break}};c(l,function(s,q){var r;if(!s.id){s.id=f.uniqueId("_mce_item_")}if(k){f.bind(s.id,"blur",h);r="-1"}else{r=(q===0?"0":"-1")}f.setAttrib(s.id,"tabindex",r);f.bind(f.get(s.id),"focus",j)});if(l[0]){g=l[0].id}f.setAttrib(m,"tabindex","-1");f.bind(f.get(m),"focus",d);f.bind(f.get(m),"keydown",o)}})})(tinymce);(function(c){var b=c.DOM,a=c.is;c.create("tinymce.ui.Control",{Control:function(f,e,d){this.id=f;this.settings=e=e||{};this.rendered=false;this.onRender=new c.util.Dispatcher(this);this.classPrefix="";this.scope=e.scope||this;this.disabled=0;this.active=0;this.editor=d},setAriaProperty:function(f,e){var d=b.get(this.id+"_aria")||b.get(this.id);if(d){b.setAttrib(d,"aria-"+f,!!e)}},focus:function(){b.get(this.id).focus()},setDisabled:function(d){if(d!=this.disabled){this.setAriaProperty("disabled",d);this.setState("Disabled",d);this.setState("Enabled",!d);this.disabled=d}},isDisabled:function(){return this.disabled},setActive:function(d){if(d!=this.active){this.setState("Active",d);this.active=d;this.setAriaProperty("pressed",d)}},isActive:function(){return this.active},setState:function(f,d){var e=b.get(this.id);f=this.classPrefix+f;if(d){b.addClass(e,f)}else{b.removeClass(e,f)}},isRendered:function(){return this.rendered},renderHTML:function(){},renderTo:function(d){b.setHTML(d,this.renderHTML())},postRender:function(){var e=this,d;if(a(e.disabled)){d=e.disabled;e.disabled=-1;e.setDisabled(d)}if(a(e.active)){d=e.active;e.active=-1;e.setActive(d)}},remove:function(){b.remove(this.id);this.destroy()},destroy:function(){c.dom.Event.clear(this.id)}})})(tinymce);tinymce.create("tinymce.ui.Container:tinymce.ui.Control",{Container:function(c,b,a){this.parent(c,b,a);this.controls=[];this.lookup={}},add:function(a){this.lookup[a.id]=a;this.controls.push(a);return a},get:function(a){return this.lookup[a]}});tinymce.create("tinymce.ui.Separator:tinymce.ui.Control",{Separator:function(b,a){this.parent(b,a);this.classPrefix="mceSeparator";this.setDisabled(true)},renderHTML:function(){return tinymce.DOM.createHTML("span",{"class":this.classPrefix,role:"separator","aria-orientation":"vertical",tabindex:"-1"})}});(function(d){var c=d.is,b=d.DOM,e=d.each,a=d.walk;d.create("tinymce.ui.MenuItem:tinymce.ui.Control",{MenuItem:function(g,f){this.parent(g,f);this.classPrefix="mceMenuItem"},setSelected:function(f){this.setState("Selected",f);this.setAriaProperty("checked",!!f);this.selected=f},isSelected:function(){return this.selected},postRender:function(){var f=this;f.parent();if(c(f.selected)){f.setSelected(f.selected)}}})})(tinymce);(function(d){var c=d.is,b=d.DOM,e=d.each,a=d.walk;d.create("tinymce.ui.Menu:tinymce.ui.MenuItem",{Menu:function(h,g){var f=this;f.parent(h,g);f.items={};f.collapsed=false;f.menuCount=0;f.onAddItem=new d.util.Dispatcher(this)},expand:function(g){var f=this;if(g){a(f,function(h){if(h.expand){h.expand()}},"items",f)}f.collapsed=false},collapse:function(g){var f=this;if(g){a(f,function(h){if(h.collapse){h.collapse()}},"items",f)}f.collapsed=true},isCollapsed:function(){return this.collapsed},add:function(f){if(!f.settings){f=new d.ui.MenuItem(f.id||b.uniqueId(),f)}this.onAddItem.dispatch(this,f);return this.items[f.id]=f},addSeparator:function(){return this.add({separator:true})},addMenu:function(f){if(!f.collapse){f=this.createMenu(f)}this.menuCount++;return this.add(f)},hasMenus:function(){return this.menuCount!==0},remove:function(f){delete this.items[f.id]},removeAll:function(){var f=this;a(f,function(g){if(g.removeAll){g.removeAll()}else{g.remove()}g.destroy()},"items",f);f.items={}},createMenu:function(g){var f=new d.ui.Menu(g.id||b.uniqueId(),g);f.onAddItem.add(this.onAddItem.dispatch,this.onAddItem);return f}})})(tinymce);(function(e){var d=e.is,c=e.DOM,f=e.each,a=e.dom.Event,b=e.dom.Element;e.create("tinymce.ui.DropMenu:tinymce.ui.Menu",{DropMenu:function(h,g){g=g||{};g.container=g.container||c.doc.body;g.offset_x=g.offset_x||0;g.offset_y=g.offset_y||0;g.vp_offset_x=g.vp_offset_x||0;g.vp_offset_y=g.vp_offset_y||0;if(d(g.icons)&&!g.icons){g["class"]+=" mceNoIcons"}this.parent(h,g);this.onShowMenu=new e.util.Dispatcher(this);this.onHideMenu=new e.util.Dispatcher(this);this.classPrefix="mceMenu"},createMenu:function(j){var h=this,i=h.settings,g;j.container=j.container||i.container;j.parent=h;j.constrain=j.constrain||i.constrain;j["class"]=j["class"]||i["class"];j.vp_offset_x=j.vp_offset_x||i.vp_offset_x;j.vp_offset_y=j.vp_offset_y||i.vp_offset_y;j.keyboard_focus=i.keyboard_focus;g=new e.ui.DropMenu(j.id||c.uniqueId(),j);g.onAddItem.add(h.onAddItem.dispatch,h.onAddItem);return g},focus:function(){var g=this;if(g.keyboardNav){g.keyboardNav.focus()}},update:function(){var i=this,j=i.settings,g=c.get("menu_"+i.id+"_tbl"),l=c.get("menu_"+i.id+"_co"),h,k;h=j.max_width?Math.min(g.clientWidth,j.max_width):g.clientWidth;k=j.max_height?Math.min(g.clientHeight,j.max_height):g.clientHeight;if(!c.boxModel){i.element.setStyles({width:h+2,height:k+2})}else{i.element.setStyles({width:h,height:k})}if(j.max_width){c.setStyle(l,"width",h)}if(j.max_height){c.setStyle(l,"height",k);if(g.clientHeight<j.max_height){c.setStyle(l,"overflow","hidden")}}},showMenu:function(p,n,r){var z=this,A=z.settings,o,g=c.getViewPort(),u,l,v,q,i=2,k,j,m=z.classPrefix;z.collapse(1);if(z.isMenuVisible){return}if(!z.rendered){o=c.add(z.settings.container,z.renderNode());f(z.items,function(h){h.postRender()});z.element=new b("menu_"+z.id,{blocker:1,container:A.container})}else{o=c.get("menu_"+z.id)}if(!e.isOpera){c.setStyles(o,{left:-65535,top:-65535})}c.show(o);z.update();p+=A.offset_x||0;n+=A.offset_y||0;g.w-=4;g.h-=4;if(A.constrain){u=o.clientWidth-i;l=o.clientHeight-i;v=g.x+g.w;q=g.y+g.h;if((p+A.vp_offset_x+u)>v){p=r?r-u:Math.max(0,(v-A.vp_offset_x)-u)}if((n+A.vp_offset_y+l)>q){n=Math.max(0,(q-A.vp_offset_y)-l)}}c.setStyles(o,{left:p,top:n});z.element.update();z.isMenuVisible=1;z.mouseClickFunc=a.add(o,"click",function(s){var h;s=s.target;if(s&&(s=c.getParent(s,"tr"))&&!c.hasClass(s,m+"ItemSub")){h=z.items[s.id];if(h.isDisabled()){return}k=z;while(k){if(k.hideMenu){k.hideMenu()}k=k.settings.parent}if(h.settings.onclick){h.settings.onclick(s)}return a.cancel(s)}});if(z.hasMenus()){z.mouseOverFunc=a.add(o,"mouseover",function(x){var h,t,s;x=x.target;if(x&&(x=c.getParent(x,"tr"))){h=z.items[x.id];if(z.lastMenu){z.lastMenu.collapse(1)}if(h.isDisabled()){return}if(x&&c.hasClass(x,m+"ItemSub")){t=c.getRect(x);h.showMenu((t.x+t.w-i),t.y-i,t.x);z.lastMenu=h;c.addClass(c.get(h.id).firstChild,m+"ItemActive")}}})}a.add(o,"keydown",z._keyHandler,z);z.onShowMenu.dispatch(z);if(A.keyboard_focus){z._setupKeyboardNav()}},hideMenu:function(j){var g=this,i=c.get("menu_"+g.id),h;if(!g.isMenuVisible){return}if(g.keyboardNav){g.keyboardNav.destroy()}a.remove(i,"mouseover",g.mouseOverFunc);a.remove(i,"click",g.mouseClickFunc);a.remove(i,"keydown",g._keyHandler);c.hide(i);g.isMenuVisible=0;if(!j){g.collapse(1)}if(g.element){g.element.hide()}if(h=c.get(g.id)){c.removeClass(h.firstChild,g.classPrefix+"ItemActive")}g.onHideMenu.dispatch(g)},add:function(i){var g=this,h;i=g.parent(i);if(g.isRendered&&(h=c.get("menu_"+g.id))){g._add(c.select("tbody",h)[0],i)}return i},collapse:function(g){this.parent(g);this.hideMenu(1)},remove:function(g){c.remove(g.id);this.destroy();return this.parent(g)},destroy:function(){var g=this,h=c.get("menu_"+g.id);if(g.keyboardNav){g.keyboardNav.destroy()}a.remove(h,"mouseover",g.mouseOverFunc);a.remove(c.select("a",h),"focus",g.mouseOverFunc);a.remove(h,"click",g.mouseClickFunc);a.remove(h,"keydown",g._keyHandler);if(g.element){g.element.remove()}c.remove(h)},renderNode:function(){var i=this,j=i.settings,l,h,k,g;g=c.create("div",{role:"listbox",id:"menu_"+i.id,"class":j["class"],style:"position:absolute;left:0;top:0;z-index:200000;outline:0"});if(i.settings.parent){c.setAttrib(g,"aria-parent","menu_"+i.settings.parent.id)}k=c.add(g,"div",{role:"presentation",id:"menu_"+i.id+"_co","class":i.classPrefix+(j["class"]?" "+j["class"]:"")});i.element=new b("menu_"+i.id,{blocker:1,container:j.container});if(j.menu_line){c.add(k,"span",{"class":i.classPrefix+"Line"})}l=c.add(k,"table",{role:"presentation",id:"menu_"+i.id+"_tbl",border:0,cellPadding:0,cellSpacing:0});h=c.add(l,"tbody");f(i.items,function(m){i._add(h,m)});i.rendered=true;return g},_setupKeyboardNav:function(){var i,h,g=this;i=c.select("#menu_"+g.id)[0];h=c.select("a[role=option]","menu_"+g.id);h.splice(0,0,i);g.keyboardNav=new e.ui.KeyboardNavigation({root:"menu_"+g.id,items:h,onCancel:function(){g.hideMenu()},enableUpDown:true});i.focus()},_keyHandler:function(g){var h=this,i;switch(g.keyCode){case 37:if(h.settings.parent){h.hideMenu();h.settings.parent.focus();a.cancel(g)}break;case 39:if(h.mouseOverFunc){h.mouseOverFunc(g)}break}},_add:function(j,h){var i,q=h.settings,p,l,k,m=this.classPrefix,g;if(q.separator){l=c.add(j,"tr",{id:h.id,"class":m+"ItemSeparator"});c.add(l,"td",{"class":m+"ItemSeparator"});if(i=l.previousSibling){c.addClass(i,"mceLast")}return}i=l=c.add(j,"tr",{id:h.id,"class":m+"Item "+m+"ItemEnabled"});i=k=c.add(i,q.titleItem?"th":"td");i=p=c.add(i,"a",{id:h.id+"_aria",role:q.titleItem?"presentation":"option",href:"javascript:;",onclick:"return false;",onmousedown:"return false;"});if(q.parent){c.setAttrib(p,"aria-haspopup","true");c.setAttrib(p,"aria-owns","menu_"+h.id)}c.addClass(k,q["class"]);g=c.add(i,"span",{"class":"mceIcon"+(q.icon?" mce_"+q.icon:"")});if(q.icon_src){c.add(g,"img",{src:q.icon_src})}i=c.add(i,q.element||"span",{"class":"mceText",title:h.settings.title},h.settings.title);if(h.settings.style){c.setAttrib(i,"style",h.settings.style)}if(j.childNodes.length==1){c.addClass(l,"mceFirst")}if((i=l.previousSibling)&&c.hasClass(i,m+"ItemSeparator")){c.addClass(l,"mceFirst")}if(h.collapse){c.addClass(l,m+"ItemSub")}if(i=l.previousSibling){c.removeClass(i,"mceLast")}c.addClass(l,"mceLast")}})})(tinymce);(function(b){var a=b.DOM;b.create("tinymce.ui.Button:tinymce.ui.Control",{Button:function(e,d,c){this.parent(e,d,c);this.classPrefix="mceButton"},renderHTML:function(){var f=this.classPrefix,e=this.settings,d,c;c=a.encode(e.label||"");d='<a role="button" id="'+this.id+'" href="javascript:;" class="'+f+" "+f+"Enabled "+e["class"]+(c?" "+f+"Labeled":"")+'" onmousedown="return false;" onclick="return false;" aria-labelledby="'+this.id+'_voice" title="'+a.encode(e.title)+'">';if(e.image){d+='<img class="mceIcon" src="'+e.image+'" alt="'+a.encode(e.title)+'" />'+c}else{d+='<span class="mceIcon '+e["class"]+'"></span>'+(c?'<span class="'+f+'Label">'+c+"</span>":"")}d+='<span class="mceVoiceLabel mceIconOnly" style="display: none;" id="'+this.id+'_voice">'+e.title+"</span>";d+="</a>";return d},postRender:function(){var c=this,d=c.settings;b.dom.Event.add(c.id,"click",function(f){if(!c.isDisabled()){return d.onclick.call(d.scope,f)}})}})})(tinymce);(function(d){var c=d.DOM,b=d.dom.Event,e=d.each,a=d.util.Dispatcher;d.create("tinymce.ui.ListBox:tinymce.ui.Control",{ListBox:function(i,h,f){var g=this;g.parent(i,h,f);g.items=[];g.onChange=new a(g);g.onPostRender=new a(g);g.onAdd=new a(g);g.onRenderMenu=new d.util.Dispatcher(this);g.classPrefix="mceListBox"},select:function(h){var g=this,j,i;if(h==undefined){return g.selectByIndex(-1)}if(h&&h.call){i=h}else{i=function(f){return f==h}}if(h!=g.selectedValue){e(g.items,function(k,f){if(i(k.value)){j=1;g.selectByIndex(f);return false}});if(!j){g.selectByIndex(-1)}}},selectByIndex:function(f){var g=this,h,i;if(f!=g.selectedIndex){h=c.get(g.id+"_text");i=g.items[f];if(i){g.selectedValue=i.value;g.selectedIndex=f;c.setHTML(h,c.encode(i.title));c.removeClass(h,"mceTitle");c.setAttrib(g.id,"aria-valuenow",i.title)}else{c.setHTML(h,c.encode(g.settings.title));c.addClass(h,"mceTitle");g.selectedValue=g.selectedIndex=null;c.setAttrib(g.id,"aria-valuenow",g.settings.title)}h=0}},add:function(i,f,h){var g=this;h=h||{};h=d.extend(h,{title:i,value:f});g.items.push(h);g.onAdd.dispatch(g,h)},getLength:function(){return this.items.length},renderHTML:function(){var i="",f=this,g=f.settings,j=f.classPrefix;i='<span role="button" aria-haspopup="true" aria-labelledby="'+f.id+'_text" aria-describedby="'+f.id+'_voiceDesc"><table role="presentation" tabindex="0" id="'+f.id+'" cellpadding="0" cellspacing="0" class="'+j+" "+j+"Enabled"+(g["class"]?(" "+g["class"]):"")+'"><tbody><tr>';i+="<td>"+c.createHTML("span",{id:f.id+"_voiceDesc","class":"voiceLabel",style:"display:none;"},f.settings.title);i+=c.createHTML("a",{id:f.id+"_text",tabindex:-1,href:"javascript:;","class":"mceText",onclick:"return false;",onmousedown:"return false;"},c.encode(f.settings.title))+"</td>";i+="<td>"+c.createHTML("a",{id:f.id+"_open",tabindex:-1,href:"javascript:;","class":"mceOpen",onclick:"return false;",onmousedown:"return false;"},'<span><span style="display:none;" class="mceIconOnly" aria-hidden="true">\u25BC</span></span>')+"</td>";i+="</tr></tbody></table></span>";return i},showMenu:function(){var g=this,j,i,h=c.get(this.id),f;if(g.isDisabled()||g.items.length==0){return}if(g.menu&&g.menu.isMenuVisible){return g.hideMenu()}if(!g.isMenuRendered){g.renderMenu();g.isMenuRendered=true}j=c.getPos(this.settings.menu_container);i=c.getPos(h);f=g.menu;f.settings.offset_x=i.x;f.settings.offset_y=i.y;f.settings.keyboard_focus=!d.isOpera;if(g.oldID){f.items[g.oldID].setSelected(0)}e(g.items,function(k){if(k.value===g.selectedValue){f.items[k.id].setSelected(1);g.oldID=k.id}});f.showMenu(0,h.clientHeight);b.add(c.doc,"mousedown",g.hideMenu,g);c.addClass(g.id,g.classPrefix+"Selected")},hideMenu:function(g){var f=this;if(f.menu&&f.menu.isMenuVisible){c.removeClass(f.id,f.classPrefix+"Selected");if(g&&g.type=="mousedown"&&(g.target.id==f.id+"_text"||g.target.id==f.id+"_open")){return}if(!g||!c.getParent(g.target,".mceMenu")){c.removeClass(f.id,f.classPrefix+"Selected");b.remove(c.doc,"mousedown",f.hideMenu,f);f.menu.hideMenu()}}},renderMenu:function(){var g=this,f;f=g.settings.control_manager.createDropMenu(g.id+"_menu",{menu_line:1,"class":g.classPrefix+"Menu mceNoIcons",max_width:150,max_height:150});f.onHideMenu.add(function(){g.hideMenu();g.focus()});f.add({title:g.settings.title,"class":"mceMenuItemTitle",onclick:function(){if(g.settings.onselect("")!==false){g.select("")}}});e(g.items,function(h){if(h.value===undefined){f.add({title:h.title,"class":"mceMenuItemTitle",onclick:function(){if(g.settings.onselect("")!==false){g.select("")}}})}else{h.id=c.uniqueId();h.onclick=function(){if(g.settings.onselect(h.value)!==false){g.select(h.value)}};f.add(h)}});g.onRenderMenu.dispatch(g,f);g.menu=f},postRender:function(){var f=this,g=f.classPrefix;b.add(f.id,"click",f.showMenu,f);b.add(f.id,"keydown",function(h){if(h.keyCode==32){f.showMenu(h);b.cancel(h)}});b.add(f.id,"focus",function(){if(!f._focused){f.keyDownHandler=b.add(f.id,"keydown",function(h){if(h.keyCode==40){f.showMenu();b.cancel(h)}});f.keyPressHandler=b.add(f.id,"keypress",function(i){var h;if(i.keyCode==13){h=f.selectedValue;f.selectedValue=null;b.cancel(i);f.settings.onselect(h)}})}f._focused=1});b.add(f.id,"blur",function(){b.remove(f.id,"keydown",f.keyDownHandler);b.remove(f.id,"keypress",f.keyPressHandler);f._focused=0});if(d.isIE6||!c.boxModel){b.add(f.id,"mouseover",function(){if(!c.hasClass(f.id,g+"Disabled")){c.addClass(f.id,g+"Hover")}});b.add(f.id,"mouseout",function(){if(!c.hasClass(f.id,g+"Disabled")){c.removeClass(f.id,g+"Hover")}})}f.onPostRender.dispatch(f,c.get(f.id))},destroy:function(){this.parent();b.clear(this.id+"_text");b.clear(this.id+"_open")}})})(tinymce);(function(d){var c=d.DOM,b=d.dom.Event,e=d.each,a=d.util.Dispatcher;d.create("tinymce.ui.NativeListBox:tinymce.ui.ListBox",{NativeListBox:function(g,f){this.parent(g,f);this.classPrefix="mceNativeListBox"},setDisabled:function(f){c.get(this.id).disabled=f;this.setAriaProperty("disabled",f)},isDisabled:function(){return c.get(this.id).disabled},select:function(h){var g=this,j,i;if(h==undefined){return g.selectByIndex(-1)}if(h&&h.call){i=h}else{i=function(f){return f==h}}if(h!=g.selectedValue){e(g.items,function(k,f){if(i(k.value)){j=1;g.selectByIndex(f);return false}});if(!j){g.selectByIndex(-1)}}},selectByIndex:function(f){c.get(this.id).selectedIndex=f+1;this.selectedValue=this.items[f]?this.items[f].value:null},add:function(j,g,f){var i,h=this;f=f||{};f.value=g;if(h.isRendered()){c.add(c.get(this.id),"option",f,j)}i={title:j,value:g,attribs:f};h.items.push(i);h.onAdd.dispatch(h,i)},getLength:function(){return this.items.length},renderHTML:function(){var g,f=this;g=c.createHTML("option",{value:""},"-- "+f.settings.title+" --");e(f.items,function(h){g+=c.createHTML("option",{value:h.value},h.title)});g=c.createHTML("select",{id:f.id,"class":"mceNativeListBox","aria-labelledby":f.id+"_aria"},g);g+=c.createHTML("span",{id:f.id+"_aria",style:"display: none"},f.settings.title);return g},postRender:function(){var g=this,h,i=true;g.rendered=true;function f(k){var j=g.items[k.target.selectedIndex-1];if(j&&(j=j.value)){g.onChange.dispatch(g,j);if(g.settings.onselect){g.settings.onselect(j)}}}b.add(g.id,"change",f);b.add(g.id,"keydown",function(k){var j;b.remove(g.id,"change",h);i=false;j=b.add(g.id,"blur",function(){if(i){return}i=true;b.add(g.id,"change",f);b.remove(g.id,"blur",j)});if(k.keyCode==13||k.keyCode==32){f(k);return b.cancel(k)}});g.onPostRender.dispatch(g,c.get(g.id))}})})(tinymce);(function(c){var b=c.DOM,a=c.dom.Event,d=c.each;c.create("tinymce.ui.MenuButton:tinymce.ui.Button",{MenuButton:function(g,f,e){this.parent(g,f,e);this.onRenderMenu=new c.util.Dispatcher(this);f.menu_container=f.menu_container||b.doc.body},showMenu:function(){var g=this,j,i,h=b.get(g.id),f;if(g.isDisabled()){return}if(!g.isMenuRendered){g.renderMenu();g.isMenuRendered=true}if(g.isMenuVisible){return g.hideMenu()}j=b.getPos(g.settings.menu_container);i=b.getPos(h);f=g.menu;f.settings.offset_x=i.x;f.settings.offset_y=i.y;f.settings.vp_offset_x=i.x;f.settings.vp_offset_y=i.y;f.settings.keyboard_focus=g._focused;f.showMenu(0,h.clientHeight);a.add(b.doc,"mousedown",g.hideMenu,g);g.setState("Selected",1);g.isMenuVisible=1},renderMenu:function(){var f=this,e;e=f.settings.control_manager.createDropMenu(f.id+"_menu",{menu_line:1,"class":this.classPrefix+"Menu",icons:f.settings.icons});e.onHideMenu.add(function(){f.hideMenu();f.focus()});f.onRenderMenu.dispatch(f,e);f.menu=e},hideMenu:function(g){var f=this;if(g&&g.type=="mousedown"&&b.getParent(g.target,function(h){return h.id===f.id||h.id===f.id+"_open"})){return}if(!g||!b.getParent(g.target,".mceMenu")){f.setState("Selected",0);a.remove(b.doc,"mousedown",f.hideMenu,f);if(f.menu){f.menu.hideMenu()}}f.isMenuVisible=0},postRender:function(){var e=this,f=e.settings;a.add(e.id,"click",function(){if(!e.isDisabled()){if(f.onclick){f.onclick(e.value)}e.showMenu()}})}})})(tinymce);(function(c){var b=c.DOM,a=c.dom.Event,d=c.each;c.create("tinymce.ui.SplitButton:tinymce.ui.MenuButton",{SplitButton:function(g,f,e){this.parent(g,f,e);this.classPrefix="mceSplitButton"},renderHTML:function(){var i,f=this,g=f.settings,e;i="<tbody><tr>";if(g.image){e=b.createHTML("img ",{src:g.image,role:"presentation","class":"mceAction "+g["class"]})}else{e=b.createHTML("span",{"class":"mceAction "+g["class"]},"")}e+=b.createHTML("span",{"class":"mceVoiceLabel mceIconOnly",id:f.id+"_voice",style:"display:none;"},g.title);i+="<td >"+b.createHTML("a",{role:"button",id:f.id+"_action",tabindex:"-1",href:"javascript:;","class":"mceAction "+g["class"],onclick:"return false;",onmousedown:"return false;",title:g.title},e)+"</td>";e=b.createHTML("span",{"class":"mceOpen "+g["class"]},'<span style="display:none;" class="mceIconOnly" aria-hidden="true">\u25BC</span>');i+="<td >"+b.createHTML("a",{role:"button",id:f.id+"_open",tabindex:"-1",href:"javascript:;","class":"mceOpen "+g["class"],onclick:"return false;",onmousedown:"return false;",title:g.title},e)+"</td>";i+="</tr></tbody>";i=b.createHTML("table",{id:f.id,role:"presentation",tabindex:"0","class":"mceSplitButton mceSplitButtonEnabled "+g["class"],cellpadding:"0",cellspacing:"0",title:g.title},i);return b.createHTML("span",{role:"button","aria-labelledby":f.id+"_voice","aria-haspopup":"true"},i)},postRender:function(){var e=this,g=e.settings,f;if(g.onclick){f=function(h){if(!e.isDisabled()){g.onclick(e.value);a.cancel(h)}};a.add(e.id+"_action","click",f);a.add(e.id,["click","keydown"],function(h){var k=32,m=14,i=13,j=38,l=40;if((h.keyCode===32||h.keyCode===13||h.keyCode===14)&&!h.altKey&&!h.ctrlKey&&!h.metaKey){f();a.cancel(h)}else{if(h.type==="click"||h.keyCode===l){e.showMenu();a.cancel(h)}}})}a.add(e.id+"_open","click",function(h){e.showMenu();a.cancel(h)});a.add([e.id,e.id+"_open"],"focus",function(){e._focused=1});a.add([e.id,e.id+"_open"],"blur",function(){e._focused=0});if(c.isIE6||!b.boxModel){a.add(e.id,"mouseover",function(){if(!b.hasClass(e.id,"mceSplitButtonDisabled")){b.addClass(e.id,"mceSplitButtonHover")}});a.add(e.id,"mouseout",function(){if(!b.hasClass(e.id,"mceSplitButtonDisabled")){b.removeClass(e.id,"mceSplitButtonHover")}})}},destroy:function(){this.parent();a.clear(this.id+"_action");a.clear(this.id+"_open");a.clear(this.id)}})})(tinymce);(function(d){var c=d.DOM,a=d.dom.Event,b=d.is,e=d.each;d.create("tinymce.ui.ColorSplitButton:tinymce.ui.SplitButton",{ColorSplitButton:function(i,h,f){var g=this;g.parent(i,h,f);g.settings=h=d.extend({colors:"000000,993300,333300,003300,003366,000080,333399,333333,800000,FF6600,808000,008000,008080,0000FF,666699,808080,FF0000,FF9900,99CC00,339966,33CCCC,3366FF,800080,999999,FF00FF,FFCC00,FFFF00,00FF00,00FFFF,00CCFF,993366,C0C0C0,FF99CC,FFCC99,FFFF99,CCFFCC,CCFFFF,99CCFF,CC99FF,FFFFFF",grid_width:8,default_color:"#888888"},g.settings);g.onShowMenu=new d.util.Dispatcher(g);g.onHideMenu=new d.util.Dispatcher(g);g.value=h.default_color},showMenu:function(){var f=this,g,j,i,h;if(f.isDisabled()){return}if(!f.isMenuRendered){f.renderMenu();f.isMenuRendered=true}if(f.isMenuVisible){return f.hideMenu()}i=c.get(f.id);c.show(f.id+"_menu");c.addClass(i,"mceSplitButtonSelected");h=c.getPos(i);c.setStyles(f.id+"_menu",{left:h.x,top:h.y+i.clientHeight,zIndex:200000});i=0;a.add(c.doc,"mousedown",f.hideMenu,f);f.onShowMenu.dispatch(f);if(f._focused){f._keyHandler=a.add(f.id+"_menu","keydown",function(k){if(k.keyCode==27){f.hideMenu()}});c.select("a",f.id+"_menu")[0].focus()}f.isMenuVisible=1},hideMenu:function(g){var f=this;if(f.isMenuVisible){if(g&&g.type=="mousedown"&&c.getParent(g.target,function(h){return h.id===f.id+"_open"})){return}if(!g||!c.getParent(g.target,".mceSplitButtonMenu")){c.removeClass(f.id,"mceSplitButtonSelected");a.remove(c.doc,"mousedown",f.hideMenu,f);a.remove(f.id+"_menu","keydown",f._keyHandler);c.hide(f.id+"_menu")}f.isMenuVisible=0}},renderMenu:function(){var p=this,h,k=0,q=p.settings,g,j,l,o,f;o=c.add(q.menu_container,"div",{role:"listbox",id:p.id+"_menu","class":q.menu_class+" "+q["class"],style:"position:absolute;left:0;top:-1000px;"});h=c.add(o,"div",{"class":q["class"]+" mceSplitButtonMenu"});c.add(h,"span",{"class":"mceMenuLine"});g=c.add(h,"table",{role:"presentation","class":"mceColorSplitMenu"});j=c.add(g,"tbody");k=0;e(b(q.colors,"array")?q.colors:q.colors.split(","),function(i){i=i.replace(/^#/,"");if(!k--){l=c.add(j,"tr");k=q.grid_width-1}g=c.add(l,"td");g=c.add(g,"a",{role:"option",href:"javascript:;",style:{backgroundColor:"#"+i},title:p.editor.getLang("colors."+i,i),"data-mce-color":"#"+i});if(p.editor.forcedHighContrastMode){g=c.add(g,"canvas",{width:16,height:16,"aria-hidden":"true"});if(g.getContext&&(f=g.getContext("2d"))){f.fillStyle="#"+i;f.fillRect(0,0,16,16)}else{c.remove(g)}}});if(q.more_colors_func){g=c.add(j,"tr");g=c.add(g,"td",{colspan:q.grid_width,"class":"mceMoreColors"});g=c.add(g,"a",{role:"option",id:p.id+"_more",href:"javascript:;",onclick:"return false;","class":"mceMoreColors"},q.more_colors_title);a.add(g,"click",function(i){q.more_colors_func.call(q.more_colors_scope||this);return a.cancel(i)})}c.addClass(h,"mceColorSplitMenu");new d.ui.KeyboardNavigation({root:p.id+"_menu",items:c.select("a",p.id+"_menu"),onCancel:function(){p.hideMenu();p.focus()}});a.add(p.id+"_menu","mousedown",function(i){return a.cancel(i)});a.add(p.id+"_menu","click",function(i){var m;i=c.getParent(i.target,"a",j);if(i&&i.nodeName.toLowerCase()=="a"&&(m=i.getAttribute("data-mce-color"))){p.setColor(m)}return a.cancel(i)});return o},setColor:function(f){this.displayColor(f);this.hideMenu();this.settings.onselect(f)},displayColor:function(g){var f=this;c.setStyle(f.id+"_preview","backgroundColor",g);f.value=g},postRender:function(){var f=this,g=f.id;f.parent();c.add(g+"_action","div",{id:g+"_preview","class":"mceColorPreview"});c.setStyle(f.id+"_preview","backgroundColor",f.value)},destroy:function(){this.parent();a.clear(this.id+"_menu");a.clear(this.id+"_more");c.remove(this.id+"_menu")}})})(tinymce);(function(b){var d=b.DOM,c=b.each,a=b.dom.Event;b.create("tinymce.ui.ToolbarGroup:tinymce.ui.Container",{renderHTML:function(){var f=this,i=[],e=f.controls,j=b.each,g=f.settings;i.push('<div id="'+f.id+'" role="group" aria-labelledby="'+f.id+'_voice">');i.push("<span role='application'>");i.push('<span id="'+f.id+'_voice" class="mceVoiceLabel" style="display:none;">'+d.encode(g.name)+"</span>");j(e,function(h){i.push(h.renderHTML())});i.push("</span>");i.push("</div>");return i.join("")},focus:function(){this.keyNav.focus()},postRender:function(){var f=this,e=[];c(f.controls,function(g){c(g.controls,function(h){if(h.id){e.push(h)}})});f.keyNav=new b.ui.KeyboardNavigation({root:f.id,items:e,onCancel:function(){f.editor.focus()},excludeFromTabOrder:!f.settings.tab_focus_toolbar})},destroy:function(){var e=this;e.parent();e.keyNav.destroy();a.clear(e.id)}})})(tinymce);(function(a){var c=a.DOM,b=a.each;a.create("tinymce.ui.Toolbar:tinymce.ui.Container",{renderHTML:function(){var m=this,f="",j,k,n=m.settings,e,d,g,l;l=m.controls;for(e=0;e<l.length;e++){k=l[e];d=l[e-1];g=l[e+1];if(e===0){j="mceToolbarStart";if(k.Button){j+=" mceToolbarStartButton"}else{if(k.SplitButton){j+=" mceToolbarStartSplitButton"}else{if(k.ListBox){j+=" mceToolbarStartListBox"}}}f+=c.createHTML("td",{"class":j},c.createHTML("span",null,"<!-- IE -->"))}if(d&&k.ListBox){if(d.Button||d.SplitButton){f+=c.createHTML("td",{"class":"mceToolbarEnd"},c.createHTML("span",null,"<!-- IE -->"))}}if(c.stdMode){f+='<td style="position: relative">'+k.renderHTML()+"</td>"}else{f+="<td>"+k.renderHTML()+"</td>"}if(g&&k.ListBox){if(g.Button||g.SplitButton){f+=c.createHTML("td",{"class":"mceToolbarStart"},c.createHTML("span",null,"<!-- IE -->"))}}}j="mceToolbarEnd";if(k.Button){j+=" mceToolbarEndButton"}else{if(k.SplitButton){j+=" mceToolbarEndSplitButton"}else{if(k.ListBox){j+=" mceToolbarEndListBox"}}}f+=c.createHTML("td",{"class":j},c.createHTML("span",null,"<!-- IE -->"));return c.createHTML("table",{id:m.id,"class":"mceToolbar"+(n["class"]?" "+n["class"]:""),cellpadding:"0",cellspacing:"0",align:m.settings.align||"",role:"presentation",tabindex:"-1"},"<tbody><tr>"+f+"</tr></tbody>")}})})(tinymce);(function(b){var a=b.util.Dispatcher,c=b.each;b.create("tinymce.AddOnManager",{AddOnManager:function(){var d=this;d.items=[];d.urls={};d.lookup={};d.onAdd=new a(d)},get:function(d){return this.lookup[d]},requireLangPack:function(e){var d=b.settings;if(d&&d.language&&d.language_load!==false){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("/"));if(!f.lookup[h]){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);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<o.length;l++){if(o[l]==n){o.splice(l,1);break}}if(m.activeEditor==n){m._setActive(o[0])}n.destroy();m.onRemoveEditor.dispatch(m,n);return n},execCommand:function(r,p,o){var q=this,n=q.get(o),l;switch(r){case"mceFocus":n.focus();return true;case"mceAddEditor":case"mceAddControl":if(!q.get(o)){new j.Editor(o,q.settings).render()}return true;case"mceAddFrameControl":l=o.window;l.tinyMCE=tinyMCE;l.tinymce=j;j.DOM.doc=l.document;j.DOM.win=l;n=new j.Editor(o.element_id,o);n.render();if(j.isIE){function m(){n.destroy();l.detachEvent("onunload",m);l=l.tinyMCE=l.tinymce=null}l.attachEvent("onunload",m)}o.page_window=null;return true;case"mceRemoveEditor":case"mceRemoveControl":if(n){n.remove()}return true;case"mceToggleEditor":if(!n){q.execCommand("mceAddControl",0,o);return true}if(n.isHidden()){n.show()}else{n.hide()}return true}if(q.activeEditor){return q.activeEditor.execCommand(r,p,o)}return false},execInstanceCommand:function(p,o,n,m){var l=this.get(p);if(l){return l.execCommand(o,n,m)}return false},triggerSave:function(){g(this.editors,function(l){l.save()})},addI18n:function(n,q){var l,m=this.i18n;if(!j.is(n,"string")){g(n,function(r,p){g(r,function(t,s){g(t,function(v,u){if(s==="common"){m[p+"."+u]=v}else{m[p+"."+s+"."+u]=v}})})})}else{g(q,function(r,p){m[n+"."+p]=r})}},_setActive:function(l){this.selectedInstance=this.activeEditor=l}})})(tinymce);(function(m){var n=m.DOM,j=m.dom.Event,f=m.extend,k=m.util.Dispatcher,i=m.each,a=m.isGecko,b=m.isIE,e=m.isWebKit,d=m.is,h=m.ThemeManager,c=m.PluginManager,o=m.inArray,l=m.grep,g=m.explode;m.create("tinymce.Editor",{Editor:function(r,q){var p=this;p.id=p.editorId=r;p.execCommands={};p.queryStateCommands={};p.queryValueCommands={};p.isNotDirty=false;p.plugins={};i(["onPreInit","onBeforeRenderUI","onPostRender","onInit","onRemove","onActivate","onDeactivate","onClick","onEvent","onMouseUp","onMouseDown","onDblClick","onKeyDown","onKeyUp","onKeyPress","onContextMenu","onSubmit","onReset","onPaste","onPreProcess","onPostProcess","onBeforeSetContent","onBeforeGetContent","onSetContent","onGetContent","onLoadContent","onSaveContent","onNodeChange","onChange","onBeforeExecCommand","onExecCommand","onUndo","onRedo","onVisualAid","onSetProgressState"],function(s){p[s]=new k(p)});p.settings=q=f({id:r,language:"en",docs_language:"en",theme:"simple",skin:"default",delta_width:0,delta_height:0,popup_css:"",plugins:"",document_base_url:m.documentBaseURL,add_form_submit_trigger:1,submit_patch:1,add_unload_trigger:1,convert_urls:1,relative_urls:1,remove_script_host:1,table_inline_editing:0,object_resizing:1,cleanup:1,accessibility_focus:1,custom_shortcuts:1,custom_undo_redo_keyboard_shortcuts:1,custom_undo_redo_restore_selection:1,custom_undo_redo:1,doctype:m.isIE6?'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">':"<!DOCTYPE>",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",hidden_input:1,padd_empty_editor:1,render_ui:1,init_theme:1,force_p_newlines:1,indentation:"30px",keep_styles:1,fix_table_elements:1,inline_styles:1,convert_fonts_to_spans:true,indent:"simple",indent_before:"p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,ul,li,area,table,thead,tfoot,tbody,tr",indent_after:"p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,ul,li,area,table,thead,tfoot,tbody,tr",validate:true,entity_encoding:"named",url_converter:p.convertURL,url_converter_scope:p,ie7_compat:true},q);p.documentBaseURI=new m.util.URI(q.document_base_url||m.documentBaseURL,{base_uri:tinyMCE.baseURI});p.baseURI=m.baseURI;p.contentCSS=[];p.execCallback("setup",p)},render:function(r){var u=this,v=u.settings,x=u.id,p=m.ScriptLoader;if(!j.domLoaded){j.add(document,"init",function(){u.render()});return}tinyMCE.settings=v;if(!u.getElement()){return}if(m.isIDevice){return}if(!/TEXTAREA|INPUT/i.test(u.getElement().nodeName)&&v.hidden_input&&n.getParent(x,"form")){n.insertAfter(n.create("input",{type:"hidden",name:x}),x)}if(m.WindowManager){u.windowManager=new m.WindowManager(u)}if(v.encoding=="xml"){u.onGetContent.add(function(s,t){if(t.save){t.content=n.encode(t.content)}})}if(v.add_form_submit_trigger){u.onSubmit.addToTop(function(){if(u.initialized){u.save();u.isNotDirty=1}})}if(v.add_unload_trigger){u._beforeUnload=tinyMCE.onBeforeUnload.add(function(){if(u.initialized&&!u.destroyed&&!u.isHidden()){u.save({format:"raw",no_events:true})}})}m.addUnload(u.destroy,u);if(v.submit_patch){u.onBeforeRenderUI.add(function(){var s=u.getElement().form;if(!s){return}if(s._mceOldSubmit){return}if(!s.submit.nodeType&&!s.submit.length){u.formElement=s;s._mceOldSubmit=s.submit;s.submit=function(){m.triggerSave();u.isNotDirty=1;return u.formElement._mceOldSubmit(u.formElement)}}s=null})}function q(){if(v.language&&v.language_load!==false){p.add(m.baseURL+"/langs/"+v.language+".js")}if(v.theme&&v.theme.charAt(0)!="-"&&!h.urls[v.theme]){h.load(v.theme,"themes/"+v.theme+"/editor_template"+m.suffix+".js")}i(g(v.plugins),function(s){if(s&&s.charAt(0)!="-"&&!c.urls[s]){if(s=="safari"){return}c.load(s,"plugins/"+s+"/editor_plugin"+m.suffix+".js")}});p.loadQueue(function(){if(!u.removed){u.init()}})}q()},init:function(){var r,F=this,G=F.settings,C,z,B=F.getElement(),q,p,D,x,A,E,y;m.add(F);G.aria_label=G.aria_label||n.getAttrib(B,"aria-label",F.getLang("aria.rich_text_area"));if(G.theme){G.theme=G.theme.replace(/-/,"");q=h.get(G.theme);F.theme=new q();if(F.theme.init&&G.init_theme){F.theme.init(F,h.urls[G.theme]||m.documentBaseURL.replace(/\/$/,""))}}i(g(G.plugins.replace(/\-/g,"")),function(H){var I=c.get(H),t=c.urls[H]||m.documentBaseURL.replace(/\/$/,""),s;if(I){s=new I(F,t);F.plugins[H]=s;if(s.init){s.init(F,t)}}});if(G.popup_css!==false){if(G.popup_css){G.popup_css=F.documentBaseURI.toAbsolute(G.popup_css)}else{G.popup_css=F.baseURI.toAbsolute("themes/"+G.theme+"/skins/"+G.skin+"/dialog.css")}}if(G.popup_css_add){G.popup_css+=","+F.documentBaseURI.toAbsolute(G.popup_css_add)}F.controlManager=new m.ControlManager(F);if(G.custom_undo_redo){F.onBeforeExecCommand.add(function(t,H,u,I,s){if(H!="Undo"&&H!="Redo"&&H!="mceRepaint"&&(!s||!s.skip_undo)){F.undoManager.beforeChange()}});F.onExecCommand.add(function(t,H,u,I,s){if(H!="Undo"&&H!="Redo"&&H!="mceRepaint"&&(!s||!s.skip_undo)){F.undoManager.add()}})}F.onExecCommand.add(function(s,t){if(!/^(FontName|FontSize)$/.test(t)){F.nodeChanged()}});if(a){function v(s,t){if(!t||!t.initial){F.execCommand("mceRepaint")}}F.onUndo.add(v);F.onRedo.add(v);F.onSetContent.add(v)}F.onBeforeRenderUI.dispatch(F,F.controlManager);if(G.render_ui){C=G.width||B.style.width||B.offsetWidth;z=G.height||B.style.height||B.offsetHeight;F.orgDisplay=B.style.display;E=/^[0-9\.]+(|px)$/i;if(E.test(""+C)){C=Math.max(parseInt(C)+(q.deltaWidth||0),100)}if(E.test(""+z)){z=Math.max(parseInt(z)+(q.deltaHeight||0),100)}q=F.theme.renderUI({targetNode:B,width:C,height:z,deltaWidth:G.delta_width,deltaHeight:G.delta_height});F.editorContainer=q.editorContainer}if(document.domain&&location.hostname!=document.domain){m.relaxedDomain=document.domain}n.setStyles(q.sizeContainer||q.editorContainer,{width:C,height:z});if(G.content_css){m.each(g(G.content_css),function(s){F.contentCSS.push(F.documentBaseURI.toAbsolute(s))})}z=(q.iframeHeight||z)+(typeof(z)=="number"?(q.deltaHeight||0):"");if(z<100){z=100}F.iframeHTML=G.doctype+'<html><head xmlns="http://www.w3.org/1999/xhtml">';if(G.document_base_url!=m.documentBaseURL){F.iframeHTML+='<base href="'+F.documentBaseURI.getURI()+'" />'}if(G.ie7_compat){F.iframeHTML+='<meta http-equiv="X-UA-Compatible" content="IE=7" />'}else{F.iframeHTML+='<meta http-equiv="X-UA-Compatible" content="IE=edge" />'}F.iframeHTML+='<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />';if(!a||!/Firefox\/2/.test(navigator.userAgent)){for(y=0;y<F.contentCSS.length;y++){F.iframeHTML+='<link type="text/css" rel="stylesheet" href="'+F.contentCSS[y]+'" />'}F.contentCSS=[]}x=G.body_id||"tinymce";if(x.indexOf("=")!=-1){x=F.getParam("body_id","","hash");x=x[F.id]||x}A=G.body_class||"";if(A.indexOf("=")!=-1){A=F.getParam("body_class","","hash");A=A[F.id]||""}F.iframeHTML+='</head><body id="'+x+'" class="mceContentBody '+A+'"></body></html>';if(m.relaxedDomain&&(b||(m.isOpera&&parseFloat(opera.version())<11))){D='javascript:(function(){document.open();document.domain="'+document.domain+'";var ed = window.parent.tinyMCE.get("'+F.id+'");document.write(ed.iframeHTML);document.close();ed.setupIframe();})()'}r=n.add(q.iframeContainer,"iframe",{id:F.id+"_ifr",src:D||'javascript:""',frameBorder:"0",title:G.aria_label,style:{width:"100%",height:z}});F.contentAreaContainer=q.iframeContainer;n.get(q.editorContainer).style.display=F.orgDisplay;n.get(F.id).style.display="none";n.setAttrib(F.id,"aria-hidden",true);if(!m.relaxedDomain||!D){F.setupIframe()}B=r=q=null},setupIframe:function(){var r=this,x=r.settings,y=n.get(r.id),z=r.getDoc(),v,p;if(!b||!m.relaxedDomain){z.open();z.write(r.iframeHTML);z.close();if(m.relaxedDomain){z.domain=m.relaxedDomain}}if(!b){try{if(!x.readonly){z.designMode="On"}}catch(q){}}if(b){p=r.getBody();n.hide(p);if(!x.readonly){p.contentEditable=true}n.show(p)}r.schema=new m.html.Schema(x);r.dom=new m.dom.DOMUtils(r.getDoc(),{keep_values:true,url_converter:r.convertURL,url_converter_scope:r,hex_colors:x.force_hex_style_colors,class_filter:x.class_filter,update_styles:1,fix_ie_paragraphs:1,schema:r.schema});r.parser=new m.html.DomParser(x,r.schema);r.parser.addAttributeFilter("name",function(s,t){var B=s.length,D,A,C,E;while(B--){E=s[B];if(E.name==="a"&&E.firstChild){C=E.parent;D=E.lastChild;do{A=D.prev;C.insert(D,E);D=A}while(D)}}});r.parser.addAttributeFilter("src,href,style",function(s,t){var A=s.length,B,D=r.dom,C;while(A--){B=s[A];C=B.attr(t);if(t==="style"){B.attr("data-mce-style",D.serializeStyle(D.parseStyle(C),B.name))}else{B.attr("data-mce-"+t,r.convertURL(C,t,B.name))}}});r.parser.addNodeFilter("script",function(s,t){var A=s.length;while(A--){s[A].attr("type","mce-text/javascript")}});r.parser.addNodeFilter("#cdata",function(s,t){var A=s.length,B;while(A--){B=s[A];B.type=8;B.name="#comment";B.value="[CDATA["+B.value+"]]"}});r.parser.addNodeFilter("p,h1,h2,h3,h4,h5,h6,div",function(t,A){var B=t.length,C,s=r.schema.getNonEmptyElements();while(B--){C=t[B];if(C.isEmpty(s)){C.empty().append(new m.html.Node("br",1)).shortEnded=true}}});r.serializer=new m.dom.Serializer(x,r.dom,r.schema);r.selection=new m.dom.Selection(r.dom,r.getWin(),r.serializer);r.formatter=new m.Formatter(this);r.formatter.register({alignleft:[{selector:"p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li",styles:{textAlign:"left"}},{selector:"img,table",collapsed:false,styles:{"float":"left"}}],aligncenter:[{selector:"p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li",styles:{textAlign:"center"}},{selector:"img",collapsed:false,styles:{display:"block",marginLeft:"auto",marginRight:"auto"}},{selector:"table",collapsed:false,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",collapsed:false,styles:{"float":"right"}}],alignfull:[{selector:"p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li",styles:{textAlign:"justify"}}],bold:[{inline:"strong",remove:"all"},{inline:"span",styles:{fontWeight:"bold"}},{inline:"b",remove:"all"}],italic:[{inline:"em",remove:"all"},{inline:"span",styles:{fontStyle:"italic"}},{inline:"i",remove:"all"}],underline:[{inline:"span",styles:{textDecoration:"underline"},exact:true},{inline:"u",remove:"all"}],strikethrough:[{inline:"span",styles:{textDecoration:"line-through"},exact:true},{inline:"strike",remove:"all"}],forecolor:{inline:"span",styles:{color:"%value"},wrap_links:false},hilitecolor:{inline:"span",styles:{backgroundColor:"%value"},wrap_links:false},fontname:{inline:"span",styles:{fontFamily:"%value"}},fontsize:{inline:"span",styles:{fontSize:"%value"}},fontsize_class:{inline:"span",attributes:{"class":"%value"}},blockquote:{block:"blockquote",wrapper:1,remove:"all"},subscript:{inline:"sub"},superscript:{inline:"sup"},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"],split:false,expand:false,deep:true}]});i("p h1 h2 h3 h4 h5 h6 div address pre div code dt dd samp".split(/\s/),function(s){r.formatter.register(s,{block:s,remove:"all"})});r.formatter.register(r.settings.formats);r.undoManager=new m.UndoManager(r);r.undoManager.onAdd.add(function(t,s){if(t.hasUndo()){return r.onChange.dispatch(r,s,t)}});r.undoManager.onUndo.add(function(t,s){return r.onUndo.dispatch(r,s,t)});r.undoManager.onRedo.add(function(t,s){return r.onRedo.dispatch(r,s,t)});r.forceBlocks=new m.ForceBlocks(r,{forced_root_block:x.forced_root_block});r.editorCommands=new m.EditorCommands(r);r.serializer.onPreProcess.add(function(s,t){return r.onPreProcess.dispatch(r,t,s)});r.serializer.onPostProcess.add(function(s,t){return r.onPostProcess.dispatch(r,t,s)});r.onPreInit.dispatch(r);if(!x.gecko_spellcheck){r.getBody().spellcheck=0}if(!x.readonly){r._addEvents()}r.controlManager.onPostRender.dispatch(r,r.controlManager);r.onPostRender.dispatch(r);if(x.directionality){r.getBody().dir=x.directionality}if(x.nowrap){r.getBody().style.whiteSpace="nowrap"}if(x.handle_node_change_callback){r.onNodeChange.add(function(t,s,A){r.execCallback("handle_node_change_callback",r.id,A,-1,-1,true,r.selection.isCollapsed())})}if(x.save_callback){r.onSaveContent.add(function(s,A){var t=r.execCallback("save_callback",r.id,A.content,r.getBody());if(t){A.content=t}})}if(x.onchange_callback){r.onChange.add(function(t,s){r.execCallback("onchange_callback",r,s)})}if(x.protect){r.onBeforeSetContent.add(function(s,t){if(x.protect){i(x.protect,function(A){t.content=t.content.replace(A,function(B){return"<!--mce:protected "+escape(B)+"-->"})})}})}if(x.convert_newlines_to_brs){r.onBeforeSetContent.add(function(s,t){if(t.initial){t.content=t.content.replace(/\r?\n/g,"<br />")}})}if(x.preformatted){r.onPostProcess.add(function(s,t){t.content=t.content.replace(/^\s*<pre.*?>/,"");t.content=t.content.replace(/<\/pre>\s*$/,"");if(t.set){t.content='<pre class="mceItemHidden">'+t.content+"</pre>"}})}if(x.verify_css_classes){r.serializer.attribValueFilter=function(C,A){var B,t;if(C=="class"){if(!r.classesRE){t=r.dom.getClasses();if(t.length>0){B="";i(t,function(s){B+=(B?"|":"")+s["class"]});r.classesRE=new RegExp("("+B+")","gi")}}return !r.classesRE||/(\bmceItem\w+\b|\bmceTemp\w+\b)/g.test(A)||r.classesRE.test(A)?A:""}return A}}if(x.cleanup_callback){r.onBeforeSetContent.add(function(s,t){t.content=r.execCallback("cleanup_callback","insert_to_editor",t.content,t)});r.onPreProcess.add(function(s,t){if(t.set){r.execCallback("cleanup_callback","insert_to_editor_dom",t.node,t)}if(t.get){r.execCallback("cleanup_callback","get_from_editor_dom",t.node,t)}});r.onPostProcess.add(function(s,t){if(t.set){t.content=r.execCallback("cleanup_callback","insert_to_editor",t.content,t)}if(t.get){t.content=r.execCallback("cleanup_callback","get_from_editor",t.content,t)}})}if(x.save_callback){r.onGetContent.add(function(s,t){if(t.save){t.content=r.execCallback("save_callback",r.id,t.content,r.getBody())}})}if(x.handle_event_callback){r.onEvent.add(function(s,t,A){if(r.execCallback("handle_event_callback",t,s,A)===false){j.cancel(t)}})}r.onSetContent.add(function(){r.addVisual(r.getBody())});if(x.padd_empty_editor){r.onPostProcess.add(function(s,t){t.content=t.content.replace(/^(<p[^>]*>(&nbsp;|&#160;|\s|\u00a0|)<\/p>[\r\n]*|<br \/>[\r\n]*)$/,"")})}if(a){function u(s,t){i(s.dom.select("a"),function(B){var A=B.parentNode;if(s.dom.isBlock(A)&&A.lastChild===B){s.dom.add(A,"br",{"data-mce-bogus":1})}})}r.onExecCommand.add(function(s,t){if(t==="CreateLink"){u(s)}});r.onSetContent.add(r.selection.onSetContent.add(u));if(!x.readonly){try{z.designMode="Off";z.designMode="On"}catch(q){}}}setTimeout(function(){if(r.removed){return}r.load({initial:true,format:"html"});r.startContent=r.getContent({format:"raw"});r.undoManager.add();r.initialized=true;r.onInit.dispatch(r);r.execCallback("setupcontent_callback",r.id,r.getBody(),r.getDoc());r.execCallback("init_instance_callback",r);r.focus(true);r.nodeChanged({initial:1});i(r.contentCSS,function(s){r.dom.loadCSS(s)});if(x.auto_focus){setTimeout(function(){var s=m.get(x.auto_focus);s.selection.select(s.getBody(),1);s.selection.collapse(1);s.getWin().focus()},100)}},1);y=null},focus:function(s){var x,q=this,v=q.settings.content_editable,r,p,u=q.getDoc();if(!s){r=q.selection.getRng();if(r.item){p=r.item(0)}if(!v){q.getWin().focus()}if(p&&p.ownerDocument==u){r=u.body.createControlRange();r.addElement(p);r.select()}}if(m.activeEditor!=q){if((x=m.activeEditor)!=null){x.onDeactivate.dispatch(x,q)}q.onActivate.dispatch(q,x)}m._setActive(q)},execCallback:function(u){var p=this,r=p.settings[u],q;if(!r){return}if(p.callbackLookup&&(q=p.callbackLookup[u])){r=q.func;q=q.scope}if(d(r,"string")){q=r.replace(/\.\w+$/,"");q=q?m.resolve(q):0;r=m.resolve(r);p.callbackLookup=p.callbackLookup||{};p.callbackLookup[u]={func:r,scope:q}}return r.apply(q||p,Array.prototype.slice.call(arguments,1))},translate:function(p){var r=this.settings.language||"en",q=m.i18n;if(!p){return""}return q[r+"."+p]||p.replace(/{\#([^}]+)\}/g,function(t,s){return q[r+"."+s]||"{#"+s+"}"})},getLang:function(q,p){return m.i18n[(this.settings.language||"en")+"."+q]||(d(p)?p:"{#"+q+"}")},getParam:function(u,r,p){var s=m.trim,q=d(this.settings[u])?this.settings[u]:r,t;if(p==="hash"){t={};if(d(q,"string")){i(q.indexOf("=")>0?q.split(/[;,](?![^=;,]*(?:[;,]|$))/):q.split(","),function(x){x=x.split("=");if(x.length>1){t[s(x[0])]=s(x[1])}else{t[s(x[0])]=s(x)}})}else{t=q}return t}return q},nodeChanged:function(r){var p=this,q=p.selection,u=q.getStart()||p.getBody();if(p.initialized){r=r||{};u=b&&u.ownerDocument!=p.getDoc()?p.getBody():u;r.parents=[];p.dom.getParent(u,function(s){if(s.nodeName=="BODY"){return true}r.parents.push(s)});p.onNodeChange.dispatch(p,r?r.controlManager||p.controlManager:p.controlManager,u,q.isCollapsed(),r)}},addButton:function(r,q){var p=this;p.buttons=p.buttons||{};p.buttons[r]=q},addCommand:function(p,r,q){this.execCommands[p]={func:r,scope:q||this}},addQueryStateHandler:function(p,r,q){this.queryStateCommands[p]={func:r,scope:q||this}},addQueryValueHandler:function(p,r,q){this.queryValueCommands[p]={func:r,scope:q||this}},addShortcut:function(r,u,p,s){var q=this,v;if(!q.settings.custom_shortcuts){return false}q.shortcuts=q.shortcuts||{};if(d(p,"string")){v=p;p=function(){q.execCommand(v,false,null)}}if(d(p,"object")){v=p;p=function(){q.execCommand(v[0],v[1],v[2])}}i(g(r),function(t){var x={func:p,scope:s||this,desc:u,alt:false,ctrl:false,shift:false};i(g(t,"+"),function(y){switch(y){case"alt":case"ctrl":case"shift":x[y]=true;break;default:x.charCode=y.charCodeAt(0);x.keyCode=y.toUpperCase().charCodeAt(0)}});q.shortcuts[(x.ctrl?"ctrl":"")+","+(x.alt?"alt":"")+","+(x.shift?"shift":"")+","+x.keyCode]=x});return true},execCommand:function(x,v,z,p){var r=this,u=0,y,q;if(!/^(mceAddUndoLevel|mceEndUndoLevel|mceBeginUndoLevel|mceRepaint|SelectAll)$/.test(x)&&(!p||!p.skip_focus)){r.focus()}y={};r.onBeforeExecCommand.dispatch(r,x,v,z,y);if(y.terminate){return false}if(r.execCallback("execcommand_callback",r.id,r.selection.getNode(),x,v,z)){r.onExecCommand.dispatch(r,x,v,z,p);return true}if(y=r.execCommands[x]){q=y.func.call(y.scope,v,z);if(q!==true){r.onExecCommand.dispatch(r,x,v,z,p);return q}}i(r.plugins,function(s){if(s.execCommand&&s.execCommand(x,v,z)){r.onExecCommand.dispatch(r,x,v,z,p);u=1;return false}});if(u){return true}if(r.theme&&r.theme.execCommand&&r.theme.execCommand(x,v,z)){r.onExecCommand.dispatch(r,x,v,z,p);return true}if(r.editorCommands.execCommand(x,v,z)){r.onExecCommand.dispatch(r,x,v,z,p);return true}r.getDoc().execCommand(x,v,z);r.onExecCommand.dispatch(r,x,v,z,p)},queryCommandState:function(u){var q=this,v,r;if(q._isHidden()){return}if(v=q.queryStateCommands[u]){r=v.func.call(v.scope);if(r!==true){return r}}v=q.editorCommands.queryCommandState(u);if(v!==-1){return v}try{return this.getDoc().queryCommandState(u)}catch(p){}},queryCommandValue:function(v){var q=this,u,r;if(q._isHidden()){return}if(u=q.queryValueCommands[v]){r=u.func.call(u.scope);if(r!==true){return r}}u=q.editorCommands.queryCommandValue(v);if(d(u)){return u}try{return this.getDoc().queryCommandValue(v)}catch(p){}},show:function(){var p=this;n.show(p.getContainer());n.hide(p.id);p.load()},hide:function(){var p=this,q=p.getDoc();if(b&&q){q.execCommand("SelectAll")}p.save();n.hide(p.getContainer());n.setStyle(p.id,"display",p.orgDisplay)},isHidden:function(){return !n.isHidden(this.id)},setProgressState:function(p,q,r){this.onSetProgressState.dispatch(this,p,q,r);return p},load:function(s){var p=this,r=p.getElement(),q;if(r){s=s||{};s.load=true;q=p.setContent(d(r.value)?r.value:r.innerHTML,s);s.element=r;if(!s.no_events){p.onLoadContent.dispatch(p,s)}s.element=r=null;return q}},save:function(u){var p=this,s=p.getElement(),q,r;if(!s||!p.initialized){return}u=u||{};u.save=true;if(!u.no_events){p.undoManager.typing=false;p.undoManager.add()}u.element=s;q=u.content=p.getContent(u);if(!u.no_events){p.onSaveContent.dispatch(p,u)}q=u.content;if(!/TEXTAREA|INPUT/i.test(s.nodeName)){s.innerHTML=q;if(r=n.getParent(p.id,"form")){i(r.elements,function(t){if(t.name==p.id){t.value=q;return false}})}}else{s.value=q}u.element=s=null;return q},setContent:function(t,s){var r=this,q,p=r.getBody();s=s||{};s.format=s.format||"html";s.set=true;s.content=t;if(!s.no_events){r.onBeforeSetContent.dispatch(r,s)}t=s.content;if(!m.isIE&&(t.length===0||/^\s+$/.test(t))){p.innerHTML='<br data-mce-bogus="1" />';return}if(s.format!=="raw"){t=new m.html.Serializer({},r.schema).serialize(r.parser.parse(t))}s.content=m.trim(t);r.dom.setHTML(p,s.content);if(!s.no_events){r.onSetContent.dispatch(r,s)}return s.content},getContent:function(q){var p=this,r;q=q||{};q.format=q.format||"html";q.get=true;if(!q.no_events){p.onBeforeGetContent.dispatch(p,q)}if(q.format=="raw"){r=p.getBody().innerHTML}else{r=p.serializer.serialize(p.getBody(),q)}q.content=m.trim(r);if(!q.no_events){p.onGetContent.dispatch(p,q)}return q.content},isDirty:function(){var p=this;return m.trim(p.startContent)!=m.trim(p.getContent({format:"raw",no_events:1}))&&!p.isNotDirty},getContainer:function(){var p=this;if(!p.container){p.container=n.get(p.editorContainer||p.id+"_parent")}return p.container},getContentAreaContainer:function(){return this.contentAreaContainer},getElement:function(){return n.get(this.settings.content_element||this.id)},getWin:function(){var p=this,q;if(!p.contentWindow){q=n.get(p.id+"_ifr");if(q){p.contentWindow=q.contentWindow}}return p.contentWindow},getDoc:function(){var q=this,p;if(!q.contentDocument){p=q.getWin();if(p){q.contentDocument=p.document}}return q.contentDocument},getBody:function(){return this.bodyElement||this.getDoc().body},convertURL:function(p,x,v){var q=this,r=q.settings;if(r.urlconverter_callback){return q.execCallback("urlconverter_callback",p,v,true,x)}if(!r.convert_urls||(v&&v.nodeName=="LINK")||p.indexOf("file:")===0){return p}if(r.relative_urls){return q.documentBaseURI.toRelative(p)}p=q.documentBaseURI.toAbsolute(p,r.remove_script_host);return p},addVisual:function(r){var p=this,q=p.settings;r=r||p.getBody();if(!d(p.hasVisual)){p.hasVisual=q.visual}i(p.dom.select("table,a",r),function(t){var s;switch(t.nodeName){case"TABLE":s=p.dom.getAttrib(t,"border");if(!s||s=="0"){if(p.hasVisual){p.dom.addClass(t,q.visual_table_class)}else{p.dom.removeClass(t,q.visual_table_class)}}return;case"A":s=p.dom.getAttrib(t,"name");if(s){if(p.hasVisual){p.dom.addClass(t,"mceItemAnchor")}else{p.dom.removeClass(t,"mceItemAnchor")}}return}});p.onVisualAid.dispatch(p,r,p.hasVisual)},remove:function(){var p=this,q=p.getContainer();p.removed=1;p.hide();p.execCallback("remove_instance_callback",p);p.onRemove.dispatch(p);p.onExecCommand.listeners=[];m.remove(p);n.remove(q)},destroy:function(q){var p=this;if(p.destroyed){return}if(!q){m.removeUnload(p.destroy);tinyMCE.onBeforeUnload.remove(p._beforeUnload);if(p.theme&&p.theme.destroy){p.theme.destroy()}p.controlManager.destroy();p.selection.destroy();p.dom.destroy();if(!p.settings.content_editable){j.clear(p.getWin());j.clear(p.getDoc())}j.clear(p.getBody());j.clear(p.formElement)}if(p.formElement){p.formElement.submit=p.formElement._mceOldSubmit;p.formElement._mceOldSubmit=null}p.contentAreaContainer=p.formElement=p.container=p.settings.content_element=p.bodyElement=p.contentDocument=p.contentWindow=null;if(p.selection){p.selection=p.selection.win=p.selection.dom=p.selection.dom.doc=null}p.destroyed=1},_addEvents:function(){var B=this,r,C=B.settings,q=B.dom,x={mouseup:"onMouseUp",mousedown:"onMouseDown",click:"onClick",keyup:"onKeyUp",keydown:"onKeyDown",keypress:"onKeyPress",submit:"onSubmit",reset:"onReset",contextmenu:"onContextMenu",dblclick:"onDblClick",paste:"onPaste"};function p(t,D){var s=t.type;if(B.removed){return}if(B.onEvent.dispatch(B,t,D)!==false){B[x[t.fakeType||t.type]].dispatch(B,t,D)}}i(x,function(t,s){switch(s){case"contextmenu":q.bind(B.getDoc(),s,p);break;case"paste":q.bind(B.getBody(),s,function(D){p(D)});break;case"submit":case"reset":q.bind(B.getElement().form||n.getParent(B.id,"form"),s,p);break;default:q.bind(C.content_editable?B.getBody():B.getDoc(),s,p)}});q.bind(C.content_editable?B.getBody():(a?B.getDoc():B.getWin()),"focus",function(s){B.focus(true)});if(m.isGecko){q.bind(B.getDoc(),"DOMNodeInserted",function(t){var s;t=t.target;if(t.nodeType===1&&t.nodeName==="IMG"&&(s=t.getAttribute("data-mce-src"))){t.src=B.documentBaseURI.toAbsolute(s)}})}if(a){function u(){var E=this,G=E.getDoc(),F=E.settings;if(a&&!F.readonly){if(E._isHidden()){try{if(!F.content_editable){G.designMode="On"}}catch(D){}}try{G.execCommand("styleWithCSS",0,false)}catch(D){if(!E._isHidden()){try{G.execCommand("useCSS",0,true)}catch(D){}}}if(!F.table_inline_editing){try{G.execCommand("enableInlineTableEditing",false,false)}catch(D){}}if(!F.object_resizing){try{G.execCommand("enableObjectResizing",false,false)}catch(D){}}}}B.onBeforeExecCommand.add(u);B.onMouseDown.add(u)}if(m.isWebKit){B.onClick.add(function(s,t){t=t.target;if(t.nodeName=="IMG"||(t.nodeName=="A"&&q.hasClass(t,"mceItemAnchor"))){B.selection.getSel().setBaseAndExtent(t,0,t,1);B.nodeChanged()}})}B.onMouseUp.add(B.nodeChanged);B.onKeyUp.add(function(s,t){var D=t.keyCode;if((D>=33&&D<=36)||(D>=37&&D<=40)||D==13||D==45||D==46||D==8||(m.isMac&&(D==91||D==93))||t.ctrlKey){B.nodeChanged()}});B.onReset.add(function(){B.setContent(B.startContent,{format:"raw"})});if(C.custom_shortcuts){if(C.custom_undo_redo_keyboard_shortcuts){B.addShortcut("ctrl+z",B.getLang("undo_desc"),"Undo");B.addShortcut("ctrl+y",B.getLang("redo_desc"),"Redo")}B.addShortcut("ctrl+b",B.getLang("bold_desc"),"Bold");B.addShortcut("ctrl+i",B.getLang("italic_desc"),"Italic");B.addShortcut("ctrl+u",B.getLang("underline_desc"),"Underline");for(r=1;r<=6;r++){B.addShortcut("ctrl+"+r,"",["FormatBlock",false,"h"+r])}B.addShortcut("ctrl+7","",["FormatBlock",false,"<p>"]);B.addShortcut("ctrl+8","",["FormatBlock",false,"<div>"]);B.addShortcut("ctrl+9","",["FormatBlock",false,"<address>"]);function v(t){var s=null;if(!t.altKey&&!t.ctrlKey&&!t.metaKey){return s}i(B.shortcuts,function(D){if(m.isMac&&D.ctrl!=t.metaKey){return}else{if(!m.isMac&&D.ctrl!=t.ctrlKey){return}}if(D.alt!=t.altKey){return}if(D.shift!=t.shiftKey){return}if(t.keyCode==D.keyCode||(t.charCode&&t.charCode==D.charCode)){s=D;return false}});return s}B.onKeyUp.add(function(s,t){var D=v(t);if(D){return j.cancel(t)}});B.onKeyPress.add(function(s,t){var D=v(t);if(D){return j.cancel(t)}});B.onKeyDown.add(function(s,t){var D=v(t);if(D){D.func.call(D.scope);return j.cancel(t)}})}if(m.isIE){q.bind(B.getDoc(),"controlselect",function(D){var t=B.resizeInfo,s;D=D.target;if(D.nodeName!=="IMG"){return}if(t){q.unbind(t.node,t.ev,t.cb)}if(!q.hasClass(D,"mceItemNoResize")){ev="resizeend";s=q.bind(D,ev,function(F){var E;F=F.target;if(E=q.getStyle(F,"width")){q.setAttrib(F,"width",E.replace(/[^0-9%]+/g,""));q.setStyle(F,"width","")}if(E=q.getStyle(F,"height")){q.setAttrib(F,"height",E.replace(/[^0-9%]+/g,""));q.setStyle(F,"height","")}})}else{ev="resizestart";s=q.bind(D,"resizestart",j.cancel,j)}t=B.resizeInfo={node:D,ev:ev,cb:s}});B.onKeyDown.add(function(s,D){var t;switch(D.keyCode){case 8:t=B.getDoc().selection;if(t.createRange&&t.createRange().item){s.dom.remove(t.createRange().item(0));return j.cancel(D)}}})}if(m.isOpera){B.onClick.add(function(s,t){j.prevent(t)})}if(C.custom_undo_redo){function y(){B.undoManager.typing=false;B.undoManager.add()}q.bind(B.getDoc(),"focusout",function(s){if(!B.removed&&B.undoManager.typing){y()}});B.dom.bind(B.dom.getRoot(),"dragend",function(s){y()});B.onKeyUp.add(function(t,F){var s,E,D;if(b&&F.keyCode==8){s=B.selection.getRng();if(s.parentElement){E=s.parentElement();D=B.selection.getBookmark();E.innerHTML=E.innerHTML;B.selection.moveToBookmark(D)}}if((F.keyCode>=33&&F.keyCode<=36)||(F.keyCode>=37&&F.keyCode<=40)||F.keyCode==13||F.keyCode==45||F.ctrlKey){y()}});B.onKeyDown.add(function(t,H){var s,F,E,G=H.keyCode;if(b&&G==46){s=B.selection.getRng();if(s.parentElement){F=s.parentElement();if(!B.undoManager.typing){B.undoManager.beforeChange();B.undoManager.typing=true;B.undoManager.add()}if(H.ctrlKey){s.moveEnd("word",1);s.select()}B.selection.getSel().clear();if(s.parentElement()==F){E=B.selection.getBookmark();try{F.innerHTML=F.innerHTML}catch(D){}B.selection.moveToBookmark(E)}H.preventDefault();return}}if((G>=33&&G<=36)||(G>=37&&G<=40)||G==13||G==45){if(m.isIE&&G==13){B.undoManager.beforeChange()}if(B.undoManager.typing){y()}return}if((G<16||G>20)&&G!=224&&G!=91&&!B.undoManager.typing){B.undoManager.beforeChange();B.undoManager.add();B.undoManager.typing=true}});B.onMouseDown.add(function(){if(B.undoManager.typing){y()}})}if(m.isGecko){function A(){var s=B.dom.getAttribs(B.selection.getStart().cloneNode(false));return function(){var t=B.selection.getStart();B.dom.removeAllAttribs(t);i(s,function(D){t.setAttributeNode(D.cloneNode(true))})}}function z(){var t=B.selection;return !t.isCollapsed()&&t.getStart()!=t.getEnd()}B.onKeyPress.add(function(s,D){var t;if((D.keyCode==8||D.keyCode==46)&&z()){t=A();B.getDoc().execCommand("delete",false,null);t();return j.cancel(D)}});B.dom.bind(B.getDoc(),"cut",function(t){var s;if(z()){s=A();B.onKeyUp.addToTop(j.cancel,j);setTimeout(function(){s();B.onKeyUp.remove(j.cancel,j)},0)}})}},_isHidden:function(){var p;if(!a){return 0}p=this.selection.getSel();return(!p||!p.rangeCount||p.rangeCount==0)}})})(tinymce);(function(c){var d=c.each,e,a=true,b=false;c.EditorCommands=function(n){var l=n.dom,p=n.selection,j={state:{},exec:{},value:{}},k=n.settings,o;function q(y,x,v){var u;y=y.toLowerCase();if(u=j.exec[y]){u(y,x,v);return a}return b}function m(v){var u;v=v.toLowerCase();if(u=j.state[v]){return u(v)}return -1}function h(v){var u;v=v.toLowerCase();if(u=j.value[v]){return u(v)}return b}function t(u,v){v=v||"exec";d(u,function(y,x){d(x.toLowerCase().split(","),function(z){j[v][z]=y})})}c.extend(this,{execCommand:q,queryCommandState:m,queryCommandValue:h,addCommands:t});function f(x,v,u){if(v===e){v=b}if(u===e){u=null}return n.getDoc().execCommand(x,v,u)}function s(u){return n.formatter.match(u)}function r(u,v){n.formatter.toggle(u,v?{value:v}:e)}function i(u){o=p.getBookmark(u)}function g(){p.moveToBookmark(o)}t({"mceResetDesignMode,mceBeginUndoLevel":function(){},"mceEndUndoLevel,mceAddUndoLevel":function(){n.undoManager.add()},"Cut,Copy,Paste":function(y){var x=n.getDoc(),u;try{f(y)}catch(v){u=a}if(u||!x.queryCommandSupported(y)){if(c.isGecko){n.windowManager.confirm(n.getLang("clipboard_msg"),function(z){if(z){open("http://www.mozilla.org/editor/midasdemo/securityprefs.html","_blank")}})}else{n.windowManager.alert(n.getLang("clipboard_no_support"))}}},unlink:function(u){if(p.isCollapsed()){p.select(p.getNode())}f(u);p.collapse(b)},"JustifyLeft,JustifyCenter,JustifyRight,JustifyFull":function(u){var v=u.substring(7);d("left,center,right,full".split(","),function(x){if(v!=x){n.formatter.remove("align"+x)}});r("align"+v);q("mceRepaint")},"InsertUnorderedList,InsertOrderedList":function(x){var u,v;f(x);u=l.getParent(p.getNode(),"ol,ul");if(u){v=u.parentNode;if(/^(H[1-6]|P|ADDRESS|PRE)$/.test(v.nodeName)){i();l.split(v,u);g()}}},"Bold,Italic,Underline,Strikethrough,Superscript,Subscript":function(u){r(u)},"ForeColor,HiliteColor,FontName":function(x,v,u){r(x,u)},FontSize:function(y,x,v){var u,z;if(v>=1&&v<=7){z=c.explode(k.font_size_style_values);u=c.explode(k.font_size_classes);if(u){v=u[v-1]||v}else{v=z[v-1]||v}}r(y,v)},RemoveFormat:function(u){n.formatter.remove(u)},mceBlockQuote:function(u){r("blockquote")},FormatBlock:function(x,v,u){return r(u||"p")},mceCleanup:function(){var u=p.getBookmark();n.setContent(n.getContent({cleanup:a}),{cleanup:a});p.moveToBookmark(u)},mceRemoveNode:function(y,x,v){var u=v||p.getNode();if(u!=n.getBody()){i();n.dom.remove(u,a);g()}},mceSelectNodeDepth:function(y,x,v){var u=0;l.getParent(p.getNode(),function(z){if(z.nodeType==1&&u++==v){p.select(z);return b}},n.getBody())},mceSelectNode:function(x,v,u){p.select(u)},mceInsertContent:function(z,D,E){var C,u,x,F,y,u,A,G,B;function v(I,J,H){var K=new c.dom.TreeWalker(H?I.nextSibling:I.previousSibling,J);while((I=K.current())){if((I.nodeType==3&&c.trim(I.nodeValue).length)||I.nodeName=="BR"||I.nodeName=="IMG"){return I}if(H){K.next()}else{K.prev()}}}B={content:E,format:"html"};p.onBeforeSetContent.dispatch(p,B);E=B.content;if(E.indexOf("{$caret}")==-1){E+="{$caret}"}p.setContent('<span id="__mce">\uFEFF</span>',{no_events:false});l.setOuterHTML("__mce",E.replace(/\{\$caret\}/,'<span data-mce-type="bookmark" id="__mce">\uFEFF</span>'));C=l.select("#__mce")[0];x=l.getRoot();if(C.previousSibling&&l.isBlock(C.previousSibling)||C.parentNode==x){y=v(C,x);if(y){if(y.nodeName=="BR"){y.parentNode.insertBefore(C,y)}else{l.insertAfter(C,y)}}}while(C){if(C===x){l.setOuterHTML(F,new c.html.Serializer({},n.schema).serialize(n.parser.parse(l.getOuterHTML(F))));break}F=C;C=C.parentNode}C=l.select("#__mce")[0];if(C){y=v(C,x)||v(C,x,true);l.remove(C);if(y){u=l.createRng();if(y.nodeType==3){u.setStart(y,y.length);u.setEnd(y,y.length)}else{if(y.nodeName=="BR"){u.setStartBefore(y);u.setEndBefore(y)}else{u.setStartAfter(y);u.setEndAfter(y)}}p.setRng(u);if(!c.isIE){y=l.create("span",null,"\u00a0");u.insertNode(y);A=l.getRect(y);G=l.getViewPort(n.getWin());if((A.y>G.y+G.h||A.y<G.y)||(A.x>G.x+G.w||A.x<G.x)){n.getBody().scrollLeft=A.x;n.getBody().scrollTop=A.y}l.remove(y)}p.collapse(true)}}p.onSetContent.dispatch(p,B);n.addVisual()},mceInsertRawHTML:function(x,v,u){p.setContent("tiny_mce_marker");n.setContent(n.getContent().replace(/tiny_mce_marker/g,function(){return u}))},mceSetContent:function(x,v,u){n.setContent(u)},"Indent,Outdent":function(y){var v,u,x;v=k.indentation;u=/[a-z%]+$/i.exec(v);v=parseInt(v);if(!m("InsertUnorderedList")&&!m("InsertOrderedList")){d(p.getSelectedBlocks(),function(z){if(y=="outdent"){x=Math.max(0,parseInt(z.style.paddingLeft||0)-v);l.setStyle(z,"paddingLeft",x?x+u:"")}else{l.setStyle(z,"paddingLeft",(parseInt(z.style.paddingLeft||0)+v)+u)}})}else{f(y)}},mceRepaint:function(){var v;if(c.isGecko){try{i(a);if(p.getSel()){p.getSel().selectAllChildren(n.getBody())}p.collapse(a);g()}catch(u){}}},mceToggleFormat:function(x,v,u){n.formatter.toggle(u)},InsertHorizontalRule:function(){n.execCommand("mceInsertContent",false,"<hr />")},mceToggleVisualAid:function(){n.hasVisual=!n.hasVisual;n.addVisual()},mceReplaceContent:function(x,v,u){n.execCommand("mceInsertContent",false,u.replace(/\{\$selection\}/g,p.getContent({format:"text"})))},mceInsertLink:function(A,z,y){var x=l.getParent(p.getNode(),"a"),v,u;if(c.is(y,"string")){y={href:y}}y.href=y.href.replace(" ","%20");if(!x){if(c.isWebKit){v=l.getParent(p.getNode(),"img");if(v){u=v.style.cssFloat;v.style.cssFloat=null}}f("CreateLink",b,"javascript:mctmp(0);");if(u){v.style.cssFloat=u}d(l.select("a[href='javascript:mctmp(0);']"),function(B){l.setAttribs(B,y)})}else{if(y.href){l.setAttribs(x,y)}else{n.dom.remove(x,a)}}},selectAll:function(){var v=l.getRoot(),u=l.createRng();u.setStart(v,0);u.setEnd(v,v.childNodes.length);n.selection.setRng(u)}});t({"JustifyLeft,JustifyCenter,JustifyRight,JustifyFull":function(u){return s("align"+u.substring(7))},"Bold,Italic,Underline,Strikethrough,Superscript,Subscript":function(u){return s(u)},mceBlockQuote:function(){return s("blockquote")},Outdent:function(){var u;if(k.inline_styles){if((u=l.getParent(p.getStart(),l.isBlock))&&parseInt(u.style.paddingLeft)>0){return a}if((u=l.getParent(p.getEnd(),l.isBlock))&&parseInt(u.style.paddingLeft)>0){return a}}return m("InsertUnorderedList")||m("InsertOrderedList")||(!k.inline_styles&&!!l.getParent(p.getNode(),"BLOCKQUOTE"))},"InsertUnorderedList,InsertOrderedList":function(u){return l.getParent(p.getNode(),u=="insertunorderedlist"?"UL":"OL")}},"state");t({"FontSize,FontName":function(x){var v=0,u;if(u=l.getParent(p.getNode(),"span")){if(x=="fontsize"){v=u.style.fontSize}else{v=u.style.fontFamily.replace(/, /g,",").replace(/[\'\"]/g,"").toLowerCase()}}return v}},"value");if(k.custom_undo_redo){t({Undo:function(){n.undoManager.undo()},Redo:function(){n.undoManager.redo()}})}}})(tinymce);(function(b){var a=b.util.Dispatcher;b.UndoManager=function(e){var c,d=0,g=[];function f(){return b.trim(e.getContent({format:"raw",no_events:1}))}return c={typing:false,onAdd:new a(c),onUndo:new a(c),onRedo:new a(c),beforeChange:function(){if(g[d]){g[d].beforeBookmark=e.selection.getBookmark(2,true)}},add:function(l){var h,j=e.settings,k;l=l||{};l.content=f();k=g[d];if(k&&k.content==l.content){return null}if(j.custom_undo_redo_levels){if(g.length>j.custom_undo_redo_levels){for(h=0;h<g.length-1;h++){g[h]=g[h+1]}g.length--;d=g.length}}l.bookmark=e.selection.getBookmark(2,true);if(d<g.length-1){g.length=d+1}g.push(l);d=g.length-1;c.onAdd.dispatch(c,l);e.isNotDirty=0;return l},undo:function(){var j,h;if(c.typing){c.add();c.typing=false}if(d>0){j=g[--d];e.setContent(j.content,{format:"raw"});e.selection.moveToBookmark(j.beforeBookmark);c.onUndo.dispatch(c,j)}return j},redo:function(){var h;if(d<g.length-1){h=g[++d];e.setContent(h.content,{format:"raw"});e.selection.moveToBookmark(h.bookmark);c.onRedo.dispatch(c,h)}return h},clear:function(){g=[];d=0;c.typing=false},hasUndo:function(){return d>0||this.typing},hasRedo:function(){return d<g.length-1&&!this.typing}}}})(tinymce);(function(l){var j=l.dom.Event,c=l.isIE,a=l.isGecko,b=l.isOpera,i=l.each,h=l.extend,d=true,g=false;function k(o){var p,n,m;do{if(/^(SPAN|STRONG|B|EM|I|FONT|STRIKE|U)$/.test(o.nodeName)){if(p){n=o.cloneNode(false);n.appendChild(p);p=n}else{p=m=o.cloneNode(false)}p.removeAttribute("id")}}while(o=o.parentNode);if(p){return{wrapper:p,inner:m}}}function f(n,o){var m=o.ownerDocument.createRange();m.setStart(n.endContainer,n.endOffset);m.setEndAfter(o);return m.cloneContents().textContent.length==0}function e(o,q,m){var n,p;if(q.isEmpty(m)){n=q.getParent(m,"ul,ol");if(!q.getParent(n.parentNode,"ul,ol")){q.split(n,m);p=q.create("p",0,'<br data-mce-bogus="1" />');q.replace(p,m);o.select(p,1)}return g}return d}l.create("tinymce.ForceBlocks",{ForceBlocks:function(m){var n=this,o=m.settings,p;n.editor=m;n.dom=m.dom;p=(o.forced_root_block||"p").toLowerCase();o.element=p.toUpperCase();m.onPreInit.add(n.setup,n);if(o.forced_root_block){m.onInit.add(n.forceRoots,n);m.onSetContent.add(n.forceRoots,n);m.onBeforeGetContent.add(n.forceRoots,n);m.onExecCommand.add(function(q,r){if(r=="mceInsertContent"){n.forceRoots();q.nodeChanged()}})}},setup:function(){var n=this,m=n.editor,p=m.settings,r=m.dom,o=m.selection;if(p.forced_root_block){m.onBeforeExecCommand.add(n.forceRoots,n);m.onKeyUp.add(n.forceRoots,n);m.onPreProcess.add(n.forceRoots,n)}if(p.force_br_newlines){if(c){m.onKeyPress.add(function(s,t){var u;if(t.keyCode==13&&o.getNode().nodeName!="LI"){o.setContent('<br id="__" /> ',{format:"raw"});u=r.get("__");u.removeAttribute("id");o.select(u);o.collapse();return j.cancel(t)}})}}if(p.force_p_newlines){if(!c){m.onKeyPress.add(function(s,t){if(t.keyCode==13&&!t.shiftKey&&!n.insertPara(t)){j.cancel(t)}})}else{l.addUnload(function(){n._previousFormats=0});m.onKeyPress.add(function(s,t){n._previousFormats=0;if(t.keyCode==13&&!t.shiftKey&&s.selection.isCollapsed()&&p.keep_styles){n._previousFormats=k(s.selection.getStart())}});m.onKeyUp.add(function(t,v){if(v.keyCode==13&&!v.shiftKey){var u=t.selection.getStart(),s=n._previousFormats;if(!u.hasChildNodes()&&s){u=r.getParent(u,r.isBlock);if(u&&u.nodeName!="LI"){u.innerHTML="";if(n._previousFormats){u.appendChild(s.wrapper);s.inner.innerHTML="\uFEFF"}else{u.innerHTML="\uFEFF"}o.select(u,1);o.collapse(true);t.getDoc().execCommand("Delete",false,null);n._previousFormats=0}}}})}if(a){m.onKeyDown.add(function(s,t){if((t.keyCode==8||t.keyCode==46)&&!t.shiftKey){n.backspaceDelete(t,t.keyCode==8)}})}}if(l.isWebKit){function q(t){var s=o.getRng(),u,y=r.create("div",null," "),x,v=r.getViewPort(t.getWin()).h;s.insertNode(u=r.create("br"));s.setStartAfter(u);s.setEndAfter(u);o.setRng(s);if(o.getSel().focusNode==u.previousSibling){o.select(r.insertAfter(r.doc.createTextNode("\u00a0"),u));o.collapse(d)}r.insertAfter(y,u);x=r.getPos(y).y;r.remove(y);if(x>v){t.getWin().scrollTo(0,x)}}m.onKeyPress.add(function(s,t){if(t.keyCode==13&&(t.shiftKey||(p.force_br_newlines&&!r.getParent(o.getNode(),"h1,h2,h3,h4,h5,h6,ol,ul")))){q(s);j.cancel(t)}})}if(c){if(p.element!="P"){m.onKeyPress.add(function(s,t){n.lastElm=o.getNode().nodeName});m.onKeyUp.add(function(t,u){var x,v=o.getNode(),s=t.getBody();if(s.childNodes.length===1&&v.nodeName=="P"){v=r.rename(v,p.element);o.select(v);o.collapse();t.nodeChanged()}else{if(u.keyCode==13&&!u.shiftKey&&n.lastElm!="P"){x=r.getParent(v,"p");if(x){r.rename(x,p.element);t.nodeChanged()}}}})}}},find:function(u,p,q){var o=this.editor,m=o.getDoc().createTreeWalker(u,4,null,g),r=-1;while(u=m.nextNode()){r++;if(p==0&&u==q){return r}if(p==1&&r==q){return u}}return -1},forceRoots:function(v,H){var y=this,v=y.editor,L=v.getBody(),I=v.getDoc(),O=v.selection,z=O.getSel(),A=O.getRng(),M=-2,u,F,m,o,J=-16777215;var K,p,N,E,B,q=L.childNodes,D,C,x;for(D=q.length-1;D>=0;D--){K=q[D];if(K.nodeType===1&&K.getAttribute("data-mce-type")){p=null;continue}if(K.nodeType===3||(!y.dom.isBlock(K)&&K.nodeType!==8&&!/^(script|mce:script|style|mce:style)$/i.test(K.nodeName))){if(!p){if(K.nodeType!=3||/[^\s]/g.test(K.nodeValue)){if(M==-2&&A){if(!c||A.setStart){if(A.startContainer.nodeType==1&&(C=A.startContainer.childNodes[A.startOffset])&&C.nodeType==1){x=C.getAttribute("id");C.setAttribute("id","__mce")}else{if(v.dom.getParent(A.startContainer,function(n){return n===L})){F=A.startOffset;m=A.endOffset;M=y.find(L,0,A.startContainer);u=y.find(L,0,A.endContainer)}}}else{if(A.item){o=I.body.createTextRange();o.moveToElementText(A.item(0));A=o}o=I.body.createTextRange();o.moveToElementText(L);o.collapse(1);N=o.move("character",J)*-1;o=A.duplicate();o.collapse(1);E=o.move("character",J)*-1;o=A.duplicate();o.collapse(0);B=(o.move("character",J)*-1)-E;M=E-N;u=B}}p=v.dom.create(v.settings.forced_root_block);K.parentNode.replaceChild(p,K);p.appendChild(K)}}else{if(p.hasChildNodes()){p.insertBefore(K,p.firstChild)}else{p.appendChild(K)}}}else{p=null}}if(M!=-2){if(!c||A.setStart){p=L.getElementsByTagName(v.settings.element)[0];A=I.createRange();if(M!=-1){A.setStart(y.find(L,1,M),F)}else{A.setStart(p,0)}if(u!=-1){A.setEnd(y.find(L,1,u),m)}else{A.setEnd(p,0)}if(z){z.removeAllRanges();z.addRange(A)}}else{try{A=z.createRange();A.moveToElementText(L);A.collapse(1);A.moveStart("character",M);A.moveEnd("character",u);A.select()}catch(G){}}}else{if((!c||A.setStart)&&(C=v.dom.get("__mce"))){if(x){C.setAttribute("id",x)}else{C.removeAttribute("id")}A=I.createRange();A.setStartBefore(C);A.setEndBefore(C);O.setRng(A)}}},getParentBlock:function(o){var m=this.dom;return m.getParent(o,m.isBlock)},insertPara:function(R){var F=this,v=F.editor,N=v.dom,S=v.getDoc(),W=v.settings,G=v.selection.getSel(),H=G.getRangeAt(0),V=S.body;var K,L,I,P,O,q,o,u,z,m,D,U,p,x,J,M=N.getViewPort(v.getWin()),C,E,B;v.undoManager.beforeChange();K=S.createRange();K.setStart(G.anchorNode,G.anchorOffset);K.collapse(d);L=S.createRange();L.setStart(G.focusNode,G.focusOffset);L.collapse(d);I=K.compareBoundaryPoints(K.START_TO_END,L)<0;P=I?G.anchorNode:G.focusNode;O=I?G.anchorOffset:G.focusOffset;q=I?G.focusNode:G.anchorNode;o=I?G.focusOffset:G.anchorOffset;if(P===q&&/^(TD|TH)$/.test(P.nodeName)){if(P.firstChild.nodeName=="BR"){N.remove(P.firstChild)}if(P.childNodes.length==0){v.dom.add(P,W.element,null,"<br />");U=v.dom.add(P,W.element,null,"<br />")}else{J=P.innerHTML;P.innerHTML="";v.dom.add(P,W.element,null,J);U=v.dom.add(P,W.element,null,"<br />")}H=S.createRange();H.selectNodeContents(U);H.collapse(1);v.selection.setRng(H);return g}if(P==V&&q==V&&V.firstChild&&v.dom.isBlock(V.firstChild)){P=q=P.firstChild;O=o=0;K=S.createRange();K.setStart(P,0);L=S.createRange();L.setStart(q,0)}P=P.nodeName=="HTML"?S.body:P;P=P.nodeName=="BODY"?P.firstChild:P;q=q.nodeName=="HTML"?S.body:q;q=q.nodeName=="BODY"?q.firstChild:q;u=F.getParentBlock(P);z=F.getParentBlock(q);m=u?u.nodeName:W.element;if(J=F.dom.getParent(u,"li,pre")){if(J.nodeName=="LI"){return e(v.selection,F.dom,J)}return d}if(u&&(u.nodeName=="CAPTION"||/absolute|relative|fixed/gi.test(N.getStyle(u,"position",1)))){m=W.element;u=null}if(z&&(z.nodeName=="CAPTION"||/absolute|relative|fixed/gi.test(N.getStyle(u,"position",1)))){m=W.element;z=null}if(/(TD|TABLE|TH|CAPTION)/.test(m)||(u&&m=="DIV"&&/left|right/gi.test(N.getStyle(u,"float",1)))){m=W.element;u=z=null}D=(u&&u.nodeName==m)?u.cloneNode(0):v.dom.create(m);U=(z&&z.nodeName==m)?z.cloneNode(0):v.dom.create(m);U.removeAttribute("id");if(/^(H[1-6])$/.test(m)&&f(H,u)){U=v.dom.create(W.element)}J=p=P;do{if(J==V||J.nodeType==9||F.dom.isBlock(J)||/(TD|TABLE|TH|CAPTION)/.test(J.nodeName)){break}p=J}while((J=J.previousSibling?J.previousSibling:J.parentNode));J=x=q;do{if(J==V||J.nodeType==9||F.dom.isBlock(J)||/(TD|TABLE|TH|CAPTION)/.test(J.nodeName)){break}x=J}while((J=J.nextSibling?J.nextSibling:J.parentNode));if(p.nodeName==m){K.setStart(p,0)}else{K.setStartBefore(p)}K.setEnd(P,O);D.appendChild(K.cloneContents()||S.createTextNode(""));try{L.setEndAfter(x)}catch(Q){}L.setStart(q,o);U.appendChild(L.cloneContents()||S.createTextNode(""));H=S.createRange();if(!p.previousSibling&&p.parentNode.nodeName==m){H.setStartBefore(p.parentNode)}else{if(K.startContainer.nodeName==m&&K.startOffset==0){H.setStartBefore(K.startContainer)}else{H.setStart(K.startContainer,K.startOffset)}}if(!x.nextSibling&&x.parentNode.nodeName==m){H.setEndAfter(x.parentNode)}else{H.setEnd(L.endContainer,L.endOffset)}H.deleteContents();if(b){v.getWin().scrollTo(0,M.y)}if(D.firstChild&&D.firstChild.nodeName==m){D.innerHTML=D.firstChild.innerHTML}if(U.firstChild&&U.firstChild.nodeName==m){U.innerHTML=U.firstChild.innerHTML}if(N.isEmpty(D)){D.innerHTML="<br />"}function T(y,s){var r=[],Y,X,t;y.innerHTML="";if(W.keep_styles){X=s;do{if(/^(SPAN|STRONG|B|EM|I|FONT|STRIKE|U)$/.test(X.nodeName)){Y=X.cloneNode(g);N.setAttrib(Y,"id","");r.push(Y)}}while(X=X.parentNode)}if(r.length>0){for(t=r.length-1,Y=y;t>=0;t--){Y=Y.appendChild(r[t])}r[0].innerHTML=b?"\u00a0":"<br />";return r[0]}else{y.innerHTML=b?"\u00a0":"<br />"}}if(N.isEmpty(U)){B=T(U,q)}if(b&&parseFloat(opera.version())<9.5){H.insertNode(D);H.insertNode(U)}else{H.insertNode(U);H.insertNode(D)}U.normalize();D.normalize();function A(r){return S.createTreeWalker(r,NodeFilter.SHOW_TEXT,null,g).nextNode()||r}H=S.createRange();H.selectNodeContents(a?A(B||U):B||U);H.collapse(1);G.removeAllRanges();G.addRange(H);C=v.dom.getPos(U).y;if(C<M.y||C+25>M.y+M.h){v.getWin().scrollTo(0,C<M.y?C:C-M.h+25)}v.undoManager.add();return g},backspaceDelete:function(u,B){var C=this,s=C.editor,y=s.getBody(),q=s.dom,p,v=s.selection,o=v.getRng(),x=o.startContainer,p,z,A,m;if(!B&&o.collapsed&&x.nodeType==1&&o.startOffset==x.childNodes.length){m=new l.dom.TreeWalker(x.lastChild,x);for(p=x.lastChild;p;p=m.prev()){if(p.nodeType==3){o.setStart(p,p.nodeValue.length);o.collapse(true);v.setRng(o);return}}}if(x&&s.dom.isBlock(x)&&!/^(TD|TH)$/.test(x.nodeName)&&B){if(x.childNodes.length==0||(x.childNodes.length==1&&x.firstChild.nodeName=="BR")){p=x;while((p=p.previousSibling)&&!s.dom.isBlock(p)){}if(p){if(x!=y.firstChild){z=s.dom.doc.createTreeWalker(p,NodeFilter.SHOW_TEXT,null,g);while(A=z.nextNode()){p=A}o=s.getDoc().createRange();o.setStart(p,p.nodeValue?p.nodeValue.length:0);o.setEnd(p,p.nodeValue?p.nodeValue.length:0);v.setRng(o);s.dom.remove(x)}return j.cancel(u)}}}}})})(tinymce);(function(c){var b=c.DOM,a=c.dom.Event,d=c.each,e=c.extend;c.create("tinymce.ControlManager",{ControlManager:function(f,j){var h=this,g;j=j||{};h.editor=f;h.controls={};h.onAdd=new c.util.Dispatcher(h);h.onPostRender=new c.util.Dispatcher(h);h.prefix=j.prefix||f.id+"_";h._cls={};h.onPostRender.add(function(){d(h.controls,function(i){i.postRender()})})},get:function(f){return this.controls[this.prefix+f]||this.controls[f]},setActive:function(h,f){var g=null;if(g=this.get(h)){g.setActive(f)}return g},setDisabled:function(h,f){var g=null;if(g=this.get(h)){g.setDisabled(f)}return g},add:function(g){var f=this;if(g){f.controls[g.id]=g;f.onAdd.dispatch(g,f)}return g},createControl:function(i){var h,g=this,f=g.editor;d(f.plugins,function(j){if(j.createControl){h=j.createControl(i,g);if(h){return false}}});switch(i){case"|":case"separator":return g.createSeparator()}if(!h&&f.buttons&&(h=f.buttons[i])){return g.createButton(i,h)}return g.add(h)},createDropMenu:function(f,n,h){var m=this,i=m.editor,j,g,k,l;n=e({"class":"mceDropDown",constrain:i.settings.constrain_menus},n);n["class"]=n["class"]+" "+i.getParam("skin")+"Skin";if(k=i.getParam("skin_variant")){n["class"]+=" "+i.getParam("skin")+"Skin"+k.substring(0,1).toUpperCase()+k.substring(1)}f=m.prefix+f;l=h||m._cls.dropmenu||c.ui.DropMenu;j=m.controls[f]=new l(f,n);j.onAddItem.add(function(r,q){var p=q.settings;p.title=i.getLang(p.title,p.title);if(!p.onclick){p.onclick=function(o){if(p.cmd){i.execCommand(p.cmd,p.ui||false,p.value)}}}});i.onRemove.add(function(){j.destroy()});if(c.isIE){j.onShowMenu.add(function(){i.focus();g=i.selection.getBookmark(1)});j.onHideMenu.add(function(){if(g){i.selection.moveToBookmark(g);g=0}})}return m.add(j)},createListBox:function(m,i,l){var h=this,g=h.editor,j,k,f;if(h.get(m)){return null}i.title=g.translate(i.title);i.scope=i.scope||g;if(!i.onselect){i.onselect=function(n){g.execCommand(i.cmd,i.ui||false,n||i.value)}}i=e({title:i.title,"class":"mce_"+m,scope:i.scope,control_manager:h},i);m=h.prefix+m;if(g.settings.use_native_selects){k=new c.ui.NativeListBox(m,i)}else{f=l||h._cls.listbox||c.ui.ListBox;k=new f(m,i,g)}h.controls[m]=k;if(c.isWebKit){k.onPostRender.add(function(p,o){a.add(o,"mousedown",function(){g.bookmark=g.selection.getBookmark(1)});a.add(o,"focus",function(){g.selection.moveToBookmark(g.bookmark);g.bookmark=null})})}if(k.hideMenu){g.onMouseDown.add(k.hideMenu,k)}return h.add(k)},createButton:function(m,i,l){var h=this,g=h.editor,j,k,f;if(h.get(m)){return null}i.title=g.translate(i.title);i.label=g.translate(i.label);i.scope=i.scope||g;if(!i.onclick&&!i.menu_button){i.onclick=function(){g.execCommand(i.cmd,i.ui||false,i.value)}}i=e({title:i.title,"class":"mce_"+m,unavailable_prefix:g.getLang("unavailable",""),scope:i.scope,control_manager:h},i);m=h.prefix+m;if(i.menu_button){f=l||h._cls.menubutton||c.ui.MenuButton;k=new f(m,i,g);g.onMouseDown.add(k.hideMenu,k)}else{f=h._cls.button||c.ui.Button;k=new f(m,i)}return h.add(k)},createMenuButton:function(h,f,g){f=f||{};f.menu_button=1;return this.createButton(h,f,g)},createSplitButton:function(m,i,l){var h=this,g=h.editor,j,k,f;if(h.get(m)){return null}i.title=g.translate(i.title);i.scope=i.scope||g;if(!i.onclick){i.onclick=function(n){g.execCommand(i.cmd,i.ui||false,n||i.value)}}if(!i.onselect){i.onselect=function(n){g.execCommand(i.cmd,i.ui||false,n||i.value)}}i=e({title:i.title,"class":"mce_"+m,scope:i.scope,control_manager:h},i);m=h.prefix+m;f=l||h._cls.splitbutton||c.ui.SplitButton;k=h.add(new f(m,i,g));g.onMouseDown.add(k.hideMenu,k);return k},createColorSplitButton:function(f,n,h){var l=this,j=l.editor,i,k,m,g;if(l.get(f)){return null}n.title=j.translate(n.title);n.scope=n.scope||j;if(!n.onclick){n.onclick=function(o){if(c.isIE){g=j.selection.getBookmark(1)}j.execCommand(n.cmd,n.ui||false,o||n.value)}}if(!n.onselect){n.onselect=function(o){j.execCommand(n.cmd,n.ui||false,o||n.value)}}n=e({title:n.title,"class":"mce_"+f,menu_class:j.getParam("skin")+"Skin",scope:n.scope,more_colors_title:j.getLang("more_colors")},n);f=l.prefix+f;m=h||l._cls.colorsplitbutton||c.ui.ColorSplitButton;k=new m(f,n,j);j.onMouseDown.add(k.hideMenu,k);j.onRemove.add(function(){k.destroy()});if(c.isIE){k.onShowMenu.add(function(){j.focus();g=j.selection.getBookmark(1)});k.onHideMenu.add(function(){if(g){j.selection.moveToBookmark(g);g=0}})}return l.add(k)},createToolbar:function(k,h,j){var i,g=this,f;k=g.prefix+k;f=j||g._cls.toolbar||c.ui.Toolbar;i=new f(k,h,g.editor);if(g.get(k)){return null}return g.add(i)},createToolbarGroup:function(k,h,j){var i,g=this,f;k=g.prefix+k;f=j||this._cls.toolbarGroup||c.ui.ToolbarGroup;i=new f(k,h,g.editor);if(g.get(k)){return null}return g.add(i)},createSeparator:function(g){var f=g||this._cls.separator||c.ui.Separator;return new f()},setControlType:function(g,f){return this._cls[g.toLowerCase()]=f},destroy:function(){d(this.controls,function(f){f.destroy()});this.controls=null}})})(tinymce);(function(d){var a=d.util.Dispatcher,e=d.each,c=d.isIE,b=d.isOpera;d.create("tinymce.WindowManager",{WindowManager:function(f){var g=this;g.editor=f;g.onOpen=new a(g);g.onClose=new a(g);g.params={};g.features={}},open:function(z,h){var v=this,k="",n,m,i=v.editor.settings.dialog_type=="modal",q,o,j,g=d.DOM.getViewPort(),r;z=z||{};h=h||{};o=b?g.w:screen.width;j=b?g.h:screen.height;z.name=z.name||"mc_"+new Date().getTime();z.width=parseInt(z.width||320);z.height=parseInt(z.height||240);z.resizable=true;z.left=z.left||parseInt(o/2)-(z.width/2);z.top=z.top||parseInt(j/2)-(z.height/2);h.inline=false;h.mce_width=z.width;h.mce_height=z.height;h.mce_auto_focus=z.auto_focus;if(i){if(c){z.center=true;z.help=false;z.dialogWidth=z.width+"px";z.dialogHeight=z.height+"px";z.scroll=z.scrollbars||false}}e(z,function(p,f){if(d.is(p,"boolean")){p=p?"yes":"no"}if(!/^(name|url)$/.test(f)){if(c&&i){k+=(k?";":"")+f+":"+p}else{k+=(k?",":"")+f+"="+p}}});v.features=z;v.params=h;v.onOpen.dispatch(v,z,h);r=z.url||z.file;r=d._addVer(r);try{if(c&&i){q=1;window.showModalDialog(r,window,k)}else{q=window.open(r,z.name,k)}}catch(l){}if(!q){alert(v.editor.getLang("popup_blocked"))}},close:function(f){f.close();this.onClose.dispatch(this)},createInstance:function(i,h,g,m,l,k){var j=d.resolve(i);return new j(h,g,m,l,k)},confirm:function(h,f,i,g){g=g||window;f.call(i||this,g.confirm(this._decode(this.editor.getLang(h,h))))},alert:function(h,f,j,g){var i=this;g=g||window;g.alert(i._decode(i.editor.getLang(h,h)));if(f){f.call(j||i)}},resizeBy:function(f,g,h){h.resizeBy(f,g)},_decode:function(f){return d.DOM.decode(f).replace(/\\n/g,"\n")}})}(tinymce));(function(a){a.Formatter=function(V){var M={},O=a.each,c=V.dom,q=V.selection,t=a.dom.TreeWalker,K=new a.dom.RangeUtils(c),d=V.schema.isValidChild,F=c.isBlock,l=V.settings.forced_root_block,s=c.nodeIndex,E="\uFEFF",e=/^(src|href|style)$/,S=false,B=true,p,P={apply:[],remove:[]};function z(W){return W instanceof Array}function m(X,W){return c.getParents(X,W,c.getRoot())}function b(W){return W.nodeType===1&&(W.face==="mceinline"||W.style.fontFamily==="mceinline")}function R(W){return W?M[W]:M}function k(W,X){if(W){if(typeof(W)!=="string"){O(W,function(Z,Y){k(Y,Z)})}else{X=X.length?X:[X];O(X,function(Y){if(Y.deep===p){Y.deep=!Y.selector}if(Y.split===p){Y.split=!Y.selector||Y.inline}if(Y.remove===p&&Y.selector&&!Y.inline){Y.remove="none"}if(Y.selector&&Y.inline){Y.mixed=true;Y.block_expand=true}if(typeof(Y.classes)==="string"){Y.classes=Y.classes.split(/\s+/)}});M[W]=X}}}var i=function(X){var W;V.dom.getParent(X,function(Y){W=V.dom.getStyle(Y,"text-decoration");return W&&W!=="none"});return W};var I=function(W){var X;if(W.nodeType===1&&W.parentNode&&W.parentNode.nodeType===1){X=i(W.parentNode);if(V.dom.getStyle(W,"color")&&X){V.dom.setStyle(W,"text-decoration",X)}else{if(V.dom.getStyle(W,"textdecoration")===X){V.dom.setStyle(W,"text-decoration",null)}}}};function T(Y,af,aa){var ab=R(Y),ag=ab[0],ae,X,ad,ac=q.isCollapsed();function Z(ak){var aj=ak.startContainer,an=ak.startOffset,am,al;if(aj.nodeType==1||aj.nodeValue===""){aj=aj.nodeType==1?aj.childNodes[an]:aj;if(aj){am=new t(aj,aj.parentNode);for(al=am.current();al;al=am.next()){if(al.nodeType==3&&!f(al)){ak.setStart(al,0);break}}}}return ak}function W(ak,aj){aj=aj||ag;if(ak){O(aj.styles,function(am,al){c.setStyle(ak,al,r(am,af))});O(aj.attributes,function(am,al){c.setAttrib(ak,al,r(am,af))});O(aj.classes,function(al){al=r(al,af);if(!c.hasClass(ak,al)){c.addClass(ak,al)}})}}function ah(ak){var aj=[],am,al;am=ag.inline||ag.block;al=c.create(am);W(al);K.walk(ak,function(an){var ao;function ap(aq){var au=aq.nodeName.toLowerCase(),at=aq.parentNode.nodeName.toLowerCase(),ar;if(g(au,"br")){ao=0;if(ag.block){c.remove(aq)}return}if(ag.wrapper&&x(aq,Y,af)){ao=0;return}if(ag.block&&!ag.wrapper&&G(au)){aq=c.rename(aq,am);W(aq);aj.push(aq);ao=0;return}if(ag.selector){O(ab,function(av){if("collapsed" in av&&av.collapsed!==ac){return}if(c.is(aq,av.selector)&&!b(aq)){W(aq,av);ar=true}});if(!ag.inline||ar){ao=0;return}}if(d(am,au)&&d(at,am)&&!(aq.nodeType===3&&aq.nodeValue.length===1&&aq.nodeValue.charCodeAt(0)===65279)){if(!ao){ao=al.cloneNode(S);aq.parentNode.insertBefore(ao,aq);aj.push(ao)}ao.appendChild(aq)}else{ao=0;O(a.grep(aq.childNodes),ap);ao=0}}O(an,ap)});if(ag.wrap_links===false){O(aj,function(an){function ao(at){var ar,aq,ap;if(at.nodeName==="A"){aq=al.cloneNode(S);aj.push(aq);ap=a.grep(at.childNodes);for(ar=0;ar<ap.length;ar++){aq.appendChild(ap[ar])}at.appendChild(aq)}O(a.grep(at.childNodes),ao)}ao(an)})}O(aj,function(ap){var an;function aq(at){var ar=0;O(at.childNodes,function(au){if(!f(au)&&!H(au)){ar++}});return ar}function ao(ar){var au,at;O(ar.childNodes,function(av){if(av.nodeType==1&&!H(av)&&!b(av)){au=av;return S}});if(au&&h(au,ag)){at=au.cloneNode(S);W(at);c.replace(at,ar,B);c.remove(au,1)}return at||ar}an=aq(ap);if((aj.length>1||!F(ap))&&an===0){c.remove(ap,1);return}if(ag.inline||ag.wrapper){if(!ag.exact&&an===1){ap=ao(ap)}O(ab,function(ar){O(c.select(ar.inline,ap),function(au){var at;if(ar.wrap_links===false){at=au.parentNode;do{if(at.nodeName==="A"){return}}while(at=at.parentNode)}U(ar,af,au,ar.exact?au:null)})});if(x(ap.parentNode,Y,af)){c.remove(ap,1);ap=0;return B}if(ag.merge_with_parents){c.getParent(ap.parentNode,function(ar){if(x(ar,Y,af)){c.remove(ap,1);ap=0;return B}})}if(ap){ap=u(C(ap),ap);ap=u(ap,C(ap,B))}}})}if(ag){if(aa){X=c.createRng();X.setStartBefore(aa);X.setEndAfter(aa);ah(o(X,ab))}else{if(!ac||!ag.inline||c.select("td.mceSelected,th.mceSelected").length){var ai=V.selection.getNode();ae=q.getBookmark();ah(o(q.getRng(B),ab));if(ag.styles&&(ag.styles.color||ag.styles.textDecoration)){a.walk(ai,I,"childNodes");I(ai)}q.moveToBookmark(ae);q.setRng(Z(q.getRng(B)));V.nodeChanged()}else{Q("apply",Y,af)}}}}function A(Y,ah,ab){var ac=R(Y),aj=ac[0],ag,af,X;function aa(am){var al=am.startContainer,ar=am.startOffset,aq,ap,an,ao;if(al.nodeType==3&&ar>=al.nodeValue.length-1){al=al.parentNode;ar=s(al)+1}if(al.nodeType==1){an=al.childNodes;al=an[Math.min(ar,an.length-1)];aq=new t(al);if(ar>an.length-1){aq.next()}for(ap=aq.current();ap;ap=aq.next()){if(ap.nodeType==3&&!f(ap)){ao=c.create("a",null,E);ap.parentNode.insertBefore(ao,ap);am.setStart(ap,0);q.setRng(am);c.remove(ao);return}}}}function Z(ao){var an,am,al;an=a.grep(ao.childNodes);for(am=0,al=ac.length;am<al;am++){if(U(ac[am],ah,ao,ao)){break}}if(aj.deep){for(am=0,al=an.length;am<al;am++){Z(an[am])}}}function ad(al){var am;O(m(al.parentNode).reverse(),function(an){var ao;if(!am&&an.id!="_start"&&an.id!="_end"){ao=x(an,Y,ah);if(ao&&ao.split!==false){am=an}}});return am}function W(ao,al,aq,au){var av,at,ar,an,ap,am;if(ao){am=ao.parentNode;for(av=al.parentNode;av&&av!=am;av=av.parentNode){at=av.cloneNode(S);for(ap=0;ap<ac.length;ap++){if(U(ac[ap],ah,at,at)){at=0;break}}if(at){if(ar){at.appendChild(ar)}if(!an){an=at}ar=at}}if(au&&(!aj.mixed||!F(ao))){al=c.split(ao,al)}if(ar){aq.parentNode.insertBefore(ar,aq);an.appendChild(aq)}}return al}function ai(al){return W(ad(al),al,al,true)}function ae(an){var am=c.get(an?"_start":"_end"),al=am[an?"firstChild":"lastChild"];if(H(al)){al=al[an?"firstChild":"lastChild"]}c.remove(am,true);return al}function ak(al){var am,an;al=o(al,ac,B);if(aj.split){am=J(al,B);an=J(al);if(am!=an){am=N(am,"span",{id:"_start","data-mce-type":"bookmark"});an=N(an,"span",{id:"_end","data-mce-type":"bookmark"});ai(am);ai(an);am=ae(B);an=ae()}else{am=an=ai(am)}al.startContainer=am.parentNode;al.startOffset=s(am);al.endContainer=an.parentNode;al.endOffset=s(an)+1}K.walk(al,function(ao){O(ao,function(ap){Z(ap);if(ap.nodeType===1&&V.dom.getStyle(ap,"text-decoration")==="underline"&&ap.parentNode&&i(ap.parentNode)==="underline"){U({deep:false,exact:true,inline:"span",styles:{textDecoration:"underline"}},null,ap)}})})}if(ab){X=c.createRng();X.setStartBefore(ab);X.setEndAfter(ab);ak(X);return}if(!q.isCollapsed()||!aj.inline||c.select("td.mceSelected,th.mceSelected").length){ag=q.getBookmark();ak(q.getRng(B));q.moveToBookmark(ag);if(j(Y,ah,q.getStart())){aa(q.getRng(true))}V.nodeChanged()}else{Q("remove",Y,ah)}}function D(X,Z,Y){var W=R(X);if(j(X,Z,Y)&&(!("toggle" in W[0])||W[0]["toggle"])){A(X,Z,Y)}else{T(X,Z,Y)}}function x(X,W,ac,aa){var Y=R(W),ad,ab,Z;function ae(ai,ak,al){var ah,aj,af=ak[al],ag;if(af){if(af.length===p){for(ah in af){if(af.hasOwnProperty(ah)){if(al==="attributes"){aj=c.getAttrib(ai,ah)}else{aj=L(ai,ah)}if(aa&&!aj&&!ak.exact){return}if((!aa||ak.exact)&&!g(aj,r(af[ah],ac))){return}}}}else{for(ag=0;ag<af.length;ag++){if(al==="attributes"?c.getAttrib(ai,af[ag]):L(ai,af[ag])){return ak}}}}return ak}if(Y&&X){for(ab=0;ab<Y.length;ab++){ad=Y[ab];if(h(X,ad)&&ae(X,ad,"attributes")&&ae(X,ad,"styles")){if(Z=ad.classes){for(ab=0;ab<Z.length;ab++){if(!c.hasClass(X,Z[ab])){return}}}return ad}}}}function j(Y,ab,aa){var X,Z;function W(ac){ac=c.getParent(ac,function(ad){return !!x(ad,Y,ab,true)});return x(ac,Y,ab)}if(aa){return W(aa)}if(q.isCollapsed()){for(Z=P.apply.length-1;Z>=0;Z--){if(P.apply[Z].name==Y){return true}}for(Z=P.remove.length-1;Z>=0;Z--){if(P.remove[Z].name==Y){return false}}return W(q.getNode())}aa=q.getNode();if(W(aa)){return B}X=q.getStart();if(X!=aa){if(W(X)){return B}}return S}function v(ad,ac){var aa,ab=[],Z={},Y,X,W;if(q.isCollapsed()){for(X=0;X<ad.length;X++){for(Y=P.remove.length-1;Y>=0;Y--){W=ad[X];if(P.remove[Y].name==W){Z[W]=true;break}}}for(Y=P.apply.length-1;Y>=0;Y--){for(X=0;X<ad.length;X++){W=ad[X];if(!Z[W]&&P.apply[Y].name==W){Z[W]=true;ab.push(W)}}}}aa=q.getStart();c.getParent(aa,function(ag){var af,ae;for(af=0;af<ad.length;af++){ae=ad[af];if(!Z[ae]&&x(ag,ae,ac)){Z[ae]=true;ab.push(ae)}}});return ab}function y(aa){var ac=R(aa),Z,Y,ab,X,W;if(ac){Z=q.getStart();Y=m(Z);for(X=ac.length-1;X>=0;X--){W=ac[X].selector;if(!W){return B}for(ab=Y.length-1;ab>=0;ab--){if(c.is(Y[ab],W)){return B}}}}return S}a.extend(this,{get:R,register:k,apply:T,remove:A,toggle:D,match:j,matchAll:v,matchNode:x,canApply:y});function h(W,X){if(g(W,X.inline)){return B}if(g(W,X.block)){return B}if(X.selector){return c.is(W,X.selector)}}function g(X,W){X=X||"";W=W||"";X=""+(X.nodeName||X);W=""+(W.nodeName||W);return X.toLowerCase()==W.toLowerCase()}function L(X,W){var Y=c.getStyle(X,W);if(W=="color"||W=="backgroundColor"){Y=c.toHex(Y)}if(W=="fontWeight"&&Y==700){Y="bold"}return""+Y}function r(W,X){if(typeof(W)!="string"){W=W(X)}else{if(X){W=W.replace(/%(\w+)/g,function(Z,Y){return X[Y]||Z})}}return W}function f(W){return W&&W.nodeType===3&&/^([\s\r\n]+|)$/.test(W.nodeValue)}function N(Y,X,W){var Z=c.create(X,W);Y.parentNode.insertBefore(Z,Y);Z.appendChild(Y);return Z}function o(W,ag,Z){var Y=W.startContainer,ad=W.startOffset,aj=W.endContainer,ae=W.endOffset,ai,af,ac;function ah(am,an,ak,al){var ao,ap;al=al||c.getRoot();for(;;){ao=am.parentNode;if(ao==al||(!ag[0].block_expand&&F(ao))){return am}for(ai=ao[an];ai&&ai!=am;ai=ai[ak]){if(ai.nodeType==1&&!H(ai)){return am}if(ai.nodeType==3&&!f(ai)){return am}}am=am.parentNode}return am}function ab(ak,al){if(al===p){al=ak.nodeType===3?ak.length:ak.childNodes.length}while(ak&&ak.hasChildNodes()){ak=ak.childNodes[al];if(ak){al=ak.nodeType===3?ak.length:ak.childNodes.length}}return{node:ak,offset:al}}if(Y.nodeType==1&&Y.hasChildNodes()){af=Y.childNodes.length-1;Y=Y.childNodes[ad>af?af:ad];if(Y.nodeType==3){ad=0}}if(aj.nodeType==1&&aj.hasChildNodes()){af=aj.childNodes.length-1;aj=aj.childNodes[ae>af?af:ae-1];if(aj.nodeType==3){ae=aj.nodeValue.length}}if(H(Y.parentNode)){Y=Y.parentNode}if(H(Y)){Y=Y.nextSibling||Y}if(H(aj.parentNode)){ae=c.nodeIndex(aj);aj=aj.parentNode}if(H(aj)&&aj.previousSibling){aj=aj.previousSibling;ae=aj.length}if(ag[0].inline){ac=ab(aj,ae);if(ac.node){while(ac.node&&ac.offset===0&&ac.node.previousSibling){ac=ab(ac.node.previousSibling)}if(ac.node&&ac.offset>0&&ac.node.nodeType===3&&ac.node.nodeValue.charAt(ac.offset-1)===" "){if(ac.offset>1){aj=ac.node;aj.splitText(ac.offset-1)}else{if(ac.node.previousSibling){aj=ac.node.previousSibling}}}}}if(ag[0].inline||ag[0].block_expand){Y=ah(Y,"firstChild","nextSibling");aj=ah(aj,"lastChild","previousSibling")}if(ag[0].selector&&ag[0].expand!==S&&!ag[0].inline){function aa(al,ak){var am,an,ap,ao;if(al.nodeType==3&&al.nodeValue.length==0&&al[ak]){al=al[ak]}am=m(al);for(an=0;an<am.length;an++){for(ap=0;ap<ag.length;ap++){ao=ag[ap];if("collapsed" in ao&&ao.collapsed!==W.collapsed){continue}if(c.is(am[an],ao.selector)){return am[an]}}}return al}Y=aa(Y,"previousSibling");aj=aa(aj,"nextSibling")}if(ag[0].block||ag[0].selector){function X(al,ak,an){var am;if(!ag[0].wrapper){am=c.getParent(al,ag[0].block)}if(!am){am=c.getParent(al.nodeType==3?al.parentNode:al,F)}if(am&&ag[0].wrapper){am=m(am,"ul,ol").reverse()[0]||am}if(!am){am=al;while(am[ak]&&!F(am[ak])){am=am[ak];if(g(am,"br")){break}}}return am||al}Y=X(Y,"previousSibling");aj=X(aj,"nextSibling");if(ag[0].block){if(!F(Y)){Y=ah(Y,"firstChild","nextSibling")}if(!F(aj)){aj=ah(aj,"lastChild","previousSibling")}}}if(Y.nodeType==1){ad=s(Y);Y=Y.parentNode}if(aj.nodeType==1){ae=s(aj)+1;aj=aj.parentNode}return{startContainer:Y,startOffset:ad,endContainer:aj,endOffset:ae}}function U(ac,ab,Z,W){var Y,X,aa;if(!h(Z,ac)){return S}if(ac.remove!="all"){O(ac.styles,function(ae,ad){ae=r(ae,ab);if(typeof(ad)==="number"){ad=ae;W=0}if(!W||g(L(W,ad),ae)){c.setStyle(Z,ad,"")}aa=1});if(aa&&c.getAttrib(Z,"style")==""){Z.removeAttribute("style");Z.removeAttribute("data-mce-style")}O(ac.attributes,function(af,ad){var ae;af=r(af,ab);if(typeof(ad)==="number"){ad=af;W=0}if(!W||g(c.getAttrib(W,ad),af)){if(ad=="class"){af=c.getAttrib(Z,ad);if(af){ae="";O(af.split(/\s+/),function(ag){if(/mce\w+/.test(ag)){ae+=(ae?" ":"")+ag}});if(ae){c.setAttrib(Z,ad,ae);return}}}if(ad=="class"){Z.removeAttribute("className")}if(e.test(ad)){Z.removeAttribute("data-mce-"+ad)}Z.removeAttribute(ad)}});O(ac.classes,function(ad){ad=r(ad,ab);if(!W||c.hasClass(W,ad)){c.removeClass(Z,ad)}});X=c.getAttribs(Z);for(Y=0;Y<X.length;Y++){if(X[Y].nodeName.indexOf("_")!==0){return S}}}if(ac.remove!="none"){n(Z,ac);return B}}function n(Y,Z){var W=Y.parentNode,X;if(Z.block){if(!l){function aa(ac,ab,ad){ac=C(ac,ab,ad);return !ac||(ac.nodeName=="BR"||F(ac))}if(F(Y)&&!F(W)){if(!aa(Y,S)&&!aa(Y.firstChild,B,1)){Y.insertBefore(c.create("br"),Y.firstChild)}if(!aa(Y,B)&&!aa(Y.lastChild,S,1)){Y.appendChild(c.create("br"))}}}else{if(W==c.getRoot()){if(!Z.list_block||!g(Y,Z.list_block)){O(a.grep(Y.childNodes),function(ab){if(d(l,ab.nodeName.toLowerCase())){if(!X){X=N(ab,l)}else{X.appendChild(ab)}}else{X=0}})}}}}if(Z.selector&&Z.inline&&!g(Z.inline,Y)){return}c.remove(Y,1)}function C(X,W,Y){if(X){W=W?"nextSibling":"previousSibling";for(X=Y?X:X[W];X;X=X[W]){if(X.nodeType==1||!f(X)){return X}}}}function H(W){return W&&W.nodeType==1&&W.getAttribute("data-mce-type")=="bookmark"}function u(aa,Z){var W,Y,X;function ac(af,ae){if(af.nodeName!=ae.nodeName){return S}function ad(ah){var ai={};O(c.getAttribs(ah),function(aj){var ak=aj.nodeName.toLowerCase();if(ak.indexOf("_")!==0&&ak!=="style"){ai[ak]=c.getAttrib(ah,ak)}});return ai}function ag(ak,aj){var ai,ah;for(ah in ak){if(ak.hasOwnProperty(ah)){ai=aj[ah];if(ai===p){return S}if(ak[ah]!=ai){return S}delete aj[ah]}}for(ah in aj){if(aj.hasOwnProperty(ah)){return S}}return B}if(!ag(ad(af),ad(ae))){return S}if(!ag(c.parseStyle(c.getAttrib(af,"style")),c.parseStyle(c.getAttrib(ae,"style")))){return S}return B}if(aa&&Z){function ab(ae,ad){for(Y=ae;Y;Y=Y[ad]){if(Y.nodeType==3&&Y.nodeValue.length!==0){return ae}if(Y.nodeType==1&&!H(Y)){return Y}}return ae}aa=ab(aa,"previousSibling");Z=ab(Z,"nextSibling");if(ac(aa,Z)){for(Y=aa.nextSibling;Y&&Y!=Z;){X=Y;Y=Y.nextSibling;aa.appendChild(X)}c.remove(Z);O(a.grep(Z.childNodes),function(ad){aa.appendChild(ad)});return aa}}return Z}function G(W){return/^(h[1-6]|p|div|pre|address|dl|dt|dd)$/.test(W)}function J(X,aa){var W,Z,Y;W=X[aa?"startContainer":"endContainer"];Z=X[aa?"startOffset":"endOffset"];if(W.nodeType==1){Y=W.childNodes.length-1;if(!aa&&Z){Z--}W=W.childNodes[Z>Y?Y:Z]}return W}function Q(ab,X,aa){var Y,W=P[ab],ac=P[ab=="apply"?"remove":"apply"];function ad(){return P.apply.length||P.remove.length}function Z(){P.apply=[];P.remove=[]}function ae(af){O(P.apply.reverse(),function(ag){T(ag.name,ag.vars,af);if(ag.name==="forecolor"&&ag.vars.value){I(af.parentNode)}});O(P.remove.reverse(),function(ag){A(ag.name,ag.vars,af)});c.remove(af,1);Z()}for(Y=W.length-1;Y>=0;Y--){if(W[Y].name==X){return}}W.push({name:X,vars:aa});for(Y=ac.length-1;Y>=0;Y--){if(ac[Y].name==X){ac.splice(Y,1)}}if(ad()){V.getDoc().execCommand("FontName",false,"mceinline");P.lastRng=q.getRng();O(c.select("font,span"),function(ag){var af;if(b(ag)){af=q.getBookmark();ae(ag);q.moveToBookmark(af);V.nodeChanged()}});if(!P.isListening&&ad()){P.isListening=true;O("onKeyDown,onKeyUp,onKeyPress,onMouseUp".split(","),function(af){V[af].addToTop(function(ag,ah){if(ad()&&!a.dom.RangeUtils.compareRanges(P.lastRng,q.getRng())){O(c.select("font,span"),function(aj){var ak,ai;if(b(aj)){ak=aj.firstChild;if(ak){ae(aj);ai=c.createRng();ai.setStart(ak,ak.nodeValue.length);ai.setEnd(ak,ak.nodeValue.length);q.setRng(ai);ag.nodeChanged()}else{c.remove(aj)}}});if(ah.type=="keyup"||ah.type=="mouseup"){Z()}}})})}}}}})(tinymce);tinymce.onAddEditor.add(function(e,a){var d,h,g,c=a.settings;if(c.inline_styles){h=e.explode(c.font_size_style_values);function b(j,i){e.each(i,function(l,k){if(l){g.setStyle(j,k,l)}});g.rename(j,"span")}d={font:function(j,i){b(i,{backgroundColor:i.style.backgroundColor,color:i.color,fontFamily:i.face,fontSize:h[parseInt(i.size)-1]})},u:function(j,i){b(i,{textDecoration:"underline"})},strike:function(j,i){b(i,{textDecoration:"line-through"})}};function f(i,j){g=i.dom;if(c.convert_fonts_to_spans){e.each(g.select("font,u,strike",j.node),function(k){d[k.nodeName.toLowerCase()](a.dom,k)})}}a.onPreProcess.add(f);a.onSetContent.add(f);a.onInit.add(function(){a.selection.onSetContent.add(f)})}});
+(function(d){var a=/^\s*|\s*$/g,e,c="B".replace(/A(.)|B/,"$1")==="$1";var b={majorVersion:"3",minorVersion:"4.5",releaseDate:"2011-09-06",_init:function(){var s=this,q=document,o=navigator,g=o.userAgent,m,f,l,k,j,r;s.isOpera=d.opera&&opera.buildNumber;s.isWebKit=/WebKit/.test(g);s.isIE=!s.isWebKit&&!s.isOpera&&(/MSIE/gi).test(g)&&(/Explorer/gi).test(o.appName);s.isIE6=s.isIE&&/MSIE [56]/.test(g);s.isIE7=s.isIE&&/MSIE [7]/.test(g);s.isIE8=s.isIE&&/MSIE [8]/.test(g);s.isIE9=s.isIE&&/MSIE [9]/.test(g);s.isGecko=!s.isWebKit&&/Gecko/.test(g);s.isMac=g.indexOf("Mac")!=-1;s.isAir=/adobeair/i.test(g);s.isIDevice=/(iPad|iPhone)/.test(g);s.isIOS5=s.isIDevice&&g.match(/AppleWebKit\/(\d*)/)[1]>=534;if(d.tinyMCEPreInit){s.suffix=tinyMCEPreInit.suffix;s.baseURL=tinyMCEPreInit.base;s.query=tinyMCEPreInit.query;return}s.suffix="";f=q.getElementsByTagName("base");for(m=0;m<f.length;m++){if(r=f[m].href){if(/^https?:\/\/[^\/]+$/.test(r)){r+="/"}k=r?r.match(/.*\//)[0]:""}}function h(i){if(i.src&&/tiny_mce(|_gzip|_jquery|_prototype|_full)(_dev|_src)?.js/.test(i.src)){if(/_(src|dev)\.js/g.test(i.src)){s.suffix="_src"}if((j=i.src.indexOf("?"))!=-1){s.query=i.src.substring(j+1)}s.baseURL=i.src.substring(0,i.src.lastIndexOf("/"));if(k&&s.baseURL.indexOf("://")==-1&&s.baseURL.indexOf("/")!==0){s.baseURL=k+s.baseURL}return s.baseURL}return null}f=q.getElementsByTagName("script");for(m=0;m<f.length;m++){if(h(f[m])){return}}l=q.getElementsByTagName("head")[0];if(l){f=l.getElementsByTagName("script");for(m=0;m<f.length;m++){if(h(f[m])){return}}}return},is:function(g,f){if(!f){return g!==e}if(f=="array"&&(g.hasOwnProperty&&g instanceof Array)){return true}return typeof(g)==f},makeMap:function(f,j,h){var g;f=f||[];j=j||",";if(typeof(f)=="string"){f=f.split(j)}h=h||{};g=f.length;while(g--){h[f[g]]={}}return h},each:function(i,f,h){var j,g;if(!i){return 0}h=h||i;if(i.length!==e){for(j=0,g=i.length;j<g;j++){if(f.call(h,i[j],j,i)===false){return 0}}}else{for(j in i){if(i.hasOwnProperty(j)){if(f.call(h,i[j],j,i)===false){return 0}}}}return 1},map:function(g,h){var i=[];b.each(g,function(f){i.push(h(f))});return i},grep:function(g,h){var i=[];b.each(g,function(f){if(!h||h(f)){i.push(f)}});return i},inArray:function(g,h){var j,f;if(g){for(j=0,f=g.length;j<f;j++){if(g[j]===h){return j}}}return -1},extend:function(k,j){var h,g,f=arguments;for(h=1,g=f.length;h<g;h++){j=f[h];b.each(j,function(i,l){if(i!==e){k[l]=i}})}return k},trim:function(f){return(f?""+f:"").replace(a,"")},create:function(o,f,j){var n=this,g,i,k,l,h,m=0;o=/^((static) )?([\w.]+)(:([\w.]+))?/.exec(o);k=o[3].match(/(^|\.)(\w+)$/i)[2];i=n.createNS(o[3].replace(/\.\w+$/,""),j);if(i[k]){return}if(o[2]=="static"){i[k]=f;if(this.onCreate){this.onCreate(o[2],o[3],i[k])}return}if(!f[k]){f[k]=function(){};m=1}i[k]=f[k];n.extend(i[k].prototype,f);if(o[5]){g=n.resolve(o[5]).prototype;l=o[5].match(/\.(\w+)$/i)[1];h=i[k];if(m){i[k]=function(){return g[l].apply(this,arguments)}}else{i[k]=function(){this.parent=g[l];return h.apply(this,arguments)}}i[k].prototype[k]=i[k];n.each(g,function(p,q){i[k].prototype[q]=g[q]});n.each(f,function(p,q){if(g[q]){i[k].prototype[q]=function(){this.parent=g[q];return p.apply(this,arguments)}}else{if(q!=k){i[k].prototype[q]=p}}})}n.each(f["static"],function(p,q){i[k][q]=p});if(this.onCreate){this.onCreate(o[2],o[3],i[k].prototype)}},walk:function(i,h,j,g){g=g||this;if(i){if(j){i=i[j]}b.each(i,function(k,f){if(h.call(g,k,f,j)===false){return false}b.walk(k,h,j,g)})}},createNS:function(j,h){var g,f;h=h||d;j=j.split(".");for(g=0;g<j.length;g++){f=j[g];if(!h[f]){h[f]={}}h=h[f]}return h},resolve:function(j,h){var g,f;h=h||d;j=j.split(".");for(g=0,f=j.length;g<f;g++){h=h[j[g]];if(!h){break}}return h},addUnload:function(j,i){var h=this;j={func:j,scope:i||this};if(!h.unloads){function g(){var f=h.unloads,l,m;if(f){for(m in f){l=f[m];if(l&&l.func){l.func.call(l.scope,1)}}if(d.detachEvent){d.detachEvent("onbeforeunload",k);d.detachEvent("onunload",g)}else{if(d.removeEventListener){d.removeEventListener("unload",g,false)}}h.unloads=l=f=w=g=0;if(d.CollectGarbage){CollectGarbage()}}}function k(){var l=document;if(l.readyState=="interactive"){function f(){l.detachEvent("onstop",f);if(g){g()}l=0}if(l){l.attachEvent("onstop",f)}d.setTimeout(function(){if(l){l.detachEvent("onstop",f)}},0)}}if(d.attachEvent){d.attachEvent("onunload",g);d.attachEvent("onbeforeunload",k)}else{if(d.addEventListener){d.addEventListener("unload",g,false)}}h.unloads=[j]}else{h.unloads.push(j)}return j},removeUnload:function(i){var g=this.unloads,h=null;b.each(g,function(j,f){if(j&&j.func==i){g.splice(f,1);h=i;return false}});return h},explode:function(f,g){return f?b.map(f.split(g||","),b.trim):f},_addVer:function(g){var f;if(!this.query){return g}f=(g.indexOf("?")==-1?"?":"&")+this.query;if(g.indexOf("#")==-1){return g+f}return g.replace("#",f+"#")},_replace:function(h,f,g){if(c){return g.replace(h,function(){var l=f,j=arguments,k;for(k=0;k<j.length-2;k++){if(j[k]===e){l=l.replace(new RegExp("\\$"+k,"g"),"")}else{l=l.replace(new RegExp("\\$"+k,"g"),j[k])}}return l})}return g.replace(h,f)}};b._init();d.tinymce=d.tinyMCE=b})(window);tinymce.create("tinymce.util.Dispatcher",{scope:null,listeners:null,Dispatcher:function(a){this.scope=a||this;this.listeners=[]},add:function(a,b){this.listeners.push({cb:a,scope:b||this.scope});return a},addToTop:function(a,b){this.listeners.unshift({cb:a,scope:b||this.scope});return a},remove:function(a){var b=this.listeners,c=null;tinymce.each(b,function(e,d){if(a==e.cb){c=a;b.splice(d,1);return false}});return c},dispatch:function(){var f,d=arguments,e,b=this.listeners,g;for(e=0;e<b.length;e++){g=b[e];f=g.cb.apply(g.scope,d);if(f===false){break}}return f}});(function(){var a=tinymce.each;tinymce.create("tinymce.util.URI",{URI:function(e,g){var f=this,i,d,c,h;e=tinymce.trim(e);g=f.settings=g||{};if(/^([\w\-]+):([^\/]{2})/i.test(e)||/^\s*#/.test(e)){f.source=e;return}if(e.indexOf("/")===0&&e.indexOf("//")!==0){e=(g.base_uri?g.base_uri.protocol||"http":"http")+"://mce_host"+e}if(!/^[\w-]*:?\/\//.test(e)){h=g.base_uri?g.base_uri.path:new tinymce.util.URI(location.href).directory;e=((g.base_uri&&g.base_uri.protocol)||"http")+"://mce_host"+f.toAbsPath(h,e)}e=e.replace(/@@/g,"(mce_at)");e=/^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/.exec(e);a(["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],function(b,j){var k=e[j];if(k){k=k.replace(/\(mce_at\)/g,"@@")}f[b]=k});if(c=g.base_uri){if(!f.protocol){f.protocol=c.protocol}if(!f.userInfo){f.userInfo=c.userInfo}if(!f.port&&f.host=="mce_host"){f.port=c.port}if(!f.host||f.host=="mce_host"){f.host=c.host}f.source=""}},setPath:function(c){var b=this;c=/^(.*?)\/?(\w+)?$/.exec(c);b.path=c[0];b.directory=c[1];b.file=c[2];b.source="";b.getURI()},toRelative:function(b){var c=this,d;if(b==="./"){return b}b=new tinymce.util.URI(b,{base_uri:c});if((b.host!="mce_host"&&c.host!=b.host&&b.host)||c.port!=b.port||c.protocol!=b.protocol){return b.getURI()}d=c.toRelPath(c.path,b.path);if(b.query){d+="?"+b.query}if(b.anchor){d+="#"+b.anchor}return d},toAbsolute:function(b,c){var b=new tinymce.util.URI(b,{base_uri:this});return b.getURI(this.host==b.host&&this.protocol==b.protocol?c:0)},toRelPath:function(g,h){var c,f=0,d="",e,b;g=g.substring(0,g.lastIndexOf("/"));g=g.split("/");c=h.split("/");if(g.length>=c.length){for(e=0,b=g.length;e<b;e++){if(e>=c.length||g[e]!=c[e]){f=e+1;break}}}if(g.length<c.length){for(e=0,b=c.length;e<b;e++){if(e>=g.length||g[e]!=c[e]){f=e+1;break}}}if(f==1){return h}for(e=0,b=g.length-(f-1);e<b;e++){d+="../"}for(e=f-1,b=c.length;e<b;e++){if(e!=f-1){d+="/"+c[e]}else{d+=c[e]}}return d},toAbsPath:function(e,f){var c,b=0,h=[],d,g;d=/\/$/.test(f)?"/":"";e=e.split("/");f=f.split("/");a(e,function(i){if(i){h.push(i)}});e=h;for(c=f.length-1,h=[];c>=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)}})})();(function(){function serialize(o,quote){var i,v,t;quote=quote||'"';if(o==null){return"null"}t=typeof o;if(t=="string"){v="\bb\tt\nn\ff\rr\"\"''\\\\";return quote+o.replace(/([\u0080-\uFFFF\x00-\x1f\"\'\\])/g,function(a,b){if(quote==='"'&&a==="'"){return a}i=v.indexOf(b);if(i+1){return"\\"+v.charAt(i+1)}a=b.charCodeAt().toString(16);return"\\u"+"0000".substring(a.length)+a})+quote}if(t=="object"){if(o.hasOwnProperty&&o instanceof Array){for(i=0,v="[";i<o.length;i++){v+=(i>0?",":"")+serialize(o[i],quote)}return v+"]"}v="{";for(i in o){v+=typeof o[i]!="function"?(v.length>1?","+quote:quote)+i+quote+":"+serialize(o[i],quote):""}return v+"}"}return""+o}tinymce.util.JSON={serialize:serialize,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){if(e){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(a){a.VK={DELETE:46,BACKSPACE:8}})(tinymce);(function(d){var f=d.VK,e=f.BACKSPACE,c=f.DELETE;function b(g){var i=g.dom,h=g.selection;g.onKeyDown.add(function(k,o){var j,p,m,n,l;l=o.keyCode==c;if(l||o.keyCode==e){o.preventDefault();j=h.getRng();p=i.getParent(j.startContainer,i.isBlock);if(l){p=i.getNext(p,i.isBlock)}if(p){m=p.firstChild;if(m&&m.nodeName==="SPAN"){n=m.cloneNode(false)}}k.getDoc().execCommand(l?"ForwardDelete":"Delete",false,null);p=i.getParent(j.startContainer,i.isBlock);d.each(i.select("span.Apple-style-span,font.Apple-style-span",p),function(r){var q=i.createRng();q.setStartBefore(r);q.setEndBefore(r);if(n){i.replace(n.cloneNode(false),r,true)}else{i.remove(r,true)}h.setRng(q)})}})}function a(g){g.onKeyUp.add(function(h,j){var i=j.keyCode;if(i==c||i==e){if(h.dom.isEmpty(h.getBody())){h.setContent("",{format:"raw"});h.nodeChanged();return}}})}d.create("tinymce.util.Quirks",{Quirks:function(g){if(d.isWebKit){b(g);a(g)}if(d.isIE){a(g)}}})})(tinymce);(function(j){var a,g,d,k=/[&<>\"\u007E-\uD7FF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,b=/[<>&\u007E-\uD7FF]|[\uD800-\uDBFF][\uDC00-\uDFFF]/g,f=/[<>&\"\']/g,c=/&(#x|#)?([\w]+);/g,i={128:"\u20AC",130:"\u201A",131:"\u0192",132:"\u201E",133:"\u2026",134:"\u2020",135:"\u2021",136:"\u02C6",137:"\u2030",138:"\u0160",139:"\u2039",140:"\u0152",142:"\u017D",145:"\u2018",146:"\u2019",147:"\u201C",148:"\u201D",149:"\u2022",150:"\u2013",151:"\u2014",152:"\u02DC",153:"\u2122",154:"\u0161",155:"\u203A",156:"\u0153",158:"\u017E",159:"\u0178"};g={'"':"&quot;","'":"&#39;","<":"&lt;",">":"&gt;","&":"&amp;"};d={"&lt;":"<","&gt;":">","&amp;":"&","&quot;":'"',"&apos;":"'"};function h(l){var m;m=document.createElement("div");m.innerHTML=l;return m.textContent||m.innerText||l}function e(m,p){var n,o,l,q={};if(m){m=m.split(",");p=p||10;for(n=0;n<m.length;n+=2){o=String.fromCharCode(parseInt(m[n],p));if(!g[o]){l="&"+m[n+1]+";";q[o]=l;q[l]=o}}return q}}a=e("50,nbsp,51,iexcl,52,cent,53,pound,54,curren,55,yen,56,brvbar,57,sect,58,uml,59,copy,5a,ordf,5b,laquo,5c,not,5d,shy,5e,reg,5f,macr,5g,deg,5h,plusmn,5i,sup2,5j,sup3,5k,acute,5l,micro,5m,para,5n,middot,5o,cedil,5p,sup1,5q,ordm,5r,raquo,5s,frac14,5t,frac12,5u,frac34,5v,iquest,60,Agrave,61,Aacute,62,Acirc,63,Atilde,64,Auml,65,Aring,66,AElig,67,Ccedil,68,Egrave,69,Eacute,6a,Ecirc,6b,Euml,6c,Igrave,6d,Iacute,6e,Icirc,6f,Iuml,6g,ETH,6h,Ntilde,6i,Ograve,6j,Oacute,6k,Ocirc,6l,Otilde,6m,Ouml,6n,times,6o,Oslash,6p,Ugrave,6q,Uacute,6r,Ucirc,6s,Uuml,6t,Yacute,6u,THORN,6v,szlig,70,agrave,71,aacute,72,acirc,73,atilde,74,auml,75,aring,76,aelig,77,ccedil,78,egrave,79,eacute,7a,ecirc,7b,euml,7c,igrave,7d,iacute,7e,icirc,7f,iuml,7g,eth,7h,ntilde,7i,ograve,7j,oacute,7k,ocirc,7l,otilde,7m,ouml,7n,divide,7o,oslash,7p,ugrave,7q,uacute,7r,ucirc,7s,uuml,7t,yacute,7u,thorn,7v,yuml,ci,fnof,sh,Alpha,si,Beta,sj,Gamma,sk,Delta,sl,Epsilon,sm,Zeta,sn,Eta,so,Theta,sp,Iota,sq,Kappa,sr,Lambda,ss,Mu,st,Nu,su,Xi,sv,Omicron,t0,Pi,t1,Rho,t3,Sigma,t4,Tau,t5,Upsilon,t6,Phi,t7,Chi,t8,Psi,t9,Omega,th,alpha,ti,beta,tj,gamma,tk,delta,tl,epsilon,tm,zeta,tn,eta,to,theta,tp,iota,tq,kappa,tr,lambda,ts,mu,tt,nu,tu,xi,tv,omicron,u0,pi,u1,rho,u2,sigmaf,u3,sigma,u4,tau,u5,upsilon,u6,phi,u7,chi,u8,psi,u9,omega,uh,thetasym,ui,upsih,um,piv,812,bull,816,hellip,81i,prime,81j,Prime,81u,oline,824,frasl,88o,weierp,88h,image,88s,real,892,trade,89l,alefsym,8cg,larr,8ch,uarr,8ci,rarr,8cj,darr,8ck,harr,8dl,crarr,8eg,lArr,8eh,uArr,8ei,rArr,8ej,dArr,8ek,hArr,8g0,forall,8g2,part,8g3,exist,8g5,empty,8g7,nabla,8g8,isin,8g9,notin,8gb,ni,8gf,prod,8gh,sum,8gi,minus,8gn,lowast,8gq,radic,8gt,prop,8gu,infin,8h0,ang,8h7,and,8h8,or,8h9,cap,8ha,cup,8hb,int,8hk,there4,8hs,sim,8i5,cong,8i8,asymp,8j0,ne,8j1,equiv,8j4,le,8j5,ge,8k2,sub,8k3,sup,8k4,nsub,8k6,sube,8k7,supe,8kl,oplus,8kn,otimes,8l5,perp,8m5,sdot,8o8,lceil,8o9,rceil,8oa,lfloor,8ob,rfloor,8p9,lang,8pa,rang,9ea,loz,9j0,spades,9j3,clubs,9j5,hearts,9j6,diams,ai,OElig,aj,oelig,b0,Scaron,b1,scaron,bo,Yuml,m6,circ,ms,tilde,802,ensp,803,emsp,809,thinsp,80c,zwnj,80d,zwj,80e,lrm,80f,rlm,80j,ndash,80k,mdash,80o,lsquo,80p,rsquo,80q,sbquo,80s,ldquo,80t,rdquo,80u,bdquo,810,dagger,811,Dagger,81g,permil,81p,lsaquo,81q,rsaquo,85c,euro",32);j.html=j.html||{};j.html.Entities={encodeRaw:function(m,l){return m.replace(l?k:b,function(n){return g[n]||n})},encodeAllRaw:function(l){return(""+l).replace(f,function(m){return g[m]||m})},encodeNumeric:function(m,l){return m.replace(l?k:b,function(n){if(n.length>1){return"&#"+(((n.charCodeAt(0)-55296)*1024)+(n.charCodeAt(1)-56320)+65536)+";"}return g[n]||"&#"+n.charCodeAt(0)+";"})},encodeNamed:function(n,l,m){m=m||a;return n.replace(l?k:b,function(o){return g[o]||m[o]||o})},getEncodeFunc:function(l,o){var p=j.html.Entities;o=e(o)||a;function m(r,q){return r.replace(q?k:b,function(s){return g[s]||o[s]||"&#"+s.charCodeAt(0)+";"||s})}function n(r,q){return p.encodeNamed(r,q,o)}l=j.makeMap(l.replace(/\+/g,","));if(l.named&&l.numeric){return m}if(l.named){if(o){return n}return p.encodeNamed}if(l.numeric){return p.encodeNumeric}return p.encodeRaw},decode:function(l){return l.replace(c,function(n,m,o){if(m){o=parseInt(o,m.length===2?16:10);if(o>65535){o-=65536;return String.fromCharCode(55296+(o>>10),56320+(o&1023))}else{return i[o]||String.fromCharCode(o)}}return d[n]||a[n]||h(n)})}}})(tinymce);tinymce.html.Styles=function(d,f){var k=/rgb\s*\(\s*([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\s*\)/gi,h=/(?:url(?:(?:\(\s*\"([^\"]+)\"\s*\))|(?:\(\s*\'([^\']+)\'\s*\))|(?:\(\s*([^)\s]+)\s*\))))|(?:\'([^\']+)\')|(?:\"([^\"]+)\")/gi,b=/\s*([^:]+):\s*([^;]+);?/g,l=/\s+$/,m=/rgb/,e,g,a={},j;d=d||{};j="\\\" \\' \\; \\: ; : \uFEFF".split(" ");for(g=0;g<j.length;g++){a[j[g]]="\uFEFF"+g;a["\uFEFF"+g]=j[g]}function c(n,q,p,i){function o(r){r=parseInt(r).toString(16);return r.length>1?r:"0"+r}return"#"+o(q)+o(p)+o(i)}return{toHex:function(i){return i.replace(k,c)},parse:function(r){var y={},p,n,v,q,u=d.url_converter,x=d.url_converter_scope||this;function o(C,F){var E,B,A,D;E=y[C+"-top"+F];if(!E){return}B=y[C+"-right"+F];if(E!=B){return}A=y[C+"-bottom"+F];if(B!=A){return}D=y[C+"-left"+F];if(A!=D){return}y[C+F]=D;delete y[C+"-top"+F];delete y[C+"-right"+F];delete y[C+"-bottom"+F];delete y[C+"-left"+F]}function t(B){var C=y[B],A;if(!C||C.indexOf(" ")<0){return}C=C.split(" ");A=C.length;while(A--){if(C[A]!==C[0]){return false}}y[B]=C[0];return true}function z(C,B,A,D){if(!t(B)){return}if(!t(A)){return}if(!t(D)){return}y[C]=y[B]+" "+y[A]+" "+y[D];delete y[B];delete y[A];delete y[D]}function s(A){q=true;return a[A]}function i(B,A){if(q){B=B.replace(/\uFEFF[0-9]/g,function(C){return a[C]})}if(!A){B=B.replace(/\\([\'\";:])/g,"$1")}return B}if(r){r=r.replace(/\\[\"\';:\uFEFF]/g,s).replace(/\"[^\"]+\"|\'[^\']+\'/g,function(A){return A.replace(/[;:]/g,s)});while(p=b.exec(r)){n=p[1].replace(l,"").toLowerCase();v=p[2].replace(l,"");if(n&&v.length>0){if(n==="font-weight"&&v==="700"){v="bold"}else{if(n==="color"||n==="background-color"){v=v.toLowerCase()}}v=v.replace(k,c);v=v.replace(h,function(B,A,E,D,F,C){F=F||C;if(F){F=i(F);return"'"+F.replace(/\'/g,"\\'")+"'"}A=i(A||E||D);if(u){A=u.call(x,A,"style")}return"url('"+A.replace(/\'/g,"\\'")+"')"});y[n]=q?i(v,true):v}b.lastIndex=p.index+p[0].length}o("border","");o("border","-width");o("border","-color");o("border","-style");o("padding","");o("margin","");z("border","border-width","border-style","border-color");if(y.border==="medium none"){delete y.border}}return y},serialize:function(p,r){var o="",n,q;function i(t){var x,u,s,v;x=f.styles[t];if(x){for(u=0,s=x.length;u<s;u++){t=x[u];v=p[t];if(v!==e&&v.length>0){o+=(o.length>0?" ":"")+t+": "+v+";"}}}}if(r&&f&&f.styles){i("*");i(r)}else{for(n in p){q=p[n];if(q!==e&&q.length>0){o+=(o.length>0?" ":"")+n+": "+q+";"}}}return o}}};(function(m){var h={},j,l,g,f,c={},b,e,d=m.makeMap,k=m.each;function i(o,n){return o.split(n||",")}function a(r,q){var o,p={};function n(s){return s.replace(/[A-Z]+/g,function(t){return n(r[t])})}for(o in r){if(r.hasOwnProperty(o)){r[o]=n(r[o])}}n(q).replace(/#/g,"#text").replace(/(\w+)\[([^\]]+)\]\[([^\]]*)\]/g,function(v,t,s,u){s=i(s,"|");p[t]={attributes:d(s),attributesOrder:s,children:d(u,"|",{"#comment":{}})}});return p}l="h1,h2,h3,h4,h5,h6,hr,p,div,address,pre,form,table,tbody,thead,tfoot,th,tr,td,li,ol,ul,caption,blockquote,center,dl,dt,dd,dir,fieldset,noscript,menu,isindex,samp,header,footer,article,section,hgroup";l=d(l,",",d(l.toUpperCase()));h=a({Z:"H|K|N|O|P",Y:"X|form|R|Q",ZG:"E|span|width|align|char|charoff|valign",X:"p|T|div|U|W|isindex|fieldset|table",ZF:"E|align|char|charoff|valign",W:"pre|hr|blockquote|address|center|noframes",ZE:"abbr|axis|headers|scope|rowspan|colspan|align|char|charoff|valign|nowrap|bgcolor|width|height",ZD:"[E][S]",U:"ul|ol|dl|menu|dir",ZC:"p|Y|div|U|W|table|br|span|bdo|object|applet|img|map|K|N|Q",T:"h1|h2|h3|h4|h5|h6",ZB:"X|S|Q",S:"R|P",ZA:"a|G|J|M|O|P",R:"a|H|K|N|O",Q:"noscript|P",P:"ins|del|script",O:"input|select|textarea|label|button",N:"M|L",M:"em|strong|dfn|code|q|samp|kbd|var|cite|abbr|acronym",L:"sub|sup",K:"J|I",J:"tt|i|b|u|s|strike",I:"big|small|font|basefont",H:"G|F",G:"br|span|bdo",F:"object|applet|img|map|iframe",E:"A|B|C",D:"accesskey|tabindex|onfocus|onblur",C:"onclick|ondblclick|onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup",B:"lang|xml:lang|dir",A:"id|class|style|title"},"script[id|charset|type|language|src|defer|xml:space][]style[B|id|type|media|title|xml:space][]object[E|declare|classid|codebase|data|type|codetype|archive|standby|width|height|usemap|name|tabindex|align|border|hspace|vspace][#|param|Y]param[id|name|value|valuetype|type][]p[E|align][#|S]a[E|D|charset|type|name|href|hreflang|rel|rev|shape|coords|target][#|Z]br[A|clear][]span[E][#|S]bdo[A|C|B][#|S]applet[A|codebase|archive|code|object|alt|name|width|height|align|hspace|vspace][#|param|Y]h1[E|align][#|S]img[E|src|alt|name|longdesc|width|height|usemap|ismap|align|border|hspace|vspace][]map[B|C|A|name][X|form|Q|area]h2[E|align][#|S]iframe[A|longdesc|name|src|frameborder|marginwidth|marginheight|scrolling|align|width|height][#|Y]h3[E|align][#|S]tt[E][#|S]i[E][#|S]b[E][#|S]u[E][#|S]s[E][#|S]strike[E][#|S]big[E][#|S]small[E][#|S]font[A|B|size|color|face][#|S]basefont[id|size|color|face][]em[E][#|S]strong[E][#|S]dfn[E][#|S]code[E][#|S]q[E|cite][#|S]samp[E][#|S]kbd[E][#|S]var[E][#|S]cite[E][#|S]abbr[E][#|S]acronym[E][#|S]sub[E][#|S]sup[E][#|S]input[E|D|type|name|value|checked|disabled|readonly|size|maxlength|src|alt|usemap|onselect|onchange|accept|align][]select[E|name|size|multiple|disabled|tabindex|onfocus|onblur|onchange][optgroup|option]optgroup[E|disabled|label][option]option[E|selected|disabled|label|value][]textarea[E|D|name|rows|cols|disabled|readonly|onselect|onchange][]label[E|for|accesskey|onfocus|onblur][#|S]button[E|D|name|value|type|disabled][#|p|T|div|U|W|table|G|object|applet|img|map|K|N|Q]h4[E|align][#|S]ins[E|cite|datetime][#|Y]h5[E|align][#|S]del[E|cite|datetime][#|Y]h6[E|align][#|S]div[E|align][#|Y]ul[E|type|compact][li]li[E|type|value][#|Y]ol[E|type|compact|start][li]dl[E|compact][dt|dd]dt[E][#|S]dd[E][#|Y]menu[E|compact][li]dir[E|compact][li]pre[E|width|xml:space][#|ZA]hr[E|align|noshade|size|width][]blockquote[E|cite][#|Y]address[E][#|S|p]center[E][#|Y]noframes[E][#|Y]isindex[A|B|prompt][]fieldset[E][#|legend|Y]legend[E|accesskey|align][#|S]table[E|summary|width|border|frame|rules|cellspacing|cellpadding|align|bgcolor][caption|col|colgroup|thead|tfoot|tbody|tr]caption[E|align][#|S]col[ZG][]colgroup[ZG][col]thead[ZF][tr]tr[ZF|bgcolor][th|td]th[E|ZE][#|Y]form[E|action|method|name|enctype|onsubmit|onreset|accept|accept-charset|target][#|X|R|Q]noscript[E][#|Y]td[E|ZE][#|Y]tfoot[ZF][tr]tbody[ZF][tr]area[E|D|shape|coords|href|nohref|alt|target][]base[id|href|target][]body[E|onload|onunload|background|bgcolor|text|link|vlink|alink][#|Y]");j=d("checked,compact,declare,defer,disabled,ismap,multiple,nohref,noresize,noshade,nowrap,readonly,selected,autoplay,loop,controls");g=d("area,base,basefont,br,col,frame,hr,img,input,isindex,link,meta,param,embed,source");f=m.extend(d("td,th,iframe,video,audio,object"),g);b=d("pre,script,style,textarea");e=d("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr");m.html.Schema=function(r){var A=this,n={},o={},y=[],q,p;r=r||{};if(r.verify_html===false){r.valid_elements="*[*]"}if(r.valid_styles){q={};k(r.valid_styles,function(C,B){q[B]=m.explode(C)})}p=r.whitespace_elements?d(r.whitespace_elements):b;function z(B){return new RegExp("^"+B.replace(/([?+*])/g,".$1")+"$")}function t(I){var H,D,W,S,X,C,F,R,U,N,V,Z,L,G,T,B,P,E,Y,aa,M,Q,K=/^([#+-])?([^\[\/]+)(?:\/([^\[]+))?(?:\[([^\]]+)\])?$/,O=/^([!\-])?(\w+::\w+|[^=:<]+)?(?:([=:<])(.*))?$/,J=/[*?+]/;if(I){I=i(I);if(n["@"]){P=n["@"].attributes;E=n["@"].attributesOrder}for(H=0,D=I.length;H<D;H++){C=K.exec(I[H]);if(C){T=C[1];N=C[2];B=C[3];U=C[4];L={};G=[];F={attributes:L,attributesOrder:G};if(T==="#"){F.paddEmpty=true}if(T==="-"){F.removeEmpty=true}if(P){for(aa in P){L[aa]=P[aa]}G.push.apply(G,E)}if(U){U=i(U,"|");for(W=0,S=U.length;W<S;W++){C=O.exec(U[W]);if(C){R={};Z=C[1];V=C[2].replace(/::/g,":");T=C[3];Q=C[4];if(Z==="!"){F.attributesRequired=F.attributesRequired||[];F.attributesRequired.push(V);R.required=true}if(Z==="-"){delete L[V];G.splice(m.inArray(G,V),1);continue}if(T){if(T==="="){F.attributesDefault=F.attributesDefault||[];F.attributesDefault.push({name:V,value:Q});R.defaultValue=Q}if(T===":"){F.attributesForced=F.attributesForced||[];F.attributesForced.push({name:V,value:Q});R.forcedValue=Q}if(T==="<"){R.validValues=d(Q,"?")}}if(J.test(V)){F.attributePatterns=F.attributePatterns||[];R.pattern=z(V);F.attributePatterns.push(R)}else{if(!L[V]){G.push(V)}L[V]=R}}}}if(!P&&N=="@"){P=L;E=G}if(B){F.outputName=N;n[B]=F}if(J.test(N)){F.pattern=z(N);y.push(F)}else{n[N]=F}}}}}function v(B){n={};y=[];t(B);k(h,function(D,C){o[C]=D.children})}function s(C){var B=/^(~)?(.+)$/;if(C){k(i(C),function(G){var E=B.exec(G),F=E[1]==="~",H=F?"span":"div",D=E[2];o[D]=o[H];c[D]=H;if(!F){l[D]={}}k(o,function(I,J){if(I[H]){I[D]=I[H]}})})}}function u(C){var B=/^([+\-]?)(\w+)\[([^\]]+)\]$/;if(C){k(i(C),function(G){var F=B.exec(G),D,E;if(F){E=F[1];if(E){D=o[F[2]]}else{D=o[F[2]]={"#comment":{}}}D=o[F[2]];k(i(F[3],"|"),function(H){if(E==="-"){delete D[H]}else{D[H]={}}})}})}}function x(B){var D=n[B],C;if(D){return D}C=y.length;while(C--){D=y[C];if(D.pattern.test(B)){return D}}}if(!r.valid_elements){k(h,function(C,B){n[B]={attributes:C.attributes,attributesOrder:C.attributesOrder};o[B]=C.children});k(i("strong/b,em/i"),function(B){B=i(B,"/");n[B[1]].outputName=B[0]});n.img.attributesDefault=[{name:"alt",value:""}];k(i("ol,ul,sub,sup,blockquote,span,font,a,table,tbody,tr"),function(B){n[B].removeEmpty=true});k(i("p,h1,h2,h3,h4,h5,h6,th,td,pre,div,address,caption"),function(B){n[B].paddEmpty=true})}else{v(r.valid_elements)}s(r.custom_elements);u(r.valid_children);t(r.extended_valid_elements);u("+ol[ul|ol],+ul[ul|ol]");if(!x("span")){t("span[!data-mce-type|*]")}if(r.invalid_elements){m.each(m.explode(r.invalid_elements),function(B){if(n[B]){delete n[B]}})}A.children=o;A.styles=q;A.getBoolAttrs=function(){return j};A.getBlockElements=function(){return l};A.getShortEndedElements=function(){return g};A.getSelfClosingElements=function(){return e};A.getNonEmptyElements=function(){return f};A.getWhiteSpaceElements=function(){return p};A.isValidChild=function(B,D){var C=o[B];return !!(C&&C[D])};A.getElementRule=x;A.getCustomElements=function(){return c};A.addValidElements=t;A.setValidElements=v;A.addCustomElements=s;A.addValidChildren=u};m.html.Schema.boolAttrMap=j;m.html.Schema.blockElementsMap=l})(tinymce);(function(a){a.html.SaxParser=function(c,e){var b=this,d=function(){};c=c||{};b.schema=e=e||new a.html.Schema();if(c.fix_self_closing!==false){c.fix_self_closing=true}a.each("comment cdata text start end pi doctype".split(" "),function(f){if(f){b[f]=c[f]||d}});b.parse=function(D){var n=this,g,F=0,H,A,z=[],M,P,B,q,y,r,L,G,N,u,m,k,s,Q,o,O,E,R,K,f,I,l,C,J,h,v=0,j=a.html.Entities.decode,x,p;function t(S){var U,T;U=z.length;while(U--){if(z[U].name===S){break}}if(U>=0){for(T=z.length-1;T>=U;T--){S=z[T];if(S.valid){n.end(S.name)}}z.length=U}}l=new RegExp("<(?:(?:!--([\\w\\W]*?)-->)|(?:!\\[CDATA\\[([\\w\\W]*?)\\]\\]>)|(?:!DOCTYPE([\\w\\W]*?)>)|(?:\\?([^\\s\\/<>]+) ?([\\w\\W]*?)[?/]>)|(?:\\/([^>]+)>)|(?:([^\\s\\/<>]+)\\s*((?:[^\"'>]+(?:(?:\"[^\"]*\")|(?:'[^']*')|[^>]*))*)>))","g");C=/([\w:\-]+)(?:\s*=\s*(?:(?:\"((?:\\.|[^\"])*)\")|(?:\'((?:\\.|[^\'])*)\')|([^>\s]+)))?/g;J={script:/<\/script[^>]*>/gi,style:/<\/style[^>]*>/gi,noscript:/<\/noscript[^>]*>/gi};L=e.getShortEndedElements();I=e.getSelfClosingElements();G=e.getBoolAttrs();u=c.validate;r=c.remove_internals;x=c.fix_self_closing;p=a.isIE;o=/^:/;while(g=l.exec(D)){if(F<g.index){n.text(j(D.substr(F,g.index-F)))}if(H=g[6]){H=H.toLowerCase();if(p&&o.test(H)){H=H.substr(1)}t(H)}else{if(H=g[7]){H=H.toLowerCase();if(p&&o.test(H)){H=H.substr(1)}N=H in L;if(x&&I[H]&&z.length>0&&z[z.length-1].name===H){t(H)}if(!u||(m=e.getElementRule(H))){k=true;if(u){O=m.attributes;E=m.attributePatterns}if(Q=g[8]){y=Q.indexOf("data-mce-type")!==-1;if(y&&r){k=false}M=[];M.map={};Q.replace(C,function(T,S,X,W,V){var Y,U;S=S.toLowerCase();X=S in G?S:j(X||W||V||"");if(u&&!y&&S.indexOf("data-")!==0){Y=O[S];if(!Y&&E){U=E.length;while(U--){Y=E[U];if(Y.pattern.test(S)){break}}if(U===-1){Y=null}}if(!Y){return}if(Y.validValues&&!(X in Y.validValues)){return}}M.map[S]=X;M.push({name:S,value:X})})}else{M=[];M.map={}}if(u&&!y){R=m.attributesRequired;K=m.attributesDefault;f=m.attributesForced;if(f){P=f.length;while(P--){s=f[P];q=s.name;h=s.value;if(h==="{$uid}"){h="mce_"+v++}M.map[q]=h;M.push({name:q,value:h})}}if(K){P=K.length;while(P--){s=K[P];q=s.name;if(!(q in M.map)){h=s.value;if(h==="{$uid}"){h="mce_"+v++}M.map[q]=h;M.push({name:q,value:h})}}}if(R){P=R.length;while(P--){if(R[P] in M.map){break}}if(P===-1){k=false}}if(M.map["data-mce-bogus"]){k=false}}if(k){n.start(H,M,N)}}else{k=false}if(A=J[H]){A.lastIndex=F=g.index+g[0].length;if(g=A.exec(D)){if(k){B=D.substr(F,g.index-F)}F=g.index+g[0].length}else{B=D.substr(F);F=D.length}if(k&&B.length>0){n.text(B,true)}if(k){n.end(H)}l.lastIndex=F;continue}if(!N){if(!Q||Q.indexOf("/")!=Q.length-1){z.push({name:H,valid:k})}else{if(k){n.end(H)}}}}else{if(H=g[1]){n.comment(H)}else{if(H=g[2]){n.cdata(H)}else{if(H=g[3]){n.doctype(H)}else{if(H=g[4]){n.pi(H,g[5])}}}}}}F=g.index+g[0].length}if(F<D.length){n.text(j(D.substr(F)))}for(P=z.length-1;P>=0;P--){H=z[P];if(H.valid){n.end(H.name)}}}}})(tinymce);(function(d){var c=/^[ \t\r\n]*$/,e={"#text":3,"#comment":8,"#cdata":4,"#pi":7,"#doctype":10,"#document-fragment":11};function a(k,l,j){var i,h,f=j?"lastChild":"firstChild",g=j?"prev":"next";if(k[f]){return k[f]}if(k!==l){i=k[g];if(i){return i}for(h=k.parent;h&&h!==l;h=h.parent){i=h[g];if(i){return i}}}}function b(f,g){this.name=f;this.type=g;if(g===1){this.attributes=[];this.attributes.map={}}}d.extend(b.prototype,{replace:function(g){var f=this;if(g.parent){g.remove()}f.insert(g,f);f.remove();return f},attr:function(h,l){var f=this,g,j,k;if(typeof h!=="string"){for(j in h){f.attr(j,h[j])}return f}if(g=f.attributes){if(l!==k){if(l===null){if(h in g.map){delete g.map[h];j=g.length;while(j--){if(g[j].name===h){g=g.splice(j,1);return f}}}return f}if(h in g.map){j=g.length;while(j--){if(g[j].name===h){g[j].value=l;break}}}else{g.push({name:h,value:l})}g.map[h]=l;return f}else{return g.map[h]}}},clone:function(){var g=this,n=new b(g.name,g.type),h,f,m,j,k;if(m=g.attributes){k=[];k.map={};for(h=0,f=m.length;h<f;h++){j=m[h];if(j.name!=="id"){k[k.length]={name:j.name,value:j.value};k.map[j.name]=j.value}}n.attributes=k}n.value=g.value;n.shortEnded=g.shortEnded;return n},wrap:function(g){var f=this;f.parent.insert(g,f);g.append(f);return f},unwrap:function(){var f=this,h,g;for(h=f.firstChild;h;){g=h.next;f.insert(h,f,true);h=g}f.remove()},remove:function(){var f=this,h=f.parent,g=f.next,i=f.prev;if(h){if(h.firstChild===f){h.firstChild=g;if(g){g.prev=null}}else{i.next=g}if(h.lastChild===f){h.lastChild=i;if(i){i.next=null}}else{g.prev=i}f.parent=f.next=f.prev=null}return f},append:function(h){var f=this,g;if(h.parent){h.remove()}g=f.lastChild;if(g){g.next=h;h.prev=g;f.lastChild=h}else{f.lastChild=f.firstChild=h}h.parent=f;return h},insert:function(h,f,i){var g;if(h.parent){h.remove()}g=f.parent||this;if(i){if(f===g.firstChild){g.firstChild=h}else{f.prev.next=h}h.prev=f.prev;h.next=f;f.prev=h}else{if(f===g.lastChild){g.lastChild=h}else{f.next.prev=h}h.next=f.next;h.prev=f;f.next=h}h.parent=g;return h},getAll:function(g){var f=this,h,i=[];for(h=f.firstChild;h;h=a(h,f)){if(h.name===g){i.push(h)}}return i},empty:function(){var g=this,f,h,j;if(g.firstChild){f=[];for(j=g.firstChild;j;j=a(j,g)){f.push(j)}h=f.length;while(h--){j=f[h];j.parent=j.firstChild=j.lastChild=j.next=j.prev=null}}g.firstChild=g.lastChild=null;return g},isEmpty:function(k){var f=this,j=f.firstChild,h,g;if(j){do{if(j.type===1){if(j.attributes.map["data-mce-bogus"]){continue}if(k[j.name]){return false}h=j.attributes.length;while(h--){g=j.attributes[h].name;if(g==="name"||g.indexOf("data-")===0){return false}}}if((j.type===3&&!c.test(j.value))){return false}}while(j=a(j,f))}return true},walk:function(f){return a(this,null,f)}});d.extend(b,{create:function(g,f){var i,h;i=new b(g,e[g]||1);if(f){for(h in f){i.attr(h,f[h])}}return i}});d.html.Node=b})(tinymce);(function(b){var a=b.html.Node;b.html.DomParser=function(g,h){var f=this,e={},d=[],i={},c={};g=g||{};g.validate="validate" in g?g.validate:true;g.root_name=g.root_name||"body";f.schema=h=h||new b.html.Schema();function j(m){var o,p,x,v,z,n,q,l,t,u,k,s,y,r;s=b.makeMap("tr,td,th,tbody,thead,tfoot,table");k=h.getNonEmptyElements();for(o=0;o<m.length;o++){p=m[o];if(!p.parent){continue}v=[p];for(x=p.parent;x&&!h.isValidChild(x.name,p.name)&&!s[x.name];x=x.parent){v.push(x)}if(x&&v.length>1){v.reverse();z=n=f.filterNode(v[0].clone());for(t=0;t<v.length-1;t++){if(h.isValidChild(n.name,v[t].name)){q=f.filterNode(v[t].clone());n.append(q)}else{q=n}for(l=v[t].firstChild;l&&l!=v[t+1];){r=l.next;q.append(l);l=r}n=q}if(!z.isEmpty(k)){x.insert(z,v[0],true);x.insert(p,z)}else{x.insert(p,v[0],true)}x=v[0];if(x.isEmpty(k)||x.firstChild===x.lastChild&&x.firstChild.name==="br"){x.empty().remove()}}else{if(p.parent){if(p.name==="li"){y=p.prev;if(y&&(y.name==="ul"||y.name==="ul")){y.append(p);continue}y=p.next;if(y&&(y.name==="ul"||y.name==="ul")){y.insert(p,y.firstChild,true);continue}p.wrap(f.filterNode(new a("ul",1)));continue}if(h.isValidChild(p.parent.name,"div")&&h.isValidChild("div",p.name)){p.wrap(f.filterNode(new a("div",1)))}else{if(p.name==="style"||p.name==="script"){p.empty().remove()}else{p.unwrap()}}}}}}f.filterNode=function(m){var l,k,n;if(k in e){n=i[k];if(n){n.push(m)}else{i[k]=[m]}}l=d.length;while(l--){k=d[l].name;if(k in m.attributes.map){n=c[k];if(n){n.push(m)}else{c[k]=[m]}}}return m};f.addNodeFilter=function(k,l){b.each(b.explode(k),function(m){var n=e[m];if(!n){e[m]=n=[]}n.push(l)})};f.addAttributeFilter=function(k,l){b.each(b.explode(k),function(m){var n;for(n=0;n<d.length;n++){if(d[n].name===m){d[n].callbacks.push(l);return}}d.push({name:m,callbacks:[l]})})};f.parse=function(v,m){var n,H,A,z,C,B,x,r,E,K,y,o,D,J=[],t,k,s,p,u,q;m=m||{};i={};c={};o=b.extend(b.makeMap("script,style,head,html,body,title,meta,param"),h.getBlockElements());u=h.getNonEmptyElements();p=h.children;y=g.validate;q="forced_root_block" in m?m.forced_root_block:g.forced_root_block;s=h.getWhiteSpaceElements();D=/^[ \t\r\n]+/;t=/[ \t\r\n]+$/;k=/[ \t\r\n]+/g;function F(){var L=H.firstChild,l,M;while(L){l=L.next;if(L.type==3||(L.type==1&&L.name!=="p"&&!o[L.name]&&!L.attr("data-mce-type"))){if(!M){M=I(q,1);H.insert(M,L);M.append(L)}else{M.append(L)}}else{M=null}L=l}}function I(l,L){var M=new a(l,L),N;if(l in e){N=i[l];if(N){N.push(M)}else{i[l]=[M]}}return M}function G(M){var N,l,L;for(N=M.prev;N&&N.type===3;){l=N.value.replace(t,"");if(l.length>0){N.value=l;N=N.prev}else{L=N.prev;N.remove();N=L}}}n=new b.html.SaxParser({validate:y,fix_self_closing:!y,cdata:function(l){A.append(I("#cdata",4)).value=l},text:function(M,l){var L;if(!s[A.name]){M=M.replace(k," ");if(A.lastChild&&o[A.lastChild.name]){M=M.replace(D,"")}}if(M.length!==0){L=I("#text",3);L.raw=!!l;A.append(L).value=M}},comment:function(l){A.append(I("#comment",8)).value=l},pi:function(l,L){A.append(I(l,7)).value=L;G(A)},doctype:function(L){var l;l=A.append(I("#doctype",10));l.value=L;G(A)},start:function(l,T,M){var R,O,N,L,P,U,S,Q;N=y?h.getElementRule(l):{};if(N){R=I(N.outputName||l,1);R.attributes=T;R.shortEnded=M;A.append(R);Q=p[A.name];if(Q&&p[R.name]&&!Q[R.name]){J.push(R)}O=d.length;while(O--){P=d[O].name;if(P in T.map){E=c[P];if(E){E.push(R)}else{c[P]=[R]}}}if(o[l]){G(R)}if(!M){A=R}}},end:function(l){var P,M,O,L,N;M=y?h.getElementRule(l):{};if(M){if(o[l]){if(!s[A.name]){for(P=A.firstChild;P&&P.type===3;){O=P.value.replace(D,"");if(O.length>0){P.value=O;P=P.next}else{L=P.next;P.remove();P=L}}for(P=A.lastChild;P&&P.type===3;){O=P.value.replace(t,"");if(O.length>0){P.value=O;P=P.prev}else{L=P.prev;P.remove();P=L}}}P=A.prev;if(P&&P.type===3){O=P.value.replace(D,"");if(O.length>0){P.value=O}else{P.remove()}}}if(M.removeEmpty||M.paddEmpty){if(A.isEmpty(u)){if(M.paddEmpty){A.empty().append(new a("#text","3")).value="\u00a0"}else{if(!A.attributes.map.name){N=A.parent;A.empty().remove();A=N;return}}}}A=A.parent}}},h);H=A=new a(m.context||g.root_name,11);n.parse(v);if(y&&J.length){if(!m.context){j(J)}else{m.invalid=true}}if(q&&H.name=="body"){F()}if(!m.invalid){for(K in i){E=e[K];z=i[K];x=z.length;while(x--){if(!z[x].parent){z.splice(x,1)}}for(C=0,B=E.length;C<B;C++){E[C](z,K,m)}}for(C=0,B=d.length;C<B;C++){E=d[C];if(E.name in c){z=c[E.name];x=z.length;while(x--){if(!z[x].parent){z.splice(x,1)}}for(x=0,r=E.callbacks.length;x<r;x++){E.callbacks[x](z,E.name,m)}}}}return H};if(g.remove_trailing_brs){f.addNodeFilter("br",function(n,m){var r,q=n.length,o,u=h.getBlockElements(),k=h.getNonEmptyElements(),s,p,t;u.body=1;for(r=0;r<q;r++){o=n[r];s=o.parent;if(u[o.parent.name]&&o===s.lastChild){p=o.prev;while(p){t=p.name;if(t!=="span"||p.attr("data-mce-type")!=="bookmark"){if(t!=="br"){break}if(t==="br"){o=null;break}}p=p.prev}if(o){o.remove();if(s.isEmpty(k)){elementRule=h.getElementRule(s.name);if(elementRule){if(elementRule.removeEmpty){s.remove()}else{if(elementRule.paddEmpty){s.empty().append(new b.html.Node("#text",3)).value="\u00a0"}}}}}}}})}}})(tinymce);tinymce.html.Writer=function(e){var c=[],a,b,d,f,g;e=e||{};a=e.indent;b=tinymce.makeMap(e.indent_before||"");d=tinymce.makeMap(e.indent_after||"");f=tinymce.html.Entities.getEncodeFunc(e.entity_encoding||"raw",e.entities);g=e.element_format=="html";return{start:function(m,k,p){var n,j,h,o;if(a&&b[m]&&c.length>0){o=c[c.length-1];if(o.length>0&&o!=="\n"){c.push("\n")}}c.push("<",m);if(k){for(n=0,j=k.length;n<j;n++){h=k[n];c.push(" ",h.name,'="',f(h.value,true),'"')}}if(!p||g){c[c.length]=">"}else{c[c.length]=" />"}if(p&&a&&d[m]&&c.length>0){o=c[c.length-1];if(o.length>0&&o!=="\n"){c.push("\n")}}},end:function(h){var i;c.push("</",h,">");if(a&&d[h]&&c.length>0){i=c[c.length-1];if(i.length>0&&i!=="\n"){c.push("\n")}}},text:function(i,h){if(i.length>0){c[c.length]=h?i:f(i)}},cdata:function(h){c.push("<![CDATA[",h,"]]>")},comment:function(h){c.push("<!--",h,"-->")},pi:function(h,i){if(i){c.push("<?",h," ",i,"?>")}else{c.push("<?",h,"?>")}if(a){c.push("\n")}},doctype:function(h){c.push("<!DOCTYPE",h,">",a?"\n":"")},reset:function(){c.length=0},getContent:function(){return c.join("").replace(/\n$/,"")}}};(function(a){a.html.Serializer=function(c,d){var b=this,e=new a.html.Writer(c);c=c||{};c.validate="validate" in c?c.validate:true;b.schema=d=d||new a.html.Schema();b.writer=e;b.serialize=function(h){var g,i;i=c.validate;g={3:function(k,j){e.text(k.value,k.raw)},8:function(j){e.comment(j.value)},7:function(j){e.pi(j.name,j.value)},10:function(j){e.doctype(j.value)},4:function(j){e.cdata(j.value)},11:function(j){if((j=j.firstChild)){do{f(j)}while(j=j.next)}}};e.reset();function f(k){var t=g[k.type],j,o,s,r,p,u,n,m,q;if(!t){j=k.name;o=k.shortEnded;s=k.attributes;if(i&&s&&s.length>1){u=[];u.map={};q=d.getElementRule(k.name);for(n=0,m=q.attributesOrder.length;n<m;n++){r=q.attributesOrder[n];if(r in s.map){p=s.map[r];u.map[r]=p;u.push({name:r,value:p})}}for(n=0,m=s.length;n<m;n++){r=s[n].name;if(!(r in u.map)){p=s.map[r];u.map[r]=p;u.push({name:r,value:p})}}s=u}e.start(k.name,s,o);if(!o){if((k=k.firstChild)){do{f(k)}while(k=k.next)}e.end(j)}}else{t(k)}}if(h.type==1&&!c.inner){f(h)}else{g[11](h)}return e.getContent()}}})(tinymce);(function(h){var f=h.each,e=h.is,d=h.isWebKit,b=h.isIE,c=h.html.Entities,a=/^([a-z0-9],?)+$/i,g=h.html.Schema.blockElementsMap,i=/^[ \t\r\n]*$/;h.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(o,m){var l=this,j,k;l.doc=o;l.win=window;l.files={};l.cssFlicker=false;l.counter=0;l.stdMode=!h.isIE||o.documentMode>=8;l.boxModel=!h.isIE||o.compatMode=="CSS1Compat"||l.stdMode;l.hasOuterHTML="outerHTML" in o.createElement("a");l.settings=m=h.extend({keep_values:false,hex_colors:1},m);l.schema=m.schema;l.styles=new h.html.Styles({url_converter:m.url_converter,url_converter_scope:m.url_converter_scope},m.schema);if(h.isIE6){try{o.execCommand("BackgroundImageCache",false,true)}catch(n){l.cssFlicker=true}}if(b&&m.schema){("abbr article aside audio canvas details figcaption figure footer header hgroup mark menu meter nav output progress section summary time video").replace(/\w+/g,function(p){o.createElement(p)});for(k in m.schema.getCustomElements()){o.createElement(k)}}h.addUnload(l.destroy,l)},getRoot:function(){var j=this,k=j.settings;return(k&&j.get(k.root_element))||j.doc.body},getViewPort:function(k){var l,j;k=!k?this.win:k;l=k.document;j=this.boxModel?l.documentElement:l.body;return{x:k.pageXOffset||j.scrollLeft,y:k.pageYOffset||j.scrollTop,w:k.innerWidth||j.clientWidth,h:k.innerHeight||j.clientHeight}},getRect:function(m){var l,j=this,k;m=j.get(m);l=j.getPos(m);k=j.getSize(m);return{x:l.x,y:l.y,w:k.w,h:k.h}},getSize:function(m){var k=this,j,l;m=k.get(m);j=k.getStyle(m,"width");l=k.getStyle(m,"height");if(j.indexOf("px")===-1){j=0}if(l.indexOf("px")===-1){l=0}return{w:parseInt(j)||m.offsetWidth||m.clientWidth,h:parseInt(l)||m.offsetHeight||m.clientHeight}},getParent:function(l,k,j){return this.getParents(l,k,j,false)},getParents:function(u,p,l,s){var k=this,j,m=k.settings,q=[];u=k.get(u);s=s===undefined;if(m.strict_root){l=l||k.getRoot()}if(e(p,"string")){j=p;if(p==="*"){p=function(o){return o.nodeType==1}}else{p=function(o){return k.is(o,j)}}}while(u){if(u==l||!u.nodeType||u.nodeType===9){break}if(!p||p(u)){if(s){q.push(u)}else{return u}}u=u.parentNode}return s?q:null},get:function(j){var k;if(j&&this.doc&&typeof(j)=="string"){k=j;j=this.doc.getElementById(j);if(j&&j.id!==k){return this.doc.getElementsByName(k)[1]}}return j},getNext:function(k,j){return this._findSib(k,j,"nextSibling")},getPrev:function(k,j){return this._findSib(k,j,"previousSibling")},select:function(l,k){var j=this;return h.dom.Sizzle(l,j.get(k)||j.get(j.settings.root_element)||j.doc,[])},is:function(l,j){var k;if(l.length===undefined){if(j==="*"){return l.nodeType==1}if(a.test(j)){j=j.toLowerCase().split(/,/);l=l.nodeName.toLowerCase();for(k=j.length-1;k>=0;k--){if(j[k]==l){return true}}return false}}return h.dom.Sizzle.matches(j,l.nodeType?[l]:l).length>0},add:function(m,q,j,l,o){var k=this;return this.run(m,function(s){var r,n;r=e(q,"string")?k.doc.createElement(q):q;k.setAttribs(r,j);if(l){if(l.nodeType){r.appendChild(l)}else{k.setHTML(r,l)}}return !o?s.appendChild(r):r})},create:function(l,j,k){return this.add(this.doc.createElement(l),l,j,k,1)},createHTML:function(r,j,p){var q="",m=this,l;q+="<"+r;for(l in j){if(j.hasOwnProperty(l)){q+=" "+l+'="'+m.encode(j[l])+'"'}}if(typeof(p)!="undefined"){return q+">"+p+"</"+r+">"}return q+" />"},remove:function(j,k){return this.run(j,function(m){var n,l=m.parentNode;if(!l){return null}if(k){while(n=m.firstChild){if(!h.isIE||n.nodeType!==3||n.nodeValue){l.insertBefore(n,m)}else{m.removeChild(n)}}}return l.removeChild(m)})},setStyle:function(m,j,k){var l=this;return l.run(m,function(p){var o,n;o=p.style;j=j.replace(/-(\D)/g,function(r,q){return q.toUpperCase()});if(l.pixelStyles.test(j)&&(h.is(k,"number")||/^[\-0-9\.]+$/.test(k))){k+="px"}switch(j){case"opacity":if(b){o.filter=k===""?"":"alpha(opacity="+(k*100)+")";if(!m.currentStyle||!m.currentStyle.hasLayout){o.display="inline-block"}}o[j]=o["-moz-opacity"]=o["-khtml-opacity"]=k||"";break;case"float":b?o.styleFloat=k:o.cssFloat=k;break;default:o[j]=k||""}if(l.settings.update_styles){l.setAttrib(p,"data-mce-style")}})},getStyle:function(m,j,l){m=this.get(m);if(!m){return}if(this.doc.defaultView&&l){j=j.replace(/[A-Z]/g,function(n){return"-"+n});try{return this.doc.defaultView.getComputedStyle(m,null).getPropertyValue(j)}catch(k){return null}}j=j.replace(/-(\D)/g,function(o,n){return n.toUpperCase()});if(j=="float"){j=b?"styleFloat":"cssFloat"}if(m.currentStyle&&l){return m.currentStyle[j]}return m.style?m.style[j]:undefined},setStyles:function(m,n){var k=this,l=k.settings,j;j=l.update_styles;l.update_styles=0;f(n,function(o,p){k.setStyle(m,p,o)});l.update_styles=j;if(l.update_styles){k.setAttrib(m,l.cssText)}},removeAllAttribs:function(j){return this.run(j,function(m){var l,k=m.attributes;for(l=k.length-1;l>=0;l--){m.removeAttributeNode(k.item(l))}})},setAttrib:function(l,m,j){var k=this;if(!l||!m){return}if(k.settings.strict){m=m.toLowerCase()}return this.run(l,function(o){var n=k.settings;switch(m){case"style":if(!e(j,"string")){f(j,function(p,q){k.setStyle(o,q,p)});return}if(n.keep_values){if(j&&!k._isRes(j)){o.setAttribute("data-mce-style",j,2)}else{o.removeAttribute("data-mce-style",2)}}o.style.cssText=j;break;case"class":o.className=j||"";break;case"src":case"href":if(n.keep_values){if(n.url_converter){j=n.url_converter.call(n.url_converter_scope||k,j,m,o)}k.setAttrib(o,"data-mce-"+m,j,2)}break;case"shape":o.setAttribute("data-mce-style",j);break}if(e(j)&&j!==null&&j.length!==0){o.setAttribute(m,""+j,2)}else{o.removeAttribute(m,2)}})},setAttribs:function(k,l){var j=this;return this.run(k,function(m){f(l,function(o,p){j.setAttrib(m,p,o)})})},getAttrib:function(o,p,l){var j,k=this,m;o=k.get(o);if(!o||o.nodeType!==1){return l===m?false:l}if(!e(l)){l=""}if(/^(src|href|style|coords|shape)$/.test(p)){j=o.getAttribute("data-mce-"+p);if(j){return j}}if(b&&k.props[p]){j=o[k.props[p]];j=j&&j.nodeValue?j.nodeValue:j}if(!j){j=o.getAttribute(p,2)}if(/^(checked|compact|declare|defer|disabled|ismap|multiple|nohref|noshade|nowrap|readonly|selected)$/.test(p)){if(o[k.props[p]]===true&&j===""){return p}return j?p:""}if(o.nodeName==="FORM"&&o.getAttributeNode(p)){return o.getAttributeNode(p).nodeValue}if(p==="style"){j=j||o.style.cssText;if(j){j=k.serializeStyle(k.parseStyle(j),o.nodeName);if(k.settings.keep_values&&!k._isRes(j)){o.setAttribute("data-mce-style",j)}}}if(d&&p==="class"&&j){j=j.replace(/(apple|webkit)\-[a-z\-]+/gi,"")}if(b){switch(p){case"rowspan":case"colspan":if(j===1){j=""}break;case"size":if(j==="+0"||j===20||j===0){j=""}break;case"width":case"height":case"vspace":case"checked":case"disabled":case"readonly":if(j===0){j=""}break;case"hspace":if(j===-1){j=""}break;case"maxlength":case"tabindex":if(j===32768||j===2147483647||j==="32768"){j=""}break;case"multiple":case"compact":case"noshade":case"nowrap":if(j===65535){return p}return l;case"shape":j=j.toLowerCase();break;default:if(p.indexOf("on")===0&&j){j=h._replace(/^function\s+\w+\(\)\s+\{\s+(.*)\s+\}$/,"$1",""+j)}}}return(j!==m&&j!==null&&j!=="")?""+j:l},getPos:function(s,m){var k=this,j=0,q=0,o,p=k.doc,l;s=k.get(s);m=m||p.body;if(s){if(s.getBoundingClientRect){s=s.getBoundingClientRect();o=k.boxModel?p.documentElement:p.body;j=s.left+(p.documentElement.scrollLeft||p.body.scrollLeft)-o.clientTop;q=s.top+(p.documentElement.scrollTop||p.body.scrollTop)-o.clientLeft;return{x:j,y:q}}l=s;while(l&&l!=m&&l.nodeType){j+=l.offsetLeft||0;q+=l.offsetTop||0;l=l.offsetParent}l=s.parentNode;while(l&&l!=m&&l.nodeType){j-=l.scrollLeft||0;q-=l.scrollTop||0;l=l.parentNode}}return{x:j,y:q}},parseStyle:function(j){return this.styles.parse(j)},serializeStyle:function(k,j){return this.styles.serialize(k,j)},loadCSS:function(j){var l=this,m=l.doc,k;if(!j){j=""}k=l.select("head")[0];f(j.split(","),function(n){var o;if(l.files[n]){return}l.files[n]=true;o=l.create("link",{rel:"stylesheet",href:h._addVer(n)});if(b&&m.documentMode&&m.recalc){o.onload=function(){if(m.recalc){m.recalc()}o.onload=null}}k.appendChild(o)})},addClass:function(j,k){return this.run(j,function(l){var m;if(!k){return 0}if(this.hasClass(l,k)){return l.className}m=this.removeClass(l,k);return l.className=(m!=""?(m+" "):"")+k})},removeClass:function(l,m){var j=this,k;return j.run(l,function(o){var n;if(j.hasClass(o,m)){if(!k){k=new RegExp("(^|\\s+)"+m+"(\\s+|$)","g")}n=o.className.replace(k," ");n=h.trim(n!=" "?n:"");o.className=n;if(!n){o.removeAttribute("class");o.removeAttribute("className")}return n}return o.className})},hasClass:function(k,j){k=this.get(k);if(!k||!j){return false}return(" "+k.className+" ").indexOf(" "+j+" ")!==-1},show:function(j){return this.setStyle(j,"display","block")},hide:function(j){return this.setStyle(j,"display","none")},isHidden:function(j){j=this.get(j);return !j||j.style.display=="none"||this.getStyle(j,"display")=="none"},uniqueId:function(j){return(!j?"mce_":j)+(this.counter++)},setHTML:function(l,k){var j=this;return j.run(l,function(n){if(b){while(n.firstChild){n.removeChild(n.firstChild)}try{n.innerHTML="<br />"+k;n.removeChild(n.firstChild)}catch(m){n=j.create("div");n.innerHTML="<br />"+k;f(n.childNodes,function(p,o){if(o){n.appendChild(p)}})}}else{n.innerHTML=k}return k})},getOuterHTML:function(l){var k,j=this;l=j.get(l);if(!l){return null}if(l.nodeType===1&&j.hasOuterHTML){return l.outerHTML}k=(l.ownerDocument||j.doc).createElement("body");k.appendChild(l.cloneNode(true));return k.innerHTML},setOuterHTML:function(m,k,n){var j=this;function l(p,o,r){var s,q;q=r.createElement("body");q.innerHTML=o;s=q.lastChild;while(s){j.insertAfter(s.cloneNode(true),p);s=s.previousSibling}j.remove(p)}return this.run(m,function(p){p=j.get(p);if(p.nodeType==1){n=n||p.ownerDocument||j.doc;if(b){try{if(b&&p.nodeType==1){p.outerHTML=k}else{l(p,k,n)}}catch(o){l(p,k,n)}}else{l(p,k,n)}}})},decode:c.decode,encode:c.encodeAllRaw,insertAfter:function(j,k){k=this.get(k);return this.run(j,function(m){var l,n;l=k.parentNode;n=k.nextSibling;if(n){l.insertBefore(m,n)}else{l.appendChild(m)}return m})},isBlock:function(k){var j=k.nodeType;if(j){return !!(j===1&&g[k.nodeName])}return !!g[k]},replace:function(p,m,j){var l=this;if(e(m,"array")){p=p.cloneNode(true)}return l.run(m,function(k){if(j){f(h.grep(k.childNodes),function(n){p.appendChild(n)})}return k.parentNode.replaceChild(p,k)})},rename:function(m,j){var l=this,k;if(m.nodeName!=j.toUpperCase()){k=l.create(j);f(l.getAttribs(m),function(n){l.setAttrib(k,n.nodeName,l.getAttrib(m,n.nodeName))});l.replace(k,m,1)}return k||m},findCommonAncestor:function(l,j){var m=l,k;while(m){k=j;while(k&&m!=k){k=k.parentNode}if(m==k){break}m=m.parentNode}if(!m&&l.ownerDocument){return l.ownerDocument.documentElement}return m},toHex:function(j){var l=/^\s*rgb\s*?\(\s*?([0-9]+)\s*?,\s*?([0-9]+)\s*?,\s*?([0-9]+)\s*?\)\s*$/i.exec(j);function k(m){m=parseInt(m).toString(16);return m.length>1?m:"0"+m}if(l){j="#"+k(l[1])+k(l[2])+k(l[3]);return j}return j},getClasses:function(){var n=this,j=[],m,o={},p=n.settings.class_filter,l;if(n.classes){return n.classes}function q(r){f(r.imports,function(s){q(s)});f(r.cssRules||r.rules,function(s){switch(s.type||1){case 1:if(s.selectorText){f(s.selectorText.split(","),function(t){t=t.replace(/^\s*|\s*$|^\s\./g,"");if(/\.mce/.test(t)||!/\.[\w\-]+$/.test(t)){return}l=t;t=h._replace(/.*\.([a-z0-9_\-]+).*/i,"$1",t);if(p&&!(t=p(t,l))){return}if(!o[t]){j.push({"class":t});o[t]=1}})}break;case 3:q(s.styleSheet);break}})}try{f(n.doc.styleSheets,q)}catch(k){}if(j.length>0){n.classes=j}return j},run:function(m,l,k){var j=this,n;if(j.doc&&typeof(m)==="string"){m=j.get(m)}if(!m){return false}k=k||this;if(!m.nodeType&&(m.length||m.length===0)){n=[];f(m,function(p,o){if(p){if(typeof(p)=="string"){p=j.doc.getElementById(p)}n.push(l.call(k,p,o))}});return n}return l.call(k,m)},getAttribs:function(k){var j;k=this.get(k);if(!k){return[]}if(b){j=[];if(k.nodeName=="OBJECT"){return k.attributes}if(k.nodeName==="OPTION"&&this.getAttrib(k,"selected")){j.push({specified:1,nodeName:"selected"})}k.cloneNode(false).outerHTML.replace(/<\/?[\w:\-]+ ?|=[\"][^\"]+\"|=\'[^\']+\'|=[\w\-]+|>/gi,"").replace(/[\w:\-]+/gi,function(l){j.push({specified:1,nodeName:l})});return j}return k.attributes},isEmpty:function(m,k){var r=this,o,n,q,j,l,p;m=m.firstChild;if(m){j=new h.dom.TreeWalker(m);k=k||r.schema?r.schema.getNonEmptyElements():null;do{q=m.nodeType;if(q===1){if(m.getAttribute("data-mce-bogus")){continue}l=m.nodeName.toLowerCase();if(k&&k[l]){p=m.parentNode;if(l==="br"&&r.isBlock(p)&&p.firstChild===m&&p.lastChild===m){continue}return false}n=r.getAttribs(m);o=m.attributes.length;while(o--){l=m.attributes[o].nodeName;if(l==="name"||l==="data-mce-bookmark"){return false}}}if((q===3&&!i.test(m.nodeValue))){return false}}while(m=j.next())}return true},destroy:function(k){var j=this;if(j.events){j.events.destroy()}j.win=j.doc=j.root=j.events=null;if(!k){h.removeUnload(j.destroy)}},createRng:function(){var j=this.doc;return j.createRange?j.createRange():new h.dom.Range(this)},nodeIndex:function(n,o){var j=0,l,m,k;if(n){for(l=n.nodeType,n=n.previousSibling,m=n;n;n=n.previousSibling){k=n.nodeType;if(o&&k==3){if(k==l||!n.nodeValue.length){continue}}j++;l=k}}return j},split:function(n,m,q){var s=this,j=s.createRng(),o,l,p;function k(v){var t,r=v.childNodes,u=v.nodeType;if(u==1&&v.getAttribute("data-mce-type")=="bookmark"){return}for(t=r.length-1;t>=0;t--){k(r[t])}if(u!=9){if(u==3&&v.nodeValue.length>0){if(!s.isBlock(v.parentNode)||h.trim(v.nodeValue).length>0){return}}else{if(u==1){r=v.childNodes;if(r.length==1&&r[0]&&r[0].nodeType==1&&r[0].getAttribute("data-mce-type")=="bookmark"){v.parentNode.insertBefore(r[0],v)}if(r.length||/^(br|hr|input|img)$/i.test(v.nodeName)){return}}}s.remove(v)}return v}if(n&&m){j.setStart(n.parentNode,s.nodeIndex(n));j.setEnd(m.parentNode,s.nodeIndex(m));o=j.extractContents();j=s.createRng();j.setStart(m.parentNode,s.nodeIndex(m)+1);j.setEnd(n.parentNode,s.nodeIndex(n)+1);l=j.extractContents();p=n.parentNode;p.insertBefore(k(o),n);if(q){p.replaceChild(q,m)}else{p.insertBefore(m,n)}p.insertBefore(k(l),n);s.remove(n);return q||m}},bind:function(n,j,m,l){var k=this;if(!k.events){k.events=new h.dom.EventUtils()}return k.events.add(n,j,m,l||this)},unbind:function(m,j,l){var k=this;if(!k.events){k.events=new h.dom.EventUtils()}return k.events.remove(m,j,l)},_findSib:function(m,j,k){var l=this,n=j;if(m){if(e(n,"string")){n=function(o){return l.is(o,j)}}for(m=m[k];m;m=m[k]){if(n(m)){return m}}}return null},_isRes:function(j){return/^(top|left|bottom|right|width|height)/i.test(j)||/;\s*(top|left|bottom|right|width|height)/i.test(j)}});h.DOM=new h.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(Y,t){var ab=N[h],W=N[U],aa=N[P],V=N[z],Z=t.startContainer,ad=t.startOffset,X=t.endContainer,ac=t.endOffset;if(Y===0){return G(ab,W,Z,ad)}if(Y===1){return G(aa,V,Z,ad)}if(Y===2){return G(aa,V,X,ac)}if(Y===3){return G(ab,W,X,ac)}}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(Z<Y){return -1}return 1}aa=V;while(aa&&aa.parentNode!=X){aa=aa.parentNode}if(aa){W=0;t=X.firstChild;while(t!=aa&&W<Z){W++;t=t.nextSibling}if(Z<=W){return -1}return 1}aa=X;while(aa&&aa.parentNode!=V){aa=aa.parentNode}if(aa){W=0;t=V.firstChild;while(t!=aa&&W<Y){W++;t=t.nextSibling}if(W<Y){return -1}return 1}ab=c.findCommonAncestor(X,V);ad=X;while(ad&&ad.parentNode!=ab){ad=ad.parentNode}if(!ad){ad=ab}ac=V;while(ac&&ac.parentNode!=ab){ac=ac.parentNode}if(!ac){ac=ab}if(ad==ac){return 0}t=ab.firstChild;while(t){if(t==ad){return -1}if(t==ac){return 1}t=t.nextSibling}}function B(V,Y,X){var t,W;if(V){N[h]=Y;N[U]=X}else{N[P]=Y;N[z]=X}t=N[P];while(t.parentNode){t=t.parentNode}W=N[h];while(W.parentNode){W=W.parentNode}if(W==t){if(G(N[h],N[U],N[P],N[z])>0){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(d){var b=this,h=d.dom,c=true,f=false;function e(i,j){var k,t=0,q,n,m,l,o,r,p=-1,s;k=i.duplicate();k.collapse(j);s=k.parentElement();if(s.ownerDocument!==d.dom.doc){return}while(s.contentEditable==="false"){s=s.parentNode}if(!s.hasChildNodes()){return{node:s,inside:1}}m=s.children;q=m.length-1;while(t<=q){r=Math.floor((t+q)/2);l=m[r];k.moveToElementText(l);p=k.compareEndPoints(j?"StartToStart":"EndToEnd",i);if(p>0){q=r-1}else{if(p<0){t=r+1}else{return{node:l}}}}if(p<0){if(!l){k.moveToElementText(s);k.collapse(true);l=s;n=true}else{k.collapse(false)}k.setEndPoint(j?"EndToStart":"EndToEnd",i);if(k.compareEndPoints(j?"StartToStart":"StartToEnd",i)>0){k=i.duplicate();k.collapse(j);o=-1;while(s==k.parentElement()){if(k.move("character",-1)==0){break}o++}}o=o||k.text.replace("\r\n"," ").length}else{k.collapse(true);k.setEndPoint(j?"StartToStart":"StartToEnd",i);o=k.text.replace("\r\n"," ").length}return{node:l,position:p,offset:o,inside:n}}function g(){var i=d.getRng(),r=h.createRng(),l,k,p,q,m,j;l=i.item?i.item(0):i.parentElement();if(l.ownerDocument!=h.doc){return r}k=d.isCollapsed();if(i.item){r.setStart(l.parentNode,h.nodeIndex(l));r.setEnd(r.startContainer,r.startOffset+1);return r}function o(A){var u=e(i,A),s,y,z=0,x,v,t;s=u.node;y=u.offset;if(u.inside&&!s.hasChildNodes()){r[A?"setStart":"setEnd"](s,0);return}if(y===v){r[A?"setStartBefore":"setEndAfter"](s);return}if(u.position<0){x=u.inside?s.firstChild:s.nextSibling;if(!x){r[A?"setStartAfter":"setEndAfter"](s);return}if(!y){if(x.nodeType==3){r[A?"setStart":"setEnd"](x,0)}else{r[A?"setStartBefore":"setEndBefore"](x)}return}while(x){t=x.nodeValue;z+=t.length;if(z>=y){s=x;z-=y;z=t.length-z;break}x=x.nextSibling}}else{x=s.previousSibling;if(!x){return r[A?"setStartBefore":"setEndBefore"](s)}if(!y){if(s.nodeType==3){r[A?"setStart":"setEnd"](x,s.nodeValue.length)}else{r[A?"setStartAfter":"setEndAfter"](x)}return}while(x){z+=x.nodeValue.length;if(z>=y){s=x;z-=y;break}x=x.previousSibling}}r[A?"setStart":"setEnd"](s,z)}try{o(true);if(!k){o()}}catch(n){if(n.number==-2147024809){m=b.getBookmark(2);p=i.duplicate();p.collapse(true);l=p.parentElement();if(!k){p=i.duplicate();p.collapse(false);q=p.parentElement();q.innerHTML=q.innerHTML}l.innerHTML=l.innerHTML;b.moveToBookmark(m);i=d.getRng();o(true);if(!k){o()}}else{throw n}}return r}this.getBookmark=function(m){var j=d.getRng(),o,i,l={};function n(u){var u,t,p,s,r,q=[];t=u.parentNode;p=h.getRoot().parentNode;while(t!=p){s=t.children;r=s.length;while(r--){if(u===s[r]){q.push(r);break}}u=t;t=t.parentNode}return q}function k(q){var p;p=e(j,q);if(p){return{position:p.position,offset:p.offset,indexes:n(p.node),inside:p.inside}}}if(m===2){if(!j.item){l.start=k(true);if(!d.isCollapsed()){l.end=k()}}else{l.start={ctrl:true,indexes:n(j.item(0))}}}return l};this.moveToBookmark=function(k){var j,i=h.doc.body;function m(o){var r,q,n,p;r=h.getRoot();for(q=o.length-1;q>=0;q--){p=r.children;n=o[q];if(n<=p.length-1){r=p[n]}}return r}function l(r){var n=k[r?"start":"end"],q,p,o;if(n){q=n.position>0;p=i.createTextRange();p.moveToElementText(m(n.indexes));offset=n.offset;if(offset!==o){p.collapse(n.inside||q);p.moveStart("character",q?-offset:offset)}else{p.collapse(r)}j.setEndPoint(r?"StartToStart":"EndToStart",p);if(r){j.collapse(true)}}}if(k.start){if(k.start.ctrl){j=i.createControlRange();j.addElement(m(k.start.indexes));j.select()}else{j=i.createTextRange();l(true);l();j.select()}}};this.addRange=function(i){var n,l,k,p,s,q,r=d.dom.doc,m=r.body;function j(z){var u,y,t,x,v;t=h.create("a");u=z?k:s;y=z?p:q;x=n.duplicate();if(u==r||u==r.documentElement){u=m;y=0}if(u.nodeType==3){u.parentNode.insertBefore(t,u);x.moveToElementText(t);x.moveStart("character",y);h.remove(t);n.setEndPoint(z?"StartToStart":"EndToEnd",x)}else{v=u.childNodes;if(v.length){if(y>=v.length){h.insertAfter(t,v[v.length-1])}else{u.insertBefore(t,v[y])}x.moveToElementText(t)}else{t=r.createTextNode("\uFEFF");u.appendChild(t);x.moveToElementText(t.parentNode);x.collapse(c)}n.setEndPoint(z?"StartToStart":"EndToEnd",x);h.remove(t)}}k=i.startContainer;p=i.startOffset;s=i.endContainer;q=i.endOffset;n=m.createTextRange();if(k==s&&k.nodeType==1&&p==q-1){if(p==q-1){try{l=m.createControlRange();l.addElement(k.childNodes[p]);l.select();return}catch(o){}}}j(true);j();n.select()};this.getRangeAt=g}tinymce.dom.TridentSelection=a})();(function(){var p=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,j=0,d=Object.prototype.toString,o=false,i=true;[0,0].sort(function(){i=false;return 0});var b=function(v,e,z,A){z=z||[];e=e||document;var C=e;if(e.nodeType!==1&&e.nodeType!==9){return[]}if(!v||typeof v!=="string"){return z}var x=[],s,E,H,r,u=true,t=b.isXML(e),B=v,D,G,F,y;do{p.exec("");s=p.exec(B);if(s){B=s[3];x.push(s[1]);if(s[2]){r=s[3];break}}}while(s);if(x.length>1&&k.exec(v)){if(x.length===2&&f.relative[x[0]]){E=h(x[0]+x[1],e)}else{E=f.relative[x[0]]?[e]:b(x.shift(),e);while(x.length){v=x.shift();if(f.relative[v]){v+=x.shift()}E=h(v,E)}}}else{if(!A&&x.length>1&&e.nodeType===9&&!t&&f.match.ID.test(x[0])&&!f.match.ID.test(x[x.length-1])){D=b.find(x.shift(),e,t);e=D.expr?b.filter(D.expr,D.set)[0]:D.set[0]}if(e){D=A?{expr:x.pop(),set:a(A)}:b.find(x.pop(),x.length===1&&(x[0]==="~"||x[0]==="+")&&e.parentNode?e.parentNode:e,t);E=D.expr?b.filter(D.expr,D.set):D.set;if(x.length>0){H=a(E)}else{u=false}while(x.length){G=x.pop();F=G;if(!f.relative[G]){G=""}else{F=x.pop()}if(F==null){F=e}f.relative[G](H,F,t)}}else{H=x=[]}}if(!H){H=E}if(!H){b.error(G||v)}if(d.call(H)==="[object Array]"){if(!u){z.push.apply(z,H)}else{if(e&&e.nodeType===1){for(y=0;H[y]!=null;y++){if(H[y]&&(H[y]===true||H[y].nodeType===1&&b.contains(e,H[y]))){z.push(E[y])}}}else{for(y=0;H[y]!=null;y++){if(H[y]&&H[y].nodeType===1){z.push(E[y])}}}}}else{a(H,z)}if(r){b(r,C,z,A);b.uniqueSort(z)}return z};b.uniqueSort=function(r){if(c){o=i;r.sort(c);if(o){for(var e=1;e<r.length;e++){if(r[e]===r[e-1]){r.splice(e--,1)}}}}return r};b.matches=function(e,r){return b(e,null,null,r)};b.find=function(y,e,z){var x;if(!y){return[]}for(var t=0,s=f.order.length;t<s;t++){var v=f.order[t],u;if((u=f.leftMatch[v].exec(y))){var r=u[1];u.splice(1,1);if(r.substr(r.length-1)!=="\\"){u[1]=(u[1]||"").replace(/\\/g,"");x=f.find[v](u,e,z);if(x!=null){y=y.replace(f.match[v],"");break}}}}if(!x){x=e.getElementsByTagName("*")}return{set:x,expr:y}};b.filter=function(C,B,F,u){var s=C,H=[],z=B,x,e,y=B&&B[0]&&b.isXML(B[0]);while(C&&B.length){for(var A in f.filter){if((x=f.leftMatch[A].exec(C))!=null&&x[2]){var r=f.filter[A],G,E,t=x[1];e=false;x.splice(1,1);if(t.substr(t.length-1)==="\\"){continue}if(z===H){H=[]}if(f.preFilter[A]){x=f.preFilter[A](x,z,F,H,u,y);if(!x){e=G=true}else{if(x===true){continue}}}if(x){for(var v=0;(E=z[v])!=null;v++){if(E){G=r(E,x,v,z);var D=u^!!G;if(F&&G!=null){if(D){e=true}else{z[v]=false}}else{if(D){H.push(E);e=true}}}}}if(G!==undefined){if(!F){z=H}C=C.replace(f.match[A],"");if(!e){return[]}break}}}if(C===s){if(e==null){b.error(C)}else{break}}s=C}return z};b.error=function(e){throw"Syntax error, unrecognized expression: "+e};var f=b.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+\-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(e){return e.getAttribute("href")}},relative:{"+":function(x,r){var t=typeof r==="string",v=t&&!/\W/.test(r),y=t&&!v;if(v){r=r.toLowerCase()}for(var s=0,e=x.length,u;s<e;s++){if((u=x[s])){while((u=u.previousSibling)&&u.nodeType!==1){}x[s]=y||u&&u.nodeName.toLowerCase()===r?u||false:u===r}}if(y){b.filter(r,x,true)}},">":function(x,r){var u=typeof r==="string",v,s=0,e=x.length;if(u&&!/\W/.test(r)){r=r.toLowerCase();for(;s<e;s++){v=x[s];if(v){var t=v.parentNode;x[s]=t.nodeName.toLowerCase()===r?t:false}}}else{for(;s<e;s++){v=x[s];if(v){x[s]=u?v.parentNode:v.parentNode===r}}if(u){b.filter(r,x,true)}}},"":function(t,r,v){var s=j++,e=q,u;if(typeof r==="string"&&!/\W/.test(r)){r=r.toLowerCase();u=r;e=n}e("parentNode",r,s,t,u,v)},"~":function(t,r,v){var s=j++,e=q,u;if(typeof r==="string"&&!/\W/.test(r)){r=r.toLowerCase();u=r;e=n}e("previousSibling",r,s,t,u,v)}},find:{ID:function(r,s,t){if(typeof s.getElementById!=="undefined"&&!t){var e=s.getElementById(r[1]);return e?[e]:[]}},NAME:function(s,v){if(typeof v.getElementsByName!=="undefined"){var r=[],u=v.getElementsByName(s[1]);for(var t=0,e=u.length;t<e;t++){if(u[t].getAttribute("name")===s[1]){r.push(u[t])}}return r.length===0?null:r}},TAG:function(e,r){return r.getElementsByTagName(e[1])}},preFilter:{CLASS:function(t,r,s,e,x,y){t=" "+t[1].replace(/\\/g,"")+" ";if(y){return t}for(var u=0,v;(v=r[u])!=null;u++){if(v){if(x^(v.className&&(" "+v.className+" ").replace(/[\t\n]/g," ").indexOf(t)>=0)){if(!s){e.push(v)}}else{if(s){r[u]=false}}}}return false},ID:function(e){return e[1].replace(/\\/g,"")},TAG:function(r,e){return r[1].toLowerCase()},CHILD:function(e){if(e[1]==="nth"){var r=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(e[2]==="even"&&"2n"||e[2]==="odd"&&"2n+1"||!/\D/.test(e[2])&&"0n+"+e[2]||e[2]);e[2]=(r[1]+(r[2]||1))-0;e[3]=r[3]-0}e[0]=j++;return e},ATTR:function(u,r,s,e,v,x){var t=u[1].replace(/\\/g,"");if(!x&&f.attrMap[t]){u[1]=f.attrMap[t]}if(u[2]==="~="){u[4]=" "+u[4]+" "}return u},PSEUDO:function(u,r,s,e,v){if(u[1]==="not"){if((p.exec(u[3])||"").length>1||/^\w/.test(u[3])){u[3]=b(u[3],null,null,r)}else{var t=b.filter(u[3],r,s,true^v);if(!s){e.push.apply(e,t)}return false}}else{if(f.match.POS.test(u[0])||f.match.CHILD.test(u[0])){return true}}return u},POS:function(e){e.unshift(true);return e}},filters:{enabled:function(e){return e.disabled===false&&e.type!=="hidden"},disabled:function(e){return e.disabled===true},checked:function(e){return e.checked===true},selected:function(e){e.parentNode.selectedIndex;return e.selected===true},parent:function(e){return !!e.firstChild},empty:function(e){return !e.firstChild},has:function(s,r,e){return !!b(e[3],s).length},header:function(e){return(/h\d/i).test(e.nodeName)},text:function(e){return"text"===e.type},radio:function(e){return"radio"===e.type},checkbox:function(e){return"checkbox"===e.type},file:function(e){return"file"===e.type},password:function(e){return"password"===e.type},submit:function(e){return"submit"===e.type},image:function(e){return"image"===e.type},reset:function(e){return"reset"===e.type},button:function(e){return"button"===e.type||e.nodeName.toLowerCase()==="button"},input:function(e){return(/input|select|textarea|button/i).test(e.nodeName)}},setFilters:{first:function(r,e){return e===0},last:function(s,r,e,t){return r===t.length-1},even:function(r,e){return e%2===0},odd:function(r,e){return e%2===1},lt:function(s,r,e){return r<e[3]-0},gt:function(s,r,e){return r>e[3]-0},nth:function(s,r,e){return e[3]-0===r},eq:function(s,r,e){return e[3]-0===r}},filter:{PSEUDO:function(s,y,x,z){var e=y[1],r=f.filters[e];if(r){return r(s,x,y,z)}else{if(e==="contains"){return(s.textContent||s.innerText||b.getText([s])||"").indexOf(y[3])>=0}else{if(e==="not"){var t=y[3];for(var v=0,u=t.length;v<u;v++){if(t[v]===s){return false}}return true}else{b.error("Syntax error, unrecognized expression: "+e)}}}},CHILD:function(e,t){var x=t[1],r=e;switch(x){case"only":case"first":while((r=r.previousSibling)){if(r.nodeType===1){return false}}if(x==="first"){return true}r=e;case"last":while((r=r.nextSibling)){if(r.nodeType===1){return false}}return true;case"nth":var s=t[2],A=t[3];if(s===1&&A===0){return true}var v=t[0],z=e.parentNode;if(z&&(z.sizcache!==v||!e.nodeIndex)){var u=0;for(r=z.firstChild;r;r=r.nextSibling){if(r.nodeType===1){r.nodeIndex=++u}}z.sizcache=v}var y=e.nodeIndex-A;if(s===0){return y===0}else{return(y%s===0&&y/s>=0)}}},ID:function(r,e){return r.nodeType===1&&r.getAttribute("id")===e},TAG:function(r,e){return(e==="*"&&r.nodeType===1)||r.nodeName.toLowerCase()===e},CLASS:function(r,e){return(" "+(r.className||r.getAttribute("class"))+" ").indexOf(e)>-1},ATTR:function(v,t){var s=t[1],e=f.attrHandle[s]?f.attrHandle[s](v):v[s]!=null?v[s]:v.getAttribute(s),x=e+"",u=t[2],r=t[4];return e==null?u==="!=":u==="="?x===r:u==="*="?x.indexOf(r)>=0:u==="~="?(" "+x+" ").indexOf(r)>=0:!r?x&&e!==false:u==="!="?x!==r:u==="^="?x.indexOf(r)===0:u==="$="?x.substr(x.length-r.length)===r:u==="|="?x===r||x.substr(0,r.length+1)===r+"-":false},POS:function(u,r,s,v){var e=r[2],t=f.setFilters[e];if(t){return t(u,s,r,v)}}}};var k=f.match.POS,g=function(r,e){return"\\"+(e-0+1)};for(var m in f.match){f.match[m]=new RegExp(f.match[m].source+(/(?![^\[]*\])(?![^\(]*\))/.source));f.leftMatch[m]=new RegExp(/(^(?:.|\r|\n)*?)/.source+f.match[m].source.replace(/\\(\d+)/g,g))}var a=function(r,e){r=Array.prototype.slice.call(r,0);if(e){e.push.apply(e,r);return e}return r};try{Array.prototype.slice.call(document.documentElement.childNodes,0)[0].nodeType}catch(l){a=function(u,t){var r=t||[],s=0;if(d.call(u)==="[object Array]"){Array.prototype.push.apply(r,u)}else{if(typeof u.length==="number"){for(var e=u.length;s<e;s++){r.push(u[s])}}else{for(;u[s];s++){r.push(u[s])}}}return r}}var c;if(document.documentElement.compareDocumentPosition){c=function(r,e){if(!r.compareDocumentPosition||!e.compareDocumentPosition){if(r==e){o=true}return r.compareDocumentPosition?-1:1}var s=r.compareDocumentPosition(e)&4?-1:r===e?0:1;if(s===0){o=true}return s}}else{if("sourceIndex" in document.documentElement){c=function(r,e){if(!r.sourceIndex||!e.sourceIndex){if(r==e){o=true}return r.sourceIndex?-1:1}var s=r.sourceIndex-e.sourceIndex;if(s===0){o=true}return s}}else{if(document.createRange){c=function(t,r){if(!t.ownerDocument||!r.ownerDocument){if(t==r){o=true}return t.ownerDocument?-1:1}var s=t.ownerDocument.createRange(),e=r.ownerDocument.createRange();s.setStart(t,0);s.setEnd(t,0);e.setStart(r,0);e.setEnd(r,0);var u=s.compareBoundaryPoints(Range.START_TO_END,e);if(u===0){o=true}return u}}}}b.getText=function(e){var r="",t;for(var s=0;e[s];s++){t=e[s];if(t.nodeType===3||t.nodeType===4){r+=t.nodeValue}else{if(t.nodeType!==8){r+=b.getText(t.childNodes)}}}return r};(function(){var r=document.createElement("div"),s="script"+(new Date()).getTime();r.innerHTML="<a name='"+s+"'/>";var e=document.documentElement;e.insertBefore(r,e.firstChild);if(document.getElementById(s)){f.find.ID=function(u,v,x){if(typeof v.getElementById!=="undefined"&&!x){var t=v.getElementById(u[1]);return t?t.id===u[1]||typeof t.getAttributeNode!=="undefined"&&t.getAttributeNode("id").nodeValue===u[1]?[t]:undefined:[]}};f.filter.ID=function(v,t){var u=typeof v.getAttributeNode!=="undefined"&&v.getAttributeNode("id");return v.nodeType===1&&u&&u.nodeValue===t}}e.removeChild(r);e=r=null})();(function(){var e=document.createElement("div");e.appendChild(document.createComment(""));if(e.getElementsByTagName("*").length>0){f.find.TAG=function(r,v){var u=v.getElementsByTagName(r[1]);if(r[1]==="*"){var t=[];for(var s=0;u[s];s++){if(u[s].nodeType===1){t.push(u[s])}}u=t}return u}}e.innerHTML="<a href='#'></a>";if(e.firstChild&&typeof e.firstChild.getAttribute!=="undefined"&&e.firstChild.getAttribute("href")!=="#"){f.attrHandle.href=function(r){return r.getAttribute("href",2)}}e=null})();if(document.querySelectorAll){(function(){var e=b,s=document.createElement("div");s.innerHTML="<p class='TEST'></p>";if(s.querySelectorAll&&s.querySelectorAll(".TEST").length===0){return}b=function(x,v,t,u){v=v||document;if(!u&&v.nodeType===9&&!b.isXML(v)){try{return a(v.querySelectorAll(x),t)}catch(y){}}return e(x,v,t,u)};for(var r in e){b[r]=e[r]}s=null})()}(function(){var e=document.createElement("div");e.innerHTML="<div class='test e'></div><div class='test'></div>";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return}e.lastChild.className="e";if(e.getElementsByClassName("e").length===1){return}f.order.splice(1,0,"CLASS");f.find.CLASS=function(r,s,t){if(typeof s.getElementsByClassName!=="undefined"&&!t){return s.getElementsByClassName(r[1])}};e=null})();function n(r,x,v,A,y,z){for(var t=0,s=A.length;t<s;t++){var e=A[t];if(e){e=e[r];var u=false;while(e){if(e.sizcache===v){u=A[e.sizset];break}if(e.nodeType===1&&!z){e.sizcache=v;e.sizset=t}if(e.nodeName.toLowerCase()===x){u=e;break}e=e[r]}A[t]=u}}}function q(r,x,v,A,y,z){for(var t=0,s=A.length;t<s;t++){var e=A[t];if(e){e=e[r];var u=false;while(e){if(e.sizcache===v){u=A[e.sizset];break}if(e.nodeType===1){if(!z){e.sizcache=v;e.sizset=t}if(typeof x!=="string"){if(e===x){u=true;break}}else{if(b.filter(x,[e]).length>0){u=e;break}}}e=e[r]}A[t]=u}}}b.contains=document.compareDocumentPosition?function(r,e){return !!(r.compareDocumentPosition(e)&16)}:function(r,e){return r!==e&&(r.contains?r.contains(e):true)};b.isXML=function(e){var r=(e?e.ownerDocument||e:0).documentElement;return r?r.nodeName!=="HTML":false};var h=function(e,y){var t=[],u="",v,s=y.nodeType?[y]:y;while((v=f.match.PSEUDO.exec(e))){u+=v[0];e=e.replace(f.match.PSEUDO,"")}e=f.relative[e]?e+"*":e;for(var x=0,r=s.length;x<r;x++){b(e,s[x],t)}return b.filter(u,t)};window.tinymce.dom.Sizzle=b})();(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<arguments.length;j++){h.push(arguments[j])}h=e[g].apply(e,h);b.update(g);return h}});a.extend(b,{on:function(i,h,g){return a.dom.Event.add(b.id,i,h,g)},getXY:function(){return{x:parseInt(b.getStyle("left")),y:parseInt(b.getStyle("top"))}},getSize:function(){var g=e.get(b.id);return{w:parseInt(b.getStyle("width")||g.clientWidth),h:parseInt(b.getStyle("height")||g.clientHeight)}},moveTo:function(g,h){b.setStyles({left:g,top:h})},moveBy:function(g,i){var h=b.getXY();b.moveTo(h.x+g,h.y+i)},resizeTo:function(g,i){b.setStyles({width:g,height:i})},resizeBy:function(g,j){var i=b.getSize();b.resizeTo(i.w+g,i.h+j)},update:function(h){var g;if(a.isIE6&&d.blocker){h=h||"";if(h.indexOf("get")===0||h.indexOf("has")===0||h.indexOf("is")===0){return}if(h=="remove"){e.remove(b.blocker);return}if(!b.blocker){b.blocker=e.uniqueId();g=e.add(d.container||e.getRoot(),"iframe",{id:b.blocker,style:"position:absolute;",frameBorder:0,src:'javascript:""'});e.setStyle(g,"opacity",0)}else{g=e.get(b.blocker)}e.setStyles(g,{left:b.getStyle("left",1),top:b.getStyle("top",1),width:b.getStyle("width",1),height:b.getStyle("height",1),display:b.getStyle("display",1),zIndex:parseInt(b.getStyle("zIndex",1)||0)-1})}}})}})(tinymce);(function(c){function e(f){return f.replace(/[\n\r]+/g,"")}var b=c.is,a=c.isIE,d=c.each;c.create("tinymce.dom.Selection",{Selection:function(i,h,g){var f=this;f.dom=i;f.win=h;f.serializer=g;d(["onBeforeSetContent","onBeforeGetContent","onSetContent","onGetContent"],function(j){f[j]=new c.util.Dispatcher(f)});if(!f.win.getSelection){f.tridentSel=new c.dom.TridentSelection(f)}if(c.isIE&&i.boxModel){this._fixIESelection()}c.addUnload(f.destroy,f)},setCursorLocation:function(h,i){var f=this;var g=f.dom.createRng();g.setStart(h,i);g.setEnd(h,i);f.setRng(g);f.collapse(false)},getContent:function(g){var f=this,h=f.getRng(),l=f.dom.create("body"),j=f.getSel(),i,k,m;g=g||{};i=k="";g.get=true;g.format=g.format||"html";g.forced_root_block="";f.onBeforeGetContent.dispatch(f,g);if(g.format=="text"){return f.isCollapsed()?"":(h.text||(j.toString?j.toString():""))}if(h.cloneContents){m=h.cloneContents();if(m){l.appendChild(m)}}else{if(b(h.item)||b(h.htmlText)){l.innerHTML="<br>"+(h.item?h.item(0).outerHTML:h.htmlText);l.removeChild(l.firstChild)}else{l.innerHTML=h.toString()}}if(/^\s/.test(l.innerHTML)){i=" "}if(/\s+$/.test(l.innerHTML)){k=" "}g.getInner=true;g.content=f.isCollapsed()?"":i+f.serializer.serialize(l,g)+k;f.onGetContent.dispatch(f,g);return g.content},setContent:function(g,i){var n=this,f=n.getRng(),j,k=n.win.document,m,l;i=i||{format:"html"};i.set=true;g=i.content=g;if(!i.no_events){n.onBeforeSetContent.dispatch(n,i)}g=i.content;if(f.insertNode){g+='<span id="__caret">_</span>';if(f.startContainer==k&&f.endContainer==k){k.body.innerHTML=g}else{f.deleteContents();if(k.body.childNodes.length==0){k.body.innerHTML=g}else{if(f.createContextualFragment){f.insertNode(f.createContextualFragment(g))}else{m=k.createDocumentFragment();l=k.createElement("div");m.appendChild(l);l.outerHTML=g;f.insertNode(m)}}}j=n.dom.get("__caret");f=k.createRange();f.setStartBefore(j);f.setEndBefore(j);n.setRng(f);n.dom.remove("__caret");try{n.setRng(f)}catch(h){}}else{if(f.item){k.execCommand("Delete",false,null);f=n.getRng()}if(/^\s+/.test(g)){f.pasteHTML('<span id="__mce_tmp">_</span>'+g);n.dom.remove("__mce_tmp")}else{f.pasteHTML(g)}}if(!i.no_events){n.onSetContent.dispatch(n,i)}},getStart:function(){var g=this.getRng(),h,f,j,i;if(g.duplicate||g.item){if(g.item){return g.item(0)}j=g.duplicate();j.collapse(1);h=j.parentElement();f=i=g.parentElement();while(i=i.parentNode){if(i==h){h=f;break}}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(h.duplicate||h.item){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(r,s){var v=this,m=v.dom,g,j,i,n,h,o,p,l="\uFEFF",u;function f(x,y){var t=0;d(m.select(x),function(A,z){if(A==y){t=z}});return t}if(r==2){function k(){var x=v.getRng(true),t=m.getRoot(),y={};function z(C,H){var B=C[H?"startContainer":"endContainer"],G=C[H?"startOffset":"endOffset"],A=[],D,F,E=0;if(B.nodeType==3){if(s){for(D=B.previousSibling;D&&D.nodeType==3;D=D.previousSibling){G+=D.nodeValue.length}}A.push(G)}else{F=B.childNodes;if(G>=F.length&&F.length){E=1;G=Math.max(0,F.length-1)}A.push(v.dom.nodeIndex(F[G],s)+E)}for(;B&&B!=t;B=B.parentNode){A.push(v.dom.nodeIndex(B,s))}return A}y.start=z(x,true);if(!v.isCollapsed()){y.end=z(x)}return y}if(v.tridentSel){return v.tridentSel.getBookmark(r)}return k()}if(r){return{rng:v.getRng()}}g=v.getRng();i=m.uniqueId();n=tinyMCE.activeEditor.selection.isCollapsed();u="overflow:hidden;line-height:0px";if(g.duplicate||g.item){if(!g.item){j=g.duplicate();try{g.collapse();g.pasteHTML('<span data-mce-type="bookmark" id="'+i+'_start" style="'+u+'">'+l+"</span>");if(!n){j.collapse(false);g.moveToElementText(j.parentElement());if(g.compareEndPoints("StartToEnd",j)==0){j.move("character",-1)}j.pasteHTML('<span data-mce-type="bookmark" id="'+i+'_end" style="'+u+'">'+l+"</span>")}}catch(q){return null}}else{o=g.item(0);h=o.nodeName;return{name:h,index:f(h,o)}}}else{o=v.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",{"data-mce-type":"bookmark",id:i+"_end",style:u},l))}g.collapse(true);g.insertNode(m.create("span",{"data-mce-type":"bookmark",id:i+"_start",style:u},l))}v.moveToBookmark({id:i,keep:1});return{id:i}},moveToBookmark:function(n){var r=this,l=r.dom,i,h,f,q,j,s,o,p;if(n){if(n.start){f=l.createRng();q=l.getRoot();function g(z){var t=n[z?"start":"end"],v,x,y,u;if(t){y=t[0];for(x=q,v=t.length-1;v>=1;v--){u=x.childNodes;if(t[v]>u.length-1){return}x=u[t[v]]}if(x.nodeType===3){y=Math.min(t[0],x.nodeValue.length)}if(x.nodeType===1){y=Math.min(t[0],x.childNodes.length)}if(z){f.setStart(x,y)}else{f.setEnd(x,y)}}return true}if(r.tridentSel){return r.tridentSel.moveToBookmark(n)}if(g(true)&&g()){r.setRng(f)}}else{if(n.id){function k(A){var u=l.get(n.id+"_"+A),z,t,x,y,v=n.keep;if(u){z=u.parentNode;if(A=="start"){if(!v){t=l.nodeIndex(u)}else{z=u.firstChild;t=1}j=s=z;o=p=t}else{if(!v){t=l.nodeIndex(u)}else{z=u.firstChild;t=1}s=z;p=t}if(!v){y=u.previousSibling;x=u.nextSibling;d(c.grep(u.childNodes),function(B){if(B.nodeType==3){B.nodeValue=B.nodeValue.replace(/\uFEFF/g,"")}});while(u=l.get(n.id+"_"+A)){l.remove(u,1)}if(y&&x&&y.nodeType==x.nodeType&&y.nodeType==3&&!c.isOpera){t=y.nodeValue.length;y.appendData(x.nodeValue);l.remove(x);if(A=="start"){j=s=y;o=p=t}else{s=y;p=t}}}}}function m(t){if(l.isBlock(t)&&!t.innerHTML){t.innerHTML=!a?'<br data-mce-bogus="1" />':" "}return t}k("start");k("end");if(j){f=l.createRng();f.setStart(m(j),o);f.setEnd(m(s),p);r.setRng(f)}}else{if(n.name){r.select(l.select(n.name)[n.index])}else{if(n.rng){r.setRng(n.rng)}}}}}},select:function(k,j){var i=this,l=i.dom,g=l.createRng(),f;if(k){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 h=this,g=h.getRng(),i;if(g.item){i=g.item(0);g=h.win.document.body.createTextRange();g.moveToElementText(i)}g.collapse(!!f);h.setRng(g)},getSel:function(){var g=this,f=this.win;return f.getSelection?f.getSelection():f.document.selection},getRng:function(l){var g=this,h,i,k,j=g.win.document;if(l&&g.tridentSel){return g.tridentSel.getRangeAt(0)}try{if(h=g.getSel()){i=h.rangeCount>0?h.getRangeAt(0):(h.createRange?h.createRange():j.createRange())}}catch(f){}if(c.isIE&&i&&i.setStart&&j.selection.createRange().item){k=j.selection.createRange().item(0);i=j.createRange();i.setStartBefore(k);i.setEndAfter(k)}if(!i){i=j.createRange?j.createRange():j.body.createTextRange()}if(g.selectedRange&&g.explicitRange){if(i.compareBoundaryPoints(i.START_TO_START,g.selectedRange)===0&&i.compareBoundaryPoints(i.END_TO_END,g.selectedRange)===0){i=g.explicitRange}else{g.selectedRange=null;g.explicitRange=null}}return i},setRng:function(i){var h,g=this;if(!g.tridentSel){h=g.getSel();if(h){g.explicitRange=i;try{h.removeAllRanges()}catch(f){}h.addRange(i);g.selectedRange=h.getRangeAt(0)}}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 h=this,g=h.getRng(),i=h.getSel(),l,k=g.startContainer,f=g.endContainer;if(!g){return h.dom.getRoot()}if(g.setStart){l=g.commonAncestorContainer;if(!g.collapsed){if(g.startContainer==g.endContainer){if(g.endOffset-g.startOffset<2){if(g.startContainer.hasChildNodes()){l=g.startContainer.childNodes[g.startOffset]}}}if(k.nodeType===3&&f.nodeType===3){function j(p,m){var o=p;while(p&&p.nodeType===3&&p.length===0){p=m?p.nextSibling:p.previousSibling}return p||o}if(k.length===g.startOffset){k=j(k.nextSibling,true)}else{k=k.parentNode}if(g.endOffset===0){f=j(f.previousSibling,false)}else{f=f.parentNode}if(k&&k===f){return k}}}if(l&&l.nodeType==3){return l.parentNode}return l}return g.item?g.item(0):g.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},normalize:function(){var g=this,f,i;if(c.isIE){return}function h(p){var k,o,n,m=g.dom,j=m.getRoot(),l;k=f[(p?"start":"end")+"Container"];o=f[(p?"start":"end")+"Offset"];if(k.nodeType===9){k=k.body;o=0}if(k===j){if(k.hasChildNodes()){k=k.childNodes[Math.min(!p&&o>0?o-1:o,k.childNodes.length-1)];o=0;if(k.hasChildNodes()){l=k;n=new c.dom.TreeWalker(k,j);do{if(l.nodeType===3){o=p?0:l.nodeValue.length-1;k=l;break}if(l.nodeName==="BR"){o=m.nodeIndex(l);k=l.parentNode;break}}while(l=(p?n.next():n.prev()));i=true}}}if(i){f["set"+(p?"Start":"End")](k,o)}}f=g.getRng();h(true);if(f.collapsed){h()}if(i){g.setRng(f)}},destroy:function(g){var f=this;f.win=null;if(!g){c.removeUnload(f.destroy)}},_fixIESelection:function(){var g=this.dom,m=g.doc,h=m.body,j,n,f;m.documentElement.unselectable=true;function i(o,r){var p=h.createTextRange();try{p.moveToPoint(o,r)}catch(q){p=null}return p}function l(p){var o;if(p.button){o=i(p.x,p.y);if(o){if(o.compareEndPoints("StartToStart",n)>0){o.setEndPoint("StartToStart",n)}else{o.setEndPoint("EndToEnd",n)}o.select()}}else{k()}}function k(){var o=m.selection.createRange();if(n&&!o.item&&o.compareEndPoints("StartToEnd",o)===0){n.select()}g.unbind(m,"mouseup",k);g.unbind(m,"mousemove",l);n=j=0}g.bind(m,["mousedown","contextmenu"],function(o){if(o.target.nodeName==="HTML"){if(j){k()}f=m.documentElement;if(f.scrollHeight>f.clientHeight){return}j=1;n=i(o.x,o.y);if(n){g.bind(m,"mouseup",k);g.bind(m,"mousemove",l);g.win.focus();n.select()}}})}})})(tinymce);(function(a){a.dom.Serializer=function(e,i,f){var h,b,d=a.isIE,g=a.each,c;if(!e.apply_source_formatting){e.indent=false}e.remove_trailing_brs=true;i=i||a.DOM;f=f||new a.html.Schema(e);e.entity_encoding=e.entity_encoding||"named";h=new a.util.Dispatcher(self);b=new a.util.Dispatcher(self);c=new a.html.DomParser(e,f);c.addAttributeFilter("src,href,style",function(k,j){var o=k.length,l,q,n="data-mce-"+j,p=e.url_converter,r=e.url_converter_scope,m;while(o--){l=k[o];q=l.attributes.map[n];if(q!==m){l.attr(j,q.length>0?q:null);l.attr(n,null)}else{q=l.attributes.map[j];if(j==="style"){q=i.serializeStyle(i.parseStyle(q),l.name)}else{if(p){q=p.call(r,q,j,l.name)}}l.attr(j,q.length>0?q:null)}}});c.addAttributeFilter("class",function(j,k){var l=j.length,m,n;while(l--){m=j[l];n=m.attr("class").replace(/\s*mce(Item\w+|Selected)\s*/g,"");m.attr("class",n.length>0?n:null)}});c.addAttributeFilter("data-mce-type",function(j,l,k){var m=j.length,n;while(m--){n=j[m];if(n.attributes.map["data-mce-type"]==="bookmark"&&!k.cleanup){n.remove()}}});c.addNodeFilter("script,style",function(k,l){var m=k.length,n,o;function j(p){return p.replace(/(<!--\[CDATA\[|\]\]-->)/g,"\n").replace(/^[\r\n]*|[\r\n]*$/g,"").replace(/^\s*(\/\/\s*<!--|\/\/\s*<!\[CDATA\[|<!--|<!\[CDATA\[)[\r\n]*/g,"").replace(/\s*(\/\/\s*\]\]>|\/\/\s*-->|\]\]>|-->|\]\]-->)\s*$/g,"")}while(m--){n=k[m];o=n.firstChild?n.firstChild.value:"";if(l==="script"){n.attr("type",(n.attr("type")||"text/javascript").replace(/^mce\-/,""));if(o.length>0){n.firstChild.value="// <![CDATA[\n"+j(o)+"\n// ]]>"}}else{if(o.length>0){n.firstChild.value="<!--\n"+j(o)+"\n-->"}}}});c.addNodeFilter("#comment",function(j,k){var l=j.length,m;while(l--){m=j[l];if(m.value.indexOf("[CDATA[")===0){m.name="#cdata";m.type=4;m.value=m.value.replace(/^\[CDATA\[|\]\]$/g,"")}else{if(m.value.indexOf("mce:protected ")===0){m.name="#text";m.type=3;m.raw=true;m.value=unescape(m.value).substr(14)}}}});c.addNodeFilter("xml:namespace,input",function(j,k){var l=j.length,m;while(l--){m=j[l];if(m.type===7){m.remove()}else{if(m.type===1){if(k==="input"&&!("type" in m.attributes.map)){m.attr("type","text")}}}}});if(e.fix_list_elements){c.addNodeFilter("ul,ol",function(k,l){var m=k.length,n,j;while(m--){n=k[m];j=n.parent;if(j.name==="ul"||j.name==="ol"){if(n.prev&&n.prev.name==="li"){n.prev.append(n)}}}})}c.addAttributeFilter("data-mce-src,data-mce-href,data-mce-style",function(j,k){var l=j.length;while(l--){j[l].attr(k,null)}});return{schema:f,addNodeFilter:c.addNodeFilter,addAttributeFilter:c.addAttributeFilter,onPreProcess:h,onPostProcess:b,serialize:function(o,m){var l,p,k,j,n;if(d&&i.select("script,style,select,map").length>0){n=o.innerHTML;o=o.cloneNode(false);i.setHTML(o,n)}else{o=o.cloneNode(true)}l=o.ownerDocument.implementation;if(l.createHTMLDocument){p=l.createHTMLDocument("");g(o.nodeName=="BODY"?o.childNodes:[o],function(q){p.body.appendChild(p.importNode(q,true))});if(o.nodeName!="BODY"){o=p.body.firstChild}else{o=p.body}k=i.doc;i.doc=p}m=m||{};m.format=m.format||"html";if(!m.no_events){m.node=o;h.dispatch(self,m)}j=new a.html.Serializer(e,f);m.content=j.serialize(c.parse(m.getInner?o.innerHTML:a.trim(i.getOuterHTML(o),m),m));if(!m.cleanup){m.content=m.content.replace(/\uFEFF/g,"")}if(!m.no_events){b.dispatch(self,m)}if(k){i.doc=k}m.node=null;return m.content},addRules:function(j){f.addValidElements(j)},setRules:function(j){f.setValidElements(j)}}}})(tinymce);(function(a){a.dom.ScriptLoader=function(h){var c=0,k=1,i=2,l={},j=[],f={},d=[],g=0,e;function b(m,v){var x=this,q=a.DOM,s,o,r,n;function p(){q.remove(n);if(s){s.onreadystatechange=s.onload=s=null}v()}function u(){if(typeof(console)!=="undefined"&&console.log){console.log("Failed to load: "+m)}}n=q.uniqueId();if(a.isIE6){o=new a.util.URI(m);r=location;if(o.host==r.hostname&&o.port==r.port&&(o.protocol+":")==r.protocol&&o.protocol.toLowerCase()!="file"){a.util.XHR.send({url:a._addVer(o.getURI()),success:function(y){var t=q.create("script",{type:"text/javascript"});t.text=y;document.getElementsByTagName("head")[0].appendChild(t);q.remove(t);p()},error:u});return}}s=q.create("script",{id:n,type:"text/javascript",src:a._addVer(m)});if(!a.isIE){s.onload=p}s.onerror=u;if(!a.isOpera){s.onreadystatechange=function(){var t=s.readyState;if(t=="complete"||t=="loaded"){p()}}}(document.getElementsByTagName("head")[0]||document.body).appendChild(s)}this.isDone=function(m){return l[m]==i};this.markDone=function(m){l[m]=i};this.add=this.load=function(m,q,n){var o,p=l[m];if(p==e){j.push(m);l[m]=c}if(q){if(!f[m]){f[m]=[]}f[m].push({func:q,scope:n||this})}};this.loadQueue=function(n,m){this.loadScripts(j,n,m)};this.loadScripts=function(m,q,p){var o;function n(r){a.each(f[r],function(s){s.func.call(s.scope)});f[r]=e}d.push({func:q,scope:p||this});o=function(){var r=a.grep(m);m.length=0;a.each(r,function(s){if(l[s]==i){n(s);return}if(l[s]!=k){l[s]=k;g++;b(s,function(){l[s]=i;g--;n(s);o()})}});if(!g){a.each(d,function(s){s.func.call(s.scope)});d.length=0}};o()}};a.ScriptLoader=new a.dom.ScriptLoader()})(tinymce);tinymce.dom.TreeWalker=function(a,c){var b=a;function d(i,f,e,j){var h,g;if(i){if(!j&&i[f]){return i[f]}if(i!=c){h=i[e];if(h){return h}for(g=i.parentNode;g&&g!=c;g=g.parentNode){h=g[e];if(h){return h}}}}}this.current=function(){return b};this.next=function(e){return(b=d(b,"firstChild","nextSibling",e))};this.prev=function(e){return(b=d(b,"lastChild","previousSibling",e))}};(function(a){a.dom.RangeUtils=function(c){var b="\uFEFF";this.walk=function(d,r){var h=d.startContainer,k=d.startOffset,s=d.endContainer,l=d.endOffset,i,f,n,g,q,p,e;e=c.select("td.mceSelected,th.mceSelected");if(e.length>0){a.each(e,function(t){r([t])});return}function o(v,u,t){var x=[];for(;v&&v!=t;v=v[u]){x.push(v)}return x}function m(u,t){do{if(u.parentNode==t){return u}u=u.parentNode}while(u)}function j(v,u,x){var t=x?"nextSibling":"previousSibling";for(g=v,q=g.parentNode;g&&g!=u;g=q){q=g.parentNode;p=o(g==v?g:g[t],t);if(p.length){if(!x){p.reverse()}r(p)}}}if(h.nodeType==1&&h.hasChildNodes()){h=h.childNodes[k]}if(s.nodeType==1&&s.hasChildNodes()){s=s.childNodes[Math.min(l-1,s.childNodes.length-1)]}i=c.findCommonAncestor(h,s);if(h==s){return r([h])}for(g=h;g;g=g.parentNode){if(g==s){return j(h,i,true)}if(g==i){break}}for(g=s;g;g=g.parentNode){if(g==h){return j(s,i)}if(g==i){break}}f=m(h,i)||h;n=m(s,i)||s;j(h,f,true);p=o(f==h?f:f.nextSibling,"nextSibling",n==s?n.nextSibling:n);if(p.length){r(p)}j(s,n)}};a.dom.RangeUtils.compareRanges=function(c,b){if(c&&b){if(c.item||c.duplicate){if(c.item&&b.item&&c.item(0)===b.item(0)){return true}if(c.isEqual&&b.isEqual&&b.isEqual(c)){return true}}else{return c.startContainer==b.startContainer&&c.startOffset==b.startOffset}}return false}})(tinymce);(function(b){var a=b.dom.Event,c=b.each;b.create("tinymce.ui.KeyboardNavigation",{KeyboardNavigation:function(e,f){var p=this,m=e.root,l=e.items,n=e.enableUpDown,i=e.enableLeftRight||!e.enableUpDown,k=e.excludeFromTabOrder,j,h,o,d,g;f=f||b.DOM;j=function(q){g=q.target.id};h=function(q){f.setAttrib(q.target.id,"tabindex","-1")};d=function(q){var r=f.get(g);f.setAttrib(r,"tabindex","0");r.focus()};p.focus=function(){f.get(g).focus()};p.destroy=function(){c(l,function(q){f.unbind(f.get(q.id),"focus",j);f.unbind(f.get(q.id),"blur",h)});f.unbind(f.get(m),"focus",d);f.unbind(f.get(m),"keydown",o);l=f=m=p.focus=j=h=o=d=null;p.destroy=function(){}};p.moveFocus=function(u,r){var q=-1,t=p.controls,s;if(!g){return}c(l,function(x,v){if(x.id===g){q=v;return false}});q+=u;if(q<0){q=l.length-1}else{if(q>=l.length){q=0}}s=l[q];f.setAttrib(g,"tabindex","-1");f.setAttrib(s.id,"tabindex","0");f.get(s.id).focus();if(e.actOnFocus){e.onAction(s.id)}if(r){a.cancel(r)}};o=function(y){var u=37,t=39,x=38,z=40,q=27,s=14,r=13,v=32;switch(y.keyCode){case u:if(i){p.moveFocus(-1)}break;case t:if(i){p.moveFocus(1)}break;case x:if(n){p.moveFocus(-1)}break;case z:if(n){p.moveFocus(1)}break;case q:if(e.onCancel){e.onCancel();a.cancel(y)}break;case s:case r:case v:if(e.onAction){e.onAction(g);a.cancel(y)}break}};c(l,function(s,q){var r;if(!s.id){s.id=f.uniqueId("_mce_item_")}if(k){f.bind(s.id,"blur",h);r="-1"}else{r=(q===0?"0":"-1")}f.setAttrib(s.id,"tabindex",r);f.bind(f.get(s.id),"focus",j)});if(l[0]){g=l[0].id}f.setAttrib(m,"tabindex","-1");f.bind(f.get(m),"focus",d);f.bind(f.get(m),"keydown",o)}})})(tinymce);(function(c){var b=c.DOM,a=c.is;c.create("tinymce.ui.Control",{Control:function(f,e,d){this.id=f;this.settings=e=e||{};this.rendered=false;this.onRender=new c.util.Dispatcher(this);this.classPrefix="";this.scope=e.scope||this;this.disabled=0;this.active=0;this.editor=d},setAriaProperty:function(f,e){var d=b.get(this.id+"_aria")||b.get(this.id);if(d){b.setAttrib(d,"aria-"+f,!!e)}},focus:function(){b.get(this.id).focus()},setDisabled:function(d){if(d!=this.disabled){this.setAriaProperty("disabled",d);this.setState("Disabled",d);this.setState("Enabled",!d);this.disabled=d}},isDisabled:function(){return this.disabled},setActive:function(d){if(d!=this.active){this.setState("Active",d);this.active=d;this.setAriaProperty("pressed",d)}},isActive:function(){return this.active},setState:function(f,d){var e=b.get(this.id);f=this.classPrefix+f;if(d){b.addClass(e,f)}else{b.removeClass(e,f)}},isRendered:function(){return this.rendered},renderHTML:function(){},renderTo:function(d){b.setHTML(d,this.renderHTML())},postRender:function(){var e=this,d;if(a(e.disabled)){d=e.disabled;e.disabled=-1;e.setDisabled(d)}if(a(e.active)){d=e.active;e.active=-1;e.setActive(d)}},remove:function(){b.remove(this.id);this.destroy()},destroy:function(){c.dom.Event.clear(this.id)}})})(tinymce);tinymce.create("tinymce.ui.Container:tinymce.ui.Control",{Container:function(c,b,a){this.parent(c,b,a);this.controls=[];this.lookup={}},add:function(a){this.lookup[a.id]=a;this.controls.push(a);return a},get:function(a){return this.lookup[a]}});tinymce.create("tinymce.ui.Separator:tinymce.ui.Control",{Separator:function(b,a){this.parent(b,a);this.classPrefix="mceSeparator";this.setDisabled(true)},renderHTML:function(){return tinymce.DOM.createHTML("span",{"class":this.classPrefix,role:"separator","aria-orientation":"vertical",tabindex:"-1"})}});(function(d){var c=d.is,b=d.DOM,e=d.each,a=d.walk;d.create("tinymce.ui.MenuItem:tinymce.ui.Control",{MenuItem:function(g,f){this.parent(g,f);this.classPrefix="mceMenuItem"},setSelected:function(f){this.setState("Selected",f);this.setAriaProperty("checked",!!f);this.selected=f},isSelected:function(){return this.selected},postRender:function(){var f=this;f.parent();if(c(f.selected)){f.setSelected(f.selected)}}})})(tinymce);(function(d){var c=d.is,b=d.DOM,e=d.each,a=d.walk;d.create("tinymce.ui.Menu:tinymce.ui.MenuItem",{Menu:function(h,g){var f=this;f.parent(h,g);f.items={};f.collapsed=false;f.menuCount=0;f.onAddItem=new d.util.Dispatcher(this)},expand:function(g){var f=this;if(g){a(f,function(h){if(h.expand){h.expand()}},"items",f)}f.collapsed=false},collapse:function(g){var f=this;if(g){a(f,function(h){if(h.collapse){h.collapse()}},"items",f)}f.collapsed=true},isCollapsed:function(){return this.collapsed},add:function(f){if(!f.settings){f=new d.ui.MenuItem(f.id||b.uniqueId(),f)}this.onAddItem.dispatch(this,f);return this.items[f.id]=f},addSeparator:function(){return this.add({separator:true})},addMenu:function(f){if(!f.collapse){f=this.createMenu(f)}this.menuCount++;return this.add(f)},hasMenus:function(){return this.menuCount!==0},remove:function(f){delete this.items[f.id]},removeAll:function(){var f=this;a(f,function(g){if(g.removeAll){g.removeAll()}else{g.remove()}g.destroy()},"items",f);f.items={}},createMenu:function(g){var f=new d.ui.Menu(g.id||b.uniqueId(),g);f.onAddItem.add(this.onAddItem.dispatch,this.onAddItem);return f}})})(tinymce);(function(e){var d=e.is,c=e.DOM,f=e.each,a=e.dom.Event,b=e.dom.Element;e.create("tinymce.ui.DropMenu:tinymce.ui.Menu",{DropMenu:function(h,g){g=g||{};g.container=g.container||c.doc.body;g.offset_x=g.offset_x||0;g.offset_y=g.offset_y||0;g.vp_offset_x=g.vp_offset_x||0;g.vp_offset_y=g.vp_offset_y||0;if(d(g.icons)&&!g.icons){g["class"]+=" mceNoIcons"}this.parent(h,g);this.onShowMenu=new e.util.Dispatcher(this);this.onHideMenu=new e.util.Dispatcher(this);this.classPrefix="mceMenu"},createMenu:function(j){var h=this,i=h.settings,g;j.container=j.container||i.container;j.parent=h;j.constrain=j.constrain||i.constrain;j["class"]=j["class"]||i["class"];j.vp_offset_x=j.vp_offset_x||i.vp_offset_x;j.vp_offset_y=j.vp_offset_y||i.vp_offset_y;j.keyboard_focus=i.keyboard_focus;g=new e.ui.DropMenu(j.id||c.uniqueId(),j);g.onAddItem.add(h.onAddItem.dispatch,h.onAddItem);return g},focus:function(){var g=this;if(g.keyboardNav){g.keyboardNav.focus()}},update:function(){var i=this,j=i.settings,g=c.get("menu_"+i.id+"_tbl"),l=c.get("menu_"+i.id+"_co"),h,k;h=j.max_width?Math.min(g.clientWidth,j.max_width):g.clientWidth;k=j.max_height?Math.min(g.clientHeight,j.max_height):g.clientHeight;if(!c.boxModel){i.element.setStyles({width:h+2,height:k+2})}else{i.element.setStyles({width:h,height:k})}if(j.max_width){c.setStyle(l,"width",h)}if(j.max_height){c.setStyle(l,"height",k);if(g.clientHeight<j.max_height){c.setStyle(l,"overflow","hidden")}}},showMenu:function(p,n,r){var z=this,A=z.settings,o,g=c.getViewPort(),u,l,v,q,i=2,k,j,m=z.classPrefix;z.collapse(1);if(z.isMenuVisible){return}if(!z.rendered){o=c.add(z.settings.container,z.renderNode());f(z.items,function(h){h.postRender()});z.element=new b("menu_"+z.id,{blocker:1,container:A.container})}else{o=c.get("menu_"+z.id)}if(!e.isOpera){c.setStyles(o,{left:-65535,top:-65535})}c.show(o);z.update();p+=A.offset_x||0;n+=A.offset_y||0;g.w-=4;g.h-=4;if(A.constrain){u=o.clientWidth-i;l=o.clientHeight-i;v=g.x+g.w;q=g.y+g.h;if((p+A.vp_offset_x+u)>v){p=r?r-u:Math.max(0,(v-A.vp_offset_x)-u)}if((n+A.vp_offset_y+l)>q){n=Math.max(0,(q-A.vp_offset_y)-l)}}c.setStyles(o,{left:p,top:n});z.element.update();z.isMenuVisible=1;z.mouseClickFunc=a.add(o,"click",function(s){var h;s=s.target;if(s&&(s=c.getParent(s,"tr"))&&!c.hasClass(s,m+"ItemSub")){h=z.items[s.id];if(h.isDisabled()){return}k=z;while(k){if(k.hideMenu){k.hideMenu()}k=k.settings.parent}if(h.settings.onclick){h.settings.onclick(s)}return a.cancel(s)}});if(z.hasMenus()){z.mouseOverFunc=a.add(o,"mouseover",function(x){var h,t,s;x=x.target;if(x&&(x=c.getParent(x,"tr"))){h=z.items[x.id];if(z.lastMenu){z.lastMenu.collapse(1)}if(h.isDisabled()){return}if(x&&c.hasClass(x,m+"ItemSub")){t=c.getRect(x);h.showMenu((t.x+t.w-i),t.y-i,t.x);z.lastMenu=h;c.addClass(c.get(h.id).firstChild,m+"ItemActive")}}})}a.add(o,"keydown",z._keyHandler,z);z.onShowMenu.dispatch(z);if(A.keyboard_focus){z._setupKeyboardNav()}},hideMenu:function(j){var g=this,i=c.get("menu_"+g.id),h;if(!g.isMenuVisible){return}if(g.keyboardNav){g.keyboardNav.destroy()}a.remove(i,"mouseover",g.mouseOverFunc);a.remove(i,"click",g.mouseClickFunc);a.remove(i,"keydown",g._keyHandler);c.hide(i);g.isMenuVisible=0;if(!j){g.collapse(1)}if(g.element){g.element.hide()}if(h=c.get(g.id)){c.removeClass(h.firstChild,g.classPrefix+"ItemActive")}g.onHideMenu.dispatch(g)},add:function(i){var g=this,h;i=g.parent(i);if(g.isRendered&&(h=c.get("menu_"+g.id))){g._add(c.select("tbody",h)[0],i)}return i},collapse:function(g){this.parent(g);this.hideMenu(1)},remove:function(g){c.remove(g.id);this.destroy();return this.parent(g)},destroy:function(){var g=this,h=c.get("menu_"+g.id);if(g.keyboardNav){g.keyboardNav.destroy()}a.remove(h,"mouseover",g.mouseOverFunc);a.remove(c.select("a",h),"focus",g.mouseOverFunc);a.remove(h,"click",g.mouseClickFunc);a.remove(h,"keydown",g._keyHandler);if(g.element){g.element.remove()}c.remove(h)},renderNode:function(){var i=this,j=i.settings,l,h,k,g;g=c.create("div",{role:"listbox",id:"menu_"+i.id,"class":j["class"],style:"position:absolute;left:0;top:0;z-index:200000;outline:0"});if(i.settings.parent){c.setAttrib(g,"aria-parent","menu_"+i.settings.parent.id)}k=c.add(g,"div",{role:"presentation",id:"menu_"+i.id+"_co","class":i.classPrefix+(j["class"]?" "+j["class"]:"")});i.element=new b("menu_"+i.id,{blocker:1,container:j.container});if(j.menu_line){c.add(k,"span",{"class":i.classPrefix+"Line"})}l=c.add(k,"table",{role:"presentation",id:"menu_"+i.id+"_tbl",border:0,cellPadding:0,cellSpacing:0});h=c.add(l,"tbody");f(i.items,function(m){i._add(h,m)});i.rendered=true;return g},_setupKeyboardNav:function(){var i,h,g=this;i=c.select("#menu_"+g.id)[0];h=c.select("a[role=option]","menu_"+g.id);h.splice(0,0,i);g.keyboardNav=new e.ui.KeyboardNavigation({root:"menu_"+g.id,items:h,onCancel:function(){g.hideMenu()},enableUpDown:true});i.focus()},_keyHandler:function(g){var h=this,i;switch(g.keyCode){case 37:if(h.settings.parent){h.hideMenu();h.settings.parent.focus();a.cancel(g)}break;case 39:if(h.mouseOverFunc){h.mouseOverFunc(g)}break}},_add:function(j,h){var i,q=h.settings,p,l,k,m=this.classPrefix,g;if(q.separator){l=c.add(j,"tr",{id:h.id,"class":m+"ItemSeparator"});c.add(l,"td",{"class":m+"ItemSeparator"});if(i=l.previousSibling){c.addClass(i,"mceLast")}return}i=l=c.add(j,"tr",{id:h.id,"class":m+"Item "+m+"ItemEnabled"});i=k=c.add(i,q.titleItem?"th":"td");i=p=c.add(i,"a",{id:h.id+"_aria",role:q.titleItem?"presentation":"option",href:"javascript:;",onclick:"return false;",onmousedown:"return false;"});if(q.parent){c.setAttrib(p,"aria-haspopup","true");c.setAttrib(p,"aria-owns","menu_"+h.id)}c.addClass(k,q["class"]);g=c.add(i,"span",{"class":"mceIcon"+(q.icon?" mce_"+q.icon:"")});if(q.icon_src){c.add(g,"img",{src:q.icon_src})}i=c.add(i,q.element||"span",{"class":"mceText",title:h.settings.title},h.settings.title);if(h.settings.style){c.setAttrib(i,"style",h.settings.style)}if(j.childNodes.length==1){c.addClass(l,"mceFirst")}if((i=l.previousSibling)&&c.hasClass(i,m+"ItemSeparator")){c.addClass(l,"mceFirst")}if(h.collapse){c.addClass(l,m+"ItemSub")}if(i=l.previousSibling){c.removeClass(i,"mceLast")}c.addClass(l,"mceLast")}})})(tinymce);(function(b){var a=b.DOM;b.create("tinymce.ui.Button:tinymce.ui.Control",{Button:function(e,d,c){this.parent(e,d,c);this.classPrefix="mceButton"},renderHTML:function(){var f=this.classPrefix,e=this.settings,d,c;c=a.encode(e.label||"");d='<a role="button" id="'+this.id+'" href="javascript:;" class="'+f+" "+f+"Enabled "+e["class"]+(c?" "+f+"Labeled":"")+'" onmousedown="return false;" onclick="return false;" aria-labelledby="'+this.id+'_voice" title="'+a.encode(e.title)+'">';if(e.image&&!(this.editor&&this.editor.forcedHighContrastMode)){d+='<img class="mceIcon" src="'+e.image+'" alt="'+a.encode(e.title)+'" />'+c}else{d+='<span class="mceIcon '+e["class"]+'"></span>'+(c?'<span class="'+f+'Label">'+c+"</span>":"")}d+='<span class="mceVoiceLabel mceIconOnly" style="display: none;" id="'+this.id+'_voice">'+e.title+"</span>";d+="</a>";return d},postRender:function(){var c=this,d=c.settings;b.dom.Event.add(c.id,"click",function(f){if(!c.isDisabled()){return d.onclick.call(d.scope,f)}})}})})(tinymce);(function(d){var c=d.DOM,b=d.dom.Event,e=d.each,a=d.util.Dispatcher;d.create("tinymce.ui.ListBox:tinymce.ui.Control",{ListBox:function(i,h,f){var g=this;g.parent(i,h,f);g.items=[];g.onChange=new a(g);g.onPostRender=new a(g);g.onAdd=new a(g);g.onRenderMenu=new d.util.Dispatcher(this);g.classPrefix="mceListBox"},select:function(h){var g=this,j,i;if(h==undefined){return g.selectByIndex(-1)}if(h&&h.call){i=h}else{i=function(f){return f==h}}if(h!=g.selectedValue){e(g.items,function(k,f){if(i(k.value)){j=1;g.selectByIndex(f);return false}});if(!j){g.selectByIndex(-1)}}},selectByIndex:function(f){var g=this,h,i;if(f!=g.selectedIndex){h=c.get(g.id+"_text");i=g.items[f];if(i){g.selectedValue=i.value;g.selectedIndex=f;c.setHTML(h,c.encode(i.title));c.removeClass(h,"mceTitle");c.setAttrib(g.id,"aria-valuenow",i.title)}else{c.setHTML(h,c.encode(g.settings.title));c.addClass(h,"mceTitle");g.selectedValue=g.selectedIndex=null;c.setAttrib(g.id,"aria-valuenow",g.settings.title)}h=0}},add:function(i,f,h){var g=this;h=h||{};h=d.extend(h,{title:i,value:f});g.items.push(h);g.onAdd.dispatch(g,h)},getLength:function(){return this.items.length},renderHTML:function(){var i="",f=this,g=f.settings,j=f.classPrefix;i='<span role="button" aria-haspopup="true" aria-labelledby="'+f.id+'_text" aria-describedby="'+f.id+'_voiceDesc"><table role="presentation" tabindex="0" id="'+f.id+'" cellpadding="0" cellspacing="0" class="'+j+" "+j+"Enabled"+(g["class"]?(" "+g["class"]):"")+'"><tbody><tr>';i+="<td>"+c.createHTML("span",{id:f.id+"_voiceDesc","class":"voiceLabel",style:"display:none;"},f.settings.title);i+=c.createHTML("a",{id:f.id+"_text",tabindex:-1,href:"javascript:;","class":"mceText",onclick:"return false;",onmousedown:"return false;"},c.encode(f.settings.title))+"</td>";i+="<td>"+c.createHTML("a",{id:f.id+"_open",tabindex:-1,href:"javascript:;","class":"mceOpen",onclick:"return false;",onmousedown:"return false;"},'<span><span style="display:none;" class="mceIconOnly" aria-hidden="true">\u25BC</span></span>')+"</td>";i+="</tr></tbody></table></span>";return i},showMenu:function(){var g=this,i,h=c.get(this.id),f;if(g.isDisabled()||g.items.length==0){return}if(g.menu&&g.menu.isMenuVisible){return g.hideMenu()}if(!g.isMenuRendered){g.renderMenu();g.isMenuRendered=true}i=c.getPos(h);f=g.menu;f.settings.offset_x=i.x;f.settings.offset_y=i.y;f.settings.keyboard_focus=!d.isOpera;if(g.oldID){f.items[g.oldID].setSelected(0)}e(g.items,function(j){if(j.value===g.selectedValue){f.items[j.id].setSelected(1);g.oldID=j.id}});f.showMenu(0,h.clientHeight);b.add(c.doc,"mousedown",g.hideMenu,g);c.addClass(g.id,g.classPrefix+"Selected")},hideMenu:function(g){var f=this;if(f.menu&&f.menu.isMenuVisible){c.removeClass(f.id,f.classPrefix+"Selected");if(g&&g.type=="mousedown"&&(g.target.id==f.id+"_text"||g.target.id==f.id+"_open")){return}if(!g||!c.getParent(g.target,".mceMenu")){c.removeClass(f.id,f.classPrefix+"Selected");b.remove(c.doc,"mousedown",f.hideMenu,f);f.menu.hideMenu()}}},renderMenu:function(){var g=this,f;f=g.settings.control_manager.createDropMenu(g.id+"_menu",{menu_line:1,"class":g.classPrefix+"Menu mceNoIcons",max_width:150,max_height:150});f.onHideMenu.add(function(){g.hideMenu();g.focus()});f.add({title:g.settings.title,"class":"mceMenuItemTitle",onclick:function(){if(g.settings.onselect("")!==false){g.select("")}}});e(g.items,function(h){if(h.value===undefined){f.add({title:h.title,"class":"mceMenuItemTitle",onclick:function(){if(g.settings.onselect("")!==false){g.select("")}}})}else{h.id=c.uniqueId();h.onclick=function(){if(g.settings.onselect(h.value)!==false){g.select(h.value)}};f.add(h)}});g.onRenderMenu.dispatch(g,f);g.menu=f},postRender:function(){var f=this,g=f.classPrefix;b.add(f.id,"click",f.showMenu,f);b.add(f.id,"keydown",function(h){if(h.keyCode==32){f.showMenu(h);b.cancel(h)}});b.add(f.id,"focus",function(){if(!f._focused){f.keyDownHandler=b.add(f.id,"keydown",function(h){if(h.keyCode==40){f.showMenu();b.cancel(h)}});f.keyPressHandler=b.add(f.id,"keypress",function(i){var h;if(i.keyCode==13){h=f.selectedValue;f.selectedValue=null;b.cancel(i);f.settings.onselect(h)}})}f._focused=1});b.add(f.id,"blur",function(){b.remove(f.id,"keydown",f.keyDownHandler);b.remove(f.id,"keypress",f.keyPressHandler);f._focused=0});if(d.isIE6||!c.boxModel){b.add(f.id,"mouseover",function(){if(!c.hasClass(f.id,g+"Disabled")){c.addClass(f.id,g+"Hover")}});b.add(f.id,"mouseout",function(){if(!c.hasClass(f.id,g+"Disabled")){c.removeClass(f.id,g+"Hover")}})}f.onPostRender.dispatch(f,c.get(f.id))},destroy:function(){this.parent();b.clear(this.id+"_text");b.clear(this.id+"_open")}})})(tinymce);(function(d){var c=d.DOM,b=d.dom.Event,e=d.each,a=d.util.Dispatcher;d.create("tinymce.ui.NativeListBox:tinymce.ui.ListBox",{NativeListBox:function(g,f){this.parent(g,f);this.classPrefix="mceNativeListBox"},setDisabled:function(f){c.get(this.id).disabled=f;this.setAriaProperty("disabled",f)},isDisabled:function(){return c.get(this.id).disabled},select:function(h){var g=this,j,i;if(h==undefined){return g.selectByIndex(-1)}if(h&&h.call){i=h}else{i=function(f){return f==h}}if(h!=g.selectedValue){e(g.items,function(k,f){if(i(k.value)){j=1;g.selectByIndex(f);return false}});if(!j){g.selectByIndex(-1)}}},selectByIndex:function(f){c.get(this.id).selectedIndex=f+1;this.selectedValue=this.items[f]?this.items[f].value:null},add:function(j,g,f){var i,h=this;f=f||{};f.value=g;if(h.isRendered()){c.add(c.get(this.id),"option",f,j)}i={title:j,value:g,attribs:f};h.items.push(i);h.onAdd.dispatch(h,i)},getLength:function(){return this.items.length},renderHTML:function(){var g,f=this;g=c.createHTML("option",{value:""},"-- "+f.settings.title+" --");e(f.items,function(h){g+=c.createHTML("option",{value:h.value},h.title)});g=c.createHTML("select",{id:f.id,"class":"mceNativeListBox","aria-labelledby":f.id+"_aria"},g);g+=c.createHTML("span",{id:f.id+"_aria",style:"display: none"},f.settings.title);return g},postRender:function(){var g=this,h,i=true;g.rendered=true;function f(k){var j=g.items[k.target.selectedIndex-1];if(j&&(j=j.value)){g.onChange.dispatch(g,j);if(g.settings.onselect){g.settings.onselect(j)}}}b.add(g.id,"change",f);b.add(g.id,"keydown",function(k){var j;b.remove(g.id,"change",h);i=false;j=b.add(g.id,"blur",function(){if(i){return}i=true;b.add(g.id,"change",f);b.remove(g.id,"blur",j)});if(d.isWebKit&&(k.keyCode==37||k.keyCode==39)){return b.prevent(k)}if(k.keyCode==13||k.keyCode==32){f(k);return b.cancel(k)}});g.onPostRender.dispatch(g,c.get(g.id))}})})(tinymce);(function(c){var b=c.DOM,a=c.dom.Event,d=c.each;c.create("tinymce.ui.MenuButton:tinymce.ui.Button",{MenuButton:function(g,f,e){this.parent(g,f,e);this.onRenderMenu=new c.util.Dispatcher(this);f.menu_container=f.menu_container||b.doc.body},showMenu:function(){var g=this,j,i,h=b.get(g.id),f;if(g.isDisabled()){return}if(!g.isMenuRendered){g.renderMenu();g.isMenuRendered=true}if(g.isMenuVisible){return g.hideMenu()}j=b.getPos(g.settings.menu_container);i=b.getPos(h);f=g.menu;f.settings.offset_x=i.x;f.settings.offset_y=i.y;f.settings.vp_offset_x=i.x;f.settings.vp_offset_y=i.y;f.settings.keyboard_focus=g._focused;f.showMenu(0,h.clientHeight);a.add(b.doc,"mousedown",g.hideMenu,g);g.setState("Selected",1);g.isMenuVisible=1},renderMenu:function(){var f=this,e;e=f.settings.control_manager.createDropMenu(f.id+"_menu",{menu_line:1,"class":this.classPrefix+"Menu",icons:f.settings.icons});e.onHideMenu.add(function(){f.hideMenu();f.focus()});f.onRenderMenu.dispatch(f,e);f.menu=e},hideMenu:function(g){var f=this;if(g&&g.type=="mousedown"&&b.getParent(g.target,function(h){return h.id===f.id||h.id===f.id+"_open"})){return}if(!g||!b.getParent(g.target,".mceMenu")){f.setState("Selected",0);a.remove(b.doc,"mousedown",f.hideMenu,f);if(f.menu){f.menu.hideMenu()}}f.isMenuVisible=0},postRender:function(){var e=this,f=e.settings;a.add(e.id,"click",function(){if(!e.isDisabled()){if(f.onclick){f.onclick(e.value)}e.showMenu()}})}})})(tinymce);(function(c){var b=c.DOM,a=c.dom.Event,d=c.each;c.create("tinymce.ui.SplitButton:tinymce.ui.MenuButton",{SplitButton:function(g,f,e){this.parent(g,f,e);this.classPrefix="mceSplitButton"},renderHTML:function(){var i,f=this,g=f.settings,e;i="<tbody><tr>";if(g.image){e=b.createHTML("img ",{src:g.image,role:"presentation","class":"mceAction "+g["class"]})}else{e=b.createHTML("span",{"class":"mceAction "+g["class"]},"")}e+=b.createHTML("span",{"class":"mceVoiceLabel mceIconOnly",id:f.id+"_voice",style:"display:none;"},g.title);i+="<td >"+b.createHTML("a",{role:"button",id:f.id+"_action",tabindex:"-1",href:"javascript:;","class":"mceAction "+g["class"],onclick:"return false;",onmousedown:"return false;",title:g.title},e)+"</td>";e=b.createHTML("span",{"class":"mceOpen "+g["class"]},'<span style="display:none;" class="mceIconOnly" aria-hidden="true">\u25BC</span>');i+="<td >"+b.createHTML("a",{role:"button",id:f.id+"_open",tabindex:"-1",href:"javascript:;","class":"mceOpen "+g["class"],onclick:"return false;",onmousedown:"return false;",title:g.title},e)+"</td>";i+="</tr></tbody>";i=b.createHTML("table",{id:f.id,role:"presentation",tabindex:"0","class":"mceSplitButton mceSplitButtonEnabled "+g["class"],cellpadding:"0",cellspacing:"0",title:g.title},i);return b.createHTML("span",{role:"button","aria-labelledby":f.id+"_voice","aria-haspopup":"true"},i)},postRender:function(){var e=this,g=e.settings,f;if(g.onclick){f=function(h){if(!e.isDisabled()){g.onclick(e.value);a.cancel(h)}};a.add(e.id+"_action","click",f);a.add(e.id,["click","keydown"],function(h){var k=32,m=14,i=13,j=38,l=40;if((h.keyCode===32||h.keyCode===13||h.keyCode===14)&&!h.altKey&&!h.ctrlKey&&!h.metaKey){f();a.cancel(h)}else{if(h.type==="click"||h.keyCode===l){e.showMenu();a.cancel(h)}}})}a.add(e.id+"_open","click",function(h){e.showMenu();a.cancel(h)});a.add([e.id,e.id+"_open"],"focus",function(){e._focused=1});a.add([e.id,e.id+"_open"],"blur",function(){e._focused=0});if(c.isIE6||!b.boxModel){a.add(e.id,"mouseover",function(){if(!b.hasClass(e.id,"mceSplitButtonDisabled")){b.addClass(e.id,"mceSplitButtonHover")}});a.add(e.id,"mouseout",function(){if(!b.hasClass(e.id,"mceSplitButtonDisabled")){b.removeClass(e.id,"mceSplitButtonHover")}})}},destroy:function(){this.parent();a.clear(this.id+"_action");a.clear(this.id+"_open");a.clear(this.id)}})})(tinymce);(function(d){var c=d.DOM,a=d.dom.Event,b=d.is,e=d.each;d.create("tinymce.ui.ColorSplitButton:tinymce.ui.SplitButton",{ColorSplitButton:function(i,h,f){var g=this;g.parent(i,h,f);g.settings=h=d.extend({colors:"000000,993300,333300,003300,003366,000080,333399,333333,800000,FF6600,808000,008000,008080,0000FF,666699,808080,FF0000,FF9900,99CC00,339966,33CCCC,3366FF,800080,999999,FF00FF,FFCC00,FFFF00,00FF00,00FFFF,00CCFF,993366,C0C0C0,FF99CC,FFCC99,FFFF99,CCFFCC,CCFFFF,99CCFF,CC99FF,FFFFFF",grid_width:8,default_color:"#888888"},g.settings);g.onShowMenu=new d.util.Dispatcher(g);g.onHideMenu=new d.util.Dispatcher(g);g.value=h.default_color},showMenu:function(){var f=this,g,j,i,h;if(f.isDisabled()){return}if(!f.isMenuRendered){f.renderMenu();f.isMenuRendered=true}if(f.isMenuVisible){return f.hideMenu()}i=c.get(f.id);c.show(f.id+"_menu");c.addClass(i,"mceSplitButtonSelected");h=c.getPos(i);c.setStyles(f.id+"_menu",{left:h.x,top:h.y+i.clientHeight,zIndex:200000});i=0;a.add(c.doc,"mousedown",f.hideMenu,f);f.onShowMenu.dispatch(f);if(f._focused){f._keyHandler=a.add(f.id+"_menu","keydown",function(k){if(k.keyCode==27){f.hideMenu()}});c.select("a",f.id+"_menu")[0].focus()}f.isMenuVisible=1},hideMenu:function(g){var f=this;if(f.isMenuVisible){if(g&&g.type=="mousedown"&&c.getParent(g.target,function(h){return h.id===f.id+"_open"})){return}if(!g||!c.getParent(g.target,".mceSplitButtonMenu")){c.removeClass(f.id,"mceSplitButtonSelected");a.remove(c.doc,"mousedown",f.hideMenu,f);a.remove(f.id+"_menu","keydown",f._keyHandler);c.hide(f.id+"_menu")}f.isMenuVisible=0;f.onHideMenu.dispatch()}},renderMenu:function(){var p=this,h,k=0,q=p.settings,g,j,l,o,f;o=c.add(q.menu_container,"div",{role:"listbox",id:p.id+"_menu","class":q.menu_class+" "+q["class"],style:"position:absolute;left:0;top:-1000px;"});h=c.add(o,"div",{"class":q["class"]+" mceSplitButtonMenu"});c.add(h,"span",{"class":"mceMenuLine"});g=c.add(h,"table",{role:"presentation","class":"mceColorSplitMenu"});j=c.add(g,"tbody");k=0;e(b(q.colors,"array")?q.colors:q.colors.split(","),function(i){i=i.replace(/^#/,"");if(!k--){l=c.add(j,"tr");k=q.grid_width-1}g=c.add(l,"td");g=c.add(g,"a",{role:"option",href:"javascript:;",style:{backgroundColor:"#"+i},title:p.editor.getLang("colors."+i,i),"data-mce-color":"#"+i});if(p.editor.forcedHighContrastMode){g=c.add(g,"canvas",{width:16,height:16,"aria-hidden":"true"});if(g.getContext&&(f=g.getContext("2d"))){f.fillStyle="#"+i;f.fillRect(0,0,16,16)}else{c.remove(g)}}});if(q.more_colors_func){g=c.add(j,"tr");g=c.add(g,"td",{colspan:q.grid_width,"class":"mceMoreColors"});g=c.add(g,"a",{role:"option",id:p.id+"_more",href:"javascript:;",onclick:"return false;","class":"mceMoreColors"},q.more_colors_title);a.add(g,"click",function(i){q.more_colors_func.call(q.more_colors_scope||this);return a.cancel(i)})}c.addClass(h,"mceColorSplitMenu");new d.ui.KeyboardNavigation({root:p.id+"_menu",items:c.select("a",p.id+"_menu"),onCancel:function(){p.hideMenu();p.focus()}});a.add(p.id+"_menu","mousedown",function(i){return a.cancel(i)});a.add(p.id+"_menu","click",function(i){var m;i=c.getParent(i.target,"a",j);if(i&&i.nodeName.toLowerCase()=="a"&&(m=i.getAttribute("data-mce-color"))){p.setColor(m)}return a.cancel(i)});return o},setColor:function(f){this.displayColor(f);this.hideMenu();this.settings.onselect(f)},displayColor:function(g){var f=this;c.setStyle(f.id+"_preview","backgroundColor",g);f.value=g},postRender:function(){var f=this,g=f.id;f.parent();c.add(g+"_action","div",{id:g+"_preview","class":"mceColorPreview"});c.setStyle(f.id+"_preview","backgroundColor",f.value)},destroy:function(){this.parent();a.clear(this.id+"_menu");a.clear(this.id+"_more");c.remove(this.id+"_menu")}})})(tinymce);(function(b){var d=b.DOM,c=b.each,a=b.dom.Event;b.create("tinymce.ui.ToolbarGroup:tinymce.ui.Container",{renderHTML:function(){var f=this,i=[],e=f.controls,j=b.each,g=f.settings;i.push('<div id="'+f.id+'" role="group" aria-labelledby="'+f.id+'_voice">');i.push("<span role='application'>");i.push('<span id="'+f.id+'_voice" class="mceVoiceLabel" style="display:none;">'+d.encode(g.name)+"</span>");j(e,function(h){i.push(h.renderHTML())});i.push("</span>");i.push("</div>");return i.join("")},focus:function(){this.keyNav.focus()},postRender:function(){var f=this,e=[];c(f.controls,function(g){c(g.controls,function(h){if(h.id){e.push(h)}})});f.keyNav=new b.ui.KeyboardNavigation({root:f.id,items:e,onCancel:function(){f.editor.focus()},excludeFromTabOrder:!f.settings.tab_focus_toolbar})},destroy:function(){var e=this;e.parent();e.keyNav.destroy();a.clear(e.id)}})})(tinymce);(function(a){var c=a.DOM,b=a.each;a.create("tinymce.ui.Toolbar:tinymce.ui.Container",{renderHTML:function(){var m=this,f="",j,k,n=m.settings,e,d,g,l;l=m.controls;for(e=0;e<l.length;e++){k=l[e];d=l[e-1];g=l[e+1];if(e===0){j="mceToolbarStart";if(k.Button){j+=" mceToolbarStartButton"}else{if(k.SplitButton){j+=" mceToolbarStartSplitButton"}else{if(k.ListBox){j+=" mceToolbarStartListBox"}}}f+=c.createHTML("td",{"class":j},c.createHTML("span",null,"<!-- IE -->"))}if(d&&k.ListBox){if(d.Button||d.SplitButton){f+=c.createHTML("td",{"class":"mceToolbarEnd"},c.createHTML("span",null,"<!-- IE -->"))}}if(c.stdMode){f+='<td style="position: relative">'+k.renderHTML()+"</td>"}else{f+="<td>"+k.renderHTML()+"</td>"}if(g&&k.ListBox){if(g.Button||g.SplitButton){f+=c.createHTML("td",{"class":"mceToolbarStart"},c.createHTML("span",null,"<!-- IE -->"))}}}j="mceToolbarEnd";if(k.Button){j+=" mceToolbarEndButton"}else{if(k.SplitButton){j+=" mceToolbarEndSplitButton"}else{if(k.ListBox){j+=" mceToolbarEndListBox"}}}f+=c.createHTML("td",{"class":j},c.createHTML("span",null,"<!-- IE -->"));return c.createHTML("table",{id:m.id,"class":"mceToolbar"+(n["class"]?" "+n["class"]:""),cellpadding:"0",cellspacing:"0",align:m.settings.align||"",role:"presentation",tabindex:"-1"},"<tbody><tr>"+f+"</tr></tbody>")}})})(tinymce);(function(b){var a=b.util.Dispatcher,c=b.each;b.create("tinymce.AddOnManager",{AddOnManager:function(){var d=this;d.items=[];d.urls={};d.lookup={};d.onAdd=new a(d)},get:function(d){if(this.lookup[d]){return this.lookup[d].instance}else{return undefined}},dependencies:function(e){var d;if(this.lookup[e]){d=this.lookup[e].dependencies}return d||[]},requireLangPack:function(e){var d=b.settings;if(d&&d.language&&d.language_load!==false){b.ScriptLoader.add(this.urls[e]+"/langs/"+d.language+".js")}},add:function(f,e,d){this.items.push(e);this.lookup[f]={instance:e,dependencies:d};this.onAdd.dispatch(this,f,e);return e},createUrl:function(d,e){if(typeof e==="object"){return e}else{return{prefix:d.prefix,resource:e,suffix:d.suffix}}},addComponents:function(f,d){var e=this.urls[f];b.each(d,function(g){b.ScriptLoader.add(e+"/"+g)})},load:function(j,f,d,h){var g=this,e=f;function i(){var k=g.dependencies(j);b.each(k,function(m){var l=g.createUrl(f,m);g.load(l.resource,l,undefined,undefined)});if(d){if(h){d.call(h)}else{d.call(b.ScriptLoader)}}}if(g.urls[j]){return}if(typeof f==="object"){e=f.prefix+f.resource+f.suffix}if(e.indexOf("/")!=0&&e.indexOf("://")==-1){e=b.baseURL+"/"+e}g.urls[j]=e.substring(0,e.lastIndexOf("/"));if(g.lookup[j]){i()}else{b.ScriptLoader.add(e,i,h)}}});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);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<o.length;l++){if(o[l]==n){o.splice(l,1);break}}if(m.activeEditor==n){m._setActive(o[0])}n.destroy();m.onRemoveEditor.dispatch(m,n);return n},execCommand:function(r,p,o){var q=this,n=q.get(o),l;switch(r){case"mceFocus":n.focus();return true;case"mceAddEditor":case"mceAddControl":if(!q.get(o)){new j.Editor(o,q.settings).render()}return true;case"mceAddFrameControl":l=o.window;l.tinyMCE=tinyMCE;l.tinymce=j;j.DOM.doc=l.document;j.DOM.win=l;n=new j.Editor(o.element_id,o);n.render();if(j.isIE){function m(){n.destroy();l.detachEvent("onunload",m);l=l.tinyMCE=l.tinymce=null}l.attachEvent("onunload",m)}o.page_window=null;return true;case"mceRemoveEditor":case"mceRemoveControl":if(n){n.remove()}return true;case"mceToggleEditor":if(!n){q.execCommand("mceAddControl",0,o);return true}if(n.isHidden()){n.show()}else{n.hide()}return true}if(q.activeEditor){return q.activeEditor.execCommand(r,p,o)}return false},execInstanceCommand:function(p,o,n,m){var l=this.get(p);if(l){return l.execCommand(o,n,m)}return false},triggerSave:function(){g(this.editors,function(l){l.save()})},addI18n:function(n,q){var l,m=this.i18n;if(!j.is(n,"string")){g(n,function(r,p){g(r,function(t,s){g(t,function(v,u){if(s==="common"){m[p+"."+u]=v}else{m[p+"."+s+"."+u]=v}})})})}else{g(q,function(r,p){m[n+"."+p]=r})}},_setActive:function(l){this.selectedInstance=this.activeEditor=l}})})(tinymce);(function(m){var n=m.DOM,j=m.dom.Event,f=m.extend,k=m.util.Dispatcher,i=m.each,a=m.isGecko,b=m.isIE,e=m.isWebKit,d=m.is,h=m.ThemeManager,c=m.PluginManager,o=m.inArray,l=m.grep,g=m.explode;m.create("tinymce.Editor",{Editor:function(r,q){var p=this;p.id=p.editorId=r;p.execCommands={};p.queryStateCommands={};p.queryValueCommands={};p.isNotDirty=false;p.plugins={};i(["onPreInit","onBeforeRenderUI","onPostRender","onInit","onRemove","onActivate","onDeactivate","onClick","onEvent","onMouseUp","onMouseDown","onDblClick","onKeyDown","onKeyUp","onKeyPress","onContextMenu","onSubmit","onReset","onPaste","onPreProcess","onPostProcess","onBeforeSetContent","onBeforeGetContent","onSetContent","onGetContent","onLoadContent","onSaveContent","onNodeChange","onChange","onBeforeExecCommand","onExecCommand","onUndo","onRedo","onVisualAid","onSetProgressState"],function(s){p[s]=new k(p)});p.settings=q=f({id:r,language:"en",docs_language:"en",theme:"simple",skin:"default",delta_width:0,delta_height:0,popup_css:"",plugins:"",document_base_url:m.documentBaseURL,add_form_submit_trigger:1,submit_patch:1,add_unload_trigger:1,convert_urls:1,relative_urls:1,remove_script_host:1,table_inline_editing:0,object_resizing:1,cleanup:1,accessibility_focus:1,custom_shortcuts:1,custom_undo_redo_keyboard_shortcuts:1,custom_undo_redo_restore_selection:1,custom_undo_redo:1,doctype:m.isIE6?'<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">':"<!DOCTYPE>",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",hidden_input:1,padd_empty_editor:1,render_ui:1,init_theme:1,force_p_newlines:1,indentation:"30px",keep_styles:1,fix_table_elements:1,inline_styles:1,convert_fonts_to_spans:true,indent:"simple",indent_before:"p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,ul,li,area,table,thead,tfoot,tbody,tr",indent_after:"p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,ul,li,area,table,thead,tfoot,tbody,tr",validate:true,entity_encoding:"named",url_converter:p.convertURL,url_converter_scope:p,ie7_compat:true},q);p.documentBaseURI=new m.util.URI(q.document_base_url||m.documentBaseURL,{base_uri:tinyMCE.baseURI});p.baseURI=m.baseURI;p.contentCSS=[];p.execCallback("setup",p)},render:function(r){var u=this,v=u.settings,x=u.id,p=m.ScriptLoader;if(!j.domLoaded){j.add(document,"init",function(){u.render()});return}tinyMCE.settings=v;if(!u.getElement()){return}if(m.isIDevice&&!m.isIOS5){return}if(!/TEXTAREA|INPUT/i.test(u.getElement().nodeName)&&v.hidden_input&&n.getParent(x,"form")){n.insertAfter(n.create("input",{type:"hidden",name:x}),x)}if(m.WindowManager){u.windowManager=new m.WindowManager(u)}if(v.encoding=="xml"){u.onGetContent.add(function(s,t){if(t.save){t.content=n.encode(t.content)}})}if(v.add_form_submit_trigger){u.onSubmit.addToTop(function(){if(u.initialized){u.save();u.isNotDirty=1}})}if(v.add_unload_trigger){u._beforeUnload=tinyMCE.onBeforeUnload.add(function(){if(u.initialized&&!u.destroyed&&!u.isHidden()){u.save({format:"raw",no_events:true})}})}m.addUnload(u.destroy,u);if(v.submit_patch){u.onBeforeRenderUI.add(function(){var s=u.getElement().form;if(!s){return}if(s._mceOldSubmit){return}if(!s.submit.nodeType&&!s.submit.length){u.formElement=s;s._mceOldSubmit=s.submit;s.submit=function(){m.triggerSave();u.isNotDirty=1;return u.formElement._mceOldSubmit(u.formElement)}}s=null})}function q(){if(v.language&&v.language_load!==false){p.add(m.baseURL+"/langs/"+v.language+".js")}if(v.theme&&v.theme.charAt(0)!="-"&&!h.urls[v.theme]){h.load(v.theme,"themes/"+v.theme+"/editor_template"+m.suffix+".js")}i(g(v.plugins),function(t){if(t&&!c.urls[t]){if(t.charAt(0)=="-"){t=t.substr(1,t.length);var s=c.dependencies(t);i(s,function(z){var y={prefix:"plugins/",resource:z,suffix:"/editor_plugin"+m.suffix+".js"};var z=c.createUrl(y,z);c.load(z.resource,z)})}else{if(t=="safari"){return}c.load(t,{prefix:"plugins/",resource:t,suffix:"/editor_plugin"+m.suffix+".js"})}}});p.loadQueue(function(){if(!u.removed){u.init()}})}q()},init:function(){var r,H=this,I=H.settings,E,A,D=H.getElement(),q,p,F,y,C,G,z,v=[];m.add(H);I.aria_label=I.aria_label||n.getAttrib(D,"aria-label",H.getLang("aria.rich_text_area"));if(I.theme){I.theme=I.theme.replace(/-/,"");q=h.get(I.theme);H.theme=new q();if(H.theme.init&&I.init_theme){H.theme.init(H,h.urls[I.theme]||m.documentBaseURL.replace(/\/$/,""))}}function B(J){var K=c.get(J),t=c.urls[J]||m.documentBaseURL.replace(/\/$/,""),s;if(K&&m.inArray(v,J)===-1){i(c.dependencies(J),function(u){B(u)});s=new K(H,t);H.plugins[J]=s;if(s.init){s.init(H,t);v.push(J)}}}i(g(I.plugins.replace(/\-/g,"")),B);if(I.popup_css!==false){if(I.popup_css){I.popup_css=H.documentBaseURI.toAbsolute(I.popup_css)}else{I.popup_css=H.baseURI.toAbsolute("themes/"+I.theme+"/skins/"+I.skin+"/dialog.css")}}if(I.popup_css_add){I.popup_css+=","+H.documentBaseURI.toAbsolute(I.popup_css_add)}H.controlManager=new m.ControlManager(H);if(I.custom_undo_redo){H.onBeforeExecCommand.add(function(t,J,u,K,s){if(J!="Undo"&&J!="Redo"&&J!="mceRepaint"&&(!s||!s.skip_undo)){H.undoManager.beforeChange()}});H.onExecCommand.add(function(t,J,u,K,s){if(J!="Undo"&&J!="Redo"&&J!="mceRepaint"&&(!s||!s.skip_undo)){H.undoManager.add()}})}H.onExecCommand.add(function(s,t){if(!/^(FontName|FontSize)$/.test(t)){H.nodeChanged()}});if(a){function x(s,t){if(!t||!t.initial){H.execCommand("mceRepaint")}}H.onUndo.add(x);H.onRedo.add(x);H.onSetContent.add(x)}H.onBeforeRenderUI.dispatch(H,H.controlManager);if(I.render_ui){E=I.width||D.style.width||D.offsetWidth;A=I.height||D.style.height||D.offsetHeight;H.orgDisplay=D.style.display;G=/^[0-9\.]+(|px)$/i;if(G.test(""+E)){E=Math.max(parseInt(E)+(q.deltaWidth||0),100)}if(G.test(""+A)){A=Math.max(parseInt(A)+(q.deltaHeight||0),100)}q=H.theme.renderUI({targetNode:D,width:E,height:A,deltaWidth:I.delta_width,deltaHeight:I.delta_height});H.editorContainer=q.editorContainer}if(document.domain&&location.hostname!=document.domain){m.relaxedDomain=document.domain}n.setStyles(q.sizeContainer||q.editorContainer,{width:E,height:A});if(I.content_css){m.each(g(I.content_css),function(s){H.contentCSS.push(H.documentBaseURI.toAbsolute(s))})}A=(q.iframeHeight||A)+(typeof(A)=="number"?(q.deltaHeight||0):"");if(A<100){A=100}H.iframeHTML=I.doctype+'<html><head xmlns="http://www.w3.org/1999/xhtml">';if(I.document_base_url!=m.documentBaseURL){H.iframeHTML+='<base href="'+H.documentBaseURI.getURI()+'" />'}if(I.ie7_compat){H.iframeHTML+='<meta http-equiv="X-UA-Compatible" content="IE=7" />'}else{H.iframeHTML+='<meta http-equiv="X-UA-Compatible" content="IE=edge" />'}H.iframeHTML+='<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />';y=I.body_id||"tinymce";if(y.indexOf("=")!=-1){y=H.getParam("body_id","","hash");y=y[H.id]||y}C=I.body_class||"";if(C.indexOf("=")!=-1){C=H.getParam("body_class","","hash");C=C[H.id]||""}H.iframeHTML+='</head><body id="'+y+'" class="mceContentBody '+C+'"><br></body></html>';if(m.relaxedDomain&&(b||(m.isOpera&&parseFloat(opera.version())<11))){F='javascript:(function(){document.open();document.domain="'+document.domain+'";var ed = window.parent.tinyMCE.get("'+H.id+'");document.write(ed.iframeHTML);document.close();ed.setupIframe();})()'}r=n.add(q.iframeContainer,"iframe",{id:H.id+"_ifr",src:F||'javascript:""',frameBorder:"0",allowTransparency:"true",title:I.aria_label,style:{width:"100%",height:A,display:"block"}});H.contentAreaContainer=q.iframeContainer;n.get(q.editorContainer).style.display=H.orgDisplay;n.get(H.id).style.display="none";n.setAttrib(H.id,"aria-hidden",true);if(!m.relaxedDomain||!F){H.setupIframe()}D=r=q=null},setupIframe:function(){var q=this,v=q.settings,x=n.get(q.id),y=q.getDoc(),u,p;if(!b||!m.relaxedDomain){if(a&&!Range.prototype.getClientRects){q.onMouseDown.add(function(t,z){if(z.target.nodeName==="HTML"){var s=q.getBody();s.blur();setTimeout(function(){s.focus()},0)}})}y.open();y.write(q.iframeHTML);y.close();if(m.relaxedDomain){y.domain=m.relaxedDomain}}p=q.getBody();p.disabled=true;if(!v.readonly){p.contentEditable=true}p.disabled=false;q.schema=new m.html.Schema(v);q.dom=new m.dom.DOMUtils(q.getDoc(),{keep_values:true,url_converter:q.convertURL,url_converter_scope:q,hex_colors:v.force_hex_style_colors,class_filter:v.class_filter,update_styles:1,fix_ie_paragraphs:1,schema:q.schema});q.parser=new m.html.DomParser(v,q.schema);if(!q.settings.allow_html_in_named_anchor){q.parser.addAttributeFilter("name",function(s,t){var A=s.length,C,z,B,D;while(A--){D=s[A];if(D.name==="a"&&D.firstChild){B=D.parent;C=D.lastChild;do{z=C.prev;B.insert(C,D);C=z}while(C)}}})}q.parser.addAttributeFilter("src,href,style",function(s,t){var z=s.length,B,D=q.dom,C,A;while(z--){B=s[z];C=B.attr(t);A="data-mce-"+t;if(!B.attributes.map[A]){if(t==="style"){B.attr(A,D.serializeStyle(D.parseStyle(C),B.name))}else{B.attr(A,q.convertURL(C,t,B.name))}}}});q.parser.addNodeFilter("script",function(s,t){var z=s.length;while(z--){s[z].attr("type","mce-text/javascript")}});q.parser.addNodeFilter("#cdata",function(s,t){var z=s.length,A;while(z--){A=s[z];A.type=8;A.name="#comment";A.value="[CDATA["+A.value+"]]"}});q.parser.addNodeFilter("p,h1,h2,h3,h4,h5,h6,div",function(t,z){var A=t.length,B,s=q.schema.getNonEmptyElements();while(A--){B=t[A];if(B.isEmpty(s)){B.empty().append(new m.html.Node("br",1)).shortEnded=true}}});q.serializer=new m.dom.Serializer(v,q.dom,q.schema);q.selection=new m.dom.Selection(q.dom,q.getWin(),q.serializer);q.formatter=new m.Formatter(this);q.formatter.register({alignleft:[{selector:"p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li",styles:{textAlign:"left"}},{selector:"img,table",collapsed:false,styles:{"float":"left"}}],aligncenter:[{selector:"p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li",styles:{textAlign:"center"}},{selector:"img",collapsed:false,styles:{display:"block",marginLeft:"auto",marginRight:"auto"}},{selector:"table",collapsed:false,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",collapsed:false,styles:{"float":"right"}}],alignfull:[{selector:"p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li",styles:{textAlign:"justify"}}],bold:[{inline:"strong",remove:"all"},{inline:"span",styles:{fontWeight:"bold"}},{inline:"b",remove:"all"}],italic:[{inline:"em",remove:"all"},{inline:"span",styles:{fontStyle:"italic"}},{inline:"i",remove:"all"}],underline:[{inline:"span",styles:{textDecoration:"underline"},exact:true},{inline:"u",remove:"all"}],strikethrough:[{inline:"span",styles:{textDecoration:"line-through"},exact:true},{inline:"strike",remove:"all"}],forecolor:{inline:"span",styles:{color:"%value"},wrap_links:false},hilitecolor:{inline:"span",styles:{backgroundColor:"%value"},wrap_links:false},fontname:{inline:"span",styles:{fontFamily:"%value"}},fontsize:{inline:"span",styles:{fontSize:"%value"}},fontsize_class:{inline:"span",attributes:{"class":"%value"}},blockquote:{block:"blockquote",wrapper:1,remove:"all"},subscript:{inline:"sub"},superscript:{inline:"sup"},link:{inline:"a",selector:"a",remove:"all",split:true,deep:true,onmatch:function(s){return true},onformat:function(z,s,t){i(t,function(B,A){q.dom.setAttrib(z,A,B)})}},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"],split:false,expand:false,deep:true}]});i("p h1 h2 h3 h4 h5 h6 div address pre div code dt dd samp".split(/\s/),function(s){q.formatter.register(s,{block:s,remove:"all"})});q.formatter.register(q.settings.formats);q.undoManager=new m.UndoManager(q);q.undoManager.onAdd.add(function(t,s){if(t.hasUndo()){return q.onChange.dispatch(q,s,t)}});q.undoManager.onUndo.add(function(t,s){return q.onUndo.dispatch(q,s,t)});q.undoManager.onRedo.add(function(t,s){return q.onRedo.dispatch(q,s,t)});q.forceBlocks=new m.ForceBlocks(q,{forced_root_block:v.forced_root_block});q.editorCommands=new m.EditorCommands(q);q.serializer.onPreProcess.add(function(s,t){return q.onPreProcess.dispatch(q,t,s)});q.serializer.onPostProcess.add(function(s,t){return q.onPostProcess.dispatch(q,t,s)});q.onPreInit.dispatch(q);if(!v.gecko_spellcheck){q.getBody().spellcheck=0}if(!v.readonly){q._addEvents()}q.controlManager.onPostRender.dispatch(q,q.controlManager);q.onPostRender.dispatch(q);q.quirks=new m.util.Quirks(this);if(v.directionality){q.getBody().dir=v.directionality}if(v.nowrap){q.getBody().style.whiteSpace="nowrap"}if(v.handle_node_change_callback){q.onNodeChange.add(function(t,s,z){q.execCallback("handle_node_change_callback",q.id,z,-1,-1,true,q.selection.isCollapsed())})}if(v.save_callback){q.onSaveContent.add(function(s,z){var t=q.execCallback("save_callback",q.id,z.content,q.getBody());if(t){z.content=t}})}if(v.onchange_callback){q.onChange.add(function(t,s){q.execCallback("onchange_callback",q,s)})}if(v.protect){q.onBeforeSetContent.add(function(s,t){if(v.protect){i(v.protect,function(z){t.content=t.content.replace(z,function(A){return"<!--mce:protected "+escape(A)+"-->"})})}})}if(v.convert_newlines_to_brs){q.onBeforeSetContent.add(function(s,t){if(t.initial){t.content=t.content.replace(/\r?\n/g,"<br />")}})}if(v.preformatted){q.onPostProcess.add(function(s,t){t.content=t.content.replace(/^\s*<pre.*?>/,"");t.content=t.content.replace(/<\/pre>\s*$/,"");if(t.set){t.content='<pre class="mceItemHidden">'+t.content+"</pre>"}})}if(v.verify_css_classes){q.serializer.attribValueFilter=function(B,z){var A,t;if(B=="class"){if(!q.classesRE){t=q.dom.getClasses();if(t.length>0){A="";i(t,function(s){A+=(A?"|":"")+s["class"]});q.classesRE=new RegExp("("+A+")","gi")}}return !q.classesRE||/(\bmceItem\w+\b|\bmceTemp\w+\b)/g.test(z)||q.classesRE.test(z)?z:""}return z}}if(v.cleanup_callback){q.onBeforeSetContent.add(function(s,t){t.content=q.execCallback("cleanup_callback","insert_to_editor",t.content,t)});q.onPreProcess.add(function(s,t){if(t.set){q.execCallback("cleanup_callback","insert_to_editor_dom",t.node,t)}if(t.get){q.execCallback("cleanup_callback","get_from_editor_dom",t.node,t)}});q.onPostProcess.add(function(s,t){if(t.set){t.content=q.execCallback("cleanup_callback","insert_to_editor",t.content,t)}if(t.get){t.content=q.execCallback("cleanup_callback","get_from_editor",t.content,t)}})}if(v.save_callback){q.onGetContent.add(function(s,t){if(t.save){t.content=q.execCallback("save_callback",q.id,t.content,q.getBody())}})}if(v.handle_event_callback){q.onEvent.add(function(s,t,z){if(q.execCallback("handle_event_callback",t,s,z)===false){j.cancel(t)}})}q.onSetContent.add(function(){q.addVisual(q.getBody())});if(v.padd_empty_editor){q.onPostProcess.add(function(s,t){t.content=t.content.replace(/^(<p[^>]*>(&nbsp;|&#160;|\s|\u00a0|)<\/p>[\r\n]*|<br \/>[\r\n]*)$/,"")})}if(a){function r(s,t){i(s.dom.select("a"),function(A){var z=A.parentNode;if(s.dom.isBlock(z)&&z.lastChild===A){s.dom.add(z,"br",{"data-mce-bogus":1})}})}q.onExecCommand.add(function(s,t){if(t==="CreateLink"){r(s)}});q.onSetContent.add(q.selection.onSetContent.add(r))}q.load({initial:true,format:"html"});q.startContent=q.getContent({format:"raw"});q.undoManager.add();q.initialized=true;q.onInit.dispatch(q);q.execCallback("setupcontent_callback",q.id,q.getBody(),q.getDoc());q.execCallback("init_instance_callback",q);q.focus(true);q.nodeChanged({initial:1});i(q.contentCSS,function(s){q.dom.loadCSS(s)});if(v.auto_focus){setTimeout(function(){var s=m.get(v.auto_focus);s.selection.select(s.getBody(),1);s.selection.collapse(1);s.getBody().focus();s.getWin().focus()},100)}x=null},focus:function(u){var y,q=this,s=q.selection,x=q.settings.content_editable,r,p,v=q.getDoc();if(!u){r=s.getRng();if(r.item){p=r.item(0)}q._refreshContentEditable();s.normalize();if(!x){q.getWin().focus()}if(m.isGecko){q.getBody().focus()}if(p&&p.ownerDocument==v){r=v.body.createControlRange();r.addElement(p);r.select()}}if(m.activeEditor!=q){if((y=m.activeEditor)!=null){y.onDeactivate.dispatch(y,q)}q.onActivate.dispatch(q,y)}m._setActive(q)},execCallback:function(u){var p=this,r=p.settings[u],q;if(!r){return}if(p.callbackLookup&&(q=p.callbackLookup[u])){r=q.func;q=q.scope}if(d(r,"string")){q=r.replace(/\.\w+$/,"");q=q?m.resolve(q):0;r=m.resolve(r);p.callbackLookup=p.callbackLookup||{};p.callbackLookup[u]={func:r,scope:q}}return r.apply(q||p,Array.prototype.slice.call(arguments,1))},translate:function(p){var r=this.settings.language||"en",q=m.i18n;if(!p){return""}return q[r+"."+p]||p.replace(/{\#([^}]+)\}/g,function(t,s){return q[r+"."+s]||"{#"+s+"}"})},getLang:function(q,p){return m.i18n[(this.settings.language||"en")+"."+q]||(d(p)?p:"{#"+q+"}")},getParam:function(u,r,p){var s=m.trim,q=d(this.settings[u])?this.settings[u]:r,t;if(p==="hash"){t={};if(d(q,"string")){i(q.indexOf("=")>0?q.split(/[;,](?![^=;,]*(?:[;,]|$))/):q.split(","),function(x){x=x.split("=");if(x.length>1){t[s(x[0])]=s(x[1])}else{t[s(x[0])]=s(x)}})}else{t=q}return t}return q},nodeChanged:function(r){var p=this,q=p.selection,u=q.getStart()||p.getBody();if(p.initialized){r=r||{};u=b&&u.ownerDocument!=p.getDoc()?p.getBody():u;r.parents=[];p.dom.getParent(u,function(s){if(s.nodeName=="BODY"){return true}r.parents.push(s)});p.onNodeChange.dispatch(p,r?r.controlManager||p.controlManager:p.controlManager,u,q.isCollapsed(),r)}},addButton:function(r,q){var p=this;p.buttons=p.buttons||{};p.buttons[r]=q},addCommand:function(p,r,q){this.execCommands[p]={func:r,scope:q||this}},addQueryStateHandler:function(p,r,q){this.queryStateCommands[p]={func:r,scope:q||this}},addQueryValueHandler:function(p,r,q){this.queryValueCommands[p]={func:r,scope:q||this}},addShortcut:function(r,u,p,s){var q=this,v;if(!q.settings.custom_shortcuts){return false}q.shortcuts=q.shortcuts||{};if(d(p,"string")){v=p;p=function(){q.execCommand(v,false,null)}}if(d(p,"object")){v=p;p=function(){q.execCommand(v[0],v[1],v[2])}}i(g(r),function(t){var x={func:p,scope:s||this,desc:u,alt:false,ctrl:false,shift:false};i(g(t,"+"),function(y){switch(y){case"alt":case"ctrl":case"shift":x[y]=true;break;default:x.charCode=y.charCodeAt(0);x.keyCode=y.toUpperCase().charCodeAt(0)}});q.shortcuts[(x.ctrl?"ctrl":"")+","+(x.alt?"alt":"")+","+(x.shift?"shift":"")+","+x.keyCode]=x});return true},execCommand:function(x,v,z,p){var r=this,u=0,y,q;if(!/^(mceAddUndoLevel|mceEndUndoLevel|mceBeginUndoLevel|mceRepaint|SelectAll)$/.test(x)&&(!p||!p.skip_focus)){r.focus()}y={};r.onBeforeExecCommand.dispatch(r,x,v,z,y);if(y.terminate){return false}if(r.execCallback("execcommand_callback",r.id,r.selection.getNode(),x,v,z)){r.onExecCommand.dispatch(r,x,v,z,p);return true}if(y=r.execCommands[x]){q=y.func.call(y.scope,v,z);if(q!==true){r.onExecCommand.dispatch(r,x,v,z,p);return q}}i(r.plugins,function(s){if(s.execCommand&&s.execCommand(x,v,z)){r.onExecCommand.dispatch(r,x,v,z,p);u=1;return false}});if(u){return true}if(r.theme&&r.theme.execCommand&&r.theme.execCommand(x,v,z)){r.onExecCommand.dispatch(r,x,v,z,p);return true}if(r.editorCommands.execCommand(x,v,z)){r.onExecCommand.dispatch(r,x,v,z,p);return true}r.getDoc().execCommand(x,v,z);r.onExecCommand.dispatch(r,x,v,z,p)},queryCommandState:function(u){var q=this,v,r;if(q._isHidden()){return}if(v=q.queryStateCommands[u]){r=v.func.call(v.scope);if(r!==true){return r}}v=q.editorCommands.queryCommandState(u);if(v!==-1){return v}try{return this.getDoc().queryCommandState(u)}catch(p){}},queryCommandValue:function(v){var q=this,u,r;if(q._isHidden()){return}if(u=q.queryValueCommands[v]){r=u.func.call(u.scope);if(r!==true){return r}}u=q.editorCommands.queryCommandValue(v);if(d(u)){return u}try{return this.getDoc().queryCommandValue(v)}catch(p){}},show:function(){var p=this;n.show(p.getContainer());n.hide(p.id);p.load()},hide:function(){var p=this,q=p.getDoc();if(b&&q){q.execCommand("SelectAll")}p.save();n.hide(p.getContainer());n.setStyle(p.id,"display",p.orgDisplay)},isHidden:function(){return !n.isHidden(this.id)},setProgressState:function(p,q,r){this.onSetProgressState.dispatch(this,p,q,r);return p},load:function(s){var p=this,r=p.getElement(),q;if(r){s=s||{};s.load=true;q=p.setContent(d(r.value)?r.value:r.innerHTML,s);s.element=r;if(!s.no_events){p.onLoadContent.dispatch(p,s)}s.element=r=null;return q}},save:function(u){var p=this,s=p.getElement(),q,r;if(!s||!p.initialized){return}u=u||{};u.save=true;if(!u.no_events){p.undoManager.typing=false;p.undoManager.add()}u.element=s;q=u.content=p.getContent(u);if(!u.no_events){p.onSaveContent.dispatch(p,u)}q=u.content;if(!/TEXTAREA|INPUT/i.test(s.nodeName)){s.innerHTML=q;if(r=n.getParent(p.id,"form")){i(r.elements,function(t){if(t.name==p.id){t.value=q;return false}})}}else{s.value=q}u.element=s=null;return q},setContent:function(u,s){var r=this,q,p=r.getBody(),t;s=s||{};s.format=s.format||"html";s.set=true;s.content=u;if(!s.no_events){r.onBeforeSetContent.dispatch(r,s)}u=s.content;if(!m.isIE&&(u.length===0||/^\s+$/.test(u))){t=r.settings.forced_root_block;if(t){u="<"+t+'><br data-mce-bogus="1"></'+t+">"}else{u='<br data-mce-bogus="1">'}p.innerHTML=u;r.selection.select(p,true);r.selection.collapse(true);return}if(s.format!=="raw"){u=new m.html.Serializer({},r.schema).serialize(r.parser.parse(u))}s.content=m.trim(u);r.dom.setHTML(p,s.content);if(!s.no_events){r.onSetContent.dispatch(r,s)}r.selection.normalize();return s.content},getContent:function(q){var p=this,r;q=q||{};q.format=q.format||"html";q.get=true;if(!q.no_events){p.onBeforeGetContent.dispatch(p,q)}if(q.format=="raw"){r=p.getBody().innerHTML}else{r=p.serializer.serialize(p.getBody(),q)}q.content=m.trim(r);if(!q.no_events){p.onGetContent.dispatch(p,q)}return q.content},isDirty:function(){var p=this;return m.trim(p.startContent)!=m.trim(p.getContent({format:"raw",no_events:1}))&&!p.isNotDirty},getContainer:function(){var p=this;if(!p.container){p.container=n.get(p.editorContainer||p.id+"_parent")}return p.container},getContentAreaContainer:function(){return this.contentAreaContainer},getElement:function(){return n.get(this.settings.content_element||this.id)},getWin:function(){var p=this,q;if(!p.contentWindow){q=n.get(p.id+"_ifr");if(q){p.contentWindow=q.contentWindow}}return p.contentWindow},getDoc:function(){var q=this,p;if(!q.contentDocument){p=q.getWin();if(p){q.contentDocument=p.document}}return q.contentDocument},getBody:function(){return this.bodyElement||this.getDoc().body},convertURL:function(p,x,v){var q=this,r=q.settings;if(r.urlconverter_callback){return q.execCallback("urlconverter_callback",p,v,true,x)}if(!r.convert_urls||(v&&v.nodeName=="LINK")||p.indexOf("file:")===0){return p}if(r.relative_urls){return q.documentBaseURI.toRelative(p)}p=q.documentBaseURI.toAbsolute(p,r.remove_script_host);return p},addVisual:function(r){var p=this,q=p.settings;r=r||p.getBody();if(!d(p.hasVisual)){p.hasVisual=q.visual}i(p.dom.select("table,a",r),function(t){var s;switch(t.nodeName){case"TABLE":s=p.dom.getAttrib(t,"border");if(!s||s=="0"){if(p.hasVisual){p.dom.addClass(t,q.visual_table_class)}else{p.dom.removeClass(t,q.visual_table_class)}}return;case"A":s=p.dom.getAttrib(t,"name");if(s){if(p.hasVisual){p.dom.addClass(t,"mceItemAnchor")}else{p.dom.removeClass(t,"mceItemAnchor")}}return}});p.onVisualAid.dispatch(p,r,p.hasVisual)},remove:function(){var p=this,q=p.getContainer();p.removed=1;p.hide();p.execCallback("remove_instance_callback",p);p.onRemove.dispatch(p);p.onExecCommand.listeners=[];m.remove(p);n.remove(q)},destroy:function(q){var p=this;if(p.destroyed){return}if(!q){m.removeUnload(p.destroy);tinyMCE.onBeforeUnload.remove(p._beforeUnload);if(p.theme&&p.theme.destroy){p.theme.destroy()}p.controlManager.destroy();p.selection.destroy();p.dom.destroy();if(!p.settings.content_editable){j.clear(p.getWin());j.clear(p.getDoc())}j.clear(p.getBody());j.clear(p.formElement)}if(p.formElement){p.formElement.submit=p.formElement._mceOldSubmit;p.formElement._mceOldSubmit=null}p.contentAreaContainer=p.formElement=p.container=p.settings.content_element=p.bodyElement=p.contentDocument=p.contentWindow=null;if(p.selection){p.selection=p.selection.win=p.selection.dom=p.selection.dom.doc=null}p.destroyed=1},_addEvents:function(){var B=this,r,C=B.settings,q=B.dom,x={mouseup:"onMouseUp",mousedown:"onMouseDown",click:"onClick",keyup:"onKeyUp",keydown:"onKeyDown",keypress:"onKeyPress",submit:"onSubmit",reset:"onReset",contextmenu:"onContextMenu",dblclick:"onDblClick",paste:"onPaste"};function p(t,D){var s=t.type;if(B.removed){return}if(B.onEvent.dispatch(B,t,D)!==false){B[x[t.fakeType||t.type]].dispatch(B,t,D)}}i(x,function(t,s){switch(s){case"contextmenu":q.bind(B.getDoc(),s,p);break;case"paste":q.bind(B.getBody(),s,function(D){p(D)});break;case"submit":case"reset":q.bind(B.getElement().form||n.getParent(B.id,"form"),s,p);break;default:q.bind(C.content_editable?B.getBody():B.getDoc(),s,p)}});q.bind(C.content_editable?B.getBody():(a?B.getDoc():B.getWin()),"focus",function(s){B.focus(true)});if(m.isGecko){q.bind(B.getDoc(),"DOMNodeInserted",function(t){var s;t=t.target;if(t.nodeType===1&&t.nodeName==="IMG"&&(s=t.getAttribute("data-mce-src"))){t.src=B.documentBaseURI.toAbsolute(s)}})}if(a){function u(){var E=this,G=E.getDoc(),F=E.settings;if(a&&!F.readonly){E._refreshContentEditable();try{G.execCommand("styleWithCSS",0,false)}catch(D){if(!E._isHidden()){try{G.execCommand("useCSS",0,true)}catch(D){}}}if(!F.table_inline_editing){try{G.execCommand("enableInlineTableEditing",false,false)}catch(D){}}if(!F.object_resizing){try{G.execCommand("enableObjectResizing",false,false)}catch(D){}}}}B.onBeforeExecCommand.add(u);B.onMouseDown.add(u)}B.onClick.add(function(s,t){t=t.target;if(m.isWebKit&&t.nodeName=="IMG"){B.selection.getSel().setBaseAndExtent(t,0,t,1)}if(t.nodeName=="A"&&q.hasClass(t,"mceItemAnchor")){B.selection.select(t)}B.nodeChanged()});B.onMouseUp.add(B.nodeChanged);B.onKeyUp.add(function(s,t){var D=t.keyCode;if((D>=33&&D<=36)||(D>=37&&D<=40)||D==13||D==45||D==46||D==8||(m.isMac&&(D==91||D==93))||t.ctrlKey){B.nodeChanged()}});B.onKeyDown.add(function(t,D){if(D.keyCode!=8){return}var F=t.selection.getRng().startContainer;var E=t.selection.getRng().startOffset;while(F&&F.nodeType&&F.nodeType!=1&&F.parentNode){F=F.parentNode}if(F&&F.parentNode&&F.parentNode.tagName==="BLOCKQUOTE"&&F.parentNode.firstChild==F&&E==0){t.formatter.toggle("blockquote",null,F.parentNode);var s=t.selection.getRng();s.setStart(F,0);s.setEnd(F,0);t.selection.setRng(s);t.selection.collapse(false)}});B.onReset.add(function(){B.setContent(B.startContent,{format:"raw"})});if(C.custom_shortcuts){if(C.custom_undo_redo_keyboard_shortcuts){B.addShortcut("ctrl+z",B.getLang("undo_desc"),"Undo");B.addShortcut("ctrl+y",B.getLang("redo_desc"),"Redo")}B.addShortcut("ctrl+b",B.getLang("bold_desc"),"Bold");B.addShortcut("ctrl+i",B.getLang("italic_desc"),"Italic");B.addShortcut("ctrl+u",B.getLang("underline_desc"),"Underline");for(r=1;r<=6;r++){B.addShortcut("ctrl+"+r,"",["FormatBlock",false,"h"+r])}B.addShortcut("ctrl+7","",["FormatBlock",false,"p"]);B.addShortcut("ctrl+8","",["FormatBlock",false,"div"]);B.addShortcut("ctrl+9","",["FormatBlock",false,"address"]);function v(t){var s=null;if(!t.altKey&&!t.ctrlKey&&!t.metaKey){return s}i(B.shortcuts,function(D){if(m.isMac&&D.ctrl!=t.metaKey){return}else{if(!m.isMac&&D.ctrl!=t.ctrlKey){return}}if(D.alt!=t.altKey){return}if(D.shift!=t.shiftKey){return}if(t.keyCode==D.keyCode||(t.charCode&&t.charCode==D.charCode)){s=D;return false}});return s}B.onKeyUp.add(function(s,t){var D=v(t);if(D){return j.cancel(t)}});B.onKeyPress.add(function(s,t){var D=v(t);if(D){return j.cancel(t)}});B.onKeyDown.add(function(s,t){var D=v(t);if(D){D.func.call(D.scope);return j.cancel(t)}})}if(m.isIE){q.bind(B.getDoc(),"controlselect",function(D){var t=B.resizeInfo,s;D=D.target;if(D.nodeName!=="IMG"){return}if(t){q.unbind(t.node,t.ev,t.cb)}if(!q.hasClass(D,"mceItemNoResize")){ev="resizeend";s=q.bind(D,ev,function(F){var E;F=F.target;if(E=q.getStyle(F,"width")){q.setAttrib(F,"width",E.replace(/[^0-9%]+/g,""));q.setStyle(F,"width","")}if(E=q.getStyle(F,"height")){q.setAttrib(F,"height",E.replace(/[^0-9%]+/g,""));q.setStyle(F,"height","")}})}else{ev="resizestart";s=q.bind(D,"resizestart",j.cancel,j)}t=B.resizeInfo={node:D,ev:ev,cb:s}})}if(m.isOpera){B.onClick.add(function(s,t){j.prevent(t)})}if(C.custom_undo_redo){function y(){B.undoManager.typing=false;B.undoManager.add()}q.bind(B.getDoc(),"focusout",function(s){if(!B.removed&&B.undoManager.typing){y()}});B.dom.bind(B.dom.getRoot(),"dragend",function(s){y()});B.onKeyUp.add(function(s,D){var t=D.keyCode;if((t>=33&&t<=36)||(t>=37&&t<=40)||t==13||t==45||D.ctrlKey){y()}});B.onKeyDown.add(function(s,E){var D=E.keyCode,t;if(D==8){t=B.getDoc().selection;if(t&&t.createRange&&t.createRange().item){B.undoManager.beforeChange();s.dom.remove(t.createRange().item(0));y();return j.cancel(E)}}if((D>=33&&D<=36)||(D>=37&&D<=40)||D==13||D==45){if(m.isIE&&D==13){B.undoManager.beforeChange()}if(B.undoManager.typing){y()}return}if((D<16||D>20)&&D!=224&&D!=91&&!B.undoManager.typing){B.undoManager.beforeChange();B.undoManager.typing=true;B.undoManager.add()}});B.onMouseDown.add(function(){if(B.undoManager.typing){y()}})}if(m.isWebKit){q.bind(B.getDoc(),"selectionchange",function(){if(B.selectionTimer){clearTimeout(B.selectionTimer);B.selectionTimer=0}B.selectionTimer=window.setTimeout(function(){B.nodeChanged()},50)})}if(m.isGecko){function A(){var s=B.dom.getAttribs(B.selection.getStart().cloneNode(false));return function(){var t=B.selection.getStart();if(t!==B.getBody()){B.dom.removeAllAttribs(t);i(s,function(D){t.setAttributeNode(D.cloneNode(true))})}}}function z(){var t=B.selection;return !t.isCollapsed()&&t.getStart()!=t.getEnd()}B.onKeyPress.add(function(s,D){var t;if((D.keyCode==8||D.keyCode==46)&&z()){t=A();B.getDoc().execCommand("delete",false,null);t();return j.cancel(D)}});B.dom.bind(B.getDoc(),"cut",function(t){var s;if(z()){s=A();B.onKeyUp.addToTop(j.cancel,j);setTimeout(function(){s();B.onKeyUp.remove(j.cancel,j)},0)}})}},_refreshContentEditable:function(){var q=this,p,r;if(q._isHidden()){p=q.getBody();r=p.parentNode;r.removeChild(p);r.appendChild(p);p.focus()}},_isHidden:function(){var p;if(!a){return 0}p=this.selection.getSel();return(!p||!p.rangeCount||p.rangeCount==0)}})})(tinymce);(function(c){var d=c.each,e,a=true,b=false;c.EditorCommands=function(n){var m=n.dom,p=n.selection,j={state:{},exec:{},value:{}},k=n.settings,q=n.formatter,o;function r(z,y,x){var v;z=z.toLowerCase();if(v=j.exec[z]){v(z,y,x);return a}return b}function l(x){var v;x=x.toLowerCase();if(v=j.state[x]){return v(x)}return -1}function h(x){var v;x=x.toLowerCase();if(v=j.value[x]){return v(x)}return b}function u(v,x){x=x||"exec";d(v,function(z,y){d(y.toLowerCase().split(","),function(A){j[x][A]=z})})}c.extend(this,{execCommand:r,queryCommandState:l,queryCommandValue:h,addCommands:u});function f(y,x,v){if(x===e){x=b}if(v===e){v=null}return n.getDoc().execCommand(y,x,v)}function t(v){return q.match(v)}function s(v,x){q.toggle(v,x?{value:x}:e)}function i(v){o=p.getBookmark(v)}function g(){p.moveToBookmark(o)}u({"mceResetDesignMode,mceBeginUndoLevel":function(){},"mceEndUndoLevel,mceAddUndoLevel":function(){n.undoManager.add()},"Cut,Copy,Paste":function(z){var y=n.getDoc(),v;try{f(z)}catch(x){v=a}if(v||!y.queryCommandSupported(z)){if(c.isGecko){n.windowManager.confirm(n.getLang("clipboard_msg"),function(A){if(A){open("http://www.mozilla.org/editor/midasdemo/securityprefs.html","_blank")}})}else{n.windowManager.alert(n.getLang("clipboard_no_support"))}}},unlink:function(v){if(p.isCollapsed()){p.select(p.getNode())}f(v);p.collapse(b)},"JustifyLeft,JustifyCenter,JustifyRight,JustifyFull":function(v){var x=v.substring(7);d("left,center,right,full".split(","),function(y){if(x!=y){q.remove("align"+y)}});s("align"+x);r("mceRepaint")},"InsertUnorderedList,InsertOrderedList":function(y){var v,x;f(y);v=m.getParent(p.getNode(),"ol,ul");if(v){x=v.parentNode;if(/^(H[1-6]|P|ADDRESS|PRE)$/.test(x.nodeName)){i();m.split(x,v);g()}}},"Bold,Italic,Underline,Strikethrough,Superscript,Subscript":function(v){s(v)},"ForeColor,HiliteColor,FontName":function(y,x,v){s(y,v)},FontSize:function(z,y,x){var v,A;if(x>=1&&x<=7){A=c.explode(k.font_size_style_values);v=c.explode(k.font_size_classes);if(v){x=v[x-1]||x}else{x=A[x-1]||x}}s(z,x)},RemoveFormat:function(v){q.remove(v)},mceBlockQuote:function(v){s("blockquote")},FormatBlock:function(y,x,v){return s(v||"p")},mceCleanup:function(){var v=p.getBookmark();n.setContent(n.getContent({cleanup:a}),{cleanup:a});p.moveToBookmark(v)},mceRemoveNode:function(z,y,x){var v=x||p.getNode();if(v!=n.getBody()){i();n.dom.remove(v,a);g()}},mceSelectNodeDepth:function(z,y,x){var v=0;m.getParent(p.getNode(),function(A){if(A.nodeType==1&&v++==x){p.select(A);return b}},n.getBody())},mceSelectNode:function(y,x,v){p.select(v)},mceInsertContent:function(B,I,K){var y,J,E,z,F,G,D,C,L,x,A,M,v,H;y=n.parser;J=new c.html.Serializer({},n.schema);v='<span id="mce_marker" data-mce-type="bookmark">\uFEFF</span>';G={content:K,format:"html"};p.onBeforeSetContent.dispatch(p,G);K=G.content;if(K.indexOf("{$caret}")==-1){K+="{$caret}"}K=K.replace(/\{\$caret\}/,v);if(!p.isCollapsed()){n.getDoc().execCommand("Delete",false,null)}E=p.getNode();G={context:E.nodeName.toLowerCase()};F=y.parse(K,G);A=F.lastChild;if(A.attr("id")=="mce_marker"){D=A;for(A=A.prev;A;A=A.walk(true)){if(A.type==3||!m.isBlock(A.name)){A.parent.insert(D,A,A.name==="br");break}}}if(!G.invalid){K=J.serialize(F);A=E.firstChild;M=E.lastChild;if(!A||(A===M&&A.nodeName==="BR")){m.setHTML(E,K)}else{p.setContent(K)}}else{p.setContent(v);E=n.selection.getNode();z=n.getBody();if(E.nodeType==9){E=A=z}else{A=E}while(A!==z){E=A;A=A.parentNode}K=E==z?z.innerHTML:m.getOuterHTML(E);K=J.serialize(y.parse(K.replace(/<span (id="mce_marker"|id=mce_marker).+?<\/span>/i,function(){return J.serialize(F)})));if(E==z){m.setHTML(z,K)}else{m.setOuterHTML(E,K)}}D=m.get("mce_marker");C=m.getRect(D);L=m.getViewPort(n.getWin());if((C.y+C.h>L.y+L.h||C.y<L.y)||(C.x>L.x+L.w||C.x<L.x)){H=c.isIE?n.getDoc().documentElement:n.getBody();H.scrollLeft=C.x;H.scrollTop=C.y-L.h+25}x=m.createRng();A=D.previousSibling;if(A&&A.nodeType==3){x.setStart(A,A.nodeValue.length)}else{x.setStartBefore(D);x.setEndBefore(D)}m.remove(D);p.setRng(x);p.onSetContent.dispatch(p,G);n.addVisual()},mceInsertRawHTML:function(y,x,v){p.setContent("tiny_mce_marker");n.setContent(n.getContent().replace(/tiny_mce_marker/g,function(){return v}))},mceSetContent:function(y,x,v){n.setContent(v)},"Indent,Outdent":function(z){var x,v,y;x=k.indentation;v=/[a-z%]+$/i.exec(x);x=parseInt(x);if(!l("InsertUnorderedList")&&!l("InsertOrderedList")){d(p.getSelectedBlocks(),function(A){if(z=="outdent"){y=Math.max(0,parseInt(A.style.paddingLeft||0)-x);m.setStyle(A,"paddingLeft",y?y+v:"")}else{m.setStyle(A,"paddingLeft",(parseInt(A.style.paddingLeft||0)+x)+v)}})}else{f(z)}},mceRepaint:function(){var x;if(c.isGecko){try{i(a);if(p.getSel()){p.getSel().selectAllChildren(n.getBody())}p.collapse(a);g()}catch(v){}}},mceToggleFormat:function(y,x,v){q.toggle(v)},InsertHorizontalRule:function(){n.execCommand("mceInsertContent",false,"<hr />")},mceToggleVisualAid:function(){n.hasVisual=!n.hasVisual;n.addVisual()},mceReplaceContent:function(y,x,v){n.execCommand("mceInsertContent",false,v.replace(/\{\$selection\}/g,p.getContent({format:"text"})))},mceInsertLink:function(z,y,x){var v;if(typeof(x)=="string"){x={href:x}}v=m.getParent(p.getNode(),"a");x.href=x.href.replace(" ","%20");if(!v||!x.href){q.remove("link")}if(x.href){q.apply("link",x,v)}},selectAll:function(){var x=m.getRoot(),v=m.createRng();v.setStart(x,0);v.setEnd(x,x.childNodes.length);n.selection.setRng(v)}});u({"JustifyLeft,JustifyCenter,JustifyRight,JustifyFull":function(v){return t("align"+v.substring(7))},"Bold,Italic,Underline,Strikethrough,Superscript,Subscript":function(v){return t(v)},mceBlockQuote:function(){return t("blockquote")},Outdent:function(){var v;if(k.inline_styles){if((v=m.getParent(p.getStart(),m.isBlock))&&parseInt(v.style.paddingLeft)>0){return a}if((v=m.getParent(p.getEnd(),m.isBlock))&&parseInt(v.style.paddingLeft)>0){return a}}return l("InsertUnorderedList")||l("InsertOrderedList")||(!k.inline_styles&&!!m.getParent(p.getNode(),"BLOCKQUOTE"))},"InsertUnorderedList,InsertOrderedList":function(v){return m.getParent(p.getNode(),v=="insertunorderedlist"?"UL":"OL")}},"state");u({"FontSize,FontName":function(y){var x=0,v;if(v=m.getParent(p.getNode(),"span")){if(y=="fontsize"){x=v.style.fontSize}else{x=v.style.fontFamily.replace(/, /g,",").replace(/[\'\"]/g,"").toLowerCase()}}return x}},"value");if(k.custom_undo_redo){u({Undo:function(){n.undoManager.undo()},Redo:function(){n.undoManager.redo()}})}}})(tinymce);(function(b){var a=b.util.Dispatcher;b.UndoManager=function(f){var d,e=0,h=[],c;function g(){return b.trim(f.getContent({format:"raw",no_events:1}))}return d={typing:false,onAdd:new a(d),onUndo:new a(d),onRedo:new a(d),beforeChange:function(){c=f.selection.getBookmark(2,true)},add:function(m){var j,k=f.settings,l;m=m||{};m.content=g();l=h[e];if(l&&l.content==m.content){return null}if(h[e]){h[e].beforeBookmark=c}if(k.custom_undo_redo_levels){if(h.length>k.custom_undo_redo_levels){for(j=0;j<h.length-1;j++){h[j]=h[j+1]}h.length--;e=h.length}}m.bookmark=f.selection.getBookmark(2,true);if(e<h.length-1){h.length=e+1}h.push(m);e=h.length-1;d.onAdd.dispatch(d,m);f.isNotDirty=0;return m},undo:function(){var k,j;if(d.typing){d.add();d.typing=false}if(e>0){k=h[--e];f.setContent(k.content,{format:"raw"});f.selection.moveToBookmark(k.beforeBookmark);d.onUndo.dispatch(d,k)}return k},redo:function(){var i;if(e<h.length-1){i=h[++e];f.setContent(i.content,{format:"raw"});f.selection.moveToBookmark(i.bookmark);d.onRedo.dispatch(d,i)}return i},clear:function(){h=[];e=0;d.typing=false},hasUndo:function(){return e>0||this.typing},hasRedo:function(){return e<h.length-1&&!this.typing}}}})(tinymce);(function(l){var j=l.dom.Event,c=l.isIE,a=l.isGecko,b=l.isOpera,i=l.each,h=l.extend,d=true,g=false;function k(o){var p,n,m;do{if(/^(SPAN|STRONG|B|EM|I|FONT|STRIKE|U)$/.test(o.nodeName)){if(p){n=o.cloneNode(false);n.appendChild(p);p=n}else{p=m=o.cloneNode(false)}p.removeAttribute("id")}}while(o=o.parentNode);if(p){return{wrapper:p,inner:m}}}function f(n,o){var m=o.ownerDocument.createRange();m.setStart(n.endContainer,n.endOffset);m.setEndAfter(o);return m.cloneContents().textContent.length==0}function e(o,q,m){var n,p;if(q.isEmpty(m)){n=q.getParent(m,"ul,ol");if(!q.getParent(n.parentNode,"ul,ol")){q.split(n,m);p=q.create("p",0,'<br data-mce-bogus="1" />');q.replace(p,m);o.select(p,1)}return g}return d}l.create("tinymce.ForceBlocks",{ForceBlocks:function(m){var n=this,o=m.settings,p;n.editor=m;n.dom=m.dom;p=(o.forced_root_block||"p").toLowerCase();o.element=p.toUpperCase();m.onPreInit.add(n.setup,n)},setup:function(){var n=this,m=n.editor,p=m.settings,u=m.dom,o=m.selection,q=m.schema.getBlockElements();if(p.forced_root_block){function v(){var y=o.getStart(),t=m.getBody(),s,z,D,F,E,x,A,B=-16777215;if(!y||y.nodeType!==1){return}while(y!=t){if(q[y.nodeName]){return}y=y.parentNode}s=o.getRng();if(s.setStart){z=s.startContainer;D=s.startOffset;F=s.endContainer;E=s.endOffset}else{if(s.item){s=m.getDoc().body.createTextRange();s.moveToElementText(s.item(0))}tmpRng=s.duplicate();tmpRng.collapse(true);D=tmpRng.move("character",B)*-1;if(!tmpRng.collapsed){tmpRng=s.duplicate();tmpRng.collapse(false);E=(tmpRng.move("character",B)*-1)-D}}for(y=t.firstChild;y;y){if(y.nodeType===3||(y.nodeType==1&&!q[y.nodeName])){if(!x){x=u.create(p.forced_root_block);y.parentNode.insertBefore(x,y)}A=y;y=y.nextSibling;x.appendChild(A)}else{x=null;y=y.nextSibling}}if(s.setStart){s.setStart(z,D);s.setEnd(F,E);o.setRng(s)}else{try{s=m.getDoc().body.createTextRange();s.moveToElementText(t);s.collapse(true);s.moveStart("character",D);if(E>0){s.moveEnd("character",E)}s.select()}catch(C){}}m.nodeChanged()}m.onKeyUp.add(v);m.onClick.add(v)}if(p.force_br_newlines){if(c){m.onKeyPress.add(function(s,t){var x;if(t.keyCode==13&&o.getNode().nodeName!="LI"){o.setContent('<br id="__" /> ',{format:"raw"});x=u.get("__");x.removeAttribute("id");o.select(x);o.collapse();return j.cancel(t)}})}}if(p.force_p_newlines){if(!c){m.onKeyPress.add(function(s,t){if(t.keyCode==13&&!t.shiftKey&&!n.insertPara(t)){j.cancel(t)}})}else{l.addUnload(function(){n._previousFormats=0});m.onKeyPress.add(function(s,t){n._previousFormats=0;if(t.keyCode==13&&!t.shiftKey&&s.selection.isCollapsed()&&p.keep_styles){n._previousFormats=k(s.selection.getStart())}});m.onKeyUp.add(function(t,y){if(y.keyCode==13&&!y.shiftKey){var x=t.selection.getStart(),s=n._previousFormats;if(!x.hasChildNodes()&&s){x=u.getParent(x,u.isBlock);if(x&&x.nodeName!="LI"){x.innerHTML="";if(n._previousFormats){x.appendChild(s.wrapper);s.inner.innerHTML="\uFEFF"}else{x.innerHTML="\uFEFF"}o.select(x,1);o.collapse(true);t.getDoc().execCommand("Delete",false,null);n._previousFormats=0}}}})}if(a){m.onKeyDown.add(function(s,t){if((t.keyCode==8||t.keyCode==46)&&!t.shiftKey){n.backspaceDelete(t,t.keyCode==8)}})}}if(l.isWebKit){function r(t){var s=o.getRng(),x,A=u.create("div",null," "),z,y=u.getViewPort(t.getWin()).h;s.insertNode(x=u.create("br"));s.setStartAfter(x);s.setEndAfter(x);o.setRng(s);if(o.getSel().focusNode==x.previousSibling){o.select(u.insertAfter(u.doc.createTextNode("\u00a0"),x));o.collapse(d)}u.insertAfter(A,x);z=u.getPos(A).y;u.remove(A);if(z>y){t.getWin().scrollTo(0,z)}}m.onKeyPress.add(function(s,t){if(t.keyCode==13&&(t.shiftKey||(p.force_br_newlines&&!u.getParent(o.getNode(),"h1,h2,h3,h4,h5,h6,ol,ul")))){r(s);j.cancel(t)}})}if(c){if(p.element!="P"){m.onKeyPress.add(function(s,t){n.lastElm=o.getNode().nodeName});m.onKeyUp.add(function(t,x){var z,y=o.getNode(),s=t.getBody();if(s.childNodes.length===1&&y.nodeName=="P"){y=u.rename(y,p.element);o.select(y);o.collapse();t.nodeChanged()}else{if(x.keyCode==13&&!x.shiftKey&&n.lastElm!="P"){z=u.getParent(y,"p");if(z){u.rename(z,p.element);t.nodeChanged()}}}})}}},getParentBlock:function(o){var m=this.dom;return m.getParent(o,m.isBlock)},insertPara:function(Q){var E=this,v=E.editor,M=v.dom,R=v.getDoc(),V=v.settings,F=v.selection.getSel(),G=F.getRangeAt(0),U=R.body;var J,K,H,O,N,q,o,u,z,m,C,T,p,x,I,L=M.getViewPort(v.getWin()),B,D,A;v.undoManager.beforeChange();J=R.createRange();J.setStart(F.anchorNode,F.anchorOffset);J.collapse(d);K=R.createRange();K.setStart(F.focusNode,F.focusOffset);K.collapse(d);H=J.compareBoundaryPoints(J.START_TO_END,K)<0;O=H?F.anchorNode:F.focusNode;N=H?F.anchorOffset:F.focusOffset;q=H?F.focusNode:F.anchorNode;o=H?F.focusOffset:F.anchorOffset;if(O===q&&/^(TD|TH)$/.test(O.nodeName)){if(O.firstChild.nodeName=="BR"){M.remove(O.firstChild)}if(O.childNodes.length==0){v.dom.add(O,V.element,null,"<br />");T=v.dom.add(O,V.element,null,"<br />")}else{I=O.innerHTML;O.innerHTML="";v.dom.add(O,V.element,null,I);T=v.dom.add(O,V.element,null,"<br />")}G=R.createRange();G.selectNodeContents(T);G.collapse(1);v.selection.setRng(G);return g}if(O==U&&q==U&&U.firstChild&&v.dom.isBlock(U.firstChild)){O=q=O.firstChild;N=o=0;J=R.createRange();J.setStart(O,0);K=R.createRange();K.setStart(q,0)}if(!R.body.hasChildNodes()){R.body.appendChild(M.create("br"))}O=O.nodeName=="HTML"?R.body:O;O=O.nodeName=="BODY"?O.firstChild:O;q=q.nodeName=="HTML"?R.body:q;q=q.nodeName=="BODY"?q.firstChild:q;u=E.getParentBlock(O);z=E.getParentBlock(q);m=u?u.nodeName:V.element;if(I=E.dom.getParent(u,"li,pre")){if(I.nodeName=="LI"){return e(v.selection,E.dom,I)}return d}if(u&&(u.nodeName=="CAPTION"||/absolute|relative|fixed/gi.test(M.getStyle(u,"position",1)))){m=V.element;u=null}if(z&&(z.nodeName=="CAPTION"||/absolute|relative|fixed/gi.test(M.getStyle(u,"position",1)))){m=V.element;z=null}if(/(TD|TABLE|TH|CAPTION)/.test(m)||(u&&m=="DIV"&&/left|right/gi.test(M.getStyle(u,"float",1)))){m=V.element;u=z=null}C=(u&&u.nodeName==m)?u.cloneNode(0):v.dom.create(m);T=(z&&z.nodeName==m)?z.cloneNode(0):v.dom.create(m);T.removeAttribute("id");if(/^(H[1-6])$/.test(m)&&f(G,u)){T=v.dom.create(V.element)}I=p=O;do{if(I==U||I.nodeType==9||E.dom.isBlock(I)||/(TD|TABLE|TH|CAPTION)/.test(I.nodeName)){break}p=I}while((I=I.previousSibling?I.previousSibling:I.parentNode));I=x=q;do{if(I==U||I.nodeType==9||E.dom.isBlock(I)||/(TD|TABLE|TH|CAPTION)/.test(I.nodeName)){break}x=I}while((I=I.nextSibling?I.nextSibling:I.parentNode));if(p.nodeName==m){J.setStart(p,0)}else{J.setStartBefore(p)}J.setEnd(O,N);C.appendChild(J.cloneContents()||R.createTextNode(""));try{K.setEndAfter(x)}catch(P){}K.setStart(q,o);T.appendChild(K.cloneContents()||R.createTextNode(""));G=R.createRange();if(!p.previousSibling&&p.parentNode.nodeName==m){G.setStartBefore(p.parentNode)}else{if(J.startContainer.nodeName==m&&J.startOffset==0){G.setStartBefore(J.startContainer)}else{G.setStart(J.startContainer,J.startOffset)}}if(!x.nextSibling&&x.parentNode.nodeName==m){G.setEndAfter(x.parentNode)}else{G.setEnd(K.endContainer,K.endOffset)}G.deleteContents();if(b){v.getWin().scrollTo(0,L.y)}if(C.firstChild&&C.firstChild.nodeName==m){C.innerHTML=C.firstChild.innerHTML}if(T.firstChild&&T.firstChild.nodeName==m){T.innerHTML=T.firstChild.innerHTML}function S(y,s){var r=[],X,W,t;y.innerHTML="";if(V.keep_styles){W=s;do{if(/^(SPAN|STRONG|B|EM|I|FONT|STRIKE|U)$/.test(W.nodeName)){X=W.cloneNode(g);M.setAttrib(X,"id","");r.push(X)}}while(W=W.parentNode)}if(r.length>0){for(t=r.length-1,X=y;t>=0;t--){X=X.appendChild(r[t])}r[0].innerHTML=b?"\u00a0":"<br />";return r[0]}else{y.innerHTML=b?"\u00a0":"<br />"}}if(M.isEmpty(C)){S(C,O)}if(M.isEmpty(T)){A=S(T,q)}if(b&&parseFloat(opera.version())<9.5){G.insertNode(C);G.insertNode(T)}else{G.insertNode(T);G.insertNode(C)}T.normalize();C.normalize();v.selection.select(T,true);v.selection.collapse(true);B=v.dom.getPos(T).y;if(B<L.y||B+25>L.y+L.h){v.getWin().scrollTo(0,B<L.y?B:B-L.h+25)}v.undoManager.add();return g},backspaceDelete:function(u,B){var C=this,s=C.editor,y=s.getBody(),q=s.dom,p,v=s.selection,o=v.getRng(),x=o.startContainer,p,z,A,m;if(!B&&o.collapsed&&x.nodeType==1&&o.startOffset==x.childNodes.length){m=new l.dom.TreeWalker(x.lastChild,x);for(p=x.lastChild;p;p=m.prev()){if(p.nodeType==3){o.setStart(p,p.nodeValue.length);o.collapse(true);v.setRng(o);return}}}if(x&&s.dom.isBlock(x)&&!/^(TD|TH)$/.test(x.nodeName)&&B){if(x.childNodes.length==0||(x.childNodes.length==1&&x.firstChild.nodeName=="BR")){p=x;while((p=p.previousSibling)&&!s.dom.isBlock(p)){}if(p){if(x!=y.firstChild){z=s.dom.doc.createTreeWalker(p,NodeFilter.SHOW_TEXT,null,g);while(A=z.nextNode()){p=A}o=s.getDoc().createRange();o.setStart(p,p.nodeValue?p.nodeValue.length:0);o.setEnd(p,p.nodeValue?p.nodeValue.length:0);v.setRng(o);s.dom.remove(x)}return j.cancel(u)}}}}})})(tinymce);(function(c){var b=c.DOM,a=c.dom.Event,d=c.each,e=c.extend;c.create("tinymce.ControlManager",{ControlManager:function(f,j){var h=this,g;j=j||{};h.editor=f;h.controls={};h.onAdd=new c.util.Dispatcher(h);h.onPostRender=new c.util.Dispatcher(h);h.prefix=j.prefix||f.id+"_";h._cls={};h.onPostRender.add(function(){d(h.controls,function(i){i.postRender()})})},get:function(f){return this.controls[this.prefix+f]||this.controls[f]},setActive:function(h,f){var g=null;if(g=this.get(h)){g.setActive(f)}return g},setDisabled:function(h,f){var g=null;if(g=this.get(h)){g.setDisabled(f)}return g},add:function(g){var f=this;if(g){f.controls[g.id]=g;f.onAdd.dispatch(g,f)}return g},createControl:function(i){var h,g=this,f=g.editor;d(f.plugins,function(j){if(j.createControl){h=j.createControl(i,g);if(h){return false}}});switch(i){case"|":case"separator":return g.createSeparator()}if(!h&&f.buttons&&(h=f.buttons[i])){return g.createButton(i,h)}return g.add(h)},createDropMenu:function(f,n,h){var m=this,i=m.editor,j,g,k,l;n=e({"class":"mceDropDown",constrain:i.settings.constrain_menus},n);n["class"]=n["class"]+" "+i.getParam("skin")+"Skin";if(k=i.getParam("skin_variant")){n["class"]+=" "+i.getParam("skin")+"Skin"+k.substring(0,1).toUpperCase()+k.substring(1)}f=m.prefix+f;l=h||m._cls.dropmenu||c.ui.DropMenu;j=m.controls[f]=new l(f,n);j.onAddItem.add(function(r,q){var p=q.settings;p.title=i.getLang(p.title,p.title);if(!p.onclick){p.onclick=function(o){if(p.cmd){i.execCommand(p.cmd,p.ui||false,p.value)}}}});i.onRemove.add(function(){j.destroy()});if(c.isIE){j.onShowMenu.add(function(){i.focus();g=i.selection.getBookmark(1)});j.onHideMenu.add(function(){if(g){i.selection.moveToBookmark(g);g=0}})}return m.add(j)},createListBox:function(m,i,l){var h=this,g=h.editor,j,k,f;if(h.get(m)){return null}i.title=g.translate(i.title);i.scope=i.scope||g;if(!i.onselect){i.onselect=function(n){g.execCommand(i.cmd,i.ui||false,n||i.value)}}i=e({title:i.title,"class":"mce_"+m,scope:i.scope,control_manager:h},i);m=h.prefix+m;if(g.settings.use_native_selects){k=new c.ui.NativeListBox(m,i)}else{f=l||h._cls.listbox||c.ui.ListBox;k=new f(m,i,g)}h.controls[m]=k;if(c.isWebKit){k.onPostRender.add(function(p,o){a.add(o,"mousedown",function(){g.bookmark=g.selection.getBookmark(1)});a.add(o,"focus",function(){g.selection.moveToBookmark(g.bookmark);g.bookmark=null})})}if(k.hideMenu){g.onMouseDown.add(k.hideMenu,k)}return h.add(k)},createButton:function(m,i,l){var h=this,g=h.editor,j,k,f;if(h.get(m)){return null}i.title=g.translate(i.title);i.label=g.translate(i.label);i.scope=i.scope||g;if(!i.onclick&&!i.menu_button){i.onclick=function(){g.execCommand(i.cmd,i.ui||false,i.value)}}i=e({title:i.title,"class":"mce_"+m,unavailable_prefix:g.getLang("unavailable",""),scope:i.scope,control_manager:h},i);m=h.prefix+m;if(i.menu_button){f=l||h._cls.menubutton||c.ui.MenuButton;k=new f(m,i,g);g.onMouseDown.add(k.hideMenu,k)}else{f=h._cls.button||c.ui.Button;k=new f(m,i,g)}return h.add(k)},createMenuButton:function(h,f,g){f=f||{};f.menu_button=1;return this.createButton(h,f,g)},createSplitButton:function(m,i,l){var h=this,g=h.editor,j,k,f;if(h.get(m)){return null}i.title=g.translate(i.title);i.scope=i.scope||g;if(!i.onclick){i.onclick=function(n){g.execCommand(i.cmd,i.ui||false,n||i.value)}}if(!i.onselect){i.onselect=function(n){g.execCommand(i.cmd,i.ui||false,n||i.value)}}i=e({title:i.title,"class":"mce_"+m,scope:i.scope,control_manager:h},i);m=h.prefix+m;f=l||h._cls.splitbutton||c.ui.SplitButton;k=h.add(new f(m,i,g));g.onMouseDown.add(k.hideMenu,k);return k},createColorSplitButton:function(f,n,h){var l=this,j=l.editor,i,k,m,g;if(l.get(f)){return null}n.title=j.translate(n.title);n.scope=n.scope||j;if(!n.onclick){n.onclick=function(o){if(c.isIE){g=j.selection.getBookmark(1)}j.execCommand(n.cmd,n.ui||false,o||n.value)}}if(!n.onselect){n.onselect=function(o){j.execCommand(n.cmd,n.ui||false,o||n.value)}}n=e({title:n.title,"class":"mce_"+f,menu_class:j.getParam("skin")+"Skin",scope:n.scope,more_colors_title:j.getLang("more_colors")},n);f=l.prefix+f;m=h||l._cls.colorsplitbutton||c.ui.ColorSplitButton;k=new m(f,n,j);j.onMouseDown.add(k.hideMenu,k);j.onRemove.add(function(){k.destroy()});if(c.isIE){k.onShowMenu.add(function(){j.focus();g=j.selection.getBookmark(1)});k.onHideMenu.add(function(){if(g){j.selection.moveToBookmark(g);g=0}})}return l.add(k)},createToolbar:function(k,h,j){var i,g=this,f;k=g.prefix+k;f=j||g._cls.toolbar||c.ui.Toolbar;i=new f(k,h,g.editor);if(g.get(k)){return null}return g.add(i)},createToolbarGroup:function(k,h,j){var i,g=this,f;k=g.prefix+k;f=j||this._cls.toolbarGroup||c.ui.ToolbarGroup;i=new f(k,h,g.editor);if(g.get(k)){return null}return g.add(i)},createSeparator:function(g){var f=g||this._cls.separator||c.ui.Separator;return new f()},setControlType:function(g,f){return this._cls[g.toLowerCase()]=f},destroy:function(){d(this.controls,function(f){f.destroy()});this.controls=null}})})(tinymce);(function(d){var a=d.util.Dispatcher,e=d.each,c=d.isIE,b=d.isOpera;d.create("tinymce.WindowManager",{WindowManager:function(f){var g=this;g.editor=f;g.onOpen=new a(g);g.onClose=new a(g);g.params={};g.features={}},open:function(z,h){var v=this,k="",n,m,i=v.editor.settings.dialog_type=="modal",q,o,j,g=d.DOM.getViewPort(),r;z=z||{};h=h||{};o=b?g.w:screen.width;j=b?g.h:screen.height;z.name=z.name||"mc_"+new Date().getTime();z.width=parseInt(z.width||320);z.height=parseInt(z.height||240);z.resizable=true;z.left=z.left||parseInt(o/2)-(z.width/2);z.top=z.top||parseInt(j/2)-(z.height/2);h.inline=false;h.mce_width=z.width;h.mce_height=z.height;h.mce_auto_focus=z.auto_focus;if(i){if(c){z.center=true;z.help=false;z.dialogWidth=z.width+"px";z.dialogHeight=z.height+"px";z.scroll=z.scrollbars||false}}e(z,function(p,f){if(d.is(p,"boolean")){p=p?"yes":"no"}if(!/^(name|url)$/.test(f)){if(c&&i){k+=(k?";":"")+f+":"+p}else{k+=(k?",":"")+f+"="+p}}});v.features=z;v.params=h;v.onOpen.dispatch(v,z,h);r=z.url||z.file;r=d._addVer(r);try{if(c&&i){q=1;window.showModalDialog(r,window,k)}else{q=window.open(r,z.name,k)}}catch(l){}if(!q){alert(v.editor.getLang("popup_blocked"))}},close:function(f){f.close();this.onClose.dispatch(this)},createInstance:function(i,h,g,m,l,k){var j=d.resolve(i);return new j(h,g,m,l,k)},confirm:function(h,f,i,g){g=g||window;f.call(i||this,g.confirm(this._decode(this.editor.getLang(h,h))))},alert:function(h,f,j,g){var i=this;g=g||window;g.alert(i._decode(i.editor.getLang(h,h)));if(f){f.call(j||i)}},resizeBy:function(f,g,h){h.resizeBy(f,g)},_decode:function(f){return d.DOM.decode(f).replace(/\\n/g,"\n")}})}(tinymce));(function(a){a.Formatter=function(V){var M={},O=a.each,c=V.dom,q=V.selection,t=a.dom.TreeWalker,K=new a.dom.RangeUtils(c),d=V.schema.isValidChild,F=c.isBlock,l=V.settings.forced_root_block,s=c.nodeIndex,E="\uFEFF",e=/^(src|href|style)$/,S=false,B=true,p,P={apply:[],remove:[]};function z(W){return W instanceof Array}function m(X,W){return c.getParents(X,W,c.getRoot())}function b(W){return W.nodeType===1&&(W.face==="mceinline"||W.style.fontFamily==="mceinline")}function R(W){return W?M[W]:M}function k(W,X){if(W){if(typeof(W)!=="string"){O(W,function(Z,Y){k(Y,Z)})}else{X=X.length?X:[X];O(X,function(Y){if(Y.deep===p){Y.deep=!Y.selector}if(Y.split===p){Y.split=!Y.selector||Y.inline}if(Y.remove===p&&Y.selector&&!Y.inline){Y.remove="none"}if(Y.selector&&Y.inline){Y.mixed=true;Y.block_expand=true}if(typeof(Y.classes)==="string"){Y.classes=Y.classes.split(/\s+/)}});M[W]=X}}}var i=function(X){var W;V.dom.getParent(X,function(Y){W=V.dom.getStyle(Y,"text-decoration");return W&&W!=="none"});return W};var I=function(W){var X;if(W.nodeType===1&&W.parentNode&&W.parentNode.nodeType===1){X=i(W.parentNode);if(V.dom.getStyle(W,"color")&&X){V.dom.setStyle(W,"text-decoration",X)}else{if(V.dom.getStyle(W,"textdecoration")===X){V.dom.setStyle(W,"text-decoration",null)}}}};function T(Z,ah,ac){var ad=R(Z),ai=ad[0],ag,X,af,ae=q.isCollapsed();function aa(am){var al=am.startContainer,ap=am.startOffset,ao,an;if(al.nodeType==1||al.nodeValue===""){al=al.nodeType==1?al.childNodes[ap]:al;if(al){ao=new t(al,al.parentNode);for(an=ao.current();an;an=ao.next()){if(an.nodeType==3&&!f(an)){am.setStart(an,0);break}}}}return am}function W(am,al){al=al||ai;if(am){if(al.onformat){al.onformat(am,al,ah,ac)}O(al.styles,function(ao,an){c.setStyle(am,an,r(ao,ah))});O(al.attributes,function(ao,an){c.setAttrib(am,an,r(ao,ah))});O(al.classes,function(an){an=r(an,ah);if(!c.hasClass(am,an)){c.addClass(am,an)}})}}function ab(){function an(au,ar){var at=new t(ar);for(ac=at.current();ac;ac=at.prev()){if(ac.childNodes.length>1||ac==au){return ac}}}var am=V.selection.getRng();var aq=am.startContainer;var al=am.endContainer;if(aq!=al&&am.endOffset==0){var ap=an(aq,al);var ao=ap.nodeType==3?ap.length:ap.childNodes.length;am.setEnd(ap,ao)}return am}function Y(ao,au,ar,aq,am){var al=[],an=-1,at,aw=-1,ap=-1,av;O(ao.childNodes,function(ay,ax){if(ay.nodeName==="UL"||ay.nodeName==="OL"){an=ax;at=ay;return false}});O(ao.childNodes,function(ay,ax){if(ay.nodeName==="SPAN"&&c.getAttrib(ay,"data-mce-type")=="bookmark"){if(ay.id==au.id+"_start"){aw=ax}else{if(ay.id==au.id+"_end"){ap=ax}}}});if(an<=0||(aw<an&&ap>an)){O(a.grep(ao.childNodes),am);return 0}else{av=ar.cloneNode(S);O(a.grep(ao.childNodes),function(ay,ax){if((aw<an&&ax<an)||(aw>an&&ax>an)){al.push(ay);ay.parentNode.removeChild(ay)}});if(aw<an){ao.insertBefore(av,at)}else{if(aw>an){ao.insertBefore(av,at.nextSibling)}}aq.push(av);O(al,function(ax){av.appendChild(ax)});return av}}function aj(am,ao){var al=[],ap,an;ap=ai.inline||ai.block;an=c.create(ap);W(an);K.walk(am,function(aq){var ar;function at(au){var ax=au.nodeName.toLowerCase(),aw=au.parentNode.nodeName.toLowerCase(),av;if(g(ax,"br")){ar=0;if(ai.block){c.remove(au)}return}if(ai.wrapper&&x(au,Z,ah)){ar=0;return}if(ai.block&&!ai.wrapper&&G(ax)){au=c.rename(au,ap);W(au);al.push(au);ar=0;return}if(ai.selector){O(ad,function(ay){if("collapsed" in ay&&ay.collapsed!==ae){return}if(c.is(au,ay.selector)&&!b(au)){W(au,ay);av=true}});if(!ai.inline||av){ar=0;return}}if(d(ap,ax)&&d(aw,ap)&&!(au.nodeType===3&&au.nodeValue.length===1&&au.nodeValue.charCodeAt(0)===65279)){if(!ar){ar=an.cloneNode(S);au.parentNode.insertBefore(ar,au);al.push(ar)}ar.appendChild(au)}else{if(ax=="li"&&ao){ar=Y(au,ao,an,al,at)}else{ar=0;O(a.grep(au.childNodes),at);ar=0}}}O(aq,at)});if(ai.wrap_links===false){O(al,function(aq){function ar(aw){var av,au,at;if(aw.nodeName==="A"){au=an.cloneNode(S);al.push(au);at=a.grep(aw.childNodes);for(av=0;av<at.length;av++){au.appendChild(at[av])}aw.appendChild(au)}O(a.grep(aw.childNodes),ar)}ar(aq)})}O(al,function(at){var aq;function au(aw){var av=0;O(aw.childNodes,function(ax){if(!f(ax)&&!H(ax)){av++}});return av}function ar(av){var ax,aw;O(av.childNodes,function(ay){if(ay.nodeType==1&&!H(ay)&&!b(ay)){ax=ay;return S}});if(ax&&h(ax,ai)){aw=ax.cloneNode(S);W(aw);c.replace(aw,av,B);c.remove(ax,1)}return aw||av}aq=au(at);if((al.length>1||!F(at))&&aq===0){c.remove(at,1);return}if(ai.inline||ai.wrapper){if(!ai.exact&&aq===1){at=ar(at)}O(ad,function(av){O(c.select(av.inline,at),function(ax){var aw;if(av.wrap_links===false){aw=ax.parentNode;do{if(aw.nodeName==="A"){return}}while(aw=aw.parentNode)}U(av,ah,ax,av.exact?ax:null)})});if(x(at.parentNode,Z,ah)){c.remove(at,1);at=0;return B}if(ai.merge_with_parents){c.getParent(at.parentNode,function(av){if(x(av,Z,ah)){c.remove(at,1);at=0;return B}})}if(at&&ai.merge_siblings!==false){at=u(C(at),at);at=u(at,C(at,B))}}})}if(ai){if(ac){X=c.createRng();X.setStartBefore(ac);X.setEndAfter(ac);aj(o(X,ad))}else{if(!ae||!ai.inline||c.select("td.mceSelected,th.mceSelected").length){var ak=V.selection.getNode();V.selection.setRng(ab());ag=q.getBookmark();aj(o(q.getRng(B),ad),ag);if(ai.styles&&(ai.styles.color||ai.styles.textDecoration)){a.walk(ak,I,"childNodes");I(ak)}q.moveToBookmark(ag);q.setRng(aa(q.getRng(B)));V.nodeChanged()}else{Q("apply",Z,ah)}}}}function A(Y,ah,ab){var ac=R(Y),aj=ac[0],ag,af,X;function aa(am){var al=am.startContainer,ar=am.startOffset,aq,ap,an,ao;if(al.nodeType==3&&ar>=al.nodeValue.length-1){al=al.parentNode;ar=s(al)+1}if(al.nodeType==1){an=al.childNodes;al=an[Math.min(ar,an.length-1)];aq=new t(al);if(ar>an.length-1){aq.next()}for(ap=aq.current();ap;ap=aq.next()){if(ap.nodeType==3&&!f(ap)){ao=c.create("a",null,E);ap.parentNode.insertBefore(ao,ap);am.setStart(ap,0);q.setRng(am);c.remove(ao);return}}}}function Z(ao){var an,am,al;an=a.grep(ao.childNodes);for(am=0,al=ac.length;am<al;am++){if(U(ac[am],ah,ao,ao)){break}}if(aj.deep){for(am=0,al=an.length;am<al;am++){Z(an[am])}}}function ad(al){var am;O(m(al.parentNode).reverse(),function(an){var ao;if(!am&&an.id!="_start"&&an.id!="_end"){ao=x(an,Y,ah);if(ao&&ao.split!==false){am=an}}});return am}function W(ao,al,aq,au){var av,at,ar,an,ap,am;if(ao){am=ao.parentNode;for(av=al.parentNode;av&&av!=am;av=av.parentNode){at=av.cloneNode(S);for(ap=0;ap<ac.length;ap++){if(U(ac[ap],ah,at,at)){at=0;break}}if(at){if(ar){at.appendChild(ar)}if(!an){an=at}ar=at}}if(au&&(!aj.mixed||!F(ao))){al=c.split(ao,al)}if(ar){aq.parentNode.insertBefore(ar,aq);an.appendChild(aq)}}return al}function ai(al){return W(ad(al),al,al,true)}function ae(an){var am=c.get(an?"_start":"_end"),al=am[an?"firstChild":"lastChild"];if(H(al)){al=al[an?"firstChild":"lastChild"]}c.remove(am,true);return al}function ak(al){var am,an;al=o(al,ac,B);if(aj.split){am=J(al,B);an=J(al);if(am!=an){am=N(am,"span",{id:"_start","data-mce-type":"bookmark"});an=N(an,"span",{id:"_end","data-mce-type":"bookmark"});ai(am);ai(an);am=ae(B);an=ae()}else{am=an=ai(am)}al.startContainer=am.parentNode;al.startOffset=s(am);al.endContainer=an.parentNode;al.endOffset=s(an)+1}K.walk(al,function(ao){O(ao,function(ap){Z(ap);if(ap.nodeType===1&&V.dom.getStyle(ap,"text-decoration")==="underline"&&ap.parentNode&&i(ap.parentNode)==="underline"){U({deep:false,exact:true,inline:"span",styles:{textDecoration:"underline"}},null,ap)}})})}if(ab){X=c.createRng();X.setStartBefore(ab);X.setEndAfter(ab);ak(X);return}if(!q.isCollapsed()||!aj.inline||c.select("td.mceSelected,th.mceSelected").length){ag=q.getBookmark();ak(q.getRng(B));q.moveToBookmark(ag);if(j(Y,ah,q.getStart())){aa(q.getRng(true))}V.nodeChanged()}else{Q("remove",Y,ah)}}function D(X,Z,Y){var W=R(X);if(j(X,Z,Y)&&(!("toggle" in W[0])||W[0]["toggle"])){A(X,Z,Y)}else{T(X,Z,Y)}}function x(X,W,ac,aa){var Y=R(W),ad,ab,Z;function ae(ai,ak,al){var ah,aj,af=ak[al],ag;if(ak.onmatch){return ak.onmatch(ai,ak,al)}if(af){if(af.length===p){for(ah in af){if(af.hasOwnProperty(ah)){if(al==="attributes"){aj=c.getAttrib(ai,ah)}else{aj=L(ai,ah)}if(aa&&!aj&&!ak.exact){return}if((!aa||ak.exact)&&!g(aj,r(af[ah],ac))){return}}}}else{for(ag=0;ag<af.length;ag++){if(al==="attributes"?c.getAttrib(ai,af[ag]):L(ai,af[ag])){return ak}}}}return ak}if(Y&&X){for(ab=0;ab<Y.length;ab++){ad=Y[ab];if(h(X,ad)&&ae(X,ad,"attributes")&&ae(X,ad,"styles")){if(Z=ad.classes){for(ab=0;ab<Z.length;ab++){if(!c.hasClass(X,Z[ab])){return}}}return ad}}}}function j(Y,ab,aa){var X,Z;function W(ac){ac=c.getParent(ac,function(ad){return !!x(ad,Y,ab,true)});return x(ac,Y,ab)}if(aa){return W(aa)}if(q.isCollapsed()){for(Z=P.apply.length-1;Z>=0;Z--){if(P.apply[Z].name==Y){return true}}for(Z=P.remove.length-1;Z>=0;Z--){if(P.remove[Z].name==Y){return false}}return W(q.getNode())}aa=q.getNode();if(W(aa)){return B}X=q.getStart();if(X!=aa){if(W(X)){return B}}return S}function v(ad,ac){var aa,ab=[],Z={},Y,X,W;if(q.isCollapsed()){for(X=0;X<ad.length;X++){for(Y=P.remove.length-1;Y>=0;Y--){W=ad[X];if(P.remove[Y].name==W){Z[W]=true;break}}}for(Y=P.apply.length-1;Y>=0;Y--){for(X=0;X<ad.length;X++){W=ad[X];if(!Z[W]&&P.apply[Y].name==W){Z[W]=true;ab.push(W)}}}}aa=q.getStart();c.getParent(aa,function(ag){var af,ae;for(af=0;af<ad.length;af++){ae=ad[af];if(!Z[ae]&&x(ag,ae,ac)){Z[ae]=true;ab.push(ae)}}});return ab}function y(aa){var ac=R(aa),Z,Y,ab,X,W;if(ac){Z=q.getStart();Y=m(Z);for(X=ac.length-1;X>=0;X--){W=ac[X].selector;if(!W){return B}for(ab=Y.length-1;ab>=0;ab--){if(c.is(Y[ab],W)){return B}}}}return S}a.extend(this,{get:R,register:k,apply:T,remove:A,toggle:D,match:j,matchAll:v,matchNode:x,canApply:y});function h(W,X){if(g(W,X.inline)){return B}if(g(W,X.block)){return B}if(X.selector){return c.is(W,X.selector)}}function g(X,W){X=X||"";W=W||"";X=""+(X.nodeName||X);W=""+(W.nodeName||W);return X.toLowerCase()==W.toLowerCase()}function L(X,W){var Y=c.getStyle(X,W);if(W=="color"||W=="backgroundColor"){Y=c.toHex(Y)}if(W=="fontWeight"&&Y==700){Y="bold"}return""+Y}function r(W,X){if(typeof(W)!="string"){W=W(X)}else{if(X){W=W.replace(/%(\w+)/g,function(Z,Y){return X[Y]||Z})}}return W}function f(W){return W&&W.nodeType===3&&/^([\s\r\n]+|)$/.test(W.nodeValue)}function N(Y,X,W){var Z=c.create(X,W);Y.parentNode.insertBefore(Z,Y);Z.appendChild(Y);return Z}function o(W,ag,Z){var Y=W.startContainer,ad=W.startOffset,aj=W.endContainer,ae=W.endOffset,ai,af,ac;function ah(am,an,ak,al){var ao,ap;al=al||c.getRoot();for(;;){ao=am.parentNode;if(ao==al||(!ag[0].block_expand&&F(ao))){return am}for(ai=ao[an];ai&&ai!=am;ai=ai[ak]){if(ai.nodeType==1&&!H(ai)){return am}if(ai.nodeType==3&&!f(ai)){return am}}am=am.parentNode}return am}function ab(ak,al){if(al===p){al=ak.nodeType===3?ak.length:ak.childNodes.length}while(ak&&ak.hasChildNodes()){ak=ak.childNodes[al];if(ak){al=ak.nodeType===3?ak.length:ak.childNodes.length}}return{node:ak,offset:al}}if(Y.nodeType==1&&Y.hasChildNodes()){af=Y.childNodes.length-1;Y=Y.childNodes[ad>af?af:ad];if(Y.nodeType==3){ad=0}}if(aj.nodeType==1&&aj.hasChildNodes()){af=aj.childNodes.length-1;aj=aj.childNodes[ae>af?af:ae-1];if(aj.nodeType==3){ae=aj.nodeValue.length}}if(H(Y.parentNode)){Y=Y.parentNode}if(H(Y)){Y=Y.nextSibling||Y}if(H(aj.parentNode)){ae=c.nodeIndex(aj);aj=aj.parentNode}if(H(aj)&&aj.previousSibling){aj=aj.previousSibling;ae=aj.length}if(ag[0].inline){ac=ab(aj,ae);if(ac.node){while(ac.node&&ac.offset===0&&ac.node.previousSibling){ac=ab(ac.node.previousSibling)}if(ac.node&&ac.offset>0&&ac.node.nodeType===3&&ac.node.nodeValue.charAt(ac.offset-1)===" "){if(ac.offset>1){aj=ac.node;aj.splitText(ac.offset-1)}else{if(ac.node.previousSibling){aj=ac.node.previousSibling}}}}}if(ag[0].inline||ag[0].block_expand){Y=ah(Y,"firstChild","nextSibling");aj=ah(aj,"lastChild","previousSibling")}if(ag[0].selector&&ag[0].expand!==S&&!ag[0].inline){function aa(al,ak){var am,an,ap,ao;if(al.nodeType==3&&al.nodeValue.length==0&&al[ak]){al=al[ak]}am=m(al);for(an=0;an<am.length;an++){for(ap=0;ap<ag.length;ap++){ao=ag[ap];if("collapsed" in ao&&ao.collapsed!==W.collapsed){continue}if(c.is(am[an],ao.selector)){return am[an]}}}return al}Y=aa(Y,"previousSibling");aj=aa(aj,"nextSibling")}if(ag[0].block||ag[0].selector){function X(al,ak,an){var am;if(!ag[0].wrapper){am=c.getParent(al,ag[0].block)}if(!am){am=c.getParent(al.nodeType==3?al.parentNode:al,F)}if(am&&ag[0].wrapper){am=m(am,"ul,ol").reverse()[0]||am}if(!am){am=al;while(am[ak]&&!F(am[ak])){am=am[ak];if(g(am,"br")){break}}}return am||al}Y=X(Y,"previousSibling");aj=X(aj,"nextSibling");if(ag[0].block){if(!F(Y)){Y=ah(Y,"firstChild","nextSibling")}if(!F(aj)){aj=ah(aj,"lastChild","previousSibling")}}}if(Y.nodeType==1){ad=s(Y);Y=Y.parentNode}if(aj.nodeType==1){ae=s(aj)+1;aj=aj.parentNode}return{startContainer:Y,startOffset:ad,endContainer:aj,endOffset:ae}}function U(ac,ab,Z,W){var Y,X,aa;if(!h(Z,ac)){return S}if(ac.remove!="all"){O(ac.styles,function(ae,ad){ae=r(ae,ab);if(typeof(ad)==="number"){ad=ae;W=0}if(!W||g(L(W,ad),ae)){c.setStyle(Z,ad,"")}aa=1});if(aa&&c.getAttrib(Z,"style")==""){Z.removeAttribute("style");Z.removeAttribute("data-mce-style")}O(ac.attributes,function(af,ad){var ae;af=r(af,ab);if(typeof(ad)==="number"){ad=af;W=0}if(!W||g(c.getAttrib(W,ad),af)){if(ad=="class"){af=c.getAttrib(Z,ad);if(af){ae="";O(af.split(/\s+/),function(ag){if(/mce\w+/.test(ag)){ae+=(ae?" ":"")+ag}});if(ae){c.setAttrib(Z,ad,ae);return}}}if(ad=="class"){Z.removeAttribute("className")}if(e.test(ad)){Z.removeAttribute("data-mce-"+ad)}Z.removeAttribute(ad)}});O(ac.classes,function(ad){ad=r(ad,ab);if(!W||c.hasClass(W,ad)){c.removeClass(Z,ad)}});X=c.getAttribs(Z);for(Y=0;Y<X.length;Y++){if(X[Y].nodeName.indexOf("_")!==0){return S}}}if(ac.remove!="none"){n(Z,ac);return B}}function n(Y,Z){var W=Y.parentNode,X;if(Z.block){if(!l){function aa(ac,ab,ad){ac=C(ac,ab,ad);return !ac||(ac.nodeName=="BR"||F(ac))}if(F(Y)&&!F(W)){if(!aa(Y,S)&&!aa(Y.firstChild,B,1)){Y.insertBefore(c.create("br"),Y.firstChild)}if(!aa(Y,B)&&!aa(Y.lastChild,S,1)){Y.appendChild(c.create("br"))}}}else{if(W==c.getRoot()){if(!Z.list_block||!g(Y,Z.list_block)){O(a.grep(Y.childNodes),function(ab){if(d(l,ab.nodeName.toLowerCase())){if(!X){X=N(ab,l)}else{X.appendChild(ab)}}else{X=0}})}}}}if(Z.selector&&Z.inline&&!g(Z.inline,Y)){return}c.remove(Y,1)}function C(X,W,Y){if(X){W=W?"nextSibling":"previousSibling";for(X=Y?X:X[W];X;X=X[W]){if(X.nodeType==1||!f(X)){return X}}}}function H(W){return W&&W.nodeType==1&&W.getAttribute("data-mce-type")=="bookmark"}function u(aa,Z){var W,Y,X;function ac(af,ae){if(af.nodeName!=ae.nodeName){return S}function ad(ah){var ai={};O(c.getAttribs(ah),function(aj){var ak=aj.nodeName.toLowerCase();if(ak.indexOf("_")!==0&&ak!=="style"){ai[ak]=c.getAttrib(ah,ak)}});return ai}function ag(ak,aj){var ai,ah;for(ah in ak){if(ak.hasOwnProperty(ah)){ai=aj[ah];if(ai===p){return S}if(ak[ah]!=ai){return S}delete aj[ah]}}for(ah in aj){if(aj.hasOwnProperty(ah)){return S}}return B}if(!ag(ad(af),ad(ae))){return S}if(!ag(c.parseStyle(c.getAttrib(af,"style")),c.parseStyle(c.getAttrib(ae,"style")))){return S}return B}if(aa&&Z){function ab(ae,ad){for(Y=ae;Y;Y=Y[ad]){if(Y.nodeType==3&&Y.nodeValue.length!==0){return ae}if(Y.nodeType==1&&!H(Y)){return Y}}return ae}aa=ab(aa,"previousSibling");Z=ab(Z,"nextSibling");if(ac(aa,Z)){for(Y=aa.nextSibling;Y&&Y!=Z;){X=Y;Y=Y.nextSibling;aa.appendChild(X)}c.remove(Z);O(a.grep(Z.childNodes),function(ad){aa.appendChild(ad)});return aa}}return Z}function G(W){return/^(h[1-6]|p|div|pre|address|dl|dt|dd)$/.test(W)}function J(X,aa){var W,Z,Y;W=X[aa?"startContainer":"endContainer"];Z=X[aa?"startOffset":"endOffset"];if(W.nodeType==1){Y=W.childNodes.length-1;if(!aa&&Z){Z--}W=W.childNodes[Z>Y?Y:Z]}return W}function Q(ad,Y,ac){var aa,X=P[ad],ae=P[ad=="apply"?"remove":"apply"];function af(){return P.apply.length||P.remove.length}function ab(){P.apply=[];P.remove=[]}function ag(ah){O(P.apply.reverse(),function(ai){T(ai.name,ai.vars,ah);if(ai.name==="forecolor"&&ai.vars.value){I(ah.parentNode)}});O(P.remove.reverse(),function(ai){A(ai.name,ai.vars,ah)});c.remove(ah,1);ab()}for(aa=X.length-1;aa>=0;aa--){if(X[aa].name==Y){return}}X.push({name:Y,vars:ac});for(aa=ae.length-1;aa>=0;aa--){if(ae[aa].name==Y){ae.splice(aa,1)}}if(af()){V.getDoc().execCommand("FontName",false,"mceinline");P.lastRng=q.getRng();O(c.select("font,span"),function(ai){var ah;if(b(ai)){ah=q.getBookmark();ag(ai);q.moveToBookmark(ah);V.nodeChanged()}});if(!P.isListening&&af()){P.isListening=true;function W(ai,aj){var ah=c.createRng();ag(ai);ah.setStart(aj,aj.nodeValue.length);ah.setEnd(aj,aj.nodeValue.length);q.setRng(ah);V.nodeChanged()}var Z=false;O("onKeyDown,onKeyUp,onKeyPress,onMouseUp".split(","),function(ah){V[ah].addToTop(function(ai,al){if(al.keyCode==13&&!al.shiftKey){Z=true;return}if(af()&&!a.dom.RangeUtils.compareRanges(P.lastRng,q.getRng())){var aj=false;O(c.select("font,span"),function(ao){var ap,an;if(b(ao)){aj=true;ap=ao.firstChild;while(ap&&ap.nodeType!=3){ap=ap.firstChild}if(ap){W(ao,ap)}else{c.remove(ao)}}});if(Z&&!aj){var ak=q.getNode();var am=ak;while(am&&am.nodeType!=3){am=am.firstChild}if(am){ak=am.parentNode;while(!F(ak)){ak=ak.parentNode}W(ak,am)}}if(al.type=="keyup"||al.type=="mouseup"){ab();Z=false}}})})}}}}})(tinymce);tinymce.onAddEditor.add(function(e,a){var d,h,g,c=a.settings;if(c.inline_styles){h=e.explode(c.font_size_style_values);function b(j,i){e.each(i,function(l,k){if(l){g.setStyle(j,k,l)}});g.rename(j,"span")}d={font:function(j,i){b(i,{backgroundColor:i.style.backgroundColor,color:i.color,fontFamily:i.face,fontSize:h[parseInt(i.size)-1]})},u:function(j,i){b(i,{textDecoration:"underline"})},strike:function(j,i){b(i,{textDecoration:"line-through"})}};function f(i,j){g=i.dom;if(c.convert_fonts_to_spans){e.each(g.select("font,u,strike",j.node),function(k){d[k.nodeName.toLowerCase()](a.dom,k)})}}a.onPreProcess.add(f);a.onSetContent.add(f);a.onInit.add(function(){a.selection.onSetContent.add(f)})}});
\ No newline at end of file
index 6cf1b166088bef95573e66a2118c27b3a40ece3e..4d9ffe272b0b5dd50a0a53e868fde1b32e7ac17c 100644 (file)
@@ -16,7 +16,7 @@ var TinyMCE_EditableSelects = {
 
                for (i=0; i<nl.length; i++) {
                        if (nl[i].className.indexOf('mceEditableSelect') != -1) {
 
                for (i=0; i<nl.length; i++) {
                        if (nl[i].className.indexOf('mceEditableSelect') != -1) {
-                               o = new Option('(value)', '__mce_add_custom__');
+                               o = new Option(tinyMCEPopup.editor.translate('value'), '__mce_add_custom__');
 
                                o.className = 'mceAddSelectValue';
 
 
                                o.className = 'mceAddSelectValue';
 
index 3bfc3780918ee2049c0f09b4db6aedd14f7e102d..43dbe297641164baab8778c5f57561de3595114b 100644 (file)
@@ -9,17 +9,19 @@
 require_once('../../../wp-load.php');
 header('Content-Type: text/html; charset=' . get_bloginfo('charset'));
 ?>
 require_once('../../../wp-load.php');
 header('Content-Type: text/html; charset=' . get_bloginfo('charset'));
 ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html>
 <html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>>
 <head>
 <meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php echo get_option('blog_charset'); ?>" />
 <title><?php _e('Rich Editor Help') ?></title>
 <script type="text/javascript" src="tiny_mce_popup.js?ver=342"></script>
 <?php
 <html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>>
 <head>
 <meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php echo get_option('blog_charset'); ?>" />
 <title><?php _e('Rich Editor Help') ?></title>
 <script type="text/javascript" src="tiny_mce_popup.js?ver=342"></script>
 <?php
-wp_admin_css( 'global', true );
 wp_admin_css( 'wp-admin', true );
 ?>
 <style type="text/css">
 wp_admin_css( 'wp-admin', true );
 ?>
 <style type="text/css">
+       body {
+               min-width: 0;
+       }
        #wphead {
                font-size: 80%;
                border-top: 0;
        #wphead {
                font-size: 80%;
                border-top: 0;
@@ -36,6 +38,7 @@ wp_admin_css( 'wp-admin', true );
                padding: 15px 15px 3px;
                background-color: #f1f1f1;
                border-bottom: 1px solid #dfdfdf;
                padding: 15px 15px 3px;
                background-color: #f1f1f1;
                border-bottom: 1px solid #dfdfdf;
+               margin: 0;
        }
        #tabs li {
                display: inline;
        }
        #tabs li {
                display: inline;
@@ -140,7 +143,7 @@ wp_admin_css( 'wp-admin', true );
        .macwebkit tr.mac {
                display: table-row;
        }
        .macwebkit tr.mac {
                display: table-row;
        }
-       
+
 </style>
 <?php if ( is_rtl() ) : ?>
 <style type="text/css">
 </style>
 <?php if ( is_rtl() ) : ?>
 <style type="text/css">
@@ -178,7 +181,7 @@ wp_admin_css( 'wp-admin', true );
 
                document.getElementById('version').innerHTML = tinymce.majorVersion + "." + tinymce.minorVersion;
         document.getElementById('date').innerHTML = tinymce.releaseDate;
 
                document.getElementById('version').innerHTML = tinymce.majorVersion + "." + tinymce.minorVersion;
         document.getElementById('date').innerHTML = tinymce.releaseDate;
+
                if ( win.fullscreen && win.fullscreen.settings.visible ) {
                        d('content1').className = 'hidden';
                        d('tabs').className = 'hidden';
                if ( win.fullscreen && win.fullscreen.settings.visible ) {
                        d('content1').className = 'hidden';
                        d('tabs').className = 'hidden';
@@ -187,7 +190,7 @@ wp_admin_css( 'wp-admin', true );
 
                if ( tinymce.isMac )
                        document.body.className = 'macos';
 
                if ( tinymce.isMac )
                        document.body.className = 'macos';
-               
+
                if ( tinymce.isMac && tinymce.isWebKit )
                        document.body.className = 'macos macwebkit';
 
                if ( tinymce.isMac && tinymce.isWebKit )
                        document.body.className = 'macos macwebkit';
 
@@ -197,10 +200,10 @@ wp_admin_css( 'wp-admin', true );
 <body>
 
 <ul id="tabs">
 <body>
 
 <ul id="tabs">
-       <li><a id="tab1" href="javascript:flipTab(1)" title="<?php _e('Basics of Rich Editing') ?>" accesskey="1" tabindex="1" class="current"><?php _e('Basics') ?></a></li>
-       <li><a id="tab2" href="javascript:flipTab(2)" title="<?php _e('Advanced use of the Rich Editor') ?>" accesskey="2" tabindex="2"><?php _e('Advanced') ?></a></li>
-       <li><a id="tab3" href="javascript:flipTab(3)" title="<?php _e('Hotkeys') ?>" accesskey="3" tabindex="3"><?php _e('Hotkeys') ?></a></li>
-       <li><a id="tab4" href="javascript:flipTab(4)" title="<?php _e('About the software') ?>" accesskey="4" tabindex="4"><?php _e('About') ?></a></li>
+       <li><a id="tab1" href="javascript:flipTab(1)" title="<?php esc_attr_e('Basics of Rich Editing') ?>" accesskey="1" tabindex="1" class="current"><?php _e('Basics') ?></a></li>
+       <li><a id="tab2" href="javascript:flipTab(2)" title="<?php esc_attr_e('Advanced use of the Rich Editor') ?>" accesskey="2" tabindex="2"><?php _e('Advanced') ?></a></li>
+       <li><a id="tab3" href="javascript:flipTab(3)" title="<?php esc_attr_e('Hotkeys') ?>" accesskey="3" tabindex="3"><?php _e('Hotkeys') ?></a></li>
+       <li><a id="tab4" href="javascript:flipTab(4)" title="<?php esc_attr_e('About the software') ?>" accesskey="4" tabindex="4"><?php _e('About') ?></a></li>
 </ul>
 
 <div id="flipper" class="wrap">
 </ul>
 
 <div id="flipper" class="wrap">
@@ -273,7 +276,7 @@ wp_admin_css( 'wp-admin', true );
        <p><?php _e('For more information about this software visit the <a href="http://tinymce.moxiecode.com" target="_blank">TinyMCE website</a>.') ?></p>
 
        <div id="buttoncontainer">
        <p><?php _e('For more information about this software visit the <a href="http://tinymce.moxiecode.com" target="_blank">TinyMCE website</a>.') ?></p>
 
        <div id="buttoncontainer">
-               <a href="http://www.moxiecode.com" target="_blank"><img src="themes/advanced/img/gotmoxie.png" alt="<?php _e('Got Moxie?') ?>" style="border: 0" /></a>
+               <a href="http://www.moxiecode.com" target="_blank"><img src="themes/advanced/img/gotmoxie.png" alt="<?php esc_attr_e('Got Moxie?') ?>" style="border: 0" /></a>
        </div>
 
 </div>
        </div>
 
 </div>
@@ -281,7 +284,7 @@ wp_admin_css( 'wp-admin', true );
 
 <div class="mceActionPanel">
        <div style="margin: 8px auto; text-align: center;padding-bottom: 10px;">
 
 <div class="mceActionPanel">
        <div style="margin: 8px auto; text-align: center;padding-bottom: 10px;">
-               <input type="button" id="cancel" name="cancel" value="<?php _e('Close'); ?>" title="<?php _e('Close'); ?>" onclick="tinyMCEPopup.close();" />
+               <input type="button" id="cancel" name="cancel" value="<?php esc_attr_e('Close'); ?>" title="<?php esc_attr_e('Close'); ?>" onclick="tinyMCEPopup.close();" />
        </div>
 </div>
 
        </div>
 </div>
 
index 3441ea640554863645c8d1a827277a4ecbd729ae..cfc49ce5e0b17200d0dde33b82555dfafa77455f 100644 (file)
Binary files a/wp-includes/js/tinymce/wp-tinymce.js.gz and b/wp-includes/js/tinymce/wp-tinymce.js.gz differ
diff --git a/wp-includes/js/wp-pointer.dev.js b/wp-includes/js/wp-pointer.dev.js
new file mode 100644 (file)
index 0000000..0cb111b
--- /dev/null
@@ -0,0 +1,281 @@
+/**
+ * Pointer jQuery widget.
+ */
+(function($){
+       var identifier = 0,
+               zindex = 9999;
+
+       $.widget("wp.pointer", {
+               options: {
+                       pointerClass: 'wp-pointer',
+                       pointerWidth: 320,
+                       content: function( respond, event, t ) {
+                               return $(this).text();
+                       },
+                       buttons: function( event, t ) {
+                               var close  = ( wpPointerL10n ) ? wpPointerL10n.dismiss : 'Dismiss',
+                                       button = $('<a class="close" href="#">' + close + '</a>');
+
+                               return button.bind( 'click.pointer', function(e) {
+                                       e.preventDefault();
+                                       t.element.pointer('close');
+                               });
+                       },
+                       position: 'top',
+                       show: function( event, t ) {
+                               t.pointer.show();
+                               t.opened();
+                       },
+                       hide: function( event, t ) {
+                               t.pointer.hide();
+                               t.closed();
+                       },
+                       document: document
+               },
+
+               _create: function() {
+                       var positioning,
+                               family;
+
+                       this.content = $('<div class="wp-pointer-content"></div>');
+                       this.arrow   = $('<div class="wp-pointer-arrow"><div class="wp-pointer-arrow-inner"></div></div>');
+
+                       family = this.element.parents().add( this.element );
+                       positioning = 'absolute';
+
+                       if ( family.filter(function(){ return 'fixed' === $(this).css('position'); }).length )
+                               positioning = 'fixed';
+
+
+                       this.pointer = $('<div />')
+                               .append( this.content )
+                               .append( this.arrow )
+                               .attr('id', 'wp-pointer-' + identifier++)
+                               .addClass( this.options.pointerClass )
+                               .css({'position': positioning, 'width': this.options.pointerWidth+'px', 'display': 'none'})
+                               .appendTo( this.options.document.body );
+               },
+
+               _setOption: function( key, value ) {
+                       var o   = this.options,
+                               tip = this.pointer;
+
+                       // Handle document transfer
+                       if ( key === "document" && value !== o.document ) {
+                               tip.detach().appendTo( value.body );
+
+                       // Handle class change
+                       } else if ( key === "pointerClass" ) {
+                               tip.removeClass( o.pointerClass ).addClass( value );
+                       }
+
+                       // Call super method.
+                       $.Widget.prototype._setOption.apply( this, arguments );
+
+                       // Reposition automatically
+                       if ( key === "position" ) {
+                               this.reposition();
+
+                       // Update content automatically if pointer is open
+                       } else if ( key === "content" && this.active ) {
+                               this.update();
+                       }
+               },
+
+               destroy: function() {
+                       this.pointer.remove();
+                       $.Widget.prototype.destroy.call( this );
+               },
+
+               widget: function() {
+                       return this.pointer;
+               },
+
+               update: function( event ) {
+                       var self = this,
+                               o    = this.options,
+                               dfd  = $.Deferred(),
+                               content;
+
+                       if ( o.disabled )
+                               return;
+
+                       dfd.done( function( content ) {
+                               self._update( event, content );
+                       })
+
+                       // Either o.content is a string...
+                       if ( typeof o.content === 'string' ) {
+                               content = o.content;
+
+                       // ...or o.content is a callback.
+                       } else {
+                               content = o.content.call( this.element[0], dfd.resolve, event, this._handoff() );
+                       }
+
+                       // If content is set, then complete the update.
+                       if ( content )
+                               dfd.resolve( content );
+
+                       return dfd.promise();
+               },
+
+               /**
+                * Update is separated into two functions to allow events to defer
+                * updating the pointer (e.g. fetch content with ajax, etc).
+                */
+               _update: function( event, content ) {
+                       var buttons,
+                               o = this.options;
+
+                       if ( ! content )
+                               return;
+
+                       this.pointer.stop(); // Kill any animations on the pointer.
+                       this.content.html( content );
+
+                       buttons = o.buttons.call( this.element[0], event, this._handoff() );
+                       if ( buttons ) {
+                               buttons.wrap('<div class="wp-pointer-buttons" />').parent().appendTo( this.content );
+                       }
+
+                       this.reposition();
+               },
+
+               reposition: function() {
+                       var position;
+
+                       if ( this.options.disabled )
+                               return;
+
+                       position = this._processPosition( this.options.position );
+
+                       // Reposition pointer.
+                       this.pointer.css({
+                               top: 0,
+                               left: 0,
+                               zIndex: zindex++ // Increment the z-index so that it shows above other opened pointers.
+                       }).show().position($.extend({
+                               of: this.element
+                       }, position )); // the object comes before this.options.position so the user can override position.of.
+
+                       this.repoint();
+               },
+
+               repoint: function() {
+                       var o = this.options,
+                               edge;
+
+                       if ( o.disabled )
+                               return;
+
+                       edge = ( typeof o.position == 'string' ) ? o.position : o.position.edge;
+
+                       // Remove arrow classes.
+                       this.pointer[0].className = this.pointer[0].className.replace( /wp-pointer-[^\s'"]*/, '' );
+
+                       // Add arrow class.
+                       this.pointer.addClass( 'wp-pointer-' + edge );
+               },
+
+               _processPosition: function( position ) {
+                       var opposite = {
+                                       top: 'bottom',
+                                       bottom: 'top',
+                                       left: 'right',
+                                       right: 'left'
+                               },
+                               result;
+
+                       // If the position object is a string, it is shorthand for position.edge.
+                       if ( typeof position == 'string' ) {
+                               result = {
+                                       edge: position + ''
+                               };
+                       } else {
+                               result = $.extend( {}, position );
+                       }
+
+                       if ( ! result.edge )
+                               return result;
+
+                       if ( result.edge == 'top' || result.edge == 'bottom' ) {
+                               result.align = result.align || 'left';
+
+                               result.at = result.at || result.align + ' ' + opposite[ result.edge ];
+                               result.my = result.my || result.align + ' ' + result.edge;
+                       } else {
+                               result.align = result.align || 'top';
+
+                               result.at = result.at || opposite[ result.edge ] + ' ' + result.align;
+                               result.my = result.my || result.edge + ' ' + result.align;
+                       }
+
+                       return result;
+               },
+
+               open: function( event ) {
+                       var self = this,
+                               o    = this.options;
+
+                       if ( this.active || o.disabled || this.element.is(':hidden') )
+                               return;
+
+                       this.update().done( function() {
+                               self._open( event );
+                       });
+               },
+
+               _open: function( event ) {
+                       var self = this,
+                               o    = this.options;
+
+                       if ( this.active || o.disabled || this.element.is(':hidden') )
+                               return;
+
+                       this.active = true;
+
+                       this._trigger( "open", event, this._handoff() );
+
+                       this._trigger( "show", event, this._handoff({
+                               opened: function() {
+                                       self._trigger( "opened", event, self._handoff() );
+                               }
+                       }));
+               },
+
+               close: function( event ) {
+                       if ( !this.active || this.options.disabled )
+                               return;
+
+                       var self = this;
+                       this.active = false;
+
+                       this._trigger( "close", event, this._handoff() );
+                       this._trigger( "hide", event, this._handoff({
+                               closed: function() {
+                                       self._trigger( "closed", event, self._handoff() );
+                               }
+                       }));
+               },
+
+               sendToTop: function( event ) {
+                       if ( this.active )
+                               this.pointer.css( 'z-index', zindex++ );
+               },
+
+               toggle: function( event ) {
+                       if ( this.pointer.is(':hidden') )
+                               this.open( event );
+                       else
+                               this.close( event );
+               },
+
+               _handoff: function( extend ) {
+                       return $.extend({
+                               pointer: this.pointer,
+                               element: this.element
+                       }, extend);
+               }
+       });
+})(jQuery);
diff --git a/wp-includes/js/wp-pointer.js b/wp-includes/js/wp-pointer.js
new file mode 100644 (file)
index 0000000..3b322a6
--- /dev/null
@@ -0,0 +1 @@
+(function(c){var a=0,b=9999;c.widget("wp.pointer",{options:{pointerClass:"wp-pointer",pointerWidth:320,content:function(f,e,d){return c(this).text()},buttons:function(f,e){var g=(wpPointerL10n)?wpPointerL10n.dismiss:"Dismiss",d=c('<a class="close" href="#">'+g+"</a>");return d.bind("click.pointer",function(h){h.preventDefault();e.element.pointer("close")})},position:"top",show:function(e,d){d.pointer.show();d.opened()},hide:function(e,d){d.pointer.hide();d.closed()},document:document},_create:function(){var e,d;this.content=c('<div class="wp-pointer-content"></div>');this.arrow=c('<div class="wp-pointer-arrow"><div class="wp-pointer-arrow-inner"></div></div>');d=this.element.parents().add(this.element);e="absolute";if(d.filter(function(){return"fixed"===c(this).css("position")}).length){e="fixed"}this.pointer=c("<div />").append(this.content).append(this.arrow).attr("id","wp-pointer-"+a++).addClass(this.options.pointerClass).css({position:e,width:this.options.pointerWidth+"px",display:"none"}).appendTo(this.options.document.body)},_setOption:function(d,f){var g=this.options,e=this.pointer;if(d==="document"&&f!==g.document){e.detach().appendTo(f.body)}else{if(d==="pointerClass"){e.removeClass(g.pointerClass).addClass(f)}}c.Widget.prototype._setOption.apply(this,arguments);if(d==="position"){this.reposition()}else{if(d==="content"&&this.active){this.update()}}},destroy:function(){this.pointer.remove();c.Widget.prototype.destroy.call(this)},widget:function(){return this.pointer},update:function(g){var e=this,h=this.options,d=c.Deferred(),f;if(h.disabled){return}d.done(function(i){e._update(g,i)});if(typeof h.content==="string"){f=h.content}else{f=h.content.call(this.element[0],d.resolve,g,this._handoff())}if(f){d.resolve(f)}return d.promise()},_update:function(f,e){var d,g=this.options;if(!e){return}this.pointer.stop();this.content.html(e);d=g.buttons.call(this.element[0],f,this._handoff());if(d){d.wrap('<div class="wp-pointer-buttons" />').parent().appendTo(this.content)}this.reposition()},reposition:function(){var d;if(this.options.disabled){return}d=this._processPosition(this.options.position);this.pointer.css({top:0,left:0,zIndex:b++}).show().position(c.extend({of:this.element},d));this.repoint()},repoint:function(){var e=this.options,d;if(e.disabled){return}d=(typeof e.position=="string")?e.position:e.position.edge;this.pointer[0].className=this.pointer[0].className.replace(/wp-pointer-[^\s'"]*/,"");this.pointer.addClass("wp-pointer-"+d)},_processPosition:function(e){var f={top:"bottom",bottom:"top",left:"right",right:"left"},d;if(typeof e=="string"){d={edge:e+""}}else{d=c.extend({},e)}if(!d.edge){return d}if(d.edge=="top"||d.edge=="bottom"){d.align=d.align||"left";d.at=d.at||d.align+" "+f[d.edge];d.my=d.my||d.align+" "+d.edge}else{d.align=d.align||"top";d.at=d.at||f[d.edge]+" "+d.align;d.my=d.my||d.edge+" "+d.align}return d},open:function(e){var d=this,f=this.options;if(this.active||f.disabled||this.element.is(":hidden")){return}this.update().done(function(){d._open(e)})},_open:function(e){var d=this,f=this.options;if(this.active||f.disabled||this.element.is(":hidden")){return}this.active=true;this._trigger("open",e,this._handoff());this._trigger("show",e,this._handoff({opened:function(){d._trigger("opened",e,d._handoff())}}))},close:function(e){if(!this.active||this.options.disabled){return}var d=this;this.active=false;this._trigger("close",e,this._handoff());this._trigger("hide",e,this._handoff({closed:function(){d._trigger("closed",e,d._handoff())}}))},sendToTop:function(d){if(this.active){this.pointer.css("z-index",b++)}},toggle:function(d){if(this.pointer.is(":hidden")){this.open(d)}else{this.close(d)}},_handoff:function(d){return c.extend({pointer:this.pointer,element:this.element},d)}})})(jQuery);
\ No newline at end of file
similarity index 97%
rename from wp-includes/js/tinymce/plugins/wplink/js/wplink.dev.js
rename to wp-includes/js/wplink.dev.js
index 87c0bab7ab656db15b853b6bd6497f5e4eb95231..24403d3136bcfceb728a0db7600c0f58125571a8 100644 (file)
@@ -9,13 +9,14 @@ var wpLink;
                riverBottomThreshold: 5,
                keySensitivity: 100,
                lastSearch: '',
                riverBottomThreshold: 5,
                keySensitivity: 100,
                lastSearch: '',
-               textarea: function() { return edCanvas; },
+               textarea: '',
 
                init : function() {
                        inputs.dialog = $('#wp-link');
                        inputs.submit = $('#wp-link-submit');
                        // URL
                        inputs.url = $('#url-field');
 
                init : function() {
                        inputs.dialog = $('#wp-link');
                        inputs.submit = $('#wp-link-submit');
                        // URL
                        inputs.url = $('#url-field');
+                       inputs.nonce = $('#_ajax_linking_nonce');
                        // Secondary options
                        inputs.title = $('#link-title-field');
                        // Advanced Options
                        // Secondary options
                        inputs.title = $('#link-title-field');
                        // Advanced Options
@@ -30,10 +31,13 @@ var wpLink;
                        inputs.dialog.keydown( wpLink.keydown );
                        inputs.dialog.keyup( wpLink.keyup );
                        inputs.submit.click( function(e){
                        inputs.dialog.keydown( wpLink.keydown );
                        inputs.dialog.keyup( wpLink.keyup );
                        inputs.submit.click( function(e){
+                               e.preventDefault();
                                wpLink.update();
                                wpLink.update();
+                       });
+                       $('#wp-link-cancel').click( function(e){
                                e.preventDefault();
                                e.preventDefault();
+                               wpLink.close();
                        });
                        });
-                       $('#wp-link-cancel').click( wpLink.close );
                        $('#internal-toggle').click( wpLink.toggleInternalLinking );
 
                        rivers.elements.bind('river-select', wpLink.updateFields );
                        $('#internal-toggle').click( wpLink.toggleInternalLinking );
 
                        rivers.elements.bind('river-select', wpLink.updateFields );
@@ -49,12 +53,17 @@ var wpLink;
                        wpLink.range = null;
 
                        if ( ! wpLink.isMCE() && document.selection ) {
                        wpLink.range = null;
 
                        if ( ! wpLink.isMCE() && document.selection ) {
-                               wpLink.textarea().focus();
+                               wpLink.textarea.focus();
                                wpLink.range = document.selection.createRange();
                        }
                },
 
                open : function() {
                                wpLink.range = document.selection.createRange();
                        }
                },
 
                open : function() {
+                       if ( !wpActiveEditor )
+                               return;
+
+                       this.textarea = $('#'+wpActiveEditor).get(0);
+
                        // Initialize the dialog if necessary (html mode).
                        if ( ! inputs.dialog.data('wpdialog') ) {
                                inputs.dialog.wpdialog({
                        // Initialize the dialog if necessary (html mode).
                        if ( ! inputs.dialog.data('wpdialog') ) {
                                inputs.dialog.wpdialog({
@@ -102,7 +111,7 @@ var wpLink;
                        // If link exists, select proper values.
                        if ( e = ed.dom.getParent(ed.selection.getNode(), 'A') ) {
                                // Set URL and description.
                        // If link exists, select proper values.
                        if ( e = ed.dom.getParent(ed.selection.getNode(), 'A') ) {
                                // Set URL and description.
-                               inputs.url.val( e.href );
+                               inputs.url.val( ed.dom.getAttrib(e, 'href') );
                                inputs.title.val( ed.dom.getAttrib(e, 'title') );
                                // Set open in new tab.
                                if ( "_blank" == ed.dom.getAttrib(e, 'target') )
                                inputs.title.val( ed.dom.getAttrib(e, 'title') );
                                // Set open in new tab.
                                if ( "_blank" == ed.dom.getAttrib(e, 'target') )
@@ -127,7 +136,7 @@ var wpLink;
 
                onClose: function() {
                        if ( ! wpLink.isMCE() ) {
 
                onClose: function() {
                        if ( ! wpLink.isMCE() ) {
-                               wpLink.textarea().focus();
+                               wpLink.textarea.focus();
                                if ( wpLink.range ) {
                                        wpLink.range.moveToBookmark( wpLink.range.getBookmark() );
                                        wpLink.range.select();
                                if ( wpLink.range ) {
                                        wpLink.range.moveToBookmark( wpLink.range.getBookmark() );
                                        wpLink.range.select();
@@ -152,7 +161,7 @@ var wpLink;
 
                htmlUpdate : function() {
                        var attrs, html, start, end, cursor,
 
                htmlUpdate : function() {
                        var attrs, html, start, end, cursor,
-                               textarea = wpLink.textarea();
+                               textarea = wpLink.textarea;
 
                        if ( ! textarea )
                                return;
 
                        if ( ! textarea )
                                return;
@@ -564,7 +573,7 @@ var wpLink;
                                query = {
                                        action : 'wp-link-ajax',
                                        page : this.page,
                                query = {
                                        action : 'wp-link-ajax',
                                        page : this.page,
-                                       '_ajax_linking_nonce' : $('#_ajax_linking_nonce').val()
+                                       '_ajax_linking_nonce' : inputs.nonce.val()
                                };
 
                        if ( this.search )
                                };
 
                        if ( this.search )
diff --git a/wp-includes/js/wplink.js b/wp-includes/js/wplink.js
new file mode 100644 (file)
index 0000000..ee92964
--- /dev/null
@@ -0,0 +1 @@
+var wpLink;(function(f){var b={},e={},d,a,c;wpLink={timeToTriggerRiver:150,minRiverAJAXDuration:200,riverBottomThreshold:5,keySensitivity:100,lastSearch:"",textarea:"",init:function(){b.dialog=f("#wp-link");b.submit=f("#wp-link-submit");b.url=f("#url-field");b.nonce=f("#_ajax_linking_nonce");b.title=f("#link-title-field");b.openInNewTab=f("#link-target-checkbox");b.search=f("#search-field");e.search=new a(f("#search-results"));e.recent=new a(f("#most-recent-results"));e.elements=f(".query-results",b.dialog);b.dialog.keydown(wpLink.keydown);b.dialog.keyup(wpLink.keyup);b.submit.click(function(g){g.preventDefault();wpLink.update()});f("#wp-link-cancel").click(function(g){g.preventDefault();wpLink.close()});f("#internal-toggle").click(wpLink.toggleInternalLinking);e.elements.bind("river-select",wpLink.updateFields);b.search.keyup(wpLink.searchInternalLinks);b.dialog.bind("wpdialogrefresh",wpLink.refresh);b.dialog.bind("wpdialogbeforeopen",wpLink.beforeOpen);b.dialog.bind("wpdialogclose",wpLink.onClose)},beforeOpen:function(){wpLink.range=null;if(!wpLink.isMCE()&&document.selection){wpLink.textarea.focus();wpLink.range=document.selection.createRange()}},open:function(){if(!wpActiveEditor){return}this.textarea=f("#"+wpActiveEditor).get(0);if(!b.dialog.data("wpdialog")){b.dialog.wpdialog({title:wpLinkL10n.title,width:480,height:"auto",modal:true,dialogClass:"wp-dialog",zIndex:300000})}b.dialog.wpdialog("open")},isMCE:function(){return tinyMCEPopup&&(d=tinyMCEPopup.editor)&&!d.isHidden()},refresh:function(){e.search.refresh();e.recent.refresh();if(wpLink.isMCE()){wpLink.mceRefresh()}else{wpLink.setDefaultValues()}b.url.focus()[0].select();if(!e.recent.ul.children().length){e.recent.ajax()}},mceRefresh:function(){var g;d=tinyMCEPopup.editor;tinyMCEPopup.restoreSelection();if(g=d.dom.getParent(d.selection.getNode(),"A")){b.url.val(d.dom.getAttrib(g,"href"));b.title.val(d.dom.getAttrib(g,"title"));if("_blank"==d.dom.getAttrib(g,"target")){b.openInNewTab.prop("checked",true)}b.submit.val(wpLinkL10n.update)}else{wpLink.setDefaultValues()}tinyMCEPopup.storeSelection()},close:function(){if(wpLink.isMCE()){tinyMCEPopup.close()}else{b.dialog.wpdialog("close")}},onClose:function(){if(!wpLink.isMCE()){wpLink.textarea.focus();if(wpLink.range){wpLink.range.moveToBookmark(wpLink.range.getBookmark());wpLink.range.select()}}},getAttrs:function(){return{href:b.url.val(),title:b.title.val(),target:b.openInNewTab.prop("checked")?"_blank":""}},update:function(){if(wpLink.isMCE()){wpLink.mceUpdate()}else{wpLink.htmlUpdate()}},htmlUpdate:function(){var i,j,l,h,k,g=wpLink.textarea;if(!g){return}i=wpLink.getAttrs();if(!i.href||i.href=="http://"){return}j='<a href="'+i.href+'"';if(i.title){j+=' title="'+i.title+'"'}if(i.target){j+=' target="'+i.target+'"'}j+=">";if(typeof g.selectionStart!=="undefined"){l=g.selectionStart;h=g.selectionEnd;selection=g.value.substring(l,h);j=j+selection+"</a>";k=l+j.length;if(l==h){k-="</a>".length}g.value=g.value.substring(0,l)+j+g.value.substring(h,g.value.length);g.selectionStart=g.selectionEnd=k}else{if(document.selection&&wpLink.range){g.focus();wpLink.range.text=j+wpLink.range.text+"</a>";wpLink.range.moveToBookmark(wpLink.range.getBookmark());wpLink.range.select();wpLink.range=null}}wpLink.close();g.focus()},mceUpdate:function(){var h=tinyMCEPopup.editor,i=wpLink.getAttrs(),j,g;tinyMCEPopup.restoreSelection();j=h.dom.getParent(h.selection.getNode(),"A");if(!i.href||i.href=="http://"){if(j){tinyMCEPopup.execCommand("mceBeginUndoLevel");g=h.selection.getBookmark();h.dom.remove(j,1);h.selection.moveToBookmark(g);tinyMCEPopup.execCommand("mceEndUndoLevel");wpLink.close()}return}tinyMCEPopup.execCommand("mceBeginUndoLevel");if(j==null){h.getDoc().execCommand("unlink",false,null);tinyMCEPopup.execCommand("CreateLink",false,"#mce_temp_url#",{skip_undo:1});tinymce.each(h.dom.select("a"),function(k){if(h.dom.getAttrib(k,"href")=="#mce_temp_url#"){j=k;h.dom.setAttribs(j,i)}});if(f(j).text()=="#mce_temp_url#"){h.dom.remove(j);j=null}}else{h.dom.setAttribs(j,i)}if(j&&(j.childNodes.length!=1||j.firstChild.nodeName!="IMG")){h.focus();h.selection.select(j);h.selection.collapse(0);tinyMCEPopup.storeSelection()}tinyMCEPopup.execCommand("mceEndUndoLevel");wpLink.close()},updateFields:function(i,h,g){b.url.val(h.children(".item-permalink").val());b.title.val(h.hasClass("no-title")?"":h.children(".item-title").text());if(g&&g.type=="click"){b.url.focus()}},setDefaultValues:function(){b.url.val("http://");b.title.val("");b.submit.val(wpLinkL10n.save)},searchInternalLinks:function(){var h=f(this),i,g=h.val();if(g.length>2){e.recent.hide();e.search.show();if(wpLink.lastSearch==g){return}wpLink.lastSearch=g;i=h.siblings("img.waiting").show();e.search.change(g);e.search.ajax(function(){i.hide()})}else{e.search.hide();e.recent.show()}},next:function(){e.search.next();e.recent.next()},prev:function(){e.search.prev();e.recent.prev()},keydown:function(i){var h,g=f.ui.keyCode;switch(i.which){case g.UP:h="prev";case g.DOWN:h=h||"next";clearInterval(wpLink.keyInterval);wpLink[h]();wpLink.keyInterval=setInterval(wpLink[h],wpLink.keySensitivity);break;default:return}i.preventDefault()},keyup:function(h){var g=f.ui.keyCode;switch(h.which){case g.ESCAPE:h.stopImmediatePropagation();if(!f(document).triggerHandler("wp_CloseOnEscape",[{event:h,what:"wplink",cb:wpLink.close}])){wpLink.close()}return false;break;case g.UP:case g.DOWN:clearInterval(wpLink.keyInterval);break;default:return}h.preventDefault()},delayedCallback:function(i,g){var l,k,j,h;if(!g){return i}setTimeout(function(){if(k){return i.apply(h,j)}l=true},g);return function(){if(l){return i.apply(this,arguments)}j=arguments;h=this;k=true}},toggleInternalLinking:function(h){var g=f("#search-panel"),i=b.dialog.wpdialog("widget"),k=!g.is(":visible"),j=f(window);f(this).toggleClass("toggle-arrow-active",k);b.dialog.height("auto");g.slideToggle(300,function(){setUserSetting("wplink",k?"1":"0");b[k?"search":"url"].focus();var l=j.scrollTop(),o=i.offset().top,m=o+i.outerHeight(),n=m-j.height();if(n>l){i.animate({top:n<o?o-n:l},200)}});h.preventDefault()}};a=function(i,h){var g=this;this.element=i;this.ul=i.children("ul");this.waiting=i.find(".river-waiting");this.change(h);this.refresh();i.scroll(function(){g.maybeLoad()});i.delegate("li","click",function(j){g.select(f(this),j)})};f.extend(a.prototype,{refresh:function(){this.deselect();this.visible=this.element.is(":visible")},show:function(){if(!this.visible){this.deselect();this.element.show();this.visible=true}},hide:function(){this.element.hide();this.visible=false},select:function(h,k){var j,i,l,g;if(h.hasClass("unselectable")||h==this.selected){return}this.deselect();this.selected=h.addClass("selected");j=h.outerHeight();i=this.element.height();l=h.position().top;g=this.element.scrollTop();if(l<0){this.element.scrollTop(g+l)}else{if(l+j>i){this.element.scrollTop(g+l-i+j)}}this.element.trigger("river-select",[h,k,this])},deselect:function(){if(this.selected){this.selected.removeClass("selected")}this.selected=false},prev:function(){if(!this.visible){return}var g;if(this.selected){g=this.selected.prev("li");if(g.length){this.select(g)}}},next:function(){if(!this.visible){return}var g=this.selected?this.selected.next("li"):f("li:not(.unselectable):first",this.element);if(g.length){this.select(g)}},ajax:function(j){var h=this,i=this.query.page==1?0:wpLink.minRiverAJAXDuration,g=wpLink.delayedCallback(function(k,l){h.process(k,l);if(j){j(k,l)}},i);this.query.ajax(g)},change:function(g){if(this.query&&this._search==g){return}this._search=g;this.query=new c(g);this.element.scrollTop(0)},process:function(h,l){var i="",j=true,g="",k=l.page==1;if(!h){if(k){i+='<li class="unselectable"><span class="item-title"><em>'+wpLinkL10n.noMatchesFound+"</em></span></li>"}}else{f.each(h,function(){g=j?"alternate":"";g+=this["title"]?"":" no-title";i+=g?'<li class="'+g+'">':"<li>";i+='<input type="hidden" class="item-permalink" value="'+this["permalink"]+'" />';i+='<span class="item-title">';i+=this["title"]?this["title"]:wpLinkL10n.noTitle;i+='</span><span class="item-info">'+this["info"]+"</span></li>";j=!j})}this.ul[k?"html":"append"](i)},maybeLoad:function(){var h=this,i=this.element,g=i.scrollTop()+i.height();if(!this.query.ready()||g<this.ul.height()-wpLink.riverBottomThreshold){return}setTimeout(function(){var j=i.scrollTop(),k=j+i.height();if(!h.query.ready()||k<h.ul.height()-wpLink.riverBottomThreshold){return}h.waiting.show();i.scrollTop(j+h.waiting.outerHeight());h.ajax(function(){h.waiting.hide()})},wpLink.timeToTriggerRiver)}});c=function(g){this.page=1;this.allLoaded=false;this.querying=false;this.search=g};f.extend(c.prototype,{ready:function(){return !(this.querying||this.allLoaded)},ajax:function(i){var g=this,h={action:"wp-link-ajax",page:this.page,_ajax_linking_nonce:b.nonce.val()};if(this.search){h.search=this.search}this.querying=true;f.post(ajaxurl,h,function(j){g.page++;g.querying=false;g.allLoaded=!j;i(j,h)},"json")}});f(document).ready(wpLink.init)})(jQuery);
\ No newline at end of file
index 3a4da1e39200e84d94632c8216dff4aa67128eb2..d76b34482b398a7ce315a0e94f6dcfeca8aa5bb0 100644 (file)
@@ -500,7 +500,8 @@ if ( ! CUSTOM_TAGS ) {
  * @return string Filtered content with only allowed HTML elements
  */
 function wp_kses($string, $allowed_html, $allowed_protocols = array ()) {
  * @return string Filtered content with only allowed HTML elements
  */
 function wp_kses($string, $allowed_html, $allowed_protocols = array ()) {
-       $allowed_protocols = wp_parse_args( $allowed_protocols, apply_filters('kses_allowed_protocols', array ('http', 'https', 'ftp', 'ftps', 'mailto', 'news', 'irc', 'gopher', 'nntp', 'feed', 'telnet', 'mms', 'rtsp', 'svn') ));
+       if ( empty( $allowed_protocols ) )
+               $allowed_protocols = wp_allowed_protocols();
        $string = wp_kses_no_null($string);
        $string = wp_kses_js_entities($string);
        $string = wp_kses_normalize_entities($string);
        $string = wp_kses_no_null($string);
        $string = wp_kses_js_entities($string);
        $string = wp_kses_normalize_entities($string);
@@ -842,7 +843,7 @@ function wp_kses_hair($attr, $allowed_protocols) {
  * Performs different checks for attribute values.
  *
  * The currently implemented checks are "maxlen", "minlen", "maxval", "minval"
  * Performs different checks for attribute values.
  *
  * The currently implemented checks are "maxlen", "minlen", "maxval", "minval"
- * and "valueless" with even more checks to come soon.
+ * and "valueless".
  *
  * @since 1.0.0
  *
  *
  * @since 1.0.0
  *
@@ -887,7 +888,7 @@ function wp_kses_check_attr_val($value, $vless, $checkname, $checkvalue) {
                        break;
 
                case 'minval' :
                        break;
 
                case 'minval' :
-                       # The minval check checks that the attribute value is a positive integer,
+                       # The minval check makes sure that the attribute value is a positive integer,
                        # and that it is not smaller than the given value.
 
                        if (!preg_match('/^\s{0,6}[0-9]{1,6}\s{0,6}$/', $value))
                        # and that it is not smaller than the given value.
 
                        if (!preg_match('/^\s{0,6}[0-9]{1,6}\s{0,6}$/', $value))
@@ -897,7 +898,7 @@ function wp_kses_check_attr_val($value, $vless, $checkname, $checkvalue) {
                        break;
 
                case 'valueless' :
                        break;
 
                case 'valueless' :
-                       # The valueless check checks if the attribute has a value
+                       # The valueless check makes sure if the attribute has a value
                        # (like <a href="blah">) or not (<option selected>). If the given value
                        # is a "y" or a "Y", the attribute must not have a value.
                        # If the given value is an "n" or an "N", the attribute must have one.
                        # (like <a href="blah">) or not (<option selected>). If the given value
                        # is a "y" or a "Y", the attribute must not have a value.
                        # If the given value is an "n" or an "N", the attribute must have one.
@@ -954,14 +955,14 @@ function wp_kses_no_null($string) {
 /**
  * Strips slashes from in front of quotes.
  *
 /**
  * Strips slashes from in front of quotes.
  *
- * This function changes the character sequence  \"  to just  ". It leaves all
+ * This function changes the character sequence \" to just ". It leaves all
  * other slashes alone. It's really weird, but the quoting from
  * preg_replace(//e) seems to require this.
  *
  * @since 1.0.0
  *
  * @param string $string String to strip slashes
  * other slashes alone. It's really weird, but the quoting from
  * preg_replace(//e) seems to require this.
  *
  * @since 1.0.0
  *
  * @param string $string String to strip slashes
- * @return string Fixed strings with quoted slashes
+ * @return string Fixed string with quoted slashes
  */
 function wp_kses_stripslashes($string) {
        return preg_replace('%\\\\"%', '"', $string);
  */
 function wp_kses_stripslashes($string) {
        return preg_replace('%\\\\"%', '"', $string);
@@ -1042,7 +1043,7 @@ function wp_kses_bad_protocol_once($string, $allowed_protocols) {
  * Callback for wp_kses_bad_protocol_once() regular expression.
  *
  * This function processes URL protocols, checks to see if they're in the
  * Callback for wp_kses_bad_protocol_once() regular expression.
  *
  * This function processes URL protocols, checks to see if they're in the
- * white-list or not, and returns different data depending on the answer.
+ * whitelist or not, and returns different data depending on the answer.
  *
  * @access private
  * @since 1.0.0
  *
  * @access private
  * @since 1.0.0
@@ -1119,7 +1120,7 @@ function wp_kses_named_entities($matches) {
 /**
  * Callback for wp_kses_normalize_entities() regular expression.
  *
 /**
  * Callback for wp_kses_normalize_entities() regular expression.
  *
- * This function helps wp_kses_normalize_entities() to only accept 16 bit values
+ * This function helps wp_kses_normalize_entities() to only accept 16-bit values
  * and nothing more for &#number; entities.
  *
  * @access private
  * and nothing more for &#number; entities.
  *
  * @access private
@@ -1166,7 +1167,7 @@ function wp_kses_normalize_entities3($matches) {
  * Helper function to determine if a Unicode value is valid.
  *
  * @param int $i Unicode value
  * Helper function to determine if a Unicode value is valid.
  *
  * @param int $i Unicode value
- * @return bool true if the value was a valid Unicode number
+ * @return bool True if the value was a valid Unicode number
  */
 function valid_unicode($i) {
        return ( $i == 0x9 || $i == 0xa || $i == 0xd ||
  */
 function valid_unicode($i) {
        return ( $i == 0x9 || $i == 0xa || $i == 0xd ||
@@ -1342,7 +1343,7 @@ function kses_remove_filters() {
  * will be added.
  *
  * First removes all of the Kses filters in case the current user does not need
  * will be added.
  *
  * First removes all of the Kses filters in case the current user does not need
- * to have Kses filter the content. If the user does not have unfiltered html
+ * to have Kses filter the content. If the user does not have unfiltered_html
  * capability, then Kses filters are added.
  *
  * @uses kses_remove_filters() Removes the Kses filters
  * capability, then Kses filters are added.
  *
  * @uses kses_remove_filters() Removes the Kses filters
index f2c1e7b780af351719140582d9d8c0d1dddee580..733f3a447374bea75e6534a5d3e64dae474bd9ea 100644 (file)
@@ -16,7 +16,7 @@
  * defined. Then it is filtered through the 'locale' filter hook and the value
  * for the locale global set and the locale is returned.
  *
  * defined. Then it is filtered through the 'locale' filter hook and the value
  * for the locale global set and the locale is returned.
  *
- * The process to get the locale should only be done once but the locale will
+ * The process to get the locale should only be done once, but the locale will
  * always be filtered using the 'locale' hook.
  *
  * @since 1.5.0
  * always be filtered using the 'locale' hook.
  *
  * @since 1.5.0
@@ -36,9 +36,9 @@ function get_locale() {
                $locale = WPLANG;
 
        // If multisite, check options.
                $locale = WPLANG;
 
        // If multisite, check options.
-       if ( is_multisite() && !defined('WP_INSTALLING') ) {
-               $ms_locale = get_option('WPLANG');
-               if ( $ms_locale === false )
+       if ( is_multisite() ) {
+               // Don't check blog option when installing.
+               if ( defined( 'WP_INSTALLING' ) || ( false === $ms_locale = get_option( 'WPLANG' ) ) )
                        $ms_locale = get_site_option('WPLANG');
 
                if ( $ms_locale !== false )
                        $ms_locale = get_site_option('WPLANG');
 
                if ( $ms_locale !== false )
@@ -53,7 +53,7 @@ function get_locale() {
 
 /**
  * Retrieves the translation of $text. If there is no translation, or
 
 /**
  * Retrieves the translation of $text. If there is no translation, or
- * the domain isn't loaded the original text is returned.
+ * the domain isn't loaded, the original text is returned.
  *
  * @see __() Don't use translate() directly, use __()
  * @since 2.2.0
  *
  * @see __() Don't use translate() directly, use __()
  * @since 2.2.0
@@ -84,7 +84,7 @@ function translate_with_gettext_context( $text, $context, $domain = 'default' )
 
 /**
  * Retrieves the translation of $text. If there is no translation, or
 
 /**
  * Retrieves the translation of $text. If there is no translation, or
- * the domain isn't loaded the original text is returned.
+ * the domain isn't loaded, the original text is returned.
  *
  * @see translate() An alias of translate()
  * @since 2.1.0
  *
  * @see translate() An alias of translate()
  * @since 2.1.0
@@ -99,7 +99,7 @@ function __( $text, $domain = 'default' ) {
 
 /**
  * Retrieves the translation of $text and escapes it for safe use in an attribute.
 
 /**
  * Retrieves the translation of $text and escapes it for safe use in an attribute.
- * If there is no translation, or the domain isn't loaded the original text is returned.
+ * If there is no translation, or the domain isn't loaded, the original text is returned.
  *
  * @see translate() An alias of translate()
  * @see esc_attr()
  *
  * @see translate() An alias of translate()
  * @see esc_attr()
@@ -115,7 +115,7 @@ function esc_attr__( $text, $domain = 'default' ) {
 
 /**
  * Retrieves the translation of $text and escapes it for safe use in HTML output.
 
 /**
  * Retrieves the translation of $text and escapes it for safe use in HTML output.
- * If there is no translation, or the domain isn't loaded the original text is returned.
+ * If there is no translation, or the domain isn't loaded, the original text is returned.
  *
  * @see translate() An alias of translate()
  * @see esc_html()
  *
  * @see translate() An alias of translate()
  * @see esc_html()
@@ -177,7 +177,7 @@ function esc_html_e( $text, $domain = 'default' ) {
  * found in more than two places but with different translated context.
  *
  * By including the context in the pot file translators can translate the two
  * found in more than two places but with different translated context.
  *
  * By including the context in the pot file translators can translate the two
- * string differently.
+ * strings differently.
  *
  * @since 2.8.0
  *
  *
  * @since 2.8.0
  *
@@ -257,7 +257,7 @@ function _nx($single, $plural, $number, $context, $domain = 'default') {
 /**
  * Register plural strings in POT file, but don't translate them.
  *
 /**
  * Register plural strings in POT file, but don't translate them.
  *
- * Used when you want do keep structures with translatable plural strings and
+ * Used when you want to keep structures with translatable plural strings and
  * use them later.
  *
  * Example:
  * use them later.
  *
  * Example:
@@ -291,8 +291,8 @@ function _nx_noop( $singular, $plural, $context ) {
  * Translate the result of _n_noop() or _nx_noop()
  *
  * @since 3.1
  * Translate the result of _n_noop() or _nx_noop()
  *
  * @since 3.1
- * @param array $nooped_plural array with singular, plural and context keys, usually the result of _n_noop() or _nx_noop()
- * @param int $count number of objects
+ * @param array $nooped_plural Array with singular, plural and context keys, usually the result of _n_noop() or _nx_noop()
+ * @param int $count Number of objects
  * @param string $domain Optional. The domain identifier the text should be retrieved in
  */
 function translate_nooped_plural( $nooped_plural, $count, $domain = 'default' ) {
  * @param string $domain Optional. The domain identifier the text should be retrieved in
  */
 function translate_nooped_plural( $nooped_plural, $count, $domain = 'default' ) {
@@ -316,7 +316,7 @@ function translate_nooped_plural( $nooped_plural, $count, $domain = 'default' )
  *
  * @param string $domain Unique identifier for retrieving translated strings
  * @param string $mofile Path to the .mo file
  *
  * @param string $domain Unique identifier for retrieving translated strings
  * @param string $mofile Path to the .mo file
- * @return bool true on success, false on failure
+ * @return bool True on success, false on failure
  */
 function load_textdomain( $domain, $mofile ) {
        global $l10n;
  */
 function load_textdomain( $domain, $mofile ) {
        global $l10n;
@@ -373,7 +373,7 @@ function unload_textdomain( $domain ) {
  * Loads default translated strings based on locale.
  *
  * Loads the .mo file in WP_LANG_DIR constant path from WordPress root. The
  * Loads default translated strings based on locale.
  *
  * Loads the .mo file in WP_LANG_DIR constant path from WordPress root. The
- * translated (.mo) file is named based off of the locale.
+ * translated (.mo) file is named based on the locale.
  *
  * @since 1.5.0
  */
  *
  * @since 1.5.0
  */
@@ -382,7 +382,7 @@ function load_default_textdomain() {
 
        load_textdomain( 'default', WP_LANG_DIR . "/$locale.mo" );
 
 
        load_textdomain( 'default', WP_LANG_DIR . "/$locale.mo" );
 
-       if ( is_multisite() || ( defined( 'WP_NETWORK_ADMIN_PAGE' ) && WP_NETWORK_ADMIN_PAGE ) ) {
+       if ( is_multisite() || ( defined( 'WP_INSTALLING_NETWORK' ) && WP_INSTALLING_NETWORK ) ) {
                load_textdomain( 'default', WP_LANG_DIR . "/ms-$locale.mo" );
        }
 }
                load_textdomain( 'default', WP_LANG_DIR . "/ms-$locale.mo" );
        }
 }
@@ -398,7 +398,7 @@ function load_default_textdomain() {
  * @param string $domain Unique identifier for retrieving translated strings
  * @param string $abs_rel_path Optional. Relative path to ABSPATH of a folder,
  *     where the .mo file resides. Deprecated, but still functional until 2.7
  * @param string $domain Unique identifier for retrieving translated strings
  * @param string $abs_rel_path Optional. Relative path to ABSPATH of a folder,
  *     where the .mo file resides. Deprecated, but still functional until 2.7
- * @param string $plugin_rel_path Optional. Relative path to WP_PLUGIN_DIR. This is the preferred argument to use. It takes precendence over $abs_rel_path
+ * @param string $plugin_rel_path Optional. Relative path to WP_PLUGIN_DIR. This is the preferred argument to use. It takes precedence over $abs_rel_path
  */
 function load_plugin_textdomain( $domain, $abs_rel_path = false, $plugin_rel_path = false ) {
        $locale = apply_filters( 'plugin_locale', get_locale(), $domain );
  */
 function load_plugin_textdomain( $domain, $abs_rel_path = false, $plugin_rel_path = false ) {
        $locale = apply_filters( 'plugin_locale', get_locale(), $domain );
@@ -422,8 +422,8 @@ function load_plugin_textdomain( $domain, $abs_rel_path = false, $plugin_rel_pat
  * @since 3.0.0
  *
  * @param string $domain Unique identifier for retrieving translated strings
  * @since 3.0.0
  *
  * @param string $domain Unique identifier for retrieving translated strings
- * @param strings $mu_plugin_rel_path Relative to WPMU_PLUGIN_DIR directory in which
- * the MO file resides. Defaults is empty string.
+ * @param string $mu_plugin_rel_path Relative to WPMU_PLUGIN_DIR directory in which
+ * the MO file resides. Defaults to empty string.
  */
 function load_muplugin_textdomain( $domain, $mu_plugin_rel_path = '' ) {
        $locale = apply_filters( 'plugin_locale', get_locale(), $domain );
  */
 function load_muplugin_textdomain( $domain, $mu_plugin_rel_path = '' ) {
        $locale = apply_filters( 'plugin_locale', get_locale(), $domain );
@@ -483,7 +483,7 @@ function load_child_theme_textdomain( $domain, $path = false ) {
 function &get_translations_for_domain( $domain ) {
        global $l10n;
        if ( !isset( $l10n[$domain] ) ) {
 function &get_translations_for_domain( $domain ) {
        global $l10n;
        if ( !isset( $l10n[$domain] ) ) {
-               $l10n[$domain] = &new NOOP_Translations;
+               $l10n[$domain] = new NOOP_Translations;
        }
        return $l10n[$domain];
 }
        }
        return $l10n[$domain];
 }
@@ -520,7 +520,7 @@ function translate_user_role( $name ) {
  * @since 3.0.0
  *
  * @param string $dir A directory in which to search for language files. The default directory is WP_LANG_DIR.
  * @since 3.0.0
  *
  * @param string $dir A directory in which to search for language files. The default directory is WP_LANG_DIR.
- * @return array Array of language codes or an empty array if no languages are present.  Language codes are formed by stripping the .mo extension from the language file names.
+ * @return array Array of language codes or an empty array if no languages are present. Language codes are formed by stripping the .mo extension from the language file names.
  */
 function get_available_languages( $dir = null ) {
        $languages = array();
  */
 function get_available_languages( $dir = null ) {
        $languages = array();
index 70f7595670f4767b2490777e72a3297722c16c8e..7c5f51195fadd127f89b929644fc401dba54d3ee 100644 (file)
@@ -560,7 +560,7 @@ function get_author_feed_link( $author_id, $feed = '' ) {
 /**
  * Retrieve the feed link for a category.
  *
 /**
  * Retrieve the feed link for a category.
  *
- * Returns a link to the feed for all post in a given category. A specific feed
+ * Returns a link to the feed for all posts in a given category. A specific feed
  * can be requested or left blank to get the default feed.
  *
  * @package WordPress
  * can be requested or left blank to get the default feed.
  *
  * @package WordPress
@@ -576,9 +576,9 @@ function get_category_feed_link($cat_id, $feed = '') {
 }
 
 /**
 }
 
 /**
- * Retrieve the feed link for a taxonomy.
+ * Retrieve the feed link for a term.
  *
  *
- * Returns a link to the feed for all post in a given term. A specific feed
+ * Returns a link to the feed for all posts in a given term. A specific feed
  * can be requested or left blank to get the default feed.
  *
  * @since 3.0
  * can be requested or left blank to get the default feed.
  *
  * @since 3.0
@@ -586,7 +586,7 @@ function get_category_feed_link($cat_id, $feed = '') {
  * @param int $term_id ID of a category.
  * @param string $taxonomy Optional. Taxonomy of $term_id
  * @param string $feed Optional. Feed type.
  * @param int $term_id ID of a category.
  * @param string $taxonomy Optional. Taxonomy of $term_id
  * @param string $feed Optional. Feed type.
- * @return string Link to the feed for the taxonomy specified by $term_id and $taxonomy.
+ * @return string Link to the feed for the term specified by $term_id and $taxonomy.
 */
 function get_term_feed_link( $term_id, $taxonomy = 'category', $feed = '' ) {
        global $wp_rewrite;
 */
 function get_term_feed_link( $term_id, $taxonomy = 'category', $feed = '' ) {
        global $wp_rewrite;
@@ -895,7 +895,7 @@ function get_post_type_archive_feed_link( $post_type, $feed = '' ) {
  * @since 2.3.0
  *
  * @param int $id Optional. Post ID.
  * @since 2.3.0
  *
  * @param int $id Optional. Post ID.
- * @param string $context Optional, default to display. How to write the '&', defaults to '&amp;'.
+ * @param string $context Optional, defaults to display. How to write the '&', defaults to '&amp;'.
  * @return string
  */
 function get_edit_post_link( $id = 0, $context = 'display' ) {
  * @return string
  */
 function get_edit_post_link( $id = 0, $context = 'display' ) {
@@ -1064,8 +1064,8 @@ function edit_bookmark_link( $link = '', $before = '', $after = '', $bookmark =
  *
  * @since 1.5.0
  *
  *
  * @since 1.5.0
  *
- * @param bool $in_same_cat Optional. Whether post should be in same category.
- * @param string $excluded_categories Optional. Excluded categories IDs.
+ * @param bool $in_same_cat Optional. Whether post should be in same category.
+ * @param array|string $excluded_categories Optional. Array or comma-separated list of excluded category IDs.
  * @return mixed Post object if successful. Null if global $post is not set. Empty string if no corresponding post exists.
  */
 function get_previous_post($in_same_cat = false, $excluded_categories = '') {
  * @return mixed Post object if successful. Null if global $post is not set. Empty string if no corresponding post exists.
  */
 function get_previous_post($in_same_cat = false, $excluded_categories = '') {
@@ -1077,8 +1077,8 @@ function get_previous_post($in_same_cat = false, $excluded_categories = '') {
  *
  * @since 1.5.0
  *
  *
  * @since 1.5.0
  *
- * @param bool $in_same_cat Optional. Whether post should be in same category.
- * @param string $excluded_categories Optional. Excluded categories IDs.
+ * @param bool $in_same_cat Optional. Whether post should be in same category.
+ * @param array|string $excluded_categories Optional. Array or comma-separated list of excluded category IDs.
  * @return mixed Post object if successful. Null if global $post is not set. Empty string if no corresponding post exists.
  */
 function get_next_post($in_same_cat = false, $excluded_categories = '') {
  * @return mixed Post object if successful. Null if global $post is not set. Empty string if no corresponding post exists.
  */
 function get_next_post($in_same_cat = false, $excluded_categories = '') {
@@ -1092,12 +1092,12 @@ function get_next_post($in_same_cat = false, $excluded_categories = '') {
  *
  * @since 2.5.0
  *
  *
  * @since 2.5.0
  *
- * @param bool $in_same_cat Optional. Whether post should be in same category.
- * @param string $excluded_categories Optional. Excluded categories IDs.
+ * @param bool $in_same_cat Optional. Whether post should be in same category.
+ * @param array|string $excluded_categories Optional. Array or comma-separated list of excluded category IDs.
  * @param bool $previous Optional. Whether to retrieve previous post.
  * @return mixed Post object if successful. Null if global $post is not set. Empty string if no corresponding post exists.
  */
  * @param bool $previous Optional. Whether to retrieve previous post.
  * @return mixed Post object if successful. Null if global $post is not set. Empty string if no corresponding post exists.
  */
-function get_adjacent_post($in_same_cat = false, $excluded_categories = '', $previous = true) {
+function get_adjacent_post( $in_same_cat = false, $excluded_categories = '', $previous = true ) {
        global $post, $wpdb;
 
        if ( empty( $post ) )
        global $post, $wpdb;
 
        if ( empty( $post ) )
@@ -1107,7 +1107,7 @@ function get_adjacent_post($in_same_cat = false, $excluded_categories = '', $pre
 
        $join = '';
        $posts_in_ex_cats_sql = '';
 
        $join = '';
        $posts_in_ex_cats_sql = '';
-       if ( $in_same_cat || !empty($excluded_categories) ) {
+       if ( $in_same_cat || ! empty( $excluded_categories ) ) {
                $join = " INNER JOIN $wpdb->term_relationships AS tr ON p.ID = tr.object_id INNER JOIN $wpdb->term_taxonomy tt ON tr.term_taxonomy_id = tt.term_taxonomy_id";
 
                if ( $in_same_cat ) {
                $join = " INNER JOIN $wpdb->term_relationships AS tr ON p.ID = tr.object_id INNER JOIN $wpdb->term_taxonomy tt ON tr.term_taxonomy_id = tt.term_taxonomy_id";
 
                if ( $in_same_cat ) {
@@ -1116,9 +1116,20 @@ function get_adjacent_post($in_same_cat = false, $excluded_categories = '', $pre
                }
 
                $posts_in_ex_cats_sql = "AND tt.taxonomy = 'category'";
                }
 
                $posts_in_ex_cats_sql = "AND tt.taxonomy = 'category'";
-               if ( !empty($excluded_categories) ) {
-                       $excluded_categories = array_map('intval', explode(' and ', $excluded_categories));
-                       if ( !empty($cat_array) ) {
+               if ( ! empty( $excluded_categories ) ) {
+                       if ( ! is_array( $excluded_categories ) ) {
+                               // back-compat, $excluded_categories used to be IDs separated by " and "
+                               if ( strpos( $excluded_categories, ' and ' ) !== false ) {
+                                       _deprecated_argument( __FUNCTION__, '3.3', sprintf( __( 'Use commas instead of %s to separate excluded categories.' ), "'and'" ) );
+                                       $excluded_categories = explode( ' and ', $excluded_categories );
+                               } else {
+                                       $excluded_categories = explode( ',', $excluded_categories );
+                               }
+                       }
+
+                       $excluded_categories = array_map( 'intval', $excluded_categories );
+
+                       if ( ! empty( $cat_array ) ) {
                                $excluded_categories = array_diff($excluded_categories, $cat_array);
                                $posts_in_ex_cats_sql = '';
                        }
                                $excluded_categories = array_diff($excluded_categories, $cat_array);
                                $posts_in_ex_cats_sql = '';
                        }
@@ -1159,9 +1170,9 @@ function get_adjacent_post($in_same_cat = false, $excluded_categories = '', $pre
  * @since 2.8.0
  *
  * @param string $title Optional. Link title format.
  * @since 2.8.0
  *
  * @param string $title Optional. Link title format.
- * @param bool $in_same_cat Optional. Whether link should be in same category.
- * @param string $excluded_categories Optional. Excluded categories IDs.
- * @param bool $previous Optional, default is true. Whether display link to previous post.
+ * @param bool $in_same_cat Optional. Whether link should be in same category.
+ * @param array|string $excluded_categories Optional. Array or comma-separated list of excluded category IDs.
+ * @param bool $previous Optional, default is true. Whether to display link to previous or next post.
  * @return string
  */
 function get_adjacent_post_rel_link($title = '%title', $in_same_cat = false, $excluded_categories = '', $previous = true) {
  * @return string
  */
 function get_adjacent_post_rel_link($title = '%title', $in_same_cat = false, $excluded_categories = '', $previous = true) {
@@ -1196,8 +1207,8 @@ function get_adjacent_post_rel_link($title = '%title', $in_same_cat = false, $ex
  * @since 2.8.0
  *
  * @param string $title Optional. Link title format.
  * @since 2.8.0
  *
  * @param string $title Optional. Link title format.
- * @param bool $in_same_cat Optional. Whether link should be in same category.
- * @param string $excluded_categories Optional. Excluded categories IDs.
+ * @param bool $in_same_cat Optional. Whether link should be in same category.
+ * @param array|string $excluded_categories Optional. Array or comma-separated list of excluded category IDs.
  */
 function adjacent_posts_rel_link($title = '%title', $in_same_cat = false, $excluded_categories = '') {
        echo get_adjacent_post_rel_link($title, $in_same_cat, $excluded_categories = '', true);
  */
 function adjacent_posts_rel_link($title = '%title', $in_same_cat = false, $excluded_categories = '') {
        echo get_adjacent_post_rel_link($title, $in_same_cat, $excluded_categories = '', true);
@@ -1207,7 +1218,7 @@ function adjacent_posts_rel_link($title = '%title', $in_same_cat = false, $exclu
 /**
  * Display relational links for the posts adjacent to the current post for single post pages.
  *
 /**
  * Display relational links for the posts adjacent to the current post for single post pages.
  *
- * This is meant to be attached to actions like 'wp_head'.  Do not call this directly in plugins or theme templates.
+ * This is meant to be attached to actions like 'wp_head'. Do not call this directly in plugins or theme templates.
  * @since 3.0.0
  *
  */
  * @since 3.0.0
  *
  */
@@ -1223,8 +1234,8 @@ function adjacent_posts_rel_link_wp_head() {
  * @since 2.8.0
  *
  * @param string $title Optional. Link title format.
  * @since 2.8.0
  *
  * @param string $title Optional. Link title format.
- * @param bool $in_same_cat Optional. Whether link should be in same category.
- * @param string $excluded_categories Optional. Excluded categories IDs.
+ * @param bool $in_same_cat Optional. Whether link should be in same category.
+ * @param array|string $excluded_categories Optional. Array or comma-separated list of excluded category IDs.
  */
 function next_post_rel_link($title = '%title', $in_same_cat = false, $excluded_categories = '') {
        echo get_adjacent_post_rel_link($title, $in_same_cat, $excluded_categories = '', false);
  */
 function next_post_rel_link($title = '%title', $in_same_cat = false, $excluded_categories = '') {
        echo get_adjacent_post_rel_link($title, $in_same_cat, $excluded_categories = '', false);
@@ -1236,8 +1247,8 @@ function next_post_rel_link($title = '%title', $in_same_cat = false, $excluded_c
  * @since 2.8.0
  *
  * @param string $title Optional. Link title format.
  * @since 2.8.0
  *
  * @param string $title Optional. Link title format.
- * @param bool $in_same_cat Optional. Whether link should be in same category.
- * @param string $excluded_categories Optional. Excluded categories IDs.
+ * @param bool $in_same_cat Optional. Whether link should be in same category.
+ * @param array|string $excluded_categories Optional. Array or comma-separated list of excluded category IDs.
  */
 function prev_post_rel_link($title = '%title', $in_same_cat = false, $excluded_categories = '') {
        echo get_adjacent_post_rel_link($title, $in_same_cat, $excluded_categories = '', true);
  */
 function prev_post_rel_link($title = '%title', $in_same_cat = false, $excluded_categories = '') {
        echo get_adjacent_post_rel_link($title, $in_same_cat, $excluded_categories = '', true);
@@ -1247,158 +1258,47 @@ function prev_post_rel_link($title = '%title', $in_same_cat = false, $excluded_c
  * Retrieve boundary post.
  *
  * Boundary being either the first or last post by publish date within the constraints specified
  * Retrieve boundary post.
  *
  * Boundary being either the first or last post by publish date within the constraints specified
- * by in same category or excluded categories.
+ * by $in_same_cat or $excluded_categories.
  *
  * @since 2.8.0
  *
  *
  * @since 2.8.0
  *
- * @param bool $in_same_cat Optional. Whether returned post should be in same category.
- * @param string $excluded_categories Optional. Excluded categories IDs.
+ * @param bool $in_same_cat Optional. Whether returned post should be in same category.
+ * @param array|string $excluded_categories Optional. Array or comma-separated list of excluded category IDs.
  * @param bool $start Optional. Whether to retrieve first or last post.
  * @return object
  */
  * @param bool $start Optional. Whether to retrieve first or last post.
  * @return object
  */
-function get_boundary_post($in_same_cat = false, $excluded_categories = '', $start = true) {
+function get_boundary_post( $in_same_cat = false, $excluded_categories = '', $start = true ) {
        global $post;
 
        global $post;
 
-       if ( empty($post) || !is_single() || is_attachment() )
+       if ( empty($post) || ! is_single() || is_attachment() )
                return null;
 
        $cat_array = array();
                return null;
 
        $cat_array = array();
-       $excluded_categories = array();
-       if ( !empty($in_same_cat) || !empty($excluded_categories) ) {
-               if ( !empty($in_same_cat) ) {
-                       $cat_array = wp_get_object_terms($post->ID, 'category', array('fields' => 'ids'));
-               }
+       if( ! is_array( $excluded_categories ) )
+               $excluded_categories = explode( ',', $excluded_categories );
 
 
-               if ( !empty($excluded_categories) ) {
-                       $excluded_categories = array_map('intval', explode(',', $excluded_categories));
+       if ( $in_same_cat || ! empty( $excluded_categories ) ) {
+               if ( $in_same_cat )
+                       $cat_array = wp_get_object_terms( $post->ID, 'category', array( 'fields' => 'ids' ) );
 
 
-                       if ( !empty($cat_array) )
-                               $excluded_categories = array_diff($excluded_categories, $cat_array);
+               if ( ! empty( $excluded_categories ) ) {
+                       $excluded_categories = array_map( 'intval', $excluded_categories );
+                       $excluded_categories = array_diff( $excluded_categories, $cat_array );
 
                        $inverse_cats = array();
 
                        $inverse_cats = array();
-                       foreach ( $excluded_categories as $excluded_category)
+                       foreach ( $excluded_categories as $excluded_category )
                                $inverse_cats[] = $excluded_category * -1;
                        $excluded_categories = $inverse_cats;
                }
        }
 
                                $inverse_cats[] = $excluded_category * -1;
                        $excluded_categories = $inverse_cats;
                }
        }
 
-       $categories = implode(',', array_merge($cat_array, $excluded_categories) );
+       $categories = implode( ',', array_merge( $cat_array, $excluded_categories ) );
 
        $order = $start ? 'ASC' : 'DESC';
 
        return get_posts( array('numberposts' => 1, 'category' => $categories, 'order' => $order, 'update_post_term_cache' => false, 'update_post_meta_cache' => false) );
 }
 
 
        $order = $start ? 'ASC' : 'DESC';
 
        return get_posts( array('numberposts' => 1, 'category' => $categories, 'order' => $order, 'update_post_term_cache' => false, 'update_post_meta_cache' => false) );
 }
 
-/**
- * Get boundary post relational link.
- *
- * Can either be start or end post relational link.
- *
- * @since 2.8.0
- *
- * @param string $title Optional. Link title format.
- * @param bool $in_same_cat Optional. Whether link should be in same category.
- * @param string $excluded_categories Optional. Excluded categories IDs.
- * @param bool $start Optional, default is true. Whether display link to first or last post.
- * @return string
- */
-function get_boundary_post_rel_link($title = '%title', $in_same_cat = false, $excluded_categories = '', $start = true) {
-       $posts = get_boundary_post($in_same_cat, $excluded_categories, $start);
-       // If there is no post stop.
-       if ( empty($posts) )
-               return;
-
-       // Even though we limited get_posts to return only 1 item it still returns an array of objects.
-       $post = $posts[0];
-
-       if ( empty($post->post_title) )
-               $post->post_title = $start ? __('First Post') : __('Last Post');
-
-       $date = mysql2date(get_option('date_format'), $post->post_date);
-
-       $title = str_replace('%title', $post->post_title, $title);
-       $title = str_replace('%date', $date, $title);
-       $title = apply_filters('the_title', $title, $post->ID);
-
-       $link = $start ? "<link rel='start' title='" : "<link rel='end' title='";
-       $link .= esc_attr($title);
-       $link .= "' href='" . get_permalink($post) . "' />\n";
-
-       $boundary = $start ? 'start' : 'end';
-       return apply_filters( "{$boundary}_post_rel_link", $link );
-}
-
-/**
- * Display relational link for the first post.
- *
- * @since 2.8.0
- *
- * @param string $title Optional. Link title format.
- * @param bool $in_same_cat Optional. Whether link should be in same category.
- * @param string $excluded_categories Optional. Excluded categories IDs.
- */
-function start_post_rel_link($title = '%title', $in_same_cat = false, $excluded_categories = '') {
-       echo get_boundary_post_rel_link($title, $in_same_cat, $excluded_categories, true);
-}
-
-/**
- * Get site index relational link.
- *
- * @since 2.8.0
- *
- * @return string
- */
-function get_index_rel_link() {
-       $link = "<link rel='index' title='" . esc_attr( get_bloginfo( 'name', 'display' ) ) . "' href='" . esc_url( user_trailingslashit( get_bloginfo( 'url', 'display' ) ) ) . "' />\n";
-       return apply_filters( "index_rel_link", $link );
-}
-
-/**
- * Display relational link for the site index.
- *
- * @since 2.8.0
- */
-function index_rel_link() {
-       echo get_index_rel_link();
-}
-
-/**
- * Get parent post relational link.
- *
- * @since 2.8.0
- *
- * @param string $title Optional. Link title format.
- * @return string
- */
-function get_parent_post_rel_link($title = '%title') {
-       if ( ! empty( $GLOBALS['post'] ) && ! empty( $GLOBALS['post']->post_parent ) )
-               $post = & get_post($GLOBALS['post']->post_parent);
-
-       if ( empty($post) )
-               return;
-
-       $date = mysql2date(get_option('date_format'), $post->post_date);
-
-       $title = str_replace('%title', $post->post_title, $title);
-       $title = str_replace('%date', $date, $title);
-       $title = apply_filters('the_title', $title, $post->ID);
-
-       $link = "<link rel='up' title='";
-       $link .= esc_attr( $title );
-       $link .= "' href='" . get_permalink($post) . "' />\n";
-
-       return apply_filters( "parent_post_rel_link", $link );
-}
-
-/**
- * Display relational link for parent item
- *
- * @since 2.8.0
- */
-function parent_post_rel_link($title = '%title') {
-       echo get_parent_post_rel_link($title);
-}
-
 /**
  * Display previous post link that is adjacent to the current post.
  *
 /**
  * Display previous post link that is adjacent to the current post.
  *
@@ -1406,8 +1306,8 @@ function parent_post_rel_link($title = '%title') {
  *
  * @param string $format Optional. Link anchor format.
  * @param string $link Optional. Link permalink format.
  *
  * @param string $format Optional. Link anchor format.
  * @param string $link Optional. Link permalink format.
- * @param bool $in_same_cat Optional. Whether link should be in same category.
- * @param string $excluded_categories Optional. Excluded categories IDs.
+ * @param bool $in_same_cat Optional. Whether link should be in same category.
+ * @param array|string $excluded_categories Optional. Array or comma-separated list of excluded category IDs.
  */
 function previous_post_link($format='&laquo; %link', $link='%title', $in_same_cat = false, $excluded_categories = '') {
        adjacent_post_link($format, $link, $in_same_cat, $excluded_categories, true);
  */
 function previous_post_link($format='&laquo; %link', $link='%title', $in_same_cat = false, $excluded_categories = '') {
        adjacent_post_link($format, $link, $in_same_cat, $excluded_categories, true);
@@ -1420,8 +1320,8 @@ function previous_post_link($format='&laquo; %link', $link='%title', $in_same_ca
  *
  * @param string $format Optional. Link anchor format.
  * @param string $link Optional. Link permalink format.
  *
  * @param string $format Optional. Link anchor format.
  * @param string $link Optional. Link permalink format.
- * @param bool $in_same_cat Optional. Whether link should be in same category.
- * @param string $excluded_categories Optional. Excluded categories IDs.
+ * @param bool $in_same_cat Optional. Whether link should be in same category.
+ * @param array|string $excluded_categories Optional. Array or comma-separated list of excluded category IDs.
  */
 function next_post_link($format='%link &raquo;', $link='%title', $in_same_cat = false, $excluded_categories = '') {
        adjacent_post_link($format, $link, $in_same_cat, $excluded_categories, false);
  */
 function next_post_link($format='%link &raquo;', $link='%title', $in_same_cat = false, $excluded_categories = '') {
        adjacent_post_link($format, $link, $in_same_cat, $excluded_categories, false);
@@ -1436,9 +1336,9 @@ function next_post_link($format='%link &raquo;', $link='%title', $in_same_cat =
  *
  * @param string $format Link anchor format.
  * @param string $link Link permalink format.
  *
  * @param string $format Link anchor format.
  * @param string $link Link permalink format.
- * @param bool $in_same_cat Optional. Whether link should be in same category.
- * @param string $excluded_categories Optional. Excluded categories IDs.
- * @param bool $previous Optional, default is true. Whether display link to previous post.
+ * @param bool $in_same_cat Optional. Whether link should be in same category.
+ * @param array|string $excluded_categories Optional. Array or comma-separated list of excluded category IDs.
+ * @param bool $previous Optional, default is true. Whether to display link to previous or next post.
  */
 function adjacent_post_link($format, $link, $in_same_cat = false, $excluded_categories = '', $previous = true) {
        if ( $previous && is_attachment() )
  */
 function adjacent_post_link($format, $link, $in_same_cat = false, $excluded_categories = '', $previous = true) {
        if ( $previous && is_attachment() )
@@ -1470,7 +1370,7 @@ function adjacent_post_link($format, $link, $in_same_cat = false, $excluded_cate
 }
 
 /**
 }
 
 /**
- * Retrieve get links for page numbers.
+ * Retrieve links for page numbers.
  *
  * @since 1.5.0
  *
  *
  * @since 1.5.0
  *
@@ -1532,7 +1432,7 @@ function get_pagenum_link($pagenum = 1) {
 }
 
 /**
 }
 
 /**
- * Retrieve next posts pages link.
+ * Retrieve next posts page link.
  *
  * Backported from 2.1.3 to 2.0.10.
  *
  *
  * Backported from 2.1.3 to 2.0.10.
  *
@@ -1554,7 +1454,7 @@ function get_next_posts_page_link($max_page = 0) {
 }
 
 /**
 }
 
 /**
- * Display or return the next posts pages link.
+ * Display or return the next posts page link.
  *
  * @since 0.71
  *
  *
  * @since 0.71
  *
@@ -1571,7 +1471,7 @@ function next_posts( $max_page = 0, $echo = true ) {
 }
 
 /**
 }
 
 /**
- * Return the next posts pages link.
+ * Return the next posts page link.
  *
  * @since 2.7.0
  *
  *
  * @since 2.7.0
  *
@@ -1600,7 +1500,7 @@ function get_next_posts_link( $label = null, $max_page = 0 ) {
 }
 
 /**
 }
 
 /**
- * Display the next posts pages link.
+ * Display the next posts page link.
  *
  * @since 0.71
  * @uses get_next_posts_link()
  *
  * @since 0.71
  * @uses get_next_posts_link()
@@ -1613,7 +1513,7 @@ function next_posts_link( $label = null, $max_page = 0 ) {
 }
 
 /**
 }
 
 /**
- * Retrieve previous post pages link.
+ * Retrieve previous posts page link.
  *
  * Will only return string, if not on a single page or post.
  *
  *
  * Will only return string, if not on a single page or post.
  *
@@ -1635,7 +1535,7 @@ function get_previous_posts_page_link() {
 }
 
 /**
 }
 
 /**
- * Display or return the previous posts pages link.
+ * Display or return the previous posts page link.
  *
  * @since 0.71
  *
  *
  * @since 0.71
  *
@@ -1651,7 +1551,7 @@ function previous_posts( $echo = true ) {
 }
 
 /**
 }
 
 /**
- * Return the previous posts pages link.
+ * Return the previous posts page link.
  *
  * @since 2.7.0
  *
  *
  * @since 2.7.0
  *
@@ -1736,7 +1636,7 @@ function posts_nav_link( $sep = '', $prelabel = '', $nxtlabel = '' ) {
 }
 
 /**
 }
 
 /**
- * Retrieve page numbers links.
+ * Retrieve comments page number link.
  *
  * @since 2.7.0
  *
  *
  * @since 2.7.0
  *
@@ -1772,7 +1672,7 @@ function get_comments_pagenum_link( $pagenum = 1, $max_page = 0 ) {
 }
 
 /**
 }
 
 /**
- * Return the link to next comments pages.
+ * Return the link to next comments page.
  *
  * @since 2.7.1
  *
  *
  * @since 2.7.1
  *
@@ -1806,7 +1706,7 @@ function get_next_comments_link( $label = '', $max_page = 0 ) {
 }
 
 /**
 }
 
 /**
- * Display the link to next comments pages.
+ * Display the link to next comments page.
  *
  * @since 2.7.0
  *
  *
  * @since 2.7.0
  *
@@ -1859,7 +1759,7 @@ function previous_comments_link( $label = '' ) {
  * @see paginate_links()
  * @since 2.7.0
  *
  * @see paginate_links()
  * @since 2.7.0
  *
- * @param string|array $args Optional args. See paginate_links.
+ * @param string|array $args Optional args. See paginate_links().
  * @return string Markup for pagination links.
 */
 function paginate_comments_links($args = array()) {
  * @return string Markup for pagination links.
 */
 function paginate_comments_links($args = array()) {
@@ -1925,7 +1825,7 @@ function get_shortcut_link() {
 /**
  * Retrieve the home url for the current site.
  *
 /**
  * Retrieve the home url for the current site.
  *
- * Returns the 'home' option with the appropriate protocol,  'https' if
+ * Returns the 'home' option with the appropriate protocol, 'https' if
  * is_ssl() and 'http' otherwise. If $scheme is 'http' or 'https', is_ssl() is
  * overridden.
  *
  * is_ssl() and 'http' otherwise. If $scheme is 'http' or 'https', is_ssl() is
  * overridden.
  *
@@ -1935,7 +1835,7 @@ function get_shortcut_link() {
  * @uses get_home_url()
  *
  * @param  string $path   (optional) Path relative to the home url.
  * @uses get_home_url()
  *
  * @param  string $path   (optional) Path relative to the home url.
- * @param  string $scheme (optional) Scheme to give the home url context. Currently 'http','https'
+ * @param  string $scheme (optional) Scheme to give the home url context. Currently 'http', 'https'.
  * @return string Home url link with optional path appended.
 */
 function home_url( $path = '', $scheme = null ) {
  * @return string Home url link with optional path appended.
 */
 function home_url( $path = '', $scheme = null ) {
@@ -1945,7 +1845,7 @@ function home_url( $path = '', $scheme = null ) {
 /**
  * Retrieve the home url for a given site.
  *
 /**
  * Retrieve the home url for a given site.
  *
- * Returns the 'home' option with the appropriate protocol,  'https' if
+ * Returns the 'home' option with the appropriate protocol, 'https' if
  * is_ssl() and 'http' otherwise. If $scheme is 'http' or 'https', is_ssl() is
  * overridden.
  *
  * is_ssl() and 'http' otherwise. If $scheme is 'http' or 'https', is_ssl() is
  * overridden.
  *
@@ -1954,7 +1854,7 @@ function home_url( $path = '', $scheme = null ) {
  *
  * @param  int $blog_id   (optional) Blog ID. Defaults to current blog.
  * @param  string $path   (optional) Path relative to the home url.
  *
  * @param  int $blog_id   (optional) Blog ID. Defaults to current blog.
  * @param  string $path   (optional) Path relative to the home url.
- * @param  string $scheme (optional) Scheme to give the home url context. Currently 'http','https'
+ * @param  string $scheme (optional) Scheme to give the home url context. Currently 'http', 'https'.
  * @return string Home url link with optional path appended.
 */
 function get_home_url( $blog_id = null, $path = '', $scheme = null ) {
  * @return string Home url link with optional path appended.
 */
 function get_home_url( $blog_id = null, $path = '', $scheme = null ) {
@@ -1980,7 +1880,7 @@ function get_home_url( $blog_id = null, $path = '', $scheme = null ) {
 /**
  * Retrieve the site url for the current site.
  *
 /**
  * Retrieve the site url for the current site.
  *
- * Returns the 'site_url' option with the appropriate protocol,  'https' if
+ * Returns the 'site_url' option with the appropriate protocol, 'https' if
  * is_ssl() and 'http' otherwise. If $scheme is 'http' or 'https', is_ssl() is
  * overridden.
  *
  * is_ssl() and 'http' otherwise. If $scheme is 'http' or 'https', is_ssl() is
  * overridden.
  *
@@ -1990,7 +1890,7 @@ function get_home_url( $blog_id = null, $path = '', $scheme = null ) {
  * @uses get_site_url()
  *
  * @param string $path Optional. Path relative to the site url.
  * @uses get_site_url()
  *
  * @param string $path Optional. Path relative to the site url.
- * @param string $scheme Optional. Scheme to give the site url context. Currently 'http','https', 'login', 'login_post', or 'admin'.
+ * @param string $scheme Optional. Scheme to give the site url context. Currently 'http', 'https', 'login', 'login_post', or 'admin'.
  * @return string Site url link with optional path appended.
 */
 function site_url( $path = '', $scheme = null ) {
  * @return string Site url link with optional path appended.
 */
 function site_url( $path = '', $scheme = null ) {
@@ -2000,7 +1900,7 @@ function site_url( $path = '', $scheme = null ) {
 /**
  * Retrieve the site url for a given site.
  *
 /**
  * Retrieve the site url for a given site.
  *
- * Returns the 'site_url' option with the appropriate protocol,  'https' if
+ * Returns the 'site_url' option with the appropriate protocol, 'https' if
  * is_ssl() and 'http' otherwise. If $scheme is 'http' or 'https', is_ssl() is
  * overridden.
  *
  * is_ssl() and 'http' otherwise. If $scheme is 'http' or 'https', is_ssl() is
  * overridden.
  *
@@ -2009,7 +1909,7 @@ function site_url( $path = '', $scheme = null ) {
  *
  * @param int $blog_id (optional) Blog ID. Defaults to current blog.
  * @param string $path Optional. Path relative to the site url.
  *
  * @param int $blog_id (optional) Blog ID. Defaults to current blog.
  * @param string $path Optional. Path relative to the site url.
- * @param string $scheme Optional. Scheme to give the site url context. Currently 'http','https', 'login', 'login_post', or 'admin'.
+ * @param string $scheme Optional. Scheme to give the site url context. Currently 'http', 'https', 'login', 'login_post', or 'admin'.
  * @return string Site url link with optional path appended.
 */
 function get_site_url( $blog_id = null, $path = '', $scheme = null ) {
  * @return string Site url link with optional path appended.
 */
 function get_site_url( $blog_id = null, $path = '', $scheme = null ) {
@@ -2046,9 +1946,9 @@ function get_site_url( $blog_id = null, $path = '', $scheme = null ) {
  * @package WordPress
  * @since 2.6.0
  *
  * @package WordPress
  * @since 2.6.0
  *
- * @param string $path Optional path relative to the admin url
+ * @param string $path Optional path relative to the admin url.
  * @param string $scheme The scheme to use. Default is 'admin', which obeys force_ssl_admin() and is_ssl(). 'http' or 'https' can be passed to force those schemes.
  * @param string $scheme The scheme to use. Default is 'admin', which obeys force_ssl_admin() and is_ssl(). 'http' or 'https' can be passed to force those schemes.
- * @return string Admin url link with optional path appended
+ * @return string Admin url link with optional path appended.
 */
 function admin_url( $path = '', $scheme = 'admin' ) {
        return get_admin_url(null, $path, $scheme);
 */
 function admin_url( $path = '', $scheme = 'admin' ) {
        return get_admin_url(null, $path, $scheme);
@@ -2061,9 +1961,9 @@ function admin_url( $path = '', $scheme = 'admin' ) {
  * @since 3.0.0
  *
  * @param int $blog_id (optional) Blog ID. Defaults to current blog.
  * @since 3.0.0
  *
  * @param int $blog_id (optional) Blog ID. Defaults to current blog.
- * @param string $path Optional path relative to the admin url
+ * @param string $path Optional path relative to the admin url.
  * @param string $scheme The scheme to use. Default is 'admin', which obeys force_ssl_admin() and is_ssl(). 'http' or 'https' can be passed to force those schemes.
  * @param string $scheme The scheme to use. Default is 'admin', which obeys force_ssl_admin() and is_ssl(). 'http' or 'https' can be passed to force those schemes.
- * @return string Admin url link with optional path appended
+ * @return string Admin url link with optional path appended.
 */
 function get_admin_url( $blog_id = null, $path = '', $scheme = 'admin' ) {
        $url = get_site_url($blog_id, 'wp-admin/', $scheme);
 */
 function get_admin_url( $blog_id = null, $path = '', $scheme = 'admin' ) {
        $url = get_site_url($blog_id, 'wp-admin/', $scheme);
@@ -2154,7 +2054,7 @@ function plugins_url($path = '', $plugin = '') {
 /**
  * Retrieve the site url for the current network.
  *
 /**
  * Retrieve the site url for the current network.
  *
- * Returns the site url with the appropriate protocol,  'https' if
+ * Returns the site url with the appropriate protocol, 'https' if
  * is_ssl() and 'http' otherwise. If $scheme is 'http' or 'https', is_ssl() is
  * overridden.
  *
  * is_ssl() and 'http' otherwise. If $scheme is 'http' or 'https', is_ssl() is
  * overridden.
  *
@@ -2162,7 +2062,7 @@ function plugins_url($path = '', $plugin = '') {
  * @since 3.0.0
  *
  * @param string $path Optional. Path relative to the site url.
  * @since 3.0.0
  *
  * @param string $path Optional. Path relative to the site url.
- * @param string $scheme Optional. Scheme to give the site url context. Currently 'http','https', 'login', 'login_post', or 'admin'.
+ * @param string $scheme Optional. Scheme to give the site url context. Currently 'http', 'https', 'login', 'login_post', or 'admin'.
  * @return string Site url link with optional path appended.
 */
 function network_site_url( $path = '', $scheme = null ) {
  * @return string Site url link with optional path appended.
 */
 function network_site_url( $path = '', $scheme = null ) {
@@ -2194,7 +2094,7 @@ function network_site_url( $path = '', $scheme = null ) {
 /**
  * Retrieve the home url for the current network.
  *
 /**
  * Retrieve the home url for the current network.
  *
- * Returns the home url with the appropriate protocol,  'https' if
+ * Returns the home url with the appropriate protocol, 'https' if
  * is_ssl() and 'http' otherwise. If $scheme is 'http' or 'https', is_ssl() is
  * overridden.
  *
  * is_ssl() and 'http' otherwise. If $scheme is 'http' or 'https', is_ssl() is
  * overridden.
  *
@@ -2202,7 +2102,7 @@ function network_site_url( $path = '', $scheme = null ) {
  * @since 3.0.0
  *
  * @param  string $path   (optional) Path relative to the home url.
  * @since 3.0.0
  *
  * @param  string $path   (optional) Path relative to the home url.
- * @param  string $scheme (optional) Scheme to give the home url context. Currently 'http','https'
+ * @param  string $scheme (optional) Scheme to give the home url context. Currently 'http', 'https'.
  * @return string Home url link with optional path appended.
 */
 function network_home_url( $path = '', $scheme = null ) {
  * @return string Home url link with optional path appended.
 */
 function network_home_url( $path = '', $scheme = null ) {
@@ -2230,9 +2130,9 @@ function network_home_url( $path = '', $scheme = null ) {
  * @package WordPress
  * @since 3.0.0
  *
  * @package WordPress
  * @since 3.0.0
  *
- * @param string $path Optional path relative to the admin url
+ * @param string $path Optional path relative to the admin url.
  * @param string $scheme The scheme to use. Default is 'admin', which obeys force_ssl_admin() and is_ssl(). 'http' or 'https' can be passed to force those schemes.
  * @param string $scheme The scheme to use. Default is 'admin', which obeys force_ssl_admin() and is_ssl(). 'http' or 'https' can be passed to force those schemes.
- * @return string Admin url link with optional path appended
+ * @return string Admin url link with optional path appended.
 */
 function network_admin_url( $path = '', $scheme = 'admin' ) {
        if ( ! is_multisite() )
 */
 function network_admin_url( $path = '', $scheme = 'admin' ) {
        if ( ! is_multisite() )
@@ -2252,9 +2152,9 @@ function network_admin_url( $path = '', $scheme = 'admin' ) {
  * @package WordPress
  * @since 3.0.0
  *
  * @package WordPress
  * @since 3.0.0
  *
- * @param string $path Optional path relative to the admin url
+ * @param string $path Optional path relative to the admin url.
  * @param string $scheme The scheme to use. Default is 'admin', which obeys force_ssl_admin() and is_ssl(). 'http' or 'https' can be passed to force those schemes.
  * @param string $scheme The scheme to use. Default is 'admin', which obeys force_ssl_admin() and is_ssl(). 'http' or 'https' can be passed to force those schemes.
- * @return string Admin url link with optional path appended
+ * @return string Admin url link with optional path appended.
 */
 function user_admin_url( $path = '', $scheme = 'admin' ) {
        $url = network_site_url('wp-admin/user/', $scheme);
 */
 function user_admin_url( $path = '', $scheme = 'admin' ) {
        $url = network_site_url('wp-admin/user/', $scheme);
@@ -2271,9 +2171,9 @@ function user_admin_url( $path = '', $scheme = 'admin' ) {
  * @package WordPress
  * @since 3.1.0
  *
  * @package WordPress
  * @since 3.1.0
  *
- * @param string $path Optional path relative to the admin url
+ * @param string $path Optional path relative to the admin url.
  * @param string $scheme The scheme to use. Default is 'admin', which obeys force_ssl_admin() and is_ssl(). 'http' or 'https' can be passed to force those schemes.
  * @param string $scheme The scheme to use. Default is 'admin', which obeys force_ssl_admin() and is_ssl(). 'http' or 'https' can be passed to force those schemes.
- * @return string Admin url link with optional path appended
+ * @return string Admin url link with optional path appended.
 */
 function self_admin_url($path = '', $scheme = 'admin') {
        if ( is_network_admin() )
 */
 function self_admin_url($path = '', $scheme = 'admin') {
        if ( is_network_admin() )
@@ -2287,16 +2187,16 @@ function self_admin_url($path = '', $scheme = 'admin') {
 /**
  * Get the URL to the user's dashboard.
  *
 /**
  * Get the URL to the user's dashboard.
  *
- * If a user does not belong to any sites, the global user dashboard is used.  If the user belongs to the current site,
- * the dashboard for the current site is returned.  If the user cannot edit the current site, the dashboard to the user's
+ * If a user does not belong to any site, the global user dashboard is used.  If the user belongs to the current site,
+ * the dashboard for the current site is returned. If the user cannot edit the current site, the dashboard to the user's
  * primary blog is returned.
  *
  * @since 3.1.0
  *
  * @param int $user_id User ID
  * primary blog is returned.
  *
  * @since 3.1.0
  *
  * @param int $user_id User ID
- * @param string $path Optional path relative to the dashboard.  Use only paths known to both blog and user admins.
+ * @param string $path Optional path relative to the dashboard. Use only paths known to both blog and user admins.
  * @param string $scheme The scheme to use. Default is 'admin', which obeys force_ssl_admin() and is_ssl(). 'http' or 'https' can be passed to force those schemes.
  * @param string $scheme The scheme to use. Default is 'admin', which obeys force_ssl_admin() and is_ssl(). 'http' or 'https' can be passed to force those schemes.
- * @return string Dashboard url link with optional path appended
+ * @return string Dashboard url link with optional path appended.
  */
 function get_dashboard_url( $user_id, $path = '', $scheme = 'admin' ) {
        $user_id = (int) $user_id;
  */
 function get_dashboard_url( $user_id, $path = '', $scheme = 'admin' ) {
        $user_id = (int) $user_id;
@@ -2329,7 +2229,7 @@ function get_dashboard_url( $user_id, $path = '', $scheme = 'admin' ) {
  *
  * @param int $user User ID
  * @param string $scheme The scheme to use. Default is 'admin', which obeys force_ssl_admin() and is_ssl(). 'http' or 'https' can be passed to force those schemes.
  *
  * @param int $user User ID
  * @param string $scheme The scheme to use. Default is 'admin', which obeys force_ssl_admin() and is_ssl(). 'http' or 'https' can be passed to force those schemes.
- * @return string Dashboard url link with optional path appended
+ * @return string Dashboard url link with optional path appended.
  */
 function get_edit_profile_url( $user, $scheme = 'admin' ) {
        $user = (int) $user;
  */
 function get_edit_profile_url( $user, $scheme = 'admin' ) {
        $user = (int) $user;
@@ -2345,7 +2245,7 @@ function get_edit_profile_url( $user, $scheme = 'admin' ) {
 }
 
 /**
 }
 
 /**
- * Output rel=canonical for singular queries
+ * Output rel=canonical for singular queries.
  *
  * @package WordPress
  * @since 2.9.0
  *
  * @package WordPress
  * @since 2.9.0
@@ -2365,14 +2265,14 @@ function rel_canonical() {
 /**
  * Return a shortlink for a post, page, attachment, or blog.
  *
 /**
  * Return a shortlink for a post, page, attachment, or blog.
  *
- * This function exists to provide a shortlink tag that all themes and plugins can target.  A plugin must hook in to
- * provide the actual shortlinks.  Default shortlink support is limited to providing ?p= style links for posts.
- * Plugins can short circuit this function via the pre_get_shortlink filter or filter the output
+ * This function exists to provide a shortlink tag that all themes and plugins can target. A plugin must hook in to
+ * provide the actual shortlinks. Default shortlink support is limited to providing ?p= style links for posts.
+ * Plugins can short-circuit this function via the pre_get_shortlink filter or filter the output
  * via the get_shortlink filter.
  *
  * @since 3.0.0.
  *
  * via the get_shortlink filter.
  *
  * @since 3.0.0.
  *
- * @param int $id A post or blog id.  Default is 0, which means the current post or blog.
+ * @param int $id A post or blog id. Default is 0, which means the current post or blog.
  * @param string $context Whether the id is a 'blog' id, 'post' id, or 'media' id. If 'post', the post_type of the post is consulted. If 'query', the current query is consulted to determine the id and context. Default is 'post'.
  * @param bool $allow_slugs Whether to allow post slugs in the shortlink. It is up to the plugin how and whether to honor this.
  * @return string A shortlink or an empty string if no shortlink exists for the requested resource or if shortlinks are not enabled.
  * @param string $context Whether the id is a 'blog' id, 'post' id, or 'media' id. If 'post', the post_type of the post is consulted. If 'query', the current query is consulted to determine the id and context. Default is 'post'.
  * @param bool $allow_slugs Whether to allow post slugs in the shortlink. It is up to the plugin how and whether to honor this.
  * @return string A shortlink or an empty string if no shortlink exists for the requested resource or if shortlinks are not enabled.
@@ -2405,7 +2305,7 @@ function wp_get_shortlink($id = 0, $context = 'post', $allow_slugs = true) {
 }
 
 /**
 }
 
 /**
- *  Inject rel=sortlink into head if a shortlink is defined for the current page.
+ *  Inject rel=shortlink into head if a shortlink is defined for the current page.
  *
  *  Attached to the wp_head action.
  *
  *
  *  Attached to the wp_head action.
  *
@@ -2452,10 +2352,10 @@ function wp_shortlink_header() {
  *
  * @since 3.0.0
  *
  *
  * @since 3.0.0
  *
- * @param string $text Optional The link text or HTML to be displayed.  Defaults to 'This is the short link.'
- * @param string $title Optional The tooltip for the link.  Must be sanitized.  Defaults to the sanitized post title.
+ * @param string $text Optional The link text or HTML to be displayed. Defaults to 'This is the short link.'
+ * @param string $title Optional The tooltip for the link. Must be sanitized. Defaults to the sanitized post title.
  * @param string $before Optional HTML to display before the link.
  * @param string $before Optional HTML to display before the link.
- * @param string $before Optional HTML to display after the link.
+ * @param string $after Optional HTML to display after the link.
  */
 function the_shortlink( $text = '', $title = '', $before = '', $after = '' ) {
        global $post;
  */
 function the_shortlink( $text = '', $title = '', $before = '', $after = '' ) {
        global $post;
index 4e7c6923cae52150c9b533a97bdbdee6138b9a98..c70eeeb9e18046d597bcbeada4465f6d21799e20 100644 (file)
@@ -166,7 +166,7 @@ function wp_maintenance() {
        header( 'Content-Type: text/html; charset=utf-8' );
        header( 'Retry-After: 600' );
 ?>
        header( 'Content-Type: text/html; charset=utf-8' );
        header( 'Retry-After: 600' );
 ?>
-       <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+       <!DOCTYPE html>
        <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <html xmlns="http://www.w3.org/1999/xhtml">
        <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
@@ -186,7 +186,7 @@ function wp_maintenance() {
  *
  * @access private
  * @since 0.71
  *
  * @access private
  * @since 0.71
- * @global int $timestart Seconds and Microseconds added together from when function is called.
+ * @global int $timestart Seconds and microseconds added together from when function is called.
  * @return bool Always returns true.
  */
 function timer_start() {
  * @return bool Always returns true.
  */
 function timer_start() {
@@ -210,11 +210,11 @@ function timer_start() {
  * timer_stop(1);
  * </code>
  * which will do what the above does. If you need the result, you can assign it to a variable, but
  * timer_stop(1);
  * </code>
  * which will do what the above does. If you need the result, you can assign it to a variable, but
- * most cases, you only need to echo it.
+ * in most cases, you only need to echo it.
  *
  * @since 0.71
  *
  * @since 0.71
- * @global int $timestart Seconds and Microseconds added together from when timer_start() is called
- * @global int $timeend  Seconds and Microseconds added together from when function is called
+ * @global int $timestart Seconds and microseconds added together from when timer_start() is called
+ * @global int $timeend Seconds and microseconds added together from when function is called
  *
  * @param int $display Use '0' or null to not echo anything and 1 to echo the total time
  * @param int $precision The amount of digits from the right of the decimal to display. Default is 3.
  *
  * @param int $display Use '0' or null to not echo anything and 1 to echo the total time
  * @param int $precision The amount of digits from the right of the decimal to display. Default is 3.
@@ -249,9 +249,9 @@ function timer_stop( $display = 0, $precision = 3 ) { // if called like timer_st
  * development environments.
  *
  * When WP_DEBUG_DISPLAY is true, WordPress will force errors to be displayed.
  * development environments.
  *
  * When WP_DEBUG_DISPLAY is true, WordPress will force errors to be displayed.
- * WP_DEBUG_DISPLAY defaults to true. Defining it as false prevents WordPress from
- * changing the global configuration setting. (Defining WP_DEBUG_DISPLAY as false
- * will never force errors to be hidden.)
+ * WP_DEBUG_DISPLAY defaults to true. Defining it as null prevents WordPress from
+ * changing the global configuration setting. Defining WP_DEBUG_DISPLAY as false
+ * will force errors to be hidden.
  *
  * When WP_DEBUG_LOG is true, errors will be logged to wp-content/debug.log.
  * WP_DEBUG_LOG defaults to false.
  *
  * When WP_DEBUG_LOG is true, errors will be logged to wp-content/debug.log.
  * WP_DEBUG_LOG defaults to false.
@@ -270,6 +270,8 @@ function wp_debug_mode() {
 
                if ( WP_DEBUG_DISPLAY )
                        ini_set( 'display_errors', 1 );
 
                if ( WP_DEBUG_DISPLAY )
                        ini_set( 'display_errors', 1 );
+               elseif ( null !== WP_DEBUG_DISPLAY )
+                       ini_set( 'display_errors', 0 );
 
                if ( WP_DEBUG_LOG ) {
                        ini_set( 'log_errors', 1 );
 
                if ( WP_DEBUG_LOG ) {
                        ini_set( 'log_errors', 1 );
@@ -285,9 +287,9 @@ function wp_debug_mode() {
  *
  * To set directory manually, define <code>WP_LANG_DIR</code> in wp-config.php.
  *
  *
  * To set directory manually, define <code>WP_LANG_DIR</code> in wp-config.php.
  *
- * If the language directory exists within WP_CONTENT_DIR that is used
- * Otherwise if the language directory exists within WPINC, that's used
- * Finally, If neither of the preceeding directories is found,
+ * If the language directory exists within WP_CONTENT_DIR, that is used.
+ * Otherwise if the language directory exists within WPINC, that's used.
+ * Finally, if neither of the preceding directories are found,
  * WP_CONTENT_DIR/languages is used.
  *
  * The WP_LANG_DIR constant was introduced in 2.1.0.
  * WP_CONTENT_DIR/languages is used.
  *
  * The WP_LANG_DIR constant was introduced in 2.1.0.
@@ -394,7 +396,7 @@ function wp_start_object_cache() {
        } else if ( !$_wp_using_ext_object_cache && file_exists( WP_CONTENT_DIR . '/object-cache.php' ) ) {
                // Sometimes advanced-cache.php can load object-cache.php before it is loaded here.
                // This breaks the function_exists check above and can result in $_wp_using_ext_object_cache
        } else if ( !$_wp_using_ext_object_cache && file_exists( WP_CONTENT_DIR . '/object-cache.php' ) ) {
                // Sometimes advanced-cache.php can load object-cache.php before it is loaded here.
                // This breaks the function_exists check above and can result in $_wp_using_ext_object_cache
-               // being set incorrectly.  Double check if an external cache exists.
+               // being set incorrectly. Double check if an external cache exists.
                $_wp_using_ext_object_cache = true;
        }
 
                $_wp_using_ext_object_cache = true;
        }
 
index dc3ede6f2566bfe2e77928d537c9632ba37d82d9..1b529bae23eb9ccd82acd8dda1c7ceb4b42c0e37 100644 (file)
@@ -25,7 +25,7 @@ class WP_Locale {
         * Stores the translated strings for the one character weekday names.
         *
         * There is a hack to make sure that Tuesday and Thursday, as well
         * Stores the translated strings for the one character weekday names.
         *
         * There is a hack to make sure that Tuesday and Thursday, as well
-        * as Sunday and Saturday don't conflict. See init() method for more.
+        * as Sunday and Saturday, don't conflict. See init() method for more.
         *
         * @see WP_Locale::init() for how to handle the hack.
         *
         *
         * @see WP_Locale::init() for how to handle the hack.
         *
@@ -65,7 +65,7 @@ class WP_Locale {
        /**
         * Stores the translated strings for 'am' and 'pm'.
         *
        /**
         * Stores the translated strings for 'am' and 'pm'.
         *
-        * Also the capalized versions.
+        * Also the capitalized versions.
         *
         * @since 2.1.0
         * @var array
         *
         * @since 2.1.0
         * @var array
index f4e60d00d82dc9fece79e30595eb6a92da011653..5ec0338fcb55d7cf8253c19149705228874f16ea 100644 (file)
@@ -17,7 +17,7 @@
  * than the supported will result in the content_width size or 500 if that is
  * not set.
  *
  * than the supported will result in the content_width size or 500 if that is
  * not set.
  *
- * Finally, there is a filter named, 'editor_max_image_size' that will be called
+ * Finally, there is a filter named 'editor_max_image_size', that will be called
  * on the calculated array for width and height, respectively. The second
  * parameter will be the value that was in the $size parameter. The returned
  * type for the hook is an array with the width as the first element and the
  * on the calculated array for width and height, respectively. The second
  * parameter will be the value that was in the $size parameter. The returned
  * type for the hook is an array with the width as the first element and the
@@ -177,6 +177,8 @@ function image_downsize($id, $size = 'medium') {
 
 /**
  * Registers a new image size
 
 /**
  * Registers a new image size
+ *
+ * @since 2.9.0
  */
 function add_image_size( $name, $width = 0, $height = 0, $crop = false ) {
        global $_wp_additional_image_sizes;
  */
 function add_image_size( $name, $width = 0, $height = 0, $crop = false ) {
        global $_wp_additional_image_sizes;
@@ -185,6 +187,8 @@ function add_image_size( $name, $width = 0, $height = 0, $crop = false ) {
 
 /**
  * Registers an image size for the post thumbnail
 
 /**
  * Registers an image size for the post thumbnail
+ *
+ * @since 2.9.0
  */
 function set_post_thumbnail_size( $width = 0, $height = 0, $crop = false ) {
        add_image_size( 'post-thumbnail', $width, $height, $crop );
  */
 function set_post_thumbnail_size( $width = 0, $height = 0, $crop = false ) {
        add_image_size( 'post-thumbnail', $width, $height, $crop );
@@ -260,7 +264,7 @@ function wp_load_image( $file ) {
 }
 
 /**
 }
 
 /**
- * Calculates the new dimentions for a downsampled image.
+ * Calculates the new dimensions for a downsampled image.
  *
  * If either width or height are empty, no constraint is applied on
  * that dimension.
  *
  * If either width or height are empty, no constraint is applied on
  * that dimension.
@@ -305,7 +309,7 @@ function wp_constrain_dimensions( $current_width, $current_height, $max_width=0,
        $h = intval( $current_height * $ratio );
 
        // Sometimes, due to rounding, we'll end up with a result like this: 465x700 in a 177x177 box is 117x176... a pixel short
        $h = intval( $current_height * $ratio );
 
        // Sometimes, due to rounding, we'll end up with a result like this: 465x700 in a 177x177 box is 117x176... a pixel short
-       // We also have issues with recursive calls resulting in an ever-changing result. Contraining to the result of a constraint should yield the original result.
+       // We also have issues with recursive calls resulting in an ever-changing result. Constraining to the result of a constraint should yield the original result.
        // Thus we look for dimensions that are one pixel shy of the max value and bump them up
        if ( $did_width && $w == $max_width - 1 )
                $w = $max_width; // Round it up
        // Thus we look for dimensions that are one pixel shy of the max value and bump them up
        if ( $did_width && $w == $max_width - 1 )
                $w = $max_width; // Round it up
@@ -329,7 +333,7 @@ function wp_constrain_dimensions( $current_width, $current_height, $max_width=0,
  * @param int $dest_w New width.
  * @param int $dest_h New height.
  * @param bool $crop Optional, default is false. Whether to crop image or resize.
  * @param int $dest_w New width.
  * @param int $dest_h New height.
  * @param bool $crop Optional, default is false. Whether to crop image or resize.
- * @return bool|array False, on failure. Returned array matches parameters for imagecopyresampled() PHP function.
+ * @return bool|array False on failure. Returned array matches parameters for imagecopyresampled() PHP function.
  */
 function image_resize_dimensions($orig_w, $orig_h, $dest_w, $dest_h, $crop = false) {
 
  */
 function image_resize_dimensions($orig_w, $orig_h, $dest_w, $dest_h, $crop = false) {
 
@@ -398,7 +402,7 @@ function image_resize_dimensions($orig_w, $orig_h, $dest_w, $dest_h, $crop = fal
  * @param int $max_w Maximum width to resize to.
  * @param int $max_h Maximum height to resize to.
  * @param bool $crop Optional. Whether to crop image or resize.
  * @param int $max_w Maximum width to resize to.
  * @param int $max_h Maximum height to resize to.
  * @param bool $crop Optional. Whether to crop image or resize.
- * @param string $suffix Optional. File Suffix.
+ * @param string $suffix Optional. File suffix.
  * @param string $dest_path Optional. New image file path.
  * @param int $jpeg_quality Optional, default is 90. Image quality percentage.
  * @return mixed WP_Error on failure. String with new destination path.
  * @param string $dest_path Optional. New image file path.
  * @param int $jpeg_quality Optional, default is 90. Image quality percentage.
  * @return mixed WP_Error on failure. String with new destination path.
@@ -669,9 +673,9 @@ function wp_get_attachment_image($attachment_id, $size = 'thumbnail', $icon = fa
 }
 
 /**
 }
 
 /**
- * Adds a 'wp-post-image' class to post thumbnail thumbnails
+ * Adds a 'wp-post-image' class to post thumbnails
  * Uses the begin_fetch_post_thumbnail_html and end_fetch_post_thumbnail_html action hooks to
  * Uses the begin_fetch_post_thumbnail_html and end_fetch_post_thumbnail_html action hooks to
- * dynamically add/remove itself so as to only filter post thumbnail thumbnails
+ * dynamically add/remove itself so as to only filter post thumbnails
  *
  * @since 2.9.0
  * @param array $attr Attributes including src, class, alt, title
  *
  * @since 2.9.0
  * @param array $attr Attributes including src, class, alt, title
@@ -752,11 +756,11 @@ add_shortcode('gallery', 'gallery_shortcode');
  *
  * @since 2.5.0
  *
  *
  * @since 2.5.0
  *
- * @param array $attr Attributes attributed to the shortcode.
+ * @param array $attr Attributes of the shortcode.
  * @return string HTML content to display gallery.
  */
 function gallery_shortcode($attr) {
  * @return string HTML content to display gallery.
  */
 function gallery_shortcode($attr) {
-       global $post, $wp_locale;
+       global $post;
 
        static $instance = 0;
        $instance++;
 
        static $instance = 0;
        $instance++;
@@ -906,7 +910,7 @@ function next_image_link($size = 'thumbnail', $text = false) {
  *
  * @since 2.5.0
  *
  *
  * @since 2.5.0
  *
- * @param bool $prev Optional. Default is true to display previous link, true for next.
+ * @param bool $prev Optional. Default is true to display previous link, false for next.
  */
 function adjacent_image_link($prev = true, $size = 'thumbnail', $text = false) {
        global $post;
  */
 function adjacent_image_link($prev = true, $size = 'thumbnail', $text = false) {
        global $post;
@@ -1079,7 +1083,7 @@ class WP_Embed {
        }
 
        /**
        }
 
        /**
-        * If a post/page was saved, then output Javascript to make
+        * If a post/page was saved, then output JavaScript to make
         * an AJAX request that will call WP_Embed::cache_oembed().
         */
        function maybe_run_ajax_cache() {
         * an AJAX request that will call WP_Embed::cache_oembed().
         */
        function maybe_run_ajax_cache() {
@@ -1144,7 +1148,7 @@ class WP_Embed {
         * @uses update_post_meta()
         *
         * @param array $attr Shortcode attributes.
         * @uses update_post_meta()
         *
         * @param array $attr Shortcode attributes.
-        * @param string $url The URL attempting to be embeded.
+        * @param string $url The URL attempting to be embedded.
         * @return string The embed HTML on success, otherwise the original URL.
         */
        function shortcode( $attr, $url = '' ) {
         * @return string The embed HTML on success, otherwise the original URL.
         */
        function shortcode( $attr, $url = '' ) {
@@ -1288,7 +1292,7 @@ class WP_Embed {
                return apply_filters( 'embed_maybe_make_link', $output, $url );
        }
 }
                return apply_filters( 'embed_maybe_make_link', $output, $url );
        }
 }
-$wp_embed = new WP_Embed();
+$GLOBALS['wp_embed'] = new WP_Embed();
 
 /**
  * Register an embed handler. This function should probably only be used for sites that do not support oEmbed.
 
 /**
  * Register an embed handler. This function should probably only be used for sites that do not support oEmbed.
@@ -1372,8 +1376,8 @@ function wp_expand_dimensions( $example_width, $example_height, $max_width, $max
  * @uses _wp_oembed_get_object()
  * @uses WP_oEmbed::get_html()
  *
  * @uses _wp_oembed_get_object()
  * @uses WP_oEmbed::get_html()
  *
- * @param string $url The URL that should be embeded.
- * @param array $args Addtional arguments and parameters.
+ * @param string $url The URL that should be embedded.
+ * @param array $args Additional arguments and parameters.
  * @return string The original URL on failure or the embed HTML on success.
  */
 function wp_oembed_get( $url, $args = '' ) {
  * @return string The original URL on failure or the embed HTML on success.
  */
 function wp_oembed_get( $url, $args = '' ) {
index b24ae080f7d01b1362ca96a889bd7599fdf45880..a318bbe21c090100dfa46734e718abf3e8cfaee2 100644 (file)
@@ -26,7 +26,7 @@
  * @param bool $unique Optional, default is false.  Whether the specified metadata key should be
  *             unique for the object.  If true, and the object already has a value for the specified
  *             metadata key, no change will be made
  * @param bool $unique Optional, default is false.  Whether the specified metadata key should be
  *             unique for the object.  If true, and the object already has a value for the specified
  *             metadata key, no change will be made
- * @return bool True on successful update, false on failure.
+ * @return bool The meta ID on successful update, false on failure.
  */
 function add_metadata($meta_type, $object_id, $meta_key, $meta_value, $unique = false) {
        if ( !$meta_type || !$meta_key )
  */
 function add_metadata($meta_type, $object_id, $meta_key, $meta_value, $unique = false) {
        if ( !$meta_type || !$meta_key )
@@ -49,7 +49,7 @@ function add_metadata($meta_type, $object_id, $meta_key, $meta_value, $unique =
 
        $check = apply_filters( "add_{$meta_type}_metadata", null, $object_id, $meta_key, $meta_value, $unique );
        if ( null !== $check )
 
        $check = apply_filters( "add_{$meta_type}_metadata", null, $object_id, $meta_key, $meta_value, $unique );
        if ( null !== $check )
-               return (bool) $check;
+               return $check;
 
        if ( $unique && $wpdb->get_var( $wpdb->prepare(
                "SELECT COUNT(*) FROM $table WHERE meta_key = %s AND $column = %d",
 
        if ( $unique && $wpdb->get_var( $wpdb->prepare(
                "SELECT COUNT(*) FROM $table WHERE meta_key = %s AND $column = %d",
@@ -61,20 +61,22 @@ function add_metadata($meta_type, $object_id, $meta_key, $meta_value, $unique =
 
        do_action( "add_{$meta_type}_meta", $object_id, $meta_key, $_meta_value );
 
 
        do_action( "add_{$meta_type}_meta", $object_id, $meta_key, $_meta_value );
 
-       $wpdb->insert( $table, array(
+       $result = $wpdb->insert( $table, array(
                $column => $object_id,
                'meta_key' => $meta_key,
                'meta_value' => $meta_value
        ) );
 
                $column => $object_id,
                'meta_key' => $meta_key,
                'meta_value' => $meta_value
        ) );
 
+       if ( ! $result )
+               return false;
+
+       $mid = (int) $wpdb->insert_id;
+
        wp_cache_delete($object_id, $meta_type . '_meta');
        wp_cache_delete($object_id, $meta_type . '_meta');
-       // users cache stores usermeta that must be cleared.
-       if ( 'user' == $meta_type )
-               clean_user_cache($object_id);
 
 
-       do_action( "added_{$meta_type}_meta", $wpdb->insert_id, $object_id, $meta_key, $_meta_value );
+       do_action( "added_{$meta_type}_meta", $mid, $object_id, $meta_key, $_meta_value );
 
 
-       return true;
+       return $mid;
 }
 
 /**
 }
 
 /**
@@ -113,6 +115,7 @@ function update_metadata($meta_type, $object_id, $meta_key, $meta_value, $prev_v
 
        // expected_slashed ($meta_key)
        $meta_key = stripslashes($meta_key);
 
        // expected_slashed ($meta_key)
        $meta_key = stripslashes($meta_key);
+       $passed_value = $meta_value;
        $meta_value = stripslashes_deep($meta_value);
        $meta_value = sanitize_meta( $meta_key, $meta_value, $meta_type );
 
        $meta_value = stripslashes_deep($meta_value);
        $meta_value = sanitize_meta( $meta_key, $meta_value, $meta_type );
 
@@ -121,7 +124,7 @@ function update_metadata($meta_type, $object_id, $meta_key, $meta_value, $prev_v
                return (bool) $check;
 
        if ( ! $meta_id = $wpdb->get_var( $wpdb->prepare( "SELECT $id_column FROM $table WHERE meta_key = %s AND $column = %d", $meta_key, $object_id ) ) )
                return (bool) $check;
 
        if ( ! $meta_id = $wpdb->get_var( $wpdb->prepare( "SELECT $id_column FROM $table WHERE meta_key = %s AND $column = %d", $meta_key, $object_id ) ) )
-               return add_metadata($meta_type, $object_id, $meta_key, $meta_value);
+               return add_metadata($meta_type, $object_id, $meta_key, $passed_value);
 
        // Compare existing value to new value if no prev value given and the key exists only once.
        if ( empty($prev_value) ) {
 
        // Compare existing value to new value if no prev value given and the key exists only once.
        if ( empty($prev_value) ) {
@@ -145,14 +148,18 @@ function update_metadata($meta_type, $object_id, $meta_key, $meta_value, $prev_v
 
        do_action( "update_{$meta_type}_meta", $meta_id, $object_id, $meta_key, $_meta_value );
 
 
        do_action( "update_{$meta_type}_meta", $meta_id, $object_id, $meta_key, $_meta_value );
 
+       if ( 'post' == $meta_type )
+               do_action( 'update_postmeta', $meta_id, $object_id, $meta_key, $meta_value );
+
        $wpdb->update( $table, $data, $where );
        $wpdb->update( $table, $data, $where );
+
        wp_cache_delete($object_id, $meta_type . '_meta');
        wp_cache_delete($object_id, $meta_type . '_meta');
-       // users cache stores usermeta that must be cleared.
-       if ( 'user' == $meta_type )
-               clean_user_cache($object_id);
 
        do_action( "updated_{$meta_type}_meta", $meta_id, $object_id, $meta_key, $_meta_value );
 
 
        do_action( "updated_{$meta_type}_meta", $meta_id, $object_id, $meta_key, $_meta_value );
 
+       if ( 'post' == $meta_type )
+               do_action( 'updated_postmeta', $meta_id, $object_id, $meta_key, $meta_value );
+
        return true;
 }
 
        return true;
 }
 
@@ -211,8 +218,14 @@ function delete_metadata($meta_type, $object_id, $meta_key, $meta_value = '', $d
        if ( !count( $meta_ids ) )
                return false;
 
        if ( !count( $meta_ids ) )
                return false;
 
+       if ( $delete_all )
+               $object_ids = $wpdb->get_col( $wpdb->prepare( "SELECT $type_column FROM $table WHERE meta_key = %s", $meta_key ) );
+
        do_action( "delete_{$meta_type}_meta", $meta_ids, $object_id, $meta_key, $_meta_value );
 
        do_action( "delete_{$meta_type}_meta", $meta_ids, $object_id, $meta_key, $_meta_value );
 
+       if ( 'post' == $meta_type )
+               do_action( 'delete_postmeta', $meta_ids );
+
        $query = "DELETE FROM $table WHERE $id_column IN( " . implode( ',', $meta_ids ) . " )";
 
        $count = $wpdb->query($query);
        $query = "DELETE FROM $table WHERE $id_column IN( " . implode( ',', $meta_ids ) . " )";
 
        $count = $wpdb->query($query);
@@ -220,13 +233,19 @@ function delete_metadata($meta_type, $object_id, $meta_key, $meta_value = '', $d
        if ( !$count )
                return false;
 
        if ( !$count )
                return false;
 
-       wp_cache_delete($object_id, $meta_type . '_meta');
-       // users cache stores usermeta that must be cleared.
-       if ( 'user' == $meta_type )
-               clean_user_cache($object_id);
+       if ( $delete_all ) {
+               foreach ( (array) $object_ids as $o_id ) {
+                       wp_cache_delete($o_id, $meta_type . '_meta');
+               }
+       } else {
+               wp_cache_delete($object_id, $meta_type . '_meta');
+       }
 
        do_action( "deleted_{$meta_type}_meta", $meta_ids, $object_id, $meta_key, $_meta_value );
 
 
        do_action( "deleted_{$meta_type}_meta", $meta_ids, $object_id, $meta_key, $_meta_value );
 
+       if ( 'post' == $meta_type )
+               do_action( 'deleted_postmeta', $meta_ids );
+
        return true;
 }
 
        return true;
 }
 
@@ -281,6 +300,213 @@ function get_metadata($meta_type, $object_id, $meta_key = '', $single = false) {
                return array();
 }
 
                return array();
 }
 
+/**
+ * Determine if a meta key is set for a given object
+ *
+ * @since 3.3.0
+ *
+ * @param string $meta_type Type of object metadata is for (e.g., comment, post, or user)
+ * @param int $object_id ID of the object metadata is for
+ * @param string $meta_key Metadata key.
+ * @return boolean true of the key is set, false if not.
+ */
+function metadata_exists( $meta_type, $object_id, $meta_key ) {
+       if ( ! $meta_type )
+               return false;
+
+       if ( ! $object_id = absint( $object_id ) )
+               return false;
+
+       $check = apply_filters( "get_{$meta_type}_metadata", null, $object_id, $meta_key, true );
+       if ( null !== $check )
+               return true;
+
+       $meta_cache = wp_cache_get( $object_id, $meta_type . '_meta' );
+
+       if ( !$meta_cache ) {
+               $meta_cache = update_meta_cache( $meta_type, array( $object_id ) );
+               $meta_cache = $meta_cache[$object_id];
+       }
+
+       if ( isset( $meta_cache[ $meta_key ] ) )
+               return true;
+
+       return false;
+}
+
+/**
+ * Get meta data by meta ID
+ *
+ * @since 3.3.0
+ *
+ * @param string $meta_type Type of object metadata is for (e.g., comment, post, or user)
+ * @param int $meta_id ID for a specific meta row
+ * @return object Meta object or false.
+ */
+function get_metadata_by_mid( $meta_type, $meta_id ) {
+       global $wpdb;
+
+       if ( ! $meta_type )
+               return false;
+
+       if ( !$meta_id = absint( $meta_id ) )
+               return false;
+
+       if ( ! $table = _get_meta_table($meta_type) )
+               return false;
+
+       $id_column = ( 'user' == $meta_type ) ? 'umeta_id' : 'meta_id';
+
+       $meta = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM $table WHERE $id_column = %d", $meta_id ) );
+
+       if ( empty( $meta ) )
+               return false;
+
+       if ( isset( $meta->meta_value ) )
+               $meta->meta_value = maybe_unserialize( $meta->meta_value );
+
+       return $meta;
+}
+
+/**
+ * Update meta data by meta ID
+ *
+ * @since 3.3.0
+ *
+ * @uses get_metadata_by_mid() Calls get_metadata_by_mid() to fetch the meta key, value
+ *             and object_id of the given meta_id.
+ *
+ * @param string $meta_type Type of object metadata is for (e.g., comment, post, or user)
+ * @param int $meta_id ID for a specific meta row
+ * @param string $meta_value Metadata value
+ * @param string $meta_key Optional, you can provide a meta key to update it
+ * @return bool True on successful update, false on failure.
+ */
+function update_metadata_by_mid( $meta_type, $meta_id, $meta_value, $meta_key = false ) {
+       global $wpdb;
+
+       // Make sure everything is valid.
+       if ( ! $meta_type )
+               return false;
+
+       if ( ! $meta_id = absint( $meta_id ) )
+               return false;
+
+       if ( ! $table = _get_meta_table( $meta_type ) )
+               return false;
+
+       $column = esc_sql($meta_type . '_id');
+       $id_column = 'user' == $meta_type ? 'umeta_id' : 'meta_id';
+
+       // Fetch the meta and go on if it's found.
+       if ( $meta = get_metadata_by_mid( $meta_type, $meta_id ) ) {
+               $original_key = $meta->meta_key;
+               $original_value = $meta->meta_value;
+               $object_id = $meta->{$column};
+
+               // If a new meta_key (last parameter) was specified, change the meta key,
+               // otherwise use the original key in the update statement.
+               if ( false === $meta_key ) {
+                       $meta_key = $original_key;
+               } elseif ( ! is_string( $meta_key ) ) {
+                       return false;
+               }
+
+               // Sanitize the meta
+               $_meta_value = $meta_value;
+               $meta_value = sanitize_meta( $meta_key, $meta_value, $meta_type );
+               $meta_value = maybe_serialize( $meta_value );
+
+               // Format the data query arguments.
+               $data = array(
+                       'meta_key' => $meta_key,
+                       'meta_value' => $meta_value
+               );
+
+               // Format the where query arguments.
+               $where = array();
+               $where[$id_column] = $meta_id;
+
+               do_action( "update_{$meta_type}_meta", $meta_id, $object_id, $meta_key, $_meta_value );
+
+               if ( 'post' == $meta_type )
+                       do_action( 'update_postmeta', $meta_id, $object_id, $meta_key, $meta_value );
+
+               // Run the update query, all fields in $data are %s, $where is a %d.
+               $result = (bool) $wpdb->update( $table, $data, $where, '%s', '%d' );
+
+               // Clear the caches.
+               wp_cache_delete($object_id, $meta_type . '_meta');
+
+               do_action( "updated_{$meta_type}_meta", $meta_id, $object_id, $meta_key, $_meta_value );
+
+               if ( 'post' == $meta_type )
+                       do_action( 'updated_postmeta', $meta_id, $object_id, $meta_key, $meta_value );
+
+               return $result;
+       }
+
+       // And if the meta was not found.
+       return false;
+}
+
+/**
+ * Delete meta data by meta ID
+ *
+ * @since 3.3.0
+ *
+ * @uses get_metadata_by_mid() Calls get_metadata_by_mid() to fetch the meta key, value
+ *             and object_id of the given meta_id.
+ *
+ * @param string $meta_type Type of object metadata is for (e.g., comment, post, or user)
+ * @param int $meta_id ID for a specific meta row
+ * @return bool True on successful delete, false on failure.
+ */
+function delete_metadata_by_mid( $meta_type, $meta_id ) {
+       global $wpdb;
+
+       // Make sure everything is valid.
+       if ( ! $meta_type )
+               return false;
+
+       if ( ! $meta_id = absint( $meta_id ) )
+               return false;
+
+       if ( ! $table = _get_meta_table( $meta_type ) )
+               return false;
+
+       // object and id columns
+       $column = esc_sql($meta_type . '_id');
+       $id_column = 'user' == $meta_type ? 'umeta_id' : 'meta_id';
+
+       // Fetch the meta and go on if it's found.
+       if ( $meta = get_metadata_by_mid( $meta_type, $meta_id ) ) {
+               $object_id = $meta->{$column};
+
+               do_action( "delete_{$meta_type}_meta", (array) $meta_id, $object_id, $meta->meta_key, $meta->meta_value );
+
+               if ( 'post' == $meta_type )
+                       do_action( 'delete_postmeta', $meta_id );
+
+               // Run the query, will return true if deleted, false otherwise
+               $result = (bool) $wpdb->query( $wpdb->prepare( "DELETE FROM $table WHERE $id_column = %d LIMIT 1;", $meta_id ) );
+
+               // Clear the caches.
+               wp_cache_delete($object_id, $meta_type . '_meta');
+
+               do_action( "deleted_{$meta_type}_meta", (array) $meta_id, $object_id, $meta->meta_key, $meta->meta_value );
+
+               if ( 'post' == $meta_type )
+                       do_action( 'deleted_postmeta', $meta_id );
+
+               return $result;
+
+       }
+
+       // Meta id was not found.
+       return false;
+}
+
 /**
  * Update the metadata cache for the specified objects.
  *
 /**
  * Update the metadata cache for the specified objects.
  *
@@ -361,14 +587,14 @@ function update_meta_cache($meta_type, $object_ids) {
  *
  * @see WP_Meta_Query
  *
  *
  * @see WP_Meta_Query
  *
- * @param array (optional) $meta_query A meta query
+ * @param array $meta_query A meta query
  * @param string $type Type of meta
  * @param string $primary_table
  * @param string $primary_id_column
  * @param object $context (optional) The main query object
  * @return array( 'join' => $join_sql, 'where' => $where_sql )
  */
  * @param string $type Type of meta
  * @param string $primary_table
  * @param string $primary_id_column
  * @param object $context (optional) The main query object
  * @return array( 'join' => $join_sql, 'where' => $where_sql )
  */
-function get_meta_sql( $meta_query = false, $type, $primary_table, $primary_id_column, $context = null ) {
+function get_meta_sql( $meta_query, $type, $primary_table, $primary_id_column, $context = null ) {
        $meta_query_obj = new WP_Meta_Query( $meta_query );
        return $meta_query_obj->get_sql( $type, $primary_table, $primary_id_column, $context );
 }
        $meta_query_obj = new WP_Meta_Query( $meta_query );
        return $meta_query_obj->get_sql( $type, $primary_table, $primary_id_column, $context );
 }
@@ -408,7 +634,7 @@ class WP_Meta_Query {
        /**
         * Constructor
         *
        /**
         * Constructor
         *
-        * @param array (optional) $meta_query A meta query
+        * @param array $meta_query (optional) A meta query
         */
        function __construct( $meta_query = false ) {
                if ( !$meta_query )
         */
        function __construct( $meta_query = false ) {
                if ( !$meta_query )
@@ -483,12 +709,8 @@ class WP_Meta_Query {
 
                foreach ( $this->queries as $k => $q ) {
                        $meta_key = isset( $q['key'] ) ? trim( $q['key'] ) : '';
 
                foreach ( $this->queries as $k => $q ) {
                        $meta_key = isset( $q['key'] ) ? trim( $q['key'] ) : '';
-                       $meta_compare = isset( $q['compare'] ) ? strtoupper( $q['compare'] ) : '=';
                        $meta_type = isset( $q['type'] ) ? strtoupper( $q['type'] ) : 'CHAR';
 
                        $meta_type = isset( $q['type'] ) ? strtoupper( $q['type'] ) : 'CHAR';
 
-                       if ( ! in_array( $meta_compare, array( '=', '!=', '>', '>=', '<', '<=', 'LIKE', 'NOT LIKE', 'IN', 'NOT IN', 'BETWEEN', 'NOT BETWEEN' ) ) )
-                               $meta_compare = '=';
-
                        if ( 'NUMERIC' == $meta_type )
                                $meta_type = 'SIGNED';
                        elseif ( ! in_array( $meta_type, array( 'BINARY', 'CHAR', 'DATE', 'DATETIME', 'DECIMAL', 'SIGNED', 'TIME', 'UNSIGNED' ) ) )
                        if ( 'NUMERIC' == $meta_type )
                                $meta_type = 'SIGNED';
                        elseif ( ! in_array( $meta_type, array( 'BINARY', 'CHAR', 'DATE', 'DATETIME', 'DECIMAL', 'SIGNED', 'TIME', 'UNSIGNED' ) ) )
@@ -514,6 +736,13 @@ class WP_Meta_Query {
 
                        $meta_value = $q['value'];
 
 
                        $meta_value = $q['value'];
 
+                       $meta_compare = is_array( $meta_value ) ? 'IN' : '=';
+                       if ( isset( $q['compare'] ) )
+                               $meta_compare = strtoupper( $q['compare'] );
+
+                       if ( ! in_array( $meta_compare, array( '=', '!=', '>', '>=', '<', '<=', 'LIKE', 'NOT LIKE', 'IN', 'NOT IN', 'BETWEEN', 'NOT BETWEEN' ) ) )
+                               $meta_compare = '=';
+
                        if ( in_array( $meta_compare, array( 'IN', 'NOT IN', 'BETWEEN', 'NOT BETWEEN' ) ) ) {
                                if ( ! is_array( $meta_value ) )
                                        $meta_value = preg_split( '/[,\s]+/', $meta_value );
                        if ( in_array( $meta_compare, array( 'IN', 'NOT IN', 'BETWEEN', 'NOT BETWEEN' ) ) ) {
                                if ( ! is_array( $meta_value ) )
                                        $meta_value = preg_split( '/[,\s]+/', $meta_value );
@@ -588,7 +817,7 @@ function _get_meta_table($type) {
  * @return bool True if the key is protected, false otherwise.
  */
 function is_protected_meta( $meta_key, $meta_type = null ) {
  * @return bool True if the key is protected, false otherwise.
  */
 function is_protected_meta( $meta_key, $meta_type = null ) {
-       $protected = (  '_' == $meta_key[0] );
+       $protected = ( '_' == $meta_key[0] );
 
        return apply_filters( 'is_protected_meta', $protected, $meta_key, $meta_type );
 }
 
        return apply_filters( 'is_protected_meta', $protected, $meta_key, $meta_type );
 }
@@ -603,8 +832,34 @@ function is_protected_meta( $meta_key, $meta_type = null ) {
  * @param string $meta_type Type of meta
  * @return mixed Sanitized $meta_value
  */
  * @param string $meta_type Type of meta
  * @return mixed Sanitized $meta_value
  */
-function sanitize_meta( $meta_key, $meta_value, $meta_type = null ) {
-       return apply_filters( 'sanitize_meta', $meta_value, $meta_key, $meta_type );
+function sanitize_meta( $meta_key, $meta_value, $meta_type ) {
+       return apply_filters( "sanitize_{$meta_type}_meta_{$meta_key}", $meta_value, $meta_key, $meta_type );
+}
+
+/**
+ * Register meta key
+ *
+ * @since 3.3.0
+ *
+ * @param string $meta_type Type of meta
+ * @param string $meta_key Meta key
+ * @param string|array $sanitize_callback A function or method to call when sanitizing the value of $meta_key.
+ * @param string|array $auth_callback Optional. A function or method to call when performing edit_post_meta, add_post_meta, and delete_post_meta capability checks.
+ * @param array $args Arguments
+ */
+function register_meta( $meta_type, $meta_key, $sanitize_callback, $auth_callback = null ) {
+       if ( is_callable( $sanitize_callback ) )
+               add_filter( "sanitize_{$meta_type}_meta_{$meta_key}", $sanitize_callback, 10, 3 );
+
+       if ( empty( $auth_callback ) ) {
+               if ( is_protected_meta( $meta_key, $meta_type ) )
+                       $auth_callback = '__return_false';
+               else
+                       $auth_callback = '__return_true';
+       }
+
+       if ( is_callable( $auth_callback ) )
+               add_filter( "auth_{$meta_type}_meta_{$meta_key}", $auth_callback, 10, 6 );
 }
 
 ?>
 }
 
 ?>
index 1c483e10637f1061c4916b816d8c56a866b11882..0bd6a92b858a1973bc7080dfb5a65f4f6746dd97 100644 (file)
 function wpmu_update_blogs_date() {
        global $wpdb;
 
 function wpmu_update_blogs_date() {
        global $wpdb;
 
-       // TODO: use update_blog_details
-
-       $wpdb->update( $wpdb->blogs, array('last_updated' => current_time('mysql', true)), array('blog_id' => $wpdb->blogid) );
-       refresh_blog_details( $wpdb->blogid );
+       update_blog_details( $wpdb->blogid, array('last_updated' => current_time('mysql', true)) );
 
        do_action( 'wpmu_blog_updated', $wpdb->blogid );
 }
 
        do_action( 'wpmu_blog_updated', $wpdb->blogid );
 }
@@ -323,7 +320,7 @@ function update_blog_details( $blog_id, $details = array() ) {
  * @since MU
  * @uses apply_filters() Calls 'blog_option_$optionname' with the option name value.
  *
  * @since MU
  * @uses apply_filters() Calls 'blog_option_$optionname' with the option name value.
  *
- * @param int $blog_id is the id of the blog.
+ * @param int $blog_id Optional. Blog ID, can be null to refer to the current blog.
  * @param string $setting Name of option to retrieve. Should already be SQL-escaped.
  * @param string $default (optional) Default value returned if option not found.
  * @return mixed Value set for the option.
  * @param string $setting Name of option to retrieve. Should already be SQL-escaped.
  * @param string $default (optional) Default value returned if option not found.
  * @return mixed Value set for the option.
@@ -331,6 +328,9 @@ function update_blog_details( $blog_id, $details = array() ) {
 function get_blog_option( $blog_id, $setting, $default = false ) {
        global $wpdb;
 
 function get_blog_option( $blog_id, $setting, $default = false ) {
        global $wpdb;
 
+       if ( null === $blog_id )
+               $blog_id = $wpdb->blogid;
+
        $key = $blog_id . '-' . $setting . '-blog_option';
        $value = wp_cache_get( $key, 'site-options' );
        if ( $value == null ) {
        $key = $blog_id . '-' . $setting . '-blog_option';
        $value = wp_cache_get( $key, 'site-options' );
        if ( $value == null ) {
@@ -383,14 +383,17 @@ function get_blog_option( $blog_id, $setting, $default = false ) {
  * @param int $id The blog id
  * @param string $key The option key
  * @param mixed $value The option value
  * @param int $id The blog id
  * @param string $key The option key
  * @param mixed $value The option value
+ * @return bool True on success, false on failure.
  */
 function add_blog_option( $id, $key, $value ) {
        $id = (int) $id;
 
        switch_to_blog($id);
  */
 function add_blog_option( $id, $key, $value ) {
        $id = (int) $id;
 
        switch_to_blog($id);
-       add_option( $key, $value );
+       $return = add_option( $key, $value );
        restore_current_blog();
        restore_current_blog();
-       wp_cache_set( $id . '-' . $key . '-blog_option', $value, 'site-options' );
+       if ( $return )
+               wp_cache_set( $id . '-' . $key . '-blog_option', $value, 'site-options' );
+       return $return;
 }
 
 /**
 }
 
 /**
@@ -400,14 +403,17 @@ function add_blog_option( $id, $key, $value ) {
  *
  * @param int $id The blog id
  * @param string $key The option key
  *
  * @param int $id The blog id
  * @param string $key The option key
+ * @return bool True on success, false on failure.
  */
 function delete_blog_option( $id, $key ) {
        $id = (int) $id;
 
        switch_to_blog($id);
  */
 function delete_blog_option( $id, $key ) {
        $id = (int) $id;
 
        switch_to_blog($id);
-       delete_option( $key );
+       $return = delete_option( $key );
        restore_current_blog();
        restore_current_blog();
-       wp_cache_set( $id . '-' . $key . '-blog_option', '', 'site-options' );
+       if ( $return )
+               wp_cache_set( $id . '-' . $key . '-blog_option', '', 'site-options' );
+       return $return;
 }
 
 /**
 }
 
 /**
@@ -418,6 +424,7 @@ function delete_blog_option( $id, $key ) {
  * @param int $id The blog id
  * @param string $key The option key
  * @param mixed $value The option value
  * @param int $id The blog id
  * @param string $key The option key
  * @param mixed $value The option value
+ * @return bool True on success, false on failrue.
  */
 function update_blog_option( $id, $key, $value, $deprecated = null ) {
        $id = (int) $id;
  */
 function update_blog_option( $id, $key, $value, $deprecated = null ) {
        $id = (int) $id;
@@ -426,12 +433,14 @@ function update_blog_option( $id, $key, $value, $deprecated = null ) {
                _deprecated_argument( __FUNCTION__, '3.1' );
 
        switch_to_blog($id);
                _deprecated_argument( __FUNCTION__, '3.1' );
 
        switch_to_blog($id);
-       update_option( $key, $value );
+       $return = update_option( $key, $value );
        restore_current_blog();
 
        refresh_blog_details( $id );
 
        restore_current_blog();
 
        refresh_blog_details( $id );
 
-       wp_cache_set( $id . '-' . $key . '-blog_option', $value, 'site-options');
+       if ( $return )
+               wp_cache_set( $id . '-' . $key . '-blog_option', $value, 'site-options');
+       return $return;
 }
 
 /**
 }
 
 /**
@@ -678,4 +687,26 @@ function get_last_updated( $deprecated = '', $start = 0, $quantity = 40 ) {
        return $wpdb->get_results( $wpdb->prepare("SELECT blog_id, domain, path FROM $wpdb->blogs WHERE site_id = %d AND public = '1' AND archived = '0' AND mature = '0' AND spam = '0' AND deleted = '0' AND last_updated != '0000-00-00 00:00:00' ORDER BY last_updated DESC limit %d, %d", $wpdb->siteid, $start, $quantity ) , ARRAY_A );
 }
 
        return $wpdb->get_results( $wpdb->prepare("SELECT blog_id, domain, path FROM $wpdb->blogs WHERE site_id = %d AND public = '1' AND archived = '0' AND mature = '0' AND spam = '0' AND deleted = '0' AND last_updated != '0000-00-00 00:00:00' ORDER BY last_updated DESC limit %d, %d", $wpdb->siteid, $start, $quantity ) , ARRAY_A );
 }
 
+/**
+ * Handler for updating the blog date when a post is published or an already published post is changed.
+ *
+ * @since 3.3.0
+ *
+ * @param string $new_status The new post status
+ * @param string $old_status The old post status
+ * @param object $post Post object
+ */
+function _update_blog_date_on_post_publish( $new_status, $old_status, $post ) {
+       $post_type_obj = get_post_type_object( $post->post_type );
+       if ( ! $post_type_obj->public )
+               return;
+
+       if ( 'publish' != $new_status && 'publish' != $old_status )
+               return;
+
+       // Post was freshly published, published post was saved, or published post was unpublished.
+
+       wpmu_update_blogs_date();
+}
+
 ?>
 ?>
index e533252f4bc152c9ffc0efad9d0ec0ee746dd195..9e42f62d215d001014f78df2dac584a72d294dee 100644 (file)
@@ -36,9 +36,7 @@ add_filter( 'allowed_redirect_hosts', 'redirect_this_site' );
 add_filter( 'term_id_filter', 'global_terms', 10, 2 );
 add_action( 'publish_post', 'update_posts_count' );
 add_action( 'delete_post', 'wpmu_update_blogs_date' );
 add_filter( 'term_id_filter', 'global_terms', 10, 2 );
 add_action( 'publish_post', 'update_posts_count' );
 add_action( 'delete_post', 'wpmu_update_blogs_date' );
-add_action( 'private_to_published', 'wpmu_update_blogs_date' );
-add_action( 'publish_phone', 'wpmu_update_blogs_date' );
-add_action( 'publish_post', 'wpmu_update_blogs_date' );
+add_action( 'transition_post_status', '_update_blog_date_on_post_publish', 10, 3 );
 add_action( 'admin_init', 'wp_schedule_update_network_counts');
 add_action( 'update_network_counts', 'wp_update_network_counts');
 
 add_action( 'admin_init', 'wp_schedule_update_network_counts');
 add_action( 'update_network_counts', 'wp_update_network_counts');
 
index a7f7eb238ca90110da82982cc106ab4ad2f56ecc..9b910b72e0aa3371cbcab3831898e069ccb0858f 100644 (file)
@@ -68,7 +68,7 @@ function graceful_fail( $message ) {
        _deprecated_function( __FUNCTION__, '3.0', 'wp_die()' );
        $message = apply_filters( 'graceful_fail', $message );
        $message_template = apply_filters( 'graceful_fail_template',
        _deprecated_function( __FUNCTION__, '3.0', 'wp_die()' );
        $message = apply_filters( 'graceful_fail', $message );
        $message_template = apply_filters( 'graceful_fail_template',
-'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+'<!DOCTYPE html>
 <html xmlns="http://www.w3.org/1999/xhtml"><head profile="http://gmpg.org/xfn/11">
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
 <title>Error!</title>
 <html xmlns="http://www.w3.org/1999/xhtml"><head profile="http://gmpg.org/xfn/11">
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
 <title>Error!</title>
@@ -200,4 +200,75 @@ function get_most_active_blogs( $num = 10, $display = true ) {
        }
        return array_slice( $most_active, 0, $num );
 }
        }
        return array_slice( $most_active, 0, $num );
 }
-?>
+
+/**
+ * Redirect a user based on $_GET or $_POST arguments.
+ *
+ * The function looks for redirect arguments in the following order:
+ * 1) $_GET['ref']
+ * 2) $_POST['ref']
+ * 3) $_SERVER['HTTP_REFERER']
+ * 4) $_GET['redirect']
+ * 5) $_POST['redirect']
+ * 6) $url
+ *
+ * @since MU
+ * @deprecated 3.3.0
+ * @deprecated Use wp_redirect()
+ * @uses wpmu_admin_redirect_add_updated_param()
+ *
+ * @param string $url
+ */
+function wpmu_admin_do_redirect( $url = '' ) {
+       _deprecated_function( __FUNCTION__, '3.3' );
+
+       $ref = '';
+       if ( isset( $_GET['ref'] ) )
+               $ref = $_GET['ref'];
+       if ( isset( $_POST['ref'] ) )
+               $ref = $_POST['ref'];
+
+       if ( $ref ) {
+               $ref = wpmu_admin_redirect_add_updated_param( $ref );
+               wp_redirect( $ref );
+               exit();
+       }
+       if ( empty( $_SERVER['HTTP_REFERER'] ) == false ) {
+               wp_redirect( $_SERVER['HTTP_REFERER'] );
+               exit();
+       }
+
+       $url = wpmu_admin_redirect_add_updated_param( $url );
+       if ( isset( $_GET['redirect'] ) ) {
+               if ( substr( $_GET['redirect'], 0, 2 ) == 's_' )
+                       $url .= '&action=blogs&s='. esc_html( substr( $_GET['redirect'], 2 ) );
+       } elseif ( isset( $_POST['redirect'] ) ) {
+               $url = wpmu_admin_redirect_add_updated_param( $_POST['redirect'] );
+       }
+       wp_redirect( $url );
+       exit();
+}
+
+/**
+ * Adds an 'updated=true' argument to a URL.
+ *
+ * @since MU
+ * @deprecated 3.3.0
+ * @deprecated Use add_query_arg()
+ *
+ * @param string $url
+ * @return string
+ */
+function wpmu_admin_redirect_add_updated_param( $url = '' ) {
+       _deprecated_function( __FUNCTION__, '3.3' );
+
+       if ( strpos( $url, 'updated=true' ) === false ) {
+               if ( strpos( $url, '?' ) === false )
+                       return $url . '?updated=true';
+               else
+                       return $url . '&updated=true';
+       }
+       return $url;
+}
+
+?>
\ No newline at end of file
index 2d68f11dcd0e2af48ce5de7e4717fe2c575e24ab..e7ab0a4cccae0172f1220ce9756f58a51786d895 100644 (file)
@@ -23,7 +23,7 @@ if ( $current_blog->archived == '1' || $current_blog->spam == '1' || $current_bl
        die( '404 &#8212; File not found.' );
 }
 
        die( '404 &#8212; File not found.' );
 }
 
-$file = BLOGUPLOADDIR . str_replace( '..', '', $_GET[ 'file' ] );
+$file = rtrim( BLOGUPLOADDIR, '/' ) . '/' . str_replace( '..', '', $_GET[ 'file' ] );
 if ( !is_file( $file ) ) {
        status_header( 404 );
        die( '404 &#8212; File not found.' );
 if ( !is_file( $file ) ) {
        status_header( 404 );
        die( '404 &#8212; File not found.' );
index 6c1f80a18485798c490d33df22d91a448205c3f5..17e0e670b176e67d0a2eb939fe9946be10b3c4e4 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /**
 <?php
 /**
- * Multi-site WordPress API
+ * Multisite WordPress API
  *
  * @package WordPress
  * @subpackage Multisite
  *
  * @package WordPress
  * @subpackage Multisite
 function get_sitestats() {
        global $wpdb;
 
 function get_sitestats() {
        global $wpdb;
 
-       $stats['blogs'] = get_blog_count();
-       $stats['users'] = get_user_count();
+       $stats = array(
+               'blogs' => get_blog_count(),
+               'users' => get_user_count(),
+       );
 
        return $stats;
 }
 
        return $stats;
 }
@@ -79,7 +81,7 @@ function get_active_blog_for_user( $user_id ) {
        if ( false !== $primary_blog ) {
                if ( ! isset( $blogs[ $primary_blog ] ) ) {
                        update_user_meta( $user_id, 'primary_blog', $first_blog->userblog_id );
        if ( false !== $primary_blog ) {
                if ( ! isset( $blogs[ $primary_blog ] ) ) {
                        update_user_meta( $user_id, 'primary_blog', $first_blog->userblog_id );
-                       $primary = $first_blog;
+                       $primary = get_blog_details( $first_blog->userblog_id );
                } else {
                        $primary = get_blog_details( $primary_blog );
                }
                } else {
                        $primary = get_blog_details( $primary_blog );
                }
@@ -90,7 +92,7 @@ function get_active_blog_for_user( $user_id ) {
                $primary = $first_blog;
        }
 
                $primary = $first_blog;
        }
 
-       if ( ( ! is_object( $primary ) ) || ( is_object( $primary ) && $primary->archived == 1 || $primary->spam == 1 || $primary->deleted == 1 ) ) {
+       if ( ( ! is_object( $primary ) ) || ( $primary->archived == 1 || $primary->spam == 1 || $primary->deleted == 1 ) ) {
                $blogs = get_blogs_of_user( $user_id, true ); // if a user's primary blog is shut down, check their other blogs.
                $ret = false;
                if ( is_array( $blogs ) && count( $blogs ) > 0 ) {
                $blogs = get_blogs_of_user( $user_id, true ); // if a user's primary blog is shut down, check their other blogs.
                $ret = false;
                if ( is_array( $blogs ) && count( $blogs ) > 0 ) {
@@ -116,32 +118,6 @@ function get_active_blog_for_user( $user_id ) {
        }
 }
 
        }
 }
 
-/**
- * Find out whether a user is a member of a given blog.
- *
- * @since MU 1.1
- * @uses get_blogs_of_user()
- *
- * @param int $user_id The unique ID of the user
- * @param int $blog Optional. If no blog_id is provided, current site is used
- * @return bool
- */
-function is_user_member_of_blog( $user_id, $blog_id = 0 ) {
-       $user_id = (int) $user_id;
-       $blog_id = (int) $blog_id;
-
-       if ( $blog_id == 0 ) {
-               global $wpdb;
-               $blog_id = $wpdb->blogid;
-       }
-
-       $blogs = get_blogs_of_user( $user_id );
-       if ( is_array( $blogs ) )
-               return array_key_exists( $blog_id, $blogs );
-       else
-               return false;
-}
-
 /**
  * The number of active users in your installation.
  *
 /**
  * The number of active users in your installation.
  *
@@ -291,6 +267,8 @@ function remove_user_from_blog($user_id, $blog_id = '', $reassign = '') {
        }
 
        restore_current_blog();
        }
 
        restore_current_blog();
+
+       return true;
 }
 
 /**
 }
 
 /**
@@ -314,14 +292,14 @@ function create_empty_blog( $domain, $path, $weblog_title, $site_id = 1 ) {
 
        // Check if the domain has been used already. We should return an error message.
        if ( domain_exists($domain, $path, $site_id) )
 
        // Check if the domain has been used already. We should return an error message.
        if ( domain_exists($domain, $path, $site_id) )
-               return __( 'Error: Site URL already taken.' );
+               return __( '<strong>ERROR</strong>: Site URL already taken.' );
 
        // Need to back up wpdb table names, and create a new wp_blogs entry for new blog.
        // Need to get blog_id from wp_blogs, and create new table names.
        // Must restore table names at the end of function.
 
        if ( ! $blog_id = insert_blog($domain, $path, $site_id) )
 
        // Need to back up wpdb table names, and create a new wp_blogs entry for new blog.
        // Need to get blog_id from wp_blogs, and create new table names.
        // Must restore table names at the end of function.
 
        if ( ! $blog_id = insert_blog($domain, $path, $site_id) )
-               return __( 'Error: problem creating site entry.' );
+               return __( '<strong>ERROR</strong>: problem creating site entry.' );
 
        switch_to_blog($blog_id);
        install_blog($blog_id);
 
        switch_to_blog($blog_id);
        install_blog($blog_id);
@@ -391,68 +369,6 @@ function get_blog_id_from_url( $domain, $path = '/' ) {
 
 // Admin functions
 
 
 // Admin functions
 
-/**
- * Redirect a user based on $_GET or $_POST arguments.
- *
- * The function looks for redirect arguments in the following order:
- * 1) $_GET['ref']
- * 2) $_POST['ref']
- * 3) $_SERVER['HTTP_REFERER']
- * 4) $_GET['redirect']
- * 5) $_POST['redirect']
- * 6) $url
- *
- * @since MU
- * @uses wpmu_admin_redirect_add_updated_param()
- *
- * @param string $url
- */
-function wpmu_admin_do_redirect( $url = '' ) {
-       $ref = '';
-       if ( isset( $_GET['ref'] ) )
-               $ref = $_GET['ref'];
-       if ( isset( $_POST['ref'] ) )
-               $ref = $_POST['ref'];
-
-       if ( $ref ) {
-               $ref = wpmu_admin_redirect_add_updated_param( $ref );
-               wp_redirect( $ref );
-               exit();
-       }
-       if ( empty( $_SERVER['HTTP_REFERER'] ) == false ) {
-               wp_redirect( $_SERVER['HTTP_REFERER'] );
-               exit();
-       }
-
-       $url = wpmu_admin_redirect_add_updated_param( $url );
-       if ( isset( $_GET['redirect'] ) ) {
-               if ( substr( $_GET['redirect'], 0, 2 ) == 's_' )
-                       $url .= '&action=blogs&s='. esc_html( substr( $_GET['redirect'], 2 ) );
-       } elseif ( isset( $_POST['redirect'] ) ) {
-               $url = wpmu_admin_redirect_add_updated_param( $_POST['redirect'] );
-       }
-       wp_redirect( $url );
-       exit();
-}
-
-/**
- * Adds an 'updated=true' argument to a URL.
- *
- * @since MU
- *
- * @param string $url
- * @return string
- */
-function wpmu_admin_redirect_add_updated_param( $url = '' ) {
-       if ( strpos( $url, 'updated=true' ) === false ) {
-               if ( strpos( $url, '?' ) === false )
-                       return $url . '?updated=true';
-               else
-                       return $url . '&updated=true';
-       }
-       return $url;
-}
-
 /**
  * Checks an email address against a list of banned domains.
  *
 /**
  * Checks an email address against a list of banned domains.
  *
@@ -644,13 +560,10 @@ function wpmu_validate_blog_signup($blogname, $blog_title, $user = '') {
        if (! is_subdomain_install() )
                $illegal_names = array_merge($illegal_names, apply_filters( 'subdirectory_reserved_names', array( 'page', 'comments', 'blog', 'files', 'feed' ) ) );
 
        if (! is_subdomain_install() )
                $illegal_names = array_merge($illegal_names, apply_filters( 'subdirectory_reserved_names', array( 'page', 'comments', 'blog', 'files', 'feed' ) ) );
 
-
        if ( empty( $blogname ) )
                $errors->add('blogname', __('Please enter a site name'));
 
        if ( empty( $blogname ) )
                $errors->add('blogname', __('Please enter a site name'));
 
-       $maybe = array();
-       preg_match( '/[a-z0-9]+/', $blogname, $maybe );
-       if ( $blogname != $maybe[0] )
+       if ( preg_match( '/[^a-z0-9]+/', $blogname ) )
                $errors->add('blogname', __('Only lowercase letters and numbers allowed'));
 
        if ( in_array( $blogname, $illegal_names ) == true )
                $errors->add('blogname', __('Only lowercase letters and numbers allowed'));
 
        if ( in_array( $blogname, $illegal_names ) == true )
@@ -792,7 +705,7 @@ function wpmu_signup_user($user, $user_email, $meta = '') {
  * replace it with your own notification behavior.
  *
  * Filter 'wpmu_signup_blog_notification_email' and
  * replace it with your own notification behavior.
  *
  * Filter 'wpmu_signup_blog_notification_email' and
- * 'wpmu_signup_blog_notification_email' to change the content
+ * 'wpmu_signup_blog_notification_subject' to change the content
  * and subject line of the email sent to newly registered users.
  *
  * @since MU
  * and subject line of the email sent to newly registered users.
  *
  * @since MU
@@ -1078,7 +991,7 @@ function wpmu_create_blog($domain, $path, $title, $user_id, $meta = '', $site_id
        add_option( 'WPLANG', get_site_option( 'WPLANG' ) );
        update_option( 'blog_public', (int)$meta['public'] );
 
        add_option( 'WPLANG', get_site_option( 'WPLANG' ) );
        update_option( 'blog_public', (int)$meta['public'] );
 
-       if ( !is_super_admin() && ! get_user_meta( $user_id, 'primary_blog', true ) )
+       if ( ! is_super_admin( $user_id ) && ! get_user_meta( $user_id, 'primary_blog', true ) )
                update_user_meta( $user_id, 'primary_blog', $blog_id );
 
        restore_current_blog();
                update_user_meta( $user_id, 'primary_blog', $blog_id );
 
        restore_current_blog();
@@ -1233,7 +1146,7 @@ function install_blog($blog_id, $blog_title = '') {
        $url = get_blogaddress_by_id($blog_id);
 
        // Set everything up
        $url = get_blogaddress_by_id($blog_id);
 
        // Set everything up
-       make_db_current_silent();
+       make_db_current_silent( 'blog' );
        populate_options();
        populate_roles();
        $wp_roles->_init();
        populate_options();
        populate_roles();
        $wp_roles->_init();
@@ -1520,8 +1433,7 @@ function get_dirsize( $directory ) {
 function recurse_dirsize( $directory ) {
        $size = 0;
 
 function recurse_dirsize( $directory ) {
        $size = 0;
 
-       if ( substr( $directory, -1 ) == '/' )
-               $directory = substr($directory,0,-1);
+       $directory = untrailingslashit( $directory );
 
        if ( !file_exists($directory) || !is_dir( $directory ) || !is_readable( $directory ) )
                return false;
 
        if ( !file_exists($directory) || !is_dir( $directory ) || !is_readable( $directory ) )
                return false;
@@ -1564,8 +1476,7 @@ function upload_is_user_over_quota( $echo = true ) {
        if ( empty( $spaceAllowed ) || !is_numeric( $spaceAllowed ) )
                $spaceAllowed = 10;     // Default space allowed is 10 MB
 
        if ( empty( $spaceAllowed ) || !is_numeric( $spaceAllowed ) )
                $spaceAllowed = 10;     // Default space allowed is 10 MB
 
-       $dirName = BLOGUPLOADDIR;
-       $size = get_dirsize($dirName) / 1024 / 1024;
+       $size = get_dirsize( BLOGUPLOADDIR ) / 1024 / 1024;
 
        if ( ($spaceAllowed-$size) < 0 ) {
                if ( $echo )
 
        if ( ($spaceAllowed-$size) < 0 ) {
                if ( $echo )
@@ -1646,8 +1557,7 @@ function fix_import_form_size( $size ) {
                return 0;
 
        $spaceAllowed = 1024 * 1024 * get_space_allowed();
                return 0;
 
        $spaceAllowed = 1024 * 1024 * get_space_allowed();
-       $dirName = BLOGUPLOADDIR;
-       $dirsize = get_dirsize($dirName) ;
+       $dirsize = get_dirsize( BLOGUPLOADDIR );
        if ( $size > $spaceAllowed - $dirsize )
                return $spaceAllowed - $dirsize; // remaining space
        else
        if ( $size > $spaceAllowed - $dirsize )
                return $spaceAllowed - $dirsize; // remaining space
        else
@@ -1826,7 +1736,7 @@ function maybe_add_existing_user_to_blog() {
        if ( empty( $details ) || is_wp_error( add_existing_user_to_blog( $details ) ) )
                wp_die( sprintf(__('An error occurred adding you to this site. Back to the <a href="%s">homepage</a>.'), site_url() ) );
 
        if ( empty( $details ) || is_wp_error( add_existing_user_to_blog( $details ) ) )
                wp_die( sprintf(__('An error occurred adding you to this site. Back to the <a href="%s">homepage</a>.'), site_url() ) );
 
-       wp_die( sprintf(__('You have been added to this site. Please visit the <a href="%s">homepage</a> or <a href="%s">login</a> using your username and password.'), site_url(), admin_url() ), __('Success') );
+       wp_die( sprintf(__('You have been added to this site. Please visit the <a href="%s">homepage</a> or <a href="%s">log in</a> using your username and password.'), site_url(), admin_url() ), __('Success') );
 }
 
 /**
 }
 
 /**
index 353cbe2fee5a1877f04bfa6a69babb31e6effc78..5ff0526fdf59411506a87b021b81536cee6eea90 100644 (file)
@@ -119,8 +119,8 @@ function get_current_site_name( $current_site ) {
                $current_site->site_name = $wpdb->get_var( $wpdb->prepare( "SELECT meta_value FROM $wpdb->sitemeta WHERE site_id = %d AND meta_key = 'site_name'", $current_site->id ) );
                if ( ! $current_site->site_name )
                        $current_site->site_name = ucfirst( $current_site->domain );
                $current_site->site_name = $wpdb->get_var( $wpdb->prepare( "SELECT meta_value FROM $wpdb->sitemeta WHERE site_id = %d AND meta_key = 'site_name'", $current_site->id ) );
                if ( ! $current_site->site_name )
                        $current_site->site_name = ucfirst( $current_site->domain );
+               wp_cache_set( $current_site->id . ':site_name', $current_site->site_name, 'site-options' );
        }
        }
-       wp_cache_set( $current_site->id . ':site_name', $current_site->site_name, 'site-options' );
 
        return $current_site;
 }
 
        return $current_site;
 }
@@ -134,6 +134,10 @@ function get_current_site_name( $current_site ) {
  */
 function wpmu_current_site() {
        global $wpdb, $current_site, $domain, $path, $sites, $cookie_domain;
  */
 function wpmu_current_site() {
        global $wpdb, $current_site, $domain, $path, $sites, $cookie_domain;
+
+       if ( empty( $current_site ) )
+               $current_site = new stdClass;
+
        if ( defined( 'DOMAIN_CURRENT_SITE' ) && defined( 'PATH_CURRENT_SITE' ) ) {
                $current_site->id = defined( 'SITE_ID_CURRENT_SITE' ) ? SITE_ID_CURRENT_SITE : 1;
                $current_site->domain = DOMAIN_CURRENT_SITE;
        if ( defined( 'DOMAIN_CURRENT_SITE' ) && defined( 'PATH_CURRENT_SITE' ) ) {
                $current_site->id = defined( 'SITE_ID_CURRENT_SITE' ) ? SITE_ID_CURRENT_SITE : 1;
                $current_site->domain = DOMAIN_CURRENT_SITE;
@@ -234,7 +238,7 @@ function ms_not_installed() {
                $msg .= '<p>' . sprintf( /*WP_I18N_TABLES_MISSING_LONG*/'<strong>Database tables are missing.</strong> This means that MySQL is not running, WordPress was not installed properly, or someone deleted <code>%s</code>. You really should look at your database now.'/*/WP_I18N_TABLES_MISSING_LONG*/, $wpdb->site ) . '</p>';
        else
                $msg .= '<p>' . sprintf( /*WP_I18N_NO_SITE_FOUND*/'<strong>Could not find site <code>%1$s</code>.</strong> Searched for table <code>%2$s</code> in database <code>%3$s</code>. Is that right?'/*/WP_I18N_NO_SITE_FOUND*/, rtrim( $domain . $path, '/' ), $wpdb->blogs, DB_NAME ) . '</p>';
                $msg .= '<p>' . sprintf( /*WP_I18N_TABLES_MISSING_LONG*/'<strong>Database tables are missing.</strong> This means that MySQL is not running, WordPress was not installed properly, or someone deleted <code>%s</code>. You really should look at your database now.'/*/WP_I18N_TABLES_MISSING_LONG*/, $wpdb->site ) . '</p>';
        else
                $msg .= '<p>' . sprintf( /*WP_I18N_NO_SITE_FOUND*/'<strong>Could not find site <code>%1$s</code>.</strong> Searched for table <code>%2$s</code> in database <code>%3$s</code>. Is that right?'/*/WP_I18N_NO_SITE_FOUND*/, rtrim( $domain . $path, '/' ), $wpdb->blogs, DB_NAME ) . '</p>';
-       $msg .= '<p><strong>' . /*WP_I18N_WHAT_DO_I_DO*/'What do I do now?'/*WP_I18N_WHAT_DO_I_DO*/ . '</strong> ';
+       $msg .= '<p><strong>' . /*WP_I18N_WHAT_DO_I_DO*/'What do I do now?'/*/WP_I18N_WHAT_DO_I_DO*/ . '</strong> ';
        $msg .= /*WP_I18N_RTFM*/'Read the <a target="_blank" href="http://codex.wordpress.org/Debugging_a_WordPress_Network">bug report</a> page. Some of the guidelines there may help you figure out what went wrong.'/*/WP_I18N_RTFM*/;
        $msg .= ' ' . /*WP_I18N_STUCK*/'If you&#8217;re still stuck with this message, then check that your database contains the following tables:'/*/WP_I18N_STUCK*/ . '</p><ul>';
        foreach ( $wpdb->tables('global') as $t => $table ) {
        $msg .= /*WP_I18N_RTFM*/'Read the <a target="_blank" href="http://codex.wordpress.org/Debugging_a_WordPress_Network">bug report</a> page. Some of the guidelines there may help you figure out what went wrong.'/*/WP_I18N_RTFM*/;
        $msg .= ' ' . /*WP_I18N_STUCK*/'If you&#8217;re still stuck with this message, then check that your database contains the following tables:'/*/WP_I18N_STUCK*/ . '</p><ul>';
        foreach ( $wpdb->tables('global') as $t => $table ) {
index 9022313e5de042257c44ba2779b20007fc7fdb8c..42df103d41bef47ad422a65ec46fe812de0a0000 100644 (file)
  * @since 3.0.0
  */
 
  * @since 3.0.0
  */
 
-// $base sanity check.
-if ( 'BASE' == $base )
-       die( /*WP_I18N_BASE_ERROR*/'Configuration error in <code>wp-config.php</code>. <code>$base</code> is set to <code>BASE</code> when it should be like <code>/</code> or <code>/blogs/</code>.'/*/WP_I18N_BASE_ERROR*/ );
-
 /** Include Multisite initialization functions */
 require( ABSPATH . WPINC . '/ms-load.php' );
 require( ABSPATH . WPINC . '/ms-default-constants.php' );
 /** Include Multisite initialization functions */
 require( ABSPATH . WPINC . '/ms-load.php' );
 require( ABSPATH . WPINC . '/ms-default-constants.php' );
index 21898ab86d517214f14c9129e3c04cc9fc24a943..ad6b5aa9313574eae206fd8762b3bb954b390340 100644 (file)
@@ -360,11 +360,12 @@ function _wp_menu_item_classes_by_context( &$menu_items ) {
 
                // if the menu item corresponds to the currently-requested URL
                } elseif ( 'custom' == $menu_item->object ) {
 
                // if the menu item corresponds to the currently-requested URL
                } elseif ( 'custom' == $menu_item->object ) {
-                       $current_url = untrailingslashit( ( is_ssl() ? 'https://' : 'http://' ) . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] );
+                       $_root_relative_current = untrailingslashit( $_SERVER['REQUEST_URI'] );
+                       $current_url = ( is_ssl() ? 'https://' : 'http://' ) . $_SERVER['HTTP_HOST'] . $_root_relative_current;
                        $item_url = untrailingslashit( strpos( $menu_item->url, '#' ) ? substr( $menu_item->url, 0, strpos( $menu_item->url, '#' ) ) : $menu_item->url );
                        $_indexless_current = untrailingslashit( preg_replace( '/index.php$/', '', $current_url ) );
 
                        $item_url = untrailingslashit( strpos( $menu_item->url, '#' ) ? substr( $menu_item->url, 0, strpos( $menu_item->url, '#' ) ) : $menu_item->url );
                        $_indexless_current = untrailingslashit( preg_replace( '/index.php$/', '', $current_url ) );
 
-                       if ( in_array( $item_url, array( $current_url, $_indexless_current ) ) ) {
+                       if ( in_array( $item_url, array( $current_url, $_indexless_current, $_root_relative_current ) ) ) {
                                $classes[] = 'current-menu-item';
                                $menu_items[$key]->current = true;
                                $_anc_id = (int) $menu_item->db_id;
                                $classes[] = 'current-menu-item';
                                $menu_items[$key]->current = true;
                                $_anc_id = (int) $menu_item->db_id;
index 467d73e18f849ee537ab2581ef763df8e8deac3e..6a622b27aa21e103ba39d1a1b521014936086eff 100644 (file)
@@ -618,7 +618,9 @@ function wp_setup_nav_menu_item( $menu_item ) {
                        $menu_item->target = empty( $menu_item->target ) ? get_post_meta( $menu_item->ID, '_menu_item_target', true ) : $menu_item->target;
 
                        $menu_item->attr_title = empty( $menu_item->attr_title ) ? apply_filters( 'nav_menu_attr_title', $menu_item->post_excerpt ) : $menu_item->attr_title;
                        $menu_item->target = empty( $menu_item->target ) ? get_post_meta( $menu_item->ID, '_menu_item_target', true ) : $menu_item->target;
 
                        $menu_item->attr_title = empty( $menu_item->attr_title ) ? apply_filters( 'nav_menu_attr_title', $menu_item->post_excerpt ) : $menu_item->attr_title;
-                       $menu_item->description = empty( $menu_item->description ) ? apply_filters( 'nav_menu_description', $menu_item->post_content ) : $menu_item->description;
+
+                       if ( empty( $menu_item->description ) )
+                               $menu_item->description = apply_filters( 'nav_menu_description',  wp_trim_words( $menu_item->post_content, 200 ) );
 
                        $menu_item->classes = empty( $menu_item->classes ) ? (array) get_post_meta( $menu_item->ID, '_menu_item_classes', true ) : $menu_item->classes;
                        $menu_item->xfn = empty( $menu_item->xfn ) ? get_post_meta( $menu_item->ID, '_menu_item_xfn', true ) : $menu_item->xfn;
 
                        $menu_item->classes = empty( $menu_item->classes ) ? (array) get_post_meta( $menu_item->ID, '_menu_item_classes', true ) : $menu_item->classes;
                        $menu_item->xfn = empty( $menu_item->xfn ) ? get_post_meta( $menu_item->ID, '_menu_item_xfn', true ) : $menu_item->xfn;
@@ -636,8 +638,8 @@ function wp_setup_nav_menu_item( $menu_item ) {
                        $menu_item->url = get_permalink( $menu_item->ID );
                        $menu_item->target = '';
 
                        $menu_item->url = get_permalink( $menu_item->ID );
                        $menu_item->target = '';
 
-                       $menu_item->attr_title = apply_filters( 'nav_menu_attr_title', $menu_item->post_excerpt );
-                       $menu_item->description = apply_filters( 'nav_menu_description', $menu_item->post_content );
+                       $menu_item->attr_title = apply_filters( 'nav_menu_attr_title', '' );
+                       $menu_item->description = apply_filters( 'nav_menu_description', '' );
                        $menu_item->classes = array();
                        $menu_item->xfn = '';
                }
                        $menu_item->classes = array();
                        $menu_item->xfn = '';
                }
index bb0e4f0eb04a053671d61f87ca1efc507bc8a105..2a202ace0fca632847dd6c4a92b2ea6d758ce090 100644 (file)
@@ -36,6 +36,40 @@ function set_current_user($id, $name = '') {
 }
 endif;
 
 }
 endif;
 
+if ( !function_exists('get_userdatabylogin') ) :
+/**
+ * Retrieve user info by login name.
+ *
+ * @since 0.71
+ * @deprecated 3.3.0
+ * @deprecated Use get_user_by('login')
+ *
+ * @param string $user_login User's username
+ * @return bool|object False on failure, User DB row object
+ */
+function get_userdatabylogin($user_login) {
+       _deprecated_function( __FUNCTION__, '3.3', "get_user_by('login')" );
+       return get_user_by('login', $user_login);
+}
+endif;
+
+if ( !function_exists('get_user_by_email') ) :
+/**
+ * Retrieve user info by email.
+ *
+ * @since 2.5
+ * @deprecated 3.3.0
+ * @deprecated Use get_user_by('email')
+ *
+ * @param string $email User's email address
+ * @return bool|object False on failure, User DB row object
+ */
+function get_user_by_email($email) {
+       _deprecated_function( __FUNCTION__, '3.3', "get_user_by('email')" );
+       return get_user_by('email', $email);
+}
+endif;
+
 if ( !function_exists('wp_setcookie') ) :
 /**
  * Sets a cookie for a user who just logged in. This function is deprecated.
 if ( !function_exists('wp_setcookie') ) :
 /**
  * Sets a cookie for a user who just logged in. This function is deprecated.
@@ -54,7 +88,7 @@ if ( !function_exists('wp_setcookie') ) :
  */
 function wp_setcookie($username, $password = '', $already_md5 = false, $home = '', $siteurl = '', $remember = false) {
        _deprecated_function( __FUNCTION__, '2.5', 'wp_set_auth_cookie()' );
  */
 function wp_setcookie($username, $password = '', $already_md5 = false, $home = '', $siteurl = '', $remember = false) {
        _deprecated_function( __FUNCTION__, '2.5', 'wp_set_auth_cookie()' );
-       $user = get_userdatabylogin($username);
+       $user = get_user_by('login', $username);
        wp_set_auth_cookie($user->ID, $remember);
 }
 else :
        wp_set_auth_cookie($user->ID, $remember);
 }
 else :
@@ -133,4 +167,4 @@ function wp_login($username, $password, $deprecated = '') {
 }
 else :
        _deprecated_function( 'wp_login', '2.5', 'wp_signon()' );
 }
 else :
        _deprecated_function( 'wp_login', '2.5', 'wp_signon()' );
-endif;
\ No newline at end of file
+endif;
index 3001433b82d1b8d634e23e021cc0d30cd28816cc..df20cf6345f2e50aab75d00608ea7de98eb76ac0 100644 (file)
@@ -98,27 +98,31 @@ if ( !function_exists('get_userdata') ) :
  * @since 0.71
  *
  * @param int $user_id User ID
  * @since 0.71
  *
  * @param int $user_id User ID
- * @return bool|object False on failure, User DB row object
+ * @return bool|object False on failure, WP_User object on success
  */
 function get_userdata( $user_id ) {
  */
 function get_userdata( $user_id ) {
-       global $wpdb;
-
-       if ( ! is_numeric( $user_id ) )
-               return false;
-
-       $user_id = absint( $user_id );
-       if ( ! $user_id )
-               return false;
-
-       $user = wp_cache_get( $user_id, 'users' );
+       return get_user_by( 'id', $user_id );
+}
+endif;
 
 
-       if ( $user )
-               return $user;
+if ( !function_exists('get_user_by') ) :
+/**
+ * Retrieve user info by a given field
+ *
+ * @since 2.8.0
+ *
+ * @param string $field The field to retrieve the user with.  id | slug | email | login
+ * @param int|string $value A value for $field.  A user ID, slug, email address, or login name.
+ * @return bool|object False on failure, WP_User object on success
+ */
+function get_user_by( $field, $value ) {
+       $userdata = WP_User::get_data_by( $field, $value );
 
 
-       if ( ! $user = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM $wpdb->users WHERE ID = %d LIMIT 1", $user_id ) ) )
+       if ( !$userdata )
                return false;
 
                return false;
 
-       _fill_user( $user );
+       $user = new WP_User;
+       $user->init( $userdata );
 
        return $user;
 }
 
        return $user;
 }
@@ -130,103 +134,32 @@ if ( !function_exists('cache_users') ) :
  *
  * @since 3.0.0
  *
  *
  * @since 3.0.0
  *
- * @param array $users User ID numbers list
+ * @param array $user_ids User ID numbers list
  */
  */
-function cache_users( $users ) {
+function cache_users( $user_ids ) {
        global $wpdb;
 
        $clean = array();
        global $wpdb;
 
        $clean = array();
-       foreach($users as $id) {
+       foreach ( $user_ids as $id ) {
                $id = (int) $id;
                $id = (int) $id;
-               if (wp_cache_get($id, 'users')) {
-                       // seems to be cached already
-               } else {
+               if ( !wp_cache_get( $id, 'users' ) ) {
                        $clean[] = $id;
                }
        }
 
                        $clean[] = $id;
                }
        }
 
-       if ( 0 == count($clean) )
+       if ( empty( $clean ) )
                return;
 
                return;
 
-       $list = implode(',', $clean);
-
-       $results = $wpdb->get_results("SELECT * FROM $wpdb->users WHERE ID IN ($list)");
+       $list = implode( ',', $clean );
 
 
-       _fill_many_users($results);
-}
-endif;
+       $users = $wpdb->get_results( "SELECT * FROM $wpdb->users WHERE ID IN ($list)" );
 
 
-if ( !function_exists('get_user_by') ) :
-/**
- * Retrieve user info by a given field
- *
- * @since 2.8.0
- *
- * @param string $field The field to retrieve the user with.  id | slug | email | login
- * @param int|string $value A value for $field.  A user ID, slug, email address, or login name.
- * @return bool|object False on failure, User DB row object
- */
-function get_user_by($field, $value) {
-       global $wpdb;
-
-       switch ($field) {
-               case 'id':
-                       return get_userdata($value);
-                       break;
-               case 'slug':
-                       $user_id = wp_cache_get($value, 'userslugs');
-                       $field = 'user_nicename';
-                       break;
-               case 'email':
-                       $user_id = wp_cache_get($value, 'useremail');
-                       $field = 'user_email';
-                       break;
-               case 'login':
-                       $value = sanitize_user( $value );
-                       $user_id = wp_cache_get($value, 'userlogins');
-                       $field = 'user_login';
-                       break;
-               default:
-                       return false;
+       $ids = array();
+       foreach ( $users as $user ) {
+               update_user_caches( $user );
+               $ids[] = $user->ID;
        }
        }
-
-        if ( false !== $user_id )
-               return get_userdata($user_id);
-
-       if ( !$user = $wpdb->get_row( $wpdb->prepare("SELECT * FROM $wpdb->users WHERE $field = %s", $value) ) )
-               return false;
-
-       _fill_user($user);
-
-       return $user;
-}
-endif;
-
-if ( !function_exists('get_userdatabylogin') ) :
-/**
- * Retrieve user info by login name.
- *
- * @since 0.71
- *
- * @param string $user_login User's username
- * @return bool|object False on failure, User DB row object
- */
-function get_userdatabylogin($user_login) {
-       return get_user_by('login', $user_login);
-}
-endif;
-
-if ( !function_exists('get_user_by_email') ) :
-/**
- * Retrieve user info by email.
- *
- * @since 2.5
- *
- * @param string $email User's email address
- * @return bool|object False on failure, User DB row object
- */
-function get_user_by_email($email) {
-       return get_user_by('email', $email);
+       update_meta_cache( 'user', $ids );
 }
 endif;
 
 }
 endif;
 
@@ -259,7 +192,6 @@ if ( !function_exists( 'wp_mail' ) ) :
  * @uses do_action_ref_array() Calls 'phpmailer_init' hook on the reference to
  *             phpmailer object.
  * @uses PHPMailer
  * @uses do_action_ref_array() Calls 'phpmailer_init' hook on the reference to
  *             phpmailer object.
  * @uses PHPMailer
- * @
  *
  * @param string|array $to Array or comma-separated list of email addresses to send message.
  * @param string $subject Email subject
  *
  * @param string|array $to Array or comma-separated list of email addresses to send message.
  * @param string $subject Email subject
@@ -405,13 +337,13 @@ function wp_mail( $to, $subject, $message, $headers = '', $attachments = array()
                try {
                        // Break $recipient into name and address parts if in the format "Foo <bar@baz.com>"
                        $recipient_name = '';
                try {
                        // Break $recipient into name and address parts if in the format "Foo <bar@baz.com>"
                        $recipient_name = '';
-                       if( preg_match( '/(.+)\s?<(.+)>/', $recipient, $matches ) ) {
+                       if( preg_match( '/(.*)<(.+)>/', $recipient, $matches ) ) {
                                if ( count( $matches ) == 3 ) {
                                        $recipient_name = $matches[1];
                                        $recipient = $matches[2];
                                }
                        }
                                if ( count( $matches ) == 3 ) {
                                        $recipient_name = $matches[1];
                                        $recipient = $matches[2];
                                }
                        }
-                       $phpmailer->AddAddress( trim( $recipient ), $recipient_name);
+                       $phpmailer->AddAddress( $recipient, $recipient_name);
                } catch ( phpmailerException $e ) {
                        continue;
                }
                } catch ( phpmailerException $e ) {
                        continue;
                }
@@ -427,13 +359,13 @@ function wp_mail( $to, $subject, $message, $headers = '', $attachments = array()
                        try {
                                // Break $recipient into name and address parts if in the format "Foo <bar@baz.com>"
                                $recipient_name = '';
                        try {
                                // Break $recipient into name and address parts if in the format "Foo <bar@baz.com>"
                                $recipient_name = '';
-                               if( preg_match( '/(.+)\s?<(.+)>/', $recipient, $matches ) ) {
+                               if( preg_match( '/(.*)<(.+)>/', $recipient, $matches ) ) {
                                        if ( count( $matches ) == 3 ) {
                                                $recipient_name = $matches[1];
                                                $recipient = $matches[2];
                                        }
                                }
                                        if ( count( $matches ) == 3 ) {
                                                $recipient_name = $matches[1];
                                                $recipient = $matches[2];
                                        }
                                }
-                               $phpmailer->AddCc( trim($recipient), $recipient_name );
+                               $phpmailer->AddCc( $recipient, $recipient_name );
                        } catch ( phpmailerException $e ) {
                                continue;
                        }
                        } catch ( phpmailerException $e ) {
                                continue;
                        }
@@ -445,13 +377,13 @@ function wp_mail( $to, $subject, $message, $headers = '', $attachments = array()
                        try {
                                // Break $recipient into name and address parts if in the format "Foo <bar@baz.com>"
                                $recipient_name = '';
                        try {
                                // Break $recipient into name and address parts if in the format "Foo <bar@baz.com>"
                                $recipient_name = '';
-                               if( preg_match( '/(.+)\s?<(.+)>/', $recipient, $matches ) ) {
+                               if( preg_match( '/(.*)<(.+)>/', $recipient, $matches ) ) {
                                        if ( count( $matches ) == 3 ) {
                                                $recipient_name = $matches[1];
                                                $recipient = $matches[2];
                                        }
                                }
                                        if ( count( $matches ) == 3 ) {
                                                $recipient_name = $matches[1];
                                                $recipient = $matches[2];
                                        }
                                }
-                               $phpmailer->AddBcc( trim($recipient), $recipient_name );
+                               $phpmailer->AddBcc( $recipient, $recipient_name );
                        } catch ( phpmailerException $e ) {
                                continue;
                        }
                        } catch ( phpmailerException $e ) {
                                continue;
                        }
@@ -594,7 +526,7 @@ function wp_validate_auth_cookie($cookie = '', $scheme = '') {
                return false;
        }
 
                return false;
        }
 
-       $user = get_userdatabylogin($username);
+       $user = get_user_by('login', $username);
        if ( ! $user ) {
                do_action('auth_cookie_bad_username', $cookie_elements);
                return false;
        if ( ! $user ) {
                do_action('auth_cookie_bad_username', $cookie_elements);
                return false;
@@ -783,7 +715,7 @@ if ( !function_exists('is_user_logged_in') ) :
 function is_user_logged_in() {
        $user = wp_get_current_user();
 
 function is_user_logged_in() {
        $user = wp_get_current_user();
 
-       if ( $user->id == 0 )
+       if ( empty( $user->ID ) )
                return false;
 
        return true;
                return false;
 
        return true;
@@ -1153,7 +1085,7 @@ function wp_notify_moderator($comment_id) {
        $comment = get_comment($comment_id);
        $post = get_post($comment->comment_post_ID);
        $user = get_userdata( $post->post_author );
        $comment = get_comment($comment_id);
        $post = get_post($comment->comment_post_ID);
        $user = get_userdata( $post->post_author );
-       // Send to the administation and to the post author if the author can modify the comment.
+       // Send to the administration and to the post author if the author can modify the comment.
        $email_to = array( get_option('admin_email') );
        if ( user_can($user->ID, 'edit_comment', $comment_id) && !empty($user->user_email) && ( get_option('admin_email') != $user->user_email) )
                $email_to[] = $user->user_email;
        $email_to = array( get_option('admin_email') );
        if ( user_can($user->ID, 'edit_comment', $comment_id) && !empty($user->user_email) && ( get_option('admin_email') != $user->user_email) )
                $email_to[] = $user->user_email;
@@ -1308,7 +1240,7 @@ if ( !function_exists('wp_verify_nonce') ) :
  */
 function wp_verify_nonce($nonce, $action = -1) {
        $user = wp_get_current_user();
  */
 function wp_verify_nonce($nonce, $action = -1) {
        $user = wp_get_current_user();
-       $uid = (int) $user->id;
+       $uid = (int) $user->ID;
 
        $i = wp_nonce_tick();
 
 
        $i = wp_nonce_tick();
 
@@ -1334,7 +1266,7 @@ if ( !function_exists('wp_create_nonce') ) :
  */
 function wp_create_nonce($action = -1) {
        $user = wp_get_current_user();
  */
 function wp_create_nonce($action = -1) {
        $user = wp_get_current_user();
-       $uid = (int) $user->id;
+       $uid = (int) $user->ID;
 
        $i = wp_nonce_tick();
 
 
        $i = wp_nonce_tick();
 
@@ -1499,7 +1431,7 @@ if ( !function_exists('wp_check_password') ) :
  *
  * Maintains compatibility between old version and the new cookie authentication
  * protocol using PHPass library. The $hash parameter is the encrypted password
  *
  * Maintains compatibility between old version and the new cookie authentication
  * protocol using PHPass library. The $hash parameter is the encrypted password
- * and the function compares the plain text password when encypted similarly
+ * and the function compares the plain text password when encrypted similarly
  * against the already encrypted password to see if they match.
  *
  * For integration with other applications, this function can be overwritten to
  * against the already encrypted password to see if they match.
  *
  * For integration with other applications, this function can be overwritten to
index 945461c55dc4d20b36828894c6a042fd8d8f019d..bb71d3d3b6c67c3068adfecda8e80c43d63f8e2b 100644 (file)
@@ -251,7 +251,7 @@ function apply_filters_ref_array($tag, $args) {
  * @param string $tag The filter hook to which the function to be removed is hooked.
  * @param callback $function_to_remove The name of the function which should be removed.
  * @param int $priority optional. The priority of the function (default: 10).
  * @param string $tag The filter hook to which the function to be removed is hooked.
  * @param callback $function_to_remove The name of the function which should be removed.
  * @param int $priority optional. The priority of the function (default: 10).
- * @param int $accepted_args optional. The number of arguments the function accpets (default: 1).
+ * @param int $accepted_args optional. The number of arguments the function accepts (default: 1).
  * @return boolean Whether the function existed before it was removed.
  */
 function remove_filter($tag, $function_to_remove, $priority = 10, $accepted_args = 1) {
  * @return boolean Whether the function existed before it was removed.
  */
 function remove_filter($tag, $function_to_remove, $priority = 10, $accepted_args = 1) {
@@ -410,7 +410,7 @@ function do_action($tag, $arg = '') {
 }
 
 /**
 }
 
 /**
- * Retrieve the number times an action is fired.
+ * Retrieve the number of times an action is fired.
  *
  * @package WordPress
  * @subpackage Plugin
  *
  * @package WordPress
  * @subpackage Plugin
@@ -520,7 +520,7 @@ function has_action($tag, $function_to_check = false) {
  * @param string $tag The action hook to which the function to be removed is hooked.
  * @param callback $function_to_remove The name of the function which should be removed.
  * @param int $priority optional The priority of the function (default: 10).
  * @param string $tag The action hook to which the function to be removed is hooked.
  * @param callback $function_to_remove The name of the function which should be removed.
  * @param int $priority optional The priority of the function (default: 10).
- * @param int $accepted_args optional. The number of arguments the function accpets (default: 1).
+ * @param int $accepted_args optional. The number of arguments the function accepts (default: 1).
  * @return boolean Whether the function is removed.
  */
 function remove_action($tag, $function_to_remove, $priority = 10, $accepted_args = 1) {
  * @return boolean Whether the function is removed.
  */
 function remove_action($tag, $function_to_remove, $priority = 10, $accepted_args = 1) {
@@ -745,7 +745,7 @@ function _wp_call_all_hook($args) {
  * @param string $tag Used in counting how many hooks were applied
  * @param callback $function Used for creating unique id
  * @param int|bool $priority Used in counting how many hooks were applied.  If === false and $function is an object reference, we return the unique id only if it already has one, false otherwise.
  * @param string $tag Used in counting how many hooks were applied
  * @param callback $function Used for creating unique id
  * @param int|bool $priority Used in counting how many hooks were applied.  If === false and $function is an object reference, we return the unique id only if it already has one, false otherwise.
- * @return string|bool Unique ID for usage as array key or false if $priority === false and $function is an object reference, and it does not already have a uniqe id.
+ * @return string|bool Unique ID for usage as array key or false if $priority === false and $function is an object reference, and it does not already have a unique id.
  */
 function _wp_filter_build_unique_id($tag, $function, $priority) {
        global $wp_filter;
  */
 function _wp_filter_build_unique_id($tag, $function, $priority) {
        global $wp_filter;
index 07ddfd4d11022e315a10d61d8f3610b0d5c15fd8..6432dbedb3febe47539bafe297dba1b9c8eecf5b 100644 (file)
@@ -2,7 +2,7 @@
 /**
  * Contains Translation_Entry class
  *
 /**
  * Contains Translation_Entry class
  *
- * @version $Id: entry.php 406 2010-02-07 11:10:24Z nbachiyski $
+ * @version $Id: entry.php 621 2011-06-13 12:21:50Z nbachiyski $
  * @package pomo
  * @subpackage entry
  */
  * @package pomo
  * @subpackage entry
  */
@@ -65,5 +65,14 @@ class Translation_Entry {
                // prepend context and EOT, like in MO files
                return is_null($this->context)? $this->singular : $this->context.chr(4).$this->singular;
        }
                // prepend context and EOT, like in MO files
                return is_null($this->context)? $this->singular : $this->context.chr(4).$this->singular;
        }
+       
+       function merge_with(&$other) {
+               $this->flags = array_unique( array_merge( $this->flags, $other->flags ) );
+               $this->references = array_unique( array_merge( $this->references, $other->references ) );
+               if ( $this->extracted_comments != $other->extracted_comments ) {
+                       $this->extracted_comments .= $other->extracted_comments;
+               }
+               
+       }
 }
 endif;
\ No newline at end of file
 }
 endif;
\ No newline at end of file
index 72e0e7bf22bb7ae1ce1ece449f238ded3db4df94..d76cda5c6be884a1503aa22e305046607770aa6a 100644 (file)
@@ -2,7 +2,7 @@
 /**
  * Class for working with MO files
  *
 /**
  * Class for working with MO files
  *
- * @version $Id: mo.php 406 2010-02-07 11:10:24Z nbachiyski $
+ * @version $Id: mo.php 602 2011-01-30 12:43:29Z nbachiyski $
  * @package pomo
  * @subpackage mo
  */
  * @package pomo
  * @subpackage mo
  */
@@ -30,6 +30,20 @@ class MO extends Gettext_Translations {
        function export_to_file($filename) {
                $fh = fopen($filename, 'wb');
                if ( !$fh ) return false;
        function export_to_file($filename) {
                $fh = fopen($filename, 'wb');
                if ( !$fh ) return false;
+               $res = $this->export_to_file_handle( $fh );
+               fclose($fh);
+               return $res;
+       }
+       
+       function export() {
+               $tmp_fh = fopen("php://temp", 'r+');
+               if ( !$tmp_fh ) return false;
+               $this->export_to_file_handle( $tmp_fh );
+               rewind( $tmp_fh );
+               return stream_get_contents( $tmp_fh );
+       }
+       
+       function export_to_file_handle($fh) {
                $entries = array_filter($this->entries, create_function('$e', 'return !empty($e->translations);'));
                ksort($entries);
                $magic = 0x950412de;
                $entries = array_filter($this->entries, create_function('$e', 'return !empty($e->translations);'));
                ksort($entries);
                $magic = 0x950412de;
@@ -43,7 +57,7 @@ class MO extends Gettext_Translations {
                fwrite($fh, pack('V*', $magic, $revision, $total, $originals_lenghts_addr,
                        $translations_lenghts_addr, $size_of_hash, $hash_addr));
                fseek($fh, $originals_lenghts_addr);
                fwrite($fh, pack('V*', $magic, $revision, $total, $originals_lenghts_addr,
                        $translations_lenghts_addr, $size_of_hash, $hash_addr));
                fseek($fh, $originals_lenghts_addr);
-
+               
                // headers' msgid is an empty string
                fwrite($fh, pack('VV', 0, $current_addr));
                $current_addr++;
                // headers' msgid is an empty string
                fwrite($fh, pack('VV', 0, $current_addr));
                $current_addr++;
@@ -55,24 +69,24 @@ class MO extends Gettext_Translations {
                        fwrite($fh, pack('VV', $length, $current_addr));
                        $current_addr += $length + 1; // account for the NULL byte after
                }
                        fwrite($fh, pack('VV', $length, $current_addr));
                        $current_addr += $length + 1; // account for the NULL byte after
                }
-
+               
                $exported_headers = $this->export_headers();
                fwrite($fh, pack('VV', strlen($exported_headers), $current_addr));
                $current_addr += strlen($exported_headers) + 1;
                $translations_table = $exported_headers . chr(0);
                $exported_headers = $this->export_headers();
                fwrite($fh, pack('VV', strlen($exported_headers), $current_addr));
                $current_addr += strlen($exported_headers) + 1;
                $translations_table = $exported_headers . chr(0);
-
+               
                foreach($entries as $entry) {
                        $translations_table .= $this->export_translations($entry) . chr(0);
                        $length = strlen($this->export_translations($entry));
                        fwrite($fh, pack('VV', $length, $current_addr));
                        $current_addr += $length + 1;
                }
                foreach($entries as $entry) {
                        $translations_table .= $this->export_translations($entry) . chr(0);
                        $length = strlen($this->export_translations($entry));
                        fwrite($fh, pack('VV', $length, $current_addr));
                        $current_addr += $length + 1;
                }
-
+               
                fwrite($fh, $originals_table);
                fwrite($fh, $translations_table);
                fwrite($fh, $originals_table);
                fwrite($fh, $translations_table);
-               fclose($fh);
+               return true;
        }
        }
-
+       
        function export_original($entry) {
                //TODO: warnings for control characters
                $exported = $entry->singular;
        function export_original($entry) {
                //TODO: warnings for control characters
                $exported = $entry->singular;
@@ -80,12 +94,12 @@ class MO extends Gettext_Translations {
                if (!is_null($entry->context)) $exported = $entry->context . chr(4) . $exported;
                return $exported;
        }
                if (!is_null($entry->context)) $exported = $entry->context . chr(4) . $exported;
                return $exported;
        }
-
+       
        function export_translations($entry) {
                //TODO: warnings for control characters
                return implode(chr(0), $entry->translations);
        }
        function export_translations($entry) {
                //TODO: warnings for control characters
                return implode(chr(0), $entry->translations);
        }
-
+       
        function export_headers() {
                $exported = '';
                foreach($this->headers as $header => $value) {
        function export_headers() {
                $exported = '';
                foreach($this->headers as $header => $value) {
@@ -181,7 +195,8 @@ class MO extends Gettext_Translations {
                        $translation = $reader->substr( $strings, $t['pos'], $t['length'] );
 
                        if ('' === $original) {
                        $translation = $reader->substr( $strings, $t['pos'], $t['length'] );
 
                        if ('' === $original) {
-                               $this->set_headers($this->make_headers($translation));
+                               $headers = $this->make_headers($translation);
+                               $this->set_headers($headers);
                        } else {
                                $entry = &$this->make_entry($original, $translation);
                                $this->entries[$entry->key()] = &$entry;
                        } else {
                                $entry = &$this->make_entry($original, $translation);
                                $this->entries[$entry->key()] = &$entry;
@@ -193,7 +208,7 @@ class MO extends Gettext_Translations {
        /**
         * Build a Translation_Entry from original string and translation strings,
         * found in a MO file
        /**
         * Build a Translation_Entry from original string and translation strings,
         * found in a MO file
-        *
+        * 
         * @static
         * @param string $original original string to translate from MO file. Might contain
         *      0x04 as context separator or 0x00 as singular/plural separator
         * @static
         * @param string $original original string to translate from MO file. Might contain
         *      0x04 as context separator or 0x00 as singular/plural separator
index 8e3eb611512bdea6af9a28cf1fe3df36f172ac2b..8320bc1e1d9a90ef47157a7476c71cb760b2113f 100644 (file)
@@ -2,7 +2,7 @@
 /**
  * Class for working with PO files
  *
 /**
  * Class for working with PO files
  *
- * @version $Id: po.php 406 2010-02-07 11:10:24Z nbachiyski $
+ * @version $Id: po.php 589 2010-12-18 01:40:57Z nbachiyski $
  * @package pomo
  * @subpackage po
  */
  * @package pomo
  * @subpackage po
  */
@@ -18,7 +18,8 @@ ini_set('auto_detect_line_endings', 1);
  */
 if ( !class_exists( 'PO' ) ):
 class PO extends Gettext_Translations {
  */
 if ( !class_exists( 'PO' ) ):
 class PO extends Gettext_Translations {
-
+       
+       var $comments_before_headers = '';
 
        /**
         * Exports headers to a PO entry
 
        /**
         * Exports headers to a PO entry
@@ -31,7 +32,11 @@ class PO extends Gettext_Translations {
                        $header_string.= "$header: $value\n";
                }
                $poified = PO::poify($header_string);
                        $header_string.= "$header: $value\n";
                }
                $poified = PO::poify($header_string);
-               return rtrim("msgid \"\"\nmsgstr $poified");
+               if ($this->comments_before_headers)
+                       $before_headers = $this->prepend_each_line(rtrim($this->comments_before_headers)."\n", '# ');
+               else
+                       $before_headers = '';
+               return rtrim("{$before_headers}msgid \"\"\nmsgstr $poified");
        }
 
        /**
        }
 
        /**
@@ -75,6 +80,15 @@ class PO extends Gettext_Translations {
                if (false === $res) return false;
                return fclose($fh);
        }
                if (false === $res) return false;
                return fclose($fh);
        }
+       
+       /**
+        * Text to include as a comment before the start of the PO contents
+        * 
+        * Doesn't need to include # in the beginning of lines, these are added automatically
+        */
+       function set_comment_before_headers( $text ) {
+               $this->comments_before_headers = $text;
+       }
 
        /**
         * Formats a string in PO-style
 
        /**
         * Formats a string in PO-style
@@ -106,10 +120,10 @@ class PO extends Gettext_Translations {
                $po = str_replace("$newline$quote$quote", '', $po);
                return $po;
        }
                $po = str_replace("$newline$quote$quote", '', $po);
                return $po;
        }
-
+       
        /**
         * Gives back the original string from a PO-formatted string
        /**
         * Gives back the original string from a PO-formatted string
-        *
+        * 
         * @static
         * @param string $string PO-formatted string
         * @return string enascaped string
         * @static
         * @param string $string PO-formatted string
         * @return string enascaped string
@@ -139,7 +153,7 @@ class PO extends Gettext_Translations {
        }
 
        /**
        }
 
        /**
-        * Inserts $with in the beginning of every new line of $string and
+        * Inserts $with in the beginning of every new line of $string and 
         * returns the modified string
         *
         * @static
         * returns the modified string
         *
         * @static
@@ -217,7 +231,7 @@ class PO extends Gettext_Translations {
                PO::read_line($f, 'clear');
                return $res !== false;
        }
                PO::read_line($f, 'clear');
                return $res !== false;
        }
-
+       
        function read_entry($f, $lineno = 0) {
                $entry = new Translation_Entry();
                // where were we in the last step
        function read_entry($f, $lineno = 0) {
                $entry = new Translation_Entry();
                // where were we in the last step
@@ -254,7 +268,7 @@ class PO extends Gettext_Translations {
                                        return false;
                                }
                                // add comment
                                        return false;
                                }
                                // add comment
-                               $this->add_comment_to_entry($entry, $line);
+                               $this->add_comment_to_entry($entry, $line);;
                        } elseif (preg_match('/^msgctxt\s+(".*")/', $line, $m)) {
                                if ($is_final($context)) {
                                        PO::read_line($f, 'put-back');
                        } elseif (preg_match('/^msgctxt\s+(".*")/', $line, $m)) {
                                if ($is_final($context)) {
                                        PO::read_line($f, 'put-back');
@@ -322,7 +336,7 @@ class PO extends Gettext_Translations {
                }
                return array('entry' => $entry, 'lineno' => $lineno);
        }
                }
                return array('entry' => $entry, 'lineno' => $lineno);
        }
-
+       
        function read_line($f, $action = 'read') {
                static $last_line = '';
                static $use_last_line = false;
        function read_line($f, $action = 'read') {
                static $last_line = '';
                static $use_last_line = false;
@@ -339,7 +353,7 @@ class PO extends Gettext_Translations {
                $use_last_line = false;
                return $line;
        }
                $use_last_line = false;
                return $line;
        }
-
+       
        function add_comment_to_entry(&$entry, $po_comment_line) {
                $first_two = substr($po_comment_line, 0, 2);
                $comment = trim(substr($po_comment_line, 2));
        function add_comment_to_entry(&$entry, $po_comment_line) {
                $first_two = substr($po_comment_line, 0, 2);
                $comment = trim(substr($po_comment_line, 2));
@@ -353,11 +367,11 @@ class PO extends Gettext_Translations {
                        $entry->translator_comments = trim($entry->translator_comments . "\n" . $comment);
                }
        }
                        $entry->translator_comments = trim($entry->translator_comments . "\n" . $comment);
                }
        }
-
+       
        function trim_quotes($s) {
                if ( substr($s, 0, 1) == '"') $s = substr($s, 1);
                if ( substr($s, -1, 1) == '"') $s = substr($s, 0, -1);
                return $s;
        }
 }
        function trim_quotes($s) {
                if ( substr($s, 0, 1) == '"') $s = substr($s, 1);
                if ( substr($s, -1, 1) == '"') $s = substr($s, 0, -1);
                return $s;
        }
 }
-endif;
+endif;
\ No newline at end of file
index 289cc785a20d3baf0940b259d68e5f9ad88f1488..efaffa5ae93787ccda46d369465db0b063f735ff 100644 (file)
@@ -3,26 +3,26 @@
  * Classes, which help reading streams of data from files.
  * Based on the classes from Danilo Segan <danilo@kvota.net>
  *
  * Classes, which help reading streams of data from files.
  * Based on the classes from Danilo Segan <danilo@kvota.net>
  *
- * @version $Id: streams.php 406 2010-02-07 11:10:24Z nbachiyski $
+ * @version $Id: streams.php 597 2011-01-16 20:14:36Z nbachiyski $
  * @package pomo
  * @subpackage streams
  */
 
 if ( !class_exists( 'POMO_Reader' ) ):
 class POMO_Reader {
  * @package pomo
  * @subpackage streams
  */
 
 if ( !class_exists( 'POMO_Reader' ) ):
 class POMO_Reader {
-
+       
        var $endian = 'little';
        var $_post = '';
        var $endian = 'little';
        var $_post = '';
-
+       
        function POMO_Reader() {
                $this->is_overloaded = ((ini_get("mbstring.func_overload") & 2) != 0) && function_exists('mb_substr');
                $this->_pos = 0;
        }
        function POMO_Reader() {
                $this->is_overloaded = ((ini_get("mbstring.func_overload") & 2) != 0) && function_exists('mb_substr');
                $this->_pos = 0;
        }
-
+       
        /**
         * Sets the endianness of the file.
         *
        /**
         * Sets the endianness of the file.
         *
-        * @param string $endian 'big' or 'little'
+        * @param $endian string 'big' or 'little'
         */
        function setEndian($endian) {
                $this->endian = $endian;
         */
        function setEndian($endian) {
                $this->endian = $endian;
@@ -57,8 +57,8 @@ class POMO_Reader {
                $endian_letter = ('big' == $this->endian)? 'N' : 'V';
                return unpack($endian_letter.$count, $bytes);
        }
                $endian_letter = ('big' == $this->endian)? 'N' : 'V';
                return unpack($endian_letter.$count, $bytes);
        }
-
-
+       
+       
        function substr($string, $start, $length) {
                if ($this->is_overloaded) {
                        return mb_substr($string, $start, $length, 'ascii');
        function substr($string, $start, $length) {
                if ($this->is_overloaded) {
                        return mb_substr($string, $start, $length, 'ascii');
@@ -66,7 +66,7 @@ class POMO_Reader {
                        return substr($string, $start, $length);
                }
        }
                        return substr($string, $start, $length);
                }
        }
-
+       
        function strlen($string) {
                if ($this->is_overloaded) {
                        return mb_strlen($string, 'ascii');
        function strlen($string) {
                if ($this->is_overloaded) {
                        return mb_strlen($string, 'ascii');
@@ -74,7 +74,7 @@ class POMO_Reader {
                        return strlen($string);
                }
        }
                        return strlen($string);
                }
        }
-
+       
        function str_split($string, $chunk_size) {
                if (!function_exists('str_split')) {
                        $length = $this->strlen($string);
        function str_split($string, $chunk_size) {
                if (!function_exists('str_split')) {
                        $length = $this->strlen($string);
@@ -86,8 +86,8 @@ class POMO_Reader {
                        return str_split( $string, $chunk_size );
                }
        }
                        return str_split( $string, $chunk_size );
                }
        }
-
-
+       
+               
        function pos() {
                return $this->_pos;
        }
        function pos() {
                return $this->_pos;
        }
@@ -95,7 +95,7 @@ class POMO_Reader {
        function is_resource() {
                return true;
        }
        function is_resource() {
                return true;
        }
-
+       
        function close() {
                return true;
        }
        function close() {
                return true;
        }
@@ -106,13 +106,13 @@ if ( !class_exists( 'POMO_FileReader' ) ):
 class POMO_FileReader extends POMO_Reader {
        function POMO_FileReader($filename) {
                parent::POMO_Reader();
 class POMO_FileReader extends POMO_Reader {
        function POMO_FileReader($filename) {
                parent::POMO_Reader();
-               $this->_f = fopen($filename, 'r');
+               $this->_f = fopen($filename, 'rb');
        }
        }
-
+       
        function read($bytes) {
                return fread($this->_f, $bytes);
        }
        function read($bytes) {
                return fread($this->_f, $bytes);
        }
-
+       
        function seekto($pos) {
                if ( -1 == fseek($this->_f, $pos, SEEK_SET)) {
                        return false;
        function seekto($pos) {
                if ( -1 == fseek($this->_f, $pos, SEEK_SET)) {
                        return false;
@@ -120,19 +120,19 @@ class POMO_FileReader extends POMO_Reader {
                $this->_pos = $pos;
                return true;
        }
                $this->_pos = $pos;
                return true;
        }
-
+       
        function is_resource() {
                return is_resource($this->_f);
        }
        function is_resource() {
                return is_resource($this->_f);
        }
-
+       
        function feof() {
                return feof($this->_f);
        }
        function feof() {
                return feof($this->_f);
        }
-
+       
        function close() {
                return fclose($this->_f);
        }
        function close() {
                return fclose($this->_f);
        }
-
+       
        function read_all() {
                $all = '';
                while ( !$this->feof() )
        function read_all() {
                $all = '';
                while ( !$this->feof() )
@@ -148,9 +148,9 @@ if ( !class_exists( 'POMO_StringReader' ) ):
  * of a physical file.
  */
 class POMO_StringReader extends POMO_Reader {
  * of a physical file.
  */
 class POMO_StringReader extends POMO_Reader {
-
+       
        var $_str = '';
        var $_str = '';
-
+       
        function POMO_StringReader($str = '') {
                parent::POMO_Reader();
                $this->_str = $str;
        function POMO_StringReader($str = '') {
                parent::POMO_Reader();
                $this->_str = $str;
@@ -178,7 +178,7 @@ class POMO_StringReader extends POMO_Reader {
        function read_all() {
                return $this->substr($this->_str, $this->_pos, $this->strlen($this->_str));
        }
        function read_all() {
                return $this->substr($this->_str, $this->_pos, $this->strlen($this->_str));
        }
-
+       
 }
 endif;
 
 }
 endif;
 
index 01be8df42d20d5a6378ee927cd73c6138d7b2b46..951583ace60a29ab876c467324326dea551abe25 100644 (file)
@@ -2,7 +2,7 @@
 /**
  * Class for a set of entries for translation and their associated headers
  *
 /**
  * Class for a set of entries for translation and their associated headers
  *
- * @version $Id: translations.php 406 2010-02-07 11:10:24Z nbachiyski $
+ * @version $Id: translations.php 590 2010-12-20 19:58:37Z nbachiyski $
  * @package pomo
  * @subpackage translations
  */
  * @package pomo
  * @subpackage translations
  */
@@ -29,6 +29,19 @@ class Translations {
                $this->entries[$key] = &$entry;
                return true;
        }
                $this->entries[$key] = &$entry;
                return true;
        }
+       
+       function add_entry_or_merge($entry) {
+               if (is_array($entry)) {
+                       $entry = new Translation_Entry($entry);
+               }
+               $key = $entry->key();
+               if (false === $key) return false;
+               if (isset($this->entries[$key]))
+                       $this->entries[$key]->merge_with($entry);
+               else
+                       $this->entries[$key] = &$entry;
+               return true;
+       }
 
        /**
         * Sets $header PO header to $value
 
        /**
         * Sets $header PO header to $value
@@ -68,7 +81,7 @@ class Translations {
        /**
         * Given the number of items, returns the 0-based index of the plural form to use
         *
        /**
         * Given the number of items, returns the 0-based index of the plural form to use
         *
-        * Here, in the base Translations class, the commong logic for English is implmented:
+        * Here, in the base Translations class, the common logic for English is implemented:
         *      0 if there is one element, 1 otherwise
         *
         * This function should be overrided by the sub-classes. For example MO/PO can derive the logic
         *      0 if there is one element, 1 otherwise
         *
         * This function should be overrided by the sub-classes. For example MO/PO can derive the logic
@@ -108,6 +121,15 @@ class Translations {
                        $this->entries[$entry->key()] = $entry;
                }
        }
                        $this->entries[$entry->key()] = $entry;
                }
        }
+       
+       function merge_originals_with(&$other) {
+               foreach( $other->entries as $entry ) {
+                       if ( !isset( $this->entries[$entry->key()] ) )
+                               $this->entries[$entry->key()] = $entry;
+                       else
+                               $this->entries[$entry->key()]->merge_with($entry);
+               }
+       }
 }
 
 class Gettext_Translations extends Translations {
 }
 
 class Gettext_Translations extends Translations {
@@ -126,7 +148,7 @@ class Gettext_Translations extends Translations {
                }
                return call_user_func($this->_gettext_select_plural_form, $count);
        }
                }
                return call_user_func($this->_gettext_select_plural_form, $count);
        }
-
+       
        function nplurals_and_expression_from_header($header) {
                if (preg_match('/^\s*nplurals\s*=\s*(\d+)\s*;\s+plural\s*=\s*(.+)$/', $header, $matches)) {
                        $nplurals = (int)$matches[1];
        function nplurals_and_expression_from_header($header) {
                if (preg_match('/^\s*nplurals\s*=\s*(\d+)\s*;\s+plural\s*=\s*(.+)$/', $header, $matches)) {
                        $nplurals = (int)$matches[1];
@@ -152,7 +174,7 @@ class Gettext_Translations extends Translations {
        /**
         * Adds parantheses to the inner parts of ternary operators in
         * plural expressions, because PHP evaluates ternary oerators from left to right
        /**
         * Adds parantheses to the inner parts of ternary operators in
         * plural expressions, because PHP evaluates ternary oerators from left to right
-        *
+        * 
         * @param string $expression the expression without parentheses
         * @return string the expression with parentheses added
         */
         * @param string $expression the expression without parentheses
         * @return string the expression with parentheses added
         */
@@ -180,7 +202,7 @@ class Gettext_Translations extends Translations {
                }
                return rtrim($res, ';');
        }
                }
                return rtrim($res, ';');
        }
-
+       
        function make_headers($translation) {
                $headers = array();
                // sometimes \ns are used instead of real new lines
        function make_headers($translation) {
                $headers = array();
                // sometimes \ns are used instead of real new lines
@@ -193,7 +215,7 @@ class Gettext_Translations extends Translations {
                }
                return $headers;
        }
                }
                return $headers;
        }
-
+       
        function set_header($header, $value) {
                parent::set_header($header, $value);
                if ('Plural-Forms' == $header) {
        function set_header($header, $value) {
                parent::set_header($header, $value);
                if ('Plural-Forms' == $header) {
@@ -212,7 +234,7 @@ if ( !class_exists( 'NOOP_Translations' ) ):
 class NOOP_Translations {
        var $entries = array();
        var $headers = array();
 class NOOP_Translations {
        var $entries = array();
        var $headers = array();
-
+       
        function add_entry($entry) {
                return true;
        }
        function add_entry($entry) {
                return true;
        }
index d6a09783c3f8f815e69e8e1a9c045573cb654f4f..eac548b0b0635481eb0803569b2df900b4f7216f 100644 (file)
@@ -160,9 +160,9 @@ function get_the_guid( $id = 0 ) {
  * @since 0.71
  *
  * @param string $more_link_text Optional. Content for when there is more text.
  * @since 0.71
  *
  * @param string $more_link_text Optional. Content for when there is more text.
- * @param string $stripteaser Optional. Teaser content before the more text.
+ * @param bool $stripteaser Optional. Strip teaser content before the more text. Default is false.
  */
  */
-function the_content($more_link_text = null, $stripteaser = 0) {
+function the_content($more_link_text = null, $stripteaser = false) {
        $content = get_the_content($more_link_text, $stripteaser);
        $content = apply_filters('the_content', $content);
        $content = str_replace(']]>', ']]&gt;', $content);
        $content = get_the_content($more_link_text, $stripteaser);
        $content = apply_filters('the_content', $content);
        $content = str_replace(']]>', ']]&gt;', $content);
@@ -175,10 +175,10 @@ function the_content($more_link_text = null, $stripteaser = 0) {
  * @since 0.71
  *
  * @param string $more_link_text Optional. Content for when there is more text.
  * @since 0.71
  *
  * @param string $more_link_text Optional. Content for when there is more text.
- * @param string $stripteaser Optional. Teaser content before the more text.
+ * @param bool $stripteaser Optional. Strip teaser content before the more text. Default is false.
  * @return string
  */
  * @return string
  */
-function get_the_content($more_link_text = null, $stripteaser = 0) {
+function get_the_content($more_link_text = null, $stripteaser = false) {
        global $post, $more, $page, $pages, $multipage, $preview;
 
        if ( null === $more_link_text )
        global $post, $more, $page, $pages, $multipage, $preview;
 
        if ( null === $more_link_text )
@@ -207,9 +207,9 @@ function get_the_content($more_link_text = null, $stripteaser = 0) {
                $content = array($content);
        }
        if ( (false !== strpos($post->post_content, '<!--noteaser-->') && ((!$multipage) || ($page==1))) )
                $content = array($content);
        }
        if ( (false !== strpos($post->post_content, '<!--noteaser-->') && ((!$multipage) || ($page==1))) )
-               $stripteaser = 1;
+               $stripteaser = true;
        $teaser = $content[0];
        $teaser = $content[0];
-       if ( ($more) && ($stripteaser) && ($hasTeaser) )
+       if ( $more && $stripteaser && $hasTeaser )
                $teaser = '';
        $output .= $teaser;
        if ( count($content) > 1 ) {
                $teaser = '';
        $output .= $teaser;
        if ( count($content) > 1 ) {
@@ -329,9 +329,9 @@ function get_post_class( $class = '', $post_id = null ) {
        $classes[] = 'status-' . $post->post_status;
 
        // Post Format
        $classes[] = 'status-' . $post->post_status;
 
        // Post Format
-       $post_format = get_post_format( $post->ID );
-
        if ( post_type_supports( $post->post_type, 'post-formats' ) ) {
        if ( post_type_supports( $post->post_type, 'post-formats' ) ) {
+               $post_format = get_post_format( $post->ID );
+
                if ( $post_format && !is_wp_error($post_format) )
                        $classes[] = 'format-' . sanitize_html_class( $post_format );
                else
                if ( $post_format && !is_wp_error($post_format) )
                        $classes[] = 'format-' . sanitize_html_class( $post_format );
                else
@@ -432,12 +432,14 @@ function get_body_class( $class = '' ) {
                $classes[] = 'postid-' . $post_id;
 
                // Post Format
                $classes[] = 'postid-' . $post_id;
 
                // Post Format
-               $post_format = get_post_format( $post->ID );
+               if ( post_type_supports( $post->post_type, 'post-formats' ) ) {
+                       $post_format = get_post_format( $post->ID );
 
 
-               if ( $post_format && !is_wp_error($post_format) )
-                       $classes[] = 'single-format-' . sanitize_html_class( $post_format );
-               else
-                       $classes[] = 'single-format-standard';
+                       if ( $post_format && !is_wp_error($post_format) )
+                               $classes[] = 'single-format-' . sanitize_html_class( $post_format );
+                       else
+                               $classes[] = 'single-format-standard';
+               }
 
                if ( is_attachment() ) {
                        $mime_type = get_post_mime_type($post_id);
 
                if ( is_attachment() ) {
                        $mime_type = get_post_mime_type($post_id);
@@ -505,6 +507,9 @@ function get_body_class( $class = '' ) {
        if ( is_admin_bar_showing() )
                $classes[] = 'admin-bar';
 
        if ( is_admin_bar_showing() )
                $classes[] = 'admin-bar';
 
+       if ( get_background_image() || get_background_color() )
+               $classes[] = 'custom-background';
+
        $page = $wp_query->get( 'page' );
 
        if ( !$page || $page < 2)
        $page = $wp_query->get( 'page' );
 
        if ( !$page || $page < 2)
@@ -562,7 +567,7 @@ function post_password_required( $post = null ) {
        if ( !isset($_COOKIE['wp-postpass_' . COOKIEHASH]) )
                return true;
 
        if ( !isset($_COOKIE['wp-postpass_' . COOKIEHASH]) )
                return true;
 
-       if ( $_COOKIE['wp-postpass_' . COOKIEHASH] != $post->post_password )
+       if ( stripslashes( $_COOKIE['wp-postpass_' . COOKIEHASH] ) != $post->post_password )
                return true;
 
        return false;
                return true;
 
        return false;
@@ -737,7 +742,7 @@ function the_meta() {
                echo "<ul class='post-meta'>\n";
                foreach ( (array) $keys as $key ) {
                        $keyt = trim($key);
                echo "<ul class='post-meta'>\n";
                foreach ( (array) $keys as $key ) {
                        $keyt = trim($key);
-                       if ( '_' == $keyt[0] )
+                       if ( is_protected_meta( $keyt, 'post' ) )
                                continue;
                        $values = array_map('trim', get_post_custom_values($key));
                        $value = implode($values,', ');
                                continue;
                        $values = array_map('trim', get_post_custom_values($key));
                        $value = implode($values,', ');
@@ -773,13 +778,12 @@ function wp_dropdown_pages($args = '') {
 
        $pages = get_pages($r);
        $output = '';
 
        $pages = get_pages($r);
        $output = '';
-       $name = esc_attr($name);
        // Back-compat with old system where both id and name were based on $name argument
        if ( empty($id) )
                $id = $name;
 
        if ( ! empty($pages) ) {
        // Back-compat with old system where both id and name were based on $name argument
        if ( empty($id) )
                $id = $name;
 
        if ( ! empty($pages) ) {
-               $output = "<select name=\"$name\" id=\"$id\">\n";
+               $output = "<select name='" . esc_attr( $name ) . "' id='" . esc_attr( $id ) . "'>\n";
                if ( $show_option_no_change )
                        $output .= "\t<option value=\"-1\">$show_option_no_change</option>";
                if ( $show_option_none )
                if ( $show_option_no_change )
                        $output .= "\t<option value=\"-1\">$show_option_no_change</option>";
                if ( $show_option_none )
@@ -1038,9 +1042,9 @@ class Walker_Page extends Walker {
                        $css_class[] = 'current_page_parent';
                }
 
                        $css_class[] = 'current_page_parent';
                }
 
-               $css_class = implode(' ', apply_filters('page_css_class', $css_class, $page));
+               $css_class = implode( ' ', apply_filters( 'page_css_class', $css_class, $page, $depth, $args, $current_page ) );
 
 
-               $output .= $indent . '<li class="' . $css_class . '"><a href="' . get_permalink($page->ID) . '" title="' . esc_attr( wp_strip_all_tags( apply_filters( 'the_title', $page->post_title, $page->ID ) ) ) . '">' . $link_before . apply_filters( 'the_title', $page->post_title, $page->ID ) . $link_after . '</a>';
+               $output .= $indent . '<li class="' . $css_class . '"><a href="' . get_permalink($page->ID) . '">' . $link_before . apply_filters( 'the_title', $page->post_title, $page->ID ) . $link_after . '</a>';
 
                if ( !empty($show_date) ) {
                        if ( 'modified' == $show_date )
 
                if ( !empty($show_date) ) {
                        if ( 'modified' == $show_date )
@@ -1105,7 +1109,7 @@ class Walker_PageDropdown extends Walker {
                if ( $page->ID == $args['selected'] )
                        $output .= ' selected="selected"';
                $output .= '>';
                if ( $page->ID == $args['selected'] )
                        $output .= ' selected="selected"';
                $output .= '>';
-               $title = apply_filters( 'list_pages', $page->post_title );
+               $title = apply_filters( 'list_pages', $page->post_title, $page );
                $output .= $pad . esc_html( $title );
                $output .= "</option>\n";
        }
                $output .= $pad . esc_html( $title );
                $output .= "</option>\n";
        }
@@ -1148,27 +1152,26 @@ function the_attachment_link( $id = 0, $fullsize = false, $deprecated = false, $
  * @param string $text Optional, default is false. If string, then will be link text.
  * @return string HTML content.
  */
  * @param string $text Optional, default is false. If string, then will be link text.
  * @return string HTML content.
  */
-function wp_get_attachment_link($id = 0, $size = 'thumbnail', $permalink = false, $icon = false, $text = false) {
-       $id = intval($id);
+function wp_get_attachment_link( $id = 0, $size = 'thumbnail', $permalink = false, $icon = false, $text = false ) {
+       $id = intval( $id );
        $_post = & get_post( $id );
 
        $_post = & get_post( $id );
 
-       if ( ('attachment' != $_post->post_type) || !$url = wp_get_attachment_url($_post->ID) )
-               return __('Missing Attachment');
+       if ( empty( $_post ) || ( 'attachment' != $_post->post_type ) || ! $url = wp_get_attachment_url( $_post->ID ) )
+               return __( 'Missing Attachment' );
 
        if ( $permalink )
 
        if ( $permalink )
-               $url = get_attachment_link($_post->ID);
+               $url = get_attachment_link( $_post->ID );
 
 
-       $post_title = esc_attr($_post->post_title);
+       $post_title = esc_attr( $_post->post_title );
 
 
-       if ( $text ) {
-               $link_text = esc_attr($text);
-       } elseif ( ( is_int($size) && $size != 0 ) or ( is_string($size) && $size != 'none' ) or $size != false ) {
-               $link_text = wp_get_attachment_image($id, $size, $icon);
-       } else {
+       if ( $text )
+               $link_text = esc_attr( $text );
+       elseif ( $size && 'none' != $size )
+               $link_text = wp_get_attachment_image( $id, $size, $icon );
+       else
                $link_text = '';
                $link_text = '';
-       }
 
 
-       if( trim($link_text) == '' )
+       if ( trim( $link_text ) == '' )
                $link_text = $_post->post_title;
 
        return apply_filters( 'wp_get_attachment_link', "<a href='$url' title='$post_title'>$link_text</a>", $id, $size, $permalink, $icon, $text );
                $link_text = $_post->post_title;
 
        return apply_filters( 'wp_get_attachment_link', "<a href='$url' title='$post_title'>$link_text</a>", $id, $size, $permalink, $icon, $text );
index 38ae9039a9c89baaa40bf5f80b0eef0503449690..65a517266a119cbb6298b822efd1af4b8ab95e40 100644 (file)
@@ -18,7 +18,6 @@
  * @return bool Whether post has an image attached.
  */
 function has_post_thumbnail( $post_id = null ) {
  * @return bool Whether post has an image attached.
  */
 function has_post_thumbnail( $post_id = null ) {
-       $post_id = ( null === $post_id ) ? get_the_ID() : $post_id;
        return (bool) get_post_thumbnail_id( $post_id );
 }
 
        return (bool) get_post_thumbnail_id( $post_id );
 }
 
@@ -50,7 +49,7 @@ function the_post_thumbnail( $size = 'post-thumbnail', $attr = '' ) {
 /**
  * Update cache for thumbnails in the current loop
  *
 /**
  * Update cache for thumbnails in the current loop
  *
- * @sicne 3.2
+ * @since 3.2
  */
 function update_post_thumbnail_cache() {
        global $wp_query;
  */
 function update_post_thumbnail_cache() {
        global $wp_query;
index 0cf04d55e9a9e50b405d59dc51f0048bab2aeb53..f875f2f816231df25c902c7c4486b1ebb352cb22 100644 (file)
@@ -51,6 +51,7 @@ function create_initial_post_types() {
        register_post_type( 'attachment', array(
                'labels' => array(
                        'name' => __( 'Media' ),
        register_post_type( 'attachment', array(
                'labels' => array(
                        'name' => __( 'Media' ),
+                       'edit_item' => __( 'Edit Media' ),
                ),
                'public' => true,
                'show_ui' => false,
                ),
                'public' => true,
                'show_ui' => false,
@@ -380,6 +381,8 @@ function &get_post(&$post, $output = OBJECT, $filter = 'raw') {
                _get_post_ancestors($post);
                $_post = sanitize_post($post, 'raw');
                wp_cache_add($post->ID, $_post, 'posts');
                _get_post_ancestors($post);
                $_post = sanitize_post($post, 'raw');
                wp_cache_add($post->ID, $_post, 'posts');
+       } elseif ( is_object($post) && 'raw' == $post->filter ) {
+               $_post = $post;
        } else {
                if ( is_object($post) )
                        $post_id = $post->ID;
        } else {
                if ( is_object($post) )
                        $post_id = $post->ID;
@@ -433,7 +436,7 @@ function get_post_ancestors($post) {
 /**
  * Retrieve data from a post field based on Post ID.
  *
 /**
  * Retrieve data from a post field based on Post ID.
  *
- * Examples of the post field will be, 'post_type', 'post_status', 'content',
+ * Examples of the post field will be, 'post_type', 'post_status', 'post_content',
  * etc and based off of the post object property or key names.
  *
  * The context values are based off of the taxonomy filter functions and
  * etc and based off of the post object property or key names.
  *
  * The context values are based off of the taxonomy filter functions and
@@ -985,7 +988,7 @@ function register_post_type($post_type, $args = array()) {
                $wp->add_query_var($args->query_var);
        }
 
                $wp->add_query_var($args->query_var);
        }
 
-       if ( false !== $args->rewrite && '' != get_option('permalink_structure') ) {
+       if ( false !== $args->rewrite && ( is_admin() || '' != get_option('permalink_structure') ) ) {
                if ( ! is_array( $args->rewrite ) )
                        $args->rewrite = array();
                if ( empty( $args->rewrite['slug'] ) )
                if ( ! is_array( $args->rewrite ) )
                        $args->rewrite = array();
                if ( empty( $args->rewrite['slug'] ) )
@@ -1036,6 +1039,8 @@ function register_post_type($post_type, $args = array()) {
                register_taxonomy_for_object_type( $taxonomy, $post_type );
        }
 
                register_taxonomy_for_object_type( $taxonomy, $post_type );
        }
 
+       do_action( 'registered_post_type', $post_type, $args );
+
        return $args;
 }
 
        return $args;
 }
 
@@ -1154,7 +1159,7 @@ function _post_type_meta_capabilities( $capabilities = null ) {
  * Builds an object with all post type labels out of a post type object
  *
  * Accepted keys of the label array in the post type object:
  * Builds an object with all post type labels out of a post type object
  *
  * Accepted keys of the label array in the post type object:
- * - name - general name for the post type, usually plural. The same and overriden by $post_type_object->label. Default is Posts/Pages
+ * - name - general name for the post type, usually plural. The same and overridden by $post_type_object->label. Default is Posts/Pages
  * - singular_name - name for one object of this post type. Default is Post/Page
  * - add_new - Default is Add New for both hierarchical and non-hierarchical types. When internationalizing this string, please use a {@link http://codex.wordpress.org/I18n_for_WordPress_Developers#Disambiguation_by_context gettext context} matching your post type. Example: <code>_x('Add New', 'product');</code>
  * - add_new_item - Default is Add New Post/Add New Page
  * - singular_name - name for one object of this post type. Default is Post/Page
  * - add_new - Default is Add New for both hierarchical and non-hierarchical types. When internationalizing this string, please use a {@link http://codex.wordpress.org/I18n_for_WordPress_Developers#Disambiguation_by_context gettext context} matching your post type. Example: <code>_x('Add New', 'product');</code>
  * - add_new_item - Default is Add New Post/Add New Page
@@ -1165,6 +1170,8 @@ function _post_type_meta_capabilities( $capabilities = null ) {
  * - not_found - Default is No posts found/No pages found
  * - not_found_in_trash - Default is No posts found in Trash/No pages found in Trash
  * - parent_item_colon - This string isn't used on non-hierarchical types. In hierarchical ones the default is Parent Page:
  * - not_found - Default is No posts found/No pages found
  * - not_found_in_trash - Default is No posts found in Trash/No pages found in Trash
  * - parent_item_colon - This string isn't used on non-hierarchical types. In hierarchical ones the default is Parent Page:
+ * - all_items - String for the submenu. Default is All Posts/All Pages
+ * - menu_name - Default is the same as <code>name</code>
  *
  * Above, the first default value is for non-hierarchical post types (like posts) and the second one is for hierarchical post types (like pages).
  *
  *
  * Above, the first default value is for non-hierarchical post types (like posts) and the second one is for hierarchical post types (like pages).
  *
@@ -1246,7 +1253,7 @@ add_action( 'admin_menu', '_add_post_type_submenus' );
  * 'excerpt', 'page-attributes', 'thumbnail', and 'custom-fields'.
  *
  * Additionally, the 'revisions' feature dictates whether the post type will store revisions,
  * 'excerpt', 'page-attributes', 'thumbnail', and 'custom-fields'.
  *
  * Additionally, the 'revisions' feature dictates whether the post type will store revisions,
- * and the 'comments' feature dicates whether the comments count will show on the edit screen.
+ * and the 'comments' feature dictates whether the comments count will show on the edit screen.
  *
  * @since 3.0.0
  * @param string $post_type The post type for which to add the feature
  *
  * @since 3.0.0
  * @param string $post_type The post type for which to add the feature
@@ -1495,22 +1502,7 @@ function update_post_meta($post_id, $meta_key, $meta_value, $prev_value = '') {
  * @return bool Whether the post meta key was deleted from the database
  */
 function delete_post_meta_by_key($post_meta_key) {
  * @return bool Whether the post meta key was deleted from the database
  */
 function delete_post_meta_by_key($post_meta_key) {
-       if ( !$post_meta_key )
-               return false;
-
-       global $wpdb;
-       $post_ids = $wpdb->get_col($wpdb->prepare("SELECT DISTINCT post_id FROM $wpdb->postmeta WHERE meta_key = %s", $post_meta_key));
-       if ( $post_ids ) {
-               $postmetaids = $wpdb->get_col( $wpdb->prepare( "SELECT meta_id FROM $wpdb->postmeta WHERE meta_key = %s", $post_meta_key ) );
-               $in = implode( ',', array_fill(1, count($postmetaids), '%d'));
-               do_action( 'delete_postmeta', $postmetaids );
-               $wpdb->query( $wpdb->prepare("DELETE FROM $wpdb->postmeta WHERE meta_id IN($in)", $postmetaids ));
-               do_action( 'deleted_postmeta', $postmetaids );
-               foreach ( $post_ids as $post_id )
-                       wp_cache_delete($post_id, 'post_meta');
-               return true;
-       }
-       return false;
+       return delete_metadata( 'post', null, $post_meta_key, '', true );
 }
 
 /**
 }
 
 /**
@@ -2083,7 +2075,7 @@ function wp_trash_post($post_id = 0) {
        if ( $post['post_status'] == 'trash' )
                return false;
 
        if ( $post['post_status'] == 'trash' )
                return false;
 
-       do_action('trash_post', $post_id);
+       do_action('wp_trash_post', $post_id);
 
        add_post_meta($post_id,'_wp_trash_meta_status', $post['post_status']);
        add_post_meta($post_id,'_wp_trash_meta_time', time());
 
        add_post_meta($post_id,'_wp_trash_meta_status', $post['post_status']);
        add_post_meta($post_id,'_wp_trash_meta_time', time());
@@ -2447,9 +2439,11 @@ function wp_insert_post($postarr, $wp_error = false) {
                $previous_status = 'new';
        }
 
                $previous_status = 'new';
        }
 
-       if ( ('' == $post_content) && ('' == $post_title) && ('' == $post_excerpt) && ('attachment' != $post_type) ) {
+       $maybe_empty = ! $post_content && ! $post_title && ! $post_excerpt && post_type_supports( $post_type, 'editor' )
+               && post_type_supports( $post_type, 'title' ) && post_type_supports( $post_type, 'excerpt' );
+       if ( apply_filters( 'wp_insert_post_empty_content', $maybe_empty, $postarr ) ) {
                if ( $wp_error )
                if ( $wp_error )
-                       return new WP_Error('empty_content', __('Content, title, and excerpt are empty.'));
+                       return new WP_Error( 'empty_content', __( 'Content, title, and excerpt are empty.' ) );
                else
                        return 0;
        }
                else
                        return 0;
        }
@@ -2496,7 +2490,12 @@ function wp_insert_post($postarr, $wp_error = false) {
                else
                        $post_name = '';
        } else {
                else
                        $post_name = '';
        } else {
-               $post_name = sanitize_title($post_name);
+               // On updates, we need to check to see if it's using the old, fixed sanitization context.
+               $check_name = sanitize_title( $post_name, '', 'old-save' );
+               if ( $update && strtolower( urlencode( $post_name ) ) == $check_name && get_post_field( 'post_name', $ID ) == $check_name )
+                       $post_name = $check_name;
+               else // new post, or slug has changed.
+                       $post_name = sanitize_title($post_name);
        }
 
        // If the post date is empty (due to having been new or a draft) and status is not 'draft' or 'pending', set date to now
        }
 
        // If the post date is empty (due to having been new or a draft) and status is not 'draft' or 'pending', set date to now
@@ -2739,12 +2738,6 @@ function wp_publish_post($post_id) {
        $post->post_status = 'publish';
        wp_transition_post_status('publish', $old_status, $post);
 
        $post->post_status = 'publish';
        wp_transition_post_status('publish', $old_status, $post);
 
-       // Update counts for the post's terms.
-       foreach ( (array) get_object_taxonomies('post') as $taxonomy ) {
-               $tt_ids = wp_get_object_terms($post_id, $taxonomy, array('fields' => 'tt_ids'));
-               wp_update_term_count($tt_ids, $taxonomy);
-       }
-
        do_action('edit_post', $post_id, $post);
        do_action('save_post', $post_id, $post);
        do_action('wp_insert_post', $post_id, $post);
        do_action('edit_post', $post_id, $post);
        do_action('save_post', $post_id, $post);
        do_action('wp_insert_post', $post_id, $post);
@@ -2853,7 +2846,7 @@ function wp_unique_post_slug( $slug, $post_ID, $post_status, $post_type, $post_p
                }
        }
 
                }
        }
 
-       return $slug;
+       return apply_filters( 'wp_unique_post_slug', $slug, $post_ID, $post_status, $post_type, $post_parent );
 }
 
 /**
 }
 
 /**
@@ -3159,38 +3152,45 @@ function &get_page(&$page, $output = OBJECT, $filter = 'raw') {
  */
 function get_page_by_path($page_path, $output = OBJECT, $post_type = 'page') {
        global $wpdb;
  */
 function get_page_by_path($page_path, $output = OBJECT, $post_type = 'page') {
        global $wpdb;
-       $null = null;
+
        $page_path = rawurlencode(urldecode($page_path));
        $page_path = str_replace('%2F', '/', $page_path);
        $page_path = str_replace('%20', ' ', $page_path);
        $page_path = rawurlencode(urldecode($page_path));
        $page_path = str_replace('%2F', '/', $page_path);
        $page_path = str_replace('%20', ' ', $page_path);
-       $page_paths = '/' . trim($page_path, '/');
-       $leaf_path  = sanitize_title(basename($page_paths));
-       $page_paths = explode('/', $page_paths);
-       $full_path = '';
-       foreach ( (array) $page_paths as $pathdir )
-               $full_path .= ( $pathdir != '' ? '/' : '' ) . sanitize_title($pathdir);
+       $parts = explode( '/', trim( $page_path, '/' ) );
+       $parts = array_map( 'esc_sql', $parts );
+       $parts = array_map( 'sanitize_title_for_query', $parts );
 
 
-       $pages = $wpdb->get_results( $wpdb->prepare( "SELECT ID, post_name, post_parent FROM $wpdb->posts WHERE post_name = %s AND (post_type = %s OR post_type = 'attachment')", $leaf_path, $post_type ));
+       $in_string = "'". implode( "','", $parts ) . "'";
+       $post_type_sql = $post_type;
+       $wpdb->escape_by_ref( $post_type_sql );
+       $pages = $wpdb->get_results( "SELECT ID, post_name, post_parent FROM $wpdb->posts WHERE post_name IN ($in_string) AND (post_type = '$post_type_sql' OR post_type = 'attachment')", OBJECT_K );
 
 
-       if ( empty($pages) )
-               return $null;
+       $revparts = array_reverse( $parts );
 
 
-       foreach ( $pages as $page ) {
-               $path = '/' . $leaf_path;
-               $curpage = $page;
-               while ( $curpage->post_parent != 0 ) {
-                       $post_parent = $curpage->post_parent;
-                       $curpage = wp_cache_get( $post_parent, 'posts' );
-                       if ( false === $curpage )
-                               $curpage = $wpdb->get_row( $wpdb->prepare( "SELECT ID, post_name, post_parent FROM $wpdb->posts WHERE ID = %d and post_type = %s", $post_parent, $post_type ) );
-                       $path = '/' . $curpage->post_name . $path;
-               }
+       $foundid = 0;
+       foreach ( (array) $pages as $page ) {
+               if ( $page->post_name == $revparts[0] ) {
+                       $count = 0;
+                       $p = $page;
+                       while ( $p->post_parent != 0 && isset( $pages[ $p->post_parent ] ) ) {
+                               $count++;
+                               $parent = $pages[ $p->post_parent ];
+                               if ( ! isset( $revparts[ $count ] ) || $parent->post_name != $revparts[ $count ] )
+                                       break;
+                               $p = $parent;
+                       }
 
 
-               if ( $path == $full_path )
-                       return get_page($page->ID, $output, $post_type);
+                       if ( $p->post_parent == 0 && $count+1 == count( $revparts ) && $p->post_name == $revparts[ $count ] ) {
+                               $foundid = $page->ID;
+                               break;
+                       }
+               }
        }
 
        }
 
-       return $null;
+       if ( $foundid )
+               return get_page( $foundid, $output );
+
+       return null;
 }
 
 /**
 }
 
 /**
@@ -3270,7 +3270,7 @@ function &get_page_hierarchy( &$pages, $page_id = 0 ) {
 
 /**
  * function to traverse and return all the nested children post names of a root page.
 
 /**
  * function to traverse and return all the nested children post names of a root page.
- * $children contains parent-chilren relations
+ * $children contains parent-children relations
  *
  * @since 2.9.0
  */
  *
  * @since 2.9.0
  */
@@ -3408,7 +3408,7 @@ function &get_pages($args = '') {
                        foreach ( $post_authors as $post_author ) {
                                //Do we have an author id or an author login?
                                if ( 0 == intval($post_author) ) {
                        foreach ( $post_authors as $post_author ) {
                                //Do we have an author id or an author login?
                                if ( 0 == intval($post_author) ) {
-                                       $post_author = get_userdatabylogin($post_author);
+                                       $post_author = get_user_by('login', $post_author);
                                        if ( empty($post_author) )
                                                continue;
                                        if ( empty($post_author->ID) )
                                        if ( empty($post_author) )
                                                continue;
                                        if ( empty($post_author->ID) )
@@ -3452,7 +3452,7 @@ function &get_pages($args = '') {
        }
 
        $orderby_array = array();
        }
 
        $orderby_array = array();
-       $allowed_keys = array('author', 'post_author', 'date', 'post_date', 'title', 'post_title', 'modified',
+       $allowed_keys = array('author', 'post_author', 'date', 'post_date', 'title', 'post_title', 'name', 'post_name', 'modified',
                                                  'post_modified', 'modified_gmt', 'post_modified_gmt', 'menu_order', 'parent', 'post_parent',
                                                  'ID', 'rand', 'comment_count');
        foreach ( explode( ',', $sort_column ) as $orderby ) {
                                                  'post_modified', 'modified_gmt', 'post_modified_gmt', 'menu_order', 'parent', 'post_parent',
                                                  'ID', 'rand', 'comment_count');
        foreach ( explode( ',', $sort_column ) as $orderby ) {
@@ -3727,9 +3727,6 @@ function wp_insert_attachment($object, $file = false, $parent = 0) {
 
        clean_post_cache($post_ID);
 
 
        clean_post_cache($post_ID);
 
-       if ( isset($post_parent) && $post_parent < 0 )
-               add_post_meta($post_ID, '_wp_attachment_temp_parent', $post_parent, true);
-
        if ( ! empty( $context ) )
                add_post_meta( $post_ID, '_wp_attachment_context', $context, true );
 
        if ( ! empty( $context ) )
                add_post_meta( $post_ID, '_wp_attachment_context', $context, true );
 
@@ -3900,6 +3897,9 @@ function wp_get_attachment_url( $post_id = 0 ) {
        if ( !$post =& get_post( $post_id ) )
                return false;
 
        if ( !$post =& get_post( $post_id ) )
                return false;
 
+       if ( 'attachment' != $post->post_type )
+               return false;
+
        $url = '';
        if ( $file = get_post_meta( $post->ID, '_wp_attached_file', true) ) { //Get attached file
                if ( ($uploads = wp_upload_dir()) && false === $uploads['error'] ) { //Get upload directory
        $url = '';
        if ( $file = get_post_meta( $post->ID, '_wp_attached_file', true) ) { //Get attached file
                if ( ($uploads = wp_upload_dir()) && false === $uploads['error'] ) { //Get upload directory
@@ -3912,12 +3912,12 @@ function wp_get_attachment_url( $post_id = 0 ) {
                }
        }
 
                }
        }
 
-       if ( empty($url) ) //If any of the above options failed, Fallback on the GUID as used pre-2.7, not recomended to rely upon this.
+       if ( empty($url) ) //If any of the above options failed, Fallback on the GUID as used pre-2.7, not recommended to rely upon this.
                $url = get_the_guid( $post->ID );
 
        $url = apply_filters( 'wp_get_attachment_url', $url, $post->ID );
 
                $url = get_the_guid( $post->ID );
 
        $url = apply_filters( 'wp_get_attachment_url', $url, $post->ID );
 
-       if ( 'attachment' != $post->post_type || empty( $url ) )
+       if ( empty( $url ) )
                return false;
 
        return $url;
                return false;
 
        return $url;
@@ -4037,7 +4037,8 @@ function wp_mime_type_icon( $mime = 0 ) {
                        $dirs = apply_filters( 'icon_dirs', array($icon_dir => $icon_dir_uri) );
                        $icon_files = array();
                        while ( $dirs ) {
                        $dirs = apply_filters( 'icon_dirs', array($icon_dir => $icon_dir_uri) );
                        $icon_files = array();
                        while ( $dirs ) {
-                               $dir = array_shift($keys = array_keys($dirs));
+                               $keys = array_keys( $dirs );
+                               $dir = array_shift( $keys );
                                $uri = array_shift($dirs);
                                if ( $dh = opendir($dir) ) {
                                        while ( false !== $file = readdir($dh) ) {
                                $uri = array_shift($dirs);
                                if ( $dh = opendir($dir) ) {
                                        while ( false !== $file = readdir($dh) ) {
@@ -4159,7 +4160,7 @@ function get_posts_by_author_sql( $post_type, $full = true, $post_author = null
        // Private posts
        $post_type_obj = get_post_type_object( $post_type );
        if ( ! $post_type_obj )
        // Private posts
        $post_type_obj = get_post_type_object( $post_type );
        if ( ! $post_type_obj )
-               return ' 1 = 0 ';
+               return $full ? 'WHERE 1 = 0' : ' 1 = 0 ';
 
        // This hook is deprecated. Why you'd want to use it, I dunno.
        if ( ! $cap = apply_filters( 'pub_priv_sql_capability', '' ) )
 
        // This hook is deprecated. Why you'd want to use it, I dunno.
        if ( ! $cap = apply_filters( 'pub_priv_sql_capability', '' ) )
@@ -4467,7 +4468,7 @@ function update_postmeta_cache($post_ids) {
 /**
  * Will clean the attachment in the cache.
  *
 /**
  * Will clean the attachment in the cache.
  *
- * Cleaning means delete from the cache. Optionaly will clean the term
+ * Cleaning means delete from the cache. Optionally will clean the term
  * object cache associated with the attachment ID.
  *
  * This function will not run if $_wp_suspend_cache_invalidation is not empty. See
  * object cache associated with the attachment ID.
  *
  * This function will not run if $_wp_suspend_cache_invalidation is not empty. See
@@ -4665,7 +4666,7 @@ function _get_post_ancestors(&$_post) {
  * Determines which fields of posts are to be saved in revisions.
  *
  * Does two things. If passed a post *array*, it will return a post array ready
  * Determines which fields of posts are to be saved in revisions.
  *
  * Does two things. If passed a post *array*, it will return a post array ready
- * to be insterted into the posts table as a post revision. Otherwise, returns
+ * to be inserted into the posts table as a post revision. Otherwise, returns
  * an array whose keys are the post fields to be saved for post revisions.
  *
  * @package WordPress
  * an array whose keys are the post fields to be saved for post revisions.
  *
  * @package WordPress
@@ -5189,12 +5190,27 @@ function set_post_thumbnail( $post, $thumbnail_id ) {
        return false;
 }
 
        return false;
 }
 
+/**
+ * Removes a post thumbnail.
+ *
+ * @since 3.3.0
+ *
+ * @param int|object $post Post ID or object where thumbnail should be removed from.
+ * @return bool True on success, false on failure.
+ */
+function delete_post_thumbnail( $post ) {
+       $post = get_post( $post );
+       if ( $post )
+               return delete_post_meta( $post->ID, '_thumbnail_id' );
+       return false;
+}
+
 /**
  * Returns a link to a post format index.
  *
  * @since 3.1.0
  *
 /**
  * Returns a link to a post format index.
  *
  * @since 3.1.0
  *
- * @param $format string Post format
+ * @param string $format Post format
  * @return string Link
  */
 function get_post_format_link( $format ) {
  * @return string Link
  */
 function get_post_format_link( $format ) {
@@ -5217,7 +5233,8 @@ function _post_format_request( $qvs ) {
        if ( isset( $slugs[ $qvs['post_format'] ] ) )
                $qvs['post_format'] = 'post-format-' . $slugs[ $qvs['post_format'] ];
        $tax = get_taxonomy( 'post_format' );
        if ( isset( $slugs[ $qvs['post_format'] ] ) )
                $qvs['post_format'] = 'post-format-' . $slugs[ $qvs['post_format'] ];
        $tax = get_taxonomy( 'post_format' );
-       $qvs['post_type'] = $tax->object_type;
+       if ( ! is_admin() )
+               $qvs['post_type'] = $tax->object_type;
        return $qvs;
 }
 add_filter( 'request', '_post_format_request' );
        return $qvs;
 }
 add_filter( 'request', '_post_format_request' );
@@ -5295,4 +5312,20 @@ function _post_format_wp_get_object_terms( $terms ) {
 }
 add_filter( 'wp_get_object_terms', '_post_format_wp_get_object_terms' );
 
 }
 add_filter( 'wp_get_object_terms', '_post_format_wp_get_object_terms' );
 
+/**
+ * Update the custom taxonomies' term counts when a post's status is changed. For example, default posts term counts (for custom taxonomies) don't include private / draft posts.
+ *
+ * @access private
+ * @param string $new_status
+ * @param string $old_status
+ * @param object $post
+ * @since 3.3.0
+ */
+function _update_term_count_on_transition_post_status( $new_status, $old_status, $post ) {
+       // Update counts for the post's terms.
+       foreach ( (array) get_object_taxonomies( $post->post_type ) as $taxonomy ) {
+               $tt_ids = wp_get_object_terms( $post->ID, $taxonomy, array( 'fields' => 'tt_ids' ) );
+               wp_update_term_count( $tt_ids, $taxonomy );
+       }
+}
 ?>
 ?>
index d70348cd83cbb77b110802c6a8eaa67792cfec97..0fcbf94cb51e6b5819d86816581a1da59d5f873e 100644 (file)
@@ -89,7 +89,7 @@ function set_query_var($var, $value) {
  */
 function &query_posts($query) {
        unset($GLOBALS['wp_query']);
  */
 function &query_posts($query) {
        unset($GLOBALS['wp_query']);
-       $GLOBALS['wp_query'] =& new WP_Query();
+       $GLOBALS['wp_query'] = new WP_Query();
        return $GLOBALS['wp_query']->query($query);
 }
 
        return $GLOBALS['wp_query']->query($query);
 }
 
@@ -105,7 +105,7 @@ function &query_posts($query) {
  */
 function wp_reset_query() {
        unset($GLOBALS['wp_query']);
  */
 function wp_reset_query() {
        unset($GLOBALS['wp_query']);
-       $GLOBALS['wp_query'] =& $GLOBALS['wp_the_query'];
+       $GLOBALS['wp_query'] = $GLOBALS['wp_the_query'];
        wp_reset_postdata();
 }
 
        wp_reset_postdata();
 }
 
@@ -715,6 +715,18 @@ function is_404() {
        return $wp_query->is_404();
 }
 
        return $wp_query->is_404();
 }
 
+/**
+ * Is the query the main query?
+ *
+ * @since 3.3.0
+ *
+ * @return bool
+ */
+function is_main_query() {
+       global $wp_query;
+       return $wp_query->is_main_query();
+}
+
 /*
  * The Loop.  Post loop control.
  */
 /*
  * The Loop.  Post loop control.
  */
@@ -1826,7 +1838,7 @@ class WP_Query {
                }
 
                if ( !empty($q['tag_slug__in']) ) {
                }
 
                if ( !empty($q['tag_slug__in']) ) {
-                       $q['tag_slug__in'] = array_map('sanitize_title', array_unique( (array) $q['tag_slug__in'] ) );
+                       $q['tag_slug__in'] = array_map('sanitize_title_for_query', array_unique( (array) $q['tag_slug__in'] ) );
                        $tax_query[] = array(
                                'taxonomy' => 'post_tag',
                                'terms' => $q['tag_slug__in'],
                        $tax_query[] = array(
                                'taxonomy' => 'post_tag',
                                'terms' => $q['tag_slug__in'],
@@ -1835,7 +1847,7 @@ class WP_Query {
                }
 
                if ( !empty($q['tag_slug__and']) ) {
                }
 
                if ( !empty($q['tag_slug__and']) ) {
-                       $q['tag_slug__and'] = array_map('sanitize_title', array_unique( (array) $q['tag_slug__and'] ) );
+                       $q['tag_slug__and'] = array_map('sanitize_title_for_query', array_unique( (array) $q['tag_slug__and'] ) );
                        $tax_query[] = array(
                                'taxonomy' => 'post_tag',
                                'terms' => $q['tag_slug__and'],
                        $tax_query[] = array(
                                'taxonomy' => 'post_tag',
                                'terms' => $q['tag_slug__and'],
@@ -2137,7 +2149,7 @@ class WP_Query {
                if ( intval($q['comments_popup']) )
                        $q['p'] = absint($q['comments_popup']);
 
                if ( intval($q['comments_popup']) )
                        $q['p'] = absint($q['comments_popup']);
 
-               // If an attachment is requested by number, let it supercede any post number.
+               // If an attachment is requested by number, let it supersede any post number.
                if ( $q['attachment_id'] )
                        $q['p'] = absint($q['attachment_id']);
 
                if ( $q['attachment_id'] )
                        $q['p'] = absint($q['attachment_id']);
 
@@ -2288,7 +2300,7 @@ class WP_Query {
                                if ( $q['author_name'][ count($q['author_name'])-1 ] ) {
                                        $q['author_name'] = $q['author_name'][count($q['author_name'])-1]; // no trailing slash
                                } else {
                                if ( $q['author_name'][ count($q['author_name'])-1 ] ) {
                                        $q['author_name'] = $q['author_name'][count($q['author_name'])-1]; // no trailing slash
                                } else {
-                                       $q['author_name'] = $q['author_name'][count($q['author_name'])-2]; // there was a trailling slash
+                                       $q['author_name'] = $q['author_name'][count($q['author_name'])-2]; // there was a trailing slash
                                }
                        }
                        $q['author_name'] = sanitize_title_for_query( $q['author_name'] );
                                }
                        }
                        $q['author_name'] = sanitize_title_for_query( $q['author_name'] );
@@ -2317,7 +2329,7 @@ class WP_Query {
                        $orderby = '';
                } else {
                        // Used to filter values
                        $orderby = '';
                } else {
                        // Used to filter values
-                       $allowed_keys = array('author', 'date', 'title', 'modified', 'menu_order', 'parent', 'ID', 'rand', 'comment_count');
+                       $allowed_keys = array('name', 'author', 'date', 'title', 'modified', 'menu_order', 'parent', 'ID', 'rand', 'comment_count');
                        if ( !empty($q['meta_key']) ) {
                                $allowed_keys[] = $q['meta_key'];
                                $allowed_keys[] = 'meta_value';
                        if ( !empty($q['meta_key']) ) {
                                $allowed_keys[] = $q['meta_key'];
                                $allowed_keys[] = 'meta_value';
@@ -2373,13 +2385,10 @@ class WP_Query {
                                $post_type_cap = $post_type;
                }
 
                                $post_type_cap = $post_type;
                }
 
-               $exclude_post_types = '';
-               $in_search_post_types = get_post_types( array('exclude_from_search' => false) );
-               if ( ! empty( $in_search_post_types ) )
-                       $exclude_post_types .= $wpdb->prepare(" AND $wpdb->posts.post_type IN ('" . join("', '", $in_search_post_types ) . "')");
-
                if ( 'any' == $post_type ) {
                if ( 'any' == $post_type ) {
-                       $where .= $exclude_post_types;
+                       $in_search_post_types = get_post_types( array('exclude_from_search' => false) );
+                       if ( ! empty( $in_search_post_types ) )
+                               $where .= $wpdb->prepare(" AND $wpdb->posts.post_type IN ('" . join("', '", $in_search_post_types ) . "')");
                } elseif ( !empty( $post_type ) && is_array( $post_type ) ) {
                        $where .= " AND $wpdb->posts.post_type IN ('" . join("', '", $post_type) . "')";
                } elseif ( ! empty( $post_type ) ) {
                } elseif ( !empty( $post_type ) && is_array( $post_type ) ) {
                        $where .= " AND $wpdb->posts.post_type IN ('" . join("', '", $post_type) . "')";
                } elseif ( ! empty( $post_type ) ) {
@@ -2733,9 +2742,9 @@ class WP_Query {
 
                $this->post_count = count($this->posts);
 
 
                $this->post_count = count($this->posts);
 
-               // Sanitize before caching so it'll only get done once
-               for ( $i = 0; $i < $this->post_count; $i++ ) {
-                       $this->posts[$i] = sanitize_post($this->posts[$i], 'raw');
+               // Always sanitize
+               foreach ( $this->posts as $i => $post ) {
+                       $this->posts[$i] = sanitize_post( $post, 'raw' );
                }
 
                if ( $q['cache_results'] )
                }
 
                if ( $q['cache_results'] )
@@ -3467,6 +3476,18 @@ class WP_Query {
        function is_404() {
                return (bool) $this->is_404;
        }
        function is_404() {
                return (bool) $this->is_404;
        }
+
+       /**
+        * Is the query the main query?
+        *
+        * @since 3.3.0
+        *
+        * @return bool
+        */
+       function is_main_query() {
+               global $wp_the_query;
+               return $wp_the_query === $this;
+       }
 }
 
 /**
 }
 
 /**
index 46c1b3219f4b43e9dde387809be1b38695f68248..d376df40d15a87da9b98e2abb0d56a2c2ccee40c 100644 (file)
@@ -306,12 +306,20 @@ function url_to_postid($url) {
        // Look for matches.
        $request_match = $request;
        foreach ( (array)$rewrite as $match => $query) {
        // Look for matches.
        $request_match = $request;
        foreach ( (array)$rewrite as $match => $query) {
+
                // If the requesting file is the anchor of the match, prepend it
                // to the path info.
                if ( !empty($url) && ($url != $request) && (strpos($match, $url) === 0) )
                        $request_match = $url . '/' . $request;
 
                if ( preg_match("!^$match!", $request_match, $matches) ) {
                // If the requesting file is the anchor of the match, prepend it
                // to the path info.
                if ( !empty($url) && ($url != $request) && (strpos($match, $url) === 0) )
                        $request_match = $url . '/' . $request;
 
                if ( preg_match("!^$match!", $request_match, $matches) ) {
+
+                       if ( $wp_rewrite->use_verbose_page_rules && preg_match( '/pagename=\$matches\[([0-9]+)\]/', $query, $varmatch ) ) {
+                               // this is a verbose page match, lets check to be sure about it
+                               if ( ! get_page_by_path( $matches[ $varmatch[1] ] ) )
+                                       continue;
+                       }
+
                        // Got a match.
                        // Trim the query of everything up to the '?'.
                        $query = preg_replace("!^.+\?!", '', $query);
                        // Got a match.
                        // Trim the query of everything up to the '?'.
                        $query = preg_replace("!^.+\?!", '', $query);
@@ -813,29 +821,9 @@ class WP_Rewrite {
                $rewrite_rules = array();
                $page_structure = $this->get_page_permastruct();
 
                $rewrite_rules = array();
                $page_structure = $this->get_page_permastruct();
 
-               if ( ! $this->use_verbose_page_rules ) {
-                       $this->add_rewrite_tag('%pagename%', "(.+?)", 'pagename=');
-                       $rewrite_rules = array_merge($rewrite_rules, $this->generate_rewrite_rules($page_structure, EP_PAGES));
-                       return $rewrite_rules;
-               }
-
-               $page_uris = $this->page_uri_index();
-               $uris = $page_uris[0];
-               $attachment_uris = $page_uris[1];
-
-               if ( is_array( $attachment_uris ) ) {
-                       foreach ( $attachment_uris as $uri => $pagename ) {
-                               $this->add_rewrite_tag('%pagename%', "($uri)", 'attachment=');
-                               $rewrite_rules = array_merge($rewrite_rules, $this->generate_rewrite_rules($page_structure, EP_PAGES));
-                       }
-               }
-               if ( is_array( $uris ) ) {
-                       foreach ( $uris as $uri => $pagename ) {
-                               $this->add_rewrite_tag('%pagename%', "($uri)", 'pagename=');
-                               $rewrite_rules = array_merge($rewrite_rules, $this->generate_rewrite_rules($page_structure, EP_PAGES));
-                       }
-               }
-
+               // the extra .? at the beginning prevents clashes with other regular expressions in the rules array
+               $this->add_rewrite_tag('%pagename%', "(.?.+?)", 'pagename=');
+               $rewrite_rules = array_merge($rewrite_rules, $this->generate_rewrite_rules($page_structure, EP_PAGES));
                return $rewrite_rules;
        }
 
                return $rewrite_rules;
        }
 
@@ -1276,7 +1264,7 @@ class WP_Rewrite {
                        $num_toks = preg_match_all('/%.+?%/', $struct, $toks);
 
                        //get the 'tagname=$matches[i]'
                        $num_toks = preg_match_all('/%.+?%/', $struct, $toks);
 
                        //get the 'tagname=$matches[i]'
-                       $query = ( isset($queries) && is_array($queries) ) ? $queries[$num_toks - 1] : '';
+                       $query = ( isset($queries) && is_array($queries) && !empty($num_toks) ) ? $queries[$num_toks - 1] : '';
 
                        //set up $ep_mask_specific which is used to match more specific URL types
                        switch ( $dirs[$j] ) {
 
                        //set up $ep_mask_specific which is used to match more specific URL types
                        switch ( $dirs[$j] ) {
@@ -1498,13 +1486,8 @@ class WP_Rewrite {
                $home_path = parse_url( home_url() );
                $robots_rewrite = ( empty( $home_path['path'] ) || '/' == $home_path['path'] ) ? array( 'robots\.txt$' => $this->index . '?robots=1' ) : array();
 
                $home_path = parse_url( home_url() );
                $robots_rewrite = ( empty( $home_path['path'] ) || '/' == $home_path['path'] ) ? array( 'robots\.txt$' => $this->index . '?robots=1' ) : array();
 
-               // Default Feed rules - These are require to allow for the direct access files to work with permalink structure starting with %category%
-               $default_feeds = array( '.*wp-atom.php$'        =>      $this->index . '?feed=atom',
-                                                               '.*wp-rdf.php$'         =>      $this->index . '?feed=rdf',
-                                                               '.*wp-rss.php$'         =>      $this->index . '?feed=rss',
-                                                               '.*wp-rss2.php$'        =>      $this->index . '?feed=rss2',
-                                                               '.*wp-feed.php$'        =>      $this->index . '?feed=feed',
-                                                               '.*wp-commentsrss2.php$'        =>      $this->index . '?feed=rss2&withcomments=1');
+               // Old feed files
+               $old_feed_files = array( '.*wp-(atom|rdf|rss|rss2|feed|commentsrss2)\.php$' => $this->index . '?feed=old' );
 
                // Registration rules
                $registration_pages = array();
 
                // Registration rules
                $registration_pages = array();
@@ -1558,9 +1541,9 @@ class WP_Rewrite {
 
                // Put them together.
                if ( $this->use_verbose_page_rules )
 
                // Put them together.
                if ( $this->use_verbose_page_rules )
-                       $this->rules = array_merge($this->extra_rules_top, $robots_rewrite, $default_feeds, $registration_pages, $page_rewrite, $root_rewrite, $comments_rewrite, $search_rewrite,  $author_rewrite, $date_rewrite, $post_rewrite, $this->extra_rules);
+                       $this->rules = array_merge($this->extra_rules_top, $robots_rewrite, $old_feed_files, $registration_pages, $root_rewrite, $comments_rewrite, $search_rewrite,  $author_rewrite, $date_rewrite, $page_rewrite, $post_rewrite, $this->extra_rules);
                else
                else
-                       $this->rules = array_merge($this->extra_rules_top, $robots_rewrite, $default_feeds, $registration_pages, $root_rewrite, $comments_rewrite, $search_rewrite,  $author_rewrite, $date_rewrite, $post_rewrite, $page_rewrite, $this->extra_rules);
+                       $this->rules = array_merge($this->extra_rules_top, $robots_rewrite, $old_feed_files, $registration_pages, $root_rewrite, $comments_rewrite, $search_rewrite,  $author_rewrite, $date_rewrite, $post_rewrite, $page_rewrite, $this->extra_rules);
 
                do_action_ref_array('generate_rewrite_rules', array(&$this));
                $this->rules = apply_filters('rewrite_rules_array', $this->rules);
 
                do_action_ref_array('generate_rewrite_rules', array(&$this));
                $this->rules = apply_filters('rewrite_rules_array', $this->rules);
@@ -1756,7 +1739,7 @@ class WP_Rewrite {
                                </rule>
                                <rule name="wordpress - Rule 5" stopProcessing="true">
                                        <match url="^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*)" ignoreCase="false" />
                                </rule>
                                <rule name="wordpress - Rule 5" stopProcessing="true">
                                        <match url="^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*)" ignoreCase="false" />
-                                       <action type="Rewrite" url="{R:2}" />
+                                       <action type="Rewrite" url="{R:1}" />
                                </rule>
                                <rule name="wordpress - Rule 6" stopProcessing="true">
                                        <match url="^([_0-9a-zA-Z-]+/)?(.*\.php)$" ignoreCase="false" />
                                </rule>
                                <rule name="wordpress - Rule 6" stopProcessing="true">
                                        <match url="^([_0-9a-zA-Z-]+/)?(.*\.php)$" ignoreCase="false" />
index 1111237674aa4a4ae34c0da332256d0d5fbbe81c..47a00fb1f4d14380143ceeae23bffd20e4290dfb 100644 (file)
@@ -37,10 +37,11 @@ require( ABSPATH . WPINC . '/class.wp-styles.php' );
 require( ABSPATH . WPINC . '/functions.wp-styles.php' );
 
 /**
 require( ABSPATH . WPINC . '/functions.wp-styles.php' );
 
 /**
- * Set up WordPress scripts to load by default for Administration Screen.
+ * Register all WordPress scripts.
  *
  *
- * Localizes a few of the scripts.
- * $scripts->add_data( 'script-handle', 'group', 1 ); queues the script for the footer
+ * Localizes some of them.
+ * args order: $scripts->add( 'handle', 'url', 'dependencies', 'query-string', 1 );
+ * when last arg === 1 queues the script for the footer
  *
  * @since 2.6.0
  *
  *
  * @since 2.6.0
  *
@@ -58,26 +59,17 @@ function wp_default_scripts( &$scripts ) {
 
        $suffix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '.dev' : '';
 
 
        $suffix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '.dev' : '';
 
-       // Always ensure that we have the convertEntities function
-       $scripts->add( 'l10n', "/wp-includes/js/l10n$suffix.js", false, '20101110' );
-       $scripts->enqueue( 'l10n' );
-
        $scripts->add( 'utils', "/wp-admin/js/utils$suffix.js", false, '20101110' );
 
        $scripts->add( 'utils', "/wp-admin/js/utils$suffix.js", false, '20101110' );
 
-       $scripts->add( 'common', "/wp-admin/js/common$suffix.js", array('jquery', 'hoverIntent', 'utils'), '20110610' );
-       $scripts->add_data( 'common', 'group', 1 );
+       $scripts->add( 'common', "/wp-admin/js/common$suffix.js", array('jquery', 'hoverIntent', 'utils'), '20111130', 1 );
        $scripts->localize( 'common', 'commonL10n', array(
        $scripts->localize( 'common', 'commonL10n', array(
-               'warnDelete' => __("You are about to permanently delete the selected items.\n  'Cancel' to stop, 'OK' to delete."),
-               'l10n_print_after' => 'try{convertEntities(commonL10n);}catch(e){};'
+               'warnDelete' => __("You are about to permanently delete the selected items.\n  'Cancel' to stop, 'OK' to delete.")
        ) );
 
        ) );
 
-       $scripts->add( 'sack', "/wp-includes/js/tw-sack$suffix.js", false, '1.6.1' );
-       $scripts->add_data( 'sack', 'group', 1 );
+       $scripts->add( 'sack', "/wp-includes/js/tw-sack$suffix.js", false, '1.6.1', 1 );
 
 
-       $scripts->add( 'quicktags', "/wp-includes/js/quicktags$suffix.js", false, '20110502' );
-       $scripts->add_data( 'quicktags', 'group', 1 );
+       $scripts->add( 'quicktags', "/wp-includes/js/quicktags$suffix.js", false, '20111114', 1 );
        $scripts->localize( 'quicktags', 'quicktagsL10n', array(
        $scripts->localize( 'quicktags', 'quicktagsL10n', array(
-               'quickLinks' => __('(Quick Links)'),
                'wordLookup' => __('Enter a word to look up:'),
                'dictionaryLookup' => esc_attr(__('Dictionary lookup')),
                'lookup' => esc_attr(__('lookup')),
                'wordLookup' => __('Enter a word to look up:'),
                'dictionaryLookup' => esc_attr(__('Dictionary lookup')),
                'lookup' => esc_attr(__('lookup')),
@@ -87,33 +79,31 @@ function wp_default_scripts( &$scripts ) {
                'enterImageURL' => __('Enter the URL of the image'),
                'enterImageDescription' => __('Enter a description of the image'),
                'fullscreen' => __('fullscreen'),
                'enterImageURL' => __('Enter the URL of the image'),
                'enterImageDescription' => __('Enter a description of the image'),
                'fullscreen' => __('fullscreen'),
-               'toggleFullscreen' => esc_attr( __('Toggle fullscreen mode') ),
-               'l10n_print_after' => 'try{convertEntities(quicktagsL10n);}catch(e){};'
+               'toggleFullscreen' => esc_attr( __('Toggle fullscreen mode') )
        ) );
 
        $scripts->add( 'colorpicker', "/wp-includes/js/colorpicker$suffix.js", array('prototype'), '3517m' );
 
        ) );
 
        $scripts->add( 'colorpicker', "/wp-includes/js/colorpicker$suffix.js", array('prototype'), '3517m' );
 
-       $scripts->add( 'editor', "/wp-admin/js/editor$suffix.js", array('utils','jquery'), '20110411' );
-       $scripts->add_data( 'editor', 'group', 1 );
+       $scripts->add( 'editor', "/wp-admin/js/editor$suffix.js", array('utils','jquery'), '20111117', 1 );
 
 
-       $scripts->add( 'wp-fullscreen', "/wp-admin/js/wp-fullscreen$suffix.js", array('jquery'), '20110704' );
-       $scripts->add_data( 'wp-fullscreen', 'group', 1 );
+       $scripts->add( 'wp-fullscreen', "/wp-admin/js/wp-fullscreen$suffix.js", array('jquery'), '20111116', 1 );
 
        $scripts->add( 'prototype', '/wp-includes/js/prototype.js', false, '1.6.1');
 
 
        $scripts->add( 'prototype', '/wp-includes/js/prototype.js', false, '1.6.1');
 
-       $scripts->add( 'wp-ajax-response', "/wp-includes/js/wp-ajax-response$suffix.js", array('jquery'), '20091119' );
-       $scripts->add_data( 'wp-ajax-response', 'group', 1 );
+       $scripts->add( 'wp-ajax-response', "/wp-includes/js/wp-ajax-response$suffix.js", array('jquery'), '20091119', 1 );
        $scripts->localize( 'wp-ajax-response', 'wpAjax', array(
                'noPerm' => __('You do not have permission to do that.'),
        $scripts->localize( 'wp-ajax-response', 'wpAjax', array(
                'noPerm' => __('You do not have permission to do that.'),
-               'broken' => __('An unidentified error has occurred.'),
-               'l10n_print_after' => 'try{convertEntities(wpAjax);}catch(e){};'
+               'broken' => __('An unidentified error has occurred.')
+       ) );
+
+       $scripts->add( 'wp-pointer', "/wp-includes/js/wp-pointer$suffix.js", array( 'jquery-ui-widget', 'jquery-ui-position' ), '20111129a', 1 );
+       $scripts->localize( 'wp-pointer', 'wpPointerL10n', array(
+               'dismiss' => __('Dismiss'),
        ) );
 
        ) );
 
-       $scripts->add( 'autosave', "/wp-includes/js/autosave$suffix.js", array('schedule', 'wp-ajax-response'), '20110524' );
-       $scripts->add_data( 'autosave', 'group', 1 );
+       $scripts->add( 'autosave', "/wp-includes/js/autosave$suffix.js", array('schedule', 'wp-ajax-response'), '20111129', 1 );
 
 
-       $scripts->add( 'wp-lists', "/wp-includes/js/wp-lists$suffix.js", array('wp-ajax-response'), '20110521' );
-       $scripts->add_data( 'wp-lists', 'group', 1 );
+       $scripts->add( 'wp-lists', "/wp-includes/js/wp-lists$suffix.js", array('wp-ajax-response'), '20110521', 1 );
 
        $scripts->add( 'scriptaculous-root', '/wp-includes/js/scriptaculous/wp-scriptaculous.js', array('prototype'), '1.8.3');
        $scripts->add( 'scriptaculous-builder', '/wp-includes/js/scriptaculous/builder.js', array('scriptaculous-root'), '1.8.3');
 
        $scripts->add( 'scriptaculous-root', '/wp-includes/js/scriptaculous/wp-scriptaculous.js', array('prototype'), '1.8.3');
        $scripts->add( 'scriptaculous-builder', '/wp-includes/js/scriptaculous/builder.js', array('scriptaculous-root'), '1.8.3');
@@ -127,71 +117,55 @@ function wp_default_scripts( &$scripts ) {
        // not used in core, replaced by Jcrop.js
        $scripts->add( 'cropper', '/wp-includes/js/crop/cropper.js', array('scriptaculous-dragdrop'), '20070118');
 
        // not used in core, replaced by Jcrop.js
        $scripts->add( 'cropper', '/wp-includes/js/crop/cropper.js', array('scriptaculous-dragdrop'), '20070118');
 
-       $scripts->add( 'jquery', '/wp-includes/js/jquery/jquery.js', false, '1.6.1');
-
-       $scripts->add( 'jquery-ui-core', '/wp-includes/js/jquery/ui.core.js', array('jquery'), '1.8.12' );
-       $scripts->add_data( 'jquery-ui-core', 'group', 1 );
-
-       $scripts->add( 'jquery-ui-position', '/wp-includes/js/jquery/ui.position.js', array('jquery-ui-core'), '1.8.12' );
-       $scripts->add_data( 'jquery-ui-position', 'group', 1 );
-
-       $scripts->add( 'jquery-ui-widget', '/wp-includes/js/jquery/ui.widget.js', array('jquery-ui-core'), '1.8.12' );
-       $scripts->add_data( 'jquery-ui-widget', 'group', 1 );
-
-       $scripts->add( 'jquery-ui-mouse', '/wp-includes/js/jquery/ui.mouse.js', array('jquery-ui-widget'), '1.8.12' );
-       $scripts->add_data( 'jquery-ui-mouse', 'group', 1 );
-
-       $scripts->add( 'jquery-ui-button', '/wp-includes/js/jquery/ui.button.js', array('jquery-ui-core', 'jquery-ui-widget'), '1.8.12' );
-       $scripts->add_data( 'jquery-ui-button', 'group', 1 );
-
-       $scripts->add( 'jquery-ui-tabs', '/wp-includes/js/jquery/ui.tabs.js', array('jquery-ui-core', 'jquery-ui-widget'), '1.8.12' );
-       $scripts->add_data( 'jquery-ui-tabs', 'group', 1 );
-
-       $scripts->add( 'jquery-ui-sortable', '/wp-includes/js/jquery/ui.sortable.js', array('jquery-ui-core', 'jquery-ui-mouse'), '1.8.12' );
-       $scripts->add_data( 'jquery-ui-sortable', 'group', 1 );
-
-       $scripts->add( 'jquery-ui-draggable', '/wp-includes/js/jquery/ui.draggable.js', array('jquery-ui-core', 'jquery-ui-mouse'), '1.8.12' );
-       $scripts->add_data( 'jquery-ui-draggable', 'group', 1 );
-
-       $scripts->add( 'jquery-ui-droppable', '/wp-includes/js/jquery/ui.droppable.js', array('jquery-ui-core', 'jquery-ui-mouse', 'jquery-ui-draggable'), '1.8.12' );
-       $scripts->add_data( 'jquery-ui-droppable', 'group', 1 );
-
-       $scripts->add( 'jquery-ui-selectable', '/wp-includes/js/jquery/ui.selectable.js', array('jquery-ui-core', 'jquery-ui-mouse'), '1.8.12' );
-       $scripts->add_data( 'jquery-ui-selectable', 'group', 1 );
-
-       $scripts->add( 'jquery-ui-resizable', '/wp-includes/js/jquery/ui.resizable.js', array('jquery-ui-core', 'jquery-ui-mouse'), '1.8.12' );
-       $scripts->add_data( 'jquery-ui-resizable', 'group', 1 );
-
-       $scripts->add( 'jquery-ui-dialog', '/wp-includes/js/jquery/ui.dialog.js', array('jquery-ui-resizable', 'jquery-ui-draggable', 'jquery-ui-button', 'jquery-ui-position'), '1.8.12' );
-       $scripts->add_data( 'jquery-ui-dialog', 'group', 1 );
+       $scripts->add( 'jquery', '/wp-includes/js/jquery/jquery.js', false, '1.7.1' );
+
+       // full jQuery UI
+       $scripts->add( 'jquery-ui-core', '/wp-includes/js/jquery/ui/jquery.ui.core.min.js', array('jquery'), '1.8.16', 1 );
+       $scripts->add( 'jquery-effects-core', '/wp-includes/js/jquery/ui/jquery.effects.core.min.js', array('jquery'), '1.8.16', 1 );
+
+       $scripts->add( 'jquery-effects-blind', '/wp-includes/js/jquery/ui/jquery.effects.blind.min.js', array('jquery-effects-core'), '1.8.16', 1 );
+       $scripts->add( 'jquery-effects-bounce', '/wp-includes/js/jquery/ui/jquery.effects.bounce.min.js', array('jquery-effects-core'), '1.8.16', 1 );
+       $scripts->add( 'jquery-effects-clip', '/wp-includes/js/jquery/ui/jquery.effects.clip.min.js', array('jquery-effects-core'), '1.8.16', 1 );
+       $scripts->add( 'jquery-effects-drop', '/wp-includes/js/jquery/ui/jquery.effects.drop.min.js', array('jquery-effects-core'), '1.8.16', 1 );
+       $scripts->add( 'jquery-effects-explode', '/wp-includes/js/jquery/ui/jquery.effects.explode.min.js', array('jquery-effects-core'), '1.8.16', 1 );
+       $scripts->add( 'jquery-effects-fade', '/wp-includes/js/jquery/ui/jquery.effects.fade.min.js', array('jquery-effects-core'), '1.8.16', 1 );
+       $scripts->add( 'jquery-effects-fold', '/wp-includes/js/jquery/ui/jquery.effects.fold.min.js', array('jquery-effects-core'), '1.8.16', 1 );
+       $scripts->add( 'jquery-effects-highlight', '/wp-includes/js/jquery/ui/jquery.effects.highlight.min.js', array('jquery-effects-core'), '1.8.16', 1 );
+       $scripts->add( 'jquery-effects-pulsate', '/wp-includes/js/jquery/ui/jquery.effects.pulsate.min.js', array('jquery-effects-core'), '1.8.16', 1 );
+       $scripts->add( 'jquery-effects-scale', '/wp-includes/js/jquery/ui/jquery.effects.scale.min.js', array('jquery-effects-core'), '1.8.16', 1 );
+       $scripts->add( 'jquery-effects-shake', '/wp-includes/js/jquery/ui/jquery.effects.shake.min.js', array('jquery-effects-core'), '1.8.16', 1 );
+       $scripts->add( 'jquery-effects-slide', '/wp-includes/js/jquery/ui/jquery.effects.slide.min.js', array('jquery-effects-core'), '1.8.16', 1 );
+       $scripts->add( 'jquery-effects-transfer', '/wp-includes/js/jquery/ui/jquery.effects.transfer.min.js', array('jquery-effects-core'), '1.8.16', 1 );
+
+       $scripts->add( 'jquery-ui-accordion', '/wp-includes/js/jquery/ui/jquery.ui.accordion.min.js', array('jquery-ui-core', 'jquery-ui-widget'), '1.8.16', 1 );
+       $scripts->add( 'jquery-ui-autocomplete', '/wp-includes/js/jquery/ui/jquery.ui.autocomplete.min.js', array('jquery-ui-core', 'jquery-ui-widget', 'jquery-ui-position'), '1.8.16', 1 );
+       $scripts->add( 'jquery-ui-button', '/wp-includes/js/jquery/ui/jquery.ui.button.min.js', array('jquery-ui-core', 'jquery-ui-widget'), '1.8.16', 1 );
+       $scripts->add( 'jquery-ui-datepicker', '/wp-includes/js/jquery/ui/jquery.ui.datepicker.min.js', array('jquery-ui-core'), '1.8.16', 1 );
+       $scripts->add( 'jquery-ui-dialog', '/wp-includes/js/jquery/ui/jquery.ui.dialog.min.js', array('jquery-ui-resizable', 'jquery-ui-draggable', 'jquery-ui-button', 'jquery-ui-position'), '1.8.16', 1 );
+       $scripts->add( 'jquery-ui-draggable', '/wp-includes/js/jquery/ui/jquery.ui.draggable.min.js', array('jquery-ui-core', 'jquery-ui-mouse'), '1.8.16', 1 );
+       $scripts->add( 'jquery-ui-droppable', '/wp-includes/js/jquery/ui/jquery.ui.droppable.min.js', array('jquery-ui-draggable'), '1.8.16', 1 );
+       $scripts->add( 'jquery-ui-mouse', '/wp-includes/js/jquery/ui/jquery.ui.mouse.min.js', array('jquery-ui-widget'), '1.8.16', 1 );
+       $scripts->add( 'jquery-ui-position', '/wp-includes/js/jquery/ui/jquery.ui.position.min.js', array('jquery'), '1.8.16', 1 );
+       $scripts->add( 'jquery-ui-progressbar', '/wp-includes/js/jquery/ui/jquery.ui.progressbar.min.js', array('jquery-ui-widget'), '1.8.16', 1 );
+       $scripts->add( 'jquery-ui-resizable', '/wp-includes/js/jquery/ui/jquery.ui.resizable.min.js', array('jquery-ui-core', 'jquery-ui-mouse'), '1.8.16', 1 );
+       $scripts->add( 'jquery-ui-selectable', '/wp-includes/js/jquery/ui/jquery.ui.selectable.min.js', array('jquery-ui-core', 'jquery-ui-mouse'), '1.8.16', 1 );
+       $scripts->add( 'jquery-ui-slider', '/wp-includes/js/jquery/ui/jquery.ui.slider.min.js', array('jquery-ui-core', 'jquery-ui-mouse'), '1.8.16', 1 );
+       $scripts->add( 'jquery-ui-sortable', '/wp-includes/js/jquery/ui/jquery.ui.sortable.min.js', array('jquery-ui-core', 'jquery-ui-mouse'), '1.8.16', 1 );
+       $scripts->add( 'jquery-ui-tabs', '/wp-includes/js/jquery/ui/jquery.ui.tabs.min.js', array('jquery-ui-core', 'jquery-ui-widget'), '1.8.16', 1 );
+       $scripts->add( 'jquery-ui-widget', '/wp-includes/js/jquery/ui/jquery.ui.widget.min.js', array('jquery'), '1.8.16', 1 );
 
        // deprecated, not used in core, most functionality is included in jQuery 1.3
 
        // deprecated, not used in core, most functionality is included in jQuery 1.3
-       $scripts->add( 'jquery-form', "/wp-includes/js/jquery/jquery.form$suffix.js", array('jquery'), '2.73');
-       $scripts->add_data( 'jquery-form', 'group', 1 );
-
-       $scripts->add( 'jquery-color', "/wp-includes/js/jquery/jquery.color$suffix.js", array('jquery'), '2.0-4561m');
-       $scripts->add_data( 'jquery-color', 'group', 1 );
-
-       $scripts->add( 'suggest', "/wp-includes/js/jquery/suggest$suffix.js", array('jquery'), '1.1-20110113');
-       $scripts->add_data( 'suggest', 'group', 1 );
-
-       $scripts->add( 'schedule', '/wp-includes/js/jquery/jquery.schedule.js', array('jquery'), '20m');
-       $scripts->add_data( 'schedule', 'group', 1 );
-
-       $scripts->add( 'jquery-query', "/wp-includes/js/jquery/jquery.query.js", array('jquery'), '2.1.7' );
-       $scripts->add_data( 'jquery-query', 'group', 1 );
-
-       $scripts->add( 'jquery-serialize-object', "/wp-includes/js/jquery/jquery.serialize-object.js", array('jquery'), '0.2' );
-       $scripts->add_data( 'jquery-serialize-object', 'group', 1 );
-
-       $scripts->add( 'jquery-hotkeys', "/wp-includes/js/jquery/jquery.hotkeys$suffix.js", array('jquery'), '0.0.2m' );
-       $scripts->add_data( 'jquery-hotkeys', 'group', 1 );
+       $scripts->add( 'jquery-form', "/wp-includes/js/jquery/jquery.form$suffix.js", array('jquery'), '2.73', 1 );
 
 
-       $scripts->add( 'jquery-table-hotkeys', "/wp-includes/js/jquery/jquery.table-hotkeys$suffix.js", array('jquery', 'jquery-hotkeys'), '20090102' );
-       $scripts->add_data( 'jquery-table-hotkeys', 'group', 1 );
+       $scripts->add( 'jquery-color', "/wp-includes/js/jquery/jquery.color$suffix.js", array('jquery'), '2.0-4561m', 1 );
+       $scripts->add( 'suggest', "/wp-includes/js/jquery/suggest$suffix.js", array('jquery'), '1.1-20110113', 1 );
+       $scripts->add( 'schedule', '/wp-includes/js/jquery/jquery.schedule.js', array('jquery'), '20m', 1 );
+       $scripts->add( 'jquery-query', "/wp-includes/js/jquery/jquery.query.js", array('jquery'), '2.1.7', 1 );
+       $scripts->add( 'jquery-serialize-object', "/wp-includes/js/jquery/jquery.serialize-object.js", array('jquery'), '0.2', 1 );
+       $scripts->add( 'jquery-hotkeys', "/wp-includes/js/jquery/jquery.hotkeys$suffix.js", array('jquery'), '0.0.2m', 1 );
+       $scripts->add( 'jquery-table-hotkeys', "/wp-includes/js/jquery/jquery.table-hotkeys$suffix.js", array('jquery', 'jquery-hotkeys'), '20090102', 1 );
 
 
-       $scripts->add( 'thickbox', "/wp-includes/js/thickbox/thickbox.js", array('jquery'), '3.1-20110528');
-       $scripts->add_data( 'thickbox', 'group', 1 );
+       $scripts->add( 'thickbox', "/wp-includes/js/thickbox/thickbox.js", array('jquery'), '3.1-20111117', 1 );
        $scripts->localize( 'thickbox', 'thickboxL10n', array(
                        'next' => __('Next &gt;'),
                        'prev' => __('&lt; Prev'),
        $scripts->localize( 'thickbox', 'thickboxL10n', array(
                        'next' => __('Next &gt;'),
                        'prev' => __('&lt; Prev'),
@@ -200,14 +174,58 @@ function wp_default_scripts( &$scripts ) {
                        'close' => __('Close'),
                        'noiframes' => __('This feature requires inline frames. You have iframes disabled or your browser does not support them.'),
                        'loadingAnimation' => includes_url('js/thickbox/loadingAnimation.gif'),
                        'close' => __('Close'),
                        'noiframes' => __('This feature requires inline frames. You have iframes disabled or your browser does not support them.'),
                        'loadingAnimation' => includes_url('js/thickbox/loadingAnimation.gif'),
-                       'closeImage' => includes_url('js/thickbox/tb-close.png'),
-                       'l10n_print_after' => 'try{convertEntities(thickboxL10n);}catch(e){};'
+                       'closeImage' => includes_url('js/thickbox/tb-close.png')
        ) );
 
        $scripts->add( 'jcrop', "/wp-includes/js/jcrop/jquery.Jcrop$suffix.js", array('jquery'), '0.9.8-20110113');
 
        $scripts->add( 'swfobject', "/wp-includes/js/swfobject.js", false, '2.2');
 
        ) );
 
        $scripts->add( 'jcrop', "/wp-includes/js/jcrop/jquery.Jcrop$suffix.js", array('jquery'), '0.9.8-20110113');
 
        $scripts->add( 'swfobject', "/wp-includes/js/swfobject.js", false, '2.2');
 
+       // common bits for both uploaders
+       $max_upload_size = ( (int) ( $max_up = @ini_get('upload_max_filesize') ) < (int) ( $max_post = @ini_get('post_max_size') ) ) ? $max_up : $max_post;
+
+       if ( empty($max_upload_size) )
+               $max_upload_size = __('not configured');
+
+       // error message for both plupload and swfupload
+       $uploader_l10n = array(
+               'queue_limit_exceeded' => __('You have attempted to queue too many files.'),
+               'file_exceeds_size_limit' => __('%s exceeds the maximum upload size for this site.'),
+               'zero_byte_file' => __('This file is empty. Please try another.'),
+               'invalid_filetype' => __('This file type is not allowed. Please try another.'),
+               'not_an_image' => __('This file is not an image. Please try another.'),
+               'image_memory_exceeded' => __('Memory exceeded. Please try another smaller file.'),
+               'image_dimensions_exceeded' => __('This is larger than the maximum size. Please try another.'),
+               'default_error' => __('An error occurred in the upload. Please try again later.'),
+               'missing_upload_url' => __('There was a configuration error. Please contact the server administrator.'),
+               'upload_limit_exceeded' => __('You may only upload 1 file.'),
+               'http_error' => __('HTTP error.'),
+               'upload_failed' => __('Upload failed.'),
+               'big_upload_failed' => __('Please try uploading this file with the %1$sbrowser uploader%2$s.'),
+               'big_upload_queued' => __('%s exceeds the maximum upload size for the multi-file uploader when used in your browser.'),
+               'io_error' => __('IO error.'),
+               'security_error' => __('Security error.'),
+               'file_cancelled' => __('File canceled.'),
+               'upload_stopped' => __('Upload stopped.'),
+               'dismiss' => __('Dismiss'),
+               'crunching' => __('Crunching&hellip;'),
+               'deleted' => __('moved to the trash.'),
+               'error_uploading' => __('&#8220;%s&#8221; has failed to upload.')
+       );
+
+       $scripts->add( 'plupload', '/wp-includes/js/plupload/plupload.js', false, '1511-20111112');
+       $scripts->add( 'plupload-html5', '/wp-includes/js/plupload/plupload.html5.js', array('plupload'), '1511-20111112');
+       $scripts->add( 'plupload-flash', '/wp-includes/js/plupload/plupload.flash.js', array('plupload'), '1511-20111112');
+       $scripts->add( 'plupload-silverlight', '/wp-includes/js/plupload/plupload.silverlight.js', array('plupload'), '1511-20111112');
+       $scripts->add( 'plupload-html4', '/wp-includes/js/plupload/plupload.html4.js', array('plupload'), '1511-20111112');
+
+       // cannot use the plupload.full.js, as it loads browserplus init JS from Yahoo
+       $scripts->add( 'plupload-all', false, array('plupload', 'plupload-html5', 'plupload-flash', 'plupload-silverlight', 'plupload-html4'), '1511-20111112');
+
+       $scripts->add( 'plupload-handlers', "/wp-includes/js/plupload/handlers$suffix.js", array('plupload-all', 'jquery'), '20111120');
+       $scripts->localize( 'plupload-handlers', 'pluploadL10n', $uploader_l10n );
+
+       // keep 'swfupload' for back-compat.
        $scripts->add( 'swfupload', '/wp-includes/js/swfupload/swfupload.js', false, '2201-20110113');
        $scripts->add( 'swfupload-swfobject', '/wp-includes/js/swfupload/plugins/swfupload.swfobject.js', array('swfupload', 'swfobject'), '2201a');
        $scripts->add( 'swfupload-queue', '/wp-includes/js/swfupload/plugins/swfupload.queue.js', array('swfupload'), '2201');
        $scripts->add( 'swfupload', '/wp-includes/js/swfupload/swfupload.js', false, '2201-20110113');
        $scripts->add( 'swfupload-swfobject', '/wp-includes/js/swfupload/plugins/swfupload.swfobject.js', array('swfupload', 'swfobject'), '2201a');
        $scripts->add( 'swfupload-queue', '/wp-includes/js/swfupload/plugins/swfupload.queue.js', array('swfupload'), '2201');
@@ -221,40 +239,15 @@ function wp_default_scripts( &$scripts ) {
        }
 
        $scripts->add( 'swfupload-handlers', "/wp-includes/js/swfupload/handlers$suffix.js", array('swfupload-all', 'jquery'), '2201-20110524');
        }
 
        $scripts->add( 'swfupload-handlers', "/wp-includes/js/swfupload/handlers$suffix.js", array('swfupload-all', 'jquery'), '2201-20110524');
-       $max_upload_size = ( (int) ( $max_up = @ini_get('upload_max_filesize') ) < (int) ( $max_post = @ini_get('post_max_size') ) ) ? $max_up : $max_post;
-       if ( empty($max_upload_size) )
-               $max_upload_size = __('not configured');
-       // these error messages came from the sample swfupload js, they might need changing.
-       $scripts->localize( 'swfupload-handlers', 'swfuploadL10n', array(
-                       'queue_limit_exceeded' => __('You have attempted to queue too many files.'),
-                       'file_exceeds_size_limit' => __('This file exceeds the maximum upload size for this site.'),
-                       'zero_byte_file' => __('This file is empty. Please try another.'),
-                       'invalid_filetype' => __('This file type is not allowed. Please try another.'),
-                       'default_error' => __('An error occurred in the upload. Please try again later.'),
-                       'missing_upload_url' => __('There was a configuration error. Please contact the server administrator.'),
-                       'upload_limit_exceeded' => __('You may only upload 1 file.'),
-                       'http_error' => __('HTTP error.'),
-                       'upload_failed' => __('Upload failed.'),
-                       'io_error' => __('IO error.'),
-                       'security_error' => __('Security error.'),
-                       'file_cancelled' => __('File canceled.'),
-                       'upload_stopped' => __('Upload stopped.'),
-                       'dismiss' => __('Dismiss'),
-                       'crunching' => __('Crunching&hellip;'),
-                       'deleted' => __('moved to the trash.'),
-                       'error_uploading' => __('&#8220;%s&#8221; has failed to upload due to an error'),
-                       'l10n_print_after' => 'try{convertEntities(swfuploadL10n);}catch(e){};',
-       ) );
+       $scripts->localize( 'swfupload-handlers', 'swfuploadL10n', $uploader_l10n );
 
        $scripts->add( 'comment-reply', "/wp-includes/js/comment-reply$suffix.js", false, '20090102');
 
        $scripts->add( 'json2', "/wp-includes/js/json2$suffix.js", false, '2011-02-23');
 
 
        $scripts->add( 'comment-reply', "/wp-includes/js/comment-reply$suffix.js", false, '20090102');
 
        $scripts->add( 'json2', "/wp-includes/js/json2$suffix.js", false, '2011-02-23');
 
-       $scripts->add( 'imgareaselect', "/wp-includes/js/imgareaselect/jquery.imgareaselect$suffix.js", array('jquery'), '0.9.6-20110515' );
-       $scripts->add_data( 'imgareaselect', 'group', 1 );
+       $scripts->add( 'imgareaselect', "/wp-includes/js/imgareaselect/jquery.imgareaselect$suffix.js", array('jquery'), '0.9.6-20110515', 1 );
 
 
-       $scripts->add( 'password-strength-meter', "/wp-admin/js/password-strength-meter$suffix.js", array('jquery'), '20101027' );
-       $scripts->add_data( 'password-strength-meter', 'group', 1 );
+       $scripts->add( 'password-strength-meter', "/wp-admin/js/password-strength-meter$suffix.js", array('jquery'), '20101027', 1 );
        $scripts->localize( 'password-strength-meter', 'pwsL10n', array(
                'empty' => __('Strength indicator'),
                'short' => __('Very weak'),
        $scripts->localize( 'password-strength-meter', 'pwsL10n', array(
                'empty' => __('Strength indicator'),
                'short' => __('Very weak'),
@@ -262,58 +255,51 @@ function wp_default_scripts( &$scripts ) {
                /* translators: password strength */
                'good' => _x('Medium', 'password strength'),
                'strong' => __('Strong'),
                /* translators: password strength */
                'good' => _x('Medium', 'password strength'),
                'strong' => __('Strong'),
-               'mismatch' => __('Mismatch'),
-               'l10n_print_after' => 'try{convertEntities(pwsL10n);}catch(e){};'
+               'mismatch' => __('Mismatch')
        ) );
 
        ) );
 
-       $scripts->add( 'user-profile', "/wp-admin/js/user-profile$suffix.js", array( 'jquery', 'password-strength-meter' ), '20110628' );
-       $scripts->add_data( 'user-profile', 'group', 1 );
+       $scripts->add( 'user-profile', "/wp-admin/js/user-profile$suffix.js", array( 'jquery', 'password-strength-meter' ), '20110628', 1 );
 
 
-       $scripts->add( 'admin-bar', "/wp-includes/js/admin-bar$suffix.js", false, '20110131' );
-       $scripts->add_data( 'admin-bar', 'group', 1 );
+       $scripts->add( 'admin-bar', "/wp-includes/js/admin-bar$suffix.js", false, '20111130', 1 );
 
 
-       $scripts->add( 'wplink', "/wp-includes/js/tinymce/plugins/wplink/js/wplink$suffix.js", array( 'jquery', 'wpdialogs' ), '20110528' );
-       $scripts->add_data( 'wplink', 'group', 1 );
+       $scripts->add( 'wplink', "/wp-includes/js/wplink$suffix.js", array( 'jquery', 'wpdialogs' ), '20111128', 1 );
        $scripts->localize( 'wplink', 'wpLinkL10n', array(
                'title' => __('Insert/edit link'),
                'update' => __('Update'),
                'save' => __('Add Link'),
                'noTitle' => __('(no title)'),
        $scripts->localize( 'wplink', 'wpLinkL10n', array(
                'title' => __('Insert/edit link'),
                'update' => __('Update'),
                'save' => __('Add Link'),
                'noTitle' => __('(no title)'),
-               'noMatchesFound' => __('No matches found.'),
-               'l10n_print_after' => 'try{convertEntities(wpLinkL10n);}catch(e){};',
+               'noMatchesFound' => __('No matches found.')
        ) );
 
        ) );
 
-       $scripts->add( 'wpdialogs', "/wp-includes/js/tinymce/plugins/wpdialogs/js/wpdialog$suffix.js", array( 'jquery-ui-dialog' ), '20110528' );
-       $scripts->add_data( 'wpdialogs', 'group', 1 );
+       $scripts->add( 'wpdialogs', "/wp-includes/js/tinymce/plugins/wpdialogs/js/wpdialog$suffix.js", array( 'jquery-ui-dialog' ), '20110528', 1 );
+
+       $scripts->add( 'wpdialogs-popup', "/wp-includes/js/tinymce/plugins/wpdialogs/js/popup$suffix.js", array( 'wpdialogs' ), '20110421', 1 );
+
+       $scripts->add( 'word-count', "/wp-admin/js/word-count$suffix.js", array( 'jquery' ), '20110515', 1 );
 
 
-       $scripts->add( 'wpdialogs-popup', "/wp-includes/js/tinymce/plugins/wpdialogs/js/popup$suffix.js", array( 'wpdialogs' ), '20110421' );
-       $scripts->add_data( 'wpdialogs-popup', 'group', 1 );
+       $scripts->add( 'media-upload', "/wp-admin/js/media-upload$suffix.js", array( 'thickbox' ), '20110930', 1 );
+
+       $scripts->add( 'hoverIntent', "/wp-includes/js/hoverIntent$suffix.js", array('jquery'), '20090102', 1 );
 
        if ( is_admin() ) {
                $scripts->add( 'ajaxcat', "/wp-admin/js/cat$suffix.js", array( 'wp-lists' ), '20090102' );
                $scripts->add_data( 'ajaxcat', 'group', 1 );
                $scripts->localize( 'ajaxcat', 'catL10n', array(
                        'add' => esc_attr(__('Add')),
 
        if ( is_admin() ) {
                $scripts->add( 'ajaxcat', "/wp-admin/js/cat$suffix.js", array( 'wp-lists' ), '20090102' );
                $scripts->add_data( 'ajaxcat', 'group', 1 );
                $scripts->localize( 'ajaxcat', 'catL10n', array(
                        'add' => esc_attr(__('Add')),
-                       'how' => __('Separate multiple categories with commas.'),
-                       'l10n_print_after' => 'try{convertEntities(catL10n);}catch(e){};'
+                       'how' => __('Separate multiple categories with commas.')
                ) );
 
                ) );
 
-               $scripts->add( 'admin-categories', "/wp-admin/js/categories$suffix.js", array('wp-lists'), '20091201' );
-               $scripts->add_data( 'admin-categories', 'group', 1 );
+               $scripts->add( 'admin-categories', "/wp-admin/js/categories$suffix.js", array('wp-lists'), '20091201', 1 );
 
 
-               $scripts->add( 'admin-tags', "/wp-admin/js/tags$suffix.js", array('jquery', 'wp-ajax-response'), '20110429' );
-               $scripts->add_data( 'admin-tags', 'group', 1 );
+               $scripts->add( 'admin-tags', "/wp-admin/js/tags$suffix.js", array('jquery', 'wp-ajax-response'), '20110429', 1 );
                $scripts->localize( 'admin-tags', 'tagsl10n', array(
                        'noPerm' => __('You do not have permission to do that.'),
                $scripts->localize( 'admin-tags', 'tagsl10n', array(
                        'noPerm' => __('You do not have permission to do that.'),
-                       'broken' => __('An unidentified error has occurred.'),
-                       'l10n_print_after' => 'try{convertEntities(tagsl10n);}catch(e){};'
+                       'broken' => __('An unidentified error has occurred.')
                ));
 
                ));
 
-               $scripts->add( 'admin-custom-fields', "/wp-admin/js/custom-fields$suffix.js", array('wp-lists'), '20110429' );
-               $scripts->add_data( 'admin-custom-fields', 'group', 1 );
+               $scripts->add( 'admin-custom-fields', "/wp-admin/js/custom-fields$suffix.js", array('wp-lists'), '20110429', 1 );
 
 
-               $scripts->add( 'admin-comments', "/wp-admin/js/edit-comments$suffix.js", array('wp-lists', 'jquery-ui-resizable', 'quicktags', 'jquery-query'), '20110602' );
-               $scripts->add_data( 'admin-comments', 'group', 1 );
+               $scripts->add( 'admin-comments', "/wp-admin/js/edit-comments$suffix.js", array('wp-lists', 'quicktags', 'jquery-query'), '20111115', 1 );
                $scripts->localize( 'admin-comments', 'adminCommentsL10n', array(
                        'hotkeys_highlight_first' => isset($_GET['hotkeys_highlight_first']),
                        'hotkeys_highlight_last' => isset($_GET['hotkeys_highlight_last']),
                $scripts->localize( 'admin-comments', 'adminCommentsL10n', array(
                        'hotkeys_highlight_first' => isset($_GET['hotkeys_highlight_first']),
                        'hotkeys_highlight_last' => isset($_GET['hotkeys_highlight_last']),
@@ -321,22 +307,14 @@ function wp_default_scripts( &$scripts ) {
                        'reply' => __( 'Reply' )
                ) );
 
                        'reply' => __( 'Reply' )
                ) );
 
-               $scripts->add( 'xfn', "/wp-admin/js/xfn$suffix.js", array('jquery'), '20110524' );
-               $scripts->add_data( 'xfn', 'group', 1 );
+               $scripts->add( 'xfn', "/wp-admin/js/xfn$suffix.js", array('jquery'), '20110524', 1 );
 
 
-               $scripts->add( 'postbox', "/wp-admin/js/postbox$suffix.js", array('jquery-ui-sortable'), '20110612' );
-               $scripts->add_data( 'postbox', 'group', 1 );
+               $scripts->add( 'postbox', "/wp-admin/js/postbox$suffix.js", array('jquery-ui-sortable'), '20111009a', 1 );
 
 
-               $scripts->add( 'post', "/wp-admin/js/post$suffix.js", array('suggest', 'wp-lists', 'postbox'), '20110524' );
-               $scripts->add_data( 'post', 'group', 1 );
+               $scripts->add( 'post', "/wp-admin/js/post$suffix.js", array('suggest', 'wp-lists', 'postbox'), '20111124', 1 );
                $scripts->localize( 'post', 'postL10n', array(
                $scripts->localize( 'post', 'postL10n', array(
-                       'tagsUsed' =>  __('Tags used on this post:'),
-                       'add' => esc_attr(__('Add')),
-                       'addTag' => esc_attr(__('Add new Tag')),
-                       'separate' => __('Separate tags with commas'),
                        'ok' => __('OK'),
                        'cancel' => __('Cancel'),
                        'ok' => __('OK'),
                        'cancel' => __('Cancel'),
-                       'edit' => __('Edit'),
                        'publishOn' => __('Publish on:'),
                        'publishOnFuture' =>  __('Schedule for:'),
                        'publishOnPast' => __('Published on:'),
                        'publishOn' => __('Publish on:'),
                        'publishOnFuture' =>  __('Schedule for:'),
                        'publishOnPast' => __('Published on:'),
@@ -352,100 +330,73 @@ function wp_default_scripts( &$scripts ) {
                        'publicSticky' => __('Public, Sticky'),
                        'password' => __('Password Protected'),
                        'privatelyPublished' => __('Privately Published'),
                        'publicSticky' => __('Public, Sticky'),
                        'password' => __('Password Protected'),
                        'privatelyPublished' => __('Privately Published'),
-                       'published' => __('Published'),
-                       'l10n_print_after' => 'try{convertEntities(postL10n);}catch(e){};'
+                       'published' => __('Published')
                ) );
 
                ) );
 
-               $scripts->add( 'link', "/wp-admin/js/link$suffix.js", array('wp-lists', 'postbox'), '20110524' );
-               $scripts->add_data( 'link', 'group', 1 );
+               $scripts->add( 'link', "/wp-admin/js/link$suffix.js", array('wp-lists', 'postbox'), '20110524', 1 );
 
                $scripts->add( 'comment', "/wp-admin/js/comment$suffix.js", array('jquery'), '20110429' );
                $scripts->add_data( 'comment', 'group', 1 );
                $scripts->localize( 'comment', 'commentL10n', array(
 
                $scripts->add( 'comment', "/wp-admin/js/comment$suffix.js", array('jquery'), '20110429' );
                $scripts->add_data( 'comment', 'group', 1 );
                $scripts->localize( 'comment', 'commentL10n', array(
-                       'cancel' => __('Cancel'),
-                       'edit' => __('Edit'),
-                       'submittedOn' => __('Submitted on:'),
-                       'l10n_print_after' => 'try{convertEntities(commentL10n);}catch(e){};'
+                       'submittedOn' => __('Submitted on:')
                ) );
 
                ) );
 
-               $scripts->add( 'admin-gallery', "/wp-admin/js/gallery$suffix.js", array( 'jquery-ui-sortable' ), '20110414' );
-
-               $scripts->add( 'media-upload', "/wp-admin/js/media-upload$suffix.js", array( 'thickbox' ), '20110425' );
-               $scripts->add_data( 'media-upload', 'group', 1 );
-
-               $scripts->add( 'admin-widgets', "/wp-admin/js/widgets$suffix.js", array( 'jquery-ui-sortable', 'jquery-ui-draggable', 'jquery-ui-droppable' ), '20110601' );
-               $scripts->add_data( 'admin-widgets', 'group', 1 );
+               $scripts->add( 'admin-gallery', "/wp-admin/js/gallery$suffix.js", array( 'jquery-ui-sortable' ), '20110930' );
 
 
-               $scripts->add( 'word-count', "/wp-admin/js/word-count$suffix.js", array( 'jquery' ), '20110515' );
-               $scripts->add_data( 'word-count', 'group', 1 );
+               $scripts->add( 'admin-widgets', "/wp-admin/js/widgets$suffix.js", array( 'jquery-ui-sortable', 'jquery-ui-draggable', 'jquery-ui-droppable' ), '20110925', 1 );
 
 
-               $scripts->add( 'theme', "/wp-admin/js/theme$suffix.js", array( 'thickbox' ), '20110118' );
-               $scripts->add_data( 'theme', 'group', 1 );
+               $scripts->add( 'theme', "/wp-admin/js/theme$suffix.js", array( 'thickbox' ), '20110118', 1 );
 
 
-               $scripts->add( 'theme-preview', "/wp-admin/js/theme-preview$suffix.js", array( 'thickbox', 'jquery' ), '20100407' );
-               $scripts->add_data( 'theme-preview', 'group', 1 );
+               $scripts->add( 'theme-preview', "/wp-admin/js/theme-preview$suffix.js", array( 'thickbox', 'jquery' ), '20100407', 1 );
 
 
-               $scripts->add( 'inline-edit-post', "/wp-admin/js/inline-edit-post$suffix.js", array( 'jquery', 'suggest' ), '20110609' );
-               $scripts->add_data( 'inline-edit-post', 'group', 1 );
+               $scripts->add( 'inline-edit-post', "/wp-admin/js/inline-edit-post$suffix.js", array( 'jquery', 'suggest' ), '20111129', 1 );
                $scripts->localize( 'inline-edit-post', 'inlineEditL10n', array(
                        'error' => __('Error while saving the changes.'),
                        'ntdeltitle' => __('Remove From Bulk Edit'),
                $scripts->localize( 'inline-edit-post', 'inlineEditL10n', array(
                        'error' => __('Error while saving the changes.'),
                        'ntdeltitle' => __('Remove From Bulk Edit'),
-                       'notitle' => __('(no title)'),
-                       'l10n_print_after' => 'try{convertEntities(inlineEditL10n);}catch(e){};'
+                       'notitle' => __('(no title)')
                ) );
 
                ) );
 
-               $scripts->add( 'inline-edit-tax', "/wp-admin/js/inline-edit-tax$suffix.js", array( 'jquery' ), '20110609' );
-               $scripts->add_data( 'inline-edit-tax', 'group', 1 );
+               $scripts->add( 'inline-edit-tax', "/wp-admin/js/inline-edit-tax$suffix.js", array( 'jquery' ), '20110609', 1 );
                $scripts->localize( 'inline-edit-tax', 'inlineEditL10n', array(
                $scripts->localize( 'inline-edit-tax', 'inlineEditL10n', array(
-                       'error' => __('Error while saving the changes.'),
-                       'l10n_print_after' => 'try{convertEntities(inlineEditL10n);}catch(e){};'
+                       'error' => __('Error while saving the changes.')
                ) );
 
                ) );
 
-               $scripts->add( 'plugin-install', "/wp-admin/js/plugin-install$suffix.js", array( 'jquery', 'thickbox' ), '20110113' );
-               $scripts->add_data( 'plugin-install', 'group', 1 );
+               $scripts->add( 'plugin-install', "/wp-admin/js/plugin-install$suffix.js", array( 'jquery', 'thickbox' ), '20110113', 1 );
                $scripts->localize( 'plugin-install', 'plugininstallL10n', array(
                        'plugin_information' => __('Plugin Information:'),
                $scripts->localize( 'plugin-install', 'plugininstallL10n', array(
                        'plugin_information' => __('Plugin Information:'),
-                       'ays' => __('Are you sure you want to install this plugin?'),
-                       'l10n_print_after' => 'try{convertEntities(plugininstallL10n);}catch(e){};'
+                       'ays' => __('Are you sure you want to install this plugin?')
                ) );
 
                $scripts->add( 'farbtastic', '/wp-admin/js/farbtastic.js', array('jquery'), '1.2' );
 
                ) );
 
                $scripts->add( 'farbtastic', '/wp-admin/js/farbtastic.js', array('jquery'), '1.2' );
 
-               $scripts->add( 'dashboard', "/wp-admin/js/dashboard$suffix.js", array( 'jquery', 'admin-comments', 'postbox' ), '20110524' );
-               $scripts->add_data( 'dashboard', 'group', 1 );
-
-               $scripts->add( 'hoverIntent', "/wp-includes/js/hoverIntent$suffix.js", array('jquery'), '20090102' );
-               $scripts->add_data( 'hoverIntent', 'group', 1 );
+               $scripts->add( 'dashboard', "/wp-admin/js/dashboard$suffix.js", array( 'jquery', 'admin-comments', 'postbox' ), '20111123', 1 );
 
                $scripts->add( 'list-revisions', "/wp-includes/js/wp-list-revisions$suffix.js", null, '20091223' );
 
 
                $scripts->add( 'list-revisions', "/wp-includes/js/wp-list-revisions$suffix.js", null, '20091223' );
 
-               $scripts->add( 'media', "/wp-admin/js/media$suffix.js", array( 'jquery-ui-draggable' ), '20101022' );
-               $scripts->add_data( 'media', 'group', 1 );
+               $scripts->add( 'media', "/wp-admin/js/media$suffix.js", array( 'jquery-ui-draggable' ), '20101022', 1 );
 
 
-               $scripts->add( 'image-edit', "/wp-admin/js/image-edit$suffix.js", array('jquery', 'json2', 'imgareaselect'), '20110524' );
-               $scripts->add_data( 'image-edit', 'group', 1 );
+               $scripts->add( 'image-edit', "/wp-admin/js/image-edit$suffix.js", array('jquery', 'json2', 'imgareaselect'), '20110927', 1 );
+               $scripts->localize( 'image-edit', 'imageEditL10n', array(
+                       'error' => __( 'Could not load the preview image. Please reload the page and try again.' )
+               ));
 
 
-               $scripts->add( 'set-post-thumbnail', "/wp-admin/js/set-post-thumbnail$suffix.js", array( 'jquery' ), '20100518' );
-               $scripts->add_data( 'set-post-thumbnail', 'group', 1 );
+               $scripts->add( 'set-post-thumbnail', "/wp-admin/js/set-post-thumbnail$suffix.js", array( 'jquery' ), '20100518', 1 );
                $scripts->localize( 'set-post-thumbnail', 'setPostThumbnailL10n', array(
                        'setThumbnail' => __( 'Use as featured image' ),
                        'saving' => __( 'Saving...' ),
                        'error' => __( 'Could not set that as the thumbnail image. Try a different attachment.' ),
                $scripts->localize( 'set-post-thumbnail', 'setPostThumbnailL10n', array(
                        'setThumbnail' => __( 'Use as featured image' ),
                        'saving' => __( 'Saving...' ),
                        'error' => __( 'Could not set that as the thumbnail image. Try a different attachment.' ),
-                       'done' => __( 'Done' ),
-                       'l10n_print_after' => 'try{convertEntities(setPostThumbnailL10n);}catch(e){};'
+                       'done' => __( 'Done' )
                ) );
 
                // Navigation Menus
                ) );
 
                // Navigation Menus
-               $scripts->add( 'nav-menu', "/wp-admin/js/nav-menu$suffix.js", array('jquery-ui-sortable'), '20110524' );
+               $scripts->add( 'nav-menu', "/wp-admin/js/nav-menu$suffix.js", array('jquery-ui-sortable'), '20111115' );
                $scripts->localize( 'nav-menu', 'navMenuL10n', array(
                        'noResultsFound' => _x('No results found.', 'search results'),
                        'warnDeleteMenu' => __( "You are about to permanently delete this menu. \n 'Cancel' to stop, 'OK' to delete." ),
                $scripts->localize( 'nav-menu', 'navMenuL10n', array(
                        'noResultsFound' => _x('No results found.', 'search results'),
                        'warnDeleteMenu' => __( "You are about to permanently delete this menu. \n 'Cancel' to stop, 'OK' to delete." ),
-                       'saveAlert' => __('The changes you made will be lost if you navigate away from this page.'),
-                       'l10n_print_after' => 'try{convertEntities(navMenuL10n);}catch(e){};'
+                       'saveAlert' => __('The changes you made will be lost if you navigate away from this page.')
                ) );
 
                ) );
 
-               $scripts->add( 'custom-background', "/wp-admin/js/custom-background$suffix.js", array('farbtastic'), '20110511' );
-               $scripts->add_data( 'custom-background', 'group', 1 );
+               $scripts->add( 'custom-background', "/wp-admin/js/custom-background$suffix.js", array('farbtastic'), '20110511', 1 );
        }
 }
 
        }
 }
 
@@ -474,48 +425,39 @@ function wp_default_styles( &$styles ) {
        $styles->content_url = defined('WP_CONTENT_URL')? WP_CONTENT_URL : '';
        $styles->default_version = get_bloginfo( 'version' );
        $styles->text_direction = function_exists( 'is_rtl' ) && is_rtl() ? 'rtl' : 'ltr';
        $styles->content_url = defined('WP_CONTENT_URL')? WP_CONTENT_URL : '';
        $styles->default_version = get_bloginfo( 'version' );
        $styles->text_direction = function_exists( 'is_rtl' ) && is_rtl() ? 'rtl' : 'ltr';
-       $styles->default_dirs = array('/wp-admin/');
+       $styles->default_dirs = array('/wp-admin/', '/wp-includes/css/');
 
        $suffix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '.dev' : '';
 
 
        $suffix = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '.dev' : '';
 
-       $rtl_styles = array( 'wp-admin', 'global', 'colors', 'colors-fresh', 'colors-classic', 'dashboard', 'ie', 'install', 'login', 'media', 'theme-editor', 'upload', 'widgets', 'press-this', 'plugin-install', 'nav-menu', 'farbtastic', 'admin-bar', 'wplink', 'theme-install' );
+       $rtl_styles = array( 'wp-admin', 'ie', 'media', 'admin-bar', 'wplink' );
        // Any rtl stylesheets that don't have a .dev version for ltr
        $no_suffix = array( 'farbtastic' );
 
        // Any rtl stylesheets that don't have a .dev version for ltr
        $no_suffix = array( 'farbtastic' );
 
-       $styles->add( 'wp-admin', "/wp-admin/css/wp-admin$suffix.css", array(), '20110711' );
+       $styles->add( 'wp-admin', "/wp-admin/css/wp-admin$suffix.css", array(), '20111208' );
 
 
-       $styles->add( 'ie', "/wp-admin/css/ie$suffix.css", array(), '20110711' );
+       $styles->add( 'ie', "/wp-admin/css/ie$suffix.css", array(), '20111130' );
        $styles->add_data( 'ie', 'conditional', 'lte IE 7' );
 
        // all colors stylesheets need to have the same query strings (cache manifest compat)
        $styles->add_data( 'ie', 'conditional', 'lte IE 7' );
 
        // all colors stylesheets need to have the same query strings (cache manifest compat)
-       $colors_version = '20110703';
+       $colors_version = '20111206';
 
        // Register "meta" stylesheet for admin colors. All colors-* style sheets should have the same version string.
 
        // Register "meta" stylesheet for admin colors. All colors-* style sheets should have the same version string.
-       $styles->add( 'colors', true, array(), $colors_version );
+       $styles->add( 'colors', true, array('wp-admin'), $colors_version );
 
        // do not refer to these directly, the right one is queued by the above "meta" colors handle
 
        // do not refer to these directly, the right one is queued by the above "meta" colors handle
-       $styles->add( 'colors-fresh', "/wp-admin/css/colors-fresh$suffix.css", array(), $colors_version );
-       $styles->add( 'colors-classic', "/wp-admin/css/colors-classic$suffix.css", array(), $colors_version );
-
-       $styles->add( 'ms', "/wp-admin/css/ms$suffix.css", array(), '20110623' );
-       $styles->add( 'global', "/wp-admin/css/global$suffix.css", array(), '20110711b' );
-       $styles->add( 'media', "/wp-admin/css/media$suffix.css", array(), '20110707' );
-       $styles->add( 'widgets', "/wp-admin/css/widgets$suffix.css", array(), '20110606' );
-       $styles->add( 'dashboard', "/wp-admin/css/dashboard$suffix.css", array(), '20110711' );
-       $styles->add( 'install', "/wp-admin/css/install$suffix.css", array(), '20110707' ); // Readme as well
-       $styles->add( 'theme-editor', "/wp-admin/css/theme-editor$suffix.css", array(), '20110602' );
-       $styles->add( 'press-this', "/wp-admin/css/press-this$suffix.css", array(), '20110707' );
-       $styles->add( 'thickbox', '/wp-includes/js/thickbox/thickbox.css', array(), '20090514' );
-       $styles->add( 'login', "/wp-admin/css/login$suffix.css", array(), '20110610' );
-       $styles->add( 'plugin-install', "/wp-admin/css/plugin-install$suffix.css", array(), '20110628' );
-       $styles->add( 'theme-install', "/wp-admin/css/theme-install$suffix.css", array(), '20110506' );
-       $styles->add( 'farbtastic', '/wp-admin/css/farbtastic.css', array(), '1.3u' );
+       $styles->add( 'colors-fresh', "/wp-admin/css/colors-fresh$suffix.css", array('wp-admin'), $colors_version );
+       $styles->add( 'colors-classic', "/wp-admin/css/colors-classic$suffix.css", array('wp-admin'), $colors_version );
+
+       $styles->add( 'media', "/wp-admin/css/media$suffix.css", array(), '20111119' );
+       $styles->add( 'install', "/wp-admin/css/install$suffix.css", array(), '20111117' ); // Readme as well
+       $styles->add( 'thickbox', '/wp-includes/js/thickbox/thickbox.css', array(), '20111117' );
+       $styles->add( 'farbtastic', '/wp-admin/css/farbtastic.css', array(), '1.3u1' );
        $styles->add( 'jcrop', '/wp-includes/js/jcrop/jquery.Jcrop.css', array(), '0.9.8' );
        $styles->add( 'imgareaselect', '/wp-includes/js/imgareaselect/imgareaselect.css', array(), '0.9.1' );
        $styles->add( 'jcrop', '/wp-includes/js/jcrop/jquery.Jcrop.css', array(), '0.9.8' );
        $styles->add( 'imgareaselect', '/wp-includes/js/imgareaselect/imgareaselect.css', array(), '0.9.1' );
-       $styles->add( 'nav-menu', "/wp-admin/css/nav-menu$suffix.css", array(), '20110611' );
-       $styles->add( 'admin-bar', "/wp-includes/css/admin-bar$suffix.css", array(), '20110622' );
-       $styles->add( 'wp-jquery-ui-dialog', "/wp-includes/css/jquery-ui-dialog$suffix.css", array(), '20101224' );
-       $styles->add( 'wplink', "/wp-includes/js/tinymce/plugins/wplink/css/wplink$suffix.css", array(), '20101224' );
+       $styles->add( 'admin-bar', "/wp-includes/css/admin-bar$suffix.css", array(), '20111209' );
+       $styles->add( 'wp-jquery-ui-dialog', "/wp-includes/css/jquery-ui-dialog$suffix.css", array(), '20111107' );
+       $styles->add( 'editor-buttons', "/wp-includes/css/editor-buttons$suffix.css", array(), '20111114' );
+       $styles->add( 'wp-pointer', "/wp-includes/css/wp-pointer$suffix.css", array(), '20111205' );
 
        foreach ( $rtl_styles as $rtl_style ) {
                $styles->add_data( $rtl_style, 'rtl', true );
 
        foreach ( $rtl_styles as $rtl_style ) {
                $styles->add_data( $rtl_style, 'rtl', true );
@@ -529,7 +471,7 @@ function wp_default_styles( &$styles ) {
  *
  * @since 2.3.1
  *
  *
  * @since 2.3.1
  *
- * @param array $js_array JavaScript scripst array
+ * @param array $js_array JavaScript scripts array
  * @return array Reordered array, if needed.
  */
 function wp_prototype_before_jquery( $js_array ) {
  * @return array Reordered array, if needed.
  */
 function wp_prototype_before_jquery( $js_array ) {
@@ -561,8 +503,7 @@ function wp_just_in_time_script_localization() {
        wp_localize_script( 'autosave', 'autosaveL10n', array(
                'autosaveInterval' => AUTOSAVE_INTERVAL,
                'savingText' => __('Saving Draft&#8230;'),
        wp_localize_script( 'autosave', 'autosaveL10n', array(
                'autosaveInterval' => AUTOSAVE_INTERVAL,
                'savingText' => __('Saving Draft&#8230;'),
-               'saveAlert' => __('The changes you made will be lost if you navigate away from this page.'),
-               'l10n_print_after' => 'try{convertEntities(autosaveL10n);}catch(e){};'
+               'saveAlert' => __('The changes you made will be lost if you navigate away from this page.')
        ) );
 
 }
        ) );
 
 }
@@ -635,7 +576,6 @@ function print_head_scripts() {
                $wp_scripts = new WP_Scripts();
 
        script_concat_settings();
                $wp_scripts = new WP_Scripts();
 
        script_concat_settings();
-       $wp_scripts->do_items( 'l10n' );
        $wp_scripts->do_concat = $concatenate_scripts;
        $wp_scripts->do_head_items();
 
        $wp_scripts->do_concat = $concatenate_scripts;
        $wp_scripts->do_head_items();
 
@@ -647,16 +587,13 @@ function print_head_scripts() {
 }
 
 /**
 }
 
 /**
- * Prints the scripts that were queued for the footer on admin pages.
+ * Prints the scripts that were queued for the footer or too late for the HTML head.
  *
  * @since 2.8
  */
 function print_footer_scripts() {
        global $wp_scripts, $concatenate_scripts;
 
  *
  * @since 2.8
  */
 function print_footer_scripts() {
        global $wp_scripts, $concatenate_scripts;
 
-       if ( ! did_action('wp_print_footer_scripts') )
-               do_action('wp_print_footer_scripts');
-
        if ( !is_a($wp_scripts, 'WP_Scripts') )
                return array(); // No need to run if not instantiated.
 
        if ( !is_a($wp_scripts, 'WP_Scripts') )
                return array(); // No need to run if not instantiated.
 
@@ -671,6 +608,9 @@ function print_footer_scripts() {
        return $wp_scripts->done;
 }
 
        return $wp_scripts->done;
 }
 
+/**
+ * @internal use
+ */
 function _print_scripts() {
        global $wp_scripts, $compress_scripts;
 
 function _print_scripts() {
        global $wp_scripts, $compress_scripts;
 
@@ -681,8 +621,8 @@ function _print_scripts() {
        if ( !empty($wp_scripts->concat) ) {
 
                if ( !empty($wp_scripts->print_code) ) {
        if ( !empty($wp_scripts->concat) ) {
 
                if ( !empty($wp_scripts->print_code) ) {
-                       echo "<script type='text/javascript'>\n";
-                       echo "/* <![CDATA[ */\n";
+                       echo "\n<script type='text/javascript'>\n";
+                       echo "/* <![CDATA[ */\n"; // not needed in HTML 5
                        echo $wp_scripts->print_code;
                        echo "/* ]]> */\n";
                        echo "</script>\n";
                        echo $wp_scripts->print_code;
                        echo "/* ]]> */\n";
                        echo "</script>\n";
@@ -718,12 +658,22 @@ function wp_print_head_scripts() {
 }
 
 /**
 }
 
 /**
- * Prints the scripts that were queued for the footer on the front end.
+ * Private, for use in *_footer_scripts hooks
+ *
+ * @since 3.3
+ */
+function _wp_footer_scripts() {
+       print_late_styles();
+       print_footer_scripts();
+}
+
+/**
+ * Hooks to print the scripts and styles in the footer.
  *
  * @since 2.8
  */
 function wp_print_footer_scripts() {
  *
  * @since 2.8
  */
 function wp_print_footer_scripts() {
-       return print_footer_scripts();
+       do_action('wp_print_footer_scripts');
 }
 
 /**
 }
 
 /**
@@ -738,6 +688,11 @@ function wp_enqueue_scripts() {
        do_action('wp_enqueue_scripts');
 }
 
        do_action('wp_enqueue_scripts');
 }
 
+/**
+ * Prints the styles queue in the HTML head on admin pages.
+ *
+ * @since 2.8
+ */
 function print_admin_styles() {
        global $wp_styles, $concatenate_scripts, $compress_css;
 
 function print_admin_styles() {
        global $wp_styles, $concatenate_scripts, $compress_css;
 
@@ -752,23 +707,66 @@ function print_admin_styles() {
 
        $wp_styles->do_items(false);
 
 
        $wp_styles->do_items(false);
 
-       if ( apply_filters('print_admin_styles', true) ) {
-               if ( !empty($wp_styles->concat) ) {
-                       $dir = $wp_styles->text_direction;
-                       $ver = md5("$wp_styles->concat_version{$dir}");
-                       $href = $wp_styles->base_url . "/wp-admin/load-styles.php?c={$zip}&dir={$dir}&load=" . trim($wp_styles->concat, ', ') . "&ver=$ver";
-                       echo "<link rel='stylesheet' href='" . esc_attr($href) . "' type='text/css' media='all' />\n";
-               }
+       if ( apply_filters('print_admin_styles', true) )
+               _print_styles();
 
 
-               if ( !empty($wp_styles->print_html) )
-                       echo $wp_styles->print_html;
-       }
+       $wp_styles->reset();
+       return $wp_styles->done;
+}
+
+/**
+ * Prints the styles that were queued too late for the HTML head.
+ *
+ * @since 3.3
+ */
+function print_late_styles() {
+       global $wp_styles, $concatenate_scripts;
+
+       if ( !is_a($wp_styles, 'WP_Styles') )
+               return;
 
 
-       $wp_styles->do_concat = false;
-       $wp_styles->concat = $wp_styles->concat_version = $wp_styles->print_html = '';
+       $wp_styles->do_concat = $concatenate_scripts;
+       $wp_styles->do_footer_items();
+
+       if ( apply_filters('print_late_styles', true) )
+               _print_styles();
+
+       $wp_styles->reset();
        return $wp_styles->done;
 }
 
        return $wp_styles->done;
 }
 
+/**
+ * @internal use
+ */
+function _print_styles() {
+       global $wp_styles, $compress_css;
+
+       $zip = $compress_css ? 1 : 0;
+       if ( $zip && defined('ENFORCE_GZIP') && ENFORCE_GZIP )
+               $zip = 'gzip';
+
+       if ( !empty($wp_styles->concat) ) {
+               $dir = $wp_styles->text_direction;
+               $ver = md5("$wp_styles->concat_version{$dir}");
+               $href = $wp_styles->base_url . "/wp-admin/load-styles.php?c={$zip}&dir={$dir}&load=" . trim($wp_styles->concat, ', ') . "&ver=$ver";
+               echo "<link rel='stylesheet' href='" . esc_attr($href) . "' type='text/css' media='all' />\n";
+
+               if ( !empty($wp_styles->print_code) ) {
+                       echo "<style type='text/css'>\n";
+                       echo $wp_styles->print_code;
+                       echo "\n</style>\n";
+               }
+       }
+
+       if ( !empty($wp_styles->print_html) )
+               echo $wp_styles->print_html;
+}
+
+/**
+ * Determine the concatenation and compression settings for scripts and styles.
+ *
+ * @since 2.8
+ */
 function script_concat_settings() {
        global $concatenate_scripts, $compress_scripts, $compress_css;
 
 function script_concat_settings() {
        global $concatenate_scripts, $compress_scripts, $compress_css;
 
index f2048bda63eeeeb208094eb57951c54ee73cb4db..1cb361377972bf27e58c4408f813fc417341cbfb 100644 (file)
@@ -148,7 +148,7 @@ function do_shortcode($content) {
                return $content;
 
        $pattern = get_shortcode_regex();
                return $content;
 
        $pattern = get_shortcode_regex();
-       return preg_replace_callback('/'.$pattern.'/s', 'do_shortcode_tag', $content);
+       return preg_replace_callback( "/$pattern/s", 'do_shortcode_tag', $content );
 }
 
 /**
 }
 
 /**
@@ -157,13 +157,14 @@ function do_shortcode($content) {
  * The regular expression combines the shortcode tags in the regular expression
  * in a regex class.
  *
  * The regular expression combines the shortcode tags in the regular expression
  * in a regex class.
  *
- * The regular expresion contains 6 different sub matches to help with parsing.
+ * The regular expression contains 6 different sub matches to help with parsing.
  *
  *
- * 1/6 - An extra [ or ] to allow for escaping shortcodes with double [[]]
+ * 1 - An extra [ to allow for escaping shortcodes with double [[]]
  * 2 - The shortcode name
  * 3 - The shortcode argument list
  * 4 - The self closing /
  * 5 - The content of a shortcode when it wraps some content.
  * 2 - The shortcode name
  * 3 - The shortcode argument list
  * 4 - The self closing /
  * 5 - The content of a shortcode when it wraps some content.
+ * 6 - An extra ] to allow for escaping shortcodes with double [[]]
  *
  * @since 2.5
  * @uses $shortcode_tags
  *
  * @since 2.5
  * @uses $shortcode_tags
@@ -175,8 +176,36 @@ function get_shortcode_regex() {
        $tagnames = array_keys($shortcode_tags);
        $tagregexp = join( '|', array_map('preg_quote', $tagnames) );
 
        $tagnames = array_keys($shortcode_tags);
        $tagregexp = join( '|', array_map('preg_quote', $tagnames) );
 
-       // WARNING! Do not change this regex without changing do_shortcode_tag() and strip_shortcodes()
-       return '(.?)\[('.$tagregexp.')\b(.*?)(?:(\/))?\](?:(.+?)\[\/\2\])?(.?)';
+       // WARNING! Do not change this regex without changing do_shortcode_tag() and strip_shortcode_tag()
+       return
+                 '\\['                              // Opening bracket
+               . '(\\[?)'                           // 1: Optional second opening bracket for escaping shortcodes: [[tag]]
+               . "($tagregexp)"                     // 2: Shortcode name
+               . '\\b'                              // Word boundary
+               . '('                                // 3: Unroll the loop: Inside the opening shortcode tag
+               .     '[^\\]\\/]*'                   // Not a closing bracket or forward slash
+               .     '(?:'
+               .         '\\/(?!\\])'               // A forward slash not followed by a closing bracket
+               .         '[^\\]\\/]*'               // Not a closing bracket or forward slash
+               .     ')*?'
+               . ')'
+               . '(?:'
+               .     '(\\/)'                        // 4: Self closing tag ...
+               .     '\\]'                          // ... and closing bracket
+               . '|'
+               .     '\\]'                          // Closing bracket
+               .     '(?:'
+               .         '('                        // 5: Unroll the loop: Optionally, anything between the opening and closing shortcode tags
+               .             '[^\\[]*+'             // Not an opening bracket
+               .             '(?:'
+               .                 '\\[(?!\\/\\2\\])' // An opening bracket not followed by the closing shortcode tag
+               .                 '[^\\[]*+'         // Not an opening bracket
+               .             ')*+'
+               .         ')'
+               .         '\\[\\/\\2\\]'             // Closing shortcode tag
+               .     ')?'
+               . ')'
+               . '(\\]?)';                          // 6: Optional second closing brocket for escaping shortcodes: [[tag]]
 }
 
 /**
 }
 
 /**
@@ -290,9 +319,18 @@ function strip_shortcodes( $content ) {
 
        $pattern = get_shortcode_regex();
 
 
        $pattern = get_shortcode_regex();
 
-       return preg_replace('/'.$pattern.'/s', '$1$6', $content);
+       return preg_replace_callback( "/$pattern/s", 'strip_shortcode_tag', $content );
+}
+
+function strip_shortcode_tag( $m ) {
+       // allow [[foo]] syntax for escaping a tag
+       if ( $m[1] == '[' && $m[6] == ']' ) {
+               return substr($m[0], 1, -1);
+       }
+
+       return $m[1] . $m[6];
 }
 
 add_filter('the_content', 'do_shortcode', 11); // AFTER wpautop()
 
 }
 
 add_filter('the_content', 'do_shortcode', 11); // AFTER wpautop()
 
-?>
\ No newline at end of file
+?>
index dee7af8b6418b21c88f01641d9a5d140775721d8..4d525d69c041ef1437f8252eb50630936bbe2e99 100644 (file)
@@ -19,7 +19,6 @@ function create_initial_taxonomies() {
 
        register_taxonomy( 'category', 'post', array(
                'hierarchical' => true,
 
        register_taxonomy( 'category', 'post', array(
                'hierarchical' => true,
-               'update_count_callback' => '_update_post_term_count',
                'query_var' => 'category_name',
                'rewrite' => did_action( 'init' ) ? array(
                                        'hierarchical' => true,
                'query_var' => 'category_name',
                'rewrite' => did_action( 'init' ) ? array(
                                        'hierarchical' => true,
@@ -32,7 +31,6 @@ function create_initial_taxonomies() {
 
        register_taxonomy( 'post_tag', 'post', array(
                'hierarchical' => false,
 
        register_taxonomy( 'post_tag', 'post', array(
                'hierarchical' => false,
-               'update_count_callback' => '_update_post_term_count',
                'query_var' => 'tag',
                'rewrite' => did_action( 'init' ) ? array(
                                        'slug' => get_option('tag_base') ? get_option('tag_base') : 'tag',
                'query_var' => 'tag',
                'rewrite' => did_action( 'init' ) ? array(
                                        'slug' => get_option('tag_base') ? get_option('tag_base') : 'tag',
@@ -257,8 +255,10 @@ function is_taxonomy_hierarchical($taxonomy) {
  * hierarchical - has some defined purpose at other parts of the API and is a
  * boolean value.
  *
  * hierarchical - has some defined purpose at other parts of the API and is a
  * boolean value.
  *
- * update_count_callback - works much like a hook, in that it will be called
- * when the count is updated.
+ * update_count_callback - works much like a hook, in that it will be called when the count is updated.
+ *     Defaults to _update_post_term_count() for taxonomies attached to post types, which then confirms
+ *     that the objects are published before counting them.
+ *     Defaults to _update_generic_term_count() for taxonomies attached to other object types, such as links.
  *
  * rewrite - false to prevent rewrite, or array('slug'=>$slug) to customize
  * permastruct; default will use $taxonomy as slug.
  *
  * rewrite - false to prevent rewrite, or array('slug'=>$slug) to customize
  * permastruct; default will use $taxonomy as slug.
@@ -266,7 +266,7 @@ function is_taxonomy_hierarchical($taxonomy) {
  * query_var - false to prevent queries, or string to customize query var
  * (?$query_var=$term); default will use $taxonomy as query var.
  *
  * query_var - false to prevent queries, or string to customize query var
  * (?$query_var=$term); default will use $taxonomy as query var.
  *
- * public - If the taxonomy should be publically queryable; //@TODO not implemented.
+ * public - If the taxonomy should be publicly queryable; //@TODO not implemented.
  * defaults to true.
  *
  * show_ui - If the WordPress UI admin tags UI should apply to this taxonomy;
  * defaults to true.
  *
  * show_ui - If the WordPress UI admin tags UI should apply to this taxonomy;
@@ -276,7 +276,7 @@ function is_taxonomy_hierarchical($taxonomy) {
  * Defaults to public.
  *
  * show_tagcloud - false to prevent the taxonomy being listed in the Tag Cloud Widget;
  * Defaults to public.
  *
  * show_tagcloud - false to prevent the taxonomy being listed in the Tag Cloud Widget;
- * defaults to show_ui which defalts to public.
+ * defaults to show_ui which defaults to public.
  *
  * labels - An array of labels for this taxonomy. You can see accepted values in {@link get_taxonomy_labels()}. By default tag labels are used for non-hierarchical types and category labels for hierarchical ones.
  *
  *
  * labels - An array of labels for this taxonomy. You can see accepted values in {@link get_taxonomy_labels()}. By default tag labels are used for non-hierarchical types and category labels for hierarchical ones.
  *
@@ -363,14 +363,16 @@ function register_taxonomy( $taxonomy, $object_type, $args = array() ) {
 
        // register callback handling for metabox
        add_filter('wp_ajax_add-' . $taxonomy, '_wp_ajax_add_hierarchical_term');
 
        // register callback handling for metabox
        add_filter('wp_ajax_add-' . $taxonomy, '_wp_ajax_add_hierarchical_term');
+
+       do_action( 'registered_taxonomy', $taxonomy, $object_type, $args );
 }
 
 /**
  * Builds an object with all taxonomy labels out of a taxonomy object
  *
  * Accepted keys of the label array in the taxonomy object:
 }
 
 /**
  * Builds an object with all taxonomy labels out of a taxonomy object
  *
  * Accepted keys of the label array in the taxonomy object:
- * - name - general name for the taxonomy, usually plural. The same as and overriden by $tax->label. Default is Post Tags/Categories
- * - singular_name - name for one object of this taxonomy. Default is Post Tag/Category
+ * - name - general name for the taxonomy, usually plural. The same as and overridden by $tax->label. Default is Tags/Categories
+ * - singular_name - name for one object of this taxonomy. Default is Tag/Category
  * - search_items - Default is Search Tags/Search Categories
  * - popular_items - This string isn't used on hierarchical taxonomies. Default is Popular Tags
  * - all_items - Default is All Tags/All Categories
  * - search_items - Default is Search Tags/Search Categories
  * - popular_items - This string isn't used on hierarchical taxonomies. Default is Popular Tags
  * - all_items - Default is All Tags/All Categories
@@ -396,8 +398,8 @@ function get_taxonomy_labels( $tax ) {
                $tax->labels['separate_items_with_commas'] = $tax->helps;
 
        $nohier_vs_hier_defaults = array(
                $tax->labels['separate_items_with_commas'] = $tax->helps;
 
        $nohier_vs_hier_defaults = array(
-               'name' => array( _x( 'Post Tags', 'taxonomy general name' ), _x( 'Categories', 'taxonomy general name' ) ),
-               'singular_name' => array( _x( 'Post Tag', 'taxonomy singular name' ), _x( 'Category', 'taxonomy singular name' ) ),
+               'name' => array( _x( 'Tags', 'taxonomy general name' ), _x( 'Categories', 'taxonomy general name' ) ),
+               'singular_name' => array( _x( 'Tag', 'taxonomy singular name' ), _x( 'Category', 'taxonomy singular name' ) ),
                'search_items' => array( __( 'Search Tags' ), __( 'Search Categories' ) ),
                'popular_items' => array( __( 'Popular Tags' ), null ),
                'all_items' => array( __( 'All Tags' ), __( 'All Categories' ) ),
                'search_items' => array( __( 'Search Tags' ), __( 'Search Categories' ) ),
                'popular_items' => array( __( 'Popular Tags' ), null ),
                'all_items' => array( __( 'All Tags' ), __( 'All Categories' ) ),
@@ -850,9 +852,10 @@ function &get_term($term, $taxonomy, $output = OBJECT, $filter = 'raw') {
        } else {
                if ( is_object($term) )
                        $term = $term->term_id;
        } else {
                if ( is_object($term) )
                        $term = $term->term_id;
-               $term = (int) $term;
+               if ( !$term = (int) $term )
+                       return $null;
                if ( ! $_term = wp_cache_get($term, $taxonomy) ) {
                if ( ! $_term = wp_cache_get($term, $taxonomy) ) {
-                       $_term = $wpdb->get_row( $wpdb->prepare( "SELECT t.*, tt.* FROM $wpdb->terms AS t INNER JOIN $wpdb->term_taxonomy AS tt ON t.term_id = tt.term_id WHERE tt.taxonomy = %s AND t.term_id = %s LIMIT 1", $taxonomy, $term) );
+                       $_term = $wpdb->get_row( $wpdb->prepare( "SELECT t.*, tt.* FROM $wpdb->terms AS t INNER JOIN $wpdb->term_taxonomy AS tt ON t.term_id = tt.term_id WHERE tt.taxonomy = %s AND t.term_id = %d LIMIT 1", $taxonomy, $term) );
                        if ( ! $_term )
                                return $null;
                        wp_cache_add($term, $_term, $taxonomy);
                        if ( ! $_term )
                                return $null;
                        wp_cache_add($term, $_term, $taxonomy);
@@ -1158,7 +1161,7 @@ function &get_terms($taxonomies, $args = '') {
 
        foreach ( $taxonomies as $taxonomy ) {
                if ( ! taxonomy_exists($taxonomy) ) {
 
        foreach ( $taxonomies as $taxonomy ) {
                if ( ! taxonomy_exists($taxonomy) ) {
-                       $error = new WP_Error('invalid_taxonomy', __('Invalid Taxonomy'));
+                       $error = new WP_Error('invalid_taxonomy', __('Invalid Taxonomy'));
                        return $error;
                }
        }
                        return $error;
                }
        }
@@ -1495,7 +1498,7 @@ function term_exists($term, $taxonomy = '', $parent = 0) {
 /**
  * Sanitize Term all fields.
  *
 /**
  * Sanitize Term all fields.
  *
- * Relys on sanitize_term_field() to sanitize the term. The difference is that
+ * Relies on sanitize_term_field() to sanitize the term. The difference is that
  * this function will sanitize <strong>all</strong> fields. The context is based
  * on sanitize_term_field().
  *
  * this function will sanitize <strong>all</strong> fields. The context is based
  * on sanitize_term_field().
  *
@@ -1784,7 +1787,7 @@ function wp_delete_term( $term, $taxonomy, $args = array() ) {
  * @uses wp_delete_term()
  *
  * @param int $cat_ID
  * @uses wp_delete_term()
  *
  * @param int $cat_ID
- * @return mixed Returns true if completes delete action; false if term doesnt exist;
+ * @return mixed Returns true if completes delete action; false if term doesn't exist;
  *     Zero on attempted deletion of default Category; WP_Error object is also a possibility.
  */
 function wp_delete_category( $cat_ID ) {
  *     Zero on attempted deletion of default Category; WP_Error object is also a possibility.
  */
 function wp_delete_category( $cat_ID ) {
@@ -1809,7 +1812,7 @@ function wp_delete_category( $cat_ID ) {
  * 'all_with_object_id'.
  *
  * The fields argument also decides what will be returned. If 'all' or
  * 'all_with_object_id'.
  *
  * The fields argument also decides what will be returned. If 'all' or
- * 'all_with_object_id' is choosen or the default kept intact, then all matching
+ * 'all_with_object_id' is chosen or the default kept intact, then all matching
  * terms objects will be returned. If either 'ids' or 'names' is used, then an
  * array of all matching term ids or term names will be returned respectively.
  *
  * terms objects will be returned. If either 'ids' or 'names' is used, then an
  * array of all matching term ids or term names will be returned respectively.
  *
@@ -1892,6 +1895,8 @@ function wp_get_object_terms($object_ids, $taxonomies, $args = array()) {
                $select_this = 't.term_id';
        else if ( 'names' == $fields )
                $select_this = 't.name';
                $select_this = 't.term_id';
        else if ( 'names' == $fields )
                $select_this = 't.name';
+       else if ( 'slugs' == $fields )
+               $select_this = 't.slug';
        else if ( 'all_with_object_id' == $fields )
                $select_this = 't.*, tt.*, tr.object_id';
 
        else if ( 'all_with_object_id' == $fields )
                $select_this = 't.*, tt.*, tr.object_id';
 
@@ -1900,7 +1905,7 @@ function wp_get_object_terms($object_ids, $taxonomies, $args = array()) {
        if ( 'all' == $fields || 'all_with_object_id' == $fields ) {
                $terms = array_merge($terms, $wpdb->get_results($query));
                update_term_cache($terms);
        if ( 'all' == $fields || 'all_with_object_id' == $fields ) {
                $terms = array_merge($terms, $wpdb->get_results($query));
                update_term_cache($terms);
-       } else if ( 'ids' == $fields || 'names' == $fields ) {
+       } else if ( 'ids' == $fields || 'names' == $fields || 'slugs' == $fields ) {
                $terms = array_merge($terms, $wpdb->get_col($query));
        } else if ( 'tt_ids' == $fields ) {
                $terms = $wpdb->get_col("SELECT tr.term_taxonomy_id FROM $wpdb->term_relationships AS tr INNER JOIN $wpdb->term_taxonomy AS tt ON tr.term_taxonomy_id = tt.term_taxonomy_id WHERE tr.object_id IN ($object_ids) AND tt.taxonomy IN ($taxonomies) $orderby $order");
                $terms = array_merge($terms, $wpdb->get_col($query));
        } else if ( 'tt_ids' == $fields ) {
                $terms = $wpdb->get_col("SELECT tr.term_taxonomy_id FROM $wpdb->term_relationships AS tr INNER JOIN $wpdb->term_taxonomy AS tt ON tr.term_taxonomy_id = tt.term_taxonomy_id WHERE tr.object_id IN ($object_ids) AND tt.taxonomy IN ($taxonomies) $orderby $order");
@@ -1915,7 +1920,7 @@ function wp_get_object_terms($object_ids, $taxonomies, $args = array()) {
 /**
  * Adds a new term to the database. Optionally marks it as an alias of an existing term.
  *
 /**
  * Adds a new term to the database. Optionally marks it as an alias of an existing term.
  *
- * Error handling is assigned for the nonexistance of the $taxonomy and $term
+ * Error handling is assigned for the nonexistence of the $taxonomy and $term
  * parameters before inserting. If both the term id and taxonomy exist
  * previously, then an array will be returned that contains the term id and the
  * contents of what is returned. The keys of the array are 'term_id' and
  * parameters before inserting. If both the term id and taxonomy exist
  * previously, then an array will be returned that contains the term id and the
  * contents of what is returned. The keys of the array are 'term_id' and
@@ -2112,6 +2117,7 @@ function wp_set_object_terms($object_id, $terms, $taxonomy, $append = false) {
 
        $tt_ids = array();
        $term_ids = array();
 
        $tt_ids = array();
        $term_ids = array();
+       $new_tt_ids = array();
 
        foreach ( (array) $terms as $term) {
                if ( !strlen(trim($term)) )
 
        foreach ( (array) $terms as $term) {
                if ( !strlen(trim($term)) )
@@ -2134,9 +2140,11 @@ function wp_set_object_terms($object_id, $terms, $taxonomy, $append = false) {
                do_action( 'add_term_relationship', $object_id, $tt_id );
                $wpdb->insert( $wpdb->term_relationships, array( 'object_id' => $object_id, 'term_taxonomy_id' => $tt_id ) );
                do_action( 'added_term_relationship', $object_id, $tt_id );
                do_action( 'add_term_relationship', $object_id, $tt_id );
                $wpdb->insert( $wpdb->term_relationships, array( 'object_id' => $object_id, 'term_taxonomy_id' => $tt_id ) );
                do_action( 'added_term_relationship', $object_id, $tt_id );
+               $new_tt_ids[] = $tt_id;
        }
 
        }
 
-       wp_update_term_count($tt_ids, $taxonomy);
+       if ( $new_tt_ids )
+               wp_update_term_count( $new_tt_ids, $taxonomy );
 
        if ( ! $append ) {
                $delete_terms = array_diff($old_tt_ids, $tt_ids);
 
        if ( ! $append ) {
                $delete_terms = array_diff($old_tt_ids, $tt_ids);
@@ -2176,7 +2184,7 @@ function wp_set_object_terms($object_id, $terms, $taxonomy, $append = false) {
  * hierarchical and has a parent, it will append that parent to the $slug.
  *
  * If that still doesn't return an unique slug, then it try to append a number
  * hierarchical and has a parent, it will append that parent to the $slug.
  *
  * If that still doesn't return an unique slug, then it try to append a number
- * until it finds a number that is truely unique.
+ * until it finds a number that is truly unique.
  *
  * The only purpose for $term is for appending a parent, if one exists.
  *
  *
  * The only purpose for $term is for appending a parent, if one exists.
  *
@@ -2382,7 +2390,7 @@ function wp_defer_term_counting($defer=null) {
 /**
  * Updates the amount of terms in taxonomy.
  *
 /**
  * Updates the amount of terms in taxonomy.
  *
- * If there is a taxonomy callback applyed, then it will be called for updating
+ * If there is a taxonomy callback applied, then it will be called for updating
  * the count.
  *
  * The default action is to count what the amount of terms have the relationship
  * the count.
  *
  * The default action is to count what the amount of terms have the relationship
@@ -2441,14 +2449,19 @@ function wp_update_term_count_now( $terms, $taxonomy ) {
        if ( !empty($taxonomy->update_count_callback) ) {
                call_user_func($taxonomy->update_count_callback, $terms, $taxonomy);
        } else {
        if ( !empty($taxonomy->update_count_callback) ) {
                call_user_func($taxonomy->update_count_callback, $terms, $taxonomy);
        } else {
-               // Default count updater
-               foreach ( (array) $terms as $term) {
-                       $count = $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(*) FROM $wpdb->term_relationships WHERE term_taxonomy_id = %d", $term) );
-                       do_action( 'edit_term_taxonomy', $term, $taxonomy );
-                       $wpdb->update( $wpdb->term_taxonomy, compact( 'count' ), array( 'term_taxonomy_id' => $term ) );
-                       do_action( 'edited_term_taxonomy', $term, $taxonomy );
+               $object_types = (array) $taxonomy->object_type;
+               foreach ( $object_types as &$object_type ) {
+                       if ( 0 === strpos( $object_type, 'attachment:' ) )
+                               list( $object_type ) = explode( ':', $object_type );
                }
 
                }
 
+               if ( $object_types == array_filter( $object_types, 'post_type_exists' ) ) {
+                       // Only post types are attached to this taxonomy
+                       _update_post_term_count( $terms, $taxonomy );
+               } else {
+                       // Default count updater
+                       _update_generic_term_count( $terms, $taxonomy );
+               }
        }
 
        clean_term_cache($terms, '', false);
        }
 
        clean_term_cache($terms, '', false);
@@ -2803,8 +2816,8 @@ function _pad_term_counts(&$terms, $taxonomy) {
        // Touch every ancestor's lookup row for each post in each term
        foreach ( $term_ids as $term_id ) {
                $child = $term_id;
        // Touch every ancestor's lookup row for each post in each term
        foreach ( $term_ids as $term_id ) {
                $child = $term_id;
-               while ( $parent = $terms_by_id[$child]->parent ) {
-                       if ( !empty($term_items[$term_id]) )
+               while ( !empty( $terms_by_id[$child] ) && $parent = $terms_by_id[$child]->parent ) {
+                       if ( !empty( $term_items[$term_id] ) )
                                foreach ( $term_items[$term_id] as $item_id => $touches ) {
                                        $term_items[$parent][$item_id] = isset($term_items[$parent][$item_id]) ? ++$term_items[$parent][$item_id]: 1;
                                }
                                foreach ( $term_items[$term_id] as $item_id => $touches ) {
                                        $term_items[$parent][$item_id] = isset($term_items[$parent][$item_id]) ? ++$term_items[$parent][$item_id]: 1;
                                }
@@ -2840,17 +2853,62 @@ function _pad_term_counts(&$terms, $taxonomy) {
 function _update_post_term_count( $terms, $taxonomy ) {
        global $wpdb;
 
 function _update_post_term_count( $terms, $taxonomy ) {
        global $wpdb;
 
-       $object_types = is_array($taxonomy->object_type) ? $taxonomy->object_type : array($taxonomy->object_type);
-       $object_types = esc_sql($object_types);
+       $object_types = (array) $taxonomy->object_type;
+
+       foreach ( $object_types as &$object_type )
+               list( $object_type ) = explode( ':', $object_type );
+
+       $object_types = array_unique( $object_types );
+
+       if ( false !== ( $check_attachments = array_search( 'attachment', $object_types ) ) ) {
+               unset( $object_types[ $check_attachments ] );
+               $check_attachments = true;
+       }
+
+       if ( $object_types )
+               $object_types = esc_sql( array_filter( $object_types, 'post_type_exists' ) );
 
        foreach ( (array) $terms as $term ) {
 
        foreach ( (array) $terms as $term ) {
-               $count = $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(*) FROM $wpdb->term_relationships, $wpdb->posts WHERE $wpdb->posts.ID = $wpdb->term_relationships.object_id AND post_status = 'publish' AND post_type IN ('" . implode("', '", $object_types) . "') AND term_taxonomy_id = %d", $term ) );
+               $count = 0;
+
+               // Attachments can be 'inherit' status, we need to base count off the parent's status if so
+               if ( $check_attachments )
+                       $count += (int) $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(*) FROM $wpdb->term_relationships, $wpdb->posts p1 WHERE p1.ID = $wpdb->term_relationships.object_id AND ( post_status = 'publish' OR ( post_status = 'inherit' AND post_parent > 0 AND ( SELECT post_status FROM $wpdb->posts WHERE ID = p1.post_parent ) = 'publish' ) ) AND post_type = 'attachment' AND term_taxonomy_id = %d", $term ) );
+
+               if ( $object_types )
+                       $count += (int) $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(*) FROM $wpdb->term_relationships, $wpdb->posts WHERE $wpdb->posts.ID = $wpdb->term_relationships.object_id AND post_status = 'publish' AND post_type IN ('" . implode("', '", $object_types ) . "') AND term_taxonomy_id = %d", $term ) );
+
+
                do_action( 'edit_term_taxonomy', $term, $taxonomy );
                $wpdb->update( $wpdb->term_taxonomy, compact( 'count' ), array( 'term_taxonomy_id' => $term ) );
                do_action( 'edited_term_taxonomy', $term, $taxonomy );
        }
 }
 
                do_action( 'edit_term_taxonomy', $term, $taxonomy );
                $wpdb->update( $wpdb->term_taxonomy, compact( 'count' ), array( 'term_taxonomy_id' => $term ) );
                do_action( 'edited_term_taxonomy', $term, $taxonomy );
        }
 }
 
+/**
+ * Will update term count based on number of objects.
+ *
+ * Default callback for the link_category taxonomy.
+ *
+ * @package WordPress
+ * @subpackage Taxonomy
+ * @since 3.3.0
+ * @uses $wpdb
+ *
+ * @param array $terms List of Term taxonomy IDs
+ * @param object $taxonomy Current taxonomy object of terms
+ */
+function _update_generic_term_count( $terms, $taxonomy ) {
+       global $wpdb;
+
+       foreach ( (array) $terms as $term ) {
+               $count = $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(*) FROM $wpdb->term_relationships WHERE term_taxonomy_id = %d", $term ) );
+
+               do_action( 'edit_term_taxonomy', $term, $taxonomy );
+               $wpdb->update( $wpdb->term_taxonomy, compact( 'count' ), array( 'term_taxonomy_id' => $term ) );
+               do_action( 'edited_term_taxonomy', $term, $taxonomy );
+       }
+}
 
 /**
  * Generates a permalink for a taxonomy term archive.
 
 /**
  * Generates a permalink for a taxonomy term archive.
index 12ad736ebcf61d2ba85ed43e733b08fa8db13479..de4c1e9e719a5e66dc716d1d2379b018f95962d0 100644 (file)
@@ -8,7 +8,7 @@
  *
  */
 _deprecated_file( sprintf( __( 'Theme without %1$s' ), basename(__FILE__) ), '3.0', null, sprintf( __('Please include a %1$s template in your theme.'), basename(__FILE__) ) );
  *
  */
 _deprecated_file( sprintf( __( 'Theme without %1$s' ), basename(__FILE__) ), '3.0', null, sprintf( __('Please include a %1$s template in your theme.'), basename(__FILE__) ) );
-?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+?><!DOCTYPE html>
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
      <title><?php printf(__('%1$s - Comments on %2$s'), get_option('blogname'), the_title('','',false)); ?></title>
 <html xmlns="http://www.w3.org/1999/xhtml">
 <head>
      <title><?php printf(__('%1$s - Comments on %2$s'), get_option('blogname'), the_title('','',false)); ?></title>
@@ -95,7 +95,7 @@ if ( post_password_required($post) ) {  // and it doesn't match the cookie
        <p>
          <input type="hidden" name="comment_post_ID" value="<?php echo $id; ?>" />
          <input type="hidden" name="redirect_to" value="<?php echo esc_attr($_SERVER["REQUEST_URI"]); ?>" />
        <p>
          <input type="hidden" name="comment_post_ID" value="<?php echo $id; ?>" />
          <input type="hidden" name="redirect_to" value="<?php echo esc_attr($_SERVER["REQUEST_URI"]); ?>" />
-         <input name="submit" type="submit" tabindex="5" value="<?php _e('Say It!' ); ?>" />
+         <input name="submit" type="submit" tabindex="5" value="<?php esc_attr_e('Say It!' ); ?>" />
        </p>
        <?php do_action('comment_form', $post->ID); ?>
 </form>
        </p>
        <?php do_action('comment_form', $post->ID); ?>
 </form>
index c6fbb7fcd446733322c66bdbb50c94f776361ea5..5bbfe15790ba633d1f008463d3ad6ae6e73b6520 100644 (file)
@@ -70,7 +70,7 @@ _deprecated_file( sprintf( __( 'Theme without %1$s' ), basename(__FILE__) ), '3.
 
 <?php if ( is_user_logged_in() ) : ?>
 
 
 <?php if ( is_user_logged_in() ) : ?>
 
-<p><?php printf(__('Logged in as <a href="%1$s">%2$s</a>.'), get_option('siteurl') . '/wp-admin/profile.php', $user_identity); ?> <a href="<?php echo wp_logout_url(get_permalink()); ?>" title="<?php _e('Log out of this account'); ?>"><?php _e('Log out &raquo;'); ?></a></p>
+<p><?php printf(__('Logged in as <a href="%1$s">%2$s</a>.'), get_option('siteurl') . '/wp-admin/profile.php', $user_identity); ?> <a href="<?php echo wp_logout_url(get_permalink()); ?>" title="<?php esc_attr_e('Log out of this account'); ?>"><?php _e('Log out &raquo;'); ?></a></p>
 
 <?php else : ?>
 
 
 <?php else : ?>
 
@@ -89,7 +89,7 @@ _deprecated_file( sprintf( __( 'Theme without %1$s' ), basename(__FILE__) ), '3.
 
 <p><textarea name="comment" id="comment" cols="58" rows="10" tabindex="4"></textarea></p>
 
 
 <p><textarea name="comment" id="comment" cols="58" rows="10" tabindex="4"></textarea></p>
 
-<p><input name="submit" type="submit" id="submit" tabindex="5" value="<?php _e('Submit Comment'); ?>" />
+<p><input name="submit" type="submit" id="submit" tabindex="5" value="<?php esc_attr_e('Submit Comment'); ?>" />
 <?php comment_id_fields(); ?>
 </p>
 <?php do_action('comment_form', $post->ID); ?>
 <?php comment_id_fields(); ?>
 </p>
 <?php do_action('comment_form', $post->ID); ?>
index 7abaa02ff230101f397759eec166e7c7ab0013c2..6795b1653433cf0aa4bb4b1236f6f13553e989c3 100644 (file)
@@ -9,7 +9,7 @@
  */
 _deprecated_file( sprintf( __( 'Theme without %1$s' ), basename(__FILE__) ), '3.0', null, sprintf( __('Please include a %1$s template in your theme.'), basename(__FILE__) ) );
 ?>
  */
 _deprecated_file( sprintf( __( 'Theme without %1$s' ), basename(__FILE__) ), '3.0', null, sprintf( __('Please include a %1$s template in your theme.'), basename(__FILE__) ) );
 ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html>
 <html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>>
 
 <head profile="http://gmpg.org/xfn/11">
 <html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>>
 
 <head profile="http://gmpg.org/xfn/11">
index 9c8cf5b2976489435f6bf8189864f683c312fcc1..c703949c1965421a80e43e240315c68bb7cba233 100644 (file)
@@ -70,9 +70,9 @@ _deprecated_file( sprintf( __( 'Theme without %1$s' ), basename(__FILE__) ), '3.
                                <ul>
                                        <?php wp_register(); ?>
                                        <li><?php wp_loginout(); ?></li>
                                <ul>
                                        <?php wp_register(); ?>
                                        <li><?php wp_loginout(); ?></li>
-                                       <li><a href="http://validator.w3.org/check/referer" title="<?php _e('This page validates as XHTML 1.0 Transitional'); ?>"><?php _e('Valid <abbr title="eXtensible HyperText Markup Language">XHTML</abbr>'); ?></a></li>
-                                       <li><a href="http://gmpg.org/xfn/"><abbr title="<?php _e('XHTML Friends Network'); ?>"><?php _e('XFN'); ?></abbr></a></li>
-                                       <li><a href="http://wordpress.org/" title="<?php _e('Powered by WordPress, state-of-the-art semantic personal publishing platform.'); ?>">WordPress</a></li>
+                                       <li><a href="http://validator.w3.org/check/referer" title="<?php esc_attr_e('This page validates as XHTML 1.0 Transitional'); ?>"><?php _e('Valid <abbr title="eXtensible HyperText Markup Language">XHTML</abbr>'); ?></a></li>
+                                       <li><a href="http://gmpg.org/xfn/"><abbr title="<?php esc_attr_e('XHTML Friends Network'); ?>"><?php _e('XFN'); ?></abbr></a></li>
+                                       <li><a href="http://wordpress.org/" title="<?php esc_attr_e('Powered by WordPress, state-of-the-art semantic personal publishing platform.'); ?>">WordPress</a></li>
                                        <?php wp_meta(); ?>
                                </ul>
                                </li>
                                        <?php wp_meta(); ?>
                                </ul>
                                </li>
index 78d97395b51a128e8c0f402f8a556530d1aa98af..b132364b4b1caa42746a0f69c0f047de8a5680a6 100644 (file)
@@ -469,7 +469,7 @@ function get_themes() {
  *
  * @since 2.9.0
  *
  *
  * @since 2.9.0
  *
- * @return array|string An arry of theme roots keyed by template/stylesheet or a single theme root if all themes have the same root.
+ * @return array|string An array of theme roots keyed by template/stylesheet or a single theme root if all themes have the same root.
  */
 function get_theme_roots() {
        global $wp_theme_directories;
  */
 function get_theme_roots() {
        global $wp_theme_directories;
@@ -496,7 +496,7 @@ function get_theme_roots() {
 function get_theme($theme) {
        $themes = get_themes();
 
 function get_theme($theme) {
        $themes = get_themes();
 
-       if ( array_key_exists($theme, $themes) )
+       if ( is_array( $themes ) && array_key_exists( $theme, $themes ) )
                return $themes[$theme];
 
        return null;
                return $themes[$theme];
 
        return null;
@@ -518,12 +518,13 @@ function get_current_theme() {
                return $theme;
 
        $themes = get_themes();
                return $theme;
 
        $themes = get_themes();
-       $theme_names = array_keys($themes);
-       $current_template = get_option('template');
-       $current_stylesheet = get_option('stylesheet');
-       $current_theme = 'Twenty Ten';
+       $current_theme = 'Twenty Eleven';
 
        if ( $themes ) {
 
        if ( $themes ) {
+               $theme_names = array_keys( $themes );
+               $current_template = get_option( 'template' );
+               $current_stylesheet = get_option( 'stylesheet' );
+
                foreach ( (array) $theme_names as $theme_name ) {
                        if ( $themes[$theme_name]['Stylesheet'] == $current_stylesheet &&
                                        $themes[$theme_name]['Template'] == $current_template ) {
                foreach ( (array) $theme_names as $theme_name ) {
                        if ( $themes[$theme_name]['Stylesheet'] == $current_stylesheet &&
                                        $themes[$theme_name]['Template'] == $current_template ) {
@@ -1246,21 +1247,31 @@ function preview_theme_ob_filter_callback( $matches ) {
  * @param string $stylesheet Stylesheet name.
  */
 function switch_theme($template, $stylesheet) {
  * @param string $stylesheet Stylesheet name.
  */
 function switch_theme($template, $stylesheet) {
-       global $wp_theme_directories;
+       global $wp_theme_directories, $sidebars_widgets;
+
+       if ( is_array( $sidebars_widgets ) )
+               set_theme_mod( 'sidebars_widgets', array( 'time' => time(), 'data' => $sidebars_widgets ) );
+
+       $old_theme = get_current_theme();
 
        update_option('template', $template);
        update_option('stylesheet', $stylesheet);
 
        update_option('template', $template);
        update_option('stylesheet', $stylesheet);
+
        if ( count($wp_theme_directories) > 1 ) {
                update_option('template_root', get_raw_theme_root($template, true));
                update_option('stylesheet_root', get_raw_theme_root($stylesheet, true));
        }
        if ( count($wp_theme_directories) > 1 ) {
                update_option('template_root', get_raw_theme_root($template, true));
                update_option('stylesheet_root', get_raw_theme_root($stylesheet, true));
        }
+
        delete_option('current_theme');
        $theme = get_current_theme();
        delete_option('current_theme');
        $theme = get_current_theme();
+
        if ( is_admin() && false === get_option( "theme_mods_$stylesheet" ) ) {
                $default_theme_mods = (array) get_option( "mods_$theme" );
                add_option( "theme_mods_$stylesheet", $default_theme_mods );
        }
        if ( is_admin() && false === get_option( "theme_mods_$stylesheet" ) ) {
                $default_theme_mods = (array) get_option( "mods_$theme" );
                add_option( "theme_mods_$stylesheet", $default_theme_mods );
        }
-       do_action('switch_theme', $theme);
+
+       update_option( 'theme_switched', $old_theme );
+       do_action( 'switch_theme', $theme );
 }
 
 /**
 }
 
 /**
@@ -1718,7 +1729,7 @@ function add_custom_background( $header_callback = '', $admin_header_callback =
        if ( ! is_admin() )
                return;
        require_once( ABSPATH . 'wp-admin/custom-background.php' );
        if ( ! is_admin() )
                return;
        require_once( ABSPATH . 'wp-admin/custom-background.php' );
-       $GLOBALS['custom_background'] =& new Custom_Background( $admin_header_callback, $admin_image_div_callback );
+       $GLOBALS['custom_background'] = new Custom_Background( $admin_header_callback, $admin_image_div_callback );
        add_action( 'admin_menu', array( &$GLOBALS['custom_background'], 'init' ) );
 }
 
        add_action( 'admin_menu', array( &$GLOBALS['custom_background'], 'init' ) );
 }
 
@@ -1783,7 +1794,7 @@ function _custom_background_cb() {
        }
 ?>
 <style type="text/css">
        }
 ?>
 <style type="text/css">
-body { <?php echo trim( $style ); ?> }
+body.custom-background { <?php echo trim( $style ); ?> }
 </style>
 <?php
 }
 </style>
 <?php
 }
@@ -1936,10 +1947,14 @@ function current_theme_supports( $feature ) {
                        if ( true === $_wp_theme_features[$feature] )  // Registered for all types
                                return true;
                        $content_type = $args[0];
                        if ( true === $_wp_theme_features[$feature] )  // Registered for all types
                                return true;
                        $content_type = $args[0];
-                       if ( in_array($content_type, $_wp_theme_features[$feature][0]) )
-                               return true;
-                       else
-                               return false;
+                       return in_array( $content_type, $_wp_theme_features[$feature][0] );
+                       break;
+
+               case 'post-formats':
+                       // specific post formats can be registered by passing an array of types to
+                       // add_theme_support()
+                       $post_format = $args[0];
+                       return in_array( $post_format, $_wp_theme_features[$feature][0] );
                        break;
        }
 
                        break;
        }
 
@@ -1982,4 +1997,14 @@ function _delete_attachment_theme_mod( $id ) {
 
 add_action( 'delete_attachment', '_delete_attachment_theme_mod' );
 
 
 add_action( 'delete_attachment', '_delete_attachment_theme_mod' );
 
-?>
+/**
+ * Checks if a theme has been changed and runs 'after_switch_theme' hook on the next WP load
+ *
+ * @since 3.3
+ */
+function check_theme_switched() {
+       if ( false !== ( $old_theme = get_option( 'theme_switched' ) ) && !empty( $old_theme ) ) {
+               do_action( 'after_switch_theme', $old_theme );
+               update_option( 'theme_switched', false );
+       }
+}
index 6cb2337f3b14d11519d2c10b4be2f1269ce1454a..f832dc28501745d1c82e646485e6dac9d97693ab 100644 (file)
@@ -57,8 +57,18 @@ function wp_version_check() {
                $wp_install = home_url( '/' );
        }
 
                $wp_install = home_url( '/' );
        }
 
-       $local_package = isset( $wp_local_package )? $wp_local_package : '';
-       $url = "http://api.wordpress.org/core/version-check/1.6/?version=$wp_version&php=$php_version&locale=$locale&mysql=$mysql_version&local_package=$local_package&blogs=$num_blogs&users={$user_count['total_users']}&multisite_enabled=$multisite_enabled";
+       $query = array(
+               'version'           => $wp_version,
+               'php'               => $php_version,
+               'locale'            => $locale,
+               'mysql'             => $mysql_version,
+               'local_package'     => isset( $wp_local_package ) ? $wp_local_package : '',
+               'blogs'             => $num_blogs,
+               'users'             => $user_count['total_users'],
+               'multisite_enabled' => $multisite_enabled
+       );
+
+       $url = 'http://api.wordpress.org/core/version-check/1.6/?' . http_build_query( $query, null, '&' );
 
        $options = array(
                'timeout' => ( ( defined('DOING_CRON') && DOING_CRON ) ? 30 : 3 ),
 
        $options = array(
                'timeout' => ( ( defined('DOING_CRON') && DOING_CRON ) ? 30 : 3 ),
@@ -133,7 +143,8 @@ function wp_update_plugins() {
 
        $new_option = new stdClass;
        $new_option->last_checked = time();
 
        $new_option = new stdClass;
        $new_option->last_checked = time();
-       $timeout = 'load-plugins.php' == current_filter() ? 3600 : 43200; //Check for updated every 60 minutes if hitting the themes page, Else, check every 12 hours
+       // Check for updated every 60 minutes if hitting update pages; else, check every 12 hours.
+       $timeout = in_array( current_filter(), array( 'load-plugins.php', 'load-update.php', 'load-update-core.php' ) ) ? 3600 : 43200;
        $time_not_changed = isset( $current->last_checked ) && $timeout > ( time() - $current->last_checked );
 
        $plugin_changed = false;
        $time_not_changed = isset( $current->last_checked ) && $timeout > ( time() - $current->last_checked );
 
        $plugin_changed = false;
@@ -211,7 +222,8 @@ function wp_update_themes() {
        if ( ! is_object($last_update) )
                $last_update = new stdClass;
 
        if ( ! is_object($last_update) )
                $last_update = new stdClass;
 
-       $timeout = 'load-themes.php' == current_filter() ? 3600 : 43200; //Check for updated every 60 minutes if hitting the themes page, Else, check every 12 hours
+       // Check for updated every 60 minutes if hitting update pages; else, check every 12 hours.
+       $timeout = in_array( current_filter(), array( 'load-themes.php', 'load-update.php', 'load-update-core.php' ) ) ? 3600 : 43200;
        $time_not_changed = isset( $last_update->last_checked ) && $timeout > ( time( ) - $last_update->last_checked );
 
        $themes = array();
        $time_not_changed = isset( $last_update->last_checked ) && $timeout > ( time( ) - $last_update->last_checked );
 
        $themes = array();
@@ -280,6 +292,48 @@ function wp_update_themes() {
        set_site_transient( 'update_themes', $new_update );
 }
 
        set_site_transient( 'update_themes', $new_update );
 }
 
+/*
+ * Collect counts and UI strings for available updates
+ *
+ * @since 3.3.0
+ *
+ * @return array
+ */
+function wp_get_update_data() {
+       $counts = array( 'plugins' => 0, 'themes' => 0, 'wordpress' => 0 );
+
+       if ( current_user_can( 'update_plugins' ) ) {
+               $update_plugins = get_site_transient( 'update_plugins' );
+               if ( ! empty( $update_plugins->response ) )
+                       $counts['plugins'] = count( $update_plugins->response );
+       }
+
+       if ( current_user_can( 'update_themes' ) ) {
+               $update_themes = get_site_transient( 'update_themes' );
+               if ( ! empty( $update_themes->response ) )
+                       $counts['themes'] = count( $update_themes->response );
+       }
+
+       if ( function_exists( 'get_core_updates' ) && current_user_can( 'update_core' ) ) {
+               $update_wordpress = get_core_updates( array('dismissed' => false) );
+               if ( ! empty( $update_wordpress ) && ! in_array( $update_wordpress[0]->response, array('development', 'latest') ) && current_user_can('update_core') )
+                       $counts['wordpress'] = 1;
+       }
+
+       $counts['total'] = $counts['plugins'] + $counts['themes'] + $counts['wordpress'];
+       $update_title = array();
+       if ( $counts['wordpress'] )
+               $update_title[] = sprintf(__('%d WordPress Update'), $counts['wordpress']);
+       if ( $counts['plugins'] )
+               $update_title[] = sprintf(_n('%d Plugin Update', '%d Plugin Updates', $counts['plugins']), $counts['plugins']);
+       if ( $counts['themes'] )
+               $update_title[] = sprintf(_n('%d Theme Update', '%d Theme Updates', $counts['themes']), $counts['themes']);
+
+       $update_title = ! empty( $update_title ) ? esc_attr( implode( ', ', $update_title ) ) : '';
+
+       return array( 'counts' => $counts, 'title' => $update_title );
+}
+
 function _maybe_update_core() {
        include ABSPATH . WPINC . '/version.php'; // include an unmodified $wp_version
 
 function _maybe_update_core() {
        include ABSPATH . WPINC . '/version.php'; // include an unmodified $wp_version
 
@@ -343,7 +397,7 @@ function wp_schedule_update_checks() {
                wp_schedule_event(time(), 'twicedaily', 'wp_update_themes');
 }
 
                wp_schedule_event(time(), 'twicedaily', 'wp_update_themes');
 }
 
-if ( ! is_main_site() )
+if ( ! is_main_site() && ! is_network_admin() )
        return;
 
 add_action( 'admin_init', '_maybe_update_core' );
        return;
 
 add_action( 'admin_init', '_maybe_update_core' );
index af7f5de573b1069b1e6b471f96460fdc9a43995e..c4edb184863b65445ba22a96010a613f8cad1945 100644 (file)
@@ -61,7 +61,7 @@ function wp_signon( $credentials = '', $secure_cookie = '' ) {
        }
 
        wp_set_auth_cookie($user->ID, $credentials['remember'], $secure_cookie);
        }
 
        wp_set_auth_cookie($user->ID, $credentials['remember'], $secure_cookie);
-       do_action('wp_login', $credentials['user_login']);
+       do_action('wp_login', $user->user_login, $user);
        return $user;
 }
 
        return $user;
 }
 
@@ -88,7 +88,7 @@ function wp_authenticate_username_password($user, $username, $password) {
        $userdata = get_user_by('login', $username);
 
        if ( !$userdata )
        $userdata = get_user_by('login', $username);
 
        if ( !$userdata )
-               return new WP_Error('invalid_username', sprintf(__('<strong>ERROR</strong>: Invalid username. <a href="%s" title="Password Lost and Found">Lost your password</a>?'), site_url('wp-login.php?action=lostpassword', 'login')));
+               return new WP_Error('invalid_username', sprintf(__('<strong>ERROR</strong>: Invalid username. <a href="%s" title="Password Lost and Found">Lost your password</a>?'), wp_lostpassword_url()));
 
        if ( is_multisite() ) {
                // Is user marked as spam?
 
        if ( is_multisite() ) {
                // Is user marked as spam?
@@ -109,7 +109,7 @@ function wp_authenticate_username_password($user, $username, $password) {
 
        if ( !wp_check_password($password, $userdata->user_pass, $userdata->ID) )
                return new WP_Error( 'incorrect_password', sprintf( __( '<strong>ERROR</strong>: The password you entered for the username <strong>%1$s</strong> is incorrect. <a href="%2$s" title="Password Lost and Found">Lost your password</a>?' ),
 
        if ( !wp_check_password($password, $userdata->user_pass, $userdata->ID) )
                return new WP_Error( 'incorrect_password', sprintf( __( '<strong>ERROR</strong>: The password you entered for the username <strong>%1$s</strong> is incorrect. <a href="%2$s" title="Password Lost and Found">Lost your password</a>?' ),
-               $username, site_url( 'wp-login.php?action=lostpassword', 'login' ) ) );
+               $username, wp_lostpassword_url() ) );
 
        $user =  new WP_User($userdata->ID);
        return $user;
 
        $user =  new WP_User($userdata->ID);
        return $user;
@@ -254,20 +254,18 @@ function get_user_option( $option, $user = 0, $deprecated = '' ) {
        if ( !empty( $deprecated ) )
                _deprecated_argument( __FUNCTION__, '3.0' );
 
        if ( !empty( $deprecated ) )
                _deprecated_argument( __FUNCTION__, '3.0' );
 
-       if ( empty($user) ) {
+       if ( empty( $user ) )
                $user = wp_get_current_user();
                $user = wp_get_current_user();
-               $user = $user->ID;
-       }
-
-       $user = get_userdata($user);
+       else
+               $user = new WP_User( $user );
 
 
-       // Keys used as object vars cannot have dashes.
-       $key = str_replace('-', '', $option);
+       if ( ! isset( $user->ID ) )
+               return false;
 
 
-       if ( isset( $user->{$wpdb->prefix . $key} ) ) // Blog specific
-               $result = $user->{$wpdb->prefix . $key};
-       elseif ( isset( $user->{$key} ) ) // User specific and cross-blog
-               $result = $user->{$key};
+       if ( $user->has_prop( $wpdb->prefix . $option ) ) // Blog specific
+               $result = $user->get( $wpdb->prefix . $option );
+       elseif ( $user->has_prop( $option ) ) // User specific and cross-blog
+               $result = $user->get( $option );
        else
                $result = false;
 
        else
                $result = false;
 
@@ -647,16 +645,26 @@ function get_users( $args = array() ) {
  *
  * @since 3.0.0
  *
  *
  * @since 3.0.0
  *
- * @param int $id User Id
- * @param bool $all Whether to retrieve all blogs or only blogs that are not marked as deleted, archived, or spam.
+ * @param int $user_id User ID
+ * @param bool $all Whether to retrieve all blogs, or only blogs that are not marked as deleted, archived, or spam.
  * @return array A list of the user's blogs. False if the user was not found or an empty array if the user has no blogs.
  */
  * @return array A list of the user's blogs. False if the user was not found or an empty array if the user has no blogs.
  */
-function get_blogs_of_user( $id, $all = false ) {
+function get_blogs_of_user( $user_id, $all = false ) {
        global $wpdb;
 
        global $wpdb;
 
-       if ( !is_multisite() ) {
+       $user_id = (int) $user_id;
+
+       // Logged out users can't have blogs
+       if ( empty( $user_id ) )
+               return false;
+
+       $keys = get_user_meta( $user_id );
+       if ( empty( $keys ) )
+               return false;
+
+       if ( ! is_multisite() ) {
                $blog_id = get_current_blog_id();
                $blog_id = get_current_blog_id();
-               $blogs = array();
+               $blogs = array( $blog_id => new stdClass );
                $blogs[ $blog_id ]->userblog_id = $blog_id;
                $blogs[ $blog_id ]->blogname = get_option('blogname');
                $blogs[ $blog_id ]->domain = '';
                $blogs[ $blog_id ]->userblog_id = $blog_id;
                $blogs[ $blog_id ]->blogname = get_option('blogname');
                $blogs[ $blog_id ]->domain = '';
@@ -666,78 +674,76 @@ function get_blogs_of_user( $id, $all = false ) {
                return $blogs;
        }
 
                return $blogs;
        }
 
-       $blogs = wp_cache_get( 'blogs_of_user-' . $id, 'users' );
-
-       // Try priming the new cache from the old cache
-       if ( false === $blogs ) {
-               $cache_suffix = $all ? '_all' : '_short';
-               $blogs = wp_cache_get( 'blogs_of_user_' . $id . $cache_suffix, 'users' );
-               if ( is_array( $blogs ) ) {
-                       $blogs = array_keys( $blogs );
-                       if ( $all )
-                               wp_cache_set( 'blogs_of_user-' . $id, $blogs, 'users' );
+       $blogs = array();
+
+       if ( isset( $keys[ $wpdb->base_prefix . 'capabilities' ] ) && defined( 'MULTISITE' ) ) {
+               $blog = get_blog_details( 1 );
+               if ( $blog && isset( $blog->domain ) && ( $all || ( ! $blog->archived && ! $blog->spam && ! $blog->deleted ) ) ) {
+                       $blogs[ 1 ] = (object) array(
+                               'userblog_id' => 1,
+                               'blogname'    => $blog->blogname,
+                               'domain'      => $blog->domain,
+                               'path'        => $blog->path,
+                               'site_id'     => $blog->site_id,
+                               'siteurl'     => $blog->siteurl,
+                       );
                }
                }
+               unset( $keys[ $wpdb->base_prefix . 'capabilities' ] );
        }
 
        }
 
-       if ( false === $blogs ) {
-               $user = get_userdata( (int) $id );
-               if ( !$user )
-                       return false;
-
-               $blogs = $match = array();
-               $prefix_length = strlen($wpdb->base_prefix);
-               foreach ( (array) $user as $key => $value ) {
-                       if ( $prefix_length && substr($key, 0, $prefix_length) != $wpdb->base_prefix )
-                               continue;
-                       if ( substr($key, -12, 12) != 'capabilities' )
-                               continue;
-                       if ( preg_match( '/^' . $wpdb->base_prefix . '((\d+)_)?capabilities$/', $key, $match ) ) {
-                               if ( count( $match ) > 2 )
-                                       $blogs[] = (int) $match[ 2 ];
-                               else
-                                       $blogs[] = 1;
-                       }
-               }
-               wp_cache_set( 'blogs_of_user-' . $id, $blogs, 'users' );
-       }
+       $keys = array_keys( $keys );
+
+       foreach ( $keys as $key ) {
+               if ( 'capabilities' !== substr( $key, -12 ) )
+                       continue;
+               if ( 0 !== strpos( $key, $wpdb->base_prefix ) )
+                       continue;
+               $blog_id = str_replace( array( $wpdb->base_prefix, '_capabilities' ), '', $key );
+               if ( ! is_numeric( $blog_id ) )
+                       continue;
 
 
-       $blog_deets = array();
-       foreach ( (array) $blogs as $blog_id ) {
+               $blog_id = (int) $blog_id;
                $blog = get_blog_details( $blog_id );
                $blog = get_blog_details( $blog_id );
-               if ( $blog && isset( $blog->domain ) && ( $all == true || $all == false && ( $blog->archived == 0 && $blog->spam == 0 && $blog->deleted == 0 ) ) ) {
-                       $blog_deets[ $blog_id ]->userblog_id    = $blog_id;
-                       $blog_deets[ $blog_id ]->blogname               = $blog->blogname;
-                       $blog_deets[ $blog_id ]->domain         = $blog->domain;
-                       $blog_deets[ $blog_id ]->path                   = $blog->path;
-                       $blog_deets[ $blog_id ]->site_id                = $blog->site_id;
-                       $blog_deets[ $blog_id ]->siteurl                = $blog->siteurl;
+               if ( $blog && isset( $blog->domain ) && ( $all || ( ! $blog->archived && ! $blog->spam && ! $blog->deleted ) ) ) {
+                       $blogs[ $blog_id ] = (object) array(
+                               'userblog_id' => $blog_id,
+                               'blogname'    => $blog->blogname,
+                               'domain'      => $blog->domain,
+                               'path'        => $blog->path,
+                               'site_id'     => $blog->site_id,
+                               'siteurl'     => $blog->siteurl,
+                       );
                }
        }
 
                }
        }
 
-       return apply_filters( 'get_blogs_of_user', $blog_deets, $id, $all );
+       return apply_filters( 'get_blogs_of_user', $blogs, $user_id, $all );
 }
 
 /**
 }
 
 /**
- * Checks if the current user belong to a given blog.
+ * Find out whether a user is a member of a given blog.
  *
  *
- * @since 3.0.0
+ * @since MU 1.1
+ * @uses get_blogs_of_user()
  *
  *
- * @param int $blog_id Blog ID
- * @return bool True if the current users belong to $blog_id, false if not.
+ * @param int $user_id The unique ID of the user
+ * @param int $blog Optional. If no blog_id is provided, current site is used
+ * @return bool
  */
  */
-function is_blog_user( $blog_id = 0 ) {
-       global $wpdb;
-
-       $current_user = wp_get_current_user();
-       if ( !$blog_id )
-               $blog_id = $wpdb->blogid;
+function is_user_member_of_blog( $user_id = 0, $blog_id = 0 ) {
+       $user_id = (int) $user_id;
+       $blog_id = (int) $blog_id;
 
 
-       $cap_key = $wpdb->base_prefix . $blog_id . '_capabilities';
+       if ( empty( $user_id ) )
+               $user_id = get_current_user_id();
 
 
-       if ( is_array($current_user->$cap_key) && in_array(1, $current_user->$cap_key) )
-               return true;
+       if ( empty( $blog_id ) )
+               $blog_id = get_current_blog_id();
 
 
-       return false;
+       $blogs = get_blogs_of_user( $user_id );
+       if ( is_array( $blogs ) )
+               return array_key_exists( $blog_id, $blogs );
+       else
+               return false;
 }
 
 /**
 }
 
 /**
@@ -792,7 +798,7 @@ function delete_user_meta($user_id, $meta_key, $meta_value = '') {
  * @return mixed Will be an array if $single is false. Will be value of meta data field if $single
  *  is true.
  */
  * @return mixed Will be an array if $single is false. Will be value of meta data field if $single
  *  is true.
  */
-function get_user_meta($user_id, $key, $single = false) {
+function get_user_meta($user_id, $key = '', $single = false) {
        return get_metadata('user', $user_id, $key, $single);
 }
 
        return get_metadata('user', $user_id, $key, $single);
 }
 
@@ -1041,141 +1047,6 @@ function wp_dropdown_users( $args = '' ) {
        return $output;
 }
 
        return $output;
 }
 
-/**
- * Add user meta data as properties to given user object.
- *
- * The finished user data is cached, but the cache is not used to fill in the
- * user data for the given object. Once the function has been used, the cache
- * should be used to retrieve user data. The intention is if the current data
- * had been cached already, there would be no need to call this function.
- *
- * @access private
- * @since 2.5.0
- * @uses $wpdb WordPress database object for queries
- *
- * @param object $user The user data object.
- */
-function _fill_user( &$user ) {
-       $metavalues = get_user_metavalues(array($user->ID));
-       _fill_single_user($user, $metavalues[$user->ID]);
-}
-
-/**
- * Perform the query to get the $metavalues array(s) needed by _fill_user and _fill_many_users
- *
- * @since 3.0.0
- * @param array $ids User ID numbers list.
- * @return array of arrays. The array is indexed by user_id, containing $metavalues object arrays.
- */
-function get_user_metavalues($ids) {
-       $objects = array();
-
-       $ids = array_map('intval', $ids);
-       foreach ( $ids as $id )
-               $objects[$id] = array();
-
-       $metas = update_meta_cache('user', $ids);
-
-       foreach ( $metas as $id => $meta ) {
-               foreach ( $meta as $key => $metavalues ) {
-                       foreach ( $metavalues as $value ) {
-                               $objects[$id][] = (object)array( 'user_id' => $id, 'meta_key' => $key, 'meta_value' => $value);
-                       }
-               }
-       }
-
-       return $objects;
-}
-
-/**
- * Unserialize user metadata, fill $user object, then cache everything.
- *
- * @since 3.0.0
- * @param object $user The User object.
- * @param array $metavalues An array of objects provided by get_user_metavalues()
- */
-function _fill_single_user( &$user, &$metavalues ) {
-       global $wpdb;
-
-       foreach ( $metavalues as $meta ) {
-               $value = maybe_unserialize($meta->meta_value);
-               // Keys used as object vars cannot have dashes.
-               $key = str_replace('-', '', $meta->meta_key);
-               $user->{$key} = $value;
-       }
-
-       $level = $wpdb->prefix . 'user_level';
-       if ( isset( $user->{$level} ) )
-               $user->user_level = $user->{$level};
-
-       // For backwards compat.
-       if ( isset($user->first_name) )
-               $user->user_firstname = $user->first_name;
-       if ( isset($user->last_name) )
-               $user->user_lastname = $user->last_name;
-       if ( isset($user->description) )
-               $user->user_description = $user->description;
-
-       update_user_caches($user);
-}
-
-/**
- * Take an array of user objects, fill them with metas, and cache them.
- *
- * @since 3.0.0
- * @param array $users User objects
- */
-function _fill_many_users( &$users ) {
-       $ids = array();
-       foreach( $users as $user_object ) {
-               $ids[] = $user_object->ID;
-       }
-
-       $metas = get_user_metavalues($ids);
-
-       foreach ( $users as $user_object ) {
-               if ( isset($metas[$user_object->ID]) ) {
-                       _fill_single_user($user_object, $metas[$user_object->ID]);
-               }
-       }
-}
-
-/**
- * Sanitize every user field.
- *
- * If the context is 'raw', then the user object or array will get minimal santization of the int fields.
- *
- * @since 2.3.0
- * @uses sanitize_user_field() Used to sanitize the fields.
- *
- * @param object|array $user The User Object or Array
- * @param string $context Optional, default is 'display'. How to sanitize user fields.
- * @return object|array The now sanitized User Object or Array (will be the same type as $user)
- */
-function sanitize_user_object($user, $context = 'display') {
-       if ( is_object($user) ) {
-               if ( !isset($user->ID) )
-                       $user->ID = 0;
-               if ( isset($user->data) )
-                       $vars = get_object_vars( $user->data );
-               else
-                       $vars = get_object_vars($user);
-               foreach ( array_keys($vars) as $field ) {
-                       if ( is_string($user->$field) || is_numeric($user->$field) )
-                               $user->$field = sanitize_user_field($field, $user->$field, $user->ID, $context);
-               }
-               $user->filter = $context;
-       } else {
-               if ( !isset($user['ID']) )
-                       $user['ID'] = 0;
-               foreach ( array_keys($user) as $field )
-                       $user[$field] = sanitize_user_field($field, $user[$field], $user['ID'], $context);
-               $user['filter'] = $context;
-       }
-
-       return $user;
-}
-
 /**
  * Sanitize user field based on context.
  *
 /**
  * Sanitize user field based on context.
  *
@@ -1263,7 +1134,7 @@ function sanitize_user_field($field, $value, $user_id, $context) {
  *
  * @param object $user User object to be cached
  */
  *
  * @param object $user User object to be cached
  */
-function update_user_caches(&$user) {
+function update_user_caches($user) {
        wp_cache_add($user->ID, $user, 'users');
        wp_cache_add($user->user_login, $user->ID, 'userlogins');
        wp_cache_add($user->user_email, $user->ID, 'useremail');
        wp_cache_add($user->ID, $user, 'users');
        wp_cache_add($user->user_login, $user->ID, 'userlogins');
        wp_cache_add($user->user_email, $user->ID, 'useremail');
@@ -1278,13 +1149,12 @@ function update_user_caches(&$user) {
  * @param int $id User ID
  */
 function clean_user_cache($id) {
  * @param int $id User ID
  */
 function clean_user_cache($id) {
-       $user = new WP_User($id);
+       $user = WP_User::get_data_by( 'id', $id );
 
        wp_cache_delete($id, 'users');
        wp_cache_delete($user->user_login, 'userlogins');
        wp_cache_delete($user->user_email, 'useremail');
        wp_cache_delete($user->user_nicename, 'userslugs');
 
        wp_cache_delete($id, 'users');
        wp_cache_delete($user->user_login, 'userlogins');
        wp_cache_delete($user->user_email, 'useremail');
        wp_cache_delete($user->user_nicename, 'userslugs');
-       wp_cache_delete('blogs_of_user-' . $id, 'users');
 }
 
 /**
 }
 
 /**
@@ -1296,7 +1166,7 @@ function clean_user_cache($id) {
  * @return null|int The user's ID on success, and null on failure.
  */
 function username_exists( $username ) {
  * @return null|int The user's ID on success, and null on failure.
  */
 function username_exists( $username ) {
-       if ( $user = get_userdatabylogin( $username ) ) {
+       if ( $user = get_user_by('login', $username ) ) {
                return $user->ID;
        } else {
                return null;
                return $user->ID;
        } else {
                return null;
@@ -1313,7 +1183,7 @@ function username_exists( $username ) {
  * @return bool|int The user's ID on success, and false on failure.
  */
 function email_exists( $email ) {
  * @return bool|int The user's ID on success, and false on failure.
  */
 function email_exists( $email ) {
-       if ( $user = get_user_by_email($email) )
+       if ( $user = get_user_by('email', $email) )
                return $user->ID;
 
        return false;
                return $user->ID;
 
        return false;
@@ -1389,7 +1259,7 @@ function wp_insert_user($userdata) {
        if ( !empty($ID) ) {
                $ID = (int) $ID;
                $update = true;
        if ( !empty($ID) ) {
                $ID = (int) $ID;
                $update = true;
-               $old_user_data = get_userdata($ID);
+               $old_user_data = WP_User::get_data_by( 'id', $ID );
        } else {
                $update = false;
                // Hash the password
        } else {
                $update = false;
                // Hash the password
@@ -1462,9 +1332,6 @@ function wp_insert_user($userdata) {
        if ( empty($show_admin_bar_front) )
                $show_admin_bar_front = 'true';
 
        if ( empty($show_admin_bar_front) )
                $show_admin_bar_front = 'true';
 
-       if ( empty($show_admin_bar_admin) )
-               $show_admin_bar_admin = is_multisite() ? 'true' : 'false';
-
        $user_nicename_check = $wpdb->get_var( $wpdb->prepare("SELECT ID FROM $wpdb->users WHERE user_nicename = %s AND user_login != %s LIMIT 1" , $user_nicename, $user_login));
 
        if ( $user_nicename_check ) {
        $user_nicename_check = $wpdb->get_var( $wpdb->prepare("SELECT ID FROM $wpdb->users WHERE user_nicename = %s AND user_login != %s LIMIT 1" , $user_nicename, $user_login));
 
        if ( $user_nicename_check ) {
@@ -1488,24 +1355,11 @@ function wp_insert_user($userdata) {
                $user_id = (int) $wpdb->insert_id;
        }
 
                $user_id = (int) $wpdb->insert_id;
        }
 
-       update_user_meta( $user_id, 'first_name', $first_name );
-       update_user_meta( $user_id, 'last_name', $last_name );
-       update_user_meta( $user_id, 'nickname', $nickname );
-       update_user_meta( $user_id, 'description', $description );
-       update_user_meta( $user_id, 'rich_editing', $rich_editing );
-       update_user_meta( $user_id, 'comment_shortcuts', $comment_shortcuts );
-       update_user_meta( $user_id, 'admin_color', $admin_color );
-       update_user_meta( $user_id, 'use_ssl', $use_ssl );
-       update_user_meta( $user_id, 'show_admin_bar_front', $show_admin_bar_front );
-       update_user_meta( $user_id, 'show_admin_bar_admin', $show_admin_bar_admin );
+       $user = new WP_User( $user_id );
 
 
-       $user = new WP_User($user_id);
-
-       foreach ( _wp_get_user_contactmethods( $user ) as $method => $name ) {
-               if ( empty($$method) )
-                       $$method = '';
-
-               update_user_meta( $user_id, $method, $$method );
+       foreach ( _get_additional_user_keys( $user ) as $key ) {
+               if ( isset( $$key ) )
+                       update_user_meta( $user_id, $key, $$key );
        }
 
        if ( isset($role) )
        }
 
        if ( isset($role) )
@@ -1547,10 +1401,17 @@ function wp_update_user($userdata) {
        $ID = (int) $userdata['ID'];
 
        // First, get all of the original fields
        $ID = (int) $userdata['ID'];
 
        // First, get all of the original fields
-       $user = get_userdata($ID);
+       $user_obj = get_userdata( $ID );
+
+       $user = get_object_vars( $user_obj->data );
+
+       // Add additional custom fields
+       foreach ( _get_additional_user_keys( $user_obj ) as $key ) {
+               $user[ $key ] = get_user_meta( $ID, $key, true );
+       }
 
        // Escape data pulled from DB.
 
        // Escape data pulled from DB.
-       $user = add_magic_quotes(get_object_vars($user));
+       $user = add_magic_quotes( $user );
 
        // If password is changing, hash it now.
        if ( ! empty($userdata['user_pass']) ) {
 
        // If password is changing, hash it now.
        if ( ! empty($userdata['user_pass']) ) {
@@ -1566,7 +1427,7 @@ function wp_update_user($userdata) {
 
        // Update the cookies if the password changed.
        $current_user = wp_get_current_user();
 
        // Update the cookies if the password changed.
        $current_user = wp_get_current_user();
-       if ( $current_user->id == $ID ) {
+       if ( $current_user->ID == $ID ) {
                if ( isset($plaintext_pass) ) {
                        wp_clear_auth_cookie();
                        wp_set_auth_cookie($ID);
                if ( isset($plaintext_pass) ) {
                        wp_clear_auth_cookie();
                        wp_set_auth_cookie($ID);
@@ -1579,8 +1440,8 @@ function wp_update_user($userdata) {
 /**
  * A simpler way of inserting an user into the database.
  *
 /**
  * A simpler way of inserting an user into the database.
  *
- * Creates a new user with just the username, password, and email. For more
- * detail creation of a user, use wp_insert_user() to specify more infomation.
+ * Creates a new user with just the username, password, and email. For more
+ * complex user creation use wp_insert_user() to specify more information.
  *
  * @since 2.0.0
  * @see wp_insert_user() More complete way to create a new user
  *
  * @since 2.0.0
  * @see wp_insert_user() More complete way to create a new user
@@ -1600,6 +1461,20 @@ function wp_create_user($username, $password, $email = '') {
 }
 
 
 }
 
 
+/**
+ * Return a list of meta keys that wp_insert_user() is supposed to set.
+ *
+ * @access private
+ * @since 3.3.0
+ *
+ * @param object $user WP_User instance
+ * @return array
+ */
+function _get_additional_user_keys( $user ) {
+       $keys = array( 'first_name', 'last_name', 'nickname', 'description', 'rich_editing', 'comment_shortcuts', 'admin_color', 'use_ssl', 'show_admin_bar_front' );
+       return array_merge( $keys, array_keys( _wp_get_user_contactmethods( $user ) ) );
+}
+
 /**
  * Set up the default contact methods
  *
 /**
  * Set up the default contact methods
  *
index aca78f1f63ba33d00d1bee0cbdcf8c03dad040ad..3b824a959ab23881468d76c74c2676915df3e136 100644 (file)
  * @package WordPress
  */
 
  * @package WordPress
  */
 
+global $pagenow,
+       $is_lynx, $is_gecko, $is_winIE, $is_macIE, $is_opera, $is_NS4, $is_safari, $is_chrome, $is_iphone, $is_IE,
+       $is_apache, $is_IIS, $is_iis7;
+
 // On which page are we ?
 if ( is_admin() ) {
        // wp-admin pages are checked more carefully
        if ( is_network_admin() )
 // On which page are we ?
 if ( is_admin() ) {
        // wp-admin pages are checked more carefully
        if ( is_network_admin() )
-               preg_match('#/wp-admin/network/?(.*?)$#i', $PHP_SELF, $self_matches);
+               preg_match('#/wp-admin/network/?(.*?)$#i', $_SERVER['PHP_SELF'], $self_matches);
        elseif ( is_user_admin() )
        elseif ( is_user_admin() )
-               preg_match('#/wp-admin/user/?(.*?)$#i', $PHP_SELF, $self_matches);
+               preg_match('#/wp-admin/user/?(.*?)$#i', $_SERVER['PHP_SELF'], $self_matches);
        else
        else
-               preg_match('#/wp-admin/?(.*?)$#i', $PHP_SELF, $self_matches);
+               preg_match('#/wp-admin/?(.*?)$#i', $_SERVER['PHP_SELF'], $self_matches);
        $pagenow = $self_matches[1];
        $pagenow = trim($pagenow, '/');
        $pagenow = preg_replace('#\?.*?$#', '', $pagenow);
        $pagenow = $self_matches[1];
        $pagenow = trim($pagenow, '/');
        $pagenow = preg_replace('#\?.*?$#', '', $pagenow);
@@ -33,7 +37,7 @@ if ( is_admin() ) {
                        $pagenow .= '.php'; // for Options +Multiviews: /wp-admin/themes/index.php (themes.php is queried)
        }
 } else {
                        $pagenow .= '.php'; // for Options +Multiviews: /wp-admin/themes/index.php (themes.php is queried)
        }
 } else {
-       if ( preg_match('#([^/]+\.php)([?/].*?)?$#i', $PHP_SELF, $self_matches) )
+       if ( preg_match('#([^/]+\.php)([?/].*?)?$#i', $_SERVER['PHP_SELF'], $self_matches) )
                $pagenow = strtolower($self_matches[1]);
        else
                $pagenow = 'index.php';
                $pagenow = strtolower($self_matches[1]);
        else
                $pagenow = 'index.php';
@@ -94,4 +98,4 @@ $is_IIS = !$is_apache && (strpos($_SERVER['SERVER_SOFTWARE'], 'Microsoft-IIS') !
  */
 $is_iis7 = $is_IIS && (strpos($_SERVER['SERVER_SOFTWARE'], 'Microsoft-IIS/7.') !== false);
 
  */
 $is_iis7 = $is_IIS && (strpos($_SERVER['SERVER_SOFTWARE'], 'Microsoft-IIS/7.') !== false);
 
-?>
\ No newline at end of file
+?>
index 9d124d8d7a768ccbc5e22108101794e245c44b1f..4caf6fce74b21dacb40477452db98c7f54d0fc16 100644 (file)
@@ -4,21 +4,21 @@
  *
  * @global string $wp_version
  */
  *
  * @global string $wp_version
  */
-$wp_version = '3.2.1';
+$wp_version = '3.3';
 
 /**
  * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
  *
  * @global int $wp_db_version
  */
 
 /**
  * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
  *
  * @global int $wp_db_version
  */
-$wp_db_version = 18226;
+$wp_db_version = 19470;
 
 /**
  * Holds the TinyMCE version
  *
  * @global string $tinymce_version
  */
 
 /**
  * Holds the TinyMCE version
  *
  * @global string $tinymce_version
  */
-$tinymce_version = '342-20110630';
+$tinymce_version = '345-20111127';
 
 /**
  * Holds the cache manifest version
 
 /**
  * Holds the cache manifest version
index b90ffd6753d69f0309e05f94909d9b45bc97d62f..2dfafcb5da4bc65c26bc876d3fc4b3efb13d8fc7 100644 (file)
@@ -139,7 +139,7 @@ class WP_Widget {
                }
 
                if ( $empty ) {
                }
 
                if ( $empty ) {
-                       // If there are none, we register the widget's existance with a
+                       // If there are none, we register the widget's existence with a
                        // generic template
                        $this->_set(1);
                        $this->_register_one();
                        // generic template
                        $this->_set(1);
                        $this->_register_one();
@@ -296,8 +296,8 @@ class WP_Widget {
                if ( !is_array($settings) )
                        $settings = array();
 
                if ( !is_array($settings) )
                        $settings = array();
 
-               if ( !array_key_exists('_multiwidget', $settings) ) {
-                       // old format, conver if single widget
+               if ( !empty($settings) && !array_key_exists('_multiwidget', $settings) ) {
+                       // old format, convert if single widget
                        $settings = wp_convert_widget_settings($this->id_base, $this->option_name, $settings);
                }
 
                        $settings = wp_convert_widget_settings($this->id_base, $this->option_name, $settings);
                }
 
@@ -321,7 +321,7 @@ class WP_Widget_Factory {
        }
 
        function register($widget_class) {
        }
 
        function register($widget_class) {
-               $this->widgets[$widget_class] = new $widget_class();
+               $this->widgets[$widget_class] = new $widget_class();
        }
 
        function unregister($widget_class) {
        }
 
        function unregister($widget_class) {
@@ -385,7 +385,7 @@ $_wp_sidebars_widgets = array();
 /**
  * Private
  */
 /**
  * Private
  */
- $_wp_deprecated_widgets_callbacks = array(
+ $GLOBALS['_wp_deprecated_widgets_callbacks'] = array(
        'wp_widget_pages',
        'wp_widget_pages_control',
        'wp_widget_calendar',
        'wp_widget_pages',
        'wp_widget_pages_control',
        'wp_widget_calendar',
@@ -461,7 +461,7 @@ function unregister_widget($widget_class) {
  * The default for the name is "Sidebar #", with '#' being replaced with the
  * number the sidebar is currently when greater than one. If first sidebar, the
  * name will be just "Sidebar". The default for id is "sidebar-" followed by the
  * The default for the name is "Sidebar #", with '#' being replaced with the
  * number the sidebar is currently when greater than one. If first sidebar, the
  * name will be just "Sidebar". The default for id is "sidebar-" followed by the
- * number the sidebar creation is currently at. If the id is provided, and mutliple
+ * number the sidebar creation is currently at. If the id is provided, and multiple
  * sidebars are being defined, the id will have "-2" appended, and so on.
  *
  * @since 2.2.0
  * sidebars are being defined, the id will have "-2" appended, and so on.
  *
  * @since 2.2.0
@@ -547,6 +547,7 @@ function register_sidebar($args = array()) {
                'name' => sprintf(__('Sidebar %d'), $i ),
                'id' => "sidebar-$i",
                'description' => '',
                'name' => sprintf(__('Sidebar %d'), $i ),
                'id' => "sidebar-$i",
                'description' => '',
+               'class' => '',
                'before_widget' => '<li id="%1$s" class="widget %2$s">',
                'after_widget' => "</li>\n",
                'before_title' => '<h2 class="widgettitle">',
                'before_widget' => '<li id="%1$s" class="widget %2$s">',
                'after_widget' => "</li>\n",
                'before_title' => '<h2 class="widgettitle">',
@@ -997,7 +998,7 @@ function wp_get_sidebars_widgets($deprecated = true) {
        if ( $deprecated !== true )
                _deprecated_argument( __FUNCTION__, '2.8.1' );
 
        if ( $deprecated !== true )
                _deprecated_argument( __FUNCTION__, '2.8.1' );
 
-       global $wp_registered_widgets, $wp_registered_sidebars, $_wp_sidebars_widgets;
+       global $wp_registered_widgets, $_wp_sidebars_widgets, $sidebars_widgets;
 
        // If loading from front page, consult $_wp_sidebars_widgets rather than options
        // to see if wp_convert_widget_settings() has made manipulations in memory.
 
        // If loading from front page, consult $_wp_sidebars_widgets rather than options
        // to see if wp_convert_widget_settings() has made manipulations in memory.
@@ -1008,78 +1009,6 @@ function wp_get_sidebars_widgets($deprecated = true) {
                $sidebars_widgets = $_wp_sidebars_widgets;
        } else {
                $sidebars_widgets = get_option('sidebars_widgets', array());
                $sidebars_widgets = $_wp_sidebars_widgets;
        } else {
                $sidebars_widgets = get_option('sidebars_widgets', array());
-               $_sidebars_widgets = array();
-
-               if ( isset($sidebars_widgets['wp_inactive_widgets']) || empty($sidebars_widgets) )
-                       $sidebars_widgets['array_version'] = 3;
-               elseif ( !isset($sidebars_widgets['array_version']) )
-                       $sidebars_widgets['array_version'] = 1;
-
-               switch ( $sidebars_widgets['array_version'] ) {
-                       case 1 :
-                               foreach ( (array) $sidebars_widgets as $index => $sidebar )
-                               if ( is_array($sidebar) )
-                               foreach ( (array) $sidebar as $i => $name ) {
-                                       $id = strtolower($name);
-                                       if ( isset($wp_registered_widgets[$id]) ) {
-                                               $_sidebars_widgets[$index][$i] = $id;
-                                               continue;
-                                       }
-                                       $id = sanitize_title($name);
-                                       if ( isset($wp_registered_widgets[$id]) ) {
-                                               $_sidebars_widgets[$index][$i] = $id;
-                                               continue;
-                                       }
-
-                                       $found = false;
-
-                                       foreach ( $wp_registered_widgets as $widget_id => $widget ) {
-                                               if ( strtolower($widget['name']) == strtolower($name) ) {
-                                                       $_sidebars_widgets[$index][$i] = $widget['id'];
-                                                       $found = true;
-                                                       break;
-                                               } elseif ( sanitize_title($widget['name']) == sanitize_title($name) ) {
-                                                       $_sidebars_widgets[$index][$i] = $widget['id'];
-                                                       $found = true;
-                                                       break;
-                                               }
-                                       }
-
-                                       if ( $found )
-                                               continue;
-
-                                       unset($_sidebars_widgets[$index][$i]);
-                               }
-                               $_sidebars_widgets['array_version'] = 2;
-                               $sidebars_widgets = $_sidebars_widgets;
-                               unset($_sidebars_widgets);
-
-                       case 2 :
-                               $sidebars = array_keys( $wp_registered_sidebars );
-                               if ( !empty( $sidebars ) ) {
-                                       // Move the known-good ones first
-                                       foreach ( (array) $sidebars as $id ) {
-                                               if ( array_key_exists( $id, $sidebars_widgets ) ) {
-                                                       $_sidebars_widgets[$id] = $sidebars_widgets[$id];
-                                                       unset($sidebars_widgets[$id], $sidebars[$id]);
-                                               }
-                                       }
-
-                                       // move the rest to wp_inactive_widgets
-                                       if ( !isset($_sidebars_widgets['wp_inactive_widgets']) )
-                                               $_sidebars_widgets['wp_inactive_widgets'] = array();
-
-                                       if ( !empty($sidebars_widgets) ) {
-                                               foreach ( $sidebars_widgets as $lost => $val ) {
-                                                       if ( is_array($val) )
-                                                               $_sidebars_widgets['wp_inactive_widgets'] = array_merge( (array) $_sidebars_widgets['wp_inactive_widgets'], $val );
-                                               }
-                                       }
-
-                                       $sidebars_widgets = $_sidebars_widgets;
-                                       unset($_sidebars_widgets);
-                               }
-               }
        }
 
        if ( is_array( $sidebars_widgets ) && isset($sidebars_widgets['array_version']) )
        }
 
        if ( is_array( $sidebars_widgets ) && isset($sidebars_widgets['array_version']) )
@@ -1197,8 +1126,8 @@ function the_widget($widget, $instance = array(), $args = array()) {
        if ( !is_a($widget_obj, 'WP_Widget') )
                return;
 
        if ( !is_a($widget_obj, 'WP_Widget') )
                return;
 
-       $before_widget = sprintf('<div class="widget %s">', $widget_obj->widget_options['classname']);
-       $default_args = array('before_widget' => $before_widget, 'after_widget' => "</div>", 'before_title' => '<h2 class="widgettitle">', 'after_title' => '</h2>');
+       $before_widget = sprintf('<div class="widget %s">', $widget_obj->widget_options['classname'] );
+       $default_args = array( 'before_widget' => $before_widget, 'after_widget' => "</div>", 'before_title' => '<h2 class="widgettitle">', 'after_title' => '</h2>' );
 
        $args = wp_parse_args($args, $default_args);
        $instance = wp_parse_args($instance);
 
        $args = wp_parse_args($args, $default_args);
        $instance = wp_parse_args($instance);
@@ -1215,3 +1144,117 @@ function the_widget($widget, $instance = array(), $args = array()) {
 function _get_widget_id_base($id) {
        return preg_replace( '/-[0-9]+$/', '', $id );
 }
 function _get_widget_id_base($id) {
        return preg_replace( '/-[0-9]+$/', '', $id );
 }
+
+/**
+ * Handle sidebars config after theme change
+ *
+ * @access private
+ * @since 3.3
+ */
+function _wp_sidebars_changed() {
+       global $sidebars_widgets;
+
+       if ( ! is_array( $sidebars_widgets ) )
+               $sidebars_widgets = wp_get_sidebars_widgets();
+
+       retrieve_widgets(true);
+}
+
+// look for "lost" widgets, this has to run at least on each theme change
+function retrieve_widgets($theme_changed = false) {
+       global $wp_registered_widget_updates, $wp_registered_sidebars, $sidebars_widgets, $wp_registered_widgets;
+
+       $registered_sidebar_keys = array_keys( $wp_registered_sidebars );
+       $orphaned = 0;
+
+       $old_sidebars_widgets = get_theme_mod( 'sidebars_widgets' );
+       if ( is_array( $old_sidebars_widgets ) ) {
+               // time() that sidebars were stored is in $old_sidebars_widgets['time']
+               $_sidebars_widgets = $old_sidebars_widgets['data'];
+               remove_theme_mod( 'sidebars_widgets' );
+
+               foreach ( $_sidebars_widgets as $sidebar => $widgets ) {
+                       if ( 'wp_inactive_widgets' == $sidebar || 'orphaned_widgets' == substr( $sidebar, 0, 16 ) )
+                               continue;
+
+                       if ( !in_array( $sidebar, $registered_sidebar_keys ) ) {
+                               $_sidebars_widgets['orphaned_widgets_' . ++$orphaned] = $widgets;
+                               unset( $_sidebars_widgets[$sidebar] );
+                       }
+               }
+       } else {
+               if ( empty( $sidebars_widgets ) )
+                       return;
+
+               unset( $sidebars_widgets['array_version'] );
+
+               $old = array_keys($sidebars_widgets);
+               sort($old);
+               sort($registered_sidebar_keys);
+
+               if ( $old == $registered_sidebar_keys )
+                       return;
+
+               $_sidebars_widgets = array(
+                       'wp_inactive_widgets' => !empty( $sidebars_widgets['wp_inactive_widgets'] ) ? $sidebars_widgets['wp_inactive_widgets'] : array()
+               );
+
+               unset( $sidebars_widgets['wp_inactive_widgets'] );
+
+               foreach ( $wp_registered_sidebars as $id => $settings ) {
+                       if ( $theme_changed ) {
+                               $_sidebars_widgets[$id] = array_shift( $sidebars_widgets );
+                       } else {
+                               // no theme change, grab only sidebars that are currently registered
+                               if ( isset( $sidebars_widgets[$id] ) ) {
+                                       $_sidebars_widgets[$id] = $sidebars_widgets[$id];
+                                       unset( $sidebars_widgets[$id] );
+                               }
+                       }
+               }
+
+               foreach ( $sidebars_widgets as $val ) {
+                       if ( is_array($val) && ! empty( $val ) )
+                               $_sidebars_widgets['orphaned_widgets_' . ++$orphaned] = $val;
+               }
+       }
+
+       // discard invalid, theme-specific widgets from sidebars
+       $shown_widgets = array();
+
+       foreach ( $_sidebars_widgets as $sidebar => $widgets ) {
+               if ( !is_array($widgets) )
+                       continue;
+
+               $_widgets = array();
+               foreach ( $widgets as $widget ) {
+                       if ( isset($wp_registered_widgets[$widget]) )
+                               $_widgets[] = $widget;
+               }
+
+               $_sidebars_widgets[$sidebar] = $_widgets;
+               $shown_widgets = array_merge($shown_widgets, $_widgets);
+       }
+
+       $sidebars_widgets = $_sidebars_widgets;
+       unset($_sidebars_widgets, $_widgets);
+
+       // find hidden/lost multi-widget instances
+       $lost_widgets = array();
+       foreach ( $wp_registered_widgets as $key => $val ) {
+               if ( in_array($key, $shown_widgets, true) )
+                       continue;
+
+               $number = preg_replace('/.+?-([0-9]+)$/', '$1', $key);
+
+               if ( 2 > (int) $number )
+                       continue;
+
+               $lost_widgets[] = $key;
+       }
+
+       $sidebars_widgets['wp_inactive_widgets'] = array_merge($lost_widgets, (array) $sidebars_widgets['wp_inactive_widgets']);
+       wp_set_sidebars_widgets($sidebars_widgets);
+
+       return $sidebars_widgets;
+}
index 0cae3e638e2d626d0d6a55c17e3b77439d215da8..a1c0040fec7dc27353640ae42a8a28d2db4db51e 100644 (file)
@@ -71,9 +71,7 @@ class wpdb {
        /**
         * The last error during query.
         *
        /**
         * The last error during query.
         *
-        * @see get_last_error()
         * @since 2.5.0
         * @since 2.5.0
-        * @access private
         * @var string
         */
        var $last_error = '';
         * @var string
         */
        var $last_error = '';
@@ -460,6 +458,20 @@ class wpdb {
         */
        var $func_call;
 
         */
        var $func_call;
 
+       /**
+        * Whether MySQL is used as the database engine.
+        *
+        * Set in WPDB::db_connect() to true, by default. This is used when checking
+        * against the required MySQL version for WordPress. Normally, a replacement
+        * database drop-in (db.php) will skip these checks, but setting this to true
+        * will force the checks to occur.
+        *
+        * @since 3.3.0
+        * @access public
+        * @var bool
+        */
+       public $is_mysql = null;
+
        /**
         * Connects to the database server and selects a database
         *
        /**
         * Connects to the database server and selects a database
         *
@@ -555,6 +567,7 @@ class wpdb {
         * @since 2.5.0
         *
         * @param string $prefix Alphanumeric name for the new prefix.
         * @since 2.5.0
         *
         * @param string $prefix Alphanumeric name for the new prefix.
+        * @param bool $set_table_names Optional. Whether the table names, e.g. wpdb::$posts, should be updated or not.
         * @return string|WP_Error Old prefix or WP_Error on error
         */
        function set_prefix( $prefix, $set_table_names = true ) {
         * @return string|WP_Error Old prefix or WP_Error on error
         */
        function set_prefix( $prefix, $set_table_names = true ) {
@@ -640,7 +653,7 @@ class wpdb {
         * Returns an array of WordPress tables.
         *
         * Also allows for the CUSTOM_USER_TABLE and CUSTOM_USER_META_TABLE to
         * Returns an array of WordPress tables.
         *
         * Also allows for the CUSTOM_USER_TABLE and CUSTOM_USER_META_TABLE to
-        * override the WordPress users and usersmeta tables that would otherwise
+        * override the WordPress users and usermeta tables that would otherwise
         * be determined by the prefix.
         *
         * The scope argument can take one of the following:
         * be determined by the prefix.
         *
         * The scope argument can take one of the following:
@@ -726,7 +739,7 @@ class wpdb {
         * @param resource $dbh Optional link identifier.
         * @return null Always null.
         */
         * @param resource $dbh Optional link identifier.
         * @return null Always null.
         */
-       function select( $db, $dbh = null) {
+       function select( $db, $dbh = null ) {
                if ( is_null($dbh) )
                        $dbh = $this->dbh;
 
                if ( is_null($dbh) )
                        $dbh = $this->dbh;
 
@@ -842,14 +855,15 @@ class wpdb {
         * Prepares a SQL query for safe execution. Uses sprintf()-like syntax.
         *
         * The following directives can be used in the query format string:
         * Prepares a SQL query for safe execution. Uses sprintf()-like syntax.
         *
         * The following directives can be used in the query format string:
-        *   %d (decimal number)
+        *   %d (integer)
+        *   %f (float)
         *   %s (string)
         *   %% (literal percentage sign - no argument needed)
         *
         *   %s (string)
         *   %% (literal percentage sign - no argument needed)
         *
-        * Both %d and %s are to be left unquoted in the query string and they need an argument passed for them.
+        * All of %d, %f, and %s are to be left unquoted in the query string and they need an argument passed for them.
         * Literals (%) as parts of the query must be properly written as %%.
         *
         * Literals (%) as parts of the query must be properly written as %%.
         *
-        * This function only supports a small subset of the sprintf syntax; it only supports %d (decimal number), %s (string).
+        * This function only supports a small subset of the sprintf syntax; it only supports %d (integer), %f (float), and %s (string).
         * Does not support sign, padding, alignment, width or precision specifiers.
         * Does not support argument numbering/swapping.
         *
         * Does not support sign, padding, alignment, width or precision specifiers.
         * Does not support argument numbering/swapping.
         *
@@ -1013,6 +1027,9 @@ class wpdb {
         * @since 3.0.0
         */
        function db_connect() {
         * @since 3.0.0
         */
        function db_connect() {
+
+               $this->is_mysql = true;
+
                if ( WP_DEBUG ) {
                        $this->dbh = mysql_connect( $this->dbhost, $this->dbuser, $this->dbpassword, true );
                } else {
                if ( WP_DEBUG ) {
                        $this->dbh = mysql_connect( $this->dbhost, $this->dbuser, $this->dbpassword, true );
                } else {
@@ -1132,7 +1149,7 @@ class wpdb {
         * @param string $table table name
         * @param array $data Data to insert (in column => value pairs). Both $data columns and $data values should be "raw" (neither should be SQL escaped).
         * @param array|string $format Optional. An array of formats to be mapped to each of the value in $data. If string, that format will be used for all of the values in $data.
         * @param string $table table name
         * @param array $data Data to insert (in column => value pairs). Both $data columns and $data values should be "raw" (neither should be SQL escaped).
         * @param array|string $format Optional. An array of formats to be mapped to each of the value in $data. If string, that format will be used for all of the values in $data.
-        *      A format is one of '%d', '%s' (decimal number, string). If omitted, all values in $data will be treated as strings unless otherwise specified in wpdb::$field_types.
+        *      A format is one of '%d', '%f', '%s' (integer, float, string). If omitted, all values in $data will be treated as strings unless otherwise specified in wpdb::$field_types.
         * @return int|false The number of rows inserted, or false on error.
         */
        function insert( $table, $data, $format = null ) {
         * @return int|false The number of rows inserted, or false on error.
         */
        function insert( $table, $data, $format = null ) {
@@ -1155,7 +1172,7 @@ class wpdb {
         * @param string $table table name
         * @param array $data Data to insert (in column => value pairs). Both $data columns and $data values should be "raw" (neither should be SQL escaped).
         * @param array|string $format Optional. An array of formats to be mapped to each of the value in $data. If string, that format will be used for all of the values in $data.
         * @param string $table table name
         * @param array $data Data to insert (in column => value pairs). Both $data columns and $data values should be "raw" (neither should be SQL escaped).
         * @param array|string $format Optional. An array of formats to be mapped to each of the value in $data. If string, that format will be used for all of the values in $data.
-        *      A format is one of '%d', '%s' (decimal number, string). If omitted, all values in $data will be treated as strings unless otherwise specified in wpdb::$field_types.
+        *      A format is one of '%d', '%f', '%s' (integer, float, string). If omitted, all values in $data will be treated as strings unless otherwise specified in wpdb::$field_types.
         * @return int|false The number of rows affected, or false on error.
         */
        function replace( $table, $data, $format = null ) {
         * @return int|false The number of rows affected, or false on error.
         */
        function replace( $table, $data, $format = null ) {
@@ -1176,7 +1193,8 @@ class wpdb {
         * @param string $table table name
         * @param array $data Data to insert (in column => value pairs).  Both $data columns and $data values should be "raw" (neither should be SQL escaped).
         * @param array|string $format Optional. An array of formats to be mapped to each of the value in $data. If string, that format will be used for all of the values in $data.
         * @param string $table table name
         * @param array $data Data to insert (in column => value pairs).  Both $data columns and $data values should be "raw" (neither should be SQL escaped).
         * @param array|string $format Optional. An array of formats to be mapped to each of the value in $data. If string, that format will be used for all of the values in $data.
-        *      A format is one of '%d', '%s' (decimal number, string). If omitted, all values in $data will be treated as strings unless otherwise specified in wpdb::$field_types.
+        *      A format is one of '%d', '%f', '%s' (integer, float, string). If omitted, all values in $data will be treated as strings unless otherwise specified in wpdb::$field_types.
+        * @param string $type Optional. What type of operation is this? INSERT or REPLACE. Defaults to INSERT.
         * @return int|false The number of rows affected, or false on error.
         */
        function _insert_replace_helper( $table, $data, $format = null, $type = 'INSERT' ) {
         * @return int|false The number of rows affected, or false on error.
         */
        function _insert_replace_helper( $table, $data, $format = null, $type = 'INSERT' ) {
@@ -1215,8 +1233,8 @@ class wpdb {
         * @param array $data Data to update (in column => value pairs). Both $data columns and $data values should be "raw" (neither should be SQL escaped).
         * @param array $where A named array of WHERE clauses (in column => value pairs). Multiple clauses will be joined with ANDs. Both $where columns and $where values should be "raw".
         * @param array|string $format Optional. An array of formats to be mapped to each of the values in $data. If string, that format will be used for all of the values in $data.
         * @param array $data Data to update (in column => value pairs). Both $data columns and $data values should be "raw" (neither should be SQL escaped).
         * @param array $where A named array of WHERE clauses (in column => value pairs). Multiple clauses will be joined with ANDs. Both $where columns and $where values should be "raw".
         * @param array|string $format Optional. An array of formats to be mapped to each of the values in $data. If string, that format will be used for all of the values in $data.
-        *      A format is one of '%d', '%s' (decimal number, string). If omitted, all values in $data will be treated as strings unless otherwise specified in wpdb::$field_types.
-        * @param array|string $format_where Optional. An array of formats to be mapped to each of the values in $where. If string, that format will be used for all of the items in $where.  A format is one of '%d', '%s' (decimal number, string).  If omitted, all values in $where will be treated as strings.
+        *      A format is one of '%d', '%f', '%s' (integer, float, string). If omitted, all values in $data will be treated as strings unless otherwise specified in wpdb::$field_types.
+        * @param array|string $where_format Optional. An array of formats to be mapped to each of the values in $where. If string, that format will be used for all of the items in $where.  A format is one of '%d', '%f', '%s' (integer, float, string).  If omitted, all values in $where will be treated as strings.
         * @return int|false The number of rows updated, or false on error.
         */
        function update( $table, $data, $where, $format = null, $where_format = null ) {
         * @return int|false The number of rows updated, or false on error.
         */
        function update( $table, $data, $where, $format = null, $where_format = null ) {
@@ -1289,7 +1307,7 @@ class wpdb {
         * @param string $output Optional. one of ARRAY_A | ARRAY_N | OBJECT constants. Return an associative array (column => value, ...),
         *      a numerically indexed array (0 => value, ...) or an object ( ->column = value ), respectively.
         * @param int $y Optional. Row to return. Indexed from 0.
         * @param string $output Optional. one of ARRAY_A | ARRAY_N | OBJECT constants. Return an associative array (column => value, ...),
         *      a numerically indexed array (0 => value, ...) or an object ( ->column = value ), respectively.
         * @param int $y Optional. Row to return. Indexed from 0.
-        * @return mixed Database query result in format specifed by $output or null on failure
+        * @return mixed Database query result in format specified by $output or null on failure
         */
        function get_row( $query = null, $output = OBJECT, $y = 0 ) {
                $this->func_call = "\$db->get_row(\"$query\",$output,$y)";
         */
        function get_row( $query = null, $output = OBJECT, $y = 0 ) {
                $this->func_call = "\$db->get_row(\"$query\",$output,$y)";
@@ -1366,7 +1384,8 @@ class wpdb {
                        // Return an array of row objects with keys from column 1
                        // (Duplicates are discarded)
                        foreach ( $this->last_result as $row ) {
                        // Return an array of row objects with keys from column 1
                        // (Duplicates are discarded)
                        foreach ( $this->last_result as $row ) {
-                               $key = array_shift( get_object_vars( $row ) );
+                               $var_by_ref = get_object_vars( $row );
+                               $key = array_shift( $var_by_ref );
                                if ( ! isset( $new_array[ $key ] ) )
                                        $new_array[ $key ] = $row;
                        }
                                if ( ! isset( $new_array[ $key ] ) )
                                        $new_array[ $key ] = $row;
                        }
index 8c23992f1d79985dfc712a357b85d0a24b87c278..b9ae7e8a0891b06e0ab38158dd2e471b753deb29 100644 (file)
@@ -53,7 +53,7 @@ if ( file_exists( ABSPATH . 'wp-config.php') ) {
        require_once( ABSPATH . '/wp-includes/functions.php' );
        require_once( ABSPATH . '/wp-includes/plugin.php' );
        $text_direction = /*WP_I18N_TEXT_DIRECTION*/'ltr'/*/WP_I18N_TEXT_DIRECTION*/;
        require_once( ABSPATH . '/wp-includes/functions.php' );
        require_once( ABSPATH . '/wp-includes/plugin.php' );
        $text_direction = /*WP_I18N_TEXT_DIRECTION*/'ltr'/*/WP_I18N_TEXT_DIRECTION*/;
-       wp_die(sprintf(/*WP_I18N_NO_CONFIG*/"There doesn't seem to be a <code>wp-config.php</code> file. I need this before we can get started. Need more help? <a href='http://codex.wordpress.org/Editing_wp-config.php'>We got it</a>. You can create a <code>wp-config.php</code> file through a web interface, but this doesn't work for all server setups. The safest way is to manually create the file.</p><p><a href='%ssetup-config.php' class='button'>Create a Configuration File</a>"/*/WP_I18N_NO_CONFIG*/, $path), /*WP_I18N_ERROR_TITLE*/'WordPress &rsaquo; Error'/*/WP_I18N_ERROR_TITLE*/, array('text_direction' => $text_direction));
+       wp_die(sprintf(/*WP_I18N_NO_CONFIG*/"<p>There doesn't seem to be a <code>wp-config.php</code> file. I need this before we can get started.</p> <p>Need more help? <a href='http://codex.wordpress.org/Editing_wp-config.php'>We got it</a>.</p> <p>You can create a <code>wp-config.php</code> file through a web interface, but this doesn't work for all server setups. The safest way is to manually create the file.</p><p><a href='%ssetup-config.php' class='button'>Create a Configuration File</a></p>"/*/WP_I18N_NO_CONFIG*/, $path), /*WP_I18N_ERROR_TITLE*/'WordPress &rsaquo; Error'/*/WP_I18N_ERROR_TITLE*/, array('text_direction' => $text_direction));
 
 }
 
 
 }
 
index ffa00ab070472057220def18486eb532a3f0a5e0..efd03736552e35f0a6790b6c043f4becbe3d35b1 100644 (file)
@@ -42,8 +42,7 @@ function login_header($title = 'Log In', $message = '', $wp_error = '') {
        global $error, $is_iphone, $interim_login, $current_site;
 
        // Don't index any of these forms
        global $error, $is_iphone, $interim_login, $current_site;
 
        // Don't index any of these forms
-       add_filter( 'pre_option_blog_public', '__return_zero' );
-       add_action( 'login_head', 'noindex' );
+       add_action( 'login_head', 'wp_no_robots' );
 
        if ( empty($wp_error) )
                $wp_error = new WP_Error();
 
        if ( empty($wp_error) )
                $wp_error = new WP_Error();
@@ -56,25 +55,22 @@ function login_header($title = 'Log In', $message = '', $wp_error = '') {
                add_action( 'login_head', 'wp_shake_js', 12 );
 
        ?>
                add_action( 'login_head', 'wp_shake_js', 12 );
 
        ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!DOCTYPE html>
 <html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>>
 <head>
        <meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" />
        <title><?php bloginfo('name'); ?> &rsaquo; <?php echo $title; ?></title>
 <?php
 <html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>>
 <head>
        <meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" />
        <title><?php bloginfo('name'); ?> &rsaquo; <?php echo $title; ?></title>
 <?php
-       wp_admin_css( 'login', true );
+       wp_admin_css( 'wp-admin', true );
        wp_admin_css( 'colors-fresh', true );
 
        if ( $is_iphone ) { ?>
        <meta name="viewport" content="width=320; initial-scale=0.9; maximum-scale=1.0; user-scalable=0;" />
        <style type="text/css" media="screen">
        wp_admin_css( 'colors-fresh', true );
 
        if ( $is_iphone ) { ?>
        <meta name="viewport" content="width=320; initial-scale=0.9; maximum-scale=1.0; user-scalable=0;" />
        <style type="text/css" media="screen">
-       form { margin-left: 0px; }
-       #login { margin-top: 20px; }
-       </style>
-<?php
-       } elseif ( isset($interim_login) && $interim_login ) { ?>
-       <style type="text/css" media="all">
-       .login #login { margin: 20px auto; }
+       .login form, .login .message, #login_error { margin-left: 0px; }
+       .login #nav, .login #backtoblog { margin-left: 8px; }
+       .login h1 a { width: auto; }
+       #login { padding: 20px 0; }
        </style>
 <?php
        }
        </style>
 <?php
        }
@@ -84,9 +80,9 @@ function login_header($title = 'Log In', $message = '', $wp_error = '') {
 </head>
 <body class="login">
 <?php   if ( !is_multisite() ) { ?>
 </head>
 <body class="login">
 <?php   if ( !is_multisite() ) { ?>
-<div id="login"><h1><a href="<?php echo apply_filters('login_headerurl', 'http://wordpress.org/'); ?>" title="<?php echo apply_filters('login_headertitle', esc_attr__('Powered by WordPress')); ?>"><?php bloginfo('name'); ?></a></h1>
+<div id="login"><h1><a href="<?php echo esc_url( apply_filters('login_headerurl', 'http://wordpress.org/') ); ?>" title="<?php echo esc_attr( apply_filters('login_headertitle', __( 'Powered by WordPress' ) ) ); ?>"><?php bloginfo('name'); ?></a></h1>
 <?php   } else { ?>
 <?php   } else { ?>
-<div id="login"><h1><a href="<?php echo apply_filters('login_headerurl', network_home_url() ); ?>" title="<?php echo apply_filters('login_headertitle', esc_attr($current_site->site_name) ); ?>"><span class="hide"><?php bloginfo('name'); ?></span></a></h1>
+<div id="login"><h1><a href="<?php echo esc_url( apply_filters('login_headerurl', network_home_url() ) ); ?>" title="<?php echo esc_attr( apply_filters('login_headertitle', $current_site->site_name ) ); ?>"><span class="hide"><?php bloginfo('name'); ?></span></a></h1>
 <?php   }
 
        $message = apply_filters('login_message', $message);
 <?php   }
 
        $message = apply_filters('login_message', $message);
@@ -124,7 +120,7 @@ function login_header($title = 'Log In', $message = '', $wp_error = '') {
  */
 function login_footer($input_id = '') {
        ?>
  */
 function login_footer($input_id = '') {
        ?>
-       <p id="backtoblog"><a href="<?php bloginfo('url'); ?>/" title="<?php esc_attr_e('Are you lost?') ?>"><?php printf(__('&larr; Back to %s'), get_bloginfo('title', 'display' )); ?></a></p>
+       <p id="backtoblog"><a href="<?php echo esc_url( home_url( '/' ) ); ?>" title="<?php esc_attr_e( 'Are you lost?' ); ?>"><?php printf( __( '&larr; Back to %s' ), get_bloginfo( 'title', 'display' ) ); ?></a></p>
        </div>
 
 <?php if ( !empty($input_id) ) : ?>
        </div>
 
 <?php if ( !empty($input_id) ) : ?>
@@ -135,6 +131,7 @@ if(typeof wpOnload=='function')wpOnload();
 <?php endif; ?>
 
 <?php do_action('login_footer'); ?>
 <?php endif; ?>
 
 <?php do_action('login_footer'); ?>
+<div class="clear"></div>
 </body>
 </html>
 <?php
 </body>
 </html>
 <?php
@@ -167,16 +164,15 @@ function retrieve_password() {
 
        $errors = new WP_Error();
 
 
        $errors = new WP_Error();
 
-       if ( empty( $_POST['user_login'] ) && empty( $_POST['user_email'] ) )
+       if ( empty( $_POST['user_login'] ) ) {
                $errors->add('empty_username', __('<strong>ERROR</strong>: Enter a username or e-mail address.'));
                $errors->add('empty_username', __('<strong>ERROR</strong>: Enter a username or e-mail address.'));
-
-       if ( strpos($_POST['user_login'], '@') ) {
-               $user_data = get_user_by_email(trim($_POST['user_login']));
-               if ( empty($user_data) )
+       } else if ( strpos( $_POST['user_login'], '@' ) ) {
+               $user_data = get_user_by( 'email', trim( $_POST['user_login'] ) );
+               if ( empty( $user_data ) )
                        $errors->add('invalid_email', __('<strong>ERROR</strong>: There is no user registered with that email address.'));
        } else {
                $login = trim($_POST['user_login']);
                        $errors->add('invalid_email', __('<strong>ERROR</strong>: There is no user registered with that email address.'));
        } else {
                $login = trim($_POST['user_login']);
-               $user_data = get_userdatabylogin($login);
+               $user_data = get_user_by('login', $login);
        }
 
        do_action('lostpassword_post');
        }
 
        do_action('lostpassword_post');
@@ -405,9 +401,9 @@ case 'retrievepassword' :
 
 ?>
 
 
 ?>
 
-<form name="lostpasswordform" id="lostpasswordform" action="<?php echo site_url('wp-login.php?action=lostpassword', 'login_post') ?>" method="post">
+<form name="lostpasswordform" id="lostpasswordform" action="<?php echo esc_url( site_url( 'wp-login.php?action=lostpassword', 'login_post' ) ); ?>" method="post">
        <p>
        <p>
-               <label><?php _e('Username or E-mail:') ?><br />
+               <label for="user_login" ><?php _e('Username or E-mail:') ?><br />
                <input type="text" name="user_login" id="user_login" class="input" value="<?php echo esc_attr($user_login); ?>" size="20" tabindex="10" /></label>
        </p>
 <?php do_action('lostpassword_form'); ?>
                <input type="text" name="user_login" id="user_login" class="input" value="<?php echo esc_attr($user_login); ?>" size="20" tabindex="10" /></label>
        </p>
 <?php do_action('lostpassword_form'); ?>
@@ -416,9 +412,9 @@ case 'retrievepassword' :
 </form>
 
 <p id="nav">
 </form>
 
 <p id="nav">
-<a href="<?php echo site_url('wp-login.php', 'login') ?>"><?php _e('Log in') ?></a>
-<?php if (get_option('users_can_register')) : ?>
- | <a href="<?php echo site_url('wp-login.php?action=register', 'login') ?>"><?php _e('Register') ?></a>
+<a href="<?php echo esc_url( wp_login_url() ); ?>"><?php _e('Log in') ?></a>
+<?php if ( get_option( 'users_can_register' ) ) : ?>
+ | <a href="<?php echo esc_url( site_url( 'wp-login.php?action=register', 'login' ) ); ?>"><?php _e( 'Register' ); ?></a>
 <?php endif; ?>
 </p>
 
 <?php endif; ?>
 </p>
 
@@ -441,7 +437,7 @@ case 'rp' :
                $errors = new WP_Error('password_reset_mismatch', __('The passwords do not match.'));
        } elseif ( isset($_POST['pass1']) && !empty($_POST['pass1']) ) {
                reset_password($user, $_POST['pass1']);
                $errors = new WP_Error('password_reset_mismatch', __('The passwords do not match.'));
        } elseif ( isset($_POST['pass1']) && !empty($_POST['pass1']) ) {
                reset_password($user, $_POST['pass1']);
-               login_header(__('Password Reset'), '<p class="message reset-pass">' . __('Your password has been reset.') . ' <a href="' . site_url('wp-login.php', 'login') . '">' . __('Log in') . '</a></p>');
+               login_header( __( 'Password Reset' ), '<p class="message reset-pass">' . __( 'Your password has been reset.' ) . ' <a href="' . esc_url( wp_login_url() ) . '">' . __( 'Log in' ) . '</a></p>' );
                login_footer();
                exit;
        }
                login_footer();
                exit;
        }
@@ -452,15 +448,15 @@ case 'rp' :
        login_header(__('Reset Password'), '<p class="message reset-pass">' . __('Enter your new password below.') . '</p>', $errors );
 
 ?>
        login_header(__('Reset Password'), '<p class="message reset-pass">' . __('Enter your new password below.') . '</p>', $errors );
 
 ?>
-<form name="resetpassform" id="resetpassform" action="<?php echo site_url('wp-login.php?action=resetpass&key=' . urlencode($_GET['key']) . '&login=' . urlencode($_GET['login']), 'login_post') ?>" method="post">
+<form name="resetpassform" id="resetpassform" action="<?php echo esc_url( site_url( 'wp-login.php?action=resetpass&key=' . urlencode( $_GET['key'] ) . '&login=' . urlencode( $_GET['login'] ), 'login_post' ) ); ?>" method="post">
        <input type="hidden" id="user_login" value="<?php echo esc_attr( $_GET['login'] ); ?>" autocomplete="off" />
 
        <p>
        <input type="hidden" id="user_login" value="<?php echo esc_attr( $_GET['login'] ); ?>" autocomplete="off" />
 
        <p>
-               <label><?php _e('New password') ?><br />
+               <label for="pass1"><?php _e('New password') ?><br />
                <input type="password" name="pass1" id="pass1" class="input" size="20" value="" autocomplete="off" /></label>
        </p>
        <p>
                <input type="password" name="pass1" id="pass1" class="input" size="20" value="" autocomplete="off" /></label>
        </p>
        <p>
-               <label><?php _e('Confirm new password') ?><br />
+               <label for="pass2"><?php _e('Confirm new password') ?><br />
                <input type="password" name="pass2" id="pass2" class="input" size="20" value="" autocomplete="off" /></label>
        </p>
 
                <input type="password" name="pass2" id="pass2" class="input" size="20" value="" autocomplete="off" /></label>
        </p>
 
@@ -472,9 +468,9 @@ case 'rp' :
 </form>
 
 <p id="nav">
 </form>
 
 <p id="nav">
-<a href="<?php echo site_url('wp-login.php', 'login') ?>"><?php _e('Log in') ?></a>
-<?php if (get_option('users_can_register')) : ?>
- | <a href="<?php echo site_url('wp-login.php?action=register', 'login') ?>"><?php _e('Register') ?></a>
+<a href="<?php echo esc_url( wp_login_url() ); ?>"><?php _e( 'Log in' ); ?></a>
+<?php if ( get_option( 'users_can_register' ) ) : ?>
+ | <a href="<?php echo esc_url( site_url( 'wp-login.php?action=register', 'login' ) ); ?>"><?php _e( 'Register' ); ?></a>
 <?php endif; ?>
 </p>
 
 <?php endif; ?>
 </p>
 
@@ -511,14 +507,14 @@ case 'register' :
        login_header(__('Registration Form'), '<p class="message register">' . __('Register For This Site') . '</p>', $errors);
 ?>
 
        login_header(__('Registration Form'), '<p class="message register">' . __('Register For This Site') . '</p>', $errors);
 ?>
 
-<form name="registerform" id="registerform" action="<?php echo site_url('wp-login.php?action=register', 'login_post') ?>" method="post">
+<form name="registerform" id="registerform" action="<?php echo esc_url( site_url('wp-login.php?action=register', 'login_post') ); ?>" method="post">
        <p>
        <p>
-               <label><?php _e('Username') ?><br />
+               <label for="user_login"><?php _e('Username') ?><br />
                <input type="text" name="user_login" id="user_login" class="input" value="<?php echo esc_attr(stripslashes($user_login)); ?>" size="20" tabindex="10" /></label>
        </p>
        <p>
                <input type="text" name="user_login" id="user_login" class="input" value="<?php echo esc_attr(stripslashes($user_login)); ?>" size="20" tabindex="10" /></label>
        </p>
        <p>
-               <label><?php _e('E-mail') ?><br />
-               <input type="text" name="user_email" id="user_email" class="input" value="<?php echo esc_attr(stripslashes($user_email)); ?>" size="25" tabindex="20" /></label>
+               <label for="user_email"><?php _e('E-mail') ?><br />
+               <input type="email" name="user_email" id="user_email" class="input" value="<?php echo esc_attr(stripslashes($user_email)); ?>" size="25" tabindex="20" /></label>
        </p>
 <?php do_action('register_form'); ?>
        <p id="reg_passmail"><?php _e('A password will be e-mailed to you.') ?></p>
        </p>
 <?php do_action('register_form'); ?>
        <p id="reg_passmail"><?php _e('A password will be e-mailed to you.') ?></p>
@@ -528,8 +524,8 @@ case 'register' :
 </form>
 
 <p id="nav">
 </form>
 
 <p id="nav">
-<a href="<?php echo site_url('wp-login.php', 'login') ?>"><?php _e('Log in') ?></a> |
-<a href="<?php echo site_url('wp-login.php?action=lostpassword', 'login') ?>" title="<?php _e('Password Lost and Found') ?>"><?php _e('Lost your password?') ?></a>
+<a href="<?php echo esc_url( wp_login_url() ); ?>"><?php _e( 'Log in' ); ?></a> |
+<a href="<?php echo esc_url( wp_lostpassword_url() ); ?>" title="<?php esc_attr_e( 'Password Lost and Found' ) ?>"><?php _e( 'Lost your password?' ); ?></a>
 </p>
 
 <?php
 </p>
 
 <?php
@@ -544,7 +540,7 @@ default:
        // If the user wants ssl but the session is not ssl, force a secure cookie.
        if ( !empty($_POST['log']) && !force_ssl_admin() ) {
                $user_name = sanitize_user($_POST['log']);
        // If the user wants ssl but the session is not ssl, force a secure cookie.
        if ( !empty($_POST['log']) && !force_ssl_admin() ) {
                $user_name = sanitize_user($_POST['log']);
-               if ( $user = get_userdatabylogin($user_name) ) {
+               if ( $user = get_user_by('login', $user_name) ) {
                        if ( get_user_option('use_ssl', $user->ID) ) {
                                $secure_cookie = true;
                                force_ssl_admin(true);
                        if ( get_user_option('use_ssl', $user->ID) ) {
                                $secure_cookie = true;
                                force_ssl_admin(true);
@@ -586,10 +582,10 @@ default:
 
                if ( ( empty( $redirect_to ) || $redirect_to == 'wp-admin/' || $redirect_to == admin_url() ) ) {
                        // If the user doesn't belong to a blog, send them to user admin. If the user can't edit posts, send them to their profile.
 
                if ( ( empty( $redirect_to ) || $redirect_to == 'wp-admin/' || $redirect_to == admin_url() ) ) {
                        // If the user doesn't belong to a blog, send them to user admin. If the user can't edit posts, send them to their profile.
-                       if ( is_multisite() && !get_active_blog_for_user($user->id) && !is_super_admin( $user->id ) )
+                       if ( is_multisite() && !get_active_blog_for_user($user->ID) && !is_super_admin( $user->ID ) )
                                $redirect_to = user_admin_url();
                        elseif ( is_multisite() && !$user->has_cap('read') )
                                $redirect_to = user_admin_url();
                        elseif ( is_multisite() && !$user->has_cap('read') )
-                               $redirect_to = get_dashboard_url( $user->id );
+                               $redirect_to = get_dashboard_url( $user->ID );
                        elseif ( !$user->has_cap('edit_posts') )
                                $redirect_to = admin_url('profile.php');
                }
                        elseif ( !$user->has_cap('edit_posts') )
                                $redirect_to = admin_url('profile.php');
                }
@@ -631,17 +627,17 @@ default:
        $rememberme = ! empty( $_POST['rememberme'] );
 ?>
 
        $rememberme = ! empty( $_POST['rememberme'] );
 ?>
 
-<form name="loginform" id="loginform" action="<?php echo site_url('wp-login.php', 'login_post') ?>" method="post">
+<form name="loginform" id="loginform" action="<?php echo esc_url( site_url( 'wp-login.php', 'login_post' ) ); ?>" method="post">
        <p>
        <p>
-               <label><?php _e('Username') ?><br />
+               <label for="user_login"><?php _e('Username') ?><br />
                <input type="text" name="log" id="user_login" class="input" value="<?php echo esc_attr($user_login); ?>" size="20" tabindex="10" /></label>
        </p>
        <p>
                <input type="text" name="log" id="user_login" class="input" value="<?php echo esc_attr($user_login); ?>" size="20" tabindex="10" /></label>
        </p>
        <p>
-               <label><?php _e('Password') ?><br />
+               <label for="user_pass"><?php _e('Password') ?><br />
                <input type="password" name="pwd" id="user_pass" class="input" value="" size="20" tabindex="20" /></label>
        </p>
 <?php do_action('login_form'); ?>
                <input type="password" name="pwd" id="user_pass" class="input" value="" size="20" tabindex="20" /></label>
        </p>
 <?php do_action('login_form'); ?>
-       <p class="forgetmenot"><label><input name="rememberme" type="checkbox" id="rememberme" value="forever" tabindex="90"<?php checked( $rememberme ); ?> /> <?php esc_attr_e('Remember Me'); ?></label></p>
+       <p class="forgetmenot"><label for="rememberme"><input name="rememberme" type="checkbox" id="rememberme" value="forever" tabindex="90"<?php checked( $rememberme ); ?> /> <?php esc_attr_e('Remember Me'); ?></label></p>
        <p class="submit">
                <input type="submit" name="wp-submit" id="wp-submit" class="button-primary" value="<?php esc_attr_e('Log In'); ?>" tabindex="100" />
 <?php  if ( $interim_login ) { ?>
        <p class="submit">
                <input type="submit" name="wp-submit" id="wp-submit" class="button-primary" value="<?php esc_attr_e('Log In'); ?>" tabindex="100" />
 <?php  if ( $interim_login ) { ?>
@@ -657,10 +653,10 @@ default:
 <p id="nav">
 <?php if ( isset($_GET['checkemail']) && in_array( $_GET['checkemail'], array('confirm', 'newpass') ) ) : ?>
 <?php elseif ( get_option('users_can_register') ) : ?>
 <p id="nav">
 <?php if ( isset($_GET['checkemail']) && in_array( $_GET['checkemail'], array('confirm', 'newpass') ) ) : ?>
 <?php elseif ( get_option('users_can_register') ) : ?>
-<a href="<?php echo site_url('wp-login.php?action=register', 'login') ?>"><?php _e('Register') ?></a> |
-<a href="<?php echo site_url('wp-login.php?action=lostpassword', 'login') ?>" title="<?php _e('Password Lost and Found') ?>"><?php _e('Lost your password?') ?></a>
+<a href="<?php echo esc_url( site_url( 'wp-login.php?action=register', 'login' ) ); ?>"><?php _e( 'Register' ); ?></a> |
+<a href="<?php echo esc_url( wp_lostpassword_url() ); ?>" title="<?php esc_attr_e( 'Password Lost and Found' ); ?>"><?php _e( 'Lost your password?' ); ?></a>
 <?php else : ?>
 <?php else : ?>
-<a href="<?php echo site_url('wp-login.php?action=lostpassword', 'login') ?>" title="<?php _e('Password Lost and Found') ?>"><?php _e('Lost your password?') ?></a>
+<a href="<?php echo esc_url( wp_lostpassword_url() ); ?>" title="<?php esc_attr_e( 'Password Lost and Found' ); ?>"><?php _e( 'Lost your password?' ); ?></a>
 <?php endif; ?>
 </p>
 <?php } ?>
 <?php endif; ?>
 </p>
 <?php } ?>
index 69b54156eb43d3a6a4baebb9d06291169eebcb55..4ecc9548ef9b22321c6fdaac03fdfa7ea7588ba0 100644 (file)
@@ -113,7 +113,7 @@ for ( $i = 1; $i <= $count; $i++ ) {
                                $author = sanitize_email($author);
                                if ( is_email($author) ) {
                                        echo '<p>' . sprintf(__('Author is %s'), $author) . '</p>';
                                $author = sanitize_email($author);
                                if ( is_email($author) ) {
                                        echo '<p>' . sprintf(__('Author is %s'), $author) . '</p>';
-                                       $userdata = get_user_by_email($author);
+                                       $userdata = get_user_by('email', $author);
                                        if ( empty($userdata) ) {
                                                $author_found = false;
                                        } else {
                                        if ( empty($userdata) ) {
                                                $author_found = false;
                                        } else {
index c0c0c42a3e2c7d56050d511b76999f1019295e8c..556deab9c64cfb4e694fbd349b1aa65e383ba7c0 100644 (file)
@@ -9,11 +9,8 @@
 /** Make sure that the WordPress bootstrap has run before continuing. */
 require( dirname(__FILE__) . '/wp-load.php');
 
 /** Make sure that the WordPress bootstrap has run before continuing. */
 require( dirname(__FILE__) . '/wp-load.php');
 
-if ( get_magic_quotes_gpc() )
-       $_POST['post_password'] = stripslashes($_POST['post_password']);
-
 // 10 days
 // 10 days
-setcookie('wp-postpass_' . COOKIEHASH, $_POST['post_password'], time() + 864000, COOKIEPATH);
+setcookie('wp-postpass_' . COOKIEHASH, stripslashes( $_POST['post_password'] ), time() + 864000, COOKIEPATH);
 
 wp_safe_redirect(wp_get_referer());
 exit;
 
 wp_safe_redirect(wp_get_referer());
 exit;
diff --git a/wp-rdf.php b/wp-rdf.php
deleted file mode 100644 (file)
index cc94ad0..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-/**
- * Redirects to the RDF feed
- * This file is deprecated and only exists for backwards compatibility
- *
- * @package WordPress
- */
-
-require( './wp-load.php' );
-wp_redirect( get_bloginfo( 'rdf_url' ), 301 );
-exit;
-?>
diff --git a/wp-rss.php b/wp-rss.php
deleted file mode 100644 (file)
index af2427a..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-/**
- * Redirects to the RSS feed
- * This file is deprecated and only exists for backwards compatibility
- *
- * @package WordPress
- */
-
-require( './wp-load.php' );
-wp_redirect( get_bloginfo( 'rss_url' ), 301 );
-exit;
-?>
diff --git a/wp-rss2.php b/wp-rss2.php
deleted file mode 100644 (file)
index de75c23..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-<?php
-/**
- * Redirects to the RSS2 feed
- * This file is deprecated and only exists for backwards compatibility
- *
- * @package WordPress
- */
-
-require( './wp-load.php' );
-wp_redirect( get_bloginfo( 'rss2_url' ), 301 );
-exit;
-?>
index 9b89b577a184e002c1549a70ba977030b5865b19..7897e7347831ef9a9c4692f8bf66375a49b61c5e 100644 (file)
@@ -29,8 +29,8 @@ wp_initial_constants( );
 wp_check_php_mysql_versions();
 
 // Disable magic quotes at runtime. Magic quotes are added using wpdb later in wp-settings.php.
 wp_check_php_mysql_versions();
 
 // Disable magic quotes at runtime. Magic quotes are added using wpdb later in wp-settings.php.
-set_magic_quotes_runtime( 0 );
-@ini_set( 'magic_quotes_sybase', 0 );
+@ini_set( 'magic_quotes_runtime', 0 );
+@ini_set( 'magic_quotes_sybase',  0 );
 
 // Set default timezone in PHP 5.
 if ( function_exists( 'date_default_timezone_set' ) )
 
 // Set default timezone in PHP 5.
 if ( function_exists( 'date_default_timezone_set' ) )
@@ -75,6 +75,7 @@ require( ABSPATH . WPINC . '/plugin.php' );
 require_wp_db();
 
 // Set the database table prefix and the format specifiers for database table columns.
 require_wp_db();
 
 // Set the database table prefix and the format specifiers for database table columns.
+$GLOBALS['table_prefix'] = $table_prefix;
 wp_set_wpdb_vars();
 
 // Start the WordPress object cache, or an external object cache if the drop-in is present.
 wp_set_wpdb_vars();
 
 // Start the WordPress object cache, or an external object cache if the drop-in is present.
@@ -92,6 +93,8 @@ if ( is_multisite() ) {
        define( 'MULTISITE', false );
 }
 
        define( 'MULTISITE', false );
 }
 
+register_shutdown_function( 'shutdown_action_hook' );
+
 // Stop most of WordPress from being loaded if we just want the basics.
 if ( SHORTINIT )
        return false;
 // Stop most of WordPress from being loaded if we just want the basics.
 if ( SHORTINIT )
        return false;
@@ -102,6 +105,7 @@ require( ABSPATH . WPINC . '/l10n.php' );
 // Run the installer if WordPress is not installed.
 wp_not_installed();
 
 // Run the installer if WordPress is not installed.
 wp_not_installed();
 
+
 // Load most of WordPress.
 require( ABSPATH . WPINC . '/class-wp-walker.php' );
 require( ABSPATH . WPINC . '/class-wp-ajax-response.php' );
 // Load most of WordPress.
 require( ABSPATH . WPINC . '/class-wp-walker.php' );
 require( ABSPATH . WPINC . '/class-wp-ajax-response.php' );
@@ -247,7 +251,7 @@ $wp = new WP();
  * @global object $wp_widget_factory
  * @since 2.8.0
  */
  * @global object $wp_widget_factory
  * @since 2.8.0
  */
-$wp_widget_factory = new WP_Widget_Factory();
+$GLOBALS['wp_widget_factory'] = new WP_Widget_Factory();
 
 do_action( 'setup_theme' );
 
 
 do_action( 'setup_theme' );
 
@@ -272,7 +276,7 @@ require( ABSPATH . WPINC . '/locale.php' );
  * @global object $wp_locale
  * @since 2.1.0
  */
  * @global object $wp_locale
  * @since 2.1.0
  */
-$wp_locale = new WP_Locale();
+$GLOBALS['wp_locale'] = new WP_Locale();
 
 // Load the functions for the active theme, for both parent and child theme if applicable.
 if ( ! defined( 'WP_INSTALLING' ) || 'wp-activate.php' === $pagenow ) {
 
 // Load the functions for the active theme, for both parent and child theme if applicable.
 if ( ! defined( 'WP_INSTALLING' ) || 'wp-activate.php' === $pagenow ) {
@@ -287,8 +291,6 @@ do_action( 'after_setup_theme' );
 // Load any template functions the theme supports.
 require_if_theme_supports( 'post-thumbnails', ABSPATH . WPINC . '/post-thumbnail-template.php' );
 
 // Load any template functions the theme supports.
 require_if_theme_supports( 'post-thumbnails', ABSPATH . WPINC . '/post-thumbnail-template.php' );
 
-register_shutdown_function( 'shutdown_action_hook' );
-
 // Set up current user.
 $wp->init();
 
 // Set up current user.
 $wp->init();
 
index cce20833e881fb130f11ac0ff1c916cd4423eea1..6fa1742f0d891d6ec30e0d34404bfab25b760681 100644 (file)
@@ -3,7 +3,7 @@
 /** Sets up the WordPress Environment. */
 require( dirname(__FILE__) . '/wp-load.php' );
 
 /** Sets up the WordPress Environment. */
 require( dirname(__FILE__) . '/wp-load.php' );
 
-add_action( 'wp_head', 'signuppageheaders' ) ;
+add_action( 'wp_head', 'wp_no_robots' );
 
 require( './wp-blog-header.php' );
 
 
 require( './wp-blog-header.php' );
 
@@ -17,10 +17,6 @@ function do_signup_header() {
 }
 add_action( 'wp_head', 'do_signup_header' );
 
 }
 add_action( 'wp_head', 'do_signup_header' );
 
-function signuppageheaders() {
-       echo "<meta name='robots' content='noindex,nofollow' />\n";
-}
-
 if ( !is_multisite() ) {
        wp_redirect( site_url('wp-login.php?action=register') );
        die();
 if ( !is_multisite() ) {
        wp_redirect( site_url('wp-login.php?action=register') );
        die();
@@ -213,7 +209,7 @@ function validate_another_blog_signup() {
        $meta = apply_filters( 'signup_create_blog_meta', array( 'lang_id' => 1, 'public' => $public ) ); // deprecated
        $meta = apply_filters( 'add_signup_meta', $meta );
 
        $meta = apply_filters( 'signup_create_blog_meta', array( 'lang_id' => 1, 'public' => $public ) ); // deprecated
        $meta = apply_filters( 'add_signup_meta', $meta );
 
-       wpmu_create_blog( $domain, $path, $blog_title, $current_user->id, $meta, $wpdb->siteid );
+       wpmu_create_blog( $domain, $path, $blog_title, $current_user->ID, $meta, $wpdb->siteid );
        confirm_another_blog_signup($domain, $path, $blog_title, $current_user->user_login, $current_user->user_email, $meta);
        return true;
 }
        confirm_another_blog_signup($domain, $path, $blog_title, $current_user->user_login, $current_user->user_email, $meta);
        return true;
 }