From fa11948979fd6a4ea5705dc613b239699a459db3 Mon Sep 17 00:00:00 2001 From: "Edward Z. Yang" Date: Sat, 7 Dec 2013 16:50:53 -0800 Subject: [PATCH] Wordpress 3.7 Signed-off-by: Edward Z. Yang --- index.php | 2 +- readme.html | 2 +- wp-activate.php | 19 +- wp-admin/about.php | 152 +- wp-admin/admin-ajax.php | 27 +- wp-admin/admin-footer.php | 60 +- wp-admin/admin-header.php | 132 +- wp-admin/admin-post.php | 22 +- wp-admin/admin.php | 151 +- wp-admin/async-upload.php | 4 +- wp-admin/comment.php | 21 +- wp-admin/credits.php | 37 +- wp-admin/css/color-picker.min.css | 2 +- wp-admin/css/colors-classic.css | 7 - wp-admin/css/colors-classic.min.css | 2 +- wp-admin/css/colors-fresh.css | 7 - wp-admin/css/colors-fresh.min.css | 2 +- wp-admin/css/customize-controls-rtl.min.css | 2 +- wp-admin/css/customize-controls.min.css | 2 +- wp-admin/css/ie-rtl.css | 4 - wp-admin/css/ie-rtl.min.css | 2 +- wp-admin/css/ie.css | 46 +- wp-admin/css/ie.min.css | 2 +- wp-admin/css/install.css | 8 +- wp-admin/css/install.min.css | 2 +- wp-admin/css/media.min.css | 2 +- wp-admin/css/wp-admin-rtl.css | 48 +- wp-admin/css/wp-admin-rtl.min.css | 2 +- wp-admin/css/wp-admin.css | 275 +- wp-admin/css/wp-admin.min.css | 2 +- wp-admin/custom-background.php | 12 +- wp-admin/custom-header.php | 52 +- wp-admin/customize.php | 35 +- wp-admin/edit-comments.php | 8 +- wp-admin/edit-form-advanced.php | 204 +- wp-admin/edit-form-comment.php | 10 +- wp-admin/edit-link-form.php | 13 +- wp-admin/edit-tag-form.php | 2 +- wp-admin/edit-tags.php | 75 +- wp-admin/edit.php | 87 +- wp-admin/export.php | 34 +- wp-admin/freedoms.php | 4 +- wp-admin/images/about-globe-2x.png | Bin 0 -> 10570 bytes wp-admin/images/about-search-2x.png | Bin 0 -> 6867 bytes wp-admin/images/about-updates-2x.png | Bin 0 -> 11813 bytes wp-admin/import.php | 6 +- wp-admin/includes/ajax-actions.php | 205 +- wp-admin/includes/bookmark.php | 38 +- .../includes/class-wp-comments-list-table.php | 3 + .../includes/class-wp-filesystem-base.php | 596 ++- .../includes/class-wp-filesystem-direct.php | 67 +- .../includes/class-wp-filesystem-ftpext.php | 64 +- .../class-wp-filesystem-ftpsockets.php | 68 +- .../includes/class-wp-filesystem-ssh2.php | 35 +- wp-admin/includes/class-wp-importer.php | 2 +- wp-admin/includes/class-wp-list-table.php | 20 +- .../includes/class-wp-media-list-table.php | 10 +- .../includes/class-wp-ms-sites-list-table.php | 2 + .../class-wp-ms-themes-list-table.php | 8 +- .../class-wp-plugin-install-list-table.php | 46 +- .../includes/class-wp-plugins-list-table.php | 6 +- .../includes/class-wp-posts-list-table.php | 51 +- .../includes/class-wp-terms-list-table.php | 3 +- .../class-wp-theme-install-list-table.php | 3 + .../includes/class-wp-themes-list-table.php | 11 + wp-admin/includes/class-wp-upgrader-skins.php | 662 +++ wp-admin/includes/class-wp-upgrader.php | 2034 +++++++--- wp-admin/includes/comment.php | 29 +- wp-admin/includes/dashboard.php | 15 +- wp-admin/includes/deprecated.php | 120 +- wp-admin/includes/export.php | 3 +- wp-admin/includes/file.php | 166 +- wp-admin/includes/image-edit.php | 7 +- wp-admin/includes/import.php | 4 +- wp-admin/includes/list-table.php | 2 +- wp-admin/includes/media.php | 101 +- wp-admin/includes/meta-boxes.php | 20 +- wp-admin/includes/misc.php | 39 +- wp-admin/includes/ms.php | 202 +- wp-admin/includes/nav-menu.php | 128 +- wp-admin/includes/plugin-install.php | 63 +- wp-admin/includes/plugin.php | 88 + wp-admin/includes/post.php | 58 +- wp-admin/includes/revision.php | 31 +- wp-admin/includes/schema.php | 43 +- wp-admin/includes/taxonomy.php | 6 +- wp-admin/includes/template.php | 138 +- wp-admin/includes/theme.php | 12 +- wp-admin/includes/update-core.php | 158 +- wp-admin/includes/update.php | 162 +- wp-admin/includes/upgrade.php | 44 + wp-admin/includes/user.php | 7 +- wp-admin/index.php | 14 +- wp-admin/install.php | 20 +- wp-admin/js/about.js | 80 + wp-admin/js/about.min.js | 1 + wp-admin/js/accordion.min.js | 2 +- wp-admin/js/cat.js | 5 - wp-admin/js/cat.min.js | 1 - wp-admin/js/color-picker.min.js | 2 +- wp-admin/js/comment.min.js | 2 +- wp-admin/js/common.js | 23 +- wp-admin/js/common.min.js | 2 +- wp-admin/js/custom-background.min.js | 2 +- wp-admin/js/customize-controls.js | 13 +- wp-admin/js/customize-controls.min.js | 2 +- wp-admin/js/dashboard.min.js | 2 +- wp-admin/js/edit-comments.js | 3 +- wp-admin/js/edit-comments.min.js | 2 +- wp-admin/js/editor.js | 2 +- wp-admin/js/editor.min.js | 2 +- wp-admin/js/gallery.min.js | 2 +- wp-admin/js/image-edit.js | 56 +- wp-admin/js/image-edit.min.js | 2 +- wp-admin/js/inline-edit-post.js | 9 +- wp-admin/js/inline-edit-post.min.js | 2 +- wp-admin/js/inline-edit-tax.js | 3 + wp-admin/js/inline-edit-tax.min.js | 2 +- wp-admin/js/link.min.js | 2 +- wp-admin/js/media-gallery.min.js | 2 +- wp-admin/js/media-upload.min.js | 2 +- wp-admin/js/media.min.js | 2 +- wp-admin/js/nav-menu.js | 23 +- wp-admin/js/nav-menu.min.js | 2 +- wp-admin/js/password-strength-meter.js | 110 +- wp-admin/js/password-strength-meter.min.js | 2 +- wp-admin/js/plugin-install.min.js | 2 +- wp-admin/js/post.min.js | 2 +- wp-admin/js/postbox.min.js | 2 +- wp-admin/js/revisions.min.js | 2 +- wp-admin/js/set-post-thumbnail.min.js | 2 +- wp-admin/js/tags.min.js | 2 +- wp-admin/js/theme-preview.min.js | 2 +- wp-admin/js/theme.min.js | 2 +- wp-admin/js/user-profile.js | 2 +- wp-admin/js/user-profile.min.js | 2 +- wp-admin/js/user-suggest.min.js | 2 +- wp-admin/js/widgets.min.js | 2 +- wp-admin/js/word-count.min.js | 2 +- wp-admin/js/wp-fullscreen.min.js | 2 +- wp-admin/js/xfn.min.js | 2 +- wp-admin/link-add.php | 6 +- wp-admin/link-manager.php | 6 +- wp-admin/link.php | 6 +- wp-admin/maint/repair.php | 11 +- wp-admin/media-new.php | 2 +- wp-admin/media-upload.php | 2 +- wp-admin/media.php | 6 +- wp-admin/menu-header.php | 3 +- wp-admin/menu.php | 10 +- wp-admin/moderation.php | 2 +- wp-admin/ms-admin.php | 2 +- wp-admin/ms-delete-site.php | 18 +- wp-admin/ms-edit.php | 2 +- wp-admin/ms-options.php | 4 +- wp-admin/ms-sites.php | 2 +- wp-admin/ms-themes.php | 2 +- wp-admin/ms-upgrade-network.php | 2 +- wp-admin/ms-users.php | 2 +- wp-admin/my-sites.php | 6 +- wp-admin/nav-menus.php | 14 +- wp-admin/network.php | 11 +- wp-admin/network/about.php | 4 +- wp-admin/network/credits.php | 4 +- wp-admin/network/edit.php | 2 +- wp-admin/network/freedoms.php | 4 +- wp-admin/network/index.php | 14 +- wp-admin/network/plugin-editor.php | 4 +- wp-admin/network/plugin-install.php | 4 +- wp-admin/network/plugins.php | 4 +- wp-admin/network/profile.php | 4 +- wp-admin/network/settings.php | 7 +- wp-admin/network/setup.php | 4 +- wp-admin/network/site-info.php | 8 +- wp-admin/network/site-new.php | 6 +- wp-admin/network/site-settings.php | 6 +- wp-admin/network/site-themes.php | 4 +- wp-admin/network/site-users.php | 6 +- wp-admin/network/sites.php | 6 +- wp-admin/network/theme-editor.php | 4 +- wp-admin/network/theme-install.php | 4 +- wp-admin/network/themes.php | 2 +- wp-admin/network/update-core.php | 4 +- wp-admin/network/update.php | 4 +- wp-admin/network/upgrade.php | 8 +- wp-admin/network/user-edit.php | 4 +- wp-admin/network/user-new.php | 8 +- wp-admin/network/users.php | 14 +- wp-admin/options-discussion.php | 38 +- wp-admin/options-general.php | 35 +- wp-admin/options-media.php | 8 +- wp-admin/options-permalink.php | 20 +- wp-admin/options-reading.php | 23 +- wp-admin/options-writing.php | 24 +- wp-admin/options.php | 31 +- wp-admin/plugin-editor.php | 12 +- wp-admin/plugin-install.php | 36 +- wp-admin/plugins.php | 2 +- wp-admin/post-new.php | 10 +- wp-admin/post.php | 6 +- wp-admin/press-this.php | 12 +- wp-admin/profile.php | 2 +- wp-admin/revision.php | 17 +- wp-admin/setup-config.php | 30 +- wp-admin/theme-editor.php | 4 +- wp-admin/theme-install.php | 2 +- wp-admin/themes.php | 25 +- wp-admin/tools.php | 6 +- wp-admin/update-core.php | 129 +- wp-admin/update.php | 2 +- wp-admin/upgrade.php | 2 +- wp-admin/upload.php | 6 +- wp-admin/user-edit.php | 8 +- wp-admin/user-new.php | 67 +- wp-admin/user/about.php | 4 +- wp-admin/user/credits.php | 4 +- wp-admin/user/freedoms.php | 4 +- wp-admin/user/index.php | 4 +- wp-admin/user/profile.php | 4 +- wp-admin/user/user-edit.php | 4 +- wp-admin/users.php | 10 +- wp-admin/widgets.php | 32 +- wp-comments-post.php | 85 +- wp-content/themes/twentythirteen/404.php | 2 +- wp-content/themes/twentythirteen/archive.php | 4 +- .../themes/twentythirteen/author-bio.php | 14 +- wp-content/themes/twentythirteen/author.php | 12 +- wp-content/themes/twentythirteen/category.php | 4 +- wp-content/themes/twentythirteen/comments.php | 2 +- .../themes/twentythirteen/content-aside.php | 2 +- .../themes/twentythirteen/content-audio.php | 2 +- .../themes/twentythirteen/content-chat.php | 2 +- .../themes/twentythirteen/content-gallery.php | 2 +- .../themes/twentythirteen/content-image.php | 2 +- .../themes/twentythirteen/content-link.php | 2 +- .../themes/twentythirteen/content-none.php | 2 +- .../themes/twentythirteen/content-quote.php | 2 +- .../themes/twentythirteen/content-status.php | 2 +- .../themes/twentythirteen/content-video.php | 2 +- wp-content/themes/twentythirteen/content.php | 4 +- wp-content/themes/twentythirteen/footer.php | 5 +- .../themes/twentythirteen/functions.php | 78 +- wp-content/themes/twentythirteen/header.php | 2 +- wp-content/themes/twentythirteen/image.php | 4 +- .../themes/twentythirteen/inc/back-compat.php | 17 +- .../twentythirteen/inc/custom-header.php | 30 +- wp-content/themes/twentythirteen/index.php | 4 +- .../languages/twentythirteen.pot | 76 +- wp-content/themes/twentythirteen/page.php | 2 +- wp-content/themes/twentythirteen/search.php | 2 +- .../themes/twentythirteen/sidebar-main.php | 4 +- wp-content/themes/twentythirteen/sidebar.php | 6 +- wp-content/themes/twentythirteen/single.php | 2 +- wp-content/themes/twentythirteen/style.css | 12 +- wp-content/themes/twentythirteen/tag.php | 4 +- .../twentythirteen/taxonomy-post_format.php | 4 +- wp-content/themes/twentytwelve/404.php | 2 +- wp-content/themes/twentytwelve/archive.php | 4 +- wp-content/themes/twentytwelve/author.php | 16 +- wp-content/themes/twentytwelve/category.php | 4 +- wp-content/themes/twentytwelve/comments.php | 2 +- .../themes/twentytwelve/content-none.php | 2 +- .../themes/twentytwelve/content-status.php | 12 +- wp-content/themes/twentytwelve/content.php | 10 +- wp-content/themes/twentytwelve/css/ie.css | 2 +- wp-content/themes/twentytwelve/footer.php | 5 +- wp-content/themes/twentytwelve/functions.php | 78 +- wp-content/themes/twentytwelve/header.php | 7 +- wp-content/themes/twentytwelve/image.php | 16 +- .../themes/twentytwelve/inc/custom-header.php | 14 +- wp-content/themes/twentytwelve/index.php | 4 +- .../twentytwelve/languages/twentytwelve.pot | 84 +- wp-content/themes/twentytwelve/page.php | 2 +- wp-content/themes/twentytwelve/search.php | 2 +- .../themes/twentytwelve/sidebar-front.php | 4 +- wp-content/themes/twentytwelve/sidebar.php | 4 +- wp-content/themes/twentytwelve/single.php | 2 +- wp-content/themes/twentytwelve/style.css | 4 +- wp-content/themes/twentytwelve/tag.php | 7 +- wp-cron.php | 14 +- wp-includes/SimplePie/Sanitize.php | 2 +- wp-includes/admin-bar.php | 42 +- wp-includes/author-template.php | 67 +- wp-includes/bookmark-template.php | 17 +- wp-includes/cache.php | 22 +- wp-includes/canonical.php | 28 +- wp-includes/capabilities.php | 38 +- wp-includes/category-template.php | 67 +- wp-includes/category.php | 35 +- wp-includes/certificates/ca-bundle.crt | 3554 +++++++++++++++++ wp-includes/class-feed.php | 14 +- wp-includes/class-http.php | 719 ++-- wp-includes/class-oembed.php | 62 +- wp-includes/class-phpmailer.php | 4 +- wp-includes/class-wp-admin-bar.php | 16 +- wp-includes/class-wp-customize-section.php | 5 +- wp-includes/class-wp-editor.php | 34 +- wp-includes/class-wp-embed.php | 52 +- wp-includes/class-wp-image-editor-gd.php | 18 +- wp-includes/class-wp-image-editor-imagick.php | 27 +- wp-includes/class-wp-image-editor.php | 38 +- wp-includes/class-wp-theme.php | 2 +- wp-includes/class-wp-walker.php | 117 +- wp-includes/class-wp-xmlrpc-server.php | 3 + wp-includes/class-wp.php | 44 +- wp-includes/class.wp-dependencies.php | 336 +- wp-includes/class.wp-scripts.php | 3 + wp-includes/class.wp-styles.php | 3 +- wp-includes/comment-template.php | 1001 +++-- wp-includes/comment.php | 36 +- wp-includes/css/admin-bar.min.css | 2 +- wp-includes/css/buttons.min.css | 2 +- wp-includes/css/editor.css | 6 + wp-includes/css/editor.min.css | 4 +- wp-includes/css/jquery-ui-dialog.min.css | 2 +- wp-includes/css/media-views-rtl.min.css | 2 +- wp-includes/css/media-views.min.css | 2 +- wp-includes/css/wp-pointer.min.css | 2 +- wp-includes/date.php | 447 +++ wp-includes/default-constants.php | 9 +- wp-includes/default-filters.php | 16 +- wp-includes/default-widgets.php | 17 +- wp-includes/deprecated.php | 12 + wp-includes/feed-atom-comments.php | 3 +- wp-includes/feed-atom.php | 40 +- wp-includes/feed-rdf.php | 37 +- wp-includes/feed-rss.php | 19 +- wp-includes/feed-rss2-comments.php | 49 +- wp-includes/feed-rss2.php | 58 +- wp-includes/feed.php | 8 +- wp-includes/formatting.php | 77 +- wp-includes/functions.php | 260 +- wp-includes/functions.wp-scripts.php | 154 +- wp-includes/functions.wp-styles.php | 162 +- wp-includes/general-template.php | 83 +- wp-includes/http.php | 43 +- wp-includes/js/admin-bar.min.js | 2 +- wp-includes/js/autosave.js | 4 +- wp-includes/js/autosave.min.js | 2 +- wp-includes/js/colorpicker.min.js | 2 +- wp-includes/js/comment-reply.min.js | 2 +- wp-includes/js/customize-base.min.js | 2 +- wp-includes/js/customize-loader.min.js | 2 +- wp-includes/js/customize-preview.min.js | 2 +- wp-includes/js/heartbeat.js | 45 +- wp-includes/js/heartbeat.min.js | 2 +- wp-includes/js/hoverIntent.min.js | 10 +- .../js/imgareaselect/jquery.imgareaselect.js | 41 +- .../imgareaselect/jquery.imgareaselect.min.js | 2 +- wp-includes/js/jcrop/jquery.Jcrop.min.css | 15 +- wp-includes/js/jcrop/jquery.Jcrop.min.js | 36 +- wp-includes/js/jquery/jquery.form.js | 1740 ++++---- wp-includes/js/jquery/jquery.form.min.js | 14 +- wp-includes/js/json2.min.js | 2 +- wp-includes/js/mce-view.min.js | 2 +- wp-includes/js/media-editor.js | 9 + wp-includes/js/media-editor.min.js | 2 +- wp-includes/js/media-models.js | 2 +- wp-includes/js/media-models.min.js | 2 +- wp-includes/js/media-views.min.js | 3 +- wp-includes/js/plupload/handlers.min.js | 2 +- wp-includes/js/plupload/wp-plupload.min.js | 2 +- wp-includes/js/quicktags.min.js | 2 +- wp-includes/js/shortcode.min.js | 2 +- .../plugins/fullscreen/editor_plugin.js | 2 +- .../plugins/fullscreen/editor_plugin_src.js | 131 +- .../tinymce/plugins/fullscreen/fullscreen.htm | 27 +- .../tinymce/plugins/inlinepopups/template.htm | 2 +- .../js/tinymce/plugins/media/media.htm | 14 +- .../js/tinymce/plugins/media/moxieplayer.swf | Bin 145 -> 19980 bytes .../js/tinymce/plugins/paste/pastetext.htm | 6 +- .../js/tinymce/plugins/paste/pasteword.htm | 4 +- .../plugins/spellchecker/editor_plugin.js | 2 +- .../plugins/spellchecker/editor_plugin_src.js | 45 +- .../plugins/wpdialogs/editor_plugin.js | 2 +- .../js/tinymce/plugins/wpdialogs/js/popup.js | 14 +- .../tinymce/plugins/wpdialogs/js/popup.min.js | 2 +- .../plugins/wpdialogs/js/wpdialog.min.js | 2 +- .../plugins/wpeditimage/editimage.html | 2 +- .../plugins/wpeditimage/editor_plugin.js | 2 +- .../plugins/wpeditimage/js/editimage.js | 2 +- .../plugins/wpeditimage/js/editimage.min.js | 1 - .../plugins/wpfullscreen/editor_plugin.js | 2 +- .../plugins/wpgallery/editor_plugin.js | 2 +- .../tinymce/plugins/wplink/editor_plugin.js | 2 +- .../tinymce/plugins/wpview/editor_plugin.js | 2 +- wp-includes/js/tinymce/tiny_mce.js | 2 +- wp-includes/js/tinymce/tiny_mce_popup.js | 2 +- wp-includes/js/tinymce/wp-mce-help.php | 2 +- wp-includes/js/tinymce/wp-tinymce.js.gz | Bin 115518 -> 116235 bytes wp-includes/js/tw-sack.min.js | 2 +- wp-includes/js/utils.min.js | 2 +- wp-includes/js/wp-ajax-response.min.js | 2 +- wp-includes/js/wp-auth-check.min.js | 2 +- wp-includes/js/wp-backbone.min.js | 2 +- wp-includes/js/wp-list-revisions.min.js | 2 +- wp-includes/js/wp-lists.js | 4 +- wp-includes/js/wp-lists.min.js | 2 +- wp-includes/js/wp-pointer.min.js | 2 +- wp-includes/js/wp-util.min.js | 2 +- wp-includes/js/wplink.js | 13 +- wp-includes/js/wplink.min.js | 2 +- wp-includes/js/zxcvbn-async.js | 17 + wp-includes/js/zxcvbn-async.min.js | 1 + wp-includes/js/zxcvbn.min.js | 43 + wp-includes/kses.php | 1 + wp-includes/l10n.php | 552 ++- wp-includes/link-template.php | 119 +- wp-includes/load.php | 47 +- wp-includes/media-template.php | 1 + wp-includes/media.php | 112 +- wp-includes/meta.php | 58 +- wp-includes/ms-blogs.php | 30 +- wp-includes/ms-default-filters.php | 9 +- wp-includes/ms-deprecated.php | 48 +- wp-includes/ms-functions.php | 235 +- wp-includes/ms-load.php | 10 +- wp-includes/nav-menu-template.php | 152 +- wp-includes/nav-menu.php | 18 +- wp-includes/option.php | 307 +- wp-includes/pluggable.php | 91 +- wp-includes/plugin.php | 113 +- wp-includes/post-template.php | 33 +- wp-includes/post-thumbnail-template.php | 45 +- wp-includes/post.php | 465 ++- wp-includes/query.php | 456 ++- wp-includes/rewrite.php | 57 +- wp-includes/rss-functions.php | 2 +- wp-includes/rss.php | 10 +- wp-includes/script-loader.php | 40 +- wp-includes/shortcodes.php | 13 +- wp-includes/taxonomy.php | 426 +- wp-includes/template-loader.php | 35 +- wp-includes/template.php | 56 +- wp-includes/theme-compat/comments-popup.php | 2 +- wp-includes/theme-compat/comments.php | 2 +- wp-includes/theme.php | 23 +- wp-includes/update.php | 215 +- wp-includes/user.php | 281 +- wp-includes/vars.php | 22 +- wp-includes/version.php | 6 +- wp-includes/widgets.php | 31 +- wp-includes/wp-db.php | 10 +- wp-links-opml.php | 31 +- wp-load.php | 11 +- wp-login.php | 481 ++- wp-mail.php | 1 + wp-settings.php | 34 +- wp-signup.php | 192 +- wp-trackback.php | 45 +- xmlrpc.php | 21 +- 451 files changed, 18386 insertions(+), 5994 deletions(-) create mode 100644 wp-admin/images/about-globe-2x.png create mode 100644 wp-admin/images/about-search-2x.png create mode 100644 wp-admin/images/about-updates-2x.png create mode 100644 wp-admin/includes/class-wp-upgrader-skins.php create mode 100644 wp-admin/js/about.js create mode 100644 wp-admin/js/about.min.js delete mode 100644 wp-admin/js/cat.js delete mode 100644 wp-admin/js/cat.min.js create mode 100644 wp-includes/certificates/ca-bundle.crt create mode 100644 wp-includes/date.php delete mode 100644 wp-includes/js/tinymce/plugins/wpeditimage/js/editimage.min.js create mode 100644 wp-includes/js/zxcvbn-async.js create mode 100644 wp-includes/js/zxcvbn-async.min.js create mode 100644 wp-includes/js/zxcvbn.min.js diff --git a/index.php b/index.php index 1e3364ad..dd3d5544 100644 --- a/index.php +++ b/index.php @@ -14,4 +14,4 @@ define('WP_USE_THEMES', true); /** Loads the WordPress Environment and Template */ -require('./wp-blog-header.php'); +require( dirname( __FILE__ ) . '/wp-blog-header.php' ); diff --git a/readme.html b/readme.html index 8046948f..820583e4 100644 --- a/readme.html +++ b/readme.html @@ -8,7 +8,7 @@

WordPress -
Version 3.6.1 +
Version 3.7

Semantic Personal Publishing Platform

diff --git a/wp-activate.php b/wp-activate.php index 6a474b12..226780c3 100644 --- a/wp-activate.php +++ b/wp-activate.php @@ -11,7 +11,7 @@ define( 'WP_INSTALLING', true ); /** Sets up the WordPress Environment. */ require( dirname(__FILE__) . '/wp-load.php' ); -require( './wp-blog-header.php' ); +require( dirname( __FILE__ ) . '/wp-blog-header.php' ); if ( !is_multisite() ) { wp_redirect( site_url( '/wp-login.php?action=register' ) ); @@ -21,6 +21,14 @@ if ( !is_multisite() ) { if ( is_object( $wp_object_cache ) ) $wp_object_cache->cache_enabled = false; +// Fix for page title +$wp_query->is_404 = false; + +/** + * Fires before the Site Activation page is loaded. + * + * @since 3.0 + */ do_action( 'activate_header' ); /** @@ -29,7 +37,12 @@ do_action( 'activate_header' ); * @since MU */ function do_activate_header() { - do_action( 'activate_wp_head' ); + /** + * Fires before the Site Activation page is loaded, but on the wp_head action. + * + * @since 3.0 + */ + do_action( 'activate_wp_head' ); } add_action( 'wp_head', 'do_activate_header' ); @@ -116,4 +129,4 @@ get_header(); var key_input = document.getElementById('key'); key_input && key_input.focus(); - \ No newline at end of file + diff --git a/wp-admin/about.php b/wp-admin/about.php index 64f7e7b4..a694fe54 100644 --- a/wp-admin/about.php +++ b/wp-admin/about.php @@ -7,19 +7,21 @@ */ /** WordPress Administration Bootstrap */ -require_once( './admin.php' ); +require_once( dirname( __FILE__ ) . '/admin.php' ); $title = __( 'About' ); list( $display_version ) = explode( '-', $wp_version ); +wp_enqueue_script( 'about' ); + include( ABSPATH . 'wp-admin/admin-header.php' ); ?>

-
+
@@ -33,111 +35,101 @@ include( ABSPATH . 'wp-admin/admin-header.php' ); -
-

-

Version %1$s addressed some security issues and fixed %2$s bug.', - 'Version %1$s addressed some security issues and fixed %2$s bugs.', 13 ), '3.6.1', number_format_i18n( 13 ) ); ?> - the release notes.' ), 'http://codex.wordpress.org/Version_3.6.1' ); ?> -

-
-
-

+

-
- -

-

-

+
+
+

+

+
+
+ +
+
+

+

+

+
+ $wp_version . '.1.next.minor', + 'version' => $wp_version . '.1.next.minor', + 'php_version' => $required_php_version, + 'mysql_version' => $required_mysql_version, + ); + require_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php'; + $updater = new WP_Automatic_Updater; + $can_auto_update = wp_http_supports( 'ssl' ) && $updater->should_update( 'core', $future_minor_update, ABSPATH ); + + if ( $can_auto_update ) { + echo '

' . __( 'This site is able to apply these updates automatically. Cool!' ). '

'; + + // If the updater is disabled entirely, don't show them anything. + } elseif ( ! $updater->is_disabled() ) { + echo '

'; + // If this is is filtered to false, they won't get emails, so don't claim we will. + // Assumption: If the user can update core, they can see what the admin email is. + + /** This filter is documented in wp-admin/includes/class-wp-upgrader.php */ + if ( apply_filters( 'send_core_update_notification_email', true, $future_minor_update ) ) { + printf( __( 'This site is not able to apply these updates automatically. But we’ll email %s when there is a new security release.' ), esc_html( get_site_option( 'admin_email' ) ) ); + } else { + _e( 'This site is not able to apply these updates automatically.' ); + } + echo '

'; + } + } + ?>
-
-

- -
- -

-

-

-

-
+
+

-

-

+

+

-
-

-

+
+ +

+ change your password?' ), esc_url( self_admin_url( 'profile.php' ) ) ); ?>
-

- -
-
"$sample_video.mp4", - 'ogv' => "$sample_video.ogv", - 'width' => 625, - 'height' => 360, - ); - // Opera 12 (Presto, pre-Chromium) fails to load ogv properly - // when combined with ME.js. Works fine in Opera 15. - // Don't serve ogv to Opera 12 to avoid complete brokeness. - if ( $GLOBALS['is_opera'] ) - unset( $args['ogv'] ); - // Our current ME.js API is limited to shortcodes in posts. - echo wp_video_shortcode( $args ); - ?>
-

-

- -

-

-

embeds that WordPress supports.)' ), 'http://codex.wordpress.org/Embeds' ); ?>

-
-
- -
-

- -
-
-

-

-
+
-

-

+

+

-

-

+

+

+
+ +
+

-

-

has_shortcode() and adjust shortcode attributes with a new filter.' ); ?>

+

+

-

-

+

+

-

-

MediaElement.js, jQuery %2$s, jQuery UI %3$s, jQuery Migrate, Backbone %4$s.' ), 'http://mediaelementjs.com/', '1.10.2', '1.10.3', '1.0' ); ?>

+

+

wp_get_sites() allows developers to easily get an array of all the sites on your network without resorting to a direct database query — just one of many improvements to multisite in WordPress 3.7.' ); ?>

-
diff --git a/wp-admin/admin-ajax.php b/wp-admin/admin-ajax.php index c638d78a..b220d332 100644 --- a/wp-admin/admin-ajax.php +++ b/wp-admin/admin-ajax.php @@ -38,6 +38,7 @@ require_once( ABSPATH . 'wp-admin/includes/ajax-actions.php' ); send_nosniff_header(); nocache_headers(); +/** This action is documented in wp-admin/admin.php */ do_action( 'admin_init' ); $core_actions_get = array( @@ -68,10 +69,26 @@ if ( ! empty( $_POST['action'] ) && in_array( $_POST['action'], $core_actions_po add_action( 'wp_ajax_nopriv_heartbeat', 'wp_ajax_nopriv_heartbeat', 1 ); -if ( is_user_logged_in() ) - do_action( 'wp_ajax_' . $_REQUEST['action'] ); // Authenticated actions -else - do_action( 'wp_ajax_nopriv_' . $_REQUEST['action'] ); // Non-admin actions - +if ( is_user_logged_in() ) { + /** + * Fires authenticated AJAX actions for logged-in users. + * + * The dynamic portion of the hook name, $_REQUEST['action'], + * refers to the name of the AJAX action callback being fired. + * + * @since 2.1.0 + */ + do_action( 'wp_ajax_' . $_REQUEST['action'] ); +} else { + /** + * Fires non-authenticated AJAX actions for logged-out users. + * + * The dynamic portion of the hook name, $_REQUEST['action'], + * refers to the name of the AJAX action callback being fired. + * + * @since 2.8.0 + */ + do_action( 'wp_ajax_nopriv_' . $_REQUEST['action'] ); +} // Default status die( '0' ); diff --git a/wp-admin/admin-footer.php b/wp-admin/admin-footer.php index 3818ab41..08d9debc 100644 --- a/wp-admin/admin-footer.php +++ b/wp-admin/admin-footer.php @@ -16,16 +16,64 @@ if ( !defined('ABSPATH') )
site_name ) ); elseif ( is_user_admin() ) - $admin_title = __( 'Global Dashboard' ); + $admin_title = sprintf( __('Global Dashboard: %s'), esc_html( $current_site->site_name ) ); else $admin_title = get_bloginfo( 'name' ); @@ -33,6 +33,14 @@ if ( $admin_title == $title ) else $admin_title = sprintf( __( '%1$s ‹ %2$s — WordPress' ), $title, $admin_title ); +/** + * Filter the content for an admin page. + * + * @since 3.1.0 + * + * @param string $admin_title The page title, with extra context added. + * @param string $title The original page title. + */ $admin_title = apply_filters( 'admin_title', $admin_title, $title ); wp_user_settings(); @@ -60,13 +68,56 @@ var ajaxurl = '<?php echo admin_url( 'admin-ajax.php', 'relative' ); ?>', </script> <?php -do_action('admin_enqueue_scripts', $hook_suffix); -do_action("admin_print_styles-$hook_suffix"); -do_action('admin_print_styles'); -do_action("admin_print_scripts-$hook_suffix"); -do_action('admin_print_scripts'); -do_action("admin_head-$hook_suffix"); -do_action('admin_head'); +/** + * Enqueue scripts for all admin pages. + * + * @since 2.8.0 + * + * @param string $hook_suffix The current admin page. + */ +do_action( 'admin_enqueue_scripts', $hook_suffix ); + +/** + * Print styles for a specific admin page based on $hook_suffix. + * + * @since 2.6.0 + */ +do_action( "admin_print_styles-$hook_suffix" ); + +/** + * Print styles for all admin pages. + * + * @since 2.6.0 + */ +do_action( 'admin_print_styles' ); + +/** + * Print scripts for a specific admin page based on $hook_suffix. + * + * @since 2.1.0 + */ +do_action( "admin_print_scripts-$hook_suffix" ); + +/** + * Print scripts for all admin pages. + * + * @since 2.1.0 + */ +do_action( 'admin_print_scripts' ); + +/** + * Fires in <head> for a specific admin page based on $hook_suffix. + * + * @since 2.1.0 + */ +do_action( "admin_head-$hook_suffix" ); + +/** + * Fires in <head> for all admin pages. + * + * @since 2.1.0 + */ +do_action( 'admin_head' ); if ( get_user_setting('mfold') == 'f' ) $admin_body_class .= ' folded'; @@ -80,6 +131,12 @@ if ( is_admin_bar_showing() ) if ( is_rtl() ) $admin_body_class .= ' rtl'; +if ( $current_screen->post_type ) + $admin_body_class .= ' post-type-' . $current_screen->post_type; + +if ( $current_screen->taxonomy ) + $admin_body_class .= ' taxonomy-' . $current_screen->taxonomy; + $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' ); @@ -92,6 +149,19 @@ $admin_body_class .= ' no-customize-support'; ?> </head> +<?php +/** + * Filter the admin <body> CSS classes. + * + * This filter differs from the post_class or body_class filters in two important ways: + * 1. $classes is a space-separated string of class names instead of an array. + * 2. Not all core admin classes are filterable, notably: wp-admin, wp-core-ui, and no-js cannot be removed. + * + * @since 2.3.0 + * + * @param string $classes Space-separated string of CSS classes. + */ +?> <body class="wp-admin wp-core-ui no-js <?php echo apply_filters( 'admin_body_class', '' ) . " $admin_body_class"; ?>"> <script type="text/javascript"> document.body.className = document.body.className.replace('no-js','js'); @@ -109,7 +179,12 @@ if ( current_user_can( 'edit_theme_options' ) ) <div id="wpcontent"> <?php -do_action('in_admin_header'); +/** + * Fires at the beginning of the content section in an admin page. + * + * @since 3.0.0 + */ +do_action( 'in_admin_header' ); ?> <div id="wpbody"> @@ -125,14 +200,35 @@ $current_screen->set_parentage( $parent_file ); $current_screen->render_screen_meta(); -if ( is_network_admin() ) - do_action('network_admin_notices'); -elseif ( is_user_admin() ) - do_action('user_admin_notices'); -else - do_action('admin_notices'); +if ( is_network_admin() ) { + /** + * Print network admin screen notices. + * + * @since 3.1.0 + */ + do_action( 'network_admin_notices' ); +} elseif ( is_user_admin() ) { + /** + * Print user admin screen notices. + * + * @since 3.1.0 + */ + do_action( 'user_admin_notices' ); +} else { + /** + * Print admin screen notices. + * + * @since 3.1.0 + */ + do_action( 'admin_notices' ); +} -do_action('all_admin_notices'); +/** + * Print generic admin screen notices. + * + * @since 3.1.0 + */ +do_action( 'all_admin_notices' ); if ( $parent_file == 'options-general.php' ) require(ABSPATH . 'wp-admin/options-head.php'); diff --git a/wp-admin/admin-post.php b/wp-admin/admin-post.php index f4af998e..71039940 100644 --- a/wp-admin/admin-post.php +++ b/wp-admin/admin-post.php @@ -1,6 +1,8 @@ <?php /** - * WordPress Administration Generic POST Handler. + * WordPress Generic Request (POST/GET) Handler + * + * Intended for form submission handling in themes and plugins. * * @package WordPress * @subpackage Administration @@ -12,13 +14,17 @@ define('WP_ADMIN', true); if ( defined('ABSPATH') ) require_once(ABSPATH . 'wp-load.php'); else - require_once('../wp-load.php'); + require_once( dirname( dirname( __FILE__ ) ) . '/wp-load.php' ); + +/** Allow for cross-domain requests (from the frontend). */ +send_origin_headers(); require_once(ABSPATH . 'wp-admin/includes/admin.php'); nocache_headers(); -do_action('admin_init'); +/** This action is documented in wp-admin/admin.php */ +do_action( 'admin_init' ); $action = 'admin_post'; @@ -28,4 +34,12 @@ if ( !wp_validate_auth_cookie() ) if ( !empty($_REQUEST['action']) ) $action .= '_' . $_REQUEST['action']; -do_action($action); +/** + * Fires the requested handler action. + * + * admin_post_nopriv_{$_REQUEST['action']} is called for not-logged-in users. + * admin_post_{$_REQUEST['action']} is called for logged-in users. + * + * @since 2.6.0 + */ +do_action( $action ); diff --git a/wp-admin/admin.php b/wp-admin/admin.php index 4e739c3c..85979327 100644 --- a/wp-admin/admin.php +++ b/wp-admin/admin.php @@ -36,27 +36,43 @@ if ( get_option('db_upgraded') ) { update_option( 'db_upgraded', false ); /** - * Runs on the next page load after successful upgrade + * Fires on the next page load after a successful DB upgrade. * - * @since 2.8 + * @since 2.8.0 */ - do_action('after_db_upgrade'); + do_action( 'after_db_upgrade' ); } elseif ( get_option('db_version') != $wp_db_version && empty($_POST) ) { if ( !is_multisite() ) { wp_redirect( admin_url( 'upgrade.php?_wp_http_referer=' . urlencode( wp_unslash( $_SERVER['REQUEST_URI'] ) ) ) ); exit; + + /** + * Filter whether to attempt to perform the multisite DB upgrade routine. + * + * In single site, the user would be redirected to wp-admin/upgrade.php. + * In multisite, it is automatically fired, but only when this filter + * returns true. + * + * If the network is 50 sites or less, it will run every time. Otherwise, + * it will throttle itself to reduce load. + * + * @since 3.0.0 + * + * @param bool true Whether to perform the Multisite upgrade routine. Default true. + */ } elseif ( apply_filters( 'do_mu_upgrade', true ) ) { - /** - * On really small MU installs run the upgrader every time, - * else run it less often to reduce load. - * - * @since 2.8.4b - */ $c = get_blog_count(); // If 50 or fewer sites, run every time. Else, run "about ten percent" of the time. Shh, don't check that math. if ( $c <= 50 || ( $c > 50 && mt_rand( 0, (int)( $c / 50 ) ) == 1 ) ) { require_once( ABSPATH . WPINC . '/http.php' ); $response = wp_remote_get( admin_url( 'upgrade.php?step=1' ), array( 'timeout' => 120, 'httpversion' => '1.1' ) ); + /** + * Fires after the multisite DB upgrade is complete. + * + * @since 3.0.0 + * + * @param array|WP_Error $response The upgrade response array or WP_Error on failure. + */ do_action( 'after_mu_upgrade', $response ); unset($response); } @@ -103,10 +119,35 @@ elseif ( WP_USER_ADMIN ) else require(ABSPATH . 'wp-admin/menu.php'); -if ( current_user_can( 'manage_options' ) ) +if ( current_user_can( 'manage_options' ) ) { + /** + * Filter the maximum memory limit available for administration screens. + * + * This only applies to administrators, who may require more memory for tasks like updates. + * Memory limits when processing images (uploaded or edited by users of any role) are + * handled separately. + * + * The WP_MAX_MEMORY_LIMIT constant specifically defines the maximum memory limit available + * when in the administration back-end. The default is 256M, or 256 megabytes of memory. + * + * @since 3.0.0 + * + * @param string 'WP_MAX_MEMORY_LIMIT' The maximum WordPress memory limit. Default 256M. + */ @ini_set( 'memory_limit', apply_filters( 'admin_memory_limit', WP_MAX_MEMORY_LIMIT ) ); +} -do_action('admin_init'); +/** + * Fires as an admin screen or script is being initialized. + * + * Note, this does not just run on user-facing admin screens. + * It runs on admin-ajax.php and admin-post.php as well. + * + * This is roughly analgous to the more general 'init' hook, which fires earlier. + * + * @since 2.5.0 + */ +do_action( 'admin_init' ); if ( isset($plugin_page) ) { if ( !empty($typenow) ) @@ -142,11 +183,38 @@ set_current_screen(); // Handle plugin admin pages. if ( isset($plugin_page) ) { if ( $page_hook ) { - do_action('load-' . $page_hook); + /** + * Fires before a particular screen is loaded. + * + * The load-* hook fires in a number of contexts. This hook is for plugin screens + * where a callback is provided when the screen is registered. + * + * The dynamic portion of the hook name, $page_hook, refers to a mixture of plugin + * page information including: + * 1. The page type. If the plugin page is registered as a submenu page, such as for + * Settings, the page type would be 'settings'. Otherwise the type is 'toplevel'. + * 2. A separator of '_page_'. + * 3. The plugin basename minus the file extension. + * + * Together, the three parts form the $page_hook. Citing the example above, + * the hook name used would be 'load-settings_page_pluginbasename'. + * + * @see get_plugin_page_hook() + * + * @since 2.1.0 + */ + do_action( 'load-' . $page_hook ); if (! isset($_GET['noheader'])) require_once(ABSPATH . 'wp-admin/admin-header.php'); - do_action($page_hook); + /** + * Used to call the registered callback for a plugin screen. + * + * @access private + * + * @since 1.5.0 + */ + do_action( $page_hook ); } else { if ( validate_file($plugin_page) ) wp_die(__('Invalid plugin page')); @@ -154,7 +222,19 @@ if ( isset($plugin_page) ) { if ( !( file_exists(WP_PLUGIN_DIR . "/$plugin_page") && is_file(WP_PLUGIN_DIR . "/$plugin_page") ) && !( file_exists(WPMU_PLUGIN_DIR . "/$plugin_page") && is_file(WPMU_PLUGIN_DIR . "/$plugin_page") ) ) wp_die(sprintf(__('Cannot load %s.'), htmlentities($plugin_page))); - do_action('load-' . $plugin_page); + /** + * Fires before a particular screen is loaded. + * + * The load-* hook fires in a number of contexts. This hook is for plugin screens + * where the file to load is directly included, rather than the use of a function. + * + * The dynamic portion of the hook name, $plugin_page, refers to the plugin basename. + * + * @see plugin_basename() + * + * @since 1.5.0 + */ + do_action( 'load-' . $plugin_page ); if ( !isset($_GET['noheader'])) require_once(ABSPATH . 'wp-admin/admin-header.php'); @@ -185,6 +265,13 @@ if ( isset($plugin_page) ) { exit; } + /** + * Fires before an importer screen is loaded. + * + * The dynamic portion of the hook name, $importer, refers to the importer slug. + * + * @since 3.5.0 + */ do_action( 'load-importer-' . $importer ); $parent_file = 'tools.php'; @@ -198,6 +285,16 @@ if ( isset($plugin_page) ) { define('WP_IMPORTING', true); + /** + * Whether to filter imported data through kses on import. + * + * Multisite uses this hook to filter all data through kses by default, + * as a super administrator may be assisting an untrusted user. + * + * @since 3.1.0 + * + * @param bool false Whether to force data to be filtered through kses. Default false. + */ if ( apply_filters( 'force_filtered_html_on_import', false ) ) kses_init_filters(); // Always filter imported data with kses on multisite. @@ -210,7 +307,18 @@ if ( isset($plugin_page) ) { exit(); } else { - do_action("load-$pagenow"); + /** + * Fires before a particular screen is loaded. + * + * The load-* hook fires in a number of contexts. This hook is for core screens. + * + * The dynamic portion of the hook name, $pagenow, is a global variable + * referring to the filename of the current page, such as 'admin.php', + * 'post-new.php' etc. A complete hook for the latter would be 'load-post-new.php'. + * + * @since 2.1.0 + */ + do_action( 'load-' . $pagenow ); // Backwards compatibility with old load-page-new.php, load-page.php, // and load-categories.php actions. if ( $typenow == 'page' ) { @@ -226,5 +334,14 @@ if ( isset($plugin_page) ) { } } -if ( !empty($_REQUEST['action']) ) - do_action('admin_action_' . $_REQUEST['action']); +if ( ! empty( $_REQUEST['action'] ) ) { + /** + * Fires when an 'action' request variable is sent. + * + * The dynamic portion of the hook name, $_REQUEST['action'], + * refers to the action derived from the GET or POST request. + * + * @since 2.6.0 + */ + do_action( 'admin_action_' . $_REQUEST['action'] ); +} diff --git a/wp-admin/async-upload.php b/wp-admin/async-upload.php index 296342ea..3a24b525 100644 --- a/wp-admin/async-upload.php +++ b/wp-admin/async-upload.php @@ -11,7 +11,7 @@ define('WP_ADMIN', true); if ( defined('ABSPATH') ) require_once(ABSPATH . 'wp-load.php'); else - require_once('../wp-load.php'); + require_once( dirname( dirname( __FILE__ ) ) . '/wp-load.php' ); if ( ! ( isset( $_REQUEST['action'] ) && 'upload-attachment' == $_REQUEST['action'] ) ) { // Flash often fails to send cookies with the POST or upload, so we need to pass it in GET or POST instead @@ -24,7 +24,7 @@ if ( ! ( isset( $_REQUEST['action'] ) && 'upload-attachment' == $_REQUEST['actio unset($current_user); } -require_once('./admin.php'); +require_once( ABSPATH . 'wp-admin/admin.php' ); if ( !current_user_can('upload_files') ) wp_die(__('You do not have permission to upload files.')); diff --git a/wp-admin/comment.php b/wp-admin/comment.php index de5483e2..c2d57f08 100644 --- a/wp-admin/comment.php +++ b/wp-admin/comment.php @@ -7,7 +7,7 @@ */ /** Load WordPress Bootstrap */ -require_once('./admin.php'); +require_once( dirname( __FILE__ ) . '/admin.php' ); $parent_file = 'edit-comments.php'; $submenu_file = 'edit-comments.php'; @@ -36,7 +36,7 @@ if ( isset( $_GET['dt'] ) ) { */ function comment_footer_die( $msg ) { echo "<div class='wrap'><p>$msg</p></div>"; - include('./admin-footer.php'); + include( ABSPATH . 'wp-admin/admin-footer.php' ); die; } @@ -60,7 +60,7 @@ case 'editcomment' : ); wp_enqueue_script('comment'); - require_once('./admin-header.php'); + require_once( ABSPATH . 'wp-admin/admin-header.php' ); $comment_id = absint( $_GET['c'] ); @@ -75,7 +75,7 @@ case 'editcomment' : $comment = get_comment_to_edit( $comment_id ); - include('./edit-form-comment.php'); + include( ABSPATH . 'wp-admin/edit-form-comment.php' ); break; @@ -104,7 +104,7 @@ case 'spam' : die(); } - require_once('./admin-header.php'); + require_once( ABSPATH . 'wp-admin/admin-header.php' ); $formaction = $action . 'comment'; $nonce_action = 'approve' == $action ? 'approve-comment_' : 'delete-comment_'; @@ -279,6 +279,15 @@ case 'editedcomment' : edit_comment(); $location = ( empty( $_POST['referredby'] ) ? "edit-comments.php?p=$comment_post_id" : $_POST['referredby'] ) . '#comment-' . $comment_id; + + /** + * Filter the URI the user is redirected to after editing a comment in the admin. + * + * @since 2.1.0 + * + * @param string $location The URI the user will be redirected to. + * @param int $comment_id The ID of the comment being edited. + */ $location = apply_filters( 'comment_edit_redirect', $location, $comment_id ); wp_redirect( $location ); @@ -291,4 +300,4 @@ default: } // end switch -include('./admin-footer.php'); +include( ABSPATH . 'wp-admin/admin-footer.php' ); diff --git a/wp-admin/credits.php b/wp-admin/credits.php index 7052357b..059adc7c 100644 --- a/wp-admin/credits.php +++ b/wp-admin/credits.php @@ -7,10 +7,19 @@ */ /** WordPress Administration Bootstrap */ -require_once( './admin.php' ); +require_once( dirname( __FILE__ ) . '/admin.php' ); $title = __( 'Credits' ); +/** + * Retrieve the contributor credits. + * + * @global string $wp_version The current WordPress version. + * + * @since 3.2.0 + * + * @return array A list of all of the contributors. +*/ function wp_credits() { global $wp_version; $locale = get_locale(); @@ -20,12 +29,12 @@ function wp_credits() { if ( ! is_array( $results ) || ( isset( $results['data']['version'] ) && strpos( $wp_version, $results['data']['version'] ) !== 0 ) ) { - $response = wp_remote_get( "http://api.wordpress.org/core/credits/1.0/?version=$wp_version&locale=$locale" ); + $response = wp_remote_get( "http://api.wordpress.org/core/credits/1.1/?version=$wp_version&locale=$locale" ); if ( is_wp_error( $response ) || 200 != wp_remote_retrieve_response_code( $response ) ) return false; - $results = maybe_unserialize( wp_remote_retrieve_body( $response ) ); + $results = json_decode( wp_remote_retrieve_body( $response ), true ); if ( ! is_array( $results ) ) return false; @@ -36,10 +45,30 @@ function wp_credits() { return $results; } +/** + * Retrieve the link to a contributor's WordPress.org profile page. + * + * @access private + * @since 3.2.0 + * + * @param string &$display_name The contributor's display name, passed by reference. + * @param string $user_name The contributor's username. + * @param string $profiles URL to the contributor's WordPress.org profile page. + * @return string A contributor's display name, hyperlinked to a WordPress.org profile page. + */ function _wp_credits_add_profile_link( &$display_name, $username, $profiles ) { $display_name = '<a href="' . esc_url( sprintf( $profiles, $username ) ) . '">' . esc_html( $display_name ) . '</a>'; } +/** + * Retrieve the link to an external library used in WordPress. + * + * @access private + * @since 3.2.0 + * + * @param string &$data External library data, passed by reference. + * @return string Link to the external library. + */ function _wp_credits_build_object_link( &$data ) { $data = '<a href="' . esc_url( $data[1] ) . '">' . $data[0] . '</a>'; } @@ -52,7 +81,7 @@ include( ABSPATH . 'wp-admin/admin-header.php' ); <h1><?php printf( __( 'Welcome to WordPress %s' ), $display_version ); ?></h1> -<div class="about-text"><?php printf( __( 'Thank you for updating to the latest version. WordPress %s makes your writing experience even better.' ), $display_version ); ?></div> +<div class="about-text"><?php printf( __( 'Thank you for updating to WordPress 3.7! You might not notice a thing, and we’re okay with that.' ), $display_version ); ?></div> <div class="wp-badge"><?php printf( __( 'Version %s' ), $display_version ); ?></div> diff --git a/wp-admin/css/color-picker.min.css b/wp-admin/css/color-picker.min.css index 956f55ac..fcf78536 100644 --- a/wp-admin/css/color-picker.min.css +++ b/wp-admin/css/color-picker.min.css @@ -1 +1 @@ -.wp-color-picker{width:80px}.wp-picker-container .hidden{display:none}.wp-color-result{background-color:#f9f9f9;border:1px solid #bbb;border-radius:2px;cursor:pointer;display:inline-block;height:22px;margin:0 6px 6px 0;position:relative;top:1px;user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;vertical-align:bottom;display:inline-block;padding-left:30px}.wp-color-result:after{background:#f3f3f3;background-image:-webkit-gradient(linear,left top,left bottom,from(#fefefe),to(#f4f4f4));background-image:-webkit-linear-gradient(top,#fefefe,#f4f4f4);background-image:-moz-linear-gradient(top,#fefefe,#f4f4f4);background-image:-o-linear-gradient(top,#fefefe,#f4f4f4);background-image:linear-gradient(to bottom,#fefefe,#f4f4f4);color:#333;text-shadow:0 1px 0 #fff;border-radius:0 1px 1px 0;border-left:1px solid #bbb;content:attr(title);display:block;font-size:11px;line-height:22px;padding:0 6px;position:relative;right:0;text-align:center;top:0}.wp-color-result:hover{border-color:#aaa;-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.2);box-shadow:0 1px 1px rgba(0,0,0,0.1)}.wp-color-result:hover:after{color:#222;border-color:#aaa;border-left:1px solid #999}.wp-color-result.wp-picker-open{top:0}.wp-color-result.wp-picker-open:after{content:attr(data-current)}.wp-picker-container,.wp-picker-container:active{display:inline-block;outline:0}.wp-color-result:focus{border-color:#888;-webkit-box-shadow:0 1px 2px rgba(0,0,0,0.2);box-shadow:0 1px 2px rgba(0,0,0,0.2)}.wp-color-result:focus:after{border-color:#888}.wp-picker-open+.wp-picker-input-wrap{display:inline-block;vertical-align:top}.wp-picker-container .button{margin-left:6px}.wp-picker-container .iris-square-slider .ui-slider-handle:focus{background-color:#555}.wp-picker-container .iris-picker{border-color:#dfdfdf;margin-top:6px}input[type="text"].iris-error{background-color:#ffebe8;border-color:#c00;color:#000} \ No newline at end of file +.wp-color-picker{width:80px}.wp-picker-container .hidden{display:none}.wp-color-result{background-color:#f9f9f9;border:1px solid #bbb;border-radius:2px;cursor:pointer;display:inline-block;height:22px;margin:0 6px 6px 0;position:relative;top:1px;user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;vertical-align:bottom;display:inline-block;padding-left:30px}.wp-color-result:after{background:#f3f3f3;background-image:-webkit-gradient(linear,left top,left bottom,from(#fefefe),to(#f4f4f4));background-image:-webkit-linear-gradient(top,#fefefe,#f4f4f4);background-image:-moz-linear-gradient(top,#fefefe,#f4f4f4);background-image:-o-linear-gradient(top,#fefefe,#f4f4f4);background-image:linear-gradient(to bottom,#fefefe,#f4f4f4);color:#333;text-shadow:0 1px 0 #fff;border-radius:0 1px 1px 0;border-left:1px solid #bbb;content:attr(title);display:block;font-size:11px;line-height:22px;padding:0 6px;position:relative;right:0;text-align:center;top:0}.wp-color-result:hover{border-color:#aaa;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.2);box-shadow:0 1px 1px rgba(0,0,0,.1)}.wp-color-result:hover:after{color:#222;border-color:#aaa;border-left:1px solid #999}.wp-color-result.wp-picker-open{top:0}.wp-color-result.wp-picker-open:after{content:attr(data-current)}.wp-picker-container,.wp-picker-container:active{display:inline-block;outline:0}.wp-color-result:focus{border-color:#888;-webkit-box-shadow:0 1px 2px rgba(0,0,0,.2);box-shadow:0 1px 2px rgba(0,0,0,.2)}.wp-color-result:focus:after{border-color:#888}.wp-picker-open+.wp-picker-input-wrap{display:inline-block;vertical-align:top}.wp-picker-container .button{margin-left:6px}.wp-picker-container .iris-square-slider .ui-slider-handle:focus{background-color:#555}.wp-picker-container .iris-picker{border-color:#dfdfdf;margin-top:6px}input[type=text].iris-error{background-color:#ffebe8;border-color:#c00;color:#000} \ No newline at end of file diff --git a/wp-admin/css/colors-classic.css b/wp-admin/css/colors-classic.css index 2dbbb30a..32bc6f4b 100644 --- a/wp-admin/css/colors-classic.css +++ b/wp-admin/css/colors-classic.css @@ -2000,13 +2000,6 @@ h2.nav-tab-wrapper, h3.nav-tab-wrapper { color: #464646; } -.about-wrap .feature-section img { - background: #fff; - border: 1px #ccc solid; - -webkit-box-shadow: 0 1px 3px rgba( 0, 0, 0, 0.3 ); - box-shadow: 0 1px 3px rgba( 0, 0, 0, 0.3 ); -} - .about-wrap h4.wp-people-group { text-shadow: 1px 1px 1px #fff; } diff --git a/wp-admin/css/colors-classic.min.css b/wp-admin/css/colors-classic.min.css index 8c49a6bd..4f3c0ffd 100644 --- a/wp-admin/css/colors-classic.min.css +++ b/wp-admin/css/colors-classic.min.css @@ -1 +1 @@ -.find-box-search,.find-box-buttons{background-color:#eff8ff;border-top:1px solid #dce6f8}.find-box{background-color:#5589aa}.find-box-head{color:#fff}.find-box-inside{background-color:#fff}a.page-numbers:hover{border-color:#999}body,#wpbody,.form-table .pre,.ui-autocomplete li a{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}table.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}ul.category-tabs li{border-color:transparent}div.tabs-panel,.wp-tab-panel,ul.add-menu-item-tabs li.tabs,.wp-tab-active{border-color:#d1e5ee;background-color:#fff}ul.category-tabs li.tabs{border-color:#d1e5ee #d1e5ee #fff}ul.category-tabs li.tabs,ul.add-menu-item-tabs li.tabs,.wp-tab-active{background-color:#fff}kbd,code{background:#eff8ff}textarea,input[type="text"],input[type="password"],input[type="file"],input[type="email"],input[type="number"],input[type="search"],input[type="tel"],input[type="url"],select{border-color:#d1e5ee}textarea:focus,input[type="text"]:focus,input[type="password"]:focus,input[type="file"]: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:#b0c8d7}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}.revisions-meta,.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,.sidebar-name,#nav-menu-header,#nav-menu-footer,.menu-item-handle,#fullscreen-topbar{background:#f5fafd;background-image:-webkit-gradient(linear,left bottom,left top,from(#eff8ff),to(#f7fcfe));background-image:-webkit-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:-moz-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:-o-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:linear-gradient(to top,#eff8ff,#f7fcfe)}.widget .widget-top,.postbox h3,.stuffbox h3{border-bottom-color:#d1e5ee;text-shadow:#fff 0 1px 0;-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,.wrap .add-new-h2:active{background:#f1f1f1}.subtitle{color:#777}.ac_over{background-color:#f0f0b8}.ac_results{background-color:#fff;border-color:#b0c8d7}.ac_results li{color:#101010}.alternate,.alt{background-color:#f7fcfe}.available-theme a.screenshot{background-color:#eff8ff;border-color:#acd}#current-theme{border-bottom-color:#d1e5ee}.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,#commentsdiv #add-new-comment{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}.ui-autocomplete{border-color:#b0c8d7;background-color:#eff8ff}.ui-autocomplete li a.ui-state-focus{background-color:#def1ff}.post-com-count{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}a:hover,a:active{color:#d54e21}a:focus{color:#124964}#adminmenu a:hover,#adminmenu li.menu-top>a:focus,#adminmenu .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}#dashboard_right_now .table_content,#dashboard_right_now .table_discussion{border-top-color:#d1e5ee}#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,#media-items a.delete-permanently: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{color:#333}th.sortable a:hover,th.sortable a:active,th.sortable a:focus{color:#333}th.sortable a:focus{background:#e1e1e1;background-image:-webkit-gradient(linear,left bottom,left top,from(#dcdcdc),to(#e9e9e9));background-image:-webkit-linear-gradient(bottom,#dcdcdc,#e9e9e9);background-image:-moz-linear-gradient(bottom,#dcdcdc,#e9e9e9);background-image:-o-linear-gradient(bottom,#dcdcdc,#e9e9e9);background-image:linear-gradient(to top,#dcdcdc,#e9e9e9)}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,#media-items a.delete-permanently,.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;-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;-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}#wpfooter{color:#777;border-color:#b0c8d7}.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:#f7fcfe}.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{background:#f5fafd;background-image:-webkit-gradient(linear,left bottom,left top,from(#eff8ff),to(#f7fcfe));background-image:-webkit-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:-moz-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:-o-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:linear-gradient(to top,#eff8ff,#f7fcfe);border-color:#d1e5ee}.welcome-panel p{color:#777}.welcome-panel-column p{color:#464646}.welcome-panel h3{text-shadow:1px 1px 1px #fff}.widget,#widget-list .widget-top,.postbox,#titlediv,#poststuff .postarea,.stuffbox{border-color:#d1e5ee;-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:#f5fafd;background-image:-webkit-gradient(linear,left bottom,left top,from(#eff8ff),to(#f7fcfe));background-image:-webkit-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:-moz-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:-o-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:linear-gradient(to top,#eff8ff,#f7fcfe)}.postbox h3{color:#174f69}.widget .widget-top{color:#174f69}.js .sidebar-name:hover h3,.js .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:#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{border-right:1px solid #d1e5ee;border-left:1px solid #d1e5ee;border-bottom:1px solid #d1e5ee;background:#eff8ff;background-image:-webkit-gradient(linear,left bottom,left top,from(#def1ff),to(#eff8ff));background-image:-webkit-linear-gradient(bottom,#def1ff,#eff8ff);background-image:-moz-linear-gradient(bottom,#def1ff,#eff8ff);background-image:-o-linear-gradient(bottom,#def1ff,#eff8ff);background-image:linear-gradient(to top,#def1ff,#eff8ff)}#screen-meta-links a{color:#606060;background:transparent url(../images/arrows.png) no-repeat right 4px}#screen-meta-links a:hover,#screen-meta-links a:active{color:#000;background-color:transparent}#screen-meta-links a.screen-meta-active{background-position:right -31px}.login #backtoblog a{color:#464646}#wphead{border-bottom:1px solid #d0dfe9}#wphead h1 a{color:#174f69}#wpfooter a:link,#wpfooter a:visited{text-decoration:none}#wpfooter 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}#poststuff .wp-editor-wrap .wp_themeSkin .mceStatusbar{border-color:#d0dfe9;background-color:#eff8ff}#poststuff .wp-editor-wrap .wp_themeSkin .mceStatusbar *{color:#555}#poststuff #editor-toolbar .active{border-color:#d0dfe9 #d0dfe9 #eff8ff;background-color:#eff8ff;color:#333}.wp-editor-wrap .wp-editor-container,.wp-editor-wrap .wp_themeSkin table.mceLayout{border-color:#d1e5ee #d1e5ee #d0dfe9}#editorcontainer{border-color:#d1e5ee #d1e5ee #d0dfe9}#post-status-info{border-color:#d0dfe9 #d1e5ee #d1e5ee}.wp-admin .wp-editor-wrap .wp-switch-editor{background-color:#d3e9f2;border-color:#d1e5ee #d1e5ee #d3e9f2;color:#174f69}.wp-admin .wp-editor-wrap .wp-switch-editor:active{background-color:#f5fafd}.wp-admin .wp-editor-wrap.tmce-active .switch-tmce,.wp-admin .wp-editor-wrap.html-active .switch-html{background:#f7fcfe;border-color:#d1e5ee #d1e5ee #f7fcfe}.wp-admin .wp-editor-wrap .quicktags-toolbar,.wp-admin .wp-editor-wrap .wp_themeSkin tr.mceFirst td.mceToolbar{border-color:#d0dfe9;background-color:#f5fafd;background-image:-webkit-gradient(linear,left bottom,left top,from(#eff8ff),to(#f7fcfe));background-image:-webkit-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:-moz-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:-o-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:linear-gradient(to top,#eff8ff,#f7fcfe)}.wp-admin .wp_themeSkin table.mceListBox{border-color:#d1e5ee}.wp-admin .wp_themeSkin table.mceListBoxEnabled:hover,.wp-admin .wp_themeSkin table.mceListBoxEnabled:active,.wp-admin .wp_themeSkin table.mceListBoxHover,.wp-admin .wp_themeSkin table.mceListBoxHover:active,.wp-admin .wp_themeSkin table.mceListBoxSelected{border-color:#b8cfdf}.wp-admin .wp_themeSkin a.mceButtonEnabled:hover,.wp-admin .wp_themeSkin table.mceSplitButton:hover{border-color:#c3d2dc;background:#f4f9fc;background-image:-webkit-gradient(linear,left bottom,left top,from(#f4f9fc),to(#fff));background-image:-webkit-linear-gradient(bottom,#f4f9fc,#fff);background-image:-moz-linear-gradient(bottom,#f4f9fc,#fff);background-image:-o-linear-gradient(bottom,#f4f9fc,#fff);background-image:linear-gradient(to top,#f4f9fc,#fff)}.wp-admin .wp_themeSkin a.mceButton:active,.wp-admin .wp_themeSkin a.mceButtonEnabled:active,.wp-admin .wp_themeSkin a.mceButtonSelected:active,.wp-admin .wp_themeSkin a.mceButtonActive,.wp-admin .wp_themeSkin a.mceButtonActive:active,.wp-admin .wp_themeSkin a.mceButtonActive:hover,.wp-admin .wp_themeSkin .mceSplitButtonSelected table,.wp-admin .wp_themeSkin .mceSplitButtonSelected table:hover{border-color:#8f9da9 #c3d2dc #c3d2dc #8f9da9;background:#f4f9fc;background-image:-webkit-gradient(linear,left bottom,left top,from(#fff),to(#f4f9fc));background-image:-webkit-linear-gradient(bottom,#fff,#f4f9fc);background-image:-moz-linear-gradient(bottom,#fff,#f4f9fc);background-image:-o-linear-gradient(bottom,#fff,#f4f9fc);background-image:linear-gradient(to top,#fff,#f4f9fc)}.wp-admin .wp_themeSkin .mceSplitButtonSelected table a.mceOpen,.wp-admin .wp_themeSkin .mceSplitButtonSelected table a.mceAction{border-color:#8f9da9 #c3d2dc #c3d2dc #8f9da9}.wp-admin .wp_themeSkin .mceSplitButton:hover a{border-color:#c3d2dc}.editwidget .widget-inside{border-color:#d0dfe9}#titlediv #title{background-color:#fff}#tTips p#tTips_inside{background-color:#ddd;color:#333}#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 a.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,#adminmenu li.opensub>a.menu-top,#adminmenu li>a.menu-top:focus{background-color:#e0f1ff;color:#d54e21;text-shadow:0 1px 0 rgba(255,255,255,0.4)}#adminmenu li.menu-top:hover>a span,#adminmenu li.menu-top>a:focus span{text-shadow:none}#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:#5589aa;background-image:-webkit-gradient(linear,left bottom,left top,from(#5589aa),to(#619bbb));background-image:-webkit-linear-gradient(bottom,#5589aa,#619bbb);background-image:-moz-linear-gradient(bottom,#5589aa,#619bbb);background-image:-o-linear-gradient(bottom,#5589aa,#619bbb);background-image:linear-gradient(to top,#5589aa,#619bbb)}#adminmenu .wp-menu-arrow div{background:#5589aa;background-image:-webkit-gradient(linear,right bottom,left top,from(#5589aa),to(#619bbb));background-image:-webkit-linear-gradient(bottom right,#5589aa,#619bbb);background-image:-moz-linear-gradient(bottom right,#5589aa,#619bbb);background-image:-o-linear-gradient(bottom right,#5589aa,#619bbb);background-image:linear-gradient(to top left,#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,.folded #adminmenu a.wp-has-current-submenu:focus+.wp-submenu,.folded #adminmenu .wp-has-current-submenu .wp-submenu{background-color:#fff;border-color:#d0dfe9;-webkit-box-shadow:2px 3px 6px rgba(0,0,0,0.4);box-shadow:2px 3px 6px rgba(0,0,0,0.4)}#adminmenu .wp-submenu .wp-submenu-head{background-color:#e0f1ff;color:#333}#collapse-menu{color:#a0c3d5;border-top-color:#f9f9f9}#collapse-menu:hover{color:#5a8fad}#collapse-button{border-color:#d0dfe9;background:#eff8ff;background-image:-webkit-gradient(linear,left bottom,left top,from(#eff8ff),to(#fff));background-image:-webkit-linear-gradient(bottom,#eff8ff,#fff);background-image:-moz-linear-gradient(bottom,#eff8ff,#fff);background-image:-o-linear-gradient(bottom,#eff8ff,#fff);background-image:linear-gradient(to top,#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}@media only screen and (max-width:900px){.auto-fold #adminmenu li.wp-has-current-submenu,.auto-fold #adminmenu li.current.menu-top{background-color:#5589aa;background-image:-webkit-gradient(linear,left bottom,left top,from(#5589aa),to(#619bbb));background-image:-webkit-linear-gradient(bottom,#5589aa,#619bbb);background-image:-moz-linear-gradient(bottom,#5589aa,#619bbb);background-image:-o-linear-gradient(bottom,#5589aa,#619bbb);background-image:linear-gradient(bottom,#5589aa,#619bbb)}.auto-fold #adminmenu li.wp-has-current-submenu,.auto-fold #adminmenu li.current.menu-top{border-top-color:#5a8fad;border-bottom-color:#5589aa}.auto-fold #adminmenu a.wp-has-current-submenu:focus+.wp-submenu,.auto-fold #adminmenu .wp-has-current-submenu .wp-submenu{background-color:#fff;border-color:#d0dfe9;-webkit-box-shadow:2px 3px 6px rgba(0,0,0,0.4);box-shadow:2px 3px 6px rgba(0,0,0,0.4)}.auto-fold #collapse-button div{background-position:0 -108px}}.icon16,.icon32,div.wp-menu-image{background-color:transparent;background-repeat:no-repeat}.icon16.icon-dashboard,.menu-icon-dashboard div.wp-menu-image,.icon16.icon-post,.menu-icon-post div.wp-menu-image,.icon16.icon-media,.menu-icon-media div.wp-menu-image,.icon16.icon-links,.menu-icon-links div.wp-menu-image,.icon16.icon-page,.menu-icon-page div.wp-menu-image,.icon16.icon-comments,.menu-icon-comments div.wp-menu-image,.icon16.icon-appearance,.menu-icon-appearance div.wp-menu-image,.icon16.icon-plugins,.menu-icon-plugins div.wp-menu-image,.icon16.icon-users,.menu-icon-users div.wp-menu-image,.icon16.icon-tools,.menu-icon-tools div.wp-menu-image,.icon16.icon-settings,.menu-icon-settings div.wp-menu-image,.icon16.icon-site,.menu-icon-site div.wp-menu-image,.icon16.icon-generic,.menu-icon-generic div.wp-menu-image{background-image:url(../images/menu-vs.png?ver=20121105)}.icon16.icon-dashboard,#adminmenu .menu-icon-dashboard div.wp-menu-image{background-position:-59px -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-position:-59px -1px}.icon16.icon-post,#adminmenu .menu-icon-post div.wp-menu-image{background-position:-269px -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.current div.wp-menu-image{background-position:-269px -1px}.icon16.icon-media,#adminmenu .menu-icon-media div.wp-menu-image{background-position:-119px -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.current div.wp-menu-image{background-position:-119px -1px}.icon16.icon-links,#adminmenu .menu-icon-links div.wp-menu-image{background-position:-89px -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.current div.wp-menu-image{background-position:-89px -1px}.icon16.icon-page,#adminmenu .menu-icon-page div.wp-menu-image{background-position:-149px -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.current div.wp-menu-image{background-position:-149px -1px}.icon16.icon-comments,#adminmenu .menu-icon-comments div.wp-menu-image{background-position:-29px -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-position:-29px -1px}.icon16.icon-appearance,#adminmenu .menu-icon-appearance div.wp-menu-image{background-position:1px -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.current div.wp-menu-image{background-position:1px -1px}.icon16.icon-plugins,#adminmenu .menu-icon-plugins div.wp-menu-image{background-position:-179px -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.current div.wp-menu-image{background-position:-179px -1px}.icon16.icon-users,#adminmenu .menu-icon-users div.wp-menu-image{background-position:-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-position:-300px -1px}.icon16.icon-tools,#adminmenu .menu-icon-tools div.wp-menu-image{background-position:-209px -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-position:-209px -1px}.icon16.icon-settings,#adminmenu .menu-icon-settings div.wp-menu-image{background-position:-239px -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.current div.wp-menu-image{background-position:-239px -1px}.icon16.icon-site,#adminmenu .menu-icon-site div.wp-menu-image{background-position:-359px -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.current div.wp-menu-image{background-position:-359px -1px}.icon16.icon-generic,#adminmenu .menu-icon-generic div.wp-menu-image{background-position:-330px -33px}#adminmenu .menu-icon-generic:hover div.wp-menu-image,#adminmenu .menu-icon-generic.wp-has-current-submenu div.wp-menu-image,#adminmenu .menu-icon-generic.current div.wp-menu-image{background-position:-330px -1px}.icon32.icon-post,#icon-edit,#icon-post,.icon32.icon-dashboard,#icon-index,.icon32.icon-media,#icon-upload,.icon32.icon-links,#icon-link-manager,#icon-link,#icon-link-category,.icon32.icon-page,#icon-edit-pages,#icon-page,.icon32.icon-comments,#icon-edit-comments,.icon32.icon-appearance,#icon-themes,.icon32.icon-plugins,#icon-plugins,.icon32.icon-users,#icon-users,#icon-profile,#icon-user-edit,.icon32.icon-tools,#icon-tools,#icon-admin,.icon32.icon-settings,#icon-options-general,.icon32.icon-site,#icon-ms-admin,.icon32.icon-generic,#icon-generic{background-image:url(../images/icons32-vs.png?ver=20121105)}.icon32.icon-post,#icon-edit,#icon-post{background-position:-552px -5px}.icon32.icon-dashboard,#icon-index{background-position:-137px -5px}.icon32.icon-media,#icon-upload{background-position:-251px -5px}.icon32.icon-links,#icon-link-manager,#icon-link,#icon-link-category{background-position:-190px -5px}.icon32.icon-page,#icon-edit-pages,#icon-page{background-position:-312px -5px}.icon32.icon-comments,#icon-edit-comments{background-position:-72px -5px}.icon32.icon-appearance,#icon-themes{background-position:-11px -5px}.icon32.icon-plugins,#icon-plugins{background-position:-370px -5px}.icon32.icon-users,#icon-users,#icon-profile,#icon-user-edit{background-position:-600px -5px}.icon32.icon-tools,#icon-tools,#icon-admin{background-position:-432px -5px}.icon32.icon-settings,#icon-options-general{background-position:-492px -5px}.icon32.icon-site,#icon-ms-admin{background-position:-659px -5px}.icon32.icon-generic,#icon-generic{background-position:-708px -5px}.post-format-icon{background:url(../images/post-formats-vs.png) no-repeat}table.diff .diff-deletedline{background-color:#ffe9e9}table.diff .diff-deletedline del{background-color:#faa}table.diff .diff-addedline{background-color:#e9ffe9}table.diff .diff-addedline ins{background-color:#afa}.revisions-meta{border:1px solid #d1e5ee}.revisions-controls{background:#fff;background:-webkit-gradient(linear,left bottom,left top,color-stop(0%,rgba(255,255,255,1)),color-stop(30px,rgba(255,255,255,1)),color-stop(100%,rgba(255,255,255,1)));background:-webkit-linear-gradient(bottom,rgba(255,255,255,0) 0,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%);background:-moz-linear-gradient(bottom,rgba(255,255,255,0) 0,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%);background:-o-linear-gradient(bottom,rgba(255,255,255,0) 0,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%);background:linear-gradient(to top,rgba(255,255,255,0) 0,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%)}.revisions-tooltip,.revisions-tooltip-arrow span{border-color:#d1e5ee;background-color:#fff}.revisions-tickmarks>div{border-color:#d1e5ee}.wp-slider.ui-slider{border-color:#d1e5ee}.wp-slider .ui-slider-handle{color:#333;border-color:none}.wp-slider .ui-slider-handle{border-color:#d0dfe9;background:#eff8ff;background-image:-webkit-gradient(linear,left bottom,left top,from(#eff8ff),to(#fff));background-image:-webkit-linear-gradient(bottom,#eff8ff,#fff);background-image:-moz-linear-gradient(bottom,#eff8ff,#fff);background-image:-o-linear-gradient(bottom,#eff8ff,#fff);background-image:linear-gradient(to top,#eff8ff,#fff)}.wp-slider .ui-slider-handle:hover,.wp-slider .ui-slider-handle:focus{border-color:#a0c3d5}.wp-slider .ui-slider-handle.ui-state-hover,.wp-slider .ui-slider-handle.ui-state-focus{border-color:#a0c3d5;outline:0}#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}#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}#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 .quick-edit-save{background-color:#f1f1f1}fieldset.inline-edit-col-right .inline-edit-col{border-color:#dfdfdf}.attention{color:#d54e21}.js .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;-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff}.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:#acd}#current-theme img{border-color:#b0c8d7}#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:#d1e5ee}#minor-publishing{border-bottom-color:#cae6ff}#post-body .misc-pub-section{border-left-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,.view-switch #view-switch-excerpt{background-color:transparent;background-image:url('../images/list.png');background-repeat:no-repeat}.view-switch #view-switch-list{background-position:0 0}.view-switch .current #view-switch-list{background-position:-40px 0}.view-switch #view-switch-excerpt{background-position:-20px 0}.view-switch .current #view-switch-excerpt{background-position:-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:#d1e5ee}div.widgets-sortables,#widgets-left .inactive,#available-widgets .widget-holder{background-color:#f7fcfe;border-color:#d0dfe9}#available-widgets .widget-description{color:#555}.sidebar-name{color:#464646;text-shadow:#fff 0 1px 0;border-color:#d0dfe9;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff}.js .sidebar-name:hover,.js #removing-widget{color:#d54e21}#removing-widget span{color:black}.js .sidebar-name-arrow{background:transparent url(../images/arrows-vs.png) no-repeat 5px 9px}.js .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}.nav-menus-php .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}.nav-tab{border-color:#d1e5ee #d1e5ee #fff}.nav-tab:hover,.nav-tab-active{border-color:#acd #acd #fff}h2.nav-tab-wrapper,h3.nav-tab-wrapper{border-bottom-color:#acd}#menu-management .nav-tab-active,.menu-item-handle,.menu-item-settings{-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff}#menu-management .nav-tab-active{background:#f7fcfe;border-bottom-color:#f7fcfe}#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 #fff}.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 #fff;color:#464646}.about-wrap h3{color:#333;text-shadow:1px 1px 1px #fff}.about-wrap .feature-section h4{color:#464646}.about-wrap .feature-section img{background:#fff;border:1px #ccc solid;-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.3);box-shadow:0 1px 3px rgba(0,0,0,0.3)}.about-wrap h4.wp-people-group{text-shadow:1px 1px 1px #fff}.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{-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 #fff}.freedoms-php .about-wrap ol li{color:#999}.freedoms-php .about-wrap ol p{color:#464646}.rtl .bar{border-right-color:transparent;border-left-color:#99d}.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 .wp-submenu .wp-submenu-head{border-right-color:transparent;border-left-color:#d1e5ee}.rtl #adminmenu .wp-submenu,.rtl.folded #adminmenu .wp-has-current-submenu .wp-submenu{-webkit-box-shadow:-2px 2px 5px rgba(0,0,0,0.4);box-shadow:-2px 2px 5px rgba(0,0,0,0.4)}.rtl #adminmenu .wp-has-current-submenu .wp-submenu{-webkit-box-shadow:none;box-shadow:none}.rtl #collapse-button div{background-position:0 -108px}.rtl.folded #collapse-button div{background-position:0 -72px}@media only screen and (max-width:900px){.rtl.auto-fold #adminmenu a.wp-has-current-submenu:focus+.wp-submenu,.rtl.auto-fold #adminmenu .wp-has-current-submenu .wp-submenu{-webkit-box-shadow:-2px 2px 5px rgba(0,0,0,0.4);box-shadow:-2px 2px 5px rgba(0,0,0,0.4)}.rtl.auto-fold #collapse-button div{background-position:0 -72px}}.js.rtl .meta-box-sortables .postbox:hover .handlediv{background:transparent url(../images/arrows-vs.png) no-repeat 6px 7px}.rtl #post-body .misc-pub-section{border-right-color:transparent;border-left-color:#d1e5ee}.js.rtl .sidebar-name-arrow{background:transparent url(../images/arrows-vs.png) no-repeat 5px 9px}.js.rtl .sidebar-name:hover .sidebar-name-arrow{background:transparent url(../images/arrows-dark-vs.png) no-repeat 5px 9px}@media print,(-o-min-device-pixel-ratio:5/4),(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){.curtime #timestamp{background-image:url("../images/date-button-2x.gif?ver=20120916");background-size:16px auto}.tagchecklist span a,#bulk-titles div a,.tagchecklist span a:hover,#bulk-titles div a:hover{background-image:url("../images/xit-2x.gif?ver=20120916");background-size:20px auto}#screen-meta-links a.show-settings,#screen-meta-links a.show-settings.screen-meta-active,#adminmenu .wp-has-submenu:hover .wp-menu-toggle,#adminmenu .wp-menu-open .wp-menu-toggle,#collapse-button div,.nav-menus-php .item-edit,.js .meta-box-sortables .postbox:hover .handlediv,.sidebar-name-arrow,.rtl #adminmenu .wp-has-submenu:hover .wp-menu-toggle,.rtl #adminmenu .wp-menu-open .wp-menu-toggle,.js.rtl .meta-box-sortables .postbox:hover .handlediv,.rtl .sidebar-name-arrow{background-image:url("../images/arrows-vs-2x.png?ver=20120916");background-size:15px 123px}#adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,#adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle,.nav-menus-php .item-edit:hover,.sidebar-name:hover .sidebar-name-arrow,.rtl #adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,.rtl #adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle,.rtl .sidebar-name:hover .sidebar-name-arrow{background-image:url("../images/arrows-dark-vs-2x.png?ver=20120916");background-size:15px 123px}.view-switch #view-switch-list,.view-switch #view-switch-excerpt{background-image:url("../images/list-2x.png?ver=20120916");background-size:80px 20px}.icon32.icon-post,#icon-edit,#icon-post,.icon32.icon-dashboard,#icon-index,.icon32.icon-media,#icon-upload,.icon32.icon-links,#icon-link-manager,#icon-link,#icon-link-category,.icon32.icon-page,#icon-edit-pages,#icon-page,.icon32.icon-comments,#icon-edit-comments,.icon32.icon-appearance,#icon-themes,.icon32.icon-plugins,#icon-plugins,.icon32.icon-users,#icon-users,#icon-profile,#icon-user-edit,.icon32.icon-tools,#icon-tools,#icon-admin,.icon32.icon-settings,#icon-options-general,.icon32.icon-site,#icon-ms-admin,.icon32.icon-generic,#icon-generic{background-image:url(../images/icons32-vs-2x.png?ver=20121105);background-size:756px 45px}.icon16.icon-dashboard,.menu-icon-dashboard div.wp-menu-image,.icon16.icon-post,.menu-icon-post div.wp-menu-image,.icon16.icon-media,.menu-icon-media div.wp-menu-image,.icon16.icon-links,.menu-icon-links div.wp-menu-image,.icon16.icon-page,.menu-icon-page div.wp-menu-image,.icon16.icon-comments,.menu-icon-comments div.wp-menu-image,.icon16.icon-appearance,.menu-icon-appearance div.wp-menu-image,.icon16.icon-plugins,.menu-icon-plugins div.wp-menu-image,.icon16.icon-users,.menu-icon-users div.wp-menu-image,.icon16.icon-tools,.menu-icon-tools div.wp-menu-image,.icon16.icon-settings,.menu-icon-settings div.wp-menu-image,.icon16.icon-site,.menu-icon-site div.wp-menu-image,.icon16.icon-generic,.menu-icon-generic div.wp-menu-image{background-image:url('../images/menu-vs-2x.png?ver=20121105');background-size:390px 64px}#header-logo{background-image:url('../images/wp-logo-vs-2x.png?ver=20120916');background-size:16px auto}.post-format-icon{background-image:url(../images/post-formats32-vs.png);background-size:16px 304px}} \ No newline at end of file +.find-box-search,.find-box-buttons{background-color:#eff8ff;border-top:1px solid #dce6f8}.find-box{background-color:#5589aa}.find-box-head{color:#fff}.find-box-inside{background-color:#fff}a.page-numbers:hover{border-color:#999}body,#wpbody,.form-table .pre,.ui-autocomplete li a{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}table.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}ul.category-tabs li{border-color:transparent}div.tabs-panel,.wp-tab-panel,ul.add-menu-item-tabs li.tabs,.wp-tab-active{border-color:#d1e5ee;background-color:#fff}ul.category-tabs li.tabs{border-color:#d1e5ee #d1e5ee #fff}ul.category-tabs li.tabs,ul.add-menu-item-tabs li.tabs,.wp-tab-active{background-color:#fff}kbd,code{background:#eff8ff}textarea,input[type=text],input[type=password],input[type=file],input[type=email],input[type=number],input[type=search],input[type=tel],input[type=url],select{border-color:#d1e5ee}textarea:focus,input[type=text]:focus,input[type=password]:focus,input[type=file]: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:#b0c8d7}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}.revisions-meta,.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,.sidebar-name,#nav-menu-header,#nav-menu-footer,.menu-item-handle,#fullscreen-topbar{background:#f5fafd;background-image:-webkit-gradient(linear,left bottom,left top,from(#eff8ff),to(#f7fcfe));background-image:-webkit-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:-moz-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:-o-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:linear-gradient(to top,#eff8ff,#f7fcfe)}.widget .widget-top,.postbox h3,.stuffbox h3{border-bottom-color:#d1e5ee;text-shadow:#fff 0 1px 0;-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,.wrap .add-new-h2:active{background:#f1f1f1}.subtitle{color:#777}.ac_over{background-color:#f0f0b8}.ac_results{background-color:#fff;border-color:#b0c8d7}.ac_results li{color:#101010}.alternate,.alt{background-color:#f7fcfe}.available-theme a.screenshot{background-color:#eff8ff;border-color:#acd}#current-theme{border-bottom-color:#d1e5ee}.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,#commentsdiv #add-new-comment{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}.ui-autocomplete{border-color:#b0c8d7;background-color:#eff8ff}.ui-autocomplete li a.ui-state-focus{background-color:#def1ff}.post-com-count{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}a:hover,a:active{color:#d54e21}a:focus{color:#124964}#adminmenu a:hover,#adminmenu li.menu-top>a:focus,#adminmenu .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}#dashboard_right_now .table_content,#dashboard_right_now .table_discussion{border-top-color:#d1e5ee}#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:red;border-bottom-color:red}.submitbox .submitdelete:hover,#media-items a.delete:hover,#media-items a.delete-permanently:hover{color:#fff;background-color:red;border-bottom-color:red}#normal-sortables .submitbox .submitdelete:hover{color:#000;background-color:red;border-bottom-color:red}.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,.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{color:#333}th.sortable a:hover,th.sortable a:active,th.sortable a:focus{color:#333}th.sortable a:focus{background:#e1e1e1;background-image:-webkit-gradient(linear,left bottom,left top,from(#dcdcdc),to(#e9e9e9));background-image:-webkit-linear-gradient(bottom,#dcdcdc,#e9e9e9);background-image:-moz-linear-gradient(bottom,#dcdcdc,#e9e9e9);background-image:-o-linear-gradient(bottom,#dcdcdc,#e9e9e9);background-image:linear-gradient(to top,#dcdcdc,#e9e9e9)}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,#media-items a.delete-permanently,.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;-webkit-box-shadow:rgba(255,255,255,.5) 0 1px 0;box-shadow:rgba(255,255,255,.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;-webkit-box-shadow:rgba(255,255,255,.5) 0 1px 0;box-shadow:rgba(255,255,255,.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}#wpfooter{color:#777;border-color:#b0c8d7}.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:#f7fcfe}.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{background:#f5fafd;background-image:-webkit-gradient(linear,left bottom,left top,from(#eff8ff),to(#f7fcfe));background-image:-webkit-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:-moz-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:-o-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:linear-gradient(to top,#eff8ff,#f7fcfe);border-color:#d1e5ee}.welcome-panel p{color:#777}.welcome-panel-column p{color:#464646}.welcome-panel h3{text-shadow:1px 1px 1px #fff}.widget,#widget-list .widget-top,.postbox,#titlediv,#poststuff .postarea,.stuffbox{border-color:#d1e5ee;-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:#f5fafd;background-image:-webkit-gradient(linear,left bottom,left top,from(#eff8ff),to(#f7fcfe));background-image:-webkit-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:-moz-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:-o-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:linear-gradient(to top,#eff8ff,#f7fcfe)}.postbox h3{color:#174f69}.widget .widget-top{color:#174f69}.js .sidebar-name:hover h3,.js .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:#eff8ff;border-color:#d1e5ee;-webkit-box-shadow:0 1px 3px rgba(0,0,0,.05);box-shadow:0 1px 3px rgba(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{border-right:1px solid #d1e5ee;border-left:1px solid #d1e5ee;border-bottom:1px solid #d1e5ee;background:#eff8ff;background-image:-webkit-gradient(linear,left bottom,left top,from(#def1ff),to(#eff8ff));background-image:-webkit-linear-gradient(bottom,#def1ff,#eff8ff);background-image:-moz-linear-gradient(bottom,#def1ff,#eff8ff);background-image:-o-linear-gradient(bottom,#def1ff,#eff8ff);background-image:linear-gradient(to top,#def1ff,#eff8ff)}#screen-meta-links a{color:#606060;background:transparent url(../images/arrows.png) no-repeat right 4px}#screen-meta-links a:hover,#screen-meta-links a:active{color:#000;background-color:transparent}#screen-meta-links a.screen-meta-active{background-position:right -31px}.login #backtoblog a{color:#464646}#wphead{border-bottom:1px solid #d0dfe9}#wphead h1 a{color:#174f69}#wpfooter a:link,#wpfooter a:visited{text-decoration:none}#wpfooter 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:red}#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}#poststuff .wp-editor-wrap .wp_themeSkin .mceStatusbar{border-color:#d0dfe9;background-color:#eff8ff}#poststuff .wp-editor-wrap .wp_themeSkin .mceStatusbar *{color:#555}#poststuff #editor-toolbar .active{border-color:#d0dfe9 #d0dfe9 #eff8ff;background-color:#eff8ff;color:#333}.wp-editor-wrap .wp-editor-container,.wp-editor-wrap .wp_themeSkin table.mceLayout{border-color:#d1e5ee #d1e5ee #d0dfe9}#editorcontainer{border-color:#d1e5ee #d1e5ee #d0dfe9}#post-status-info{border-color:#d0dfe9 #d1e5ee #d1e5ee}.wp-admin .wp-editor-wrap .wp-switch-editor{background-color:#d3e9f2;border-color:#d1e5ee #d1e5ee #d3e9f2;color:#174F69}.wp-admin .wp-editor-wrap .wp-switch-editor:active{background-color:#f5fafd}.wp-admin .wp-editor-wrap.tmce-active .switch-tmce,.wp-admin .wp-editor-wrap.html-active .switch-html{background:#f7fcfe;border-color:#d1e5ee #d1e5ee #f7fcfe}.wp-admin .wp-editor-wrap .quicktags-toolbar,.wp-admin .wp-editor-wrap .wp_themeSkin tr.mceFirst td.mceToolbar{border-color:#d0dfe9;background-color:#f5fafd;background-image:-webkit-gradient(linear,left bottom,left top,from(#eff8ff),to(#f7fcfe));background-image:-webkit-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:-moz-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:-o-linear-gradient(bottom,#eff8ff,#f7fcfe);background-image:linear-gradient(to top,#eff8ff,#f7fcfe)}.wp-admin .wp_themeSkin table.mceListBox{border-color:#d1e5ee}.wp-admin .wp_themeSkin table.mceListBoxEnabled:hover,.wp-admin .wp_themeSkin table.mceListBoxEnabled:active,.wp-admin .wp_themeSkin table.mceListBoxHover,.wp-admin .wp_themeSkin table.mceListBoxHover:active,.wp-admin .wp_themeSkin table.mceListBoxSelected{border-color:#b8cfdf}.wp-admin .wp_themeSkin a.mceButtonEnabled:hover,.wp-admin .wp_themeSkin table.mceSplitButton:hover{border-color:#c3d2dc;background:#f4f9fc;background-image:-webkit-gradient(linear,left bottom,left top,from(#f4f9fc),to(#fff));background-image:-webkit-linear-gradient(bottom,#f4f9fc,#fff);background-image:-moz-linear-gradient(bottom,#f4f9fc,#fff);background-image:-o-linear-gradient(bottom,#f4f9fc,#fff);background-image:linear-gradient(to top,#f4f9fc,#fff)}.wp-admin .wp_themeSkin a.mceButton:active,.wp-admin .wp_themeSkin a.mceButtonEnabled:active,.wp-admin .wp_themeSkin a.mceButtonSelected:active,.wp-admin .wp_themeSkin a.mceButtonActive,.wp-admin .wp_themeSkin a.mceButtonActive:active,.wp-admin .wp_themeSkin a.mceButtonActive:hover,.wp-admin .wp_themeSkin .mceSplitButtonSelected table,.wp-admin .wp_themeSkin .mceSplitButtonSelected table:hover{border-color:#8f9da9 #c3d2dc #c3d2dc #8f9da9;background:#f4f9fc;background-image:-webkit-gradient(linear,left bottom,left top,from(#fff),to(#f4f9fc));background-image:-webkit-linear-gradient(bottom,#fff,#f4f9fc);background-image:-moz-linear-gradient(bottom,#fff,#f4f9fc);background-image:-o-linear-gradient(bottom,#fff,#f4f9fc);background-image:linear-gradient(to top,#fff,#f4f9fc)}.wp-admin .wp_themeSkin .mceSplitButtonSelected table a.mceOpen,.wp-admin .wp_themeSkin .mceSplitButtonSelected table a.mceAction{border-color:#8f9da9 #c3d2dc #c3d2dc #8f9da9}.wp-admin .wp_themeSkin .mceSplitButton:hover a{border-color:#c3d2dc}.editwidget .widget-inside{border-color:#d0dfe9}#titlediv #title{background-color:#fff}#tTips p#tTips_inside{background-color:#ddd;color:#333}#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 a.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,#adminmenu li.opensub>a.menu-top,#adminmenu li>a.menu-top:focus{background-color:#e0f1ff;color:#d54e21;text-shadow:0 1px 0 rgba(255,255,255,.4)}#adminmenu li.menu-top:hover>a span,#adminmenu li.menu-top>a:focus span{text-shadow:none}#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:#5589aa;background-image:-webkit-gradient(linear,left bottom,left top,from(#5589aa),to(#619bbb));background-image:-webkit-linear-gradient(bottom,#5589aa,#619bbb);background-image:-moz-linear-gradient(bottom,#5589aa,#619bbb);background-image:-o-linear-gradient(bottom,#5589aa,#619bbb);background-image:linear-gradient(to top,#5589aa,#619bbb)}#adminmenu .wp-menu-arrow div{background:#5589aa;background-image:-webkit-gradient(linear,right bottom,left top,from(#5589aa),to(#619bbb));background-image:-webkit-linear-gradient(bottom right,#5589aa,#619bbb);background-image:-moz-linear-gradient(bottom right,#5589aa,#619bbb);background-image:-o-linear-gradient(bottom right,#5589aa,#619bbb);background-image:linear-gradient(to top left,#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,.folded #adminmenu a.wp-has-current-submenu:focus+.wp-submenu,.folded #adminmenu .wp-has-current-submenu .wp-submenu{background-color:#fff;border-color:#d0dfe9;-webkit-box-shadow:2px 3px 6px rgba(0,0,0,.4);box-shadow:2px 3px 6px rgba(0,0,0,.4)}#adminmenu .wp-submenu .wp-submenu-head{background-color:#e0f1ff;color:#333}#collapse-menu{color:#a0c3d5;border-top-color:#f9f9f9}#collapse-menu:hover{color:#5a8fad}#collapse-button{border-color:#d0dfe9;background:#eff8ff;background-image:-webkit-gradient(linear,left bottom,left top,from(#eff8ff),to(#fff));background-image:-webkit-linear-gradient(bottom,#eff8ff,#fff);background-image:-moz-linear-gradient(bottom,#eff8ff,#fff);background-image:-o-linear-gradient(bottom,#eff8ff,#fff);background-image:linear-gradient(to top,#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}@media only screen and (max-width:900px){.auto-fold #adminmenu li.wp-has-current-submenu,.auto-fold #adminmenu li.current.menu-top{background-color:#5589aa;background-image:-webkit-gradient(linear,left bottom,left top,from(#5589aa),to(#619bbb));background-image:-webkit-linear-gradient(bottom,#5589aa,#619bbb);background-image:-moz-linear-gradient(bottom,#5589aa,#619bbb);background-image:-o-linear-gradient(bottom,#5589aa,#619bbb);background-image:linear-gradient(bottom,#5589aa,#619bbb)}.auto-fold #adminmenu li.wp-has-current-submenu,.auto-fold #adminmenu li.current.menu-top{border-top-color:#5a8fad;border-bottom-color:#5589aa}.auto-fold #adminmenu a.wp-has-current-submenu:focus+.wp-submenu,.auto-fold #adminmenu .wp-has-current-submenu .wp-submenu{background-color:#fff;border-color:#d0dfe9;-webkit-box-shadow:2px 3px 6px rgba(0,0,0,.4);box-shadow:2px 3px 6px rgba(0,0,0,.4)}.auto-fold #collapse-button div{background-position:0 -108px}}.icon16,.icon32,div.wp-menu-image{background-color:transparent;background-repeat:no-repeat}.icon16.icon-dashboard,.menu-icon-dashboard div.wp-menu-image,.icon16.icon-post,.menu-icon-post div.wp-menu-image,.icon16.icon-media,.menu-icon-media div.wp-menu-image,.icon16.icon-links,.menu-icon-links div.wp-menu-image,.icon16.icon-page,.menu-icon-page div.wp-menu-image,.icon16.icon-comments,.menu-icon-comments div.wp-menu-image,.icon16.icon-appearance,.menu-icon-appearance div.wp-menu-image,.icon16.icon-plugins,.menu-icon-plugins div.wp-menu-image,.icon16.icon-users,.menu-icon-users div.wp-menu-image,.icon16.icon-tools,.menu-icon-tools div.wp-menu-image,.icon16.icon-settings,.menu-icon-settings div.wp-menu-image,.icon16.icon-site,.menu-icon-site div.wp-menu-image,.icon16.icon-generic,.menu-icon-generic div.wp-menu-image{background-image:url(../images/menu-vs.png?ver=20121105)}.icon16.icon-dashboard,#adminmenu .menu-icon-dashboard div.wp-menu-image{background-position:-59px -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-position:-59px -1px}.icon16.icon-post,#adminmenu .menu-icon-post div.wp-menu-image{background-position:-269px -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.current div.wp-menu-image{background-position:-269px -1px}.icon16.icon-media,#adminmenu .menu-icon-media div.wp-menu-image{background-position:-119px -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.current div.wp-menu-image{background-position:-119px -1px}.icon16.icon-links,#adminmenu .menu-icon-links div.wp-menu-image{background-position:-89px -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.current div.wp-menu-image{background-position:-89px -1px}.icon16.icon-page,#adminmenu .menu-icon-page div.wp-menu-image{background-position:-149px -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.current div.wp-menu-image{background-position:-149px -1px}.icon16.icon-comments,#adminmenu .menu-icon-comments div.wp-menu-image{background-position:-29px -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-position:-29px -1px}.icon16.icon-appearance,#adminmenu .menu-icon-appearance div.wp-menu-image{background-position:1px -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.current div.wp-menu-image{background-position:1px -1px}.icon16.icon-plugins,#adminmenu .menu-icon-plugins div.wp-menu-image{background-position:-179px -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.current div.wp-menu-image{background-position:-179px -1px}.icon16.icon-users,#adminmenu .menu-icon-users div.wp-menu-image{background-position:-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-position:-300px -1px}.icon16.icon-tools,#adminmenu .menu-icon-tools div.wp-menu-image{background-position:-209px -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-position:-209px -1px}.icon16.icon-settings,#adminmenu .menu-icon-settings div.wp-menu-image{background-position:-239px -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.current div.wp-menu-image{background-position:-239px -1px}.icon16.icon-site,#adminmenu .menu-icon-site div.wp-menu-image{background-position:-359px -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.current div.wp-menu-image{background-position:-359px -1px}.icon16.icon-generic,#adminmenu .menu-icon-generic div.wp-menu-image{background-position:-330px -33px}#adminmenu .menu-icon-generic:hover div.wp-menu-image,#adminmenu .menu-icon-generic.wp-has-current-submenu div.wp-menu-image,#adminmenu .menu-icon-generic.current div.wp-menu-image{background-position:-330px -1px}.icon32.icon-post,#icon-edit,#icon-post,.icon32.icon-dashboard,#icon-index,.icon32.icon-media,#icon-upload,.icon32.icon-links,#icon-link-manager,#icon-link,#icon-link-category,.icon32.icon-page,#icon-edit-pages,#icon-page,.icon32.icon-comments,#icon-edit-comments,.icon32.icon-appearance,#icon-themes,.icon32.icon-plugins,#icon-plugins,.icon32.icon-users,#icon-users,#icon-profile,#icon-user-edit,.icon32.icon-tools,#icon-tools,#icon-admin,.icon32.icon-settings,#icon-options-general,.icon32.icon-site,#icon-ms-admin,.icon32.icon-generic,#icon-generic{background-image:url(../images/icons32-vs.png?ver=20121105)}.icon32.icon-post,#icon-edit,#icon-post{background-position:-552px -5px}.icon32.icon-dashboard,#icon-index{background-position:-137px -5px}.icon32.icon-media,#icon-upload{background-position:-251px -5px}.icon32.icon-links,#icon-link-manager,#icon-link,#icon-link-category{background-position:-190px -5px}.icon32.icon-page,#icon-edit-pages,#icon-page{background-position:-312px -5px}.icon32.icon-comments,#icon-edit-comments{background-position:-72px -5px}.icon32.icon-appearance,#icon-themes{background-position:-11px -5px}.icon32.icon-plugins,#icon-plugins{background-position:-370px -5px}.icon32.icon-users,#icon-users,#icon-profile,#icon-user-edit{background-position:-600px -5px}.icon32.icon-tools,#icon-tools,#icon-admin{background-position:-432px -5px}.icon32.icon-settings,#icon-options-general{background-position:-492px -5px}.icon32.icon-site,#icon-ms-admin{background-position:-659px -5px}.icon32.icon-generic,#icon-generic{background-position:-708px -5px}.post-format-icon{background:url(../images/post-formats-vs.png) no-repeat}table.diff .diff-deletedline{background-color:#ffe9e9}table.diff .diff-deletedline del{background-color:#faa}table.diff .diff-addedline{background-color:#e9ffe9}table.diff .diff-addedline ins{background-color:#afa}.revisions-meta{border:1px solid #d1e5ee}.revisions-controls{background:#fff;background:-webkit-gradient(linear,left bottom,left top,color-stop(0%,rgba(255,255,255,1)),color-stop(30px,rgba(255,255,255,1)),color-stop(100%,rgba(255,255,255,1)));background:-webkit-linear-gradient(bottom,rgba(255,255,255,0) 0,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%);background:-moz-linear-gradient(bottom,rgba(255,255,255,0) 0,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%);background:-o-linear-gradient(bottom,rgba(255,255,255,0) 0,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%);background:linear-gradient(to top,rgba(255,255,255,0) 0,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%)}.revisions-tooltip,.revisions-tooltip-arrow span{border-color:#d1e5ee;background-color:#fff}.revisions-tickmarks>div{border-color:#d1e5ee}.wp-slider.ui-slider{border-color:#d1e5ee}.wp-slider .ui-slider-handle{color:#333;border-color:none}.wp-slider .ui-slider-handle{border-color:#d0dfe9;background:#eff8ff;background-image:-webkit-gradient(linear,left bottom,left top,from(#eff8ff),to(#fff));background-image:-webkit-linear-gradient(bottom,#eff8ff,#fff);background-image:-moz-linear-gradient(bottom,#eff8ff,#fff);background-image:-o-linear-gradient(bottom,#eff8ff,#fff);background-image:linear-gradient(to top,#eff8ff,#fff)}.wp-slider .ui-slider-handle:hover,.wp-slider .ui-slider-handle:focus{border-color:#a0c3d5}.wp-slider .ui-slider-handle.ui-state-hover,.wp-slider .ui-slider-handle.ui-state-focus{border-color:#a0c3d5;outline:0}#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}#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}#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 .quick-edit-save{background-color:#f1f1f1}fieldset.inline-edit-col-right .inline-edit-col{border-color:#dfdfdf}.attention{color:#d54e21}.js .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;-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff}.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:#acd}#current-theme img{border-color:#b0c8d7}#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:#d1e5ee}#minor-publishing{border-bottom-color:#cae6ff}#post-body .misc-pub-section{border-left-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,.view-switch #view-switch-excerpt{background-color:transparent;background-image:url(../images/list.png);background-repeat:no-repeat}.view-switch #view-switch-list{background-position:0 0}.view-switch .current #view-switch-list{background-position:-40px 0}.view-switch #view-switch-excerpt{background-position:-20px 0}.view-switch .current #view-switch-excerpt{background-position:-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:#d1e5ee}div.widgets-sortables,#widgets-left .inactive,#available-widgets .widget-holder{background-color:#f7fcfe;border-color:#d0dfe9}#available-widgets .widget-description{color:#555}.sidebar-name{color:#464646;text-shadow:#fff 0 1px 0;border-color:#d0dfe9;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff}.js .sidebar-name:hover,.js #removing-widget{color:#d54e21}#removing-widget span{color:#000}.js .sidebar-name-arrow{background:transparent url(../images/arrows-vs.png) no-repeat 5px 9px}.js .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:red}#cancel-save:hover{background-color:red;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:red}.nav-menus-php .item-edit{background:transparent url(../images/arrows-vs.png) no-repeat 8px 10px;border-bottom-color:#eff8ff}.nav-menus-php .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}.nav-tab{border-color:#d1e5ee #d1e5ee #fff}.nav-tab:hover,.nav-tab-active{border-color:#acd #acd #fff}h2.nav-tab-wrapper,h3.nav-tab-wrapper{border-bottom-color:#acd}#menu-management .nav-tab-active,.menu-item-handle,.menu-item-settings{-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff}#menu-management .nav-tab-active{background:#f7fcfe;border-bottom-color:#f7fcfe}#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 #fff}.about-text{color:#777}.wp-badge{color:#fff;text-shadow:0 -1px 0 rgba(22,57,81,.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 #fff;color:#464646}.about-wrap h3{color:#333;text-shadow:1px 1px 1px #fff}.about-wrap .feature-section h4{color:#464646}.about-wrap h4.wp-people-group{text-shadow:1px 1px 1px #fff}.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{-webkit-box-shadow:0 0 4px rgba(0,0,0,.4);box-shadow:0 0 4px rgba(0,0,0,.4)}.about-wrap li.wp-person .title{color:#464646;text-shadow:1px 1px 1px #fff}.freedoms-php .about-wrap ol li{color:#999}.freedoms-php .about-wrap ol p{color:#464646}.rtl .bar{border-right-color:transparent;border-left-color:#99d}.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 .wp-submenu .wp-submenu-head{border-right-color:transparent;border-left-color:#d1e5ee}.rtl #adminmenu .wp-submenu,.rtl.folded #adminmenu .wp-has-current-submenu .wp-submenu{-webkit-box-shadow:-2px 2px 5px rgba(0,0,0,.4);box-shadow:-2px 2px 5px rgba(0,0,0,.4)}.rtl #adminmenu .wp-has-current-submenu .wp-submenu{-webkit-box-shadow:none;box-shadow:none}.rtl #collapse-button div{background-position:0 -108px}.rtl.folded #collapse-button div{background-position:0 -72px}@media only screen and (max-width:900px){.rtl.auto-fold #adminmenu a.wp-has-current-submenu:focus+.wp-submenu,.rtl.auto-fold #adminmenu .wp-has-current-submenu .wp-submenu{-webkit-box-shadow:-2px 2px 5px rgba(0,0,0,.4);box-shadow:-2px 2px 5px rgba(0,0,0,.4)}.rtl.auto-fold #collapse-button div{background-position:0 -72px}}.js.rtl .meta-box-sortables .postbox:hover .handlediv{background:transparent url(../images/arrows-vs.png) no-repeat 6px 7px}.rtl #post-body .misc-pub-section{border-right-color:transparent;border-left-color:#d1e5ee}.js.rtl .sidebar-name-arrow{background:transparent url(../images/arrows-vs.png) no-repeat 5px 9px}.js.rtl .sidebar-name:hover .sidebar-name-arrow{background:transparent url(../images/arrows-dark-vs.png) no-repeat 5px 9px}@media print,(-o-min-device-pixel-ratio:5/4),(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){.curtime #timestamp{background-image:url(../images/date-button-2x.gif?ver=20120916);background-size:16px auto}.tagchecklist span a,#bulk-titles div a,.tagchecklist span a:hover,#bulk-titles div a:hover{background-image:url(../images/xit-2x.gif?ver=20120916);background-size:20px auto}#screen-meta-links a.show-settings,#screen-meta-links a.show-settings.screen-meta-active,#adminmenu .wp-has-submenu:hover .wp-menu-toggle,#adminmenu .wp-menu-open .wp-menu-toggle,#collapse-button div,.nav-menus-php .item-edit,.js .meta-box-sortables .postbox:hover .handlediv,.sidebar-name-arrow,.rtl #adminmenu .wp-has-submenu:hover .wp-menu-toggle,.rtl #adminmenu .wp-menu-open .wp-menu-toggle,.js.rtl .meta-box-sortables .postbox:hover .handlediv,.rtl .sidebar-name-arrow{background-image:url(../images/arrows-vs-2x.png?ver=20120916);background-size:15px 123px}#adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,#adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle,.nav-menus-php .item-edit:hover,.sidebar-name:hover .sidebar-name-arrow,.rtl #adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,.rtl #adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle,.rtl .sidebar-name:hover .sidebar-name-arrow{background-image:url(../images/arrows-dark-vs-2x.png?ver=20120916);background-size:15px 123px}.view-switch #view-switch-list,.view-switch #view-switch-excerpt{background-image:url(../images/list-2x.png?ver=20120916);background-size:80px 20px}.icon32.icon-post,#icon-edit,#icon-post,.icon32.icon-dashboard,#icon-index,.icon32.icon-media,#icon-upload,.icon32.icon-links,#icon-link-manager,#icon-link,#icon-link-category,.icon32.icon-page,#icon-edit-pages,#icon-page,.icon32.icon-comments,#icon-edit-comments,.icon32.icon-appearance,#icon-themes,.icon32.icon-plugins,#icon-plugins,.icon32.icon-users,#icon-users,#icon-profile,#icon-user-edit,.icon32.icon-tools,#icon-tools,#icon-admin,.icon32.icon-settings,#icon-options-general,.icon32.icon-site,#icon-ms-admin,.icon32.icon-generic,#icon-generic{background-image:url(../images/icons32-vs-2x.png?ver=20121105);background-size:756px 45px}.icon16.icon-dashboard,.menu-icon-dashboard div.wp-menu-image,.icon16.icon-post,.menu-icon-post div.wp-menu-image,.icon16.icon-media,.menu-icon-media div.wp-menu-image,.icon16.icon-links,.menu-icon-links div.wp-menu-image,.icon16.icon-page,.menu-icon-page div.wp-menu-image,.icon16.icon-comments,.menu-icon-comments div.wp-menu-image,.icon16.icon-appearance,.menu-icon-appearance div.wp-menu-image,.icon16.icon-plugins,.menu-icon-plugins div.wp-menu-image,.icon16.icon-users,.menu-icon-users div.wp-menu-image,.icon16.icon-tools,.menu-icon-tools div.wp-menu-image,.icon16.icon-settings,.menu-icon-settings div.wp-menu-image,.icon16.icon-site,.menu-icon-site div.wp-menu-image,.icon16.icon-generic,.menu-icon-generic div.wp-menu-image{background-image:url(../images/menu-vs-2x.png?ver=20121105);background-size:390px 64px}#header-logo{background-image:url(../images/wp-logo-vs-2x.png?ver=20120916);background-size:16px auto}.post-format-icon{background-image:url(../images/post-formats32-vs.png);background-size:16px 304px}} \ No newline at end of file diff --git a/wp-admin/css/colors-fresh.css b/wp-admin/css/colors-fresh.css index 92d8332d..547d6f41 100644 --- a/wp-admin/css/colors-fresh.css +++ b/wp-admin/css/colors-fresh.css @@ -1889,13 +1889,6 @@ h2.nav-tab-wrapper, h3.nav-tab-wrapper { color: #464646; } -.about-wrap .feature-section img { - background: #fff; - border: 1px #ccc solid; - -webkit-box-shadow: 0 1px 3px rgba( 0, 0, 0, 0.3 ); - box-shadow: 0 1px 3px rgba( 0, 0, 0, 0.3 ); -} - .about-wrap h4.wp-people-group { text-shadow: 1px 1px 1px #fff; } diff --git a/wp-admin/css/colors-fresh.min.css b/wp-admin/css/colors-fresh.min.css index 9e9ed8b5..b51baf0d 100644 --- a/wp-admin/css/colors-fresh.min.css +++ b/wp-admin/css/colors-fresh.min.css @@ -1 +1 @@ -.find-box-search,.find-box-buttons{background-color:#f7f7f7;border-top:1px solid #ddd}.find-box{background-color:#444}.find-box-head{color:#eee}.find-box-inside{background-color:#fff}a.page-numbers:hover{border-color:#999}body,#wpbody,.form-table .pre,.ui-autocomplete li a{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}table.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}ul.category-tabs li{border-color:transparent}div.tabs-panel,.wp-tab-panel,ul.add-menu-item-tabs li.tabs,.wp-tab-active{border-color:#dfdfdf;background-color:#fff}ul.category-tabs li.tabs{border-color:#dfdfdf #dfdfdf #fff}ul.category-tabs li.tabs,ul.add-menu-item-tabs li.tabs,.wp-tab-active{background-color:#fff}kbd,code{background:#eaeaea}textarea,input[type="text"],input[type="password"],input[type="file"],input[type="email"],input[type="number"],input[type="search"],input[type="tel"],input[type="url"],select{border-color:#dfdfdf}textarea:focus,input[type="text"]:focus,input[type="password"]:focus,input[type="file"]: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:#aaa}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}.revisions-meta,.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,.sidebar-name,#nav-menu-header,#nav-menu-footer,.menu-item-handle{background:#f1f1f1;background-image:-webkit-gradient(linear,left bottom,left top,from(#ececec),to(#f9f9f9));background-image:-webkit-linear-gradient(bottom,#ececec,#f9f9f9);background-image:-moz-linear-gradient(bottom,#ececec,#f9f9f9);background-image:-o-linear-gradient(bottom,#ececec,#f9f9f9);background-image:linear-gradient(to top,#ececec,#f9f9f9)}.widget .widget-top,.postbox h3,.stuffbox h3{border-bottom-color:#dfdfdf;text-shadow:#fff 0 1px 0;-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,.wrap .add-new-h2:active{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}#current-theme{border-bottom-color:#dfdfdf}.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,#commentsdiv #add-new-comment{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}.ui-autocomplete{border-color:#aaa;background-color:#efefef}.ui-autocomplete li a.ui-state-focus{background-color:#ddd}.post-com-count{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}a:hover,a:active{color:#d54e21}a:focus{color:#124964}#adminmenu a:hover,#adminmenu li.menu-top>a:focus,#adminmenu .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}#dashboard_right_now .table_content,#dashboard_right_now .table_discussion{border-top-color:#ececec}.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,#media-items a.delete-permanently:hover,#nav-menu-footer .menu-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{color:#333}th.sortable a:hover,th.sortable a:active,th.sortable a:focus{color:#333}th.sortable a:focus{background:#e1e1e1;background-image:-webkit-gradient(linear,left bottom,left top,from(#dcdcdc),to(#e9e9e9));background-image:-webkit-linear-gradient(bottom,#dcdcdc,#e9e9e9);background-image:-moz-linear-gradient(bottom,#dcdcdc,#e9e9e9);background-image:-o-linear-gradient(bottom,#dcdcdc,#e9e9e9);background-image:linear-gradient(to top,#dcdcdc,#e9e9e9)}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,#media-items a.delete-permanently,.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;-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;-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}#wpfooter{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{background:#f5f5f5;background-image:-webkit-gradient(linear,left bottom,left top,from(#f5f5f5),to(#fafafa));background-image:-webkit-linear-gradient(bottom,#f5f5f5,#fafafa);background-image:-moz-linear-gradient(bottom,#f5f5f5,#fafafa);background-image:-o-linear-gradient(bottom,#f5f5f5,#fafafa);background-image:linear-gradient(to top,#f5f5f5,#fafafa);border-color:#dfdfdf}.welcome-panel p{color:#777}.welcome-panel-column p{color:#464646}.welcome-panel h3{text-shadow:1px 1px 1px #fff}.widget,#widget-list .widget-top,.postbox,#titlediv,#poststuff .postarea,.stuffbox{border-color:#dfdfdf;-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:#f5f5f5;background-image:-webkit-gradient(linear,left bottom,left top,from(#f5f5f5),to(#f9f9f9));background-image:-webkit-linear-gradient(bottom,#f5f5f5,#f9f9f9);background-image:-moz-linear-gradient(bottom,#f5f5f5,#f9f9f9);background-image:-o-linear-gradient(bottom,#f5f5f5,#f9f9f9);background-image:linear-gradient(to top,#f5f5f5,#f9f9f9)}.postbox h3{color:#464646}.widget .widget-top{color:#222}.js .sidebar-name:hover h3,.js .postbox h3:hover{color:#000}.curtime #timestamp{background-image:url(../images/date-button.gif)}#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:#333}#screen-options-link-wrap,#contextual-help-link-wrap{border-right:1px solid #ccc;border-left:1px solid #ccc;border-bottom:1px solid #ccc;background:#e3e3e3;background-image:-webkit-gradient(linear,left bottom,left top,from(#dfdfdf),to(#f1f1f1));background-image:-webkit-linear-gradient(bottom,#dfdfdf,#f1f1f1);background-image:-moz-linear-gradient(bottom,#dfdfdf,#f1f1f1);background-image:-o-linear-gradient(bottom,#dfdfdf,#f1f1f1);background-image:linear-gradient(to top,#dfdfdf,#f1f1f1)}#screen-meta-links a{color:#777;background:transparent url(../images/arrows.png) no-repeat right 4px}#screen-meta-links a:hover,#screen-meta-links a:active{color:#333;background-color:transparent}#screen-meta-links a.screen-meta-active{background-position:right -31px}.login #backtoblog a{color:#464646}#wphead{border-bottom:#dfdfdf 1px solid}#wphead h1 a{color:#464646}#wpfooter a:link,#wpfooter a:visited{text-decoration:none}#wpfooter a:hover{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}#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}#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 a.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,#adminmenu li.opensub>a.menu-top,#adminmenu li>a.menu-top:focus{background-color:#e4e4e4;color:#d54e21;text-shadow:0 1px 0 rgba(255,255,255,0.4)}#adminmenu li.menu-top:hover>a span,#adminmenu li.menu-top>a:focus span{text-shadow:none}#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:#777;background-image:-webkit-gradient(linear,left bottom,left top,from(#6d6d6d),to(#808080));background-image:-webkit-linear-gradient(bottom,#6d6d6d,#808080);background-image:-moz-linear-gradient(bottom,#6d6d6d,#808080);background-image:-o-linear-gradient(bottom,#6d6d6d,#808080);background-image:linear-gradient(to top,#6d6d6d,#808080)}#adminmenu .wp-menu-arrow div{background:#777;background-image:-webkit-gradient(linear,right bottom,left top,from(#6d6d6d),to(#808080));background-image:-webkit-linear-gradient(bottom right,#6d6d6d,#808080);background-image:-moz-linear-gradient(bottom right,#6d6d6d,#808080);background-image:-o-linear-gradient(bottom right,#6d6d6d,#808080);background-image:linear-gradient(to top left,#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,.folded #adminmenu a.wp-has-current-submenu:focus+.wp-submenu,.folded #adminmenu .wp-has-current-submenu .wp-submenu{background-color:#fff;border-color:#dfdfdf;-webkit-box-shadow:2px 3px 6px rgba(0,0,0,0.4);box-shadow:2px 3px 6px rgba(0,0,0,0.4)}#adminmenu .wp-submenu .wp-submenu-head{background-color:#e4e4e4;color:#333}#collapse-menu{color:#aaa;border-top-color:#f9f9f9}#collapse-menu:hover{color:#999}#collapse-button{border-color:#ccc;background:#f4f4f4;background-image:-webkit-gradient(linear,left bottom,left top,from(#dfdfdf),to(#fff));background-image:-webkit-linear-gradient(bottom,#dfdfdf,#fff);background-image:-moz-linear-gradient(bottom,#dfdfdf,#fff);background-image:-o-linear-gradient(bottom,#dfdfdf,#fff);background-image:linear-gradient(to top,#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}@media only screen and (max-width:900px){.auto-fold #adminmenu li.wp-has-current-submenu,.auto-fold #adminmenu li.current.menu-top{background-color:#777;background-image:-webkit-gradient(linear,left bottom,left top,from(#6d6d6d),to(#808080));background-image:-webkit-linear-gradient(bottom,#6d6d6d,#808080);background-image:-moz-linear-gradient(bottom,#6d6d6d,#808080);background-image:-o-linear-gradient(bottom,#6d6d6d,#808080);background-image:linear-gradient(bottom,#6d6d6d,#808080)}.auto-fold #adminmenu li.wp-has-current-submenu,.auto-fold #adminmenu li.current.menu-top{border-top-color:#808080;border-bottom-color:#6d6d6d}.auto-fold #adminmenu a.wp-has-current-submenu:focus+.wp-submenu,.auto-fold #adminmenu .wp-has-current-submenu .wp-submenu{background-color:#fff;border-color:#dfdfdf;-webkit-box-shadow:2px 3px 6px rgba(0,0,0,0.4);box-shadow:2px 3px 6px rgba(0,0,0,0.4)}.auto-fold #collapse-button div{background-position:0 -108px}}.icon16,.icon32,div.wp-menu-image{background-color:transparent;background-repeat:no-repeat}.icon16.icon-dashboard,.menu-icon-dashboard div.wp-menu-image,.icon16.icon-post,.menu-icon-post div.wp-menu-image,.icon16.icon-media,.menu-icon-media div.wp-menu-image,.icon16.icon-links,.menu-icon-links div.wp-menu-image,.icon16.icon-page,.menu-icon-page div.wp-menu-image,.icon16.icon-comments,.menu-icon-comments div.wp-menu-image,.icon16.icon-appearance,.menu-icon-appearance div.wp-menu-image,.icon16.icon-plugins,.menu-icon-plugins div.wp-menu-image,.icon16.icon-users,.menu-icon-users div.wp-menu-image,.icon16.icon-tools,.menu-icon-tools div.wp-menu-image,.icon16.icon-settings,.menu-icon-settings div.wp-menu-image,.icon16.icon-site,.menu-icon-site div.wp-menu-image,.icon16.icon-generic,.menu-icon-generic div.wp-menu-image{background-image:url(../images/menu.png?ver=20121105)}.icon16.icon-dashboard,#adminmenu .menu-icon-dashboard div.wp-menu-image{background-position:-59px -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-position:-59px -1px}.icon16.icon-post,#adminmenu .menu-icon-post div.wp-menu-image{background-position:-269px -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.current div.wp-menu-image{background-position:-269px -1px}.icon16.icon-media,#adminmenu .menu-icon-media div.wp-menu-image{background-position:-119px -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.current div.wp-menu-image{background-position:-119px -1px}.icon16.icon-links,#adminmenu .menu-icon-links div.wp-menu-image{background-position:-89px -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.current div.wp-menu-image{background-position:-89px -1px}.icon16.icon-page,#adminmenu .menu-icon-page div.wp-menu-image{background-position:-149px -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.current div.wp-menu-image{background-position:-149px -1px}.icon16.icon-comments,#adminmenu .menu-icon-comments div.wp-menu-image{background-position:-29px -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-position:-29px -1px}.icon16.icon-appearance,#adminmenu .menu-icon-appearance div.wp-menu-image{background-position:1px -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.current div.wp-menu-image{background-position:1px -1px}.icon16.icon-plugins,#adminmenu .menu-icon-plugins div.wp-menu-image{background-position:-179px -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.current div.wp-menu-image{background-position:-179px -1px}.icon16.icon-users,#adminmenu .menu-icon-users div.wp-menu-image{background-position:-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-position:-300px -1px}.icon16.icon-tools,#adminmenu .menu-icon-tools div.wp-menu-image{background-position:-209px -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-position:-209px -1px}.icon16.icon-settings,#adminmenu .menu-icon-settings div.wp-menu-image{background-position:-239px -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.current div.wp-menu-image{background-position:-239px -1px}.icon16.icon-site,#adminmenu .menu-icon-site div.wp-menu-image{background-position:-359px -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.current div.wp-menu-image{background-position:-359px -1px}.icon16.icon-generic,#adminmenu .menu-icon-generic div.wp-menu-image{background-position:-330px -33px}#adminmenu .menu-icon-generic:hover div.wp-menu-image,#adminmenu .menu-icon-generic.wp-has-current-submenu div.wp-menu-image,#adminmenu .menu-icon-generic.current div.wp-menu-image{background-position:-330px -1px}.icon32.icon-post,#icon-edit,#icon-post,.icon32.icon-dashboard,#icon-index,.icon32.icon-media,#icon-upload,.icon32.icon-links,#icon-link-manager,#icon-link,#icon-link-category,.icon32.icon-page,#icon-edit-pages,#icon-page,.icon32.icon-comments,#icon-edit-comments,.icon32.icon-appearance,#icon-themes,.icon32.icon-plugins,#icon-plugins,.icon32.icon-users,#icon-users,#icon-profile,#icon-user-edit,.icon32.icon-tools,#icon-tools,#icon-admin,.icon32.icon-settings,#icon-options-general,.icon32.icon-site,#icon-ms-admin,.icon32.icon-generic,#icon-generic{background-image:url(../images/icons32.png?ver=20121105)}.icon32.icon-post,#icon-edit,#icon-post{background-position:-552px -5px}.icon32.icon-dashboard,#icon-index{background-position:-137px -5px}.icon32.icon-media,#icon-upload{background-position:-251px -5px}.icon32.icon-links,#icon-link-manager,#icon-link,#icon-link-category{background-position:-190px -5px}.icon32.icon-page,#icon-edit-pages,#icon-page{background-position:-312px -5px}.icon32.icon-comments,#icon-edit-comments{background-position:-72px -5px}.icon32.icon-appearance,#icon-themes{background-position:-11px -5px}.icon32.icon-plugins,#icon-plugins{background-position:-370px -5px}.icon32.icon-users,#icon-users,#icon-profile,#icon-user-edit{background-position:-600px -5px}.icon32.icon-tools,#icon-tools,#icon-admin{background-position:-432px -5px}.icon32.icon-settings,#icon-options-general{background-position:-492px -5px}.icon32.icon-site,#icon-ms-admin{background-position:-659px -5px}.icon32.icon-generic,#icon-generic{background-position:-708px -5px}.post-format-icon{background:url(../images/post-formats.png) no-repeat}table.diff .diff-deletedline{background-color:#ffe9e9}table.diff .diff-deletedline del{background-color:#faa}table.diff .diff-addedline{background-color:#e9ffe9}table.diff .diff-addedline ins{background-color:#afa}.revisions-meta{border:1px solid #dfdfdf}.revisions-controls{background:#fff;background:-webkit-gradient(linear,left bottom,left top,color-stop(0%,rgba(255,255,255,1)),color-stop(30px,rgba(255,255,255,1)),color-stop(100%,rgba(255,255,255,1)));background:-webkit-linear-gradient(bottom,rgba(255,255,255,0) 0,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%);background:-moz-linear-gradient(bottom,rgba(255,255,255,0) 0,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%);background:-o-linear-gradient(bottom,rgba(255,255,255,0) 0,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%);background:linear-gradient(to top,rgba(255,255,255,0) 0,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%)}.revisions-tooltip,.revisions-tooltip-arrow span{border-color:#d7d7d7;background-color:#fff}.revisions-tickmarks>div{border-color:#aaa}.wp-slider.ui-slider{border-color:#d7d7d7}.wp-slider .ui-slider-handle{border-color:#ccc;border-radius:50%;background:#f4f4f4;background-image:-webkit-gradient(linear,left bottom,left top,from(#dfdfdf),to(#fff));background-image:-webkit-linear-gradient(bottom,#dfdfdf,#fff);background-image:-moz-linear-gradient(bottom,#dfdfdf,#fff);background-image:-o-linear-gradient(bottom,#dfdfdf,#fff);background-image:linear-gradient(to top,#dfdfdf,#fff);color:#333}.wp-slider .ui-slider-handle:hover,.wp-slider .ui-slider-handle:focus{border-color:#aaa}.wp-slider .ui-slider-handle.ui-state-hover,.wp-slider .ui-slider-handle.ui-state-focus{border-color:#aaa;outline:0}#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}#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}#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 .quick-edit-save{background-color:#f1f1f1}fieldset.inline-edit-col-right .inline-edit-col{border-color:#dfdfdf}.attention{color:#d54e21}.js .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;-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff}.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-left-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,.view-switch #view-switch-excerpt{background-color:transparent;background-image:url('../images/list.png');background-repeat:no-repeat}.view-switch #view-switch-list{background-position:0 0}.view-switch .current #view-switch-list{background-position:-40px 0}.view-switch #view-switch-excerpt{background-position:-20px 0}.view-switch .current #view-switch-excerpt{background-position:-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}div.widgets-sortables,#widgets-left .inactive,#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;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff}.js .sidebar-name:hover,.js #removing-widget{color:#d54e21}#removing-widget span{color:black}.js .sidebar-name-arrow{background:transparent url(../images/arrows.png) no-repeat 5px 9px}.js .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,.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}.nav-menus-php .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}.manage-menus{border:1px solid #eee;background:#fbfbfb}.theme-location-set{color:#999}.nav-menus-php .delete-action a{color:#bc0b0b}.is-submenu{color:#999}.nav-tab{border-color:#dfdfdf #dfdfdf #fff}.nav-tab:hover,.nav-tab-active{border-color:#ccc #ccc #fff}h2.nav-tab-wrapper,h3.nav-tab-wrapper{border-bottom-color:#ccc}#menu-management .nav-tab-active,.menu-item-handle,.menu-item-settings{-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}.about-wrap h1{color:#333;text-shadow:1px 1px 1px #fff}.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 #fff;color:#464646}.about-wrap h3{color:#333;text-shadow:1px 1px 1px #fff}.about-wrap .feature-section h4{color:#464646}.about-wrap .feature-section img{background:#fff;border:1px #ccc solid;-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.3);box-shadow:0 1px 3px rgba(0,0,0,0.3)}.about-wrap h4.wp-people-group{text-shadow:1px 1px 1px #fff}.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{-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 #fff}.freedoms-php .about-wrap ol li{color:#999}.freedoms-php .about-wrap ol p{color:#464646}.rtl .bar{border-right-color:transparent;border-left-color:#99d}.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 .wp-submenu .wp-submenu-head{border-right-color:transparent;border-left-color:#dfdfdf}.rtl #adminmenu .wp-submenu,.rtl.folded #adminmenu .wp-has-current-submenu .wp-submenu{-webkit-box-shadow:-2px 2px 5px rgba(0,0,0,0.4);box-shadow:-2px 2px 5px rgba(0,0,0,0.4)}.rtl #adminmenu .wp-has-current-submenu .wp-submenu{-webkit-box-shadow:none;box-shadow:none}.rtl #collapse-button div{background-position:0 -108px}.rtl.folded #collapse-button div{background-position:0 -72px}@media only screen and (max-width:900px){.rtl.auto-fold #adminmenu a.wp-has-current-submenu:focus+.wp-submenu,.rtl.auto-fold #adminmenu .wp-has-current-submenu .wp-submenu{-webkit-box-shadow:-2px 2px 5px rgba(0,0,0,0.4);box-shadow:-2px 2px 5px rgba(0,0,0,0.4)}.rtl.auto-fold #collapse-button div{background-position:0 -72px}}.js.rtl .meta-box-sortables .postbox:hover .handlediv{background:transparent url(../images/arrows.png) no-repeat 6px 7px}.rtl #post-body .misc-pub-section{border-right-color:transparent;border-left-color:#eee}.js.rtl .sidebar-name-arrow{background:transparent url(../images/arrows.png) no-repeat 5px 9px}.js.rtl .sidebar-name:hover .sidebar-name-arrow{background:transparent url(../images/arrows-dark.png) no-repeat 5px 9px}@media print,(-o-min-device-pixel-ratio:5/4),(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){.curtime #timestamp{background-image:url("../images/date-button-2x.gif?ver=20120916");background-size:16px auto}.tagchecklist span a,#bulk-titles div a,.tagchecklist span a:hover,#bulk-titles div a:hover{background-image:url("../images/xit-2x.gif?ver=20120916");background-size:20px auto}#screen-meta-links a.show-settings,#screen-meta-links a.show-settings.screen-meta-active,#adminmenu .wp-has-submenu:hover .wp-menu-toggle,#adminmenu .wp-menu-open .wp-menu-toggle,#collapse-button div,.nav-menus-php .item-edit,.js .meta-box-sortables .postbox:hover .handlediv,.sidebar-name-arrow,.rtl #adminmenu .wp-has-submenu:hover .wp-menu-toggle,.rtl #adminmenu .wp-menu-open .wp-menu-toggle,.js.rtl .meta-box-sortables .postbox:hover .handlediv,.rtl .sidebar-name-arrow{background-image:url("../images/arrows-2x.png?ver=20120916");background-size:15px 123px}#adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,#adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle,.sidebar-name:hover .sidebar-name-arrow,.nav-menus-php .item-edit:hover,.rtl #adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,.rtl #adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle,.rtl .sidebar-name:hover .sidebar-name-arrow{background-image:url("../images/arrows-dark-2x.png?ver=20120916");background-size:15px 123px}.view-switch #view-switch-list,.view-switch #view-switch-excerpt{background-image:url("../images/list-2x.png?ver=20120916");background-size:80px 20px}.icon32.icon-post,#icon-edit,#icon-post,.icon32.icon-dashboard,#icon-index,.icon32.icon-media,#icon-upload,.icon32.icon-links,#icon-link-manager,#icon-link,#icon-link-category,.icon32.icon-page,#icon-edit-pages,#icon-page,.icon32.icon-comments,#icon-edit-comments,.icon32.icon-appearance,#icon-themes,.icon32.icon-plugins,#icon-plugins,.icon32.icon-users,#icon-users,#icon-profile,#icon-user-edit,.icon32.icon-tools,#icon-tools,#icon-admin,.icon32.icon-settings,#icon-options-general,.icon32.icon-site,#icon-ms-admin,.icon32.icon-generic,#icon-generic{background-image:url(../images/icons32-2x.png?ver=20121105);background-size:756px 45px}.icon16.icon-dashboard,.menu-icon-dashboard div.wp-menu-image,.icon16.icon-post,.menu-icon-post div.wp-menu-image,.icon16.icon-media,.menu-icon-media div.wp-menu-image,.icon16.icon-links,.menu-icon-links div.wp-menu-image,.icon16.icon-page,.menu-icon-page div.wp-menu-image,.icon16.icon-comments,.menu-icon-comments div.wp-menu-image,.icon16.icon-appearance,.menu-icon-appearance div.wp-menu-image,.icon16.icon-plugins,.menu-icon-plugins div.wp-menu-image,.icon16.icon-users,.menu-icon-users div.wp-menu-image,.icon16.icon-tools,.menu-icon-tools div.wp-menu-image,.icon16.icon-settings,.menu-icon-settings div.wp-menu-image,.icon16.icon-site,.menu-icon-site div.wp-menu-image,.icon16.icon-generic,.menu-icon-generic div.wp-menu-image{background-image:url('../images/menu-2x.png?ver=20121105');background-size:390px 64px}#header-logo{background-image:url('../images/wp-logo-2x.png?ver=20120916');background-size:16px auto}.post-format-icon{background-image:url(../images/post-formats32.png);background-size:16px 304px}} \ No newline at end of file +.find-box-search,.find-box-buttons{background-color:#f7f7f7;border-top:1px solid #ddd}.find-box{background-color:#444}.find-box-head{color:#eee}.find-box-inside{background-color:#fff}a.page-numbers:hover{border-color:#999}body,#wpbody,.form-table .pre,.ui-autocomplete li a{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}table.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}ul.category-tabs li{border-color:transparent}div.tabs-panel,.wp-tab-panel,ul.add-menu-item-tabs li.tabs,.wp-tab-active{border-color:#dfdfdf;background-color:#fff}ul.category-tabs li.tabs{border-color:#dfdfdf #dfdfdf #fff}ul.category-tabs li.tabs,ul.add-menu-item-tabs li.tabs,.wp-tab-active{background-color:#fff}kbd,code{background:#eaeaea}textarea,input[type=text],input[type=password],input[type=file],input[type=email],input[type=number],input[type=search],input[type=tel],input[type=url],select{border-color:#dfdfdf}textarea:focus,input[type=text]:focus,input[type=password]:focus,input[type=file]: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:#aaa}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}.revisions-meta,.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,.sidebar-name,#nav-menu-header,#nav-menu-footer,.menu-item-handle{background:#f1f1f1;background-image:-webkit-gradient(linear,left bottom,left top,from(#ececec),to(#f9f9f9));background-image:-webkit-linear-gradient(bottom,#ececec,#f9f9f9);background-image:-moz-linear-gradient(bottom,#ececec,#f9f9f9);background-image:-o-linear-gradient(bottom,#ececec,#f9f9f9);background-image:linear-gradient(to top,#ececec,#f9f9f9)}.widget .widget-top,.postbox h3,.stuffbox h3{border-bottom-color:#dfdfdf;text-shadow:#fff 0 1px 0;-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,.wrap .add-new-h2:active{background:#f1f1f1}.subtitle{color:#777}.ac_over{background-color:#f0f0b8}.ac_results{background-color:#fff;border-color:gray}.ac_results li{color:#101010}.alternate,.alt{background-color:#fcfcfc}.available-theme a.screenshot{background-color:#f1f1f1;border-color:#ddd}#current-theme{border-bottom-color:#dfdfdf}.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,#commentsdiv #add-new-comment{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}.ui-autocomplete{border-color:#aaa;background-color:#efefef}.ui-autocomplete li a.ui-state-focus{background-color:#ddd}.post-com-count{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}a:hover,a:active{color:#d54e21}a:focus{color:#124964}#adminmenu a:hover,#adminmenu li.menu-top>a:focus,#adminmenu .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}#dashboard_right_now .table_content,#dashboard_right_now .table_discussion{border-top-color:#ececec}.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:red;border-bottom-color:red}.submitbox .submitdelete:hover,#media-items a.delete:hover,#media-items a.delete-permanently:hover,#nav-menu-footer .menu-delete:hover{color:#fff;background-color:red;border-bottom-color:red}#normal-sortables .submitbox .submitdelete:hover{color:#000;background-color:red;border-bottom-color:red}.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,.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{color:#333}th.sortable a:hover,th.sortable a:active,th.sortable a:focus{color:#333}th.sortable a:focus{background:#e1e1e1;background-image:-webkit-gradient(linear,left bottom,left top,from(#dcdcdc),to(#e9e9e9));background-image:-webkit-linear-gradient(bottom,#dcdcdc,#e9e9e9);background-image:-moz-linear-gradient(bottom,#dcdcdc,#e9e9e9);background-image:-o-linear-gradient(bottom,#dcdcdc,#e9e9e9);background-image:linear-gradient(to top,#dcdcdc,#e9e9e9)}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,#media-items a.delete-permanently,.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;-webkit-box-shadow:rgba(255,255,255,.5) 0 1px 0;box-shadow:rgba(255,255,255,.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;-webkit-box-shadow:rgba(255,255,255,.5) 0 1px 0;box-shadow:rgba(255,255,255,.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}#wpfooter{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{background:#f5f5f5;background-image:-webkit-gradient(linear,left bottom,left top,from(#f5f5f5),to(#fafafa));background-image:-webkit-linear-gradient(bottom,#f5f5f5,#fafafa);background-image:-moz-linear-gradient(bottom,#f5f5f5,#fafafa);background-image:-o-linear-gradient(bottom,#f5f5f5,#fafafa);background-image:linear-gradient(to top,#f5f5f5,#fafafa);border-color:#dfdfdf}.welcome-panel p{color:#777}.welcome-panel-column p{color:#464646}.welcome-panel h3{text-shadow:1px 1px 1px #fff}.widget,#widget-list .widget-top,.postbox,#titlediv,#poststuff .postarea,.stuffbox{border-color:#dfdfdf;-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:#f5f5f5;background-image:-webkit-gradient(linear,left bottom,left top,from(#f5f5f5),to(#f9f9f9));background-image:-webkit-linear-gradient(bottom,#f5f5f5,#f9f9f9);background-image:-moz-linear-gradient(bottom,#f5f5f5,#f9f9f9);background-image:-o-linear-gradient(bottom,#f5f5f5,#f9f9f9);background-image:linear-gradient(to top,#f5f5f5,#f9f9f9)}.postbox h3{color:#464646}.widget .widget-top{color:#222}.js .sidebar-name:hover h3,.js .postbox h3:hover{color:#000}.curtime #timestamp{background-image:url(../images/date-button.gif)}#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,.05);box-shadow:0 1px 3px rgba(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:#333}#screen-options-link-wrap,#contextual-help-link-wrap{border-right:1px solid #ccc;border-left:1px solid #ccc;border-bottom:1px solid #ccc;background:#e3e3e3;background-image:-webkit-gradient(linear,left bottom,left top,from(#dfdfdf),to(#f1f1f1));background-image:-webkit-linear-gradient(bottom,#dfdfdf,#f1f1f1);background-image:-moz-linear-gradient(bottom,#dfdfdf,#f1f1f1);background-image:-o-linear-gradient(bottom,#dfdfdf,#f1f1f1);background-image:linear-gradient(to top,#dfdfdf,#f1f1f1)}#screen-meta-links a{color:#777;background:transparent url(../images/arrows.png) no-repeat right 4px}#screen-meta-links a:hover,#screen-meta-links a:active{color:#333;background-color:transparent}#screen-meta-links a.screen-meta-active{background-position:right -31px}.login #backtoblog a{color:#464646}#wphead{border-bottom:#dfdfdf 1px solid}#wphead h1 a{color:#464646}#wpfooter a:link,#wpfooter a:visited{text-decoration:none}#wpfooter a:hover{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:red}#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}#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}#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 a.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,#adminmenu li.opensub>a.menu-top,#adminmenu li>a.menu-top:focus{background-color:#e4e4e4;color:#d54e21;text-shadow:0 1px 0 rgba(255,255,255,.4)}#adminmenu li.menu-top:hover>a span,#adminmenu li.menu-top>a:focus span{text-shadow:none}#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:#777;background-image:-webkit-gradient(linear,left bottom,left top,from(#6d6d6d),to(gray));background-image:-webkit-linear-gradient(bottom,#6d6d6d,gray);background-image:-moz-linear-gradient(bottom,#6d6d6d,gray);background-image:-o-linear-gradient(bottom,#6d6d6d,gray);background-image:linear-gradient(to top,#6d6d6d,gray)}#adminmenu .wp-menu-arrow div{background:#777;background-image:-webkit-gradient(linear,right bottom,left top,from(#6d6d6d),to(gray));background-image:-webkit-linear-gradient(bottom right,#6d6d6d,gray);background-image:-moz-linear-gradient(bottom right,#6d6d6d,gray);background-image:-o-linear-gradient(bottom right,#6d6d6d,gray);background-image:linear-gradient(to top left,#6d6d6d,gray)}#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:gray;border-bottom-color:#6d6d6d}.folded #adminmenu li.wp-has-current-submenu,.folded #adminmenu li.current.menu-top{border-top-color:gray;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,.folded #adminmenu a.wp-has-current-submenu:focus+.wp-submenu,.folded #adminmenu .wp-has-current-submenu .wp-submenu{background-color:#fff;border-color:#dfdfdf;-webkit-box-shadow:2px 3px 6px rgba(0,0,0,.4);box-shadow:2px 3px 6px rgba(0,0,0,.4)}#adminmenu .wp-submenu .wp-submenu-head{background-color:#e4e4e4;color:#333}#collapse-menu{color:#aaa;border-top-color:#f9f9f9}#collapse-menu:hover{color:#999}#collapse-button{border-color:#ccc;background:#f4f4f4;background-image:-webkit-gradient(linear,left bottom,left top,from(#dfdfdf),to(#fff));background-image:-webkit-linear-gradient(bottom,#dfdfdf,#fff);background-image:-moz-linear-gradient(bottom,#dfdfdf,#fff);background-image:-o-linear-gradient(bottom,#dfdfdf,#fff);background-image:linear-gradient(to top,#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}@media only screen and (max-width:900px){.auto-fold #adminmenu li.wp-has-current-submenu,.auto-fold #adminmenu li.current.menu-top{background-color:#777;background-image:-webkit-gradient(linear,left bottom,left top,from(#6d6d6d),to(gray));background-image:-webkit-linear-gradient(bottom,#6d6d6d,gray);background-image:-moz-linear-gradient(bottom,#6d6d6d,gray);background-image:-o-linear-gradient(bottom,#6d6d6d,gray);background-image:linear-gradient(bottom,#6d6d6d,gray)}.auto-fold #adminmenu li.wp-has-current-submenu,.auto-fold #adminmenu li.current.menu-top{border-top-color:gray;border-bottom-color:#6d6d6d}.auto-fold #adminmenu a.wp-has-current-submenu:focus+.wp-submenu,.auto-fold #adminmenu .wp-has-current-submenu .wp-submenu{background-color:#fff;border-color:#dfdfdf;-webkit-box-shadow:2px 3px 6px rgba(0,0,0,.4);box-shadow:2px 3px 6px rgba(0,0,0,.4)}.auto-fold #collapse-button div{background-position:0 -108px}}.icon16,.icon32,div.wp-menu-image{background-color:transparent;background-repeat:no-repeat}.icon16.icon-dashboard,.menu-icon-dashboard div.wp-menu-image,.icon16.icon-post,.menu-icon-post div.wp-menu-image,.icon16.icon-media,.menu-icon-media div.wp-menu-image,.icon16.icon-links,.menu-icon-links div.wp-menu-image,.icon16.icon-page,.menu-icon-page div.wp-menu-image,.icon16.icon-comments,.menu-icon-comments div.wp-menu-image,.icon16.icon-appearance,.menu-icon-appearance div.wp-menu-image,.icon16.icon-plugins,.menu-icon-plugins div.wp-menu-image,.icon16.icon-users,.menu-icon-users div.wp-menu-image,.icon16.icon-tools,.menu-icon-tools div.wp-menu-image,.icon16.icon-settings,.menu-icon-settings div.wp-menu-image,.icon16.icon-site,.menu-icon-site div.wp-menu-image,.icon16.icon-generic,.menu-icon-generic div.wp-menu-image{background-image:url(../images/menu.png?ver=20121105)}.icon16.icon-dashboard,#adminmenu .menu-icon-dashboard div.wp-menu-image{background-position:-59px -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-position:-59px -1px}.icon16.icon-post,#adminmenu .menu-icon-post div.wp-menu-image{background-position:-269px -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.current div.wp-menu-image{background-position:-269px -1px}.icon16.icon-media,#adminmenu .menu-icon-media div.wp-menu-image{background-position:-119px -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.current div.wp-menu-image{background-position:-119px -1px}.icon16.icon-links,#adminmenu .menu-icon-links div.wp-menu-image{background-position:-89px -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.current div.wp-menu-image{background-position:-89px -1px}.icon16.icon-page,#adminmenu .menu-icon-page div.wp-menu-image{background-position:-149px -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.current div.wp-menu-image{background-position:-149px -1px}.icon16.icon-comments,#adminmenu .menu-icon-comments div.wp-menu-image{background-position:-29px -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-position:-29px -1px}.icon16.icon-appearance,#adminmenu .menu-icon-appearance div.wp-menu-image{background-position:1px -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.current div.wp-menu-image{background-position:1px -1px}.icon16.icon-plugins,#adminmenu .menu-icon-plugins div.wp-menu-image{background-position:-179px -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.current div.wp-menu-image{background-position:-179px -1px}.icon16.icon-users,#adminmenu .menu-icon-users div.wp-menu-image{background-position:-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-position:-300px -1px}.icon16.icon-tools,#adminmenu .menu-icon-tools div.wp-menu-image{background-position:-209px -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-position:-209px -1px}.icon16.icon-settings,#adminmenu .menu-icon-settings div.wp-menu-image{background-position:-239px -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.current div.wp-menu-image{background-position:-239px -1px}.icon16.icon-site,#adminmenu .menu-icon-site div.wp-menu-image{background-position:-359px -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.current div.wp-menu-image{background-position:-359px -1px}.icon16.icon-generic,#adminmenu .menu-icon-generic div.wp-menu-image{background-position:-330px -33px}#adminmenu .menu-icon-generic:hover div.wp-menu-image,#adminmenu .menu-icon-generic.wp-has-current-submenu div.wp-menu-image,#adminmenu .menu-icon-generic.current div.wp-menu-image{background-position:-330px -1px}.icon32.icon-post,#icon-edit,#icon-post,.icon32.icon-dashboard,#icon-index,.icon32.icon-media,#icon-upload,.icon32.icon-links,#icon-link-manager,#icon-link,#icon-link-category,.icon32.icon-page,#icon-edit-pages,#icon-page,.icon32.icon-comments,#icon-edit-comments,.icon32.icon-appearance,#icon-themes,.icon32.icon-plugins,#icon-plugins,.icon32.icon-users,#icon-users,#icon-profile,#icon-user-edit,.icon32.icon-tools,#icon-tools,#icon-admin,.icon32.icon-settings,#icon-options-general,.icon32.icon-site,#icon-ms-admin,.icon32.icon-generic,#icon-generic{background-image:url(../images/icons32.png?ver=20121105)}.icon32.icon-post,#icon-edit,#icon-post{background-position:-552px -5px}.icon32.icon-dashboard,#icon-index{background-position:-137px -5px}.icon32.icon-media,#icon-upload{background-position:-251px -5px}.icon32.icon-links,#icon-link-manager,#icon-link,#icon-link-category{background-position:-190px -5px}.icon32.icon-page,#icon-edit-pages,#icon-page{background-position:-312px -5px}.icon32.icon-comments,#icon-edit-comments{background-position:-72px -5px}.icon32.icon-appearance,#icon-themes{background-position:-11px -5px}.icon32.icon-plugins,#icon-plugins{background-position:-370px -5px}.icon32.icon-users,#icon-users,#icon-profile,#icon-user-edit{background-position:-600px -5px}.icon32.icon-tools,#icon-tools,#icon-admin{background-position:-432px -5px}.icon32.icon-settings,#icon-options-general{background-position:-492px -5px}.icon32.icon-site,#icon-ms-admin{background-position:-659px -5px}.icon32.icon-generic,#icon-generic{background-position:-708px -5px}.post-format-icon{background:url(../images/post-formats.png) no-repeat}table.diff .diff-deletedline{background-color:#ffe9e9}table.diff .diff-deletedline del{background-color:#faa}table.diff .diff-addedline{background-color:#e9ffe9}table.diff .diff-addedline ins{background-color:#afa}.revisions-meta{border:1px solid #dfdfdf}.revisions-controls{background:#fff;background:-webkit-gradient(linear,left bottom,left top,color-stop(0%,rgba(255,255,255,1)),color-stop(30px,rgba(255,255,255,1)),color-stop(100%,rgba(255,255,255,1)));background:-webkit-linear-gradient(bottom,rgba(255,255,255,0) 0,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%);background:-moz-linear-gradient(bottom,rgba(255,255,255,0) 0,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%);background:-o-linear-gradient(bottom,rgba(255,255,255,0) 0,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%);background:linear-gradient(to top,rgba(255,255,255,0) 0,rgba(255,255,255,1) 30px,rgba(255,255,255,1) 100%)}.revisions-tooltip,.revisions-tooltip-arrow span{border-color:#d7d7d7;background-color:#fff}.revisions-tickmarks>div{border-color:#aaa}.wp-slider.ui-slider{border-color:#d7d7d7}.wp-slider .ui-slider-handle{border-color:#ccc;border-radius:50%;background:#f4f4f4;background-image:-webkit-gradient(linear,left bottom,left top,from(#dfdfdf),to(#fff));background-image:-webkit-linear-gradient(bottom,#dfdfdf,#fff);background-image:-moz-linear-gradient(bottom,#dfdfdf,#fff);background-image:-o-linear-gradient(bottom,#dfdfdf,#fff);background-image:linear-gradient(to top,#dfdfdf,#fff);color:#333}.wp-slider .ui-slider-handle:hover,.wp-slider .ui-slider-handle:focus{border-color:#aaa}.wp-slider .ui-slider-handle.ui-state-hover,.wp-slider .ui-slider-handle.ui-state-focus{border-color:#aaa;outline:0}#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}#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}#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 .quick-edit-save{background-color:#f1f1f1}fieldset.inline-edit-col-right .inline-edit-col{border-color:#dfdfdf}.attention{color:#d54e21}.js .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;-moz-box-shadow:inset 0 1px 0 #fff;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff}.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-left-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,.view-switch #view-switch-excerpt{background-color:transparent;background-image:url(../images/list.png);background-repeat:no-repeat}.view-switch #view-switch-list{background-position:0 0}.view-switch .current #view-switch-list{background-position:-40px 0}.view-switch #view-switch-excerpt{background-position:-20px 0}.view-switch .current #view-switch-excerpt{background-position:-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}div.widgets-sortables,#widgets-left .inactive,#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;-webkit-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 #fff}.js .sidebar-name:hover,.js #removing-widget{color:#d54e21}#removing-widget span{color:#000}.js .sidebar-name-arrow{background:transparent url(../images/arrows.png) no-repeat 5px 9px}.js .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:red}#cancel-save:hover{background-color:red;color:#fff}.list-container,.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:red}.nav-menus-php .item-edit{background:transparent url(../images/arrows.png) no-repeat 8px 10px;border-bottom-color:#eee}.nav-menus-php .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}.manage-menus{border:1px solid #eee;background:#fbfbfb}.theme-location-set{color:#999}.nav-menus-php .delete-action a{color:#bc0b0b}.is-submenu{color:#999}.nav-tab{border-color:#dfdfdf #dfdfdf #fff}.nav-tab:hover,.nav-tab-active{border-color:#ccc #ccc #fff}h2.nav-tab-wrapper,h3.nav-tab-wrapper{border-bottom-color:#ccc}#menu-management .nav-tab-active,.menu-item-handle,.menu-item-settings{-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}.about-wrap h1{color:#333;text-shadow:1px 1px 1px #fff}.about-text{color:#777}.wp-badge{color:#fff;text-shadow:0 -1px 0 rgba(22,57,81,.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 #fff;color:#464646}.about-wrap h3{color:#333;text-shadow:1px 1px 1px #fff}.about-wrap .feature-section h4{color:#464646}.about-wrap h4.wp-people-group{text-shadow:1px 1px 1px #fff}.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{-webkit-box-shadow:0 0 4px rgba(0,0,0,.4);box-shadow:0 0 4px rgba(0,0,0,.4)}.about-wrap li.wp-person .title{color:#464646;text-shadow:1px 1px 1px #fff}.freedoms-php .about-wrap ol li{color:#999}.freedoms-php .about-wrap ol p{color:#464646}.rtl .bar{border-right-color:transparent;border-left-color:#99d}.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 .wp-submenu .wp-submenu-head{border-right-color:transparent;border-left-color:#dfdfdf}.rtl #adminmenu .wp-submenu,.rtl.folded #adminmenu .wp-has-current-submenu .wp-submenu{-webkit-box-shadow:-2px 2px 5px rgba(0,0,0,.4);box-shadow:-2px 2px 5px rgba(0,0,0,.4)}.rtl #adminmenu .wp-has-current-submenu .wp-submenu{-webkit-box-shadow:none;box-shadow:none}.rtl #collapse-button div{background-position:0 -108px}.rtl.folded #collapse-button div{background-position:0 -72px}@media only screen and (max-width:900px){.rtl.auto-fold #adminmenu a.wp-has-current-submenu:focus+.wp-submenu,.rtl.auto-fold #adminmenu .wp-has-current-submenu .wp-submenu{-webkit-box-shadow:-2px 2px 5px rgba(0,0,0,.4);box-shadow:-2px 2px 5px rgba(0,0,0,.4)}.rtl.auto-fold #collapse-button div{background-position:0 -72px}}.js.rtl .meta-box-sortables .postbox:hover .handlediv{background:transparent url(../images/arrows.png) no-repeat 6px 7px}.rtl #post-body .misc-pub-section{border-right-color:transparent;border-left-color:#eee}.js.rtl .sidebar-name-arrow{background:transparent url(../images/arrows.png) no-repeat 5px 9px}.js.rtl .sidebar-name:hover .sidebar-name-arrow{background:transparent url(../images/arrows-dark.png) no-repeat 5px 9px}@media print,(-o-min-device-pixel-ratio:5/4),(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){.curtime #timestamp{background-image:url(../images/date-button-2x.gif?ver=20120916);background-size:16px auto}.tagchecklist span a,#bulk-titles div a,.tagchecklist span a:hover,#bulk-titles div a:hover{background-image:url(../images/xit-2x.gif?ver=20120916);background-size:20px auto}#screen-meta-links a.show-settings,#screen-meta-links a.show-settings.screen-meta-active,#adminmenu .wp-has-submenu:hover .wp-menu-toggle,#adminmenu .wp-menu-open .wp-menu-toggle,#collapse-button div,.nav-menus-php .item-edit,.js .meta-box-sortables .postbox:hover .handlediv,.sidebar-name-arrow,.rtl #adminmenu .wp-has-submenu:hover .wp-menu-toggle,.rtl #adminmenu .wp-menu-open .wp-menu-toggle,.js.rtl .meta-box-sortables .postbox:hover .handlediv,.rtl .sidebar-name-arrow{background-image:url(../images/arrows-2x.png?ver=20120916);background-size:15px 123px}#adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,#adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle,.sidebar-name:hover .sidebar-name-arrow,.nav-menus-php .item-edit:hover,.rtl #adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,.rtl #adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle,.rtl .sidebar-name:hover .sidebar-name-arrow{background-image:url(../images/arrows-dark-2x.png?ver=20120916);background-size:15px 123px}.view-switch #view-switch-list,.view-switch #view-switch-excerpt{background-image:url(../images/list-2x.png?ver=20120916);background-size:80px 20px}.icon32.icon-post,#icon-edit,#icon-post,.icon32.icon-dashboard,#icon-index,.icon32.icon-media,#icon-upload,.icon32.icon-links,#icon-link-manager,#icon-link,#icon-link-category,.icon32.icon-page,#icon-edit-pages,#icon-page,.icon32.icon-comments,#icon-edit-comments,.icon32.icon-appearance,#icon-themes,.icon32.icon-plugins,#icon-plugins,.icon32.icon-users,#icon-users,#icon-profile,#icon-user-edit,.icon32.icon-tools,#icon-tools,#icon-admin,.icon32.icon-settings,#icon-options-general,.icon32.icon-site,#icon-ms-admin,.icon32.icon-generic,#icon-generic{background-image:url(../images/icons32-2x.png?ver=20121105);background-size:756px 45px}.icon16.icon-dashboard,.menu-icon-dashboard div.wp-menu-image,.icon16.icon-post,.menu-icon-post div.wp-menu-image,.icon16.icon-media,.menu-icon-media div.wp-menu-image,.icon16.icon-links,.menu-icon-links div.wp-menu-image,.icon16.icon-page,.menu-icon-page div.wp-menu-image,.icon16.icon-comments,.menu-icon-comments div.wp-menu-image,.icon16.icon-appearance,.menu-icon-appearance div.wp-menu-image,.icon16.icon-plugins,.menu-icon-plugins div.wp-menu-image,.icon16.icon-users,.menu-icon-users div.wp-menu-image,.icon16.icon-tools,.menu-icon-tools div.wp-menu-image,.icon16.icon-settings,.menu-icon-settings div.wp-menu-image,.icon16.icon-site,.menu-icon-site div.wp-menu-image,.icon16.icon-generic,.menu-icon-generic div.wp-menu-image{background-image:url(../images/menu-2x.png?ver=20121105);background-size:390px 64px}#header-logo{background-image:url(../images/wp-logo-2x.png?ver=20120916);background-size:16px auto}.post-format-icon{background-image:url(../images/post-formats32.png);background-size:16px 304px}} \ No newline at end of file diff --git a/wp-admin/css/customize-controls-rtl.min.css b/wp-admin/css/customize-controls-rtl.min.css index 498d0ce1..80117e5f 100644 --- a/wp-admin/css/customize-controls-rtl.min.css +++ b/wp-admin/css/customize-controls-rtl.min.css @@ -1 +1 @@ -#customize-header-actions .button-primary{float:left}#customize-header-actions .spinner{float:left;margin-right:0;margin-left:4px}.customize-control{float:right}.customize-control-radio input,.customize-control-checkbox input{margin-right:0;margin-left:5px}.accordion-section .dropdown{float:right}.accordion-section .dropdown-content{float:right;margin-right:0;margin-left:16px;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.customize-control .dropdown-arrow{right:auto;left:0;border-color:#ccc;border-style:solid;border-width:1px 0 1px 1px;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.customize-control .dropdown-arrow:after{right:auto;left:4px}.customize-control-color .dropdown{margin-right:0;margin-left:5px}.accordion-section input[type="text"].color-picker-hex{direction:ltr}.accordion-section .customize-control-image .actions{text-align:left}.customize-control-image .library,.customize-control-image .actions,.accordion-section .customize-control-image .library ul,.accordion-section .customize-control-image .library li,.accordion-section .customize-control-image .library-content{float:right} \ No newline at end of file +#customize-header-actions .button-primary{float:left}#customize-header-actions .spinner{float:left;margin-right:0;margin-left:4px}.customize-control{float:right}.customize-control-radio input,.customize-control-checkbox input{margin-right:0;margin-left:5px}.accordion-section .dropdown{float:right}.accordion-section .dropdown-content{float:right;margin-right:0;margin-left:16px;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.customize-control .dropdown-arrow{right:auto;left:0;border-color:#ccc;border-style:solid;border-width:1px 0 1px 1px;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px}.customize-control .dropdown-arrow:after{right:auto;left:4px}.customize-control-color .dropdown{margin-right:0;margin-left:5px}.accordion-section input[type=text].color-picker-hex{direction:ltr}.accordion-section .customize-control-image .actions{text-align:left}.customize-control-image .library,.customize-control-image .actions,.accordion-section .customize-control-image .library ul,.accordion-section .customize-control-image .library li,.accordion-section .customize-control-image .library-content{float:right} \ No newline at end of file diff --git a/wp-admin/css/customize-controls.min.css b/wp-admin/css/customize-controls.min.css index 99e7ea19..a310000c 100644 --- a/wp-admin/css/customize-controls.min.css +++ b/wp-admin/css/customize-controls.min.css @@ -1 +1 @@ -body{overflow:hidden}#customize-controls a{text-decoration:none}#customize-info .accordion-section-content{background:transparent}#customize-info .preview-notice{font-size:13px;line-height:24px;color:#999}#customize-info .theme-name{font-size:20px;font-weight:200;line-height:24px;color:#333;display:block;text-shadow:0 1px 0 #fff}#customize-info .theme-screenshot{width:258px;border:1px solid #ccc}#customize-info .theme-description{margin-top:1em;color:#777;line-height:20px}#customize-controls .submit{text-align:center}#customize-theme-controls>ul,#customize-theme-controls .accordion-section-content{margin:0}#customize-header-actions .button-primary{float:right;margin-top:10px}#customize-header-actions .spinner{margin-top:16px;margin-right:4px}.saving #customize-header-actions .spinner{display:block}.customize-control{width:100%;float:left;clear:both;margin-bottom:8px}.customize-control-title{display:block;line-height:24px;font-weight:bold}.customize-control select,.customize-control input[type="text"],.customize-control input[type="radio"],.customize-control input[type="checkbox"],.customize-control-color .color-picker,.customize-control-checkbox label,.customize-control-upload div{line-height:28px}.customize-control input[type="text"]{width:98%;line-height:18px;margin:0}.customize-control select{min-width:50%;max-width:100%;height:28px;line-height:28px}.customize-control-checkbox input{margin-right:5px}.customize-control-radio{padding:5px 0 10px}.customize-control-radio .customize-control-title{margin-bottom:0;line-height:22px}.customize-control-radio label{line-height:20px}.customize-control-radio input{margin-right:5px}#customize-preview iframe{width:100%;height:100%}#customize-theme-controls .accordion-section-title:hover:after,#customize-theme-controls .accordion-section-title:focus:after{border-color:#eee transparent}#customize-theme-controls .control-section:hover .accordion-section-title,#customize-theme-controls .control-section .accordion-section-title:hover,#customize-theme-controls .control-section.open .accordion-section-title,#customize-theme-controls .control-section .accordion-section-title:focus{color:#fff;text-shadow:0 -1px 0 #333;background:#808080;background-image:-webkit-gradient(linear,left bottom,left top,from(#6d6d6d),to(#808080));background-image:-webkit-linear-gradient(bottom,#6d6d6d,#808080);background-image:-moz-linear-gradient(bottom,#6d6d6d,#808080);background-image:-o-linear-gradient(bottom,#6d6d6d,#808080);background-image:linear-gradient(to top,#6d6d6d,#808080);border-left:1px solid #808080;border-right:1px solid #808080}#customize-theme-controls .control-section.accordion-section:hover,#customize-theme-controls .control-section.accordion-section.open{border-top-color:#808080}#customize-theme-controls .control-section.open .accordion-section-title{border-bottom:1px solid #6d6d6d}.accordion-section .dropdown{float:left;display:block;position:relative;cursor:pointer;-webkit-border-radius:3px;border-radius:3px}.accordion-section .dropdown-content{overflow:hidden;float:left;min-width:30px;height:16px;line-height:16px;margin-right:16px;padding:4px 5px;background-color:#eee;border:1px solid #ccc;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.customize-control .dropdown-arrow{position:absolute;top:0;bottom:0;right:0;width:15px;border-color:#ccc;border-style:solid;border-width:1px 1px 1px 0;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.customize-control .dropdown-arrow:after{content:'';width:0;height:0;border-color:#ccc transparent;border-style:solid;border-width:4px 4px 0 4px;position:absolute;top:50%;margin-top:-1px;right:4px;z-index:1}.accordion-section .dropdown:hover .dropdown-content,.customize-control .dropdown:hover .dropdown-arrow{border-color:#aaa}.accordion-section .dropdown:hover .dropdown-arrow:after{border-color:#aaa transparent}.customize-control .dropdown-status{display:none;max-width:112px;color:#777}.customize-control-color .color-picker-hex{display:none}.customize-control-color.open .color-picker-hex{display:block}.customize-control-color .dropdown{margin-right:5px;margin-bottom:5px}.customize-control-color .dropdown .dropdown-content{background-color:#fff;border:1px solid rgba(0,0,0,0.15)}.customize-control-color .dropdown:hover .dropdown-content{border-color:rgba(0,0,0,0.25)}.accordion-section input[type="text"].color-picker-hex{width:65px;font-family:monospace;text-align:center;line-height:16px}.accordion-section input[type="text"].color-picker-hex:focus::-webkit-input-placeholder{color:transparent}.accordion-section input[type="text"].color-picker-hex:-moz-placeholder{color:#999}.customize-control-image .library,.customize-control-image .actions{display:none;float:left;width:100%}.customize-control-image.open .library,.customize-control-image.open .actions{display:block}.accordion-section .customize-control-image .dropdown-content{height:auto;min-height:24px;min-width:40px;padding:0}.accordion-section .customize-control-image .dropdown-status{padding:4px 5px}.accordion-section .customize-control-image .preview-thumbnail img{display:block;width:100%;max-width:122px;max-height:98px;margin:0 auto}.accordion-section .customize-control-image .actions{text-align:right}.accordion-section .customize-control-image .library ul{border-bottom:1px solid #dfdfdf;float:left;width:100%;margin:10px 0 0}.accordion-section .customize-control-image .library li{color:#999;float:left;padding:3px 5px;margin:0;border-style:solid;border-color:transparent;border-width:1px 1px 0 1px}.accordion-section .customize-control-image .library li.library-selected{margin-bottom:-1px;padding-bottom:4px;color:#777;background:#fdfdfd;border-color:#dfdfdf;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.accordion-section .customize-control-image .library-content{display:none;width:100%;float:left;padding:10px 0}.accordion-section .customize-control-image .library-content.library-selected{display:block}.accordion-section .customize-control-image .library .thumbnail{display:block;width:100%}.accordion-section .customize-control-image .library .thumbnail:hover img{border-color:#21759b}.accordion-section .customize-control-image .library .thumbnail img{display:block;max-width:90%;max-height:80px;margin:5px auto;padding:4px;background:#fff;border:1px solid #dfdfdf}.accordion-section .customize-control-upload .upload-fallback,.accordion-section .customize-control-image .upload-fallback{display:none}.accordion-section .customize-control-upload .upload-dropzone,.accordion-section .customize-control-image .upload-dropzone{display:none;padding:15px 10px;border:3px dashed #dfdfdf;margin:5px auto;text-align:center;color:#777;position:relative;cursor:default}.accordion-section .customize-control-upload .upload-dropzone.supports-drag-drop,.accordion-section .customize-control-image .upload-dropzone.supports-drag-drop{display:block;-webkit-transition:border-color .1s;-moz-transition:border-color .1s;-ms-transition:border-color .1s;-o-transition:border-color .1s;transition:border-color .1s}.accordion-section .customize-control-upload .library ul li,.accordion-section .customize-control-image .library ul li{cursor:pointer}.accordion-section .customize-control-upload .upload-dropzone.supports-drag-drop.drag-over,.accordion-section .customize-control-image .upload-dropzone.supports-drag-drop.drag-over{border-color:#83b4d8}.ios .wp-full-overlay{position:relative}.ios #customize-preview{position:relative}.ios #customize-controls .wp-full-overlay-sidebar-content{-webkit-overflow-scrolling:touch}body.cheatin{min-width:0;background:#f9f9f9;padding:50px}body.cheatin p{max-width:700px;margin:0 auto;padding:2em;font-size:14px;background:#fff;border:1px solid #dfdfdf;-webkit-border-radius:3px;border-radius:3px} \ No newline at end of file +body{overflow:hidden}#customize-controls a{text-decoration:none}#customize-info .accordion-section-content{background:transparent}#customize-info .preview-notice{font-size:13px;line-height:24px;color:#999}#customize-info .theme-name{font-size:20px;font-weight:200;line-height:24px;color:#333;display:block;text-shadow:0 1px 0 #fff}#customize-info .theme-screenshot{width:258px;border:1px solid #ccc}#customize-info .theme-description{margin-top:1em;color:#777;line-height:20px}#customize-controls .submit{text-align:center}#customize-theme-controls>ul,#customize-theme-controls .accordion-section-content{margin:0}#customize-header-actions .button-primary{float:right;margin-top:10px}#customize-header-actions .spinner{margin-top:16px;margin-right:4px}.saving #customize-header-actions .spinner{display:block}.customize-control{width:100%;float:left;clear:both;margin-bottom:8px}.customize-control-title{display:block;line-height:24px;font-weight:700}.customize-control select,.customize-control input[type=text],.customize-control input[type=radio],.customize-control input[type=checkbox],.customize-control-color .color-picker,.customize-control-checkbox label,.customize-control-upload div{line-height:28px}.customize-control input[type=text]{width:98%;line-height:18px;margin:0}.customize-control select{min-width:50%;max-width:100%;height:28px;line-height:28px}.customize-control-checkbox input{margin-right:5px}.customize-control-radio{padding:5px 0 10px}.customize-control-radio .customize-control-title{margin-bottom:0;line-height:22px}.customize-control-radio label{line-height:20px}.customize-control-radio input{margin-right:5px}#customize-preview iframe{width:100%;height:100%}#customize-theme-controls .accordion-section-title:hover:after,#customize-theme-controls .accordion-section-title:focus:after{border-color:#eee transparent}#customize-theme-controls .control-section:hover .accordion-section-title,#customize-theme-controls .control-section .accordion-section-title:hover,#customize-theme-controls .control-section.open .accordion-section-title,#customize-theme-controls .control-section .accordion-section-title:focus{color:#fff;text-shadow:0 -1px 0 #333;background:gray;background-image:-webkit-gradient(linear,left bottom,left top,from(#6d6d6d),to(gray));background-image:-webkit-linear-gradient(bottom,#6d6d6d,gray);background-image:-moz-linear-gradient(bottom,#6d6d6d,gray);background-image:-o-linear-gradient(bottom,#6d6d6d,gray);background-image:linear-gradient(to top,#6d6d6d,gray);border-left:1px solid gray;border-right:1px solid gray}#customize-theme-controls .control-section.accordion-section:hover,#customize-theme-controls .control-section.accordion-section.open{border-top-color:gray}#customize-theme-controls .control-section.open .accordion-section-title{border-bottom:1px solid #6d6d6d}.accordion-section .dropdown{float:left;display:block;position:relative;cursor:pointer;-webkit-border-radius:3px;border-radius:3px}.accordion-section .dropdown-content{overflow:hidden;float:left;min-width:30px;height:16px;line-height:16px;margin-right:16px;padding:4px 5px;background-color:#eee;border:1px solid #ccc;-webkit-border-radius:3px 0 0 3px;border-radius:3px 0 0 3px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.customize-control .dropdown-arrow{position:absolute;top:0;bottom:0;right:0;width:15px;border-color:#ccc;border-style:solid;border-width:1px 1px 1px 0;-webkit-border-radius:0 3px 3px 0;border-radius:0 3px 3px 0}.customize-control .dropdown-arrow:after{content:'';width:0;height:0;border-color:#ccc transparent;border-style:solid;border-width:4px 4px 0;position:absolute;top:50%;margin-top:-1px;right:4px;z-index:1}.accordion-section .dropdown:hover .dropdown-content,.customize-control .dropdown:hover .dropdown-arrow{border-color:#aaa}.accordion-section .dropdown:hover .dropdown-arrow:after{border-color:#aaa transparent}.customize-control .dropdown-status{display:none;max-width:112px;color:#777}.customize-control-color .color-picker-hex{display:none}.customize-control-color.open .color-picker-hex{display:block}.customize-control-color .dropdown{margin-right:5px;margin-bottom:5px}.customize-control-color .dropdown .dropdown-content{background-color:#fff;border:1px solid rgba(0,0,0,.15)}.customize-control-color .dropdown:hover .dropdown-content{border-color:rgba(0,0,0,.25)}.accordion-section input[type=text].color-picker-hex{width:65px;font-family:monospace;text-align:center;line-height:16px}.accordion-section input[type=text].color-picker-hex:focus::-webkit-input-placeholder{color:transparent}.accordion-section input[type=text].color-picker-hex:-moz-placeholder{color:#999}.customize-control-image .library,.customize-control-image .actions{display:none;float:left;width:100%}.customize-control-image.open .library,.customize-control-image.open .actions{display:block}.accordion-section .customize-control-image .dropdown-content{height:auto;min-height:24px;min-width:40px;padding:0}.accordion-section .customize-control-image .dropdown-status{padding:4px 5px}.accordion-section .customize-control-image .preview-thumbnail img{display:block;width:100%;max-width:122px;max-height:98px;margin:0 auto}.accordion-section .customize-control-image .actions{text-align:right}.accordion-section .customize-control-image .library ul{border-bottom:1px solid #dfdfdf;float:left;width:100%;margin:10px 0 0}.accordion-section .customize-control-image .library li{color:#999;float:left;padding:3px 5px;margin:0;border-style:solid;border-color:transparent;border-width:1px 1px 0}.accordion-section .customize-control-image .library li.library-selected{margin-bottom:-1px;padding-bottom:4px;color:#777;background:#fdfdfd;border-color:#dfdfdf;-webkit-border-radius:3px 3px 0 0;border-radius:3px 3px 0 0}.accordion-section .customize-control-image .library-content{display:none;width:100%;float:left;padding:10px 0}.accordion-section .customize-control-image .library-content.library-selected{display:block}.accordion-section .customize-control-image .library .thumbnail{display:block;width:100%}.accordion-section .customize-control-image .library .thumbnail:hover img{border-color:#21759b}.accordion-section .customize-control-image .library .thumbnail img{display:block;max-width:90%;max-height:80px;margin:5px auto;padding:4px;background:#fff;border:1px solid #dfdfdf}.accordion-section .customize-control-upload .upload-fallback,.accordion-section .customize-control-image .upload-fallback{display:none}.accordion-section .customize-control-upload .upload-dropzone,.accordion-section .customize-control-image .upload-dropzone{display:none;padding:15px 10px;border:3px dashed #dfdfdf;margin:5px auto;text-align:center;color:#777;position:relative;cursor:default}.accordion-section .customize-control-upload .upload-dropzone.supports-drag-drop,.accordion-section .customize-control-image .upload-dropzone.supports-drag-drop{display:block;-webkit-transition:border-color .1s;-moz-transition:border-color .1s;-ms-transition:border-color .1s;-o-transition:border-color .1s;transition:border-color .1s}.accordion-section .customize-control-upload .library ul li,.accordion-section .customize-control-image .library ul li{cursor:pointer}.accordion-section .customize-control-upload .upload-dropzone.supports-drag-drop.drag-over,.accordion-section .customize-control-image .upload-dropzone.supports-drag-drop.drag-over{border-color:#83b4d8}.ios .wp-full-overlay{position:relative}.ios #customize-preview{position:relative}.ios #customize-controls .wp-full-overlay-sidebar-content{-webkit-overflow-scrolling:touch}body.cheatin{min-width:0;background:#f9f9f9;padding:50px}body.cheatin p{max-width:700px;margin:0 auto;padding:2em;font-size:14px;background:#fff;border:1px solid #dfdfdf;-webkit-border-radius:3px;border-radius:3px} \ No newline at end of file diff --git a/wp-admin/css/ie-rtl.css b/wp-admin/css/ie-rtl.css index b947f0b2..51dfdff9 100644 --- a/wp-admin/css/ie-rtl.css +++ b/wp-admin/css/ie-rtl.css @@ -73,10 +73,6 @@ div#dashboard-widgets { padding-left: 1px; } -.tagchecklist span a { - margin: 4px -9px 0 0; -} - .widefat th input { margin: 0 5px 0 0; } diff --git a/wp-admin/css/ie-rtl.min.css b/wp-admin/css/ie-rtl.min.css index 9d3f77c8..4467ebdf 100644 --- a/wp-admin/css/ie-rtl.min.css +++ b/wp-admin/css/ie-rtl.min.css @@ -1 +1 @@ -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,#adminmenu .wp-menu-open .wp-submenu .wp-submenu{border:1px solid #dfdfdf}.folded #adminmenu .wp-submenu{right:30px}#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}.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}.available-theme .action-links li{padding-left:7px;margin-left:7px}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}#title-wrap #title-prompt-text{right:0}.screen-reader-text{right:auto;text-indent:-1000em} \ 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,#adminmenu .wp-menu-open .wp-submenu .wp-submenu{border:1px solid #dfdfdf}.folded #adminmenu .wp-submenu{right:30px}#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}.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}.available-theme .action-links li{padding-left:7px;margin-left:7px}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}#title-wrap #title-prompt-text{right:0}.screen-reader-text{right:auto;text-indent:-1000em} \ No newline at end of file diff --git a/wp-admin/css/ie.css b/wp-admin/css/ie.css index 98b7b379..7aa66859 100644 --- a/wp-admin/css/ie.css +++ b/wp-admin/css/ie.css @@ -371,10 +371,6 @@ div#dashboard-widgets { display: block; } -.tagchecklist span a { - margin: 4px 0 0 -9px; -} - .tablenav .button-secondary, .nav .button-secondary { padding-top: 2px; @@ -490,20 +486,6 @@ table.ie-fixed { 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; -} - .available-theme { display: inline; } @@ -517,13 +499,21 @@ table.ie-fixed { margin-right: 7px; } -.about-wrap .three-col-images img { - margin: 0 0.6% 10px; +.about-wrap .three-col.about-updates .col-2 { + width: 15%; } -.about-wrap .three-col-images .last-feature, -.about-wrap .three-col-images .first-feature { - float: none; +.about-wrap .about-password-meter input { + width: 98%; +} + +.revisions-tickmarks, +.revisions-tooltip { + display: none !important; +} + +.revisions.pinned .revisions-controls { + position: relative; } /* IE6 leftovers */ @@ -630,13 +620,3 @@ table.ie-fixed { * html #adminmenu div.wp-menu-image { height: 29px; } - -.revisions-tickmarks, -.revisions-tooltip { - display: none !important; -} - -.revisions.pinned .revisions-controls { - position: relative; -} - diff --git a/wp-admin/css/ie.min.css b/wp-admin/css/ie.min.css index d5650663..32e50b1c 100644 --- a/wp-admin/css/ie.min.css +++ b/wp-admin/css/ie.min.css @@ -1 +1 @@ -#dashboard-widgets form .input-text-wrap input,#dashboard-widgets form .textarea-wrap textarea{width:99%}#dashboard-widgets form #title{width:98%}.wp-editor-wrap .wp-editor-container textarea.wp-editor-area{width:97%}#post-body.columns-2 #postbox-container-1{padding-left:19px}.welcome-panel .wp-badge{position:absolute}.welcome-panel .welcome-panel-column:first-child{width:35%}#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,#adminmenu a{cursor:pointer}#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{border-top-color:transparent}#adminmenu .wp-submenu .wp-submenu-head{border-top-color:#ddd}.folded #adminmenu .wp-submenu ul{margin-left:5px}#adminmenu li.menu-top{margin-bottom:-2px}#adminmenu .wp-menu-arrow{display:none!important}.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{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,#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%}.button,input[type="reset"],input[type="button"],input[type="submit"]{padding:0 8px;line-height:20px;height:auto}.button.button-large,input[type="reset"].button-large,input[type="button"].button-large,input[type="submit"].button-large{padding:0 10px;line-height:24px;height:auto}.button.button-small,input[type="reset"].button-small,input[type="button"].button-small,input[type="submit"].button-small{padding:0 6px;line-height:16px;height:auto}a.button{margin:1px;padding:1px 9px 2px}a.button.button-large{padding:1px 11px 2px}a.button.button-small{padding:1px 7px 2px}#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-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}#widget-list .widget,.feature-filter .feature-group li{display:inline}.feature-filter .feature-group li input{vertical-align:middle}#editorcontainer #content{overflow:auto;margin:auto;width:98%}form#template div{width:100%}.wp-editor-container .quicktags-toolbar input{overflow:visible;padding:0 4px}#poststuff h2{font-size:1.6em}#poststuff .inside #parent_id,#poststuff .inside #page_template,.inline-edit-row #post_parent,.inline-edit-row select[name="page_template"]{width:250px}#submitdiv input,#submitdiv select,#submitdiv a.button{position:relative}#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}.subsubsub li{display:inline}a.post-state-format{text-indent:0;line-height:0;font-size:0}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 thead .check-column,.widefat tfoot .check-column{padding-top:6px}.widefat tbody th.check-column,.media.widefat tbody th.check-column{padding:4px 0 0}.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}.inactive-sidebar .widget{display:block;float:left}#wpcontent .button-primary-disabled{color:#9fd0d5;background:#298cba}#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}.available-theme{display:inline}.available-theme ul{margin:0}.available-theme .action-links li{padding-right:7px;margin-right:7px}.about-wrap .three-col-images img{margin:0 .6% 10px}.about-wrap .three-col-images .last-feature,.about-wrap .three-col-images .first-feature{float:none}* 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 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 .edit-box{display:inline}* 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 #wpfooter{margin:0}* html #adminmenu div.wp-menu-image{height:29px}.revisions-tickmarks,.revisions-tooltip{display:none!important}.revisions.pinned .revisions-controls{position:relative} \ No newline at end of file +#dashboard-widgets form .input-text-wrap input,#dashboard-widgets form .textarea-wrap textarea{width:99%}#dashboard-widgets form #title{width:98%}.wp-editor-wrap .wp-editor-container textarea.wp-editor-area{width:97%}#post-body.columns-2 #postbox-container-1{padding-left:19px}.welcome-panel .wp-badge{position:absolute}.welcome-panel .welcome-panel-column:first-child{width:35%}#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,#adminmenu a{cursor:pointer}#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{border-top-color:transparent}#adminmenu .wp-submenu .wp-submenu-head{border-top-color:#ddd}.folded #adminmenu .wp-submenu ul{margin-left:5px}#adminmenu li.menu-top{margin-bottom:-2px}#adminmenu .wp-menu-arrow{display:none!important}.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{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,#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%}.button,input[type=reset],input[type=button],input[type=submit]{padding:0 8px;line-height:20px;height:auto}.button.button-large,input[type=reset].button-large,input[type=button].button-large,input[type=submit].button-large{padding:0 10px;line-height:24px;height:auto}.button.button-small,input[type=reset].button-small,input[type=button].button-small,input[type=submit].button-small{padding:0 6px;line-height:16px;height:auto}a.button{margin:1px;padding:1px 9px 2px}a.button.button-large{padding:1px 11px 2px}a.button.button-small{padding:1px 7px 2px}#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-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}#widget-list .widget,.feature-filter .feature-group li{display:inline}.feature-filter .feature-group li input{vertical-align:middle}#editorcontainer #content{overflow:auto;margin:auto;width:98%}form#template div{width:100%}.wp-editor-container .quicktags-toolbar input{overflow:visible;padding:0 4px}#poststuff h2{font-size:1.6em}#poststuff .inside #parent_id,#poststuff .inside #page_template,.inline-edit-row #post_parent,.inline-edit-row select[name=page_template]{width:250px}#submitdiv input,#submitdiv select,#submitdiv a.button{position:relative}#bh{margin:7px 10px 0 0;float:right}div#dashboard-widgets{padding-right:1px}.tagchecklist span,.tagchecklist span a{display:inline-block;display:block}.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}.subsubsub li{display:inline}a.post-state-format{text-indent:0;line-height:0;font-size:0}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 thead .check-column,.widefat tfoot .check-column{padding-top:6px}.widefat tbody th.check-column,.media.widefat tbody th.check-column{padding:4px 0 0}.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}.inactive-sidebar .widget{display:block;float:left}#wpcontent .button-primary-disabled{color:#9FD0D5;background:#298CBA}#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}.available-theme{display:inline}.available-theme ul{margin:0}.available-theme .action-links li{padding-right:7px;margin-right:7px}.about-wrap .three-col.about-updates .col-2{width:15%}.about-wrap .about-password-meter input{width:98%}.revisions-tickmarks,.revisions-tooltip{display:none!important}.revisions.pinned .revisions-controls{position:relative}* 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 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 .edit-box{display:inline}* 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 #wpfooter{margin:0}* html #adminmenu div.wp-menu-image{height:29px} \ No newline at end of file diff --git a/wp-admin/css/install.css b/wp-admin/css/install.css index 1b33764a..03c0e98a 100644 --- a/wp-admin/css/install.css +++ b/wp-admin/css/install.css @@ -215,10 +215,12 @@ textarea { } .message { - border: 1px solid #e6db55; - padding: 0.3em 0.6em; + border: 1px solid #c00; + -webkit-border-radius: 3px; + border-radius: 3px; + padding: 0.5em 0.7em; margin: 5px 0 15px; - background-color: #ffffe0; + background-color: #ffebe8; } /* install-rtl */ diff --git a/wp-admin/css/install.min.css b/wp-admin/css/install.min.css index 062e10e0..6c6dac19 100644 --- a/wp-admin/css/install.min.css +++ b/wp-admin/css/install.min.css @@ -1 +1 @@ -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:0;text-align:center}#logo a{background-image:url('../images/wordpress-logo.png?ver=20120216');background-size:274px 63px;background-position:top center;background-repeat:no-repeat;height:67px;text-indent:-9999px;outline:0;overflow:hidden;display:block}@media print,(-o-min-device-pixel-ratio:5/4),(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){#logo a{background-image:url('../images/wordpress-logo-2x.png?ver=20120412');background-size:274px 63px}}.step{margin:20px 0 15px}.step,th{text-align:left;padding:0}.step .button-large{font-size:14px}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 #dbname,.rtl #uname,.rtl #pwd,.rtl #dbhost,.rtl #prefix,.rtl #user_login,.rtl #admin_email,.rtl #pass1,.rtl #pass2{direction:ltr} \ 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;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;border-bottom:0;text-align:center}#logo a{background-image:url(../images/wordpress-logo.png?ver=20120216);background-size:274px 63px;background-position:top center;background-repeat:no-repeat;height:67px;text-indent:-9999px;outline:0;overflow:hidden;display:block}@media print,(-o-min-device-pixel-ratio:5/4),(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){#logo a{background-image:url(../images/wordpress-logo-2x.png?ver=20120412);background-size:274px 63px}}.step{margin:20px 0 15px}.step,th{text-align:left;padding:0}.step .button-large{font-size:14px}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;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:400}.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 #c00;-webkit-border-radius:3px;border-radius:3px;padding:.5em .7em;margin:5px 0 15px;background-color:#ffebe8}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 #dbname,.rtl #uname,.rtl #pwd,.rtl #dbhost,.rtl #prefix,.rtl #user_login,.rtl #admin_email,.rtl #pass1,.rtl #pass2{direction:ltr} \ No newline at end of file diff --git a/wp-admin/css/media.min.css b/wp-admin/css/media.min.css index c414cfaf..fbdeea23 100644 --- a/wp-admin/css/media.min.css +++ b/wp-admin/css/media.min.css @@ -1 +1 @@ -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:0;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:0}.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-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}@media print,(-o-min-device-pixel-ratio:5/4),(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){.image-align-none-label{background-image:url("../images/align-none-2x.png?ver=20120916");background-size:21px 15px}.image-align-left-label{background-image:url("../images/align-left-2x.png?ver=20120916");background-size:22px 15px}.image-align-center-label{background-image:url("../images/align-center-2x.png?ver=20120916");background-size:21px 15px}.image-align-right-label{background-image:url("../images/align-right-2x.png?ver=20120916");background-size:22px 15px}} \ No newline at end of file +div#media-upload-header{margin:0;padding:5px 5px 0;font-weight:700;position:relative;border-bottom-width:1px;border-bottom-style:solid}body#media-upload ul#sidemenu{font-weight:400;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:400}.media-upload-form p.help{margin:0;padding:0}.media-upload-form fieldset{width:100%;border:0;text-align:justify;margin:0 0 1em;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:0}.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:400}#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-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:400;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}@media print,(-o-min-device-pixel-ratio:5/4),(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){.image-align-none-label{background-image:url(../images/align-none-2x.png?ver=20120916);background-size:21px 15px}.image-align-left-label{background-image:url(../images/align-left-2x.png?ver=20120916);background-size:22px 15px}.image-align-center-label{background-image:url(../images/align-center-2x.png?ver=20120916);background-size:21px 15px}.image-align-right-label{background-image:url(../images/align-right-2x.png?ver=20120916);background-size:22px 15px}} \ No newline at end of file diff --git a/wp-admin/css/wp-admin-rtl.css b/wp-admin/css/wp-admin-rtl.css index 3061592a..5221a043 100644 --- a/wp-admin/css/wp-admin-rtl.css +++ b/wp-admin/css/wp-admin-rtl.css @@ -1706,38 +1706,21 @@ h2 .nav-tab { float: right; } +.about-wrap .feature-section.two-col div, .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 { +.about-wrap .feature-section.col .last-feature { margin-left: 0; } -.about-wrap .feature-section img { - margin: 0 0 10px 0.7%; -} - -.about-wrap .feature-section.images-stagger-right img, -.about-wrap .feature-section.images-stagger-right .video { +.about-wrap .feature-section div p img { float: left; - margin: 0 2em 12px 5px; -} - -.about-wrap .feature-section.images-stagger-left img { - float: right; - margin: 0 5px 12px 2em; + margin-left: 0; + margin-right: 10px; } .about-wrap li.wp-person, @@ -1747,25 +1730,6 @@ h2 .nav-tab { margin-left: 10px; } -@media only screen and (max-width: 900px) { - .about-wrap .feature-section.images-stagger-right .video.image-66 { - margin-right: 3px; - } -} - -@media only screen and (max-width: 768px) { - .about-wrap .feature-section .image-66 { - float: none; - } - - .about-wrap .feature-section.images-stagger-right .image-66 { - margin-right: 3px; - } - - .about-wrap .feature-section.images-stagger-left .image-66 { - margin-left: 3px; - } -} /*------------------------------------------------------------------------------ 23.0 - Misc @@ -1799,7 +1763,7 @@ h2 .nav-tab { } .tagchecklist span a { - margin: 6px -9px 0pt 0pt; + margin: 4px -10px 0 0; float: right; } diff --git a/wp-admin/css/wp-admin-rtl.min.css b/wp-admin/css/wp-admin-rtl.min.css index b8b6fe8b..4da46f69 100644 --- a/wp-admin/css/wp-admin-rtl.min.css +++ b/wp-admin/css/wp-admin-rtl.min.css @@ -1 +1 @@ -ol{margin-left:0;margin-right:2em}.code,code{font-family:monospace;direction:ltr}.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}.search-box input[name="s"],#search-plugins input[name="s"],.tagsdiv .newtag{float:right;margin-right:0;margin-left:4px}input[type=password]{direction:ltr}input[type="text"].ui-autocomplete-loading{background:transparent url('../images/loading.gif') no-repeat left center}ul#add-to-blog-users{margin:0 14px 0 0}.ui-autocomplete li{text-align:right}#delete-action{float:right}#publishing-action{float:left;text-align:left}#publishing-action .spinner{float:right}#post-body .misc-pub-section{border-right:0;border-left-width:1px;border-left-style:solid}#post-body .misc-pub-section-last{border-left:0}#minor-publishing-actions{padding:10px 8px 2px 10px;text-align:left}#save-post{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}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}#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}.folded #wpcontent{margin-left:0;margin-right:52px}.folded.wp-admin #wpfooter{margin-left:15px;margin-right:52px}#adminmenuback,#adminmenuwrap{border-width:0 0 0 1px}#adminmenushadow{right:auto;left:0}#adminmenu li .wp-submenu{left:auto;right:146px}.folded #adminmenu .wp-submenu.sub-open,.folded #adminmenu .opensub .wp-submenu,.folded #adminmenu .wp-has-current-submenu .wp-submenu.sub-open,.folded #adminmenu .wp-has-current-submenu.opensub .wp-submenu,.folded #adminmenu a.menu-top:focus+.wp-submenu,.folded #adminmenu .wp-has-current-submenu a.menu-top:focus+.wp-submenu,.no-js.folded #adminmenu .wp-has-submenu:hover .wp-submenu{left:auto;right:32px}#adminmenu div.wp-menu-image,.folded #adminmenu div.wp-menu-image{float:right;width:30px}#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}.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 #adminmenu li .wp-menu-arrow{-moz-transform:translate(-26px);-webkit-transform:translate(-26px);-o-transform:translate(-26px);-ms-transform:translate(-26px);transform:translate(-26px)}#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{padding:7px 7px 0 0}#adminmenu .wp-submenu .wp-submenu-head{padding:5px 10px 5px 4px;-webkit-border-top-right-radius:0;-webkit-border-top-left-radius:3px;border-top-right-radius:0;border-top-left-radius:3px}.folded #adminmenu li.wp-has-current-submenu .wp-submenu{border-width:1px;border-style: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}#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}@media only screen and (max-width:900px){.auto-fold #wpcontent{margin-left:0;margin-right:52px}.auto-fold.wp-admin #wpfooter{margin-left:15px;margin-right:52px}.auto-fold #adminmenu div.wp-menu-image{float:right;width:30px}.auto-fold #adminmenu .wp-submenu.sub-open,.auto-fold #adminmenu .opensub .wp-submenu,.auto-fold #adminmenu .wp-has-current-submenu .wp-submenu.sub-open,.auto-fold #adminmenu .wp-has-current-submenu.opensub .wp-submenu,.auto-fold #adminmenu a.menu-top:focus+.wp-submenu,.auto-fold #adminmenu .wp-has-current-submenu a.menu-top:focus+.wp-submenu,.no-js.auto-fold #adminmenu .wp-has-submenu:hover .wp-submenu{left:auto;right:32px}.auto-fold #adminmenu .wp-not-current-submenu li a{padding-left:0;padding-right:12px}.auto-fold #adminmenu li .wp-menu-arrow{-moz-transform:translate(-27px);-webkit-transform:translate(-27px);-o-transform:translate(-27px);-ms-transform:translate(-27px);transform:translate(-27px)}.auto-fold #adminmenu li.wp-has-current-submenu .wp-submenu{border-width:1px;border-style: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}}.post-com-count-wrapper{font-family:Tahoma,Arial,sans-serif}.post-com-count{background-image:url('../images/bubble_bg-rtl.gif')}.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}.postbox-container{float:right}#post-body-content{float:right}#poststuff #post-body.columns-2{margin-left:300px;margin-right:0}#post-body.columns-2 #postbox-container-1{float:left;margin-left:-300px;margin-right:0}@media only screen and (max-width:850px){#wpbody-content #post-body.columns-2 #postbox-container-1{margin-left:0}}.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-content{margin-left:0;margin-right:13px}.welcome-panel .welcome-panel-column{float:right}.welcome-panel .welcome-panel-column ul{margin-right:0;margin-left:1em}.welcome-panel .welcome-panel-column li{padding-left:0;padding-right:2px}.welcome-panel .welcome-add-page{background-position:right 2px}.welcome-panel .welcome-edit-page{background-position:right -90px}.welcome-panel .welcome-learn-more{background-position:right -136px}.welcome-panel .welcome-comments{background-position:right -182px}.welcome-panel .welcome-view-site{background-position:right -274px}.welcome-panel .welcome-widgets-menus{background-position:right -229px;line-height:14px}.welcome-panel .welcome-write-blog{background-position:right -44px}.welcome-panel .welcome-icon{padding:2px 32px 8px 0}@media screen and (max-width:870px){.welcome-panel .welcome-panel-column li{margin-right:0;margin-left:13px}.welcome-panel .welcome-icon{padding-right:25px;padding-left:0}}.fixed .column-comments{text-align:right}.fixed .column-comments .vers{padding-left:0;padding-right:3px}.fixed .column-comments a{float:right}.fixed .column-menus{text-align:right}.sorting-indicator{margin-left:0;margin-right:7px}tr.wp-locked .locked-indicator{margin:-2px 6px 0 0}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:normal}.tablenav .actions{padding:2px 0 0 8px}.tablenav .actions select{float:right;margin-right:0;margin-left:6px}.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 #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}#save-action .spinner,#show-comments a,#show-comments .spinner{float:right}#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}#wp-fullscreen-save .spinner,#wp-fullscreen-save .fs-saved{float:left}#edit-slug-box .cancel{margin-right:0;margin-left:10px}.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}.taxonomy div.tabs-panel{margin:0 125px 0 5px}#side-sortables .comments-box thead th,#normal-sortables .comments-box thead th{font-style:normal}#commentsdiv .spinner{padding-left:0;padding-right:5px}#post-body .add-menu-item-tabs li.tabs{border-width:1px 1px 1px 0;margin-right:0;margin-left:-1px}#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}.compat-attachment-fields th{padding-right:0;padding-left:10px}#post-lock-dialog .post-locked-message a.button{margin-right:0;margin-left:10px}#post-lock-dialog .post-locked-avatar{float:right;margin:0 0 20px 20px}#post-lock-dialog .locked-saving img{float:right;margin-right:0;margin-left:3px}.wp-slider .ui-slider-handle.from-handle:before,.wp-slider .ui-slider-handle.to-handle:before{height:8px;width:7px}.wp-slider .ui-slider-handle.from-handle:before{background-position:-5px -10px;left:6px}.wp-slider .ui-slider-handle.to-handle:before{background-position:-4px -29px;left:6px}.revision-toggle-compare-mode{right:auto;left:0}.revisions .loading-indicator{margin-right:-90px}body.folded .revisions .loading-indicator{margin-right:-32px}.revisions-next{float:left}.revisions-previous{float:right}.diff-title strong{text-align:left;float:right;margin-right:0;margin-left:5px}.revisions-controls .author-card .avatar,.revisions-controls .author-card .author-info{float:right}.diff-meta input.restore-revision{float:left}.diff-col-title-added,.diff-col-title-removed{text-align:right;float:right}.revisions-tooltip{margin-left:0;margin-right:-69px}.revisions-tooltip.flipped{margin-right:0;margin-left:-70px}.ie8 .revisions-tooltip{margin-right:-75px}.ie8 .revisions-tooltip.flipped{margin-left:-63px}.revisions-tooltip-arrow{right:0;margin-left:0;margin-right:35px}.revisions-tooltip.flipped .revisions-tooltip-arrow{margin-right:0;margin-left:35px;right:auto;left:0}.revisions-tooltip-arrow>span{left:auto;right:20px}.revisions-tooltip.flipped .revisions-tooltip-arrow>span{right:auto;left:20px}.ie8 .revisions-tooltip-arrow>span{right:21px}.revisions-tickmarks>div{float:right;border-width:0 0 0 1px}#select-featured-image a{float:right}a.post-state-format{margin-right:0;margin-left:5px}label.post-format-icon{margin-left:0;margin-right:5px;padding-left:0;padding-right:21px}.post-format-icon.post-format-standard{background-position:100% 0}.post-format-icon.post-format-image{background-position:100% -32px}.post-format-icon.post-format-gallery{background-position:100% -64px}.post-format-icon.post-format-audio{background-position:100% -96px}.post-format-icon.post-format-video{background-position:100% -128px}.post-format-icon.post-format-chat{background-position:100% -160px}.post-format-icon.post-format-status{background-position:100% -192px}.post-format-icon.post-format-aside{background-position:100% -224px}.post-format-icon.post-format-quote{background-position:100% -256px}.post-format-icon.post-format-link{background-position:100% -288px}.category-adder{margin-left:0;margin-right:120px}#post-body ul.add-menu-item-tabs{float:right;text-align:left;margin:0 5px 0 -120px}#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{margin-left:0;margin-right:18px}#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}.links-table th{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 .edit-attachment,.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-input{float:right}#find-posts-search{float:right;margin-right:3px;margin-left:4px}.find-box-search .spinner{left:auto;right:115px}#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}.wp_attachment_image .button,.A1B1 .button{float:right}.wp_attachment_image .spinner,.A1B1 .spinner{float:right}.imgedit-menu div{float:right}.imgedit-crop{margin:0}.imgedit-rleft,.imgedit-flipv,.imgedit-undo{margin:0 8px 0 3px}.imgedit-rright,.imgedit-fliph,.imgedit-redo{margin:0 3px}.imgedit-applyto img{margin:0 0 0 8px}.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 .spinner,.inline-edit-save .spinner{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}h3.available-themes{float:right}.available-theme{margin-right:0;margin-left:10px;padding:20px 0 20px 20px}#current-theme .theme-info li,.theme-options li,.available-theme .action-links li{float:right;padding-right:0;padding-left:10px;margin-right:0;margin-left:10px;border-right:0;border-left:1px solid #dfdfdf}.available-theme .action-links li{padding-left:8px;margin-left:8px}.ie8 .available-theme .action-links li{padding-left:7px;margin-left:7px}#current-theme .theme-info li:last-child,.theme-options li:last-child,.available-theme .action-links li:last-child{padding-left:0;margin-right:0;border-left:0}.available-theme .action-links .delete-theme{float:left;margin-left:0;margin-right:8px}.available-theme .action-links p{float:right}#current-theme.has-screenshot{padding-left:0;padding-right:330px}#current-theme h4 span{margin-left:0;margin-right:20px}#current-theme img{float:right;width:300px;margin-left:0;margin-right:-330px}.theme-options .load-customize{margin-right:0;margin-left:30px;float:right}.theme-options span{float:right;margin-right:0;margin-left:10px}.theme-options ul{float:right}@media only screen and (max-width:1200px){#current-theme.has-screenshot{padding-right:270px}#current-theme img{margin-right:-270px;width:240px}}#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}#profile-page #pass1,#profile-page #pass2,#profile-page #user_login{direction:ltr}#your-profile legend{font-family:Tahoma,Arial,sans-serif}.pressthis a span{background-position:right 5px;padding:8px 27px 8px 11px}.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}#permalink_structure{float:right}.options-permalink-php code{unicode-bidi:embed}.options-permalink-php #rules{direction:ltr}#wpfooter{margin-left:20px}#wpcontent,#wpfooter{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 .three-col-images .last-feature{float:left}.about-wrap .three-col-images .first-feature{float:right}.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 img{margin:0 0 10px .7%}.about-wrap .feature-section.images-stagger-right img,.about-wrap .feature-section.images-stagger-right .video{float:left;margin:0 2em 12px 5px}.about-wrap .feature-section.images-stagger-left img{float:right;margin:0 5px 12px 2em}.about-wrap li.wp-person,.about-wrap li.wp-person img.gravatar{float:right;margin-right:0;margin-left:10px}@media only screen and (max-width:900px){.about-wrap .feature-section.images-stagger-right .video.image-66{margin-right:3px}}@media only screen and (max-width:768px){.about-wrap .feature-section .image-66{float:none}.about-wrap .feature-section.images-stagger-right .image-66{margin-right:3px}.about-wrap .feature-section.images-stagger-left .image-66{margin-left:3px}}#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}.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{left:auto;right:-1000em}.screen-reader-shortcut:focus{left:auto;right:6px}* html #template div{margin-left:0}#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}#content-resize-handle{background:transparent url('../images/resize-rtl.gif') no-repeat scroll left bottom;right:auto;left:2px;cursor:sw-resize}.wp-full-overlay .wp-full-overlay-sidebar{margin:0;left:auto;right:0;border-right:0;border-left:1px solid rgba(0,0,0,0.2)}.wp-full-overlay-sidebar:after{right:auto;left:0;box-shadow:inset 5px 0 4px -4px rgba(0,0,0,0.1)}.wp-full-overlay.collapsed,.wp-full-overlay.expanded .wp-full-overlay-sidebar{margin-right:0!important}.wp-full-overlay.expanded{margin-right:300px;margin-left:0}.wp-full-overlay.collapsed .wp-full-overlay-sidebar{margin-right:-300px;margin-left:0}.wp-full-overlay a.collapse-sidebar{left:auto;right:0;margin-left:0;margin-right:15px}.wp-full-overlay.collapsed .collapse-sidebar{right:100%}.wp-full-overlay .collapse-sidebar-arrow{margin-right:2px;margin-left:0;background:transparent url('../images/arrows.png') no-repeat 1px -108px}.wp-full-overlay.collapsed .collapse-sidebar-arrow{background-position:0 -72px}.wp-full-overlay .collapse-sidebar-label{right:100%;left:auto;margin-right:10px;margin-left:0}.install-theme-info .theme-install{float:left}#wpcontent{margin-left:0;margin-right:165px}#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}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,#dashboard_right_now td.b,#dashboard_right_now .versions a{font-family:Tahoma,Arial,sans-serif}#dashboard_right_now p.sub{left:auto;right:15px}#dashboard_right_now td.b{padding-right:0;padding-left:6px;text-align:left}#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 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:10px}.js #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,sans-serif;margin-left:0;margin-right:3px}#dashboard-widgets #dashboard_quick_press form p.submit input{float:right}#dashboard-widgets #dashboard_quick_press form p.submit #save-post{margin:0 1px 0 .7em}#dashboard-widgets #dashboard_quick_press form p.submit #publish{float:left}#dashboard-widgets #dashboard_quick_press form p.submit .spinner{margin:4px 0 0 6px}#dashboard_recent_drafts h4 abbr{font-family:Tahoma,Arial,sans-serif;margin-left:0;margin-right:3px}body.login{font-family:Tahoma,Arial,sans-serif}.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,sans-serif}.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-location-menus select{float:right}.locations-row-links{float:right;margin:4px 6px 0 0}.locations-add-menu-link{direction:rtl}.locations-edit-menu-link{border-left:1px solid #ccc;border-right:0;padding-left:6px;padding-right: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,.accordion-container .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}.button.right,.button-secondary.right,.button-primary.right{float:left}.list-controls{float:right}.add-to-menu{float:left}#add-custom-link label span{float:right;padding-left:5px;padding-right:0}.nav-menus-php .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;overflow:hidden}.menu-item-handle .item-edit{right:auto;left:-20px}.menu-item-handle .menu-item-title{float:right}.menu-item-settings .field-move a,.menu-item-settings .field-move span{float:right;margin-left:4px}.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}#custom-menu-item-url{direction:ltr}.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}div.star-holder{background:url('../images/stars-rtl.png?ver=20121108') repeat-x bottom right}div.star-holder .star-rating{background:url('../images/stars-rtl.png?ver=20121108') repeat-x top right;float:right}#plugin-information .wrap{margin:4px 15px 0 0}#plugin-information ul#sidemenu{left:auto;right:0}#plugin-information .fyi{float:right}#plugin-information #section-screenshots li p{padding-left:0;padding-right:20px}#plugin-information .updated,#plugin-information .error{clear:none;direction:rtl}#plugin-information #section-holder .section{direction:ltr}.posting{margin-left:212px;margin-right:0;position:relative}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,sans-serif}#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,#postcustomstuff .submit input{font-family:Tahoma,Arial,sans-serif}.ac_results li{text-align:right}#TB_ajaxContent #options{right:auto;left:25px}#TB_closeAjaxWindow{float:left}#TB_ajaxWindowTitle{float:right}#post_status{margin-left:0;margin-right:10px}#templateside{float:left}#template textarea,#docs-list{direction:ltr}.theme-details .theme-version{float:right}.theme-details .star-holder{float:left}.feature-filter .feature-group{float:right}.feature-filter .feature-group li{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}.press-this #header-logo,.press-this #wphead h1{float:right}.ltr{direction:ltr}.control-section .accordion-section-title{font-family:Tahoma,Arial,sans-serif}.js .accordion-section-title:after{right:auto;left:20px}.nav-menus-php .major-publishing-actions .publishing-action{float:left}.menu-settings dd{float:right}.manage-menus span{float:right}.manage-menus select{float:right;margin-right:0;margin-left:6px}.manage-menus .submit-btn{float:right}.manage-menus .selected-menu{float:right;margin:5px 0 0 6px}.nav-menus-php .add-new-menu-action{float:right;margin:4px 6px 0 0}.nav-menus-php .meta-sep,.nav-menus-php .submitdelete,.nav-menus-php .submitcancel{float:right}.is-submenu{float:right;margin-right:8px}@media print,(-o-min-device-pixel-ratio:5/4),(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){.post-com-count{background-image:url('../images/bubble_bg-rtl-2x.gif');background-size:18px 100px}#content-resize-handle,#post-body .wp_themeSkin .mceStatusbar a.mceResize{background:transparent url('../images/resize-rtl-2x.gif') no-repeat scroll right bottom;background-size:11px 11px}.wp-full-overlay .collapse-sidebar-arrow{background-image:url('../images/arrows-2x.png');background-size:15px 123px}div.star-holder{background:url('../images/stars-rtl-2x.png?ver=20121108') repeat-x bottom right;background-size:21px 37px}div.star-holder .star-rating{background:url('../images/stars-rtl-2x.png?ver=20121108') repeat-x top right;background-size:21px 37px}#post-body .wp_themeSkin .mceStatusbar a.mceResize,#content-resize-handle{background:transparent url('../images/resize-rtl-2x.gif') no-repeat scroll left bottom}.wp-slider .ui-slider-handle:before{background-image:url(../images/arrows-pr-2x.png);background-size:16px 102px}}body.locale-he-il,.locale-he-il .quicktags,.locale-he-il .search,.locale-he-il .howto,.locale-he-il #adminmenu .awaiting-mod,.locale-he-il #adminmenu span.update-plugins,.locale-he-il #sidemenu li a span.update-plugins,.locale-he-il .post-com-count-wrapper,.locale-he-il .widefat th,.locale-he-il .tablenav .displaying-num,.locale-he-il .inline-edit-row fieldset span.title,.locale-he-il .inline-edit-row fieldset span.checkbox-title,.locale-he-il .inline-edit-row fieldset ul.cat-checklist label,.locale-he-il .inline-edit-row #bulk-titles div,.locale-he-il p.help,.locale-he-il p.description,.locale-he-il span.description,.locale-he-il .form-wrap p,.locale-he-il h2 .nav-tab,.locale-he-il #your-profile legend,.locale-he-il #utc-time,.locale-he-il #local-time,.locale-he-il #poststuff h3,.locale-he-il .metabox-holder h3,.locale-he-il .tool-box .title,.locale-he-il td,.locale-he-il textarea,.locale-he-il input,.locale-he-il select,.locale-he-il .wrap h2,.locale-he-il .subtitle,.locale-he-il .wrap .add-new-h2,.locale-he-il #dashboard_right_now p.sub,.locale-he-il #dashboard-widgets h4,.locale-he-il a.rsswidget,.locale-he-il #dashboard_plugins h4,.locale-he-il #dashboard_plugins h5,.locale-he-il #dashboard_recent_comments .comment-meta .approve,.locale-he-il #dashboard_right_now td.b,.locale-he-il #dashboard_right_now .versions a,.locale-he-il .rss-widget span.rss-date,.locale-he-il #dashboard_recent_drafts h4 abbr,body.login.locale-he-il,.locale-he-il #login form .submit input,.locale-he-il #menu-management .nav-tabs-arrow-right,.locale-he-il #category-add input,.locale-he-il #category-add select,.locale-he-il .submit input,.locale-he-il .button,.locale-he-il .button-primary,.locale-he-il .button-secondary,.locale-he-il #postcustomstuff .submit input,.locale-he-il div.sidebar-name h3{font-family:Arial,sans-serif}.locale-he-il em{font-style:normal;font-weight:bold} \ No newline at end of file +ol{margin-left:0;margin-right:2em}.code,code{font-family:monospace;direction:ltr}.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}.search-box input[name="s"],#search-plugins input[name="s"],.tagsdiv .newtag{float:right;margin-right:0;margin-left:4px}input[type=password]{direction:ltr}input[type=text].ui-autocomplete-loading{background:transparent url(../images/loading.gif) no-repeat left center}ul#add-to-blog-users{margin:0 14px 0 0}.ui-autocomplete li{text-align:right}#delete-action{float:right}#publishing-action{float:left;text-align:left}#publishing-action .spinner{float:right}#post-body .misc-pub-section{border-right:0;border-left-width:1px;border-left-style:solid}#post-body .misc-pub-section-last{border-left:0}#minor-publishing-actions{padding:10px 8px 2px 10px;text-align:left}#save-post{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}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}#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}.folded #wpcontent{margin-left:0;margin-right:52px}.folded.wp-admin #wpfooter{margin-left:15px;margin-right:52px}#adminmenuback,#adminmenuwrap{border-width:0 0 0 1px}#adminmenushadow{right:auto;left:0}#adminmenu li .wp-submenu{left:auto;right:146px}.folded #adminmenu .wp-submenu.sub-open,.folded #adminmenu .opensub .wp-submenu,.folded #adminmenu .wp-has-current-submenu .wp-submenu.sub-open,.folded #adminmenu .wp-has-current-submenu.opensub .wp-submenu,.folded #adminmenu a.menu-top:focus+.wp-submenu,.folded #adminmenu .wp-has-current-submenu a.menu-top:focus+.wp-submenu,.no-js.folded #adminmenu .wp-has-submenu:hover .wp-submenu{left:auto;right:32px}#adminmenu div.wp-menu-image,.folded #adminmenu div.wp-menu-image{float:right;width:30px}#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}.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 #adminmenu li .wp-menu-arrow{-moz-transform:translate(-26px);-webkit-transform:translate(-26px);-o-transform:translate(-26px);-ms-transform:translate(-26px);transform:translate(-26px)}#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{padding:7px 7px 0 0}#adminmenu .wp-submenu .wp-submenu-head{padding:5px 10px 5px 4px;-webkit-border-top-right-radius:0;-webkit-border-top-left-radius:3px;border-top-right-radius:0;border-top-left-radius:3px}.folded #adminmenu li.wp-has-current-submenu .wp-submenu{border-width:1px;border-style: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}#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}@media only screen and (max-width:900px){.auto-fold #wpcontent{margin-left:0;margin-right:52px}.auto-fold.wp-admin #wpfooter{margin-left:15px;margin-right:52px}.auto-fold #adminmenu div.wp-menu-image{float:right;width:30px}.auto-fold #adminmenu .wp-submenu.sub-open,.auto-fold #adminmenu .opensub .wp-submenu,.auto-fold #adminmenu .wp-has-current-submenu .wp-submenu.sub-open,.auto-fold #adminmenu .wp-has-current-submenu.opensub .wp-submenu,.auto-fold #adminmenu a.menu-top:focus+.wp-submenu,.auto-fold #adminmenu .wp-has-current-submenu a.menu-top:focus+.wp-submenu,.no-js.auto-fold #adminmenu .wp-has-submenu:hover .wp-submenu{left:auto;right:32px}.auto-fold #adminmenu .wp-not-current-submenu li a{padding-left:0;padding-right:12px}.auto-fold #adminmenu li .wp-menu-arrow{-moz-transform:translate(-27px);-webkit-transform:translate(-27px);-o-transform:translate(-27px);-ms-transform:translate(-27px);transform:translate(-27px)}.auto-fold #adminmenu li.wp-has-current-submenu .wp-submenu{border-width:1px;border-style: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}}.post-com-count-wrapper{font-family:Tahoma,Arial,sans-serif}.post-com-count{background-image:url(../images/bubble_bg-rtl.gif)}.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}.postbox-container{float:right}#post-body-content{float:right}#poststuff #post-body.columns-2{margin-left:300px;margin-right:0}#post-body.columns-2 #postbox-container-1{float:left;margin-left:-300px;margin-right:0}@media only screen and (max-width:850px){#wpbody-content #post-body.columns-2 #postbox-container-1{margin-left:0}}.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-content{margin-left:0;margin-right:13px}.welcome-panel .welcome-panel-column{float:right}.welcome-panel .welcome-panel-column ul{margin-right:0;margin-left:1em}.welcome-panel .welcome-panel-column li{padding-left:0;padding-right:2px}.welcome-panel .welcome-add-page{background-position:right 2px}.welcome-panel .welcome-edit-page{background-position:right -90px}.welcome-panel .welcome-learn-more{background-position:right -136px}.welcome-panel .welcome-comments{background-position:right -182px}.welcome-panel .welcome-view-site{background-position:right -274px}.welcome-panel .welcome-widgets-menus{background-position:right -229px;line-height:14px}.welcome-panel .welcome-write-blog{background-position:right -44px}.welcome-panel .welcome-icon{padding:2px 32px 8px 0}@media screen and (max-width:870px){.welcome-panel .welcome-panel-column li{margin-right:0;margin-left:13px}.welcome-panel .welcome-icon{padding-right:25px;padding-left:0}}.fixed .column-comments{text-align:right}.fixed .column-comments .vers{padding-left:0;padding-right:3px}.fixed .column-comments a{float:right}.fixed .column-menus{text-align:right}.sorting-indicator{margin-left:0;margin-right:7px}tr.wp-locked .locked-indicator{margin:-2px 6px 0 0}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:normal}.tablenav .actions{padding:2px 0 0 8px}.tablenav .actions select{float:right;margin-right:0;margin-left:6px}.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 #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}#save-action .spinner,#show-comments a,#show-comments .spinner{float:right}#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}#wp-fullscreen-save .spinner,#wp-fullscreen-save .fs-saved{float:left}#edit-slug-box .cancel{margin-right:0;margin-left:10px}.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}.taxonomy div.tabs-panel{margin:0 125px 0 5px}#side-sortables .comments-box thead th,#normal-sortables .comments-box thead th{font-style:normal}#commentsdiv .spinner{padding-left:0;padding-right:5px}#post-body .add-menu-item-tabs li.tabs{border-width:1px 1px 1px 0;margin-right:0;margin-left:-1px}#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}.compat-attachment-fields th{padding-right:0;padding-left:10px}#post-lock-dialog .post-locked-message a.button{margin-right:0;margin-left:10px}#post-lock-dialog .post-locked-avatar{float:right;margin:0 0 20px 20px}#post-lock-dialog .locked-saving img{float:right;margin-right:0;margin-left:3px}.wp-slider .ui-slider-handle.from-handle:before,.wp-slider .ui-slider-handle.to-handle:before{height:8px;width:7px}.wp-slider .ui-slider-handle.from-handle:before{background-position:-5px -10px;left:6px}.wp-slider .ui-slider-handle.to-handle:before{background-position:-4px -29px;left:6px}.revision-toggle-compare-mode{right:auto;left:0}.revisions .loading-indicator{margin-right:-90px}body.folded .revisions .loading-indicator{margin-right:-32px}.revisions-next{float:left}.revisions-previous{float:right}.diff-title strong{text-align:left;float:right;margin-right:0;margin-left:5px}.revisions-controls .author-card .avatar,.revisions-controls .author-card .author-info{float:right}.diff-meta input.restore-revision{float:left}.diff-col-title-added,.diff-col-title-removed{text-align:right;float:right}.revisions-tooltip{margin-left:0;margin-right:-69px}.revisions-tooltip.flipped{margin-right:0;margin-left:-70px}.ie8 .revisions-tooltip{margin-right:-75px}.ie8 .revisions-tooltip.flipped{margin-left:-63px}.revisions-tooltip-arrow{right:0;margin-left:0;margin-right:35px}.revisions-tooltip.flipped .revisions-tooltip-arrow{margin-right:0;margin-left:35px;right:auto;left:0}.revisions-tooltip-arrow>span{left:auto;right:20px}.revisions-tooltip.flipped .revisions-tooltip-arrow>span{right:auto;left:20px}.ie8 .revisions-tooltip-arrow>span{right:21px}.revisions-tickmarks>div{float:right;border-width:0 0 0 1px}#select-featured-image a{float:right}a.post-state-format{margin-right:0;margin-left:5px}label.post-format-icon{margin-left:0;margin-right:5px;padding-left:0;padding-right:21px}.post-format-icon.post-format-standard{background-position:100% 0}.post-format-icon.post-format-image{background-position:100% -32px}.post-format-icon.post-format-gallery{background-position:100% -64px}.post-format-icon.post-format-audio{background-position:100% -96px}.post-format-icon.post-format-video{background-position:100% -128px}.post-format-icon.post-format-chat{background-position:100% -160px}.post-format-icon.post-format-status{background-position:100% -192px}.post-format-icon.post-format-aside{background-position:100% -224px}.post-format-icon.post-format-quote{background-position:100% -256px}.post-format-icon.post-format-link{background-position:100% -288px}.category-adder{margin-left:0;margin-right:120px}#post-body ul.add-menu-item-tabs{float:right;text-align:left;margin:0 5px 0 -120px}#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{margin-left:0;margin-right:18px}#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}.links-table th{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 .edit-attachment,.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-input{float:right}#find-posts-search{float:right;margin-right:3px;margin-left:4px}.find-box-search .spinner{left:auto;right:115px}#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}.wp_attachment_image .button,.A1B1 .button{float:right}.wp_attachment_image .spinner,.A1B1 .spinner{float:right}.imgedit-menu div{float:right}.imgedit-crop{margin:0}.imgedit-rleft,.imgedit-flipv,.imgedit-undo{margin:0 8px 0 3px}.imgedit-rright,.imgedit-fliph,.imgedit-redo{margin:0 3px}.imgedit-applyto img{margin:0 0 0 8px}.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 .spinner,.inline-edit-save .spinner{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}h3.available-themes{float:right}.available-theme{margin-right:0;margin-left:10px;padding:20px 0 20px 20px}#current-theme .theme-info li,.theme-options li,.available-theme .action-links li{float:right;padding-right:0;padding-left:10px;margin-right:0;margin-left:10px;border-right:0;border-left:1px solid #dfdfdf}.available-theme .action-links li{padding-left:8px;margin-left:8px}.ie8 .available-theme .action-links li{padding-left:7px;margin-left:7px}#current-theme .theme-info li:last-child,.theme-options li:last-child,.available-theme .action-links li:last-child{padding-left:0;margin-right:0;border-left:0}.available-theme .action-links .delete-theme{float:left;margin-left:0;margin-right:8px}.available-theme .action-links p{float:right}#current-theme.has-screenshot{padding-left:0;padding-right:330px}#current-theme h4 span{margin-left:0;margin-right:20px}#current-theme img{float:right;width:300px;margin-left:0;margin-right:-330px}.theme-options .load-customize{margin-right:0;margin-left:30px;float:right}.theme-options span{float:right;margin-right:0;margin-left:10px}.theme-options ul{float:right}@media only screen and (max-width:1200px){#current-theme.has-screenshot{padding-right:270px}#current-theme img{margin-right:-270px;width:240px}}#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}#profile-page #pass1,#profile-page #pass2,#profile-page #user_login{direction:ltr}#your-profile legend{font-family:Tahoma,Arial,sans-serif}.pressthis a span{background-position:right 5px;padding:8px 27px 8px 11px}.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}#permalink_structure{float:right}.options-permalink-php code{unicode-bidi:embed}.options-permalink-php #rules{direction:ltr}#wpfooter{margin-left:20px}#wpcontent,#wpfooter{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 .three-col-images .last-feature{float:left}.about-wrap .three-col-images .first-feature{float:right}.about-wrap .feature-section.two-col div,.about-wrap .feature-section.three-col div{margin-right:0;margin-left:4.999999999%;float:right}.about-wrap .feature-section.col .last-feature{margin-left:0}.about-wrap .feature-section div p img{float:left;margin-left:0;margin-right:10px}.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:4px -10px 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}.screen-reader-text,.screen-reader-text span,.ui-helper-hidden-accessible{left:auto;right:-1000em}.screen-reader-shortcut:focus{left:auto;right:6px}* html #template div{margin-left:0}#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}#content-resize-handle{background:transparent url(../images/resize-rtl.gif) no-repeat scroll left bottom;right:auto;left:2px;cursor:sw-resize}.wp-full-overlay .wp-full-overlay-sidebar{margin:0;left:auto;right:0;border-right:0;border-left:1px solid rgba(0,0,0,.2)}.wp-full-overlay-sidebar:after{right:auto;left:0;box-shadow:inset 5px 0 4px -4px rgba(0,0,0,.1)}.wp-full-overlay.collapsed,.wp-full-overlay.expanded .wp-full-overlay-sidebar{margin-right:0!important}.wp-full-overlay.expanded{margin-right:300px;margin-left:0}.wp-full-overlay.collapsed .wp-full-overlay-sidebar{margin-right:-300px;margin-left:0}.wp-full-overlay a.collapse-sidebar{left:auto;right:0;margin-left:0;margin-right:15px}.wp-full-overlay.collapsed .collapse-sidebar{right:100%}.wp-full-overlay .collapse-sidebar-arrow{margin-right:2px;margin-left:0;background:transparent url(../images/arrows.png) no-repeat 1px -108px}.wp-full-overlay.collapsed .collapse-sidebar-arrow{background-position:0 -72px}.wp-full-overlay .collapse-sidebar-label{right:100%;left:auto;margin-right:10px;margin-left:0}.install-theme-info .theme-install{float:left}#wpcontent{margin-left:0;margin-right:165px}#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}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,#dashboard_right_now td.b,#dashboard_right_now .versions a{font-family:Tahoma,Arial,sans-serif}#dashboard_right_now p.sub{left:auto;right:15px}#dashboard_right_now td.b{padding-right:0;padding-left:6px;text-align:left}#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 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:10px}.js #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,sans-serif;margin-left:0;margin-right:3px}#dashboard-widgets #dashboard_quick_press form p.submit input{float:right}#dashboard-widgets #dashboard_quick_press form p.submit #save-post{margin:0 1px 0 .7em}#dashboard-widgets #dashboard_quick_press form p.submit #publish{float:left}#dashboard-widgets #dashboard_quick_press form p.submit .spinner{margin:4px 0 0 6px}#dashboard_recent_drafts h4 abbr{font-family:Tahoma,Arial,sans-serif;margin-left:0;margin-right:3px}body.login{font-family:Tahoma,Arial,sans-serif}.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,sans-serif}.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-location-menus select{float:right}.locations-row-links{float:right;margin:4px 6px 0 0}.locations-add-menu-link{direction:rtl}.locations-edit-menu-link{border-left:1px solid #CCC;border-right:0;padding-left:6px;padding-right: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:700}.postbox .howto input,.accordion-container .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}.button.right,.button-secondary.right,.button-primary.right{float:left}.list-controls{float:right}.add-to-menu{float:left}#add-custom-link label span{float:right;padding-left:5px;padding-right:0}.nav-menus-php .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;overflow:hidden}.menu-item-handle .item-edit{right:auto;left:-20px}.menu-item-handle .menu-item-title{float:right}.menu-item-settings .field-move a,.menu-item-settings .field-move span{float:right;margin-left:4px}.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}#custom-menu-item-url{direction:ltr}.link-to-original{font-style:normal;font-weight:700}.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}div.star-holder{background:url(../images/stars-rtl.png?ver=20121108) repeat-x bottom right}div.star-holder .star-rating{background:url(../images/stars-rtl.png?ver=20121108) repeat-x top right;float:right}#plugin-information .wrap{margin:4px 15px 0 0}#plugin-information ul#sidemenu{left:auto;right:0}#plugin-information .fyi{float:right}#plugin-information #section-screenshots li p{padding-left:0;padding-right:20px}#plugin-information .updated,#plugin-information .error{clear:none;direction:rtl}#plugin-information #section-holder .section{direction:ltr}.posting{margin-left:212px;margin-right:0;position:relative}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,sans-serif}#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,#postcustomstuff .submit input{font-family:Tahoma,Arial,sans-serif}.ac_results li{text-align:right}#TB_ajaxContent #options{right:auto;left:25px}#TB_closeAjaxWindow{float:left}#TB_ajaxWindowTitle{float:right}#post_status{margin-left:0;margin-right:10px}#templateside{float:left}#template textarea,#docs-list{direction:ltr}.theme-details .theme-version{float:right}.theme-details .star-holder{float:left}.feature-filter .feature-group{float:right}.feature-filter .feature-group li{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}.press-this #header-logo,.press-this #wphead h1{float:right}.ltr{direction:ltr}.control-section .accordion-section-title{font-family:Tahoma,Arial,sans-serif}.js .accordion-section-title:after{right:auto;left:20px}.nav-menus-php .major-publishing-actions .publishing-action{float:left}.menu-settings dd{float:right}.manage-menus span{float:right}.manage-menus select{float:right;margin-right:0;margin-left:6px}.manage-menus .submit-btn{float:right}.manage-menus .selected-menu{float:right;margin:5px 0 0 6px}.nav-menus-php .add-new-menu-action{float:right;margin:4px 6px 0 0}.nav-menus-php .meta-sep,.nav-menus-php .submitdelete,.nav-menus-php .submitcancel{float:right}.is-submenu{float:right;margin-right:8px}@media print,(-o-min-device-pixel-ratio:5/4),(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){.post-com-count{background-image:url(../images/bubble_bg-rtl-2x.gif);background-size:18px 100px}#content-resize-handle,#post-body .wp_themeSkin .mceStatusbar a.mceResize{background:transparent url(../images/resize-rtl-2x.gif) no-repeat scroll right bottom;background-size:11px 11px}.wp-full-overlay .collapse-sidebar-arrow{background-image:url(../images/arrows-2x.png);background-size:15px 123px}div.star-holder{background:url(../images/stars-rtl-2x.png?ver=20121108) repeat-x bottom right;background-size:21px 37px}div.star-holder .star-rating{background:url(../images/stars-rtl-2x.png?ver=20121108) repeat-x top right;background-size:21px 37px}#post-body .wp_themeSkin .mceStatusbar a.mceResize,#content-resize-handle{background:transparent url(../images/resize-rtl-2x.gif) no-repeat scroll left bottom}.wp-slider .ui-slider-handle:before{background-image:url(../images/arrows-pr-2x.png);background-size:16px 102px}}body.locale-he-il,.locale-he-il .quicktags,.locale-he-il .search,.locale-he-il .howto,.locale-he-il #adminmenu .awaiting-mod,.locale-he-il #adminmenu span.update-plugins,.locale-he-il #sidemenu li a span.update-plugins,.locale-he-il .post-com-count-wrapper,.locale-he-il .widefat th,.locale-he-il .tablenav .displaying-num,.locale-he-il .inline-edit-row fieldset span.title,.locale-he-il .inline-edit-row fieldset span.checkbox-title,.locale-he-il .inline-edit-row fieldset ul.cat-checklist label,.locale-he-il .inline-edit-row #bulk-titles div,.locale-he-il p.help,.locale-he-il p.description,.locale-he-il span.description,.locale-he-il .form-wrap p,.locale-he-il h2 .nav-tab,.locale-he-il #your-profile legend,.locale-he-il #utc-time,.locale-he-il #local-time,.locale-he-il #poststuff h3,.locale-he-il .metabox-holder h3,.locale-he-il .tool-box .title,.locale-he-il td,.locale-he-il textarea,.locale-he-il input,.locale-he-il select,.locale-he-il .wrap h2,.locale-he-il .subtitle,.locale-he-il .wrap .add-new-h2,.locale-he-il #dashboard_right_now p.sub,.locale-he-il #dashboard-widgets h4,.locale-he-il a.rsswidget,.locale-he-il #dashboard_plugins h4,.locale-he-il #dashboard_plugins h5,.locale-he-il #dashboard_recent_comments .comment-meta .approve,.locale-he-il #dashboard_right_now td.b,.locale-he-il #dashboard_right_now .versions a,.locale-he-il .rss-widget span.rss-date,.locale-he-il #dashboard_recent_drafts h4 abbr,body.login.locale-he-il,.locale-he-il #login form .submit input,.locale-he-il #menu-management .nav-tabs-arrow-right,.locale-he-il #category-add input,.locale-he-il #category-add select,.locale-he-il .submit input,.locale-he-il .button,.locale-he-il .button-primary,.locale-he-il .button-secondary,.locale-he-il #postcustomstuff .submit input,.locale-he-il div.sidebar-name h3{font-family:Arial,sans-serif}.locale-he-il em{font-style:normal;font-weight:700} \ No newline at end of file diff --git a/wp-admin/css/wp-admin.css b/wp-admin/css/wp-admin.css index b756ef1d..2f5b5c7f 100644 --- a/wp-admin/css/wp-admin.css +++ b/wp-admin/css/wp-admin.css @@ -2091,7 +2091,7 @@ html.wp-toolbar { } /* one column on the post write/edit screen */ -@media only screen and (max-width: 850px) { +@media only screen and (max-width: 960px) { #wpbody-content #poststuff #post-body { margin: 0; } @@ -2312,7 +2312,7 @@ html.wp-toolbar { } .wp-core-ui .welcome-panel .button.button-hero { - margin: 15px 0 3px; + margin: 15px 0 3px; } .welcome-panel-content { @@ -2378,7 +2378,7 @@ html.wp-toolbar { } .welcome-panel .welcome-write-blog { - background-position: 0 -44px; + background-position: 0 -44px; } .welcome-panel .welcome-panel-column ul { @@ -2386,8 +2386,8 @@ html.wp-toolbar { } .welcome-panel .welcome-panel-column li { - line-height: 16px; - list-style-type: none; + line-height: 16px; + list-style-type: none; } @media screen and (max-width: 870px) { @@ -3162,7 +3162,7 @@ ul.category-tabs li, } .no-js .category-tabs li.hide-if-no-js { - display: none; + display: none; } .category-tabs a, @@ -3819,7 +3819,7 @@ table.diff .diff-addedline ins { -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); - tranform: rotate(45deg); + transform: rotate(45deg); } .revisions-tooltip.flipped .revisions-tooltip-arrow > span { @@ -5316,6 +5316,54 @@ h3.available-themes { margin: 0; } +/* Allow for three-up in small windows when sidebar is collapsed */ +@media only screen and (max-width: 1200px) { + .folded .available-theme, + .folded .available-theme .screenshot { + width: 300px; + } + + .folded .available-theme .screenshot { + height: 225px; + } + + .folded #current-theme img { + width: 300px; + } + + .folded #current-theme.has-screenshot { + padding-left: 330px; + } + + .folded #current-theme img { + margin-left: -330px; + } +} + +/* Adjust three-up display in smaller windows when sidebar is collapsed */ +@media only screen and (max-width: 1079px) { + .folded .available-theme, + .folded .available-theme .screenshot { + width: 270px; + } + + .folded .available-theme .screenshot { + height: 203px; + } + + .folded #current-theme img { + width: 270px; + } + + .folded #current-theme.has-screenshot { + padding-left: 300px; + } + + .folded #current-theme img { + margin-left: -300px; + } +} + /* Allow for three-up on 1024px wide screens, e.g. tablets */ @media only screen and (max-width: 1200px) { .available-theme, @@ -5498,7 +5546,7 @@ h2 .nav-tab { list-style-type: disc; } -.plugins .row-actions-visible { +.plugins .row-actions { padding: 0; } @@ -5530,12 +5578,12 @@ h2 .nav-tab { } .plugins .second, -.plugins .row-actions-visible { +.plugins .row-actions { padding: 0 0 5px; } .plugins .update .second, -.plugins .update .row-actions-visible { +.plugins .update .row-actions { padding-bottom: 0; } @@ -5718,6 +5766,16 @@ h2 .nav-tab { display: none !important; } +.about-wrap p.about-notice { + background-color: #ffffe0; + border: 1px solid #e6db55; + margin: 5px 0 15px; + padding: 0.4em 0.8em; + border-radius: 3px; + -webkit-border-radius: 3px; +} + + /* Typography */ .about-wrap p { @@ -5751,8 +5809,8 @@ h2 .nav-tab { } .about-wrap h3 { - font-size: 24px; - margin-bottom: 1em; + font-size: 1.5em; + line-height: 1.5em; padding-top: 20px; } @@ -5825,79 +5883,18 @@ h2 .nav-tab { /* Changelog / Update screen */ -.about-wrap .feature-section img, -.about-wrap .feature-section .video { - border: none; - margin: 0 1.94% 10px 0; - -webkit-border-radius: 3px; - border-radius: 3px; -} - -.about-wrap .feature-section .video video { - max-width: 100%; -} - .about-wrap .feature-section.three-col img { margin: 0.5em 0 0.5em 5px; max-width: 100%; float: none; } -.ie8 .about-wrap .feature-section.three-col img { - margin-left: 0; -} - -.about-wrap .feature-section.images-stagger-right img, -.about-wrap .feature-section.images-stagger-right .video { - float: right; - margin: 0 5px 12px 2em; -} - -.about-wrap .feature-section.images-stagger-left img { - float: left; - margin: 0 2em 12px 5px; -} - -.about-wrap .feature-section .image-100 { - margin: 0 0 2em 0; - width: 100%; -} - -.about-wrap .feature-section .image-66 { - width: 65%; -} - -.about-wrap .feature-section .image-66.video { - max-width: 600px; -} - -.about-wrap .feature-section .image-50 { - max-width: 50%; -} - -.about-wrap .feature-section img.image-30 { - max-width: 31.2381%; -} - -.ie8 .about-wrap .feature-section img { - border-width: 1px; - border-style: solid; -} - -.about-wrap .images-stagger-right img.image-30:nth-child(2) { - margin-left: 1em; -} - .about-wrap .feature-section.col { margin-bottom: 0; } .about-wrap .feature-section.col h4 { - margin: 0 0 0.6em 0; -} - -.about-wrap .feature-section.col .last-feature { - margin-right: 0; + margin: 0 0 0.6em 0; } .about-wrap .feature-section.two-col div { @@ -5912,65 +5909,78 @@ h2 .nav-tab { float: left; } -.about-wrap .three-col-images { - text-align: center; +.about-wrap .three-col.about-updates .col-1, +.about-wrap .three-col.about-updates .col-3 { + width: 37%; + margin: 0; } -.about-wrap .three-col-images img { - margin: 0 0 10px; +.about-wrap .three-col.about-updates .col-2 { + width: 16%; + margin: 0 5%; } -.about-wrap .three-col-images .last-feature { - float: right; +.about-wrap .feature-section.col .last-feature { + margin-right: 0; } -.about-wrap .three-col-images .first-feature { - float: left; +.about-wrap .three-col.about-updates img { + margin: 0; } .about-wrap .changelog .feature-section { overflow: hidden; } -.about-wrap .changelog li { - list-style-type: disc; - margin-left: 3em; +.about-wrap .about-passwords { + margin: 20px 0; + padding: 1px 20px 10px; + background-color: #f9f9f9; } -@media only screen and (max-width: 900px) { - .about-wrap .feature-section.images-stagger-left img, - .about-wrap .feature-section.images-stagger-right img, - .about-wrap .feature-section.images-stagger-right .video { - clear: both; - } +.about-wrap .about-auto-update { + text-align: center; + background-color: #f9f9ef; + clear: both; + padding: 10px; +} - .about-wrap .feature-section .video.image-66 { - float: none; - width: 98%; - max-width: 98%; - } +.about-wrap .about-auto-update.cool { + background-color: #eff9ef; +} - .about-wrap .feature-section.images-stagger-right .video.image-66 { - margin-left: 3px; - } +.about-wrap .about-password-meter input { + font-size: 250%; + line-height: 1; + width: 100%; + display: block; + padding: 5px; } -@media only screen and (max-width: 768px) { - .about-wrap .feature-section .image-66 { - float: none; - width: 98%; - max-width: 98%; - } +.about-wrap .about-password-meter #pass-strength-result { + display: block !important; + font-size: 150%; + font-weight: normal !important; + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + width: 100%; + padding: 17px 0; + margin-bottom: 15px; +} - .about-wrap .feature-section.images-stagger-right .image-66 { - margin-left: 3px; - } +.about-wrap .feature-section div p img { + float: right; + margin-left: 10px; + max-width: 20%; +} - .about-wrap .feature-section.images-stagger-left .image-66 { - margin-right: 3px; - } +.about-wrap .changelog li { + list-style-type: disc; + margin-left: 3em; } + /* Return to Dashboard Home link */ .about-wrap .return-to-dashboard { @@ -6407,15 +6417,14 @@ p.pagenav { padding: 2px 0 0; } -.mobile .row-actions { - visibility: visible; -} - tr:hover .row-actions, +.mobile .row-actions, +.row-actions.visible, div.comment-item:hover .row-actions { visibility: visible; } +/* deprecated */ .row-actions-visible { padding: 2px 0 0; } @@ -6448,7 +6457,7 @@ table.form-table td .updated { cursor: default; } .tagchecklist span a { - margin: 6px 0pt 0pt -9px; + margin: 4px 0 0 -10px; cursor: pointer; width: 10px; height: 10px; @@ -6589,6 +6598,14 @@ body.iframe { height: 98%; } +/* Upgrader styles, Specific to Language Packs */ +.lp-show-latest p { + display: none; +} +.lp-show-latest p:last-child, +.lp-show-latest .lp-error p { + display: block; +} /* - Only used once or twice in all of WP - deprecate for global style ------------------------------------------------------------------------------*/ @@ -7865,8 +7882,9 @@ body.interim-login { font-weight: bold; padding: 7px 0; line-height: 20px; - display:block; - margin-right:13em; + min-height: 20px; + display: block; + margin-right: 13em; } /* Sortables */ @@ -8573,11 +8591,6 @@ input.newtag:focus ~ div.taghint { visibility: hidden; } -/* TinyMCE */ -#mce_fullscreen_container { - background: #fff; -} - #photo-add-url-div input[type="text"] { width: 300px; } @@ -9244,20 +9257,20 @@ a.widget-control-edit { (min-resolution: 120dpi) { .press-this .tagchecklist span a { - background-image: url('../images/xit-2x.gif'); - background-size: 20px auto; + background-image: url('../images/xit-2x.gif'); + background-size: 20px auto; } .js .postbox:hover .handlediv, .js .stuffbox:hover .handlediv, .widget-top a.widget-action { - background-image: url('../images/arrows-2x.png'); - background-size: 15px 123px; + background-image: url('../images/arrows-2x.png'); + background-size: 15px 123px; } .widget-top a.widget-action:hover { - background-image: url('../images/arrows-dark-2x.png'); - background-size: 15px 123px; + background-image: url('../images/arrows-dark-2x.png'); + background-size: 15px 123px; } .post-com-count { @@ -9316,8 +9329,8 @@ a.widget-control-edit { } .wp-full-overlay .collapse-sidebar-arrow { - background-image: url('../images/arrows-2x.png'); - background-size: 15px 123px; + background-image: url('../images/arrows-2x.png'); + background-size: 15px 123px; } .pressthis a span { diff --git a/wp-admin/css/wp-admin.min.css b/wp-admin/css/wp-admin.min.css index 9760c6c5..40ffd2ec 100644 --- a/wp-admin/css/wp-admin.min.css +++ b/wp-admin/css/wp-admin.min.css @@ -1 +1 @@ -#wpwrap{height:auto;min-height:100%;width:100%;position:relative}#wpcontent{height:100%}#wpcontent,#wpfooter{margin-left:165px}.folded #wpcontent,.folded #wpfooter{margin-left:52px}#wpbody-content{padding-bottom:65px;float:left;width:100%}#adminmenuback,#adminmenuwrap,#adminmenu,#adminmenu .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;float:none;width:auto}#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,.ui-helper-hidden-accessible{position:absolute;left:-1000em;top:-1000em;height:1px;width:1px;overflow:hidden}.screen-reader-shortcut{position:absolute;top:-1000em}.screen-reader-shortcut:focus{left:6px;top:-21px;height:auto;width:auto;display:block;font-size:14px;font-weight:bold;padding:15px 23px 14px;background:#f1f1f1;color:#21759b;border-radius:3px;z-index:100000;line-height:normal;-webkit-box-shadow:0 0 2px 2px rgba(0,0,0,.6);box-shadow:0 0 2px 2px rgba(0,0,0,.6);text-decoration:none}.hidden,.js .closed .inside,.js .hide-if-js,.no-js .hide-if-no-js,.js.wp-core-ui .hide-if-js,.js .wp-core-ui .hide-if-js,.no-js.wp-core-ui .hide-if-no-js,.no-js .wp-core-ui .hide-if-no-js{display:none}input[type="text"],input[type="password"],input[type="number"],input[type="search"],input[type="email"],input[type="url"],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-top;padding:0;margin:1px 0 0}input[type="search"]{-webkit-appearance:textfield}input[type="search"]::-webkit-search-decoration{display:none}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;padding-top:1px}body.login{background:#fbfbfb;min-width:0}iframe,img{border:0}td,textarea,input,select,button{font-family:inherit;font-size:inherit;font-weight:inherit}td,textarea{line-height:inherit}input,select{line-height:15px}a,input[type="text"],input[type="password"],input[type="number"],input[type="search"],input[type="email"],input[type="url"],select,textarea,div{outline:0}a:focus,a:active{outline:thin dotted}#adminmenu a:focus,#adminmenu a:active,.screen-reader-text:focus{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;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;border:0}.subsubsub li{display:inline-block;margin:0;padding:0;white-space:nowrap}.widefat,div.updated,div.error,.wrap .add-new-h2,textarea,input[type="text"],input[type="password"],input[type="file"],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:0}.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:6px 0 25px;vertical-align:top}.widefat tbody th.check-column{padding:9px 0 22px}.widefat.media .check-column{padding-top:8px}.widefat thead .check-column,.widefat tfoot .check-column{padding:10px 0 0}.no-js .widefat thead .check-column input,.no-js .widefat tfoot .check-column input{display:none}.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}html,.wp-dialog{background-color:#fff}textarea,input[type="text"],input[type="password"],input[type="file"],input[type="email"],input[type="number"],input[type="search"],input[type="tel"],input[type="url"],select{background-color:#fff;color:#333}select{color:#000}select[disabled]{color:#7f7f7f}select:focus{border-color:#aaa}textarea:focus,input[type="text"]:focus,input[type="password"]:focus,input[type="file"]:focus,input[type="email"]:focus,input[type="number"]:focus,input[type="search"]:focus,input[type="tel"]:focus,input[type="url"]:focus,select:focus{-webkit-box-shadow:1px 1px 2px rgba(0,0,0,0.1);box-shadow:1px 1px 2px rgba(0,0,0,0.1)}input[readonly]{background-color:#eee}:-moz-placeholder,.wp-core-ui :-moz-placeholder{color:#a9a9a9}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;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}.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}#minor-publishing-actions input,#major-publishing-actions input,#minor-publishing-actions .preview{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}input[type="number"].small-text{width:60px}#doaction,#doaction2,#post-query-submit{margin:1px 8px 0 0}.tablenav #changeit,.tablenav #delete_all,.tablenav #clear-recent-list{margin-top:1px}.tablenav .actions select{float:left;margin-right:6px;max-width:200px}.ie8 .tablenav .actions select{width:155px}.ie8 .tablenav .actions select#cat{width:200px}#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}.search-box input[name="s"],#search-plugins input[name="s"],.tagsdiv .newtag{float:left;height:2em;margin:0 4px 0 0}input[type="text"].ui-autocomplete-loading{background:transparent url('../images/loading.gif') no-repeat right center;visibility:visible}ul#add-to-blog-users{margin:0 0 0 14px}.ui-autocomplete-input.open{border-bottom-right-radius:0;border-bottom-left-radius:0}.ui-autocomplete{padding:0;margin:0;list-style:none;position:absolute;z-index:10000;border-bottom-right-radius:3px;border-bottom-left-radius:3px;border-width:1px;border-style:solid}.ui-autocomplete li{margin-bottom:0;white-space:nowrap;text-align:left}.ui-autocomplete li a{display:block;height:100%;padding:4px 10px}.ui-autocomplete li a.ui-state-focus{cursor:pointer}#major-publishing-actions{padding:10px 10px 8px;clear:both;border-top:1px solid #f5f5f5;margin-top:-2px}#delete-action{line-height:25px;vertical-align:middle;text-align:left;float:left}#publishing-action{text-align:right;float:right;line-height:23px}#publishing-action .spinner{float:left}#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;box-shadow:0 1px 0 #fff}#save-post{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}.approve,.unapproved .unapprove{display:none}.unapproved .approve,.spam .approve,.trash .approve{display:inline}td.action-links,th.action-links{text-align:right}#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}.update-php .spinner{float:none;margin:-4px 0}#ajax-loading,.ajax-loading,.ajax-feedback,.imgedit-wait-spin,.list-ajax-loading{visibility:hidden}#ajax-response.alignleft{margin-left:2em}#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}#contextual-help-wrap{overflow:auto}#screen-meta .screen-reader-text{visibility:hidden}#screen-meta-links{margin:0 24px 0 0}#screen-meta-links a:focus{-webkit-box-shadow:1px 1px 1px rgba(0,0,0,0.4);box-shadow:1px 1px 1px rgba(0,0,0,0.4);outline: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:23px;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 .screen-meta-toggle{position:relative;top:-1px}#screen-meta-links a.show-settings{text-decoration:none;z-index:1;padding:1px 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 .columns-prefs label input{margin: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 ul 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 li{margin:0;padding:0;cursor:pointer}#adminmenu a{display:block;line-height:18px;padding:2px 5px}#adminmenu li.menu-top{min-height:28px;position:relative}#adminmenu .wp-submenu{list-style:none;padding:4px 0;margin:0;position:absolute;top:-1000em;left:146px;z-index:1000;overflow:visible;border-width:1px;border-style:solid;-webkit-border-bottom-right-radius:3px;-webkit-border-top-right-radius:3px;border-bottom-right-radius:3px;border-top-right-radius:3px}.js #adminmenu .sub-open,.js #adminmenu .opensub .wp-submenu,#adminmenu a.menu-top:focus+.wp-submenu,.no-js li.wp-has-submenu:hover .wp-submenu{top:-1px}#adminmenu .wp-has-current-submenu .wp-submenu,.no-js li.wp-has-current-submenu:hover .wp-submenu,#adminmenu a.wp-has-current-submenu:focus+.wp-submenu,#adminmenu .wp-has-current-submenu .wp-submenu.sub-open,#adminmenu .wp-has-current-submenu.opensub .wp-submenu{position:relative;z-index:3;top:auto;left:auto;right:auto;bottom:auto;border:0 none;-webkit-box-shadow:none;box-shadow:none}.folded #adminmenu .wp-submenu.sub-open,.folded #adminmenu .opensub .wp-submenu,.folded #adminmenu .wp-has-current-submenu .wp-submenu.sub-open,.folded #adminmenu .wp-has-current-submenu.opensub .wp-submenu,.folded #adminmenu a.menu-top:focus+.wp-submenu,.folded #adminmenu .wp-has-current-submenu a.menu-top:focus+.wp-submenu,.no-js.folded #adminmenu .wp-has-submenu:hover .wp-submenu{top:-1px;left:32px}.folded #adminmenu a.wp-has-current-submenu:focus+.wp-submenu,.folded #adminmenu .wp-has-current-submenu .wp-submenu{border-width:1px;border-style:solid;position:absolute;top:-1000em}#adminmenu .wp-submenu a{font-size:12px;line-height:18px;margin:0;padding-left:12px}#adminmenu .wp-not-current-submenu li>a{padding-left:16px}#adminmenu .wp-has-current-submenu ul>li>a,.folded #adminmenu li.menu-top .wp-submenu>li>a{padding-left:12px}#adminmenu a.menu-top,#adminmenu .wp-submenu-head{font-size:13px;font-weight:bold;line-height:18px;padding:0}#adminmenu .wp-submenu-head,.folded #adminmenu .wp-menu-name{display:none}.folded #adminmenu .wp-submenu-head{display:block}#adminmenu .wp-submenu li{padding:0;margin:0;overflow:hidden}#adminmenu a.menu-top{border-width:1px 0;border-style:solid none}#adminmenu .wp-menu-image img{padding:7px 0 0 7px;opacity:.6;filter:alpha(opacity=60)}#adminmenu div.wp-menu-name{padding:5px}#adminmenu div.wp-menu-image{float:left;width:28px;height:28px}.folded #adminmenu div.wp-menu-image{width:32px;position:absolute;z-index:25}.folded #adminmenu a.menu-top{height:28px}.wp-menu-arrow{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 .wp-menu-arrow div{display:none;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;top:0}.folded #adminmenu li .wp-menu-arrow{-moz-transform:translate(32px);-webkit-transform:translate(32px);-o-transform:translate(32px);-ms-transform:translate(32px);transform:translate(32px)}#adminmenu li.current .wp-menu-arrow,#adminmenu li.wp-has-current-submenu .wp-menu-arrow,#adminmenu li.wp-has-current-submenu .wp-menu-arrow div,#adminmenu li.wp-has-submenu .wp-menu-arrow div,#adminmenu li.current .wp-menu-arrow div,.no-js #adminmenu li.wp-has-submenu:hover .wp-menu-arrow,#adminmenu li.wp-has-submenu.opensub .wp-menu-arrow,#adminmenu a.wp-has-submenu:focus .wp-menu-arrow,#adminmenu a:hover .wp-menu-arrow{display:block}#adminmenu li.current .wp-menu-arrow,#adminmenu li.wp-menu-open .wp-menu-arrow{top:0}.no-js #adminmenu li.wp-has-submenu:hover .wp-menu-arrow,#adminmenu li.wp-has-submenu.opensub .wp-menu-arrow,#adminmenu a.wp-has-submenu:focus .wp-menu-arrow{z-index:1001}.ie8 #adminmenu li.menu-top:hover .wp-menu-arrow{display:none}#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 .wp-menu-arrow div,.no-js #adminmenu li.wp-not-current-submenu:hover .wp-menu-arrow{display:none}.folded #adminmenu li.current .wp-menu-arrow,.folded #adminmenu li.current .wp-menu-arrow div,.folded #adminmenu li.wp-has-current-submenu .wp-menu-arrow div,.folded #adminmenu li.wp-menu-open .wp-menu-arrow,.folded #adminmenu li a:focus .wp-menu-arrow{display:block}#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:5px 4px 5px 10px;margin:-4px -1px 4px;border-width:1px 0;border-style:solid;-webkit-border-top-right-radius:3px;border-top-right-radius:3px}#adminmenu li.wp-menu-open{border-width:0 0 1px;border-style:solid}#adminmenu li.current,.folded #adminmenu li.wp-menu-open{border:0 none}.folded #adminmenu li.wp-has-current-submenu{margin-bottom:1px}.folded #adminmenu .wp-has-current-submenu.menu-top-last{margin-bottom:0}#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;z-index:26}#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;border-width:1px 0 0;border-style:solid}.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}@media only screen and (max-width:900px){.auto-fold #wpcontent,.auto-fold #wpfooter{margin-left:52px}.auto-fold #adminmenuback,.auto-fold #adminmenuwrap,.auto-fold #adminmenu,.auto-fold #adminmenu li.menu-top{width:32px}.auto-fold #adminmenu .wp-submenu.sub-open,.auto-fold #adminmenu .opensub .wp-submenu,.auto-fold #adminmenu .wp-has-current-submenu .wp-submenu.sub-open,.auto-fold #adminmenu .wp-has-current-submenu.opensub .wp-submenu,.auto-fold #adminmenu a.menu-top:focus+.wp-submenu,.auto-fold #adminmenu .wp-has-current-submenu a.menu-top:focus+.wp-submenu{top:-1px;left:32px}.auto-fold #adminmenu a.wp-has-current-submenu:focus+.wp-submenu,.auto-fold #adminmenu .wp-has-current-submenu .wp-submenu{border-width:1px;border-style:solid;position:absolute;top:-1000em}.auto-fold #adminmenu li.menu-top .wp-submenu>li>a{padding-left:12px}.auto-fold #adminmenu .wp-menu-name{display:none}.auto-fold #adminmenu .wp-submenu-head{display:block}.auto-fold #adminmenu div.wp-menu-image{width:32px;position:absolute;z-index:25}.auto-fold #adminmenu a.menu-top{height:28px}.auto-fold #adminmenu li .wp-menu-arrow{-moz-transform:translate(32px);-webkit-transform:translate(32px);-o-transform:translate(32px);-ms-transform:translate(32px);transform:translate(32px)}.auto-fold #adminmenu li .wp-menu-arrow div{display:none}.auto-fold #adminmenu li.current .wp-menu-arrow,.auto-fold #adminmenu li.current .wp-menu-arrow div,.auto-fold #adminmenu li.wp-has-current-submenu .wp-menu-arrow div,.auto-fold #adminmenu li.wp-menu-open .wp-menu-arrow,.auto-fold #adminmenu li a:focus .wp-menu-arrow{display:block}.auto-fold #adminmenu li.wp-menu-open{border:0 none}.auto-fold #adminmenu li.wp-has-current-submenu{margin-bottom:1px}.auto-fold #adminmenu .wp-has-current-submenu.menu-top-last{margin-bottom:0}.auto-fold #collapse-menu span{display:none}}.post-com-count-wrapper{min-width:22px;font-family:sans-serif}.post-com-count{background-image:url('../images/bubble_bg.gif');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}th .comment-grey-bubble{background-image:url('../images/comment-grey-bubble.png');background-repeat:no-repeat;height:12px;width:12px}html.wp-toolbar{padding-top:28px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.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}#dashboard-widgets.columns-1 .postbox-container{width:100%}#dashboard-widgets.columns-2 .postbox-container{width:49.5%}#dashboard-widgets.columns-2 #postbox-container-2,#dashboard-widgets.columns-2 #postbox-container-3,#dashboard-widgets.columns-2 #postbox-container-4{float:right;width:50.5%}#dashboard-widgets.columns-3 .postbox-container{width:33.5%}#dashboard-widgets.columns-3 #postbox-container-1{width:33%}#dashboard-widgets.columns-3 #postbox-container-3,#dashboard-widgets.columns-3 #postbox-container-4{float:right}#dashboard-widgets.columns-4 .postbox-container{width:25%}.postbox-container .meta-box-sortables{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.metabox-holder .postbox-container .empty-container{border:3px dashed #ccc;height:250px}.metabox-holder.columns-1 .postbox-container .empty-container,.columns-2 #postbox-container-3 .empty-container,.columns-2 #postbox-container-4 .empty-container,.columns-3 #postbox-container-4 .empty-container{border:0 none;height:0;min-height:0}#poststuff{padding-top:10px}#poststuff #post-body{padding:0}#post-body-content{width:100%;float:left}#poststuff .postbox-container{width:100%}#poststuff #post-body.columns-2{margin-right:300px}#post-body.columns-2 #postbox-container-1{float:right;margin-right:-300px;width:280px}#post-body.columns-2 #side-sortables{min-height:250px}@media only screen and (max-width:799px){#wpbody-content #dashboard-widgets .postbox-container{width:100%}#wpbody-content .metabox-holder .postbox-container .empty-container{border:0 none;height:0;min-height:0}}@media only screen and (min-width:800px) and (max-width:1200px){#wpbody-content #dashboard-widgets .postbox-container{width:49.5%}#wpbody-content #dashboard-widgets #postbox-container-2,#wpbody-content #dashboard-widgets #postbox-container-3,#wpbody-content #dashboard-widgets #postbox-container-4{float:right;width:50.5%}#dashboard-widgets #postbox-container-3 .empty-container,#dashboard-widgets #postbox-container-4 .empty-container{border:0 none;height:0;min-height:0}#wpbody #wpbody-content #dashboard-widgets.columns-1 .postbox-container{width:100%}#wpbody #wpbody-content .metabox-holder.columns-1 .postbox-container .empty-container{border:0 none;height:0;min-height:0}.index-php .screen-layout,.index-php .columns-prefs{display:block}.columns-prefs .columns-prefs-3,.columns-prefs .columns-prefs-4{display:none}}@media only screen and (max-width:850px){#wpbody-content #poststuff #post-body{margin:0}#wpbody-content #post-body.columns-2 #postbox-container-1{margin-right:0;width:100%}#poststuff #postbox-container-1 .empty-container,#poststuff #postbox-container-1 #side-sortables:empty{border:0 none;height:0;min-height:0}#poststuff #post-body.columns-2 #side-sortables{min-height:0}.screen-layout,.columns-prefs{display:none}}.postbox .hndle{-webkit-border-top-left-radius:3px;-webkit-border-top-right-radius:3px;border-top-left-radius:3px;border-top-right-radius:3px}.js .postbox .hndle{cursor:move}.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}.js .postbox .handlediv{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;-webkit-user-select:none;-moz-user-select:none;user-select:none}.js .widget .widget-top,.js .postbox h3{cursor:move}.postbox .inside,.stuffbox .inside{padding:0 12px 0 10px;line-height:1.4em}.postbox .inside{margin:10px 0;position:relative}.postbox.closed h3{border:0;-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}#dashboard-widgets-wrap{margin:0 -8px}#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:0}#the-comment-list td{vertical-align:top}#the-comment-list td.comment{word-wrap:break-word}.welcome-panel{position:relative;overflow:auto;margin:20px 0;padding:23px 10px 12px;border-width:1px;border-style:solid;border-radius:3px;font-size:13px;line-height:2.1em}.welcome-panel h3{margin:0;font-family:"HelveticaNeue-Light","Helvetica Neue Light","Helvetica Neue",sans-serif;font-size:21px;font-weight:normal;line-height:1.2}.welcome-panel h4{margin:1.33em 0 0;font-size:13px}.welcome-panel .about-description{font-size:16px;margin:0}.welcome-panel .welcome-panel-close{position:absolute;top:5px;right:10px;padding:8px 3px;font-size:13px;text-decoration:none;line-height:1}.welcome-panel .welcome-panel-close:before{content:' ';position:absolute;left:-12px;width:10px;height:100%;background:url('../images/xit.gif') 0 17% no-repeat}.welcome-panel .welcome-panel-close:hover:before{background-position:100% 17%}.wp-core-ui .welcome-panel .button.button-hero{margin:15px 0 3px}.welcome-panel-content{margin-left:13px;max-width:1500px}.welcome-panel .welcome-panel-column-container{clear:both;overflow:hidden;position:relative}.welcome-panel .welcome-panel-column{width:32%;min-width:200px;float:left}.ie8 .welcome-panel .welcome-panel-column{min-width:230px}.welcome-panel .welcome-panel-column:first-child{width:36%}.welcome-panel-column p{margin-top:7px}.welcome-panel .welcome-icon{display:block;padding:2px 0 8px 32px;background-image:url('../images/welcome-icons.png');background-repeat:no-repeat;background-size:16px}.welcome-panel .welcome-add-page{background-position:0 2px}.welcome-panel .welcome-edit-page{background-position:0 -90px}.welcome-panel .welcome-learn-more{background-position:0 -136px}.welcome-panel .welcome-comments{background-position:0 -182px}.welcome-panel .welcome-view-site{background-position:0 -274px}.welcome-panel .welcome-widgets-menus{background-position:1px -229px;line-height:14px}.welcome-panel .welcome-write-blog{background-position:0 -44px}.welcome-panel .welcome-panel-column ul{margin:.8em 1em 1em 0}.welcome-panel .welcome-panel-column li{line-height:16px;list-style-type:none}@media screen and (max-width:870px){.welcome-panel .welcome-panel-column,.welcome-panel .welcome-panel-column:first-child{display:block;float:none;width:100%}.welcome-panel .welcome-panel-column li{display:inline-block;margin-right:13px}.welcome-panel .welcome-panel-column ul{margin:.4em 0 0}.welcome-panel .welcome-icon{padding-left:25px}}table.fixed{table-layout:fixed}.fixed .column-rating,.fixed .column-visible{width:8%}.fixed .column-posts,.fixed .column-date,.fixed .column-parent,.fixed .column-links,.fixed .column-author,.fixed .column-format{width:10%}.fixed .column-response,.fixed .column-categories,.fixed .column-tags,.fixed .column-rel,.fixed .column-role{width:15%}.fixed .column-slug{width:25%}.fixed .column-locations{width:35%}.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-icon{width:80px}#comments-form .fixed .column-author{width:20%}#commentsdiv.postbox .inside{margin:0;padding:0}#commentsdiv .inside .row-actions{line-height:18px}#commentsdiv .inside .column-author{width:25%}#commentsdiv .column-comment p{margin:.6em 0;padding:0}#commentsdiv #replyrow td{padding:0}#commentsdiv p{padding:8px 10px;margin:0}#commentsdiv #add-new-comment{border-width:0 0 1px;border-style:none none solid}#commentsdiv .comments-box{border:0 none}#commentsdiv .comments-box thead th{background:transparent;padding:0 7px 4px;font-style:italic}#commentsdiv .comments-box tr:last-child td{border-bottom:0 none}#commentsdiv .spinner{padding-left:5px}.sorting-indicator{display:none;width:7px;height:4px;margin-top:8px;margin-left:7px;background-image:url('../images/sort.gif');background-repeat:no-repeat}tr.wp-locked .locked-indicator{background:url('../images/lock.png') no-repeat;margin:-2px 0 0 6px;height:20px;width:16px}tr.wp-locked .check-column label,tr.wp-locked .check-column input[type="checkbox"],tr.wp-locked .row-actions .inline,tr.wp-locked .row-actions .trash{display:none}tr .locked-info{height:0;opacity:0}tr.wp-locked .locked-info{height:auto;opacity:1}tr.locked-info,tr.wp-locked .locked-info{-webkit-transition:height 1s,opacity 500ms;-moz-transition:height 1s,opacity 500ms;-ms-transition:height 1s,opacity 500ms;-o-transition:height 1s,opacity 500ms;transition:height 1s,opacity 500ms}.fixed .column-comments .sorting-indicator{margin-top:3px}#menu-locations-wrap .widefat{width:60%}.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{overflow:hidden;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:4em}#posts-filter fieldset{float:left;margin:0 1.5ex 1em 0;padding:0}#posts-filter fieldset legend{padding:0 0 .2em 1px}#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;width:auto}.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-save .spinner{padding:4px 10px 0;vertical-align:top;float:right}.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}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 #bulk-titles div{font-family:sans-serif;font-style:normal;font-size:11px}.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}#show-comments{overflow:hidden}#save-action .spinner,#show-comments a,#show-comments .spinner{float:left}#lost-connection-notice .spinner{display:block;float:left;margin:0 5px 0 0}.rtl #lost-connection-notice .spinner{float:right;margin:0 0 0 5px}#titlediv{position:relative;margin-bottom:5px}#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%;height:1.7em;width:100%;outline:0;margin:1px 0}#titlediv #title-prompt-text,#wp-fullscreen-title-prompt-text{color:#bbb;position:absolute;font-size:1.7em;padding:11px 10px}#wp-fullscreen-save .fs-saved{color:#999;float:right;margin-top:4px}#wp-fullscreen-title-prompt-text{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{line-height:24px;min-height:25px;margin-top:5px;padding-right:6px}#edit-slug-box .cancel{margin-right:10px;font-size:11px}#editable-post-name-full{display:none}#editable-post-name input{width:16em}.postarea h3 label{float:left}.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{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}.press-this #side-sortables .category-tabs li,ul.category-tabs li,#side-sortables .add-menu-item-tabs li,.wp-tab-bar li{display:inline;line-height:1.35em}.no-js .category-tabs li.hide-if-no-js{display:none}.category-tabs a,#side-sortables .add-menu-item-tabs a,.wp-tab-bar a{text-decoration:none}.category-tabs{margin:8px 0 3px}#category-adder h4{margin:10px 0}#side-sortables .add-menu-item-tabs,.wp-tab-bar{margin-bottom:3px}#normal-sortables .postbox #replyrow .submit{float:none;margin:0;padding:0 7px 5px}#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}ul.category-tabs,ul.add-menu-item-tabs,ul.wp-tab-bar{margin-top:12px}ul.category-tabs li{border-style:solid;border-width:1px;position:relative}ul.add-menu-item-tabs li.tabs,.wp-tab-active{border-style:solid solid none;border-width:1px 1px 0}#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}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:0}#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 1px;position:relative;top:-2px}#post-body .postarea .wp_themeSkin .mceStatusbar a.mceResize{top:20px}#content-resize-handle{background:transparent url('../images/resize.gif') no-repeat scroll right bottom;width:12px;cursor:se-resize;position:absolute;right:2px;height:19px}.press-this #content-resize-handle{bottom:2px}.tmce-active #content-resize-handle{display:none}#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 center;padding:2px 0 1px 20px}#timestampdiv{padding-top:5px;line-height:23px}#timestampdiv p{margin:8px 0 6px}#timestampdiv input{border-width:1px;border-style:solid}.notification-dialog{position:fixed;top:30%;left:50%;width:450px;margin-left:-225px;background:#fff;line-height:1.5;z-index:1000005}.notification-dialog-background{position:fixed;top:0;left:0;right:0;bottom:0;background:#000;opacity:.5;filter:alpha(opacity=50);z-index:1000000}#post-lock-dialog .post-locked-message,#post-lock-dialog .post-taken-over{margin:25px}#post-lock-dialog .post-locked-message a.button{margin-right:10px}#post-lock-dialog .post-locked-avatar{float:left;margin:0 20px 20px 0}#post-lock-dialog .wp-tab-first{outline:0}#post-lock-dialog .locked-saving img{float:left;margin-right:3px}#post-lock-dialog.saving .locked-saving,#post-lock-dialog.saved .locked-saved{display:inline}#postcustomstuff thead th{padding:5px 8px 8px}#postcustom #postcustomstuff .submit{border:0 none;float:none;padding:0 8px 8px}#side-sortables #postcustom #postcustomstuff .submit{margin:0;padding:0}#side-sortables #postcustom #postcustomstuff #the-list textarea{height:85px}#side-sortables #postcustom #postcustomstuff td.left input,#side-sortables #postcustom #postcustomstuff td.left select,#side-sortables #postcustomstuff #newmetaleft a{margin:3px 3px 0}#postcustomstuff table{margin:0;width:100%;border-width:1px;border-style:solid;border-spacing:0}#postcustomstuff tr{vertical-align:top}#postcustomstuff table input,#postcustomstuff table select,#postcustomstuff table textarea{width:96%;margin:8px}#side-sortables #postcustomstuff table input,#side-sortables #postcustomstuff table select,#side-sortables #postcustomstuff table textarea{margin:3px}#postcustomstuff th.left,#postcustomstuff td.left{width:38%}#postcustomstuff .submit input{margin:0;width:auto}#postcustomstuff #newmetaleft a{display:inline-block;margin:0 8px 8px;text-decoration:none}.no-js #postcustomstuff #enternew{display:none}#post-body-content .compat-attachment-fields{margin-bottom:20px}.compat-attachment-fields th{padding-top:5px;padding-right:10px}.revisions-control-frame,.revisions-diff-frame{position:relative}.revisions-controls{padding-top:40px;height:100px;z-index:1}.revisions-controls input[type="checkbox"]{position:relative;top:-1px;vertical-align:text-bottom}.revisions.pinned .revisions-controls{position:fixed;top:0;padding-bottom:10px}.revisions-tickmarks{position:relative;margin:0 auto;height:.8em;top:7px;max-width:70%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.revisions-tickmarks>div{position:absolute;height:100%;border-style:solid;border-width:0 1px 0 0;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.revisions-tickmarks>div:first-child{border-width:0}.comparing-two-revisions .revisions-controls{height:140px}.revisions .diff-error{position:absolute;text-align:center;margin:0 auto;width:100%;display:none}.revisions.diff-error .diff-error{display:block}.revisions .loading-indicator{position:fixed;vertical-align:middle;opacity:0;width:100%;top:50%;margin-left:-90px;-webkit-transition:opacity .5s;-moz-transition:opacity .5s;-ms-transition:opacity .5s;-o-transition:opacity .5s;transition:opacity .5s;filter:alpha(opacity=0)}body.folded .revisions .loading-indicator{margin-left:-32px}.revisions .loading-indicator span.spinner{display:block;margin:0 auto;float:none}.revisions.loading .loading-indicator{opacity:1;filter:alpha(opacity=100)}.revisions .diff{-webkit-transition:opacity .5s;-moz-transition:opacity .5s;-ms-transition:opacity .5s;-o-transition:opacity .5s;transition:opacity .5s}.revisions.loading .diff{opacity:.5;filter:alpha(opacity=50)}.revisions.diff-error .diff{visibility:hidden}.revisions-meta{margin-top:15px}.revision-toggle-compare-mode{position:absolute;top:0;right:0}.comparing-two-revisions .revisions-previous,.comparing-two-revisions .revisions-next,.revisions-meta .diff-meta-to strong{display:none}.revisions-controls .author-card .date{color:#777}.revisions-controls .author-card.autosave{color:#d54e21}.revisions-controls .author-card .author-name{font-weight:bold}.comparing-two-revisions .diff-meta-to strong{display:block}.revisions-previous,.revisions-next{position:relative;z-index:1}.revisions-previous{float:left}.revisions-next{float:right}.revisions-controls .wp-slider{max-width:70%;margin:0 auto;top:-3px}.post-revisions li img,#revisions-meta-restored img{vertical-align:middle}table.diff{table-layout:fixed;width:100%;white-space:pre-wrap;word-wrap:break-word}table.diff col.content{width:auto}table.diff col.content.diffsplit{width:48%}table.diff col.diffsplit.middle{width:auto}table.diff col.ltype{width:30px}table.diff tr{background-color:transparent}table.diff td,table.diff th{padding:.5em;font-family:Consolas,Monaco,monospace}table.diff .diff-deletedline del,table.diff .diff-addedline ins{text-decoration:none}.diff-meta{-webkit-border-radius:3px;border-radius:3px;padding:5px;clear:both;min-height:32px}.diff-title strong{line-height:32px;min-width:60px;text-align:right;float:left;margin-right:5px}.revisions-controls .author-card .avatar,.revisions-controls .author-card .author-info{float:left;margin-left:6px;margin-right:6px}.revisions-controls .author-card .byline{display:block;font-size:12px}.revisions-controls .author-card .avatar{vertical-align:middle}.diff-meta input.restore-revision{float:right;margin-left:6px;margin-right:6px;margin-top:4px}.diff-meta-from{display:none}.comparing-two-revisions .diff-meta-from{display:block}.revisions-tooltip{position:absolute;bottom:105px;margin-right:0;margin-left:-69px;z-index:0;max-width:350px;min-width:130px;padding:8px 4px;display:none;opacity:0}.revisions-tooltip.flipped{margin-left:0;margin-right:-70px}.revisions.pinned .revisions-tooltip{display:none!important}.comparing-two-revisions .revisions-tooltip{bottom:145px}.revisions-tooltip-arrow{width:70px;height:15px;overflow:hidden;position:absolute;left:0;margin-left:35px;bottom:-15px}.revisions-tooltip.flipped .revisions-tooltip-arrow{margin-left:0;margin-right:35px;left:auto;right:0}.revisions-tooltip-arrow>span{content:"";position:absolute;left:20px;top:-20px;width:25px;height:25px;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);tranform:rotate(45deg)}.revisions-tooltip.flipped .revisions-tooltip-arrow>span{left:auto;right:20px}.ie8 .revisions-tooltip-arrow>span{left:15px;top:-25px;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(SizingMethod='auto expand', M11=0.7071067811865476, M12=-0.7071067811865475, M21=0.7071067811865475, M22=0.7071067811865476)"}.ie8 .revisions-tooltip.flipped .revisions-tooltip-arrow>span{right:25px}.revisions-tooltip,.revisions-tooltip-arrow>span{border-width:1px;border-style:solid}div.revisions-controls>.wp-slider>.ui-slider-handle{margin-left:-10px}.wp-slider.ui-slider{position:relative;border-width:1px;border-style:solid;border-radius:3px;text-align:left;cursor:pointer}.wp-slider .ui-slider-handle{position:absolute;z-index:2;margin-top:-3px;width:19px;height:19px;border-width:1px;border-style:solid;border-radius:50%}.wp-slider .ui-slider-handle:before{content:"";position:absolute;top:6px;left:3px;height:8px;width:13px;background:url(../images/arrows-pr.png) no-repeat -2px -47px}.wp-slider .ui-slider-handle.from-handle:before,.wp-slider .ui-slider-handle.to-handle:before{height:8px;width:7px}.wp-slider .ui-slider-handle.from-handle:before{background-position:-5px -84px;left:7px}.wp-slider .ui-slider-handle.to-handle:before{background-position:-4px -65px;left:5px}.wp-slider .ui-slider-range{position:absolute;font-size:.7em;display:block;border:0;background-color:transparent;background-image:none}.wp-slider.ui-slider-horizontal{height:.8em}.wp-slider.ui-slider-horizontal .ui-slider-handle{top:-.25em;margin-left:-.6em}.wp-slider.ui-slider-horizontal .ui-slider-range{top:0;height:100%}.wp-slider.ui-slider-horizontal .ui-slider-range-min{left:0}.wp-slider.ui-slider-horizontal .ui-slider-range-max{right:0}#select-featured-image{padding:4px 0;overflow:hidden}#select-featured-image img{max-width:100%;height:auto;margin-bottom:10px}#select-featured-image a{float:left;clear:both}#select-featured-image .remove{display:none;margin-top:10px}.js #select-featured-image.has-featured-image .remove{display:inline-block}.no-js #select-featured-image .choose{display:none}a.post-state-format{overflow:hidden;display:inline-block;vertical-align:middle;height:16px;width:16px;margin-right:5px;background-repeat:no-repeat;text-indent:-999em}#post-formats-select{line-height:2em}label.post-format-icon{margin-left:5px;padding:2px 0 2px 21px}.post-format-icon.post-format-standard{background-position:0 0}.post-format-icon.post-format-image{background-position:0 -32px}.post-format-icon.post-format-gallery{background-position:0 -64px}.post-format-icon.post-format-audio{background-position:0 -96px}.post-format-icon.post-format-video{background-position:0 -128px}.post-format-icon.post-format-chat{background-position:0 -160px}.post-format-icon.post-format-status{background-position:0 -192px}.post-format-icon.post-format-aside{background-position:0 -224px}.post-format-icon.post-format-quote{background-position:0 -256px}.post-format-icon.post-format-link{background-position:0 -288px}.category-adder{margin-left:120px;padding:4px 0}.category-adder h4{margin:0 0 8px}#side-sortables .category-adder{margin:0}#post-body ul.add-menu-item-tabs{float:left;width:120px;text-align:right;margin:0 -120px 0 5px;padding:0}#post-body ul.add-menu-item-tabs li{padding:8px}#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{min-height:42px;max-height:200px;overflow:auto;padding:0 .9em;border-style:solid;border-width:1px}div.tabs-panel-active{display:block}div.tabs-panel-inactive{display:none}#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{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 0}.form-wrap .form-field #parent{max-width:100%}.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}table.links-table{width:100%}.links-table th{font-weight:normal;text-align:left;vertical-align:top;min-width:80px;width:20%;word-wrap:break-word}.links-table th,.links-table td{padding:5px 0}.links-table td label{margin-right:8px}.links-table td input[type="text"],.links-table td textarea{width:100%}.links-table #link_rel{max-width:280px}.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}.media-item .edit-attachment,.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{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-new-php #media-items{margin:1em 0}#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:#f7f7f7;background-image:-webkit-gradient(linear,left bottom,left top,from(#fff),to(#f7f7f7));background-image:-webkit-linear-gradient(bottom,#fff,#f7f7f7);background-image:-moz-linear-gradient(bottom,#fff,#f7f7f7);background-image:-o-linear-gradient(bottom,#fff,#f7f7f7);background-image:linear-gradient(to top,#fff,#f7f7f7);-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:#8cc1e9;background-image:-webkit-gradient(linear,left bottom,left top,from(#72a7cf),to(#8cc1e9));background-image:-webkit-linear-gradient(bottom,#72a7cf,#8cc1e9);background-image:-moz-linear-gradient(bottom,#72a7cf,#8cc1e9);background-image:-o-linear-gradient(bottom,#72a7cf,#8cc1e9);background-image:linear-gradient(to top,#72a7cf,#8cc1e9);-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:15%}.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;margin:5px 10px;padding:0}.media-item .error-div a.dismiss{display:block;float:right;margin:5px 4px 0 15px}.find-box{width:600px;height:300px;overflow:hidden;padding:33px 0 51px;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;padding:6px;height:100%}.find-box-search{overflow:hidden;padding:9px;position:relative}.find-box-search .spinner{float:none;left:125px;position:absolute;top:9px}#find-posts-input{float:left;width:140px;height:24px}#find-posts-search{float:left;margin:1px 4px 0 3px}#find-posts-response{margin:8px 0;padding:0 1px 6px}#find-posts-response table{width:100%}#find-posts-response .found-radio{padding:3px 0 0 8px;width:15px}.find-box-buttons{padding:8px;overflow:hidden}.find-box #resize-se{position:absolute;right:1px;bottom:1px}.ui-find-overlay{position:absolute;top:0;left:0;background-color:#000;opacity:.6;filter:alpha(opacity=60)}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}.post-php .imgedit-wrap table{width:100%}.describe .imgedit-wrap table td,.wp_attachment_holder .imgedit-wrap table td{vertical-align:top;padding-top:0}.describe .imgedit-wrap table td.imgedit-settings{padding:0 5px}.wp_attachment_holder .imgedit-wrap table td.imgedit-settings{width:250px}td.imgedit-settings input{margin-top:0;vertical-align:middle}.imgedit-wait{position:absolute;top:0;background:#fff url(../images/wpspin_light.gif) no-repeat scroll 22px 10px;background-size:16px 16px;opacity:.7;filter:alpha(opacity=70);width:100%;height:500px;display:none}.spinner{background:url(../images/wpspin_light.gif) no-repeat;background-size:16px 16px;display:none;float:right;opacity:.7;filter:alpha(opacity=70);width:16px;height:16px;margin:5px 5px 0}.no-float{float:none}.media-disabled,.imgedit-settings .disabled{color:grey}.wp_attachment_image,.A1B1{overflow:hidden}.wp_attachment_image .button,.A1B1 .button{float:left}.no-js .wp_attachment_image .button{display:none}.wp_attachment_image .spinner,.A1B1 .spinner{float:left;padding:0 4px 4px;vertical-align:bottom}.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}a.imgedit-help-toggle{text-decoration:none}.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:3px;border-radius:3px;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 5px 3px;text-align:center}#replysubmit .spinner{padding:2px 0 0;vertical-align:top;float:right}#replysubmit .button{margin-right:5px}#replysubmit .error{color:red;line-height:21px;text-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;-webkit-box-shadow:none;box-shadow:none}.comment-php .wp-editor-area{height:200px}.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}.theme-install-php .spinner{margin-top:9px}h3.available-themes{margin:.3em 0 1em;float:left}.available-theme{display:inline-block;margin-right:10px;overflow:hidden;padding:20px 20px 20px 0;vertical-align:top;width:300px}.available-theme .screenshot{width:300px;height:225px;display:block;border-width:1px;border-style:solid;margin-bottom:10px;overflow:hidden}.available-theme img{width:300px}.available-theme h3{margin:15px 0 0}.available-theme .theme-author{line-height:18px}.available-theme .action-links{margin-top:10px;overflow:hidden}.available-theme a.screenshot:focus{border-color:#777}#current-theme .theme-info li,.theme-options li,.available-theme .action-links li{float:left;padding-right:10px;margin-right:10px;border-right:1px solid #dfdfdf}.available-theme .action-links li{padding-right:8px;margin-right:8px}.ie8 .available-theme .action-links li{padding-right:7px;margin-right:7px}#current-theme .theme-info li:last-child,.theme-options li:last-child,.available-theme .action-links li:last-child{padding-right:0;margin-right:0;border-right:0}.available-theme .action-links .delete-theme{float:right;margin-left:8px;margin-right:0}.available-theme .action-links .delete-theme a{color:red;padding:2px}.available-theme .action-links .delete-theme a:hover{background:red;color:#fff;text-decoration:none}.available-theme .action-links p{float:left}#current-theme{margin:20px 0 10px;padding:0 0 20px;border-bottom-width:1px;border-bottom-style:solid;overflow:hidden}#current-theme.has-screenshot{padding-left:330px}#current-theme h3{margin:0;font-size:12px;font-weight:normal;color:#999}#current-theme h4{margin:3px 0 16px;font-size:20px}#current-theme h4 span{margin-left:20px;font-size:12px;font-weight:normal}#current-theme a{border-bottom:0}#current-theme .theme-info{margin:1em 0;overflow:hidden}#current-theme .theme-description{margin-top:5px;max-width:600px;line-height:1.6em}#current-theme img{float:left;width:300px;margin-left:-330px;border-width:1px;border-style:solid}.theme-options{overflow:hidden;font-size:14px;padding-bottom:10px}.theme-options .load-customize{margin-right:30px;float:left}.theme-options span{float:left;margin-right:10px;text-transform:uppercase;font-size:11px;line-height:18px;color:#999}.theme-options ul{float:left;margin:0}@media only screen and (max-width:1200px){.available-theme,.available-theme .screenshot,#current-theme img{width:240px}.available-theme .screenshot{height:180px}.available-theme img{width:100%}#current-theme.has-screenshot{padding-left:270px}#current-theme img{margin-left:-270px}}#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;overflow:hidden;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-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}h2.nav-tab-wrapper,h3.nav-tab-wrapper{border-bottom-width:1px;border-bottom-style:solid;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,#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}.plugins .update th,.plugins .update td{border-bottom:0}.plugin-update-tr td{border-top: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 .update .second,.plugins .update .row-actions-visible{padding-bottom:0}.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:0}#display_name{width:15em}#createuser .form-field input{width:25em}.pressthis{margin:20px 0}.pressthis a,.pressthis a:hover,.pressthis a:focus,.pressthis a:active{display:inline-block;position:relative;cursor:move;color:#333;background:#e6e6e6;background-image:-webkit-gradient(linear,left bottom,left top,color-stop(7%,#e6e6e6),color-stop(77%,#d8d8d8));background-image:-webkit-linear-gradient(bottom,#e6e6e6 7%,#d8d8d8 77%);background-image:-moz-linear-gradient(bottom,#e6e6e6 7%,#d8d8d8 77%);background-image:-o-linear-gradient(bottom,#e6e6e6 7%,#d8d8d8 77%);background-image:linear-gradient(to top,#e6e6e6 7%,#d8d8d8 77%);-webkit-border-radius:5px;border-radius:5px;border:1px solid #b4b4b4;font-style:normal;line-height:16px;font-size:14px;text-decoration:none;text-shadow:0 1px 0 #fff}.pressthis a:active{outline:0}.pressthis a:hover:after{-webkit-transform:skew(20deg) rotate(9deg);-moz-transform:skew(20deg) rotate(9deg);transform:skew(20deg) rotate(9deg);-webkit-box-shadow:0 10px 8px rgba(0,0,0,0.7);box-shadow:0 10px 8px rgba(0,0,0,0.7)}.pressthis a span{background:url(../images/press-this.png?v=20120502) no-repeat 0 5px;background-size:24px 20px;padding:8px 11px 8px 27px;margin:0 5px;display:inline-block}.pressthis a:after{content:'';width:70%;height:55%;z-index:-1;position:absolute;right:10px;bottom:9px;background:transparent;-webkit-transform:skew(20deg) rotate(6deg);-moz-transform:skew(20deg) rotate(6deg);transform:skew(20deg) rotate(6deg);-webkit-box-shadow:0 10px 8px rgba(0,0,0,0.6);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}.options-general-php .spinner{float:none;margin:-3px 3px}#wpfooter{position:absolute;bottom:0;left:0;right:0;padding:10px 0;margin-right:20px;border-top-width:1px;border-top-style:solid}#wpfooter p{margin:0;line-height:20px}#wpfooter a{text-decoration:none}#wpfooter a:hover{text-decoration:underline}.about-wrap{position:relative;margin:25px 40px 0 20px;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 .feature-section{padding-bottom:20px}.about-wrap .feature-section h4{margin-bottom:.6em}.about-wrap .feature-section p{margin-top:.6em}.about-wrap code{font-size:14px}.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 img,.about-wrap .feature-section .video{border:0;margin:0 1.94% 10px 0;-webkit-border-radius:3px;border-radius:3px}.about-wrap .feature-section .video video{max-width:100%}.about-wrap .feature-section.three-col img{margin:.5em 0 .5em 5px;max-width:100%;float:none}.ie8 .about-wrap .feature-section.three-col img{margin-left:0}.about-wrap .feature-section.images-stagger-right img,.about-wrap .feature-section.images-stagger-right .video{float:right;margin:0 5px 12px 2em}.about-wrap .feature-section.images-stagger-left img{float:left;margin:0 2em 12px 5px}.about-wrap .feature-section .image-100{margin:0 0 2em 0;width:100%}.about-wrap .feature-section .image-66{width:65%}.about-wrap .feature-section .image-66.video{max-width:600px}.about-wrap .feature-section .image-50{max-width:50%}.about-wrap .feature-section img.image-30{max-width:31.2381%}.ie8 .about-wrap .feature-section img{border-width:1px;border-style:solid}.about-wrap .images-stagger-right img.image-30:nth-child(2){margin-left:1em}.about-wrap .feature-section.col{margin-bottom:0}.about-wrap .feature-section.col h4{margin:0 0 .6em 0}.about-wrap .feature-section.col .last-feature{margin-right:0}.about-wrap .feature-section.two-col div{width:47%;margin-right:4.999999999%;float:left}.about-wrap .feature-section.three-col div{width:30%;margin-right:4.999999999%;float:left}.about-wrap .three-col-images{text-align:center}.about-wrap .three-col-images img{margin:0 0 10px}.about-wrap .three-col-images .last-feature{float:right}.about-wrap .three-col-images .first-feature{float:left}.about-wrap .changelog .feature-section{overflow:hidden}.about-wrap .changelog li{list-style-type:disc;margin-left:3em}@media only screen and (max-width:900px){.about-wrap .feature-section.images-stagger-left img,.about-wrap .feature-section.images-stagger-right img,.about-wrap .feature-section.images-stagger-right .video{clear:both}.about-wrap .feature-section .video.image-66{float:none;width:98%;max-width:98%}.about-wrap .feature-section.images-stagger-right .video.image-66{margin-left:3px}}@media only screen and (max-width:768px){.about-wrap .feature-section .image-66{float:none;width:98%;max-width:98%}.about-wrap .feature-section.images-stagger-right .image-66{margin-left:3px}.about-wrap .feature-section.images-stagger-left .image-66{margin-right:3px}}.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:0 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}body.full-overlay-active{overflow:hidden}.wp-full-overlay{background:#fff;z-index:500000;position:fixed;overflow:visible;top:0;bottom:0;left:0;right:0;height:100%;min-width:0}.wp-full-overlay-sidebar{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;position:fixed;width:300px;height:100%;top:0;bottom:0;left:0;padding:0;margin:0;z-index:10;overflow:auto;background:#f5f5f5;border-right:1px solid rgba(0,0,0,0.2)}.wp-full-overlay.collapsed .wp-full-overlay-sidebar{overflow:visible}.wp-full-overlay.collapsed,.wp-full-overlay.expanded .wp-full-overlay-sidebar{margin-left:0!important}.wp-full-overlay.expanded{margin-left:300px}.wp-full-overlay.collapsed .wp-full-overlay-sidebar{margin-left:-300px}.wp-full-overlay-sidebar:after{content:'';display:block;position:absolute;top:0;bottom:0;right:0;width:3px;box-shadow:-5px 0 4px -4px rgba(0,0,0,0.1) inset;z-index:1000}.wp-full-overlay-main{position:absolute;left:0;right:0;top:0;bottom:0;height:100%}.wp-full-overlay-sidebar .wp-full-overlay-header{position:absolute;left:0;right:0;height:45px;padding:0 20px;line-height:45px;z-index:10;margin:0}.wp-full-overlay-sidebar .wp-full-overlay-header{border-top:0;border-bottom:1px solid #fff;box-shadow:inset 0 -1px 0 0 #dfdfdf}.wp-full-overlay-sidebar .wp-full-overlay-footer{bottom:0;border-bottom:0;border-top:1px solid #dfdfdf;box-shadow:inset 0 1px 0 0 #fff}.wp-full-overlay-sidebar .wp-full-overlay-sidebar-content{position:absolute;top:45px;bottom:45px;left:0;right:0;overflow:auto}.wp-full-overlay-sidebar-content .accordion-section:first-child{border-top:1px solid #fff}.wp-full-overlay .close-full-overlay{text-decoration:none}.wp-full-overlay a.collapse-sidebar{position:absolute;bottom:12px;left:0;z-index:50;display:block;width:19px;height:19px;margin-left:15px;padding:0;border-radius:50%;text-decoration:none}.wp-full-overlay.collapsed .collapse-sidebar{position:absolute;left:100%}.wp-full-overlay .collapse-sidebar-arrow{position:absolute;margin-top:2px;margin-left:2px;display:block;width:15px;height:15px;background:transparent url('../images/arrows.png') no-repeat -1px -73px}.wp-full-overlay.collapsed .collapse-sidebar-arrow{background-position:-1px -109px}.wp-full-overlay .collapse-sidebar-label{position:absolute;left:100%;color:#808080;line-height:20px;margin-left:10px}.wp-full-overlay.collapsed .collapse-sidebar-label{display:none}.wp-full-overlay .collapse-sidebar:hover .collapse-sidebar-label{color:#666}.wp-full-overlay,.wp-full-overlay-sidebar,.wp-full-overlay .collapse-sidebar,.wp-full-overlay-main{-webkit-transition-property:left,right,top,bottom,width,margin;-moz-transition-property:left,right,top,bottom,width,margin;-ms-transition-property:left,right,top,bottom,width,margin;-o-transition-property:left,right,top,bottom,width,margin;transition-property:left,right,top,bottom,width,margin;-webkit-transition-duration:.2s;-moz-transition-duration:.2s;-ms-transition-duration:.2s;-o-transition-duration:.2s;transition-duration:.2s}.no-customize-support .hide-if-no-customize,.customize-support .hide-if-customize,.no-customize-support.wp-core-ui .hide-if-no-customize,.no-customize-support .wp-core-ui .hide-if-no-customize,.customize-support.wp-core-ui .hide-if-customize,.customize-support .wp-core-ui .hide-if-customize{display:none}#customize-container{display:none;background:#fff;z-index:500000;position:fixed;overflow:visible;top:0;bottom:0;left:0;right:0;height:100%}.customize-active #customize-container{display:block}.customize-loading #customize-container iframe{opacity:0}.customize-loading #customize-container{background:#fff url("../images/wpspin_light.gif") no-repeat fixed center center;background-size:16px 16px}#customize-container iframe,#theme-installer iframe{height:100%;width:100%;z-index:20;-webkit-transition:opacity .3s;-moz-transition:opacity .3s;-ms-transition:opacity .3s;-o-transition:opacity .3s;transition:opacity .3s}#customize-container .collapse-sidebar{bottom:16px}#theme-installer{display:none}#theme-installer.single-theme{display:block}.install-theme-info{display:none;padding:10px 20px 20px}.single-theme .install-theme-info{padding-top:15px}#theme-installer .install-theme-info{display:block}.install-theme-info .theme-install{float:right;margin-top:18px}.install-theme-info .theme-name{font-size:16px;line-height:24px;margin-bottom:0}.install-theme-info .theme-screenshot{margin-top:15px;width:258px;border:1px solid #ccc}.install-theme-info .theme-details{overflow:hidden}.theme-details .theme-version{margin:15px 0;float:left}.theme-details .star-holder{margin:14px 0;float:right}.theme-details .theme-description{float:left;color:#777;line-height:20px}#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}.mobile .row-actions{visibility:visible}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}#poststuff .inside #parent_id,#poststuff .inside #page_template{max-width:100%}.inline-edit-row #post_parent,.inline-edit-row select[name="page_template"]{max-width:80%}.ie8 #poststuff .inside #parent_id,.ie8 #poststuff .inside #page_template,.ie8 .inline-edit-row #post_parent,.ie8 .inline-edit-row select[name="page_template"]{width:250px}#post-visibility-select{line-height:1.5em;margin-top:3px}#poststuff #submitdiv .inside{margin:0;padding:0}.edit-form-section{margin-bottom:20px}#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}#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:0;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}#dashboard-widgets form .input-text-wrap input{width:100%}#dashboard-widgets form .textarea-wrap textarea{width:100%}#dashboard-widgets .postbox form .submit{float:none;margin:.5em 0 0;padding:0;border: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:10px;padding:0;top:5px}.js #dashboard-widgets h3 .postbox-title-action{right:30px}#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-width:1px;border-top-style:solid;width:45%}#dashboard_right_now .table_discussion{float:right;border-top-width:1px;border-top-style:solid;width:45%}#dashboard_right_now table td{padding:3px 0;white-space:nowrap}#dashboard_right_now table tr.first td{border-top:0}#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:0}#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}.no-js #dashboard_quick_press{display:none}#dashboard_quick_press .easy-blogging{padding:0 8px;text-align:left}#dashboard_quick_press .input-text-wrap{position:relative}#dashboard_quick_press .prompt{color:#bbb;position:absolute}#dashboard_quick_press div.updated{padding:0 5px}#title-wrap label,#tags-input-wrap label{cursor:text}#title-wrap #title{padding:2px 6px;font-size:1.3em;line-height:100%;outline:0}#tags-input-wrap #tags-input{outline:0}#title-wrap #title-prompt-text{font-size:1.3em;padding:5px 8px}#tags-input-wrap #tags-input-prompt-text{font-size:1em;padding:4px 8px}#dashboard_quick_press .input-text-wrap,#dashboard_quick_press .textarea-wrap{margin:0 0 1em 0}#dashboard_quick_press .wp-media-buttons{margin:0 0 .2em 1px;padding:0}#dashboard_quick_press .wp-media-buttons a{color:#777}#dashboard-widgets #dashboard_quick_press form p.submit input{float:left}#dashboard-widgets #dashboard_quick_press form p.submit #save-post{margin:0 .7em 0 1px}#dashboard-widgets #dashboard_quick_press form p.submit #publish{float:right}#dashboard-widgets #dashboard_quick_press form p.submit .spinner{vertical-align:middle;margin:4px 6px 0 0}#dashboard_recent_drafts ul,#dashboard_recent_drafts p{margin:0;padding:0;word-wrap:break-word}#dashboard_recent_drafts ul{list-style:none}#dashboard_recent_drafts ul li{margin-bottom:1em}#dashboard_recent_drafts h4{line-height:1.7em;word-wrap:break-word}#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;color:#fff;-webkit-box-shadow:none;box-shadow:none}#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;background:transparent none;color:#fff;-webkit-box-shadow:none;box-shadow:none}#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;-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{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 h1 a{background-image:url('../images/wordpress-logo.png?ver=20120216');background-size:274px 63px;background-position:top center;background-repeat:no-repeat;width:326px;height:67px;text-indent:-9999px;outline:0;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,.login input[type="text"]{color:#555;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:0;-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 #pass-strength-result{width:250px;font-weight:bold;border-style:solid;border-width:1px;margin:12px 0 6px;padding:6px 5px;text-align:center}.mobile #login{padding:20px 0}.mobile #login form,.mobile #login .message,.mobile #login_error{margin-left:0}.mobile #login #nav,.mobile #login #backtoblog{margin-left:8px}.mobile #login h1 a{width:auto}body.interim-login{height:auto}.interim-login #login{padding:0;margin:5px auto 20px}.interim-login.login h1 a{width:auto}.interim-login #login_error,.interim-login.login .message{margin:0 0 16px}.interim-login.login form{margin: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:0}#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-js #message{display:block}#nav-menu-meta ul.outer-border{-webkit-border-radius:3px;border-radius:3px}.accordion-section ul.category-tabs,.accordion-section ul.add-menu-item-tabs,.accordion-section ul.wp-tab-bar{margin:0}.accordion-section .categorychecklist{margin:13px 0}#nav-menu-meta .accordion-section-content{padding:18px 13px}#nav-menu-meta .button-controls{margin-bottom:0}#nav-menus-frame{margin-left:300px;margin-top:23px}#wpbody-content #menu-settings-column{display:inline;width:281px;margin-left:-300px;clear:both;float:left;padding-top:0}#menu-settings-column .inside{clear:both;margin:10px 0 0}.metabox-holder-disabled .postbox,.metabox-holder-disabled .accordion-section-content{opacity:.5;filter:alpha(opacity=50)}.metabox-holder-disabled .button-controls .select-all{display:none}#wpbody{position:relative}.blank-slate .menu-name{height:2em}.blank-slate .menu-settings{border:0;margin-top:0;padding-top:0;overflow:hidden}.is-submenu{font-style:italic;font-weight:normal;margin-left:4px}.manage-menus{margin-top:23px;padding:10px;overflow:hidden;-webkit-border-radius:3px;border-radius:3px}.manage-menus select{float:left;margin-right:6px}.manage-menus .selected-menu{float:left;margin:5px 6px 0 0}.manage-menus .submit-btn{float:left;margin-top:1px}.menu-edit p{margin:.3em 0 .6em}.menu-edit #post-body-content h3{margin:0 0 10px}.menu-settings{margin-top:2em;overflow:hidden}.menu-settings dl{margin:0 0 10px;overflow:hidden;position:relative}.menu-settings dd{float:left;margin:0;width:60%}.menu-edit .checkbox-input{margin-top:4px}.theme-location-set{font-size:11px}#menu-management-liquid{float:left;min-width:100%;margin-top:3px}#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:0 10px 10px;border-width:1px 0;border-style:solid}#nav-menu-header,#nav-menu-footer{padding:0 10px}#nav-menu-header{border-bottom:1px solid;margin-bottom:13px}#nav-menu-header .menu-name-label{margin-top:2px}#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;float:none}#menu-management .menu-add-new abbr{font-weight:bold}#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}.widefat td.menu-location-menus{padding-bottom:5px}.menu-location-menus select{float:left}#locations-nav-menu-wrapper{padding:5px 0}.locations-nav-menu-select select{float:left;width:160px;margin-right:5px}.locations-row-links{float:left;margin:6px 0 0 6px}.locations-edit-menu-link,.locations-add-menu-link{margin:0 3px}.locations-edit-menu-link{padding-right:3px;border-right:1px solid #ccc}#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,.accordion-container .howto input{width:180px;float:right}.accordion-container .outer-border{margin:0}#nav-menu-meta .accordion-container .top{border-top:1px solid #dfdfdf}#nav-menu-meta .accordion-container .accordion-section:first-child,#nav-menu-meta .accordion-container .accordion-section:first-child h3,#nav-menu-meta .accordion-container .top,#nav-menu-meta .accordion-container .top h3{-webkit-border-top-right-radius:3px;-webkit-border-top-left-radius:3px;border-top-right-radius:3px;border-top-left-radius:3px}#nav-menu-meta .accordion-container .accordion-section:last-child,#nav-menu-meta .accordion-container .accordion-section:last-child .accordion-section-content,#nav-menu-meta .accordion-container .bottom,#nav-menu-meta .accordion-container .bottom:not(.open) h3{-webkit-border-bottom-right-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.customlinkdiv .howto input{width:180px}.customlinkdiv p{margin-top:0}#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 .add-new-menu-action{float:left;margin:6px 0 0 6px;line-height:15px}.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}.button.right,.button-secondary.right,.button-primary.right{float:right}.list-controls{float:left;margin-top:5px}.add-to-menu{float:right}.postbox .spinner{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{margin:0;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:9px 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:#f6c9cc;background-image:-webkit-gradient(linear,left bottom,left top,from(#f6c9cc),to(#fdf8ff));background-image:-webkit-linear-gradient(bottom,#f6c9cc,#fdf8ff);background-image:-moz-linear-gradient(bottom,#f6c9cc,#fdf8ff);background-image:-o-linear-gradient(bottom,#f6c9cc,#fdf8ff);background-image:linear-gradient(to top,#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-settings .field-move a{display:none;margin:0 2px}.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:2px 0 1px}.nav-menus-php .blank-slate .menu-settings{display:none}.nav-menus-php .delete-action{float:left;margin-top:2px}.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:17px;width:100px;background:url('../images/stars.png?ver=20121108') repeat-x bottom left}div.star-holder .star-rating{background:url('../images/stars.png?ver=20121108') repeat-x top left;height:17px;float:left}div.action-links{font-weight:normal;margin:6px 0 0}#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 ol{list-style:none;margin:0}#plugin-information #section-screenshots li img{vertical-align:text-top;max-width:100%;width:auto;height:auto}#plugin-information #section-screenshots li p{font-style:italic;padding-left:20px;padding-bottom:2em}#plugin-information #section-screenshots ol,#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:0}.press-this #wphead{height:32px;margin-left:0;margin-right:0;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 #message{margin:10px 0}.press-this-sidebar{float:right;width:200px;padding-top:10px}.press-this #title{margin-left:0;margin-right:0;-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;padding:0}.press-this #photo-add-url-div input[type="text"]{width:220px}#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}.js .postbox:hover .handlediv,.js .stuffbox:hover .handlediv{background:transparent url(../images/arrows.png) no-repeat 6px 7px}.press-this #submitdiv:hover .handlediv{background:0}.tbtitle{font-size:1.7em;outline:0;padding:3px 4px;border-color:#dfdfdf}.press-this .actions{float:right;margin:-19px 0 0}.press-this #extra-fields .actions{margin:-32px -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;overflow:hidden}#waiting span{float:right;margin:0 0 0 5px}#waiting .spinner{display:block}#extra-fields .postbox{margin-bottom:5px}#extra-fields .titlewrap{padding:0;overflow:auto;height:100px}#img_container a{display:block;float:left;overflow:hidden}#img_container img,#img_container a{width:68px;height:68px}#img_container img{border:0;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:120px}.press-this #content{margin:5px 0;padding:0 5px;border:0 none;height:345px;font-family:Consolas,Monaco,monospace;font-size:13px;line-height:19px;background:transparent}.press-this #publishing-actions .spinner{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:0}#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%}#filter-box{clear:both}.feature-filter{padding:8px 12px 0}.feature-filter .feature-group{float:left;margin:5px 10px 10px}.feature-filter .feature-group li{display:inline-block;vertical-align:top;list-style-type:none;padding-right:25px;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;display:inline-block}div.sidebar-name h3{font-weight:normal;font-size:15px;margin:0;padding:8px 10px;overflow:hidden;white-space:nowrap}div.sidebar-name{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 .sidebar-name{cursor:pointer}.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{-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;display:inline-block;vertical-align:top}#widget-list .widget-description{padding:5px 8px}.widget-placeholder{border-width:1px;border-style:dashed;margin:0 auto 20px;height:27px;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;padding-bottom:.2em;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 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:0}.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 .spinner{float:none;margin:0 3px -3px}.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}.ui-sortable,.ui-draggable{-ms-touch-action:none}.accordion-section{border-top:1px solid #fff;border-bottom:1px solid #dfdfdf;margin:0}.accordion-section:first-child{border-top:1px solid #dfdfdf}.accordion-section:last-child{box-shadow:0 1px 0 0 #fff}.accordion-section.open .accordion-section-content,.no-js .accordion-section .accordion-section-content{display:block}.accordion-section.open:hover{border-bottom-color:#dfdfdf}.accordion-section-content{display:none;padding:10px 20px 15px;overflow:hidden;background:#fdfdfd;border-left:1px solid #dfdfdf;border-right:1px solid #dfdfdf}.accordion-section-title{margin:0;padding:15px 20px;position:relative;border-left:1px solid #dfdfdf;border-right:1px solid #dfdfdf;-webkit-user-select:none;-moz-user-select:none;user-select:none}.js .accordion-section-title{cursor:pointer}.js .accordion-section-title:after{content:'';width:0;height:0;border-color:#ccc transparent;border-style:solid;border-width:6px 6px 0;position:absolute;top:25px;right:20px;z-index:1}.accordion-section-title:focus{outline:0}.accordion-section-title:hover:after,.accordion-section-title:focus:after{border-color:#aaa transparent}.cannot-expand .accordion-section-title{cursor:auto}.cannot-expand .accordion-section-title:after{display:none}.control-section .accordion-section-title{padding:10px 20px;color:#464646;font-size:15px;font-family:Georgia,"Times New Roman","Bitstream Charter",Times,serif;font-weight:normal;text-shadow:0 1px 0 #fff;background:#f5f5f5;background-image:-webkit-gradient(linear,left bottom,left top,from(#eee),to(#f5f5f5));background-image:-webkit-linear-gradient(bottom,#eee,#f5f5f5);background-image:-moz-linear-gradient(bottom,#eee,#f5f5f5);background-image:-o-linear-gradient(bottom,#eee,#f5f5f5);background-image:linear-gradient(to top,#eee,#f5f5f5)}.control-section .accordion-section-title:after{top:15px}.js .control-section:hover .accordion-section-title,.js .control-section .accordion-section-title:hover,.js .control-section.open .accordion-section-title,.js .control-section .accordion-section-title:focus{color:#000;background:#f9f9f9;background-image:-webkit-gradient(linear,left bottom,left top,from(#ececec),to(#f9f9f9));background-image:-webkit-linear-gradient(bottom,#ececec,#f9f9f9);background-image:-moz-linear-gradient(bottom,#ececec,#f9f9f9);background-image:-o-linear-gradient(bottom,#ececec,#f9f9f9);background-image:linear-gradient(to top,#ececec,#f9f9f9)}.control-section.open .accordion-section-title{border-bottom:1px solid #dfdfdf}@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}}@media print,(-o-min-device-pixel-ratio:5/4),(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){.press-this .tagchecklist span a{background-image:url('../images/xit-2x.gif');background-size:20px auto}.js .postbox:hover .handlediv,.js .stuffbox:hover .handlediv,.widget-top a.widget-action{background-image:url('../images/arrows-2x.png');background-size:15px 123px}.widget-top a.widget-action:hover{background-image:url('../images/arrows-dark-2x.png');background-size:15px 123px}.post-com-count{background-image:url('../images/bubble_bg-2x.gif');background-size:18px 100px}tr.wp-locked .locked-indicator{background-image:url('../images/lock-2x.png');background-size:16px 16px}th .comment-grey-bubble{background-image:url('../images/comment-grey-bubble-2x.png');background-size:12px 12px}.sorting-indicator{background-image:url('../images/sort-2x.gif?ver=20130102');background-size:14px 4px}#content-resize-handle,#post-body .wp_themeSkin .mceStatusbar a.mceResize{background:transparent url('../images/resize-2x.gif') no-repeat scroll right bottom;background-size:11px 11px}div.star-holder{background:url('../images/stars-2x.png?ver=20121108') repeat-x bottom left;background-size:21px 37px}div.star-holder .star-rating{background:url('../images/stars-2x.png?ver=20121108') repeat-x top left;background-size:21px 37px}.welcome-panel .welcome-panel-close:before{background-image:url('../images/xit-2x.gif');background-size:20px auto}.welcome-panel .welcome-icon{background-image:url('../images/welcome-icons-2x.png')}.login h1 a{background-image:url('../images/wordpress-logo-2x.png?ver=20120412');background-size:274px 63px}.wp-badge{background-image:url('../images/wp-badge-2x.png?ver=20120516');background-size:173px 194px}.wp-full-overlay .collapse-sidebar-arrow{background-image:url('../images/arrows-2x.png');background-size:15px 123px}.pressthis a span{background-image:url(../images/press-this-2x.png?v=20121105)}.imgedit-crop,.imgedit-rleft,.imgedit-rright,.imgedit-flipv,.imgedit-fliph,.imgedit-undo,.imgedit-redo{background-image:url('../images/imgedit-icons-2x.png');background-size:260px 64px}.spinner,.imgedit-wait,.customize-loading #customize-container{background-image:url(../images/wpspin_light-2x.gif)}.wp-slider .ui-slider-handle:before{background-image:url(../images/arrows-pr-2x.png);background-size:16px 102px}}.locale-zh-cn .howto,.locale-zh-cn .tablenav .displaying-num,.locale-zh-cn .js .input-with-default-title,.locale-zh-cn .link-to-original,.locale-zh-cn .inline-edit-row fieldset span.title,.locale-zh-cn .inline-edit-row fieldset span.checkbox-title,.locale-zh-cn #utc-time,.locale-zh-cn #local-time,.locale-zh-cn p.install-help,.locale-zh-cn p.help,.locale-zh-cn p.description,.locale-zh-cn span.description,.locale-zh-cn .form-wrap p{font-style:normal}.locale-zh-cn .hdnle a{font-size:12px}.locale-zh-cn form.upgrade .hint{font-style:normal;font-size:100%}.locale-zh-cn #wp-fullscreen-tagline{font-family:KaiTi,"楷体",sans-serif}.locale-zh-cn #wp-fullscreen-modes a{font-size:12px}.locale-zh-cn #sort-buttons{font-size:1em!important}.locale-ru-ru .inline-edit-row fieldset label span.title{width:auto;min-width:5em}.locale-ru-ru.press-this .posting{margin-right:257px}.locale-ru-ru.press-this #photo-add-url-div input[type="text"]{width:255px}.locale-ru-ru.press-this #side-sortables{width:245px}.locale-ru-ru #customize-header-actions .button{padding:0 8px 1px}.locale-lt-lt .inline-edit-row fieldset label span.title{width:8em}.locale-lt-lt .inline-edit-row fieldset label span.input-text-wrap{margin-left:8em} \ No newline at end of file +#wpwrap{height:auto;min-height:100%;width:100%;position:relative}#wpcontent{height:100%}#wpcontent,#wpfooter{margin-left:165px}.folded #wpcontent,.folded #wpfooter{margin-left:52px}#wpbody-content{padding-bottom:65px;float:left;width:100%}#adminmenuback,#adminmenuwrap,#adminmenu,#adminmenu .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;float:none;width:auto}#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,.ui-helper-hidden-accessible{position:absolute;left:-1000em;top:-1000em;height:1px;width:1px;overflow:hidden}.screen-reader-shortcut{position:absolute;top:-1000em}.screen-reader-shortcut:focus{left:6px;top:-21px;height:auto;width:auto;display:block;font-size:14px;font-weight:700;padding:15px 23px 14px;background:#f1f1f1;color:#21759b;border-radius:3px;z-index:100000;line-height:normal;-webkit-box-shadow:0 0 2px 2px rgba(0,0,0,.6);box-shadow:0 0 2px 2px rgba(0,0,0,.6);text-decoration:none}.hidden,.js .closed .inside,.js .hide-if-js,.no-js .hide-if-no-js,.js.wp-core-ui .hide-if-js,.js .wp-core-ui .hide-if-js,.no-js.wp-core-ui .hide-if-no-js,.no-js .wp-core-ui .hide-if-no-js{display:none}input[type=text],input[type=password],input[type=number],input[type=search],input[type=email],input[type=url],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-top;padding:0;margin:1px 0 0}input[type=search]{-webkit-appearance:textfield}input[type=search]::-webkit-search-decoration{display:none}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;padding-top:1px}body.login{background:#fbfbfb;min-width:0}iframe,img{border:0}td,textarea,input,select,button{font-family:inherit;font-size:inherit;font-weight:inherit}td,textarea{line-height:inherit}input,select{line-height:15px}a,input[type=text],input[type=password],input[type=number],input[type=search],input[type=email],input[type=url],select,textarea,div{outline:0}a:focus,a:active{outline:thin dotted}#adminmenu a:focus,#adminmenu a:active,.screen-reader-text:focus{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:700}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;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:400}.subsubsub a.current{font-weight:700;border:0}.subsubsub li{display:inline-block;margin:0;padding:0;white-space:nowrap}.widefat,div.updated,div.error,.wrap .add-new-h2,textarea,input[type=text],input[type=password],input[type=file],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:0}.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:6px 0 25px;vertical-align:top}.widefat tbody th.check-column{padding:9px 0 22px}.widefat.media .check-column{padding-top:8px}.widefat thead .check-column,.widefat tfoot .check-column{padding:10px 0 0}.no-js .widefat thead .check-column input,.no-js .widefat tfoot .check-column input{display:none}.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:400;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}html,.wp-dialog{background-color:#fff}textarea,input[type=text],input[type=password],input[type=file],input[type=email],input[type=number],input[type=search],input[type=tel],input[type=url],select{background-color:#fff;color:#333}select{color:#000}select[disabled]{color:#7f7f7f}select:focus{border-color:#aaa}textarea:focus,input[type=text]:focus,input[type=password]:focus,input[type=file]:focus,input[type=email]:focus,input[type=number]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=url]:focus,select:focus{-webkit-box-shadow:1px 1px 2px rgba(0,0,0,.1);box-shadow:1px 1px 2px rgba(0,0,0,.1)}input[readonly]{background-color:#eee}:-moz-placeholder,.wp-core-ui :-moz-placeholder{color:#a9a9a9}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;margin:-6px 0 0 -8px;float:left}.key-labels label{line-height:24px}.pre{white-space: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}.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}#minor-publishing-actions input,#major-publishing-actions input,#minor-publishing-actions .preview{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}input[type=number].small-text{width:60px}#doaction,#doaction2,#post-query-submit{margin:1px 8px 0 0}.tablenav #changeit,.tablenav #delete_all,.tablenav #clear-recent-list{margin-top:1px}.tablenav .actions select{float:left;margin-right:6px;max-width:200px}.ie8 .tablenav .actions select{width:155px}.ie8 .tablenav .actions select#cat{width:200px}#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}.search-box input[name="s"],#search-plugins input[name="s"],.tagsdiv .newtag{float:left;height:2em;margin:0 4px 0 0}input[type=text].ui-autocomplete-loading{background:transparent url(../images/loading.gif) no-repeat right center;visibility:visible}ul#add-to-blog-users{margin:0 0 0 14px}.ui-autocomplete-input.open{border-bottom-right-radius:0;border-bottom-left-radius:0}.ui-autocomplete{padding:0;margin:0;list-style:none;position:absolute;z-index:10000;border-bottom-right-radius:3px;border-bottom-left-radius:3px;border-width:1px;border-style:solid}.ui-autocomplete li{margin-bottom:0;white-space:nowrap;text-align:left}.ui-autocomplete li a{display:block;height:100%;padding:4px 10px}.ui-autocomplete li a.ui-state-focus{cursor:pointer}#major-publishing-actions{padding:10px 10px 8px;clear:both;border-top:1px solid #f5f5f5;margin-top:-2px}#delete-action{line-height:25px;vertical-align:middle;text-align:left;float:left}#publishing-action{text-align:right;float:right;line-height:23px}#publishing-action .spinner{float:left}#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;box-shadow:0 1px 0 #fff}#save-post{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}.approve,.unapproved .unapprove{display:none}.unapproved .approve,.spam .approve,.trash .approve{display:inline}td.action-links,th.action-links{text-align:right}#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:700}ul#dismissed-updates{display:none}form.upgrade{margin-top:8px}form.upgrade .hint{font-style:italic;font-size:85%;margin:-.5em 0 2em 0}.update-php .spinner{float:none;margin:-4px 0}#ajax-loading,.ajax-loading,.ajax-feedback,.imgedit-wait-spin,.list-ajax-loading{visibility:hidden}#ajax-response.alignleft{margin-left:2em}#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}#contextual-help-wrap{overflow:auto}#screen-meta .screen-reader-text{visibility:hidden}#screen-meta-links{margin:0 24px 0 0}#screen-meta-links a:focus{-webkit-box-shadow:1px 1px 1px rgba(0,0,0,.4);box-shadow:1px 1px 1px rgba(0,0,0,.4);outline: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:23px;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 .screen-meta-toggle{position:relative;top:-1px}#screen-meta-links a.show-settings{text-decoration:none;z-index:1;padding:1px 16px 0 6px;height:22px;line-height:22px;font-size:12px;display:block;text-shadow:rgba(255,255,255,.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 .columns-prefs label input{margin: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 ul 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 li{margin:0;padding:0;cursor:pointer}#adminmenu a{display:block;line-height:18px;padding:2px 5px}#adminmenu li.menu-top{min-height:28px;position:relative}#adminmenu .wp-submenu{list-style:none;padding:4px 0;margin:0;position:absolute;top:-1000em;left:146px;z-index:1000;overflow:visible;border-width:1px;border-style:solid;-webkit-border-bottom-right-radius:3px;-webkit-border-top-right-radius:3px;border-bottom-right-radius:3px;border-top-right-radius:3px}.js #adminmenu .sub-open,.js #adminmenu .opensub .wp-submenu,#adminmenu a.menu-top:focus+.wp-submenu,.no-js li.wp-has-submenu:hover .wp-submenu{top:-1px}#adminmenu .wp-has-current-submenu .wp-submenu,.no-js li.wp-has-current-submenu:hover .wp-submenu,#adminmenu a.wp-has-current-submenu:focus+.wp-submenu,#adminmenu .wp-has-current-submenu .wp-submenu.sub-open,#adminmenu .wp-has-current-submenu.opensub .wp-submenu{position:relative;z-index:3;top:auto;left:auto;right:auto;bottom:auto;border:0 none;-webkit-box-shadow:none;box-shadow:none}.folded #adminmenu .wp-submenu.sub-open,.folded #adminmenu .opensub .wp-submenu,.folded #adminmenu .wp-has-current-submenu .wp-submenu.sub-open,.folded #adminmenu .wp-has-current-submenu.opensub .wp-submenu,.folded #adminmenu a.menu-top:focus+.wp-submenu,.folded #adminmenu .wp-has-current-submenu a.menu-top:focus+.wp-submenu,.no-js.folded #adminmenu .wp-has-submenu:hover .wp-submenu{top:-1px;left:32px}.folded #adminmenu a.wp-has-current-submenu:focus+.wp-submenu,.folded #adminmenu .wp-has-current-submenu .wp-submenu{border-width:1px;border-style:solid;position:absolute;top:-1000em}#adminmenu .wp-submenu a{font-size:12px;line-height:18px;margin:0;padding-left:12px}#adminmenu .wp-not-current-submenu li>a{padding-left:16px}#adminmenu .wp-has-current-submenu ul>li>a,.folded #adminmenu li.menu-top .wp-submenu>li>a{padding-left:12px}#adminmenu a.menu-top,#adminmenu .wp-submenu-head{font-size:13px;font-weight:700;line-height:18px;padding:0}#adminmenu .wp-submenu-head,.folded #adminmenu .wp-menu-name{display:none}.folded #adminmenu .wp-submenu-head{display:block}#adminmenu .wp-submenu li{padding:0;margin:0;overflow:hidden}#adminmenu a.menu-top{border-width:1px 0;border-style:solid none}#adminmenu .wp-menu-image img{padding:7px 0 0 7px;opacity:.6;filter:alpha(opacity=60)}#adminmenu div.wp-menu-name{padding:5px}#adminmenu div.wp-menu-image{float:left;width:28px;height:28px}.folded #adminmenu div.wp-menu-image{width:32px;position:absolute;z-index:25}.folded #adminmenu a.menu-top{height:28px}.wp-menu-arrow{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 .wp-menu-arrow div{display:none;position:absolute;top:7px;left:-1px;width:14px;height:15px;-moz-transform:matrix(-.6,1,.6,1,0,0);-webkit-transform:matrix(-.6,1,.6,1,0,0);-o-transform:matrix(-.6,1,.6,1,0,0);-ms-transform:matrix(-.6,1,.6,1,0,0);transform:matrix(-.6,1,.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;top:0}.folded #adminmenu li .wp-menu-arrow{-moz-transform:translate(32px);-webkit-transform:translate(32px);-o-transform:translate(32px);-ms-transform:translate(32px);transform:translate(32px)}#adminmenu li.current .wp-menu-arrow,#adminmenu li.wp-has-current-submenu .wp-menu-arrow,#adminmenu li.wp-has-current-submenu .wp-menu-arrow div,#adminmenu li.wp-has-submenu .wp-menu-arrow div,#adminmenu li.current .wp-menu-arrow div,.no-js #adminmenu li.wp-has-submenu:hover .wp-menu-arrow,#adminmenu li.wp-has-submenu.opensub .wp-menu-arrow,#adminmenu a.wp-has-submenu:focus .wp-menu-arrow,#adminmenu a:hover .wp-menu-arrow{display:block}#adminmenu li.current .wp-menu-arrow,#adminmenu li.wp-menu-open .wp-menu-arrow{top:0}.no-js #adminmenu li.wp-has-submenu:hover .wp-menu-arrow,#adminmenu li.wp-has-submenu.opensub .wp-menu-arrow,#adminmenu a.wp-has-submenu:focus .wp-menu-arrow{z-index:1001}.ie8 #adminmenu li.menu-top:hover .wp-menu-arrow{display:none}#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 .wp-menu-arrow div,.no-js #adminmenu li.wp-not-current-submenu:hover .wp-menu-arrow{display:none}.folded #adminmenu li.current .wp-menu-arrow,.folded #adminmenu li.current .wp-menu-arrow div,.folded #adminmenu li.wp-has-current-submenu .wp-menu-arrow div,.folded #adminmenu li.wp-menu-open .wp-menu-arrow,.folded #adminmenu li a:focus .wp-menu-arrow{display:block}#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;border-style:solid}#adminmenu .wp-submenu .wp-submenu-head{padding:5px 4px 5px 10px;margin:-4px -1px 4px;border-width:1px 0;border-style:solid;-webkit-border-top-right-radius:3px;border-top-right-radius:3px}#adminmenu li.wp-menu-open{border-width:0 0 1px;border-style:solid}#adminmenu li.current,.folded #adminmenu li.wp-menu-open{border:0 none}.folded #adminmenu li.wp-has-current-submenu{margin-bottom:1px}.folded #adminmenu .wp-has-current-submenu.menu-top-last{margin-bottom:0}#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:700;margin-top:1px;margin-left:7px;-webkit-border-radius:10px;border-radius:10px;z-index:26}#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;border-width:1px 0 0;border-style:solid}.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}@media only screen and (max-width:900px){.auto-fold #wpcontent,.auto-fold #wpfooter{margin-left:52px}.auto-fold #adminmenuback,.auto-fold #adminmenuwrap,.auto-fold #adminmenu,.auto-fold #adminmenu li.menu-top{width:32px}.auto-fold #adminmenu .wp-submenu.sub-open,.auto-fold #adminmenu .opensub .wp-submenu,.auto-fold #adminmenu .wp-has-current-submenu .wp-submenu.sub-open,.auto-fold #adminmenu .wp-has-current-submenu.opensub .wp-submenu,.auto-fold #adminmenu a.menu-top:focus+.wp-submenu,.auto-fold #adminmenu .wp-has-current-submenu a.menu-top:focus+.wp-submenu{top:-1px;left:32px}.auto-fold #adminmenu a.wp-has-current-submenu:focus+.wp-submenu,.auto-fold #adminmenu .wp-has-current-submenu .wp-submenu{border-width:1px;border-style:solid;position:absolute;top:-1000em}.auto-fold #adminmenu li.menu-top .wp-submenu>li>a{padding-left:12px}.auto-fold #adminmenu .wp-menu-name{display:none}.auto-fold #adminmenu .wp-submenu-head{display:block}.auto-fold #adminmenu div.wp-menu-image{width:32px;position:absolute;z-index:25}.auto-fold #adminmenu a.menu-top{height:28px}.auto-fold #adminmenu li .wp-menu-arrow{-moz-transform:translate(32px);-webkit-transform:translate(32px);-o-transform:translate(32px);-ms-transform:translate(32px);transform:translate(32px)}.auto-fold #adminmenu li .wp-menu-arrow div{display:none}.auto-fold #adminmenu li.current .wp-menu-arrow,.auto-fold #adminmenu li.current .wp-menu-arrow div,.auto-fold #adminmenu li.wp-has-current-submenu .wp-menu-arrow div,.auto-fold #adminmenu li.wp-menu-open .wp-menu-arrow,.auto-fold #adminmenu li a:focus .wp-menu-arrow{display:block}.auto-fold #adminmenu li.wp-menu-open{border:0 none}.auto-fold #adminmenu li.wp-has-current-submenu{margin-bottom:1px}.auto-fold #adminmenu .wp-has-current-submenu.menu-top-last{margin-bottom:0}.auto-fold #collapse-menu span{display:none}}.post-com-count-wrapper{min-width:22px;font-family:sans-serif}.post-com-count{background-image:url(../images/bubble_bg.gif);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:700;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}th .comment-grey-bubble{background-image:url(../images/comment-grey-bubble.png);background-repeat:no-repeat;height:12px;width:12px}html.wp-toolbar{padding-top:28px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.narrow{width:70%;margin-bottom:40px}.narrow p{line-height:150%}.widefat th,.widefat td{overflow:hidden}.widefat th{font-weight:400}.widefat td p{margin:2px 0 .8em}.widefat .column-comment p{margin:.6em 0}.postbox-container{float:left}#dashboard-widgets.columns-1 .postbox-container{width:100%}#dashboard-widgets.columns-2 .postbox-container{width:49.5%}#dashboard-widgets.columns-2 #postbox-container-2,#dashboard-widgets.columns-2 #postbox-container-3,#dashboard-widgets.columns-2 #postbox-container-4{float:right;width:50.5%}#dashboard-widgets.columns-3 .postbox-container{width:33.5%}#dashboard-widgets.columns-3 #postbox-container-1{width:33%}#dashboard-widgets.columns-3 #postbox-container-3,#dashboard-widgets.columns-3 #postbox-container-4{float:right}#dashboard-widgets.columns-4 .postbox-container{width:25%}.postbox-container .meta-box-sortables{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box}.metabox-holder .postbox-container .empty-container{border:3px dashed #CCC;height:250px}.metabox-holder.columns-1 .postbox-container .empty-container,.columns-2 #postbox-container-3 .empty-container,.columns-2 #postbox-container-4 .empty-container,.columns-3 #postbox-container-4 .empty-container{border:0 none;height:0;min-height:0}#poststuff{padding-top:10px}#poststuff #post-body{padding:0}#post-body-content{width:100%;float:left}#poststuff .postbox-container{width:100%}#poststuff #post-body.columns-2{margin-right:300px}#post-body.columns-2 #postbox-container-1{float:right;margin-right:-300px;width:280px}#post-body.columns-2 #side-sortables{min-height:250px}@media only screen and (max-width:799px){#wpbody-content #dashboard-widgets .postbox-container{width:100%}#wpbody-content .metabox-holder .postbox-container .empty-container{border:0 none;height:0;min-height:0}}@media only screen and (min-width:800px) and (max-width:1200px){#wpbody-content #dashboard-widgets .postbox-container{width:49.5%}#wpbody-content #dashboard-widgets #postbox-container-2,#wpbody-content #dashboard-widgets #postbox-container-3,#wpbody-content #dashboard-widgets #postbox-container-4{float:right;width:50.5%}#dashboard-widgets #postbox-container-3 .empty-container,#dashboard-widgets #postbox-container-4 .empty-container{border:0 none;height:0;min-height:0}#wpbody #wpbody-content #dashboard-widgets.columns-1 .postbox-container{width:100%}#wpbody #wpbody-content .metabox-holder.columns-1 .postbox-container .empty-container{border:0 none;height:0;min-height:0}.index-php .screen-layout,.index-php .columns-prefs{display:block}.columns-prefs .columns-prefs-3,.columns-prefs .columns-prefs-4{display:none}}@media only screen and (max-width:960px){#wpbody-content #poststuff #post-body{margin:0}#wpbody-content #post-body.columns-2 #postbox-container-1{margin-right:0;width:100%}#poststuff #postbox-container-1 .empty-container,#poststuff #postbox-container-1 #side-sortables:empty{border:0 none;height:0;min-height:0}#poststuff #post-body.columns-2 #side-sortables{min-height:0}.screen-layout,.columns-prefs{display:none}}.postbox .hndle{-webkit-border-top-left-radius:3px;-webkit-border-top-right-radius:3px;border-top-left-radius:3px;border-top-right-radius:3px}.js .postbox .hndle{cursor:move}.postbox.closed .hndle{-webkit-border-radius:3px;border-radius:3px}.hndle a{font-size:11px;font-weight:400}.postbox .handlediv{float:right;width:27px;height:30px}.js .postbox .handlediv{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;-webkit-user-select:none;-moz-user-select:none;user-select:none}.js .widget .widget-top,.js .postbox h3{cursor:move}.postbox .inside,.stuffbox .inside{padding:0 12px 0 10px;line-height:1.4em}.postbox .inside{margin:10px 0;position:relative}.postbox.closed h3{border:0;-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}#dashboard-widgets-wrap{margin:0 -8px}#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:0}#the-comment-list td{vertical-align:top}#the-comment-list td.comment{word-wrap:break-word}.welcome-panel{position:relative;overflow:auto;margin:20px 0;padding:23px 10px 12px;border-width:1px;border-style:solid;border-radius:3px;font-size:13px;line-height:2.1em}.welcome-panel h3{margin:0;font-family:HelveticaNeue-Light,"Helvetica Neue Light","Helvetica Neue",sans-serif;font-size:21px;font-weight:400;line-height:1.2}.welcome-panel h4{margin:1.33em 0 0;font-size:13px}.welcome-panel .about-description{font-size:16px;margin:0}.welcome-panel .welcome-panel-close{position:absolute;top:5px;right:10px;padding:8px 3px;font-size:13px;text-decoration:none;line-height:1}.welcome-panel .welcome-panel-close:before{content:' ';position:absolute;left:-12px;width:10px;height:100%;background:url(../images/xit.gif) 0 17% no-repeat}.welcome-panel .welcome-panel-close:hover:before{background-position:100% 17%}.wp-core-ui .welcome-panel .button.button-hero{margin:15px 0 3px}.welcome-panel-content{margin-left:13px;max-width:1500px}.welcome-panel .welcome-panel-column-container{clear:both;overflow:hidden;position:relative}.welcome-panel .welcome-panel-column{width:32%;min-width:200px;float:left}.ie8 .welcome-panel .welcome-panel-column{min-width:230px}.welcome-panel .welcome-panel-column:first-child{width:36%}.welcome-panel-column p{margin-top:7px}.welcome-panel .welcome-icon{display:block;padding:2px 0 8px 32px;background-image:url(../images/welcome-icons.png);background-repeat:no-repeat;background-size:16px}.welcome-panel .welcome-add-page{background-position:0 2px}.welcome-panel .welcome-edit-page{background-position:0 -90px}.welcome-panel .welcome-learn-more{background-position:0 -136px}.welcome-panel .welcome-comments{background-position:0 -182px}.welcome-panel .welcome-view-site{background-position:0 -274px}.welcome-panel .welcome-widgets-menus{background-position:1px -229px;line-height:14px}.welcome-panel .welcome-write-blog{background-position:0 -44px}.welcome-panel .welcome-panel-column ul{margin:.8em 1em 1em 0}.welcome-panel .welcome-panel-column li{line-height:16px;list-style-type:none}@media screen and (max-width:870px){.welcome-panel .welcome-panel-column,.welcome-panel .welcome-panel-column:first-child{display:block;float:none;width:100%}.welcome-panel .welcome-panel-column li{display:inline-block;margin-right:13px}.welcome-panel .welcome-panel-column ul{margin:.4em 0 0}.welcome-panel .welcome-icon{padding-left:25px}}table.fixed{table-layout:fixed}.fixed .column-rating,.fixed .column-visible{width:8%}.fixed .column-posts,.fixed .column-date,.fixed .column-parent,.fixed .column-links,.fixed .column-author,.fixed .column-format{width:10%}.fixed .column-response,.fixed .column-categories,.fixed .column-tags,.fixed .column-rel,.fixed .column-role{width:15%}.fixed .column-slug{width:25%}.fixed .column-locations{width:35%}.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-icon{width:80px}#comments-form .fixed .column-author{width:20%}#commentsdiv.postbox .inside{margin:0;padding:0}#commentsdiv .inside .row-actions{line-height:18px}#commentsdiv .inside .column-author{width:25%}#commentsdiv .column-comment p{margin:.6em 0;padding:0}#commentsdiv #replyrow td{padding:0}#commentsdiv p{padding:8px 10px;margin:0}#commentsdiv #add-new-comment{border-width:0 0 1px;border-style:none none solid}#commentsdiv .comments-box{border:0 none}#commentsdiv .comments-box thead th{background:transparent;padding:0 7px 4px;font-style:italic}#commentsdiv .comments-box tr:last-child td{border-bottom:0 none}#commentsdiv .spinner{padding-left:5px}.sorting-indicator{display:none;width:7px;height:4px;margin-top:8px;margin-left:7px;background-image:url(../images/sort.gif);background-repeat:no-repeat}tr.wp-locked .locked-indicator{background:url(../images/lock.png) no-repeat;margin:-2px 0 0 6px;height:20px;width:16px}tr.wp-locked .check-column label,tr.wp-locked .check-column input[type=checkbox],tr.wp-locked .row-actions .inline,tr.wp-locked .row-actions .trash{display:none}tr .locked-info{height:0;opacity:0}tr.wp-locked .locked-info{height:auto;opacity:1}tr.locked-info,tr.wp-locked .locked-info{-webkit-transition:height 1s,opacity 500ms;-moz-transition:height 1s,opacity 500ms;-ms-transition:height 1s,opacity 500ms;-o-transition:height 1s,opacity 500ms;transition:height 1s,opacity 500ms}.fixed .column-comments .sorting-indicator{margin-top:3px}#menu-locations-wrap .widefat{width:60%}.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:700;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{overflow:hidden;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:4em}#posts-filter fieldset{float:left;margin:0 1.5ex 1em 0;padding:0}#posts-filter fieldset legend{padding:0 0 .2em 1px}#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;width:auto}.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-save .spinner{padding:4px 10px 0;vertical-align:top;float:right}.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}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 #bulk-titles div{font-family:sans-serif;font-style:normal;font-size:11px}.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}#show-comments{overflow:hidden}#save-action .spinner,#show-comments a,#show-comments .spinner{float:left}#lost-connection-notice .spinner{display:block;float:left;margin:0 5px 0 0}.rtl #lost-connection-notice .spinner{float:right;margin:0 0 0 5px}#titlediv{position:relative;margin-bottom:5px}#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%;height:1.7em;width:100%;outline:0;margin:1px 0}#titlediv #title-prompt-text,#wp-fullscreen-title-prompt-text{color:#bbb;position:absolute;font-size:1.7em;padding:11px 10px}#wp-fullscreen-save .fs-saved{color:#999;float:right;margin-top:4px}#wp-fullscreen-title-prompt-text{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{line-height:24px;min-height:25px;margin-top:5px;padding-right:6px}#edit-slug-box .cancel{margin-right:10px;font-size:11px}#editable-post-name-full{display:none}#editable-post-name input{width:16em}.postarea h3 label{float:left}.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{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}.press-this #side-sortables .category-tabs li,ul.category-tabs li,#side-sortables .add-menu-item-tabs li,.wp-tab-bar li{display:inline;line-height:1.35em}.no-js .category-tabs li.hide-if-no-js{display:none}.category-tabs a,#side-sortables .add-menu-item-tabs a,.wp-tab-bar a{text-decoration:none}.category-tabs{margin:8px 0 3px}#category-adder h4{margin:10px 0}#side-sortables .add-menu-item-tabs,.wp-tab-bar{margin-bottom:3px}#normal-sortables .postbox #replyrow .submit{float:none;margin:0;padding:0 7px 5px}#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}ul.category-tabs,ul.add-menu-item-tabs,ul.wp-tab-bar{margin-top:12px}ul.category-tabs li{border-style:solid;border-width:1px;position:relative}ul.add-menu-item-tabs li.tabs,.wp-tab-active{border-style:solid solid none;border-width:1px 1px 0}#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}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:0}#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 1px;position:relative;top:-2px}#post-body .postarea .wp_themeSkin .mceStatusbar a.mceResize{top:20px}#content-resize-handle{background:transparent url(../images/resize.gif) no-repeat scroll right bottom;width:12px;cursor:se-resize;position:absolute;right:2px;height:19px}.press-this #content-resize-handle{bottom:2px}.tmce-active #content-resize-handle{display:none}#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 center;padding:2px 0 1px 20px}#timestampdiv{padding-top:5px;line-height:23px}#timestampdiv p{margin:8px 0 6px}#timestampdiv input{border-width:1px;border-style:solid}.notification-dialog{position:fixed;top:30%;left:50%;width:450px;margin-left:-225px;background:#fff;line-height:1.5;z-index:1000005}.notification-dialog-background{position:fixed;top:0;left:0;right:0;bottom:0;background:#000;opacity:.5;filter:alpha(opacity=50);z-index:1000000}#post-lock-dialog .post-locked-message,#post-lock-dialog .post-taken-over{margin:25px}#post-lock-dialog .post-locked-message a.button{margin-right:10px}#post-lock-dialog .post-locked-avatar{float:left;margin:0 20px 20px 0}#post-lock-dialog .wp-tab-first{outline:0}#post-lock-dialog .locked-saving img{float:left;margin-right:3px}#post-lock-dialog.saving .locked-saving,#post-lock-dialog.saved .locked-saved{display:inline}#postcustomstuff thead th{padding:5px 8px 8px}#postcustom #postcustomstuff .submit{border:0 none;float:none;padding:0 8px 8px}#side-sortables #postcustom #postcustomstuff .submit{margin:0;padding:0}#side-sortables #postcustom #postcustomstuff #the-list textarea{height:85px}#side-sortables #postcustom #postcustomstuff td.left input,#side-sortables #postcustom #postcustomstuff td.left select,#side-sortables #postcustomstuff #newmetaleft a{margin:3px 3px 0}#postcustomstuff table{margin:0;width:100%;border-width:1px;border-style:solid;border-spacing:0}#postcustomstuff tr{vertical-align:top}#postcustomstuff table input,#postcustomstuff table select,#postcustomstuff table textarea{width:96%;margin:8px}#side-sortables #postcustomstuff table input,#side-sortables #postcustomstuff table select,#side-sortables #postcustomstuff table textarea{margin:3px}#postcustomstuff th.left,#postcustomstuff td.left{width:38%}#postcustomstuff .submit input{margin:0;width:auto}#postcustomstuff #newmetaleft a{display:inline-block;margin:0 8px 8px;text-decoration:none}.no-js #postcustomstuff #enternew{display:none}#post-body-content .compat-attachment-fields{margin-bottom:20px}.compat-attachment-fields th{padding-top:5px;padding-right:10px}.revisions-control-frame,.revisions-diff-frame{position:relative}.revisions-controls{padding-top:40px;height:100px;z-index:1}.revisions-controls input[type=checkbox]{position:relative;top:-1px;vertical-align:text-bottom}.revisions.pinned .revisions-controls{position:fixed;top:0;padding-bottom:10px}.revisions-tickmarks{position:relative;margin:0 auto;height:.8em;top:7px;max-width:70%;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.revisions-tickmarks>div{position:absolute;height:100%;border-style:solid;border-width:0 1px 0 0;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.revisions-tickmarks>div:first-child{border-width:0}.comparing-two-revisions .revisions-controls{height:140px}.revisions .diff-error{position:absolute;text-align:center;margin:0 auto;width:100%;display:none}.revisions.diff-error .diff-error{display:block}.revisions .loading-indicator{position:fixed;vertical-align:middle;opacity:0;width:100%;top:50%;margin-left:-90px;-webkit-transition:opacity .5s;-moz-transition:opacity .5s;-ms-transition:opacity .5s;-o-transition:opacity .5s;transition:opacity .5s;filter:alpha(opacity=0)}body.folded .revisions .loading-indicator{margin-left:-32px}.revisions .loading-indicator span.spinner{display:block;margin:0 auto;float:none}.revisions.loading .loading-indicator{opacity:1;filter:alpha(opacity=100)}.revisions .diff{-webkit-transition:opacity .5s;-moz-transition:opacity .5s;-ms-transition:opacity .5s;-o-transition:opacity .5s;transition:opacity .5s}.revisions.loading .diff{opacity:.5;filter:alpha(opacity=50)}.revisions.diff-error .diff{visibility:hidden}.revisions-meta{margin-top:15px}.revision-toggle-compare-mode{position:absolute;top:0;right:0}.comparing-two-revisions .revisions-previous,.comparing-two-revisions .revisions-next,.revisions-meta .diff-meta-to strong{display:none}.revisions-controls .author-card .date{color:#777}.revisions-controls .author-card.autosave{color:#d54e21}.revisions-controls .author-card .author-name{font-weight:700}.comparing-two-revisions .diff-meta-to strong{display:block}.revisions-previous,.revisions-next{position:relative;z-index:1}.revisions-previous{float:left}.revisions-next{float:right}.revisions-controls .wp-slider{max-width:70%;margin:0 auto;top:-3px}.post-revisions li img,#revisions-meta-restored img{vertical-align:middle}table.diff{table-layout:fixed;width:100%;white-space:pre-wrap;word-wrap:break-word}table.diff col.content{width:auto}table.diff col.content.diffsplit{width:48%}table.diff col.diffsplit.middle{width:auto}table.diff col.ltype{width:30px}table.diff tr{background-color:transparent}table.diff td,table.diff th{padding:.5em;font-family:Consolas,Monaco,monospace}table.diff .diff-deletedline del,table.diff .diff-addedline ins{text-decoration:none}.diff-meta{-webkit-border-radius:3px;border-radius:3px;padding:5px;clear:both;min-height:32px}.diff-title strong{line-height:32px;min-width:60px;text-align:right;float:left;margin-right:5px}.revisions-controls .author-card .avatar,.revisions-controls .author-card .author-info{float:left;margin-left:6px;margin-right:6px}.revisions-controls .author-card .byline{display:block;font-size:12px}.revisions-controls .author-card .avatar{vertical-align:middle}.diff-meta input.restore-revision{float:right;margin-left:6px;margin-right:6px;margin-top:4px}.diff-meta-from{display:none}.comparing-two-revisions .diff-meta-from{display:block}.revisions-tooltip{position:absolute;bottom:105px;margin-right:0;margin-left:-69px;z-index:0;max-width:350px;min-width:130px;padding:8px 4px;display:none;opacity:0}.revisions-tooltip.flipped{margin-left:0;margin-right:-70px}.revisions.pinned .revisions-tooltip{display:none!important}.comparing-two-revisions .revisions-tooltip{bottom:145px}.revisions-tooltip-arrow{width:70px;height:15px;overflow:hidden;position:absolute;left:0;margin-left:35px;bottom:-15px}.revisions-tooltip.flipped .revisions-tooltip-arrow{margin-left:0;margin-right:35px;left:auto;right:0}.revisions-tooltip-arrow>span{content:"";position:absolute;left:20px;top:-20px;width:25px;height:25px;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}.revisions-tooltip.flipped .revisions-tooltip-arrow>span{left:auto;right:20px}.ie8 .revisions-tooltip-arrow>span{left:15px;top:-25px;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(SizingMethod='auto expand', M11=0.7071067811865476, M12=-0.7071067811865475, M21=0.7071067811865475, M22=0.7071067811865476)"}.ie8 .revisions-tooltip.flipped .revisions-tooltip-arrow>span{right:25px}.revisions-tooltip,.revisions-tooltip-arrow>span{border-width:1px;border-style:solid}div.revisions-controls>.wp-slider>.ui-slider-handle{margin-left:-10px}.wp-slider.ui-slider{position:relative;border-width:1px;border-style:solid;border-radius:3px;text-align:left;cursor:pointer}.wp-slider .ui-slider-handle{position:absolute;z-index:2;margin-top:-3px;width:19px;height:19px;border-width:1px;border-style:solid;border-radius:50%}.wp-slider .ui-slider-handle:before{content:"";position:absolute;top:6px;left:3px;height:8px;width:13px;background:url(../images/arrows-pr.png) no-repeat -2px -47px}.wp-slider .ui-slider-handle.from-handle:before,.wp-slider .ui-slider-handle.to-handle:before{height:8px;width:7px}.wp-slider .ui-slider-handle.from-handle:before{background-position:-5px -84px;left:7px}.wp-slider .ui-slider-handle.to-handle:before{background-position:-4px -65px;left:5px}.wp-slider .ui-slider-range{position:absolute;font-size:.7em;display:block;border:0;background-color:transparent;background-image:none}.wp-slider.ui-slider-horizontal{height:.8em}.wp-slider.ui-slider-horizontal .ui-slider-handle{top:-.25em;margin-left:-.6em}.wp-slider.ui-slider-horizontal .ui-slider-range{top:0;height:100%}.wp-slider.ui-slider-horizontal .ui-slider-range-min{left:0}.wp-slider.ui-slider-horizontal .ui-slider-range-max{right:0}#select-featured-image{padding:4px 0;overflow:hidden}#select-featured-image img{max-width:100%;height:auto;margin-bottom:10px}#select-featured-image a{float:left;clear:both}#select-featured-image .remove{display:none;margin-top:10px}.js #select-featured-image.has-featured-image .remove{display:inline-block}.no-js #select-featured-image .choose{display:none}a.post-state-format{overflow:hidden;display:inline-block;vertical-align:middle;height:16px;width:16px;margin-right:5px;background-repeat:no-repeat;text-indent:-999em}#post-formats-select{line-height:2em}label.post-format-icon{margin-left:5px;padding:2px 0 2px 21px}.post-format-icon.post-format-standard{background-position:0 0}.post-format-icon.post-format-image{background-position:0 -32px}.post-format-icon.post-format-gallery{background-position:0 -64px}.post-format-icon.post-format-audio{background-position:0 -96px}.post-format-icon.post-format-video{background-position:0 -128px}.post-format-icon.post-format-chat{background-position:0 -160px}.post-format-icon.post-format-status{background-position:0 -192px}.post-format-icon.post-format-aside{background-position:0 -224px}.post-format-icon.post-format-quote{background-position:0 -256px}.post-format-icon.post-format-link{background-position:0 -288px}.category-adder{margin-left:120px;padding:4px 0}.category-adder h4{margin:0 0 8px}#side-sortables .category-adder{margin:0}#post-body ul.add-menu-item-tabs{float:left;width:120px;text-align:right;margin:0 -120px 0 5px;padding:0}#post-body ul.add-menu-item-tabs li{padding:8px}#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{min-height:42px;max-height:200px;overflow:auto;padding:0 .9em;border-style:solid;border-width:1px}div.tabs-panel-active{display:block}div.tabs-panel-inactive{display:none}#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{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 0}.form-wrap .form-field #parent{max-width:100%}.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}table.links-table{width:100%}.links-table th{font-weight:400;text-align:left;vertical-align:top;min-width:80px;width:20%;word-wrap:break-word}.links-table th,.links-table td{padding:5px 0}.links-table td label{margin-right:8px}.links-table td input[type=text],.links-table td textarea{width:100%}.links-table #link_rel{max-width:280px}.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:700}.media-upload-form tr.image-size label{margin:0 0 0 5px;font-weight:700}.media-upload-form th.label label{font-weight:700;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}.media-item .edit-attachment,.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{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-new-php #media-items{margin:1em 0}#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:#f7f7f7;background-image:-webkit-gradient(linear,left bottom,left top,from(#fff),to(#f7f7f7));background-image:-webkit-linear-gradient(bottom,#fff,#f7f7f7);background-image:-moz-linear-gradient(bottom,#fff,#f7f7f7);background-image:-o-linear-gradient(bottom,#fff,#f7f7f7);background-image:linear-gradient(to top,#fff,#f7f7f7);-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:inset 0 0 3px rgba(0,0,0,.1);box-shadow:inset 0 0 3px rgba(0,0,0,.1)}.media-item .bar{z-index:9;width:0;height:100%;margin-top:-24px;background-color:#8cc1e9;background-image:-webkit-gradient(linear,left bottom,left top,from(#72a7cf),to(#8cc1e9));background-image:-webkit-linear-gradient(bottom,#72a7cf,#8cc1e9);background-image:-moz-linear-gradient(bottom,#72a7cf,#8cc1e9);background-image:-o-linear-gradient(bottom,#72a7cf,#8cc1e9);background-image:linear-gradient(to top,#72a7cf,#8cc1e9);-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 0 3px rgba(0,0,0,.3);box-shadow:0 0 3px rgba(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,.4);color:rgba(0,0,0,.6)}.upload-php .fixed .column-parent{width:15%}.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;margin:5px 10px;padding:0}.media-item .error-div a.dismiss{display:block;float:right;margin:5px 4px 0 15px}.find-box{width:600px;height:300px;overflow:hidden;padding:33px 0 51px;position:absolute;z-index:1000}.find-box-head{cursor:move;font-weight:700;height:2em;line-height:2em;padding:1px 12px;position:absolute;top:5px;width:100%}.find-box-inside{overflow:auto;padding:6px;height:100%}.find-box-search{overflow:hidden;padding:9px;position:relative}.find-box-search .spinner{float:none;left:125px;position:absolute;top:9px}#find-posts-input{float:left;width:140px;height:24px}#find-posts-search{float:left;margin:1px 4px 0 3px}#find-posts-response{margin:8px 0;padding:0 1px 6px}#find-posts-response table{width:100%}#find-posts-response .found-radio{padding:3px 0 0 8px;width:15px}.find-box-buttons{padding:8px;overflow:hidden}.find-box #resize-se{position:absolute;right:1px;bottom:1px}.ui-find-overlay{position:absolute;top:0;left:0;background-color:#000;opacity:.6;filter:alpha(opacity=60)}ul#dismissed-updates{display:none}form.upgrade{margin-top:8px}form.upgrade .hint{font-style:italic;font-size:85%;margin:-.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}.post-php .imgedit-wrap table{width:100%}.describe .imgedit-wrap table td,.wp_attachment_holder .imgedit-wrap table td{vertical-align:top;padding-top:0}.describe .imgedit-wrap table td.imgedit-settings{padding:0 5px}.wp_attachment_holder .imgedit-wrap table td.imgedit-settings{width:250px}td.imgedit-settings input{margin-top:0;vertical-align:middle}.imgedit-wait{position:absolute;top:0;background:#fff url(../images/wpspin_light.gif) no-repeat scroll 22px 10px;background-size:16px 16px;opacity:.7;filter:alpha(opacity=70);width:100%;height:500px;display:none}.spinner{background:url(../images/wpspin_light.gif) no-repeat;background-size:16px 16px;display:none;float:right;opacity:.7;filter:alpha(opacity=70);width:16px;height:16px;margin:5px 5px 0}.no-float{float:none}.media-disabled,.imgedit-settings .disabled{color:grey}.wp_attachment_image,.A1B1{overflow:hidden}.wp_attachment_image .button,.A1B1 .button{float:left}.no-js .wp_attachment_image .button{display:none}.wp_attachment_image .spinner,.A1B1 .spinner{float:left;padding:0 4px 4px;vertical-align:bottom}.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}a.imgedit-help-toggle{text-decoration:none}.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:3px;border-radius:3px;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:400;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 5px 3px;text-align:center}#replysubmit .spinner{padding:2px 0 0;vertical-align:top;float:right}#replysubmit .button{margin-right:5px}#replysubmit .error{color:red;line-height:21px;text-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;-webkit-box-shadow:none;box-shadow:none}.comment-php .wp-editor-area{height:200px}.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}.theme-install-php .spinner{margin-top:9px}h3.available-themes{margin:.3em 0 1em;float:left}.available-theme{display:inline-block;margin-right:10px;overflow:hidden;padding:20px 20px 20px 0;vertical-align:top;width:300px}.available-theme .screenshot{width:300px;height:225px;display:block;border-width:1px;border-style:solid;margin-bottom:10px;overflow:hidden}.available-theme img{width:300px}.available-theme h3{margin:15px 0 0}.available-theme .theme-author{line-height:18px}.available-theme .action-links{margin-top:10px;overflow:hidden}.available-theme a.screenshot:focus{border-color:#777}#current-theme .theme-info li,.theme-options li,.available-theme .action-links li{float:left;padding-right:10px;margin-right:10px;border-right:1px solid #dfdfdf}.available-theme .action-links li{padding-right:8px;margin-right:8px}.ie8 .available-theme .action-links li{padding-right:7px;margin-right:7px}#current-theme .theme-info li:last-child,.theme-options li:last-child,.available-theme .action-links li:last-child{padding-right:0;margin-right:0;border-right:0}.available-theme .action-links .delete-theme{float:right;margin-left:8px;margin-right:0}.available-theme .action-links .delete-theme a{color:red;padding:2px}.available-theme .action-links .delete-theme a:hover{background:red;color:#fff;text-decoration:none}.available-theme .action-links p{float:left}#current-theme{margin:20px 0 10px;padding:0 0 20px;border-bottom-width:1px;border-bottom-style:solid;overflow:hidden}#current-theme.has-screenshot{padding-left:330px}#current-theme h3{margin:0;font-size:12px;font-weight:400;color:#999}#current-theme h4{margin:3px 0 16px;font-size:20px}#current-theme h4 span{margin-left:20px;font-size:12px;font-weight:400}#current-theme a{border-bottom:0}#current-theme .theme-info{margin:1em 0;overflow:hidden}#current-theme .theme-description{margin-top:5px;max-width:600px;line-height:1.6em}#current-theme img{float:left;width:300px;margin-left:-330px;border-width:1px;border-style:solid}.theme-options{overflow:hidden;font-size:14px;padding-bottom:10px}.theme-options .load-customize{margin-right:30px;float:left}.theme-options span{float:left;margin-right:10px;text-transform:uppercase;font-size:11px;line-height:18px;color:#999}.theme-options ul{float:left;margin:0}@media only screen and (max-width:1200px){.folded .available-theme,.folded .available-theme .screenshot{width:300px}.folded .available-theme .screenshot{height:225px}.folded #current-theme img{width:300px}.folded #current-theme.has-screenshot{padding-left:330px}.folded #current-theme img{margin-left:-330px}}@media only screen and (max-width:1079px){.folded .available-theme,.folded .available-theme .screenshot{width:270px}.folded .available-theme .screenshot{height:203px}.folded #current-theme img{width:270px}.folded #current-theme.has-screenshot{padding-left:300px}.folded #current-theme img{margin-left:-300px}}@media only screen and (max-width:1200px){.available-theme,.available-theme .screenshot,#current-theme img{width:240px}.available-theme .screenshot{height:180px}.available-theme img{width:100%}#current-theme.has-screenshot{padding-left:270px}#current-theme img{margin-left:-270px}}#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:700;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;overflow:hidden;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-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}h2.nav-tab-wrapper,h3.nav-tab-wrapper{border-bottom-width:1px;border-bottom-style:solid;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,#ed_reply_toolbar #ed_reply_strong,.item-controls .item-order a,.feature-filter .feature-name{font-weight:700}.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{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}.plugins .update th,.plugins .update td{border-bottom:0}.plugin-update-tr td{border-top:0}#wpbody-content .plugins .plugin-title,#wpbody-content .plugins .theme-title{padding-right:12px;white-space:nowrap}.plugins .second,.plugins .row-actions{padding:0 0 5px}.plugins .update .second,.plugins .update .row-actions{padding-bottom:0}.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:0}#display_name{width:15em}#createuser .form-field input{width:25em}.pressthis{margin:20px 0}.pressthis a,.pressthis a:hover,.pressthis a:focus,.pressthis a:active{display:inline-block;position:relative;cursor:move;color:#333;background:#e6e6e6;background-image:-webkit-gradient(linear,left bottom,left top,color-stop(7%,#e6e6e6),color-stop(77%,#d8d8d8));background-image:-webkit-linear-gradient(bottom,#e6e6e6 7%,#d8d8d8 77%);background-image:-moz-linear-gradient(bottom,#e6e6e6 7%,#d8d8d8 77%);background-image:-o-linear-gradient(bottom,#e6e6e6 7%,#d8d8d8 77%);background-image:linear-gradient(to top,#e6e6e6 7%,#d8d8d8 77%);-webkit-border-radius:5px;border-radius:5px;border:1px solid #b4b4b4;font-style:normal;line-height:16px;font-size:14px;text-decoration:none;text-shadow:0 1px 0 #fff}.pressthis a:active{outline:0}.pressthis a:hover:after{-webkit-transform:skew(20deg) rotate(9deg);-moz-transform:skew(20deg) rotate(9deg);transform:skew(20deg) rotate(9deg);-webkit-box-shadow:0 10px 8px rgba(0,0,0,.7);box-shadow:0 10px 8px rgba(0,0,0,.7)}.pressthis a span{background:url(../images/press-this.png?v=20120502) no-repeat 0 5px;background-size:24px 20px;padding:8px 11px 8px 27px;margin:0 5px;display:inline-block}.pressthis a:after{content:'';width:70%;height:55%;z-index:-1;position:absolute;right:10px;bottom:9px;background:transparent;-webkit-transform:skew(20deg) rotate(6deg);-moz-transform:skew(20deg) rotate(6deg);transform:skew(20deg) rotate(6deg);-webkit-box-shadow:0 10px 8px rgba(0,0,0,.6);box-shadow:0 10px 8px rgba(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}.options-general-php .spinner{float:none;margin:-3px 3px}#wpfooter{position:absolute;bottom:0;left:0;right:0;padding:10px 0;margin-right:20px;border-top-width:1px;border-top-style:solid}#wpfooter p{margin:0;line-height:20px}#wpfooter a{text-decoration:none}#wpfooter a:hover{text-decoration:underline}.about-wrap{position:relative;margin:25px 40px 0 20px;max-width:1050px;font-size:15px}.about-wrap div.updated,.about-wrap div.error{display:none!important}.about-wrap p.about-notice{background-color:#ffffe0;border:1px solid #e6db55;margin:5px 0 15px;padding:.4em .8em;border-radius:3px;-webkit-border-radius:3px}.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:400;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:1.5em;line-height:1.5em;padding-top:20px}.about-wrap .feature-section{padding-bottom:20px}.about-wrap .feature-section h4{margin-bottom:.6em}.about-wrap .feature-section p{margin-top:.6em}.about-wrap code{font-size:14px}.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:700;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:700;padding-top:3px}.about-wrap .feature-section.three-col img{margin:.5em 0 .5em 5px;max-width:100%;float:none}.about-wrap .feature-section.col{margin-bottom:0}.about-wrap .feature-section.col h4{margin:0 0 .6em}.about-wrap .feature-section.two-col div{width:47%;margin-right:4.999999999%;float:left}.about-wrap .feature-section.three-col div{width:30%;margin-right:4.999999999%;float:left}.about-wrap .three-col.about-updates .col-1,.about-wrap .three-col.about-updates .col-3{width:37%;margin:0}.about-wrap .three-col.about-updates .col-2{width:16%;margin:0 5%}.about-wrap .feature-section.col .last-feature{margin-right:0}.about-wrap .three-col.about-updates img{margin:0}.about-wrap .changelog .feature-section{overflow:hidden}.about-wrap .about-passwords{margin:20px 0;padding:1px 20px 10px;background-color:#f9f9f9}.about-wrap .about-auto-update{text-align:center;background-color:#f9f9ef;clear:both;padding:10px}.about-wrap .about-auto-update.cool{background-color:#eff9ef}.about-wrap .about-password-meter input{font-size:250%;line-height:1;width:100%;display:block;padding:5px}.about-wrap .about-password-meter #pass-strength-result{display:block!important;font-size:150%;font-weight:400!important;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;width:100%;padding:17px 0;margin-bottom:15px}.about-wrap .feature-section div p img{float:right;margin-left:10px;max-width:20%}.about-wrap .changelog li{list-style-type:disc;margin-left:3em}.about-wrap .return-to-dashboard{margin:30px 0 0 -5px;font-size:14px;font-weight:700}.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:0 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:700}.freedoms-php .about-wrap ol p{font-weight:400;margin:.6em 0}body.full-overlay-active{overflow:hidden}.wp-full-overlay{background:#fff;z-index:500000;position:fixed;overflow:visible;top:0;bottom:0;left:0;right:0;height:100%;min-width:0}.wp-full-overlay-sidebar{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;position:fixed;width:300px;height:100%;top:0;bottom:0;left:0;padding:0;margin:0;z-index:10;overflow:auto;background:#f5f5f5;border-right:1px solid rgba(0,0,0,.2)}.wp-full-overlay.collapsed .wp-full-overlay-sidebar{overflow:visible}.wp-full-overlay.collapsed,.wp-full-overlay.expanded .wp-full-overlay-sidebar{margin-left:0!important}.wp-full-overlay.expanded{margin-left:300px}.wp-full-overlay.collapsed .wp-full-overlay-sidebar{margin-left:-300px}.wp-full-overlay-sidebar:after{content:'';display:block;position:absolute;top:0;bottom:0;right:0;width:3px;box-shadow:-5px 0 4px -4px rgba(0,0,0,.1) inset;z-index:1000}.wp-full-overlay-main{position:absolute;left:0;right:0;top:0;bottom:0;height:100%}.wp-full-overlay-sidebar .wp-full-overlay-header{position:absolute;left:0;right:0;height:45px;padding:0 20px;line-height:45px;z-index:10;margin:0}.wp-full-overlay-sidebar .wp-full-overlay-header{border-top:0;border-bottom:1px solid #fff;box-shadow:inset 0 -1px 0 0 #dfdfdf}.wp-full-overlay-sidebar .wp-full-overlay-footer{bottom:0;border-bottom:0;border-top:1px solid #dfdfdf;box-shadow:inset 0 1px 0 0 #fff}.wp-full-overlay-sidebar .wp-full-overlay-sidebar-content{position:absolute;top:45px;bottom:45px;left:0;right:0;overflow:auto}.wp-full-overlay-sidebar-content .accordion-section:first-child{border-top:1px solid #fff}.wp-full-overlay .close-full-overlay{text-decoration:none}.wp-full-overlay a.collapse-sidebar{position:absolute;bottom:12px;left:0;z-index:50;display:block;width:19px;height:19px;margin-left:15px;padding:0;border-radius:50%;text-decoration:none}.wp-full-overlay.collapsed .collapse-sidebar{position:absolute;left:100%}.wp-full-overlay .collapse-sidebar-arrow{position:absolute;margin-top:2px;margin-left:2px;display:block;width:15px;height:15px;background:transparent url(../images/arrows.png) no-repeat -1px -73px}.wp-full-overlay.collapsed .collapse-sidebar-arrow{background-position:-1px -109px}.wp-full-overlay .collapse-sidebar-label{position:absolute;left:100%;color:gray;line-height:20px;margin-left:10px}.wp-full-overlay.collapsed .collapse-sidebar-label{display:none}.wp-full-overlay .collapse-sidebar:hover .collapse-sidebar-label{color:#666}.wp-full-overlay,.wp-full-overlay-sidebar,.wp-full-overlay .collapse-sidebar,.wp-full-overlay-main{-webkit-transition-property:left,right,top,bottom,width,margin;-moz-transition-property:left,right,top,bottom,width,margin;-ms-transition-property:left,right,top,bottom,width,margin;-o-transition-property:left,right,top,bottom,width,margin;transition-property:left,right,top,bottom,width,margin;-webkit-transition-duration:.2s;-moz-transition-duration:.2s;-ms-transition-duration:.2s;-o-transition-duration:.2s;transition-duration:.2s}.no-customize-support .hide-if-no-customize,.customize-support .hide-if-customize,.no-customize-support.wp-core-ui .hide-if-no-customize,.no-customize-support .wp-core-ui .hide-if-no-customize,.customize-support.wp-core-ui .hide-if-customize,.customize-support .wp-core-ui .hide-if-customize{display:none}#customize-container{display:none;background:#fff;z-index:500000;position:fixed;overflow:visible;top:0;bottom:0;left:0;right:0;height:100%}.customize-active #customize-container{display:block}.customize-loading #customize-container iframe{opacity:0}.customize-loading #customize-container{background:#fff url(../images/wpspin_light.gif) no-repeat fixed center center;background-size:16px 16px}#customize-container iframe,#theme-installer iframe{height:100%;width:100%;z-index:20;-webkit-transition:opacity .3s;-moz-transition:opacity .3s;-ms-transition:opacity .3s;-o-transition:opacity .3s;transition:opacity .3s}#customize-container .collapse-sidebar{bottom:16px}#theme-installer{display:none}#theme-installer.single-theme{display:block}.install-theme-info{display:none;padding:10px 20px 20px}.single-theme .install-theme-info{padding-top:15px}#theme-installer .install-theme-info{display:block}.install-theme-info .theme-install{float:right;margin-top:18px}.install-theme-info .theme-name{font-size:16px;line-height:24px;margin-bottom:0}.install-theme-info .theme-screenshot{margin-top:15px;width:258px;border:1px solid #ccc}.install-theme-info .theme-details{overflow:hidden}.theme-details .theme-version{margin:15px 0;float:left}.theme-details .star-holder{margin:14px 0;float:right}.theme-details .theme-description{float:left;color:#777;line-height:20px}#excerpt,.attachmentlinks{margin:0;height:4em;width:98%}#template div{margin-right:190px}p.pagenav{margin:0;display:inline}.pagenav span{font-weight:700;margin:0 6px}.row-title{font-size:13px!important;font-weight:700}.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,.mobile .row-actions,.row-actions.visible,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:4px 0 0 -10px;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:400;padding:7px 10px;margin:0;line-height:1}#poststuff .inside{margin:6px 0 8px}#poststuff .inside #parent_id,#poststuff .inside #page_template{max-width:100%}.inline-edit-row #post_parent,.inline-edit-row select[name=page_template]{max-width:80%}.ie8 #poststuff .inside #parent_id,.ie8 #poststuff .inside #page_template,.ie8 .inline-edit-row #post_parent,.ie8 .inline-edit-row select[name=page_template]{width:250px}#post-visibility-select{line-height:1.5em;margin-top:3px}#poststuff #submitdiv .inside{margin:0;padding:0}.edit-form-section{margin-bottom:20px}#templateside ul li a{text-decoration:none}.tool-box .title{margin:8px 0;font-size:18px;font-weight:400;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:400;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:700}body.iframe{height:98%}.lp-show-latest p{display:none}.lp-show-latest p:last-child,.lp-show-latest .lp-error p{display:block}td.media-icon{text-align:center;width:80px;padding-top:8px;padding-bottom:8px}td.media-icon img{max-width:80px;max-height:60px}#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:0;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}#dashboard-widgets form .input-text-wrap input{width:100%}#dashboard-widgets form .textarea-wrap textarea{width:100%}#dashboard-widgets .postbox form .submit{float:none;margin:.5em 0 0;padding:0;border: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:10px;padding:0;top:5px}.js #dashboard-widgets h3 .postbox-title-action{right:30px}#dashboard-widgets h4{font-weight:400;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-width:1px;border-top-style:solid;width:45%}#dashboard_right_now .table_discussion{float:right;border-top-width:1px;border-top-style:solid;width:45%}#dashboard_right_now table td{padding:3px 0;white-space:nowrap}#dashboard_right_now table tr.first td{border-top:0}#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:0}#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:-.4em;color:#777}#the-comment-list .comment-item h4 cite{font-style:normal;font-weight:400}#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}.no-js #dashboard_quick_press{display:none}#dashboard_quick_press .easy-blogging{padding:0 8px;text-align:left}#dashboard_quick_press .input-text-wrap{position:relative}#dashboard_quick_press .prompt{color:#bbb;position:absolute}#dashboard_quick_press div.updated{padding:0 5px}#title-wrap label,#tags-input-wrap label{cursor:text}#title-wrap #title{padding:2px 6px;font-size:1.3em;line-height:100%;outline:0}#tags-input-wrap #tags-input{outline:0}#title-wrap #title-prompt-text{font-size:1.3em;padding:5px 8px}#tags-input-wrap #tags-input-prompt-text{font-size:1em;padding:4px 8px}#dashboard_quick_press .input-text-wrap,#dashboard_quick_press .textarea-wrap{margin:0 0 1em}#dashboard_quick_press .wp-media-buttons{margin:0 0 .2em 1px;padding:0}#dashboard_quick_press .wp-media-buttons a{color:#777}#dashboard-widgets #dashboard_quick_press form p.submit input{float:left}#dashboard-widgets #dashboard_quick_press form p.submit #save-post{margin:0 .7em 0 1px}#dashboard-widgets #dashboard_quick_press form p.submit #publish{float:right}#dashboard-widgets #dashboard_quick_press form p.submit .spinner{vertical-align:middle;margin:4px 6px 0 0}#dashboard_recent_drafts ul,#dashboard_recent_drafts p{margin:0;padding:0;word-wrap:break-word}#dashboard_recent_drafts ul{list-style:none}#dashboard_recent_drafts ul li{margin-bottom:1em}#dashboard_recent_drafts h4{line-height:1.7em;word-wrap:break-word}#dashboard_recent_drafts h4 abbr{font-weight:400;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:400;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:700}#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;color:#fff;-webkit-box-shadow:none;box-shadow:none}#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;background:transparent none;color:#fff;-webkit-box-shadow:none;box-shadow:none}#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:400;background:#fff;border:1px solid #e5e5e5;-webkit-box-shadow:rgba(200,200,200,.7) 0 4px 10px -1px;box-shadow:rgba(200,200,200,.7) 0 4px 10px -1px}.login form .forgetmenot{font-weight:400;float:left;margin-bottom:0}.login .button-primary{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 h1 a{background-image:url(../images/wordpress-logo.png?ver=20120216);background-size:274px 63px;background-position:top center;background-repeat:no-repeat;width:326px;height:67px;text-indent:-9999px;outline:0;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,.login input[type=text]{color:#555;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:0;-webkit-box-shadow:inset 1px 1px 2px rgba(200,200,200,.2);box-shadow:inset 1px 1px 2px rgba(200,200,200,.2)}.login #pass-strength-result{width:250px;font-weight:700;border-style:solid;border-width:1px;margin:12px 0 6px;padding:6px 5px;text-align:center}.mobile #login{padding:20px 0}.mobile #login form,.mobile #login .message,.mobile #login_error{margin-left:0}.mobile #login #nav,.mobile #login #backtoblog{margin-left:8px}.mobile #login h1 a{width:auto}body.interim-login{height:auto}.interim-login #login{padding:0;margin:5px auto 20px}.interim-login.login h1 a{width:auto}.interim-login #login_error,.interim-login.login .message{margin:0 0 16px}.interim-login.login form{margin: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:0}#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-js #message{display:block}#nav-menu-meta ul.outer-border{-webkit-border-radius:3px;border-radius:3px}.accordion-section ul.category-tabs,.accordion-section ul.add-menu-item-tabs,.accordion-section ul.wp-tab-bar{margin:0}.accordion-section .categorychecklist{margin:13px 0}#nav-menu-meta .accordion-section-content{padding:18px 13px}#nav-menu-meta .button-controls{margin-bottom:0}#nav-menus-frame{margin-left:300px;margin-top:23px}#wpbody-content #menu-settings-column{display:inline;width:281px;margin-left:-300px;clear:both;float:left;padding-top:0}#menu-settings-column .inside{clear:both;margin:10px 0 0}.metabox-holder-disabled .postbox,.metabox-holder-disabled .accordion-section-content{opacity:.5;filter:alpha(opacity=50)}.metabox-holder-disabled .button-controls .select-all{display:none}#wpbody{position:relative}.blank-slate .menu-name{height:2em}.blank-slate .menu-settings{border:0;margin-top:0;padding-top:0;overflow:hidden}.is-submenu{font-style:italic;font-weight:400;margin-left:4px}.manage-menus{margin-top:23px;padding:10px;overflow:hidden;-webkit-border-radius:3px;border-radius:3px}.manage-menus select{float:left;margin-right:6px}.manage-menus .selected-menu{float:left;margin:5px 6px 0 0}.manage-menus .submit-btn{float:left;margin-top:1px}.menu-edit p{margin:.3em 0 .6em}.menu-edit #post-body-content h3{margin:0 0 10px}.menu-settings{margin-top:2em;overflow:hidden}.menu-settings dl{margin:0 0 10px;overflow:hidden;position:relative}.menu-settings dd{float:left;margin:0;width:60%}.menu-edit .checkbox-input{margin-top:4px}.theme-location-set{font-size:11px}#menu-management-liquid{float:left;min-width:100%;margin-top:3px}#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:0 10px 10px;border-width:1px 0;border-style:solid}#nav-menu-header,#nav-menu-footer{padding:0 10px}#nav-menu-header{border-bottom:1px solid;margin-bottom:13px}#nav-menu-header .menu-name-label{margin-top:2px}#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;float:none}#menu-management .menu-add-new abbr{font-weight:700}#select-nav-menu-container{text-align:right;padding:0 10px 3px;margin-bottom:5px}#select-nav-menu{width:100px;display:inline}#menu-name-label{margin-top:-2px}.widefat td.menu-location-menus{padding-bottom:5px}.menu-location-menus select{float:left}#locations-nav-menu-wrapper{padding:5px 0}.locations-nav-menu-select select{float:left;width:160px;margin-right:5px}.locations-row-links{float:left;margin:6px 0 0 6px}.locations-edit-menu-link,.locations-add-menu-link{margin:0 3px}.locations-edit-menu-link{padding-right:3px;border-right:1px solid #ccc}#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,.accordion-container .howto input{width:180px;float:right}.accordion-container .outer-border{margin:0}#nav-menu-meta .accordion-container .top{border-top:1px solid #dfdfdf}#nav-menu-meta .accordion-container .accordion-section:first-child,#nav-menu-meta .accordion-container .accordion-section:first-child h3,#nav-menu-meta .accordion-container .top,#nav-menu-meta .accordion-container .top h3{-webkit-border-top-right-radius:3px;-webkit-border-top-left-radius:3px;border-top-right-radius:3px;border-top-left-radius:3px}#nav-menu-meta .accordion-container .accordion-section:last-child,#nav-menu-meta .accordion-container .accordion-section:last-child .accordion-section-content,#nav-menu-meta .accordion-container .bottom,#nav-menu-meta .accordion-container .bottom:not(.open) h3{-webkit-border-bottom-right-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.customlinkdiv .howto input{width:180px}.customlinkdiv p{margin-top:0}#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 .add-new-menu-action{float:left;margin:6px 0 0 6px;line-height:15px}.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}.button.right,.button-secondary.right,.button-primary.right{float:right}.list-controls{float:left;margin-top:5px}.add-to-menu{float:right}.postbox .spinner{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{margin:0;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:9px 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:#f6c9cc;background-image:-webkit-gradient(linear,left bottom,left top,from(#f6c9cc),to(#fdf8ff));background-image:-webkit-linear-gradient(bottom,#f6c9cc,#fdf8ff);background-image:-moz-linear-gradient(bottom,#f6c9cc,#fdf8ff);background-image:-o-linear-gradient(bottom,#f6c9cc,#fdf8ff);background-image:linear-gradient(to top,#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 0 0}.menu-item-handle .item-title{font-size:12px;font-weight:700;padding:7px 0;line-height:20px;min-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;-webkit-border-bottom-right-radius:3px;-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;border-bottom-right-radius:3px}.menu-item-settings .field-move a{display:none;margin:0 2px}.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:2px 0 1px}.nav-menus-php .blank-slate .menu-settings{display:none}.nav-menus-php .delete-action{float:left;margin-top:2px}.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:17px;width:100px;background:url(../images/stars.png?ver=20121108) repeat-x bottom left}div.star-holder .star-rating{background:url(../images/stars.png?ver=20121108) repeat-x top left;height:17px;float:left}div.action-links{font-weight:400;margin:6px 0 0}#plugin-information-header{margin:0;padding:0 5px;font-weight:700;position:relative;border-bottom-width:1px;border-bottom-style:solid;height:2.5em}#plugin-information ul#sidemenu{font-weight:400;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:700;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 ol{list-style:none;margin:0}#plugin-information #section-screenshots li img{vertical-align:text-top;max-width:100%;width:auto;height:auto}#plugin-information #section-screenshots li p{font-style:italic;padding-left:20px;padding-bottom:2em}#plugin-information #section-screenshots ol,#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:0}.press-this #wphead{height:32px;margin-left:0;margin-right:0;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:400;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 #message{margin:10px 0}.press-this-sidebar{float:right;width:200px;padding-top:10px}.press-this #title{margin-left:0;margin-right:0;-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;padding:0}.press-this #photo-add-url-div input[type=text]{width:220px}#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:700;font-size:12px;margin-left:5px}#TB_window{border:1px solid #333}.press-this .postbox,.press-this .stuffbox{margin-bottom:10px;min-width:0}.js .postbox:hover .handlediv,.js .stuffbox:hover .handlediv{background:transparent url(../images/arrows.png) no-repeat 6px 7px}.press-this #submitdiv:hover .handlediv{background:0 0}.tbtitle{font-size:1.7em;outline:0;padding:3px 4px;border-color:#dfdfdf}.press-this .actions{float:right;margin:-19px 0 0}.press-this #extra-fields .actions{margin:-32px -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;overflow:hidden}#waiting span{float:right;margin:0 0 0 5px}#waiting .spinner{display:block}#extra-fields .postbox{margin-bottom:5px}#extra-fields .titlewrap{padding:0;overflow:auto;height:100px}#img_container a{display:block;float:left;overflow:hidden}#img_container img,#img_container a{width:68px;height:68px}#img_container img{border:0;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:120px}.press-this #content{margin:5px 0;padding:0 5px;border:0 none;height:345px;font-family:Consolas,Monaco,monospace;font-size:13px;line-height:19px;background:transparent}.press-this #publishing-actions .spinner{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}#photo-add-url-div input[type=text]{width:300px}.alignleft h3{margin:0}h3 span{font-weight:400}#template textarea{font-family:Consolas,Monaco,monospace;font-size:12px;width:97%;background:#f9f9f9;outline:0}#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:700;border:0 none}#documentation{margin-top:10px}#documentation label{line-height:22px;vertical-align:top;font-weight:700}.fileedit-sub{padding:10px 0 8px;line-height:180%}#filter-box{clear:both}.feature-filter{padding:8px 12px 0}.feature-filter .feature-group{float:left;margin:5px 10px 10px}.feature-filter .feature-group li{display:inline-block;vertical-align:top;list-style-type:none;padding-right:25px;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;display:inline-block}div.sidebar-name h3{font-weight:400;font-size:15px;margin:0;padding:8px 10px;overflow:hidden;white-space:nowrap}div.sidebar-name{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 .sidebar-name{cursor:pointer}.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{-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;display:inline-block;vertical-align:top}#widget-list .widget-description{padding:5px 8px}.widget-placeholder{border-width:1px;border-style:dashed;margin:0 auto 20px;height:27px;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:700;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;padding-bottom:.2em;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 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:0}.widget-control-edit{display:block;font-size:12px;font-weight:400;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 .spinner{float:none;margin:0 3px -3px}.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:400;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}.ui-sortable,.ui-draggable{-ms-touch-action:none}.accordion-section{border-top:1px solid #fff;border-bottom:1px solid #dfdfdf;margin:0}.accordion-section:first-child{border-top:1px solid #dfdfdf}.accordion-section:last-child{box-shadow:0 1px 0 0 #fff}.accordion-section.open .accordion-section-content,.no-js .accordion-section .accordion-section-content{display:block}.accordion-section.open:hover{border-bottom-color:#dfdfdf}.accordion-section-content{display:none;padding:10px 20px 15px;overflow:hidden;background:#fdfdfd;border-left:1px solid #dfdfdf;border-right:1px solid #dfdfdf}.accordion-section-title{margin:0;padding:15px 20px;position:relative;border-left:1px solid #dfdfdf;border-right:1px solid #dfdfdf;-webkit-user-select:none;-moz-user-select:none;user-select:none}.js .accordion-section-title{cursor:pointer}.js .accordion-section-title:after{content:'';width:0;height:0;border-color:#ccc transparent;border-style:solid;border-width:6px 6px 0;position:absolute;top:25px;right:20px;z-index:1}.accordion-section-title:focus{outline:0}.accordion-section-title:hover:after,.accordion-section-title:focus:after{border-color:#aaa transparent}.cannot-expand .accordion-section-title{cursor:auto}.cannot-expand .accordion-section-title:after{display:none}.control-section .accordion-section-title{padding:10px 20px;color:#464646;font-size:15px;font-family:Georgia,"Times New Roman","Bitstream Charter",Times,serif;font-weight:400;text-shadow:0 1px 0 #fff;background:#f5f5f5;background-image:-webkit-gradient(linear,left bottom,left top,from(#eee),to(#f5f5f5));background-image:-webkit-linear-gradient(bottom,#eee,#f5f5f5);background-image:-moz-linear-gradient(bottom,#eee,#f5f5f5);background-image:-o-linear-gradient(bottom,#eee,#f5f5f5);background-image:linear-gradient(to top,#eee,#f5f5f5)}.control-section .accordion-section-title:after{top:15px}.js .control-section:hover .accordion-section-title,.js .control-section .accordion-section-title:hover,.js .control-section.open .accordion-section-title,.js .control-section .accordion-section-title:focus{color:#000;background:#f9f9f9;background-image:-webkit-gradient(linear,left bottom,left top,from(#ececec),to(#f9f9f9));background-image:-webkit-linear-gradient(bottom,#ececec,#f9f9f9);background-image:-moz-linear-gradient(bottom,#ececec,#f9f9f9);background-image:-o-linear-gradient(bottom,#ececec,#f9f9f9);background-image:linear-gradient(to top,#ececec,#f9f9f9)}.control-section.open .accordion-section-title{border-bottom:1px solid #dfdfdf}@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}}@media print,(-o-min-device-pixel-ratio:5/4),(-webkit-min-device-pixel-ratio:1.25),(min-resolution:120dpi){.press-this .tagchecklist span a{background-image:url(../images/xit-2x.gif);background-size:20px auto}.js .postbox:hover .handlediv,.js .stuffbox:hover .handlediv,.widget-top a.widget-action{background-image:url(../images/arrows-2x.png);background-size:15px 123px}.widget-top a.widget-action:hover{background-image:url(../images/arrows-dark-2x.png);background-size:15px 123px}.post-com-count{background-image:url(../images/bubble_bg-2x.gif);background-size:18px 100px}tr.wp-locked .locked-indicator{background-image:url(../images/lock-2x.png);background-size:16px 16px}th .comment-grey-bubble{background-image:url(../images/comment-grey-bubble-2x.png);background-size:12px 12px}.sorting-indicator{background-image:url(../images/sort-2x.gif?ver=20130102);background-size:14px 4px}#content-resize-handle,#post-body .wp_themeSkin .mceStatusbar a.mceResize{background:transparent url(../images/resize-2x.gif) no-repeat scroll right bottom;background-size:11px 11px}div.star-holder{background:url(../images/stars-2x.png?ver=20121108) repeat-x bottom left;background-size:21px 37px}div.star-holder .star-rating{background:url(../images/stars-2x.png?ver=20121108) repeat-x top left;background-size:21px 37px}.welcome-panel .welcome-panel-close:before{background-image:url(../images/xit-2x.gif);background-size:20px auto}.welcome-panel .welcome-icon{background-image:url(../images/welcome-icons-2x.png)}.login h1 a{background-image:url(../images/wordpress-logo-2x.png?ver=20120412);background-size:274px 63px}.wp-badge{background-image:url(../images/wp-badge-2x.png?ver=20120516);background-size:173px 194px}.wp-full-overlay .collapse-sidebar-arrow{background-image:url(../images/arrows-2x.png);background-size:15px 123px}.pressthis a span{background-image:url(../images/press-this-2x.png?v=20121105)}.imgedit-crop,.imgedit-rleft,.imgedit-rright,.imgedit-flipv,.imgedit-fliph,.imgedit-undo,.imgedit-redo{background-image:url(../images/imgedit-icons-2x.png);background-size:260px 64px}.spinner,.imgedit-wait,.customize-loading #customize-container{background-image:url(../images/wpspin_light-2x.gif)}.wp-slider .ui-slider-handle:before{background-image:url(../images/arrows-pr-2x.png);background-size:16px 102px}}.locale-zh-cn .howto,.locale-zh-cn .tablenav .displaying-num,.locale-zh-cn .js .input-with-default-title,.locale-zh-cn .link-to-original,.locale-zh-cn .inline-edit-row fieldset span.title,.locale-zh-cn .inline-edit-row fieldset span.checkbox-title,.locale-zh-cn #utc-time,.locale-zh-cn #local-time,.locale-zh-cn p.install-help,.locale-zh-cn p.help,.locale-zh-cn p.description,.locale-zh-cn span.description,.locale-zh-cn .form-wrap p{font-style:normal}.locale-zh-cn .hdnle a{font-size:12px}.locale-zh-cn form.upgrade .hint{font-style:normal;font-size:100%}.locale-zh-cn #wp-fullscreen-tagline{font-family:KaiTi,"楷体",sans-serif}.locale-zh-cn #wp-fullscreen-modes a{font-size:12px}.locale-zh-cn #sort-buttons{font-size:1em!important}.locale-ru-ru .inline-edit-row fieldset label span.title{width:auto;min-width:5em}.locale-ru-ru.press-this .posting{margin-right:257px}.locale-ru-ru.press-this #photo-add-url-div input[type=text]{width:255px}.locale-ru-ru.press-this #side-sortables{width:245px}.locale-ru-ru #customize-header-actions .button{padding:0 8px 1px}.locale-lt-lt .inline-edit-row fieldset label span.title{width:8em}.locale-lt-lt .inline-edit-row fieldset label span.input-text-wrap{margin-left:8em} \ No newline at end of file diff --git a/wp-admin/custom-background.php b/wp-admin/custom-background.php index ac2941f2..97656089 100644 --- a/wp-admin/custom-background.php +++ b/wp-admin/custom-background.php @@ -67,11 +67,11 @@ class Custom_Background { if ( ! current_user_can('edit_theme_options') ) return; - $this->page = $page = add_theme_page(__('Background'), __('Background'), 'edit_theme_options', 'custom-background', array(&$this, 'admin_page')); + $this->page = $page = add_theme_page(__('Background'), __('Background'), 'edit_theme_options', 'custom-background', array($this, 'admin_page')); - add_action("load-$page", array(&$this, 'admin_load')); - add_action("load-$page", array(&$this, 'take_action'), 49); - add_action("load-$page", array(&$this, 'handle_upload'), 49); + add_action("load-$page", array($this, 'admin_load')); + add_action("load-$page", array($this, 'take_action'), 49); + add_action("load-$page", array($this, 'handle_upload'), 49); if ( $this->admin_header_callback ) add_action("admin_head-$page", $this->admin_header_callback, 51); @@ -386,7 +386,8 @@ if ( current_theme_supports( 'custom-background', 'default-color' ) ) $thumbnail = wp_get_attachment_image_src( $id, 'thumbnail' ); set_theme_mod('background_image_thumb', esc_url_raw( $thumbnail[0] ) ); - do_action('wp_create_file_in_uploads', $file, $id); // For replication + /** This action is documented in wp-admin/custom-header.php */ + do_action( 'wp_create_file_in_uploads', $file, $id ); // For replication $this->updated = true; } @@ -411,6 +412,7 @@ if ( current_theme_supports( 'custom-background', 'default-color' ) ) public function wp_set_background_image() { if ( ! current_user_can('edit_theme_options') || ! isset( $_POST['attachment_id'] ) ) exit; $attachment_id = absint($_POST['attachment_id']); + /** This filter is documented in wp-admin/includes/media.php */ $sizes = array_keys(apply_filters( 'image_size_names_choose', array('thumbnail' => __('Thumbnail'), 'medium' => __('Medium'), 'large' => __('Large'), 'full' => __('Full Size')) )); $size = 'thumbnail'; if ( in_array( $_POST['size'], $sizes ) ) diff --git a/wp-admin/custom-header.php b/wp-admin/custom-header.php index 12288430..7b1a4b30 100644 --- a/wp-admin/custom-header.php +++ b/wp-admin/custom-header.php @@ -84,13 +84,13 @@ class Custom_Image_Header { if ( ! current_user_can('edit_theme_options') ) return; - $this->page = $page = add_theme_page(__('Header'), __('Header'), 'edit_theme_options', 'custom-header', array(&$this, 'admin_page')); + $this->page = $page = add_theme_page(__('Header'), __('Header'), 'edit_theme_options', 'custom-header', array($this, 'admin_page')); - add_action("admin_print_scripts-$page", array(&$this, 'js_includes')); - add_action("admin_print_styles-$page", array(&$this, 'css_includes')); - add_action("admin_head-$page", array(&$this, 'help') ); - add_action("admin_head-$page", array(&$this, 'take_action'), 50); - add_action("admin_head-$page", array(&$this, 'js'), 50); + add_action("admin_print_scripts-$page", array($this, 'js_includes')); + add_action("admin_print_styles-$page", array($this, 'css_includes')); + add_action("admin_head-$page", array($this, 'help') ); + add_action("admin_head-$page", array($this, 'take_action'), 50); + add_action("admin_head-$page", array($this, 'js'), 50); if ( $this->admin_header_callback ) add_action("admin_head-$page", $this->admin_header_callback, 51); } @@ -464,6 +464,7 @@ class Custom_Image_Header { <table class="form-table"> <tbody> +<?php if ( get_custom_header() || display_header_text() ) : ?> <tr valign="top"> <th scope="row"><?php _e( 'Preview' ); ?></th> <td> @@ -490,6 +491,8 @@ class Custom_Image_Header { <?php } ?> </td> </tr> +<?php endif; ?> + <?php if ( current_theme_supports( 'custom-header', 'uploads' ) ) : ?> <tr valign="top"> <th scope="row"><?php _e( 'Select Image' ); ?></th> @@ -630,6 +633,11 @@ if ( current_theme_supports( 'custom-header', 'default-text-color' ) ) { </table> <?php endif; +/** + * Fires just before the submit button in the custom header options form. + * + * @since 3.1.0 + */ do_action( 'custom_header_options' ); wp_nonce_field( 'custom-header-options', '_wpnonce-custom-header-options' ); ?> @@ -687,7 +695,16 @@ wp_nonce_field( 'custom-header-options', '_wpnonce-custom-header-options' ); ?> $this->set_header_image( compact( 'url', 'attachment_id', 'width', 'height' ) ); - do_action('wp_create_file_in_uploads', $file, $attachment_id); // For replication + /** + * Fires after the header image is set or an error is returned. + * + * @since 2.1.0 + * + * @param string $file Path to the file. + * @param int $attachment_id Attachment ID. + */ + do_action( 'wp_create_file_in_uploads', $file, $attachment_id ); // For replication + return $this->finished(); } elseif ( $width > $max_width ) { $oitar = $width / $max_width; @@ -695,7 +712,8 @@ wp_nonce_field( 'custom-header-options', '_wpnonce-custom-header-options' ); ?> if ( ! $image || is_wp_error( $image ) ) wp_die( __( 'Image could not be processed. Please go back and try again.' ), __( 'Image Processing Error' ) ); - $image = apply_filters('wp_create_file_in_uploads', $image, $attachment_id); // For replication + /** This filter is documented in wp-admin/custom-header.php */ + $image = apply_filters( 'wp_create_file_in_uploads', $image, $attachment_id ); // For replication $url = str_replace(basename($url), basename($image), $url); $width = $width / $oitar; @@ -836,7 +854,8 @@ wp_nonce_field( 'custom-header-options', '_wpnonce-custom-header-options' ); ?> if ( ! $cropped || is_wp_error( $cropped ) ) wp_die( __( 'Image could not be processed. Please go back and try again.' ), __( 'Image Processing Error' ) ); - $cropped = apply_filters('wp_create_file_in_uploads', $cropped, $attachment_id); // For replication + /** This filter is documented in wp-admin/custom-header.php */ + $cropped = apply_filters( 'wp_create_file_in_uploads', $cropped, $attachment_id ); // For replication $parent = get_post($attachment_id); $parent_url = $parent->guid; @@ -867,10 +886,21 @@ wp_nonce_field( 'custom-header-options', '_wpnonce-custom-header-options' ); ?> // cleanup $medium = str_replace( basename( $original ), 'midsize-' . basename( $original ), $original ); - if ( file_exists( $medium ) ) + if ( file_exists( $medium ) ) { + /** + * Filter the path of the file to delete. + * + * @since 2.1.0 + * + * @param string $medium Path to the file to delete. + */ @unlink( apply_filters( 'wp_delete_file', $medium ) ); - if ( empty( $_POST['create-new-attachment'] ) && empty( $_POST['skip-cropping'] ) ) + } + + if ( empty( $_POST['create-new-attachment'] ) && empty( $_POST['skip-cropping'] ) ) { + /** This filter is documented in wp-admin/custom-header.php */ @unlink( apply_filters( 'wp_delete_file', $original ) ); + } return $this->finished(); } diff --git a/wp-admin/customize.php b/wp-admin/customize.php index a9e05c2f..7f26586a 100644 --- a/wp-admin/customize.php +++ b/wp-admin/customize.php @@ -9,7 +9,7 @@ define( 'IFRAME_REQUEST', true ); -require_once( './admin.php' ); +require_once( dirname( __FILE__ ) . '/admin.php' ); if ( ! current_user_can( 'edit_theme_options' ) ) wp_die( __( 'Cheatin’ uh?' ) ); @@ -31,6 +31,11 @@ add_action( 'customize_controls_print_scripts', 'print_head_scripts', 20 add_action( 'customize_controls_print_footer_scripts', '_wp_footer_scripts' ); add_action( 'customize_controls_print_styles', 'print_admin_styles', 20 ); +/** + * Fires when Customizer controls are initialized, before scripts are enqueued. + * + * @since 3.4.0 + */ do_action( 'customize_controls_init' ); wp_enqueue_script( 'customize-controls' ); @@ -38,6 +43,11 @@ wp_enqueue_style( 'customize-controls' ); wp_enqueue_script( 'accordion' ); +/** + * Enqueue Customizer control scripts. + * + * @since 3.4.0 + */ do_action( 'customize_controls_enqueue_scripts' ); // Let's roll. @@ -66,7 +76,18 @@ $body_class .= ' locale-' . sanitize_html_class( strtolower( str_replace( '_', ' $admin_title = sprintf( __( '%1$s — WordPress' ), strip_tags( sprintf( __( 'Customize %s' ), $wp_customize->theme()->display('Name') ) ) ); ?><title><?php echo $admin_title; ?> @@ -129,6 +150,11 @@ do_action( 'customize_controls_print_scripts' );
set_help_sidebar( '

' . __( 'Support Forums' ) . '

' ); -require_once('./admin-header.php'); +require_once( ABSPATH . 'wp-admin/admin-header.php' ); ?>
@@ -153,7 +153,7 @@ else echo __('Comments'); if ( isset($_REQUEST['s']) && $_REQUEST['s'] ) - printf( '' . sprintf( __( 'Search results for “%s”' ), wp_html_excerpt( esc_html( wp_unslash( $_REQUEST['s'] ) ), 50, '…' ) ) . '' ); ?> + echo '' . sprintf( __( 'Search results for “%s”' ), wp_html_excerpt( esc_html( wp_unslash( $_REQUEST['s'] ) ), 50, '…' ) ) . ''; ?> +include( ABSPATH . 'wp-admin/admin-footer.php' ); ?> diff --git a/wp-admin/edit-form-advanced.php b/wp-admin/edit-form-advanced.php index f3a65e52..dab3f84e 100644 --- a/wp-admin/edit-form-advanced.php +++ b/wp-admin/edit-form-advanced.php @@ -32,6 +32,9 @@ if ( post_type_supports($post_type, 'editor') || post_type_supports($post_type, // Add the local autosave notice HTML add_action( 'admin_footer', '_local_storage_notice' ); +/* + * @todo Document the $messages array(s). + */ $messages = array(); $messages['post'] = array( 0 => '', // Unused. Messages start at index 1. @@ -64,6 +67,13 @@ $messages['page'] = array( ); $messages['attachment'] = array_fill( 1, 10, __( 'Media attachment updated.' ) ); // Hack, for now. +/** + * Filter the post updated messages. + * + * @since 3.0.0 + * + * @param array $messages Post updated messages. For defaults @see $messages declarations above. + */ $messages = apply_filters( 'post_updated_messages', $messages ); $message = false; @@ -107,17 +117,13 @@ if ( $autosave && mysql2date( 'U', $autosave->post_modified_gmt, false ) > mysql $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'); +require_once( ABSPATH . 'wp-admin/includes/meta-boxes.php' ); $publish_callback_args = null; if ( post_type_supports($post_type, 'revisions') && 'auto-draft' != $post->post_status ) { $revisions = wp_get_post_revisions( $post_ID ); - // Check if the revisions have been upgraded - if ( ! empty( $revisions ) && _wp_get_post_revision_version( end( $revisions ) ) < 1 ) - _wp_upgrade_revisions_of_post( $post, $revisions ); - // We should aim to show the revisions metabox only when there are revisions. if ( count( $revisions ) > 1 ) { reset( $revisions ); // Reset pointer for key() @@ -140,16 +146,18 @@ if ( current_theme_supports( 'post-formats' ) && post_type_supports( $post_type, // all taxonomies foreach ( get_object_taxonomies( $post ) as $tax_name ) { - $taxonomy = get_taxonomy($tax_name); + $taxonomy = get_taxonomy( $tax_name ); if ( ! $taxonomy->show_ui ) continue; $label = $taxonomy->labels->name; - if ( !is_taxonomy_hierarchical($tax_name) ) - add_meta_box('tagsdiv-' . $tax_name, $label, 'post_tags_meta_box', null, 'side', 'core', array( 'taxonomy' => $tax_name )); + if ( ! is_taxonomy_hierarchical( $tax_name ) ) + $tax_meta_box_id = 'tagsdiv-' . $tax_name; else - add_meta_box($tax_name . 'div', $label, 'post_categories_meta_box', null, 'side', 'core', array( 'taxonomy' => $tax_name )); + $tax_meta_box_id = $tax_name . 'div'; + + add_meta_box( $tax_meta_box_id, $label, $taxonomy->meta_box_cb, null, 'side', 'core', array( 'taxonomy' => $tax_name ) ); } if ( post_type_supports($post_type, 'page-attributes') ) @@ -174,7 +182,16 @@ if ( post_type_supports($post_type, 'trackbacks') ) if ( post_type_supports($post_type, 'custom-fields') ) add_meta_box('postcustom', __('Custom Fields'), 'post_custom_meta_box', null, 'normal', 'core'); -do_action('dbx_post_advanced', $post); +/** + * Fires in the middle of built-in meta box registration. + * + * @since 2.1.0 + * @deprecated 3.7.0 Use 'add_meta_boxes' instead. + * + * @param WP_Post $post Post object. + */ +do_action( 'dbx_post_advanced', $post ); + if ( post_type_supports($post_type, 'comments') ) add_meta_box('commentstatusdiv', __('Discussion'), 'post_comment_status_meta_box', null, 'normal', 'core'); @@ -189,12 +206,43 @@ if ( post_type_supports($post_type, 'author') ) { add_meta_box('authordiv', __('Author'), 'post_author_meta_box', null, 'normal', 'core'); } -do_action('add_meta_boxes', $post_type, $post); -do_action('add_meta_boxes_' . $post_type, $post); +/** + * Fires after all built-in meta boxes have been added. + * + * @since 3.0.0 + * + * @param string $post_type Post type. + * @param WP_Post $post Post object. + */ +do_action( 'add_meta_boxes', $post_type, $post ); + +/** + * Fires after all built-in meta boxes have been added, contextually for the given post type. + * + * The dynamic portion of the hook, $post_type, refers to the post type of the post. + * + * @since 3.0.0 + * + * @param WP_Post $post Post object. + */ +do_action( 'add_meta_boxes_' . $post_type, $post ); -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); +/** + * Fires after meta boxes have been added. + * + * Fires once for each of the default meta box contexts: normal, advanced, and side. + * + * @since 3.0.0 + * + * @param string $post_type Post type of the post. + * @param string $context string Meta box context. + * @param WP_Post $post Post object. + */ +do_action( 'do_meta_boxes', $post_type, 'normal', $post ); +/** This action is documented in wp-admin/edit-form-advanced.php */ +do_action( 'do_meta_boxes', $post_type, 'advanced', $post ); +/** This action is documented in wp-admin/edit-form-advanced.php */ +do_action( 'do_meta_boxes', $post_type, 'side', $post ); add_screen_option('layout_columns', array('max' => 2, 'default' => 2) ); @@ -307,7 +355,7 @@ if ( 'post' == $post_type ) { ) ); } -require_once('./admin-header.php'); +require_once( ABSPATH . 'wp-admin/admin-header.php' ); ?>
@@ -315,7 +363,7 @@ require_once('./admin-header.php');

cap->create_posts ) ) - echo ' ' . esc_html( $post_type_object->labels->add_new ) . ''; + echo ' ' . esc_html( $post_type_object->labels->add_new ) . ''; ?>

@@ -328,8 +376,16 @@ if ( isset( $post_new_file ) && current_user_can( $post_type_object->cap->create

- -
> + tag. + * + * @since 3.0.0 + * + * @param WP_Post $post Post object. + */ +?> +> @@ -352,6 +408,18 @@ wp_nonce_field( 'meta-box-order', 'meta-box-order-nonce', false ); wp_nonce_field( 'closedpostboxes', 'closedpostboxesnonce', false ); ?> + +
@@ -359,6 +427,16 @@ wp_nonce_field( 'closedpostboxes', 'closedpostboxesnonce', false );
+
@@ -366,7 +444,8 @@ wp_nonce_field( 'closedpostboxes', 'closedpostboxesnonce', false ); public ? get_sample_permalink_html($post->ID) : ''; $shortlink = wp_get_shortlink($post->ID, 'post'); -if ( !empty($shortlink) ) +$permalink = get_permalink( $post->ID ); +if ( !empty( $shortlink ) && $shortlink !== $permalink && $permalink !== home_url('?page_id=' . $post->ID) ) $sample_permalink_html .= '' . __('Get Shortlink') . ''; if ( $post_type_object->public && ! ( 'pending' == get_post_status( $post ) && !current_user_can( $post_type_object->cap->publish_posts ) ) ) { @@ -388,7 +467,13 @@ wp_nonce_field( 'samplepermalink', 'samplepermalinknonce', false );
post_status ) { echo ''; - if ( $last_id = get_post_meta($post_ID, '_edit_last', true) ) { - $last_user = get_userdata($last_id); + if ( $last_user = get_userdata( get_post_meta( $post_ID, '_edit_last', true ) ) ) { printf(__('Last edited by %1$s on %2$s at %3$s'), esc_html( $last_user->display_name ), mysql2date(get_option('date_format'), $post->post_modified), mysql2date(get_option('time_format'), $post->post_modified)); } else { printf(__('Last edited on %1$s at %2$s'), mysql2date(get_option('date_format'), $post->post_modified), mysql2date(get_option('time_format'), $post->post_modified)); @@ -420,7 +504,13 @@ if ( post_type_supports($post_type, 'editor') ) {
@@ -428,10 +518,31 @@ do_action( 'edit_form_after_editor', $post );
@@ -467,7 +601,7 @@ if ( post_type_supports( $post_type, 'comments' ) ) wp_comment_reply(); ?> -post_title) && '' == $post->post_title) || (isset($_GET['message']) && 2 > $_GET['message']) ) : ?> +post_title ) : ?> diff --git a/wp-admin/edit-form-comment.php b/wp-admin/edit-form-comment.php index d9a0523e..07c1946e 100644 --- a/wp-admin/edit-form-comment.php +++ b/wp-admin/edit-form-comment.php @@ -85,13 +85,19 @@ if ( !defined('ABSPATH') )
-
+


-
+ +
+ +
+ + +
2, 'default' => 2) ); @@ -54,7 +57,7 @@ get_current_screen()->set_help_sidebar( '

' . __( 'Support Forums' ) . '

' ); -require_once ('admin-header.php'); +require_once( ABSPATH . 'wp-admin/admin-header.php' ); ?>
@@ -82,7 +85,7 @@ wp_nonce_field( 'meta-box-order', 'meta-box-order-nonce', false ); ?>

- +

@@ -90,7 +93,7 @@ wp_nonce_field( 'meta-box-order', 'meta-box-order-nonce', false ); ?>

- +

http://wordpress.org/ — don’t forget the http://'); ?>

@@ -98,7 +101,7 @@ wp_nonce_field( 'meta-box-order', 'meta-box-order-nonce', false ); ?>

- +

diff --git a/wp-admin/edit-tag-form.php b/wp-admin/edit-tag-form.php index 034642ad..b8f41253 100644 --- a/wp-admin/edit-tag-form.php +++ b/wp-admin/edit-tag-form.php @@ -30,7 +30,7 @@ do_action($taxonomy . '_pre_edit_form', $tag, $taxonomy); ?>

labels->edit_item; ?>

- +> diff --git a/wp-admin/edit-tags.php b/wp-admin/edit-tags.php index 8375202d..0a046370 100644 --- a/wp-admin/edit-tags.php +++ b/wp-admin/edit-tags.php @@ -7,7 +7,7 @@ */ /** WordPress Administration Bootstrap */ -require_once('./admin.php'); +require_once( dirname( __FILE__ ) . '/admin.php' ); if ( ! $taxnow ) wp_die( __( 'Invalid taxonomy' ) ); @@ -126,8 +126,8 @@ case 'edit': $tag = get_term( $tag_ID, $taxonomy, OBJECT, 'edit' ); if ( ! $tag ) wp_die( __( 'You attempted to edit an item that doesn’t exist. Perhaps it was deleted?' ) ); - require_once ( 'admin-header.php' ); - include( './edit-tag-form.php' ); + require_once( ABSPATH . 'wp-admin/admin-header.php' ); + include( ABSPATH . 'wp-admin/edit-tag-form.php' ); break; @@ -247,17 +247,49 @@ if ( 'category' == $taxonomy || 'link_category' == $taxonomy || 'post_tag' == $t unset( $help ); } -require_once ('admin-header.php'); +require_once( ABSPATH . 'wp-admin/admin-header.php' ); if ( !current_user_can($tax->cap->edit_terms) ) wp_die( __('You are not allowed to edit this item.') ); -$messages[1] = __('Item added.'); -$messages[2] = __('Item deleted.'); -$messages[3] = __('Item updated.'); -$messages[4] = __('Item not added.'); -$messages[5] = __('Item not updated.'); -$messages[6] = __('Items deleted.'); +$messages = array(); +$messages['_item'] = array( + 0 => '', // Unused. Messages start at index 1. + 1 => __( 'Item added.' ), + 2 => __( 'Item deleted.' ), + 3 => __( 'Item updated.' ), + 4 => __( 'Item not added.' ), + 5 => __( 'Item not updated.' ), + 6 => __( 'Items deleted.' ) +); +$messages['category'] = array( + 0 => '', // Unused. Messages start at index 1. + 1 => __( 'Category added.' ), + 2 => __( 'Category deleted.' ), + 3 => __( 'Category updated.' ), + 4 => __( 'Category not added.' ), + 5 => __( 'Category not updated.' ), + 6 => __( 'Categories deleted.' ) +); +$messages['post_tag'] = array( + 0 => '', // Unused. Messages start at index 1. + 1 => __( 'Tag added.' ), + 2 => __( 'Tag deleted.' ), + 3 => __( 'Tag updated.' ), + 4 => __( 'Tag not added.' ), + 5 => __( 'Tag not updated.' ), + 6 => __( 'Tags deleted.' ) +); + +$messages = apply_filters( 'term_updated_messages', $messages ); + +$message = false; +if ( isset( $_REQUEST['message'] ) && ( $msg = (int) $_REQUEST['message'] ) ) { + if ( isset( $messages[ $taxonomy ][ $msg ] ) ) + $message = $messages[ $taxonomy ][ $msg ]; + elseif ( ! isset( $messages[ $taxonomy ] ) && isset( $messages['_item'][ $msg ] ) ) + $message = $messages['_item'][ $msg ]; +} ?> @@ -268,8 +300,8 @@ if ( !empty($_REQUEST['s']) ) printf( '' . __('Search results for “%s”') . '', esc_html( wp_unslash($_REQUEST['s']) ) ); ?> - -

+ +

@@ -349,7 +381,7 @@ if ( current_user_can($tax->cap->edit_terms) ) {

labels->add_new_item; ?>

- +> @@ -371,7 +403,20 @@ if ( current_user_can($tax->cap->edit_terms) ) {
- 0, 'hide_if_empty' => false, 'taxonomy' => $taxonomy, 'name' => 'parent', 'orderby' => 'name', 'hierarchical' => true, 'show_option_none' => __('None'))); ?> + 0, + 'hide_if_empty' => false, + 'taxonomy' => $taxonomy, + 'name' => 'parent', + 'orderby' => 'name', + 'hierarchical' => true, + 'show_option_none' => __( 'None' ), + ); + + $dropdown_args = apply_filters( 'taxonomy_parent_dropdown_args', $dropdown_args, $taxonomy ); + wp_dropdown_categories( $dropdown_args ); + ?>

@@ -417,4 +462,4 @@ try{document.forms.addtag['tag-name'].focus();}catch(e){} break; } -include('./admin-footer.php'); +include( ABSPATH . 'wp-admin/admin-footer.php' ); diff --git a/wp-admin/edit.php b/wp-admin/edit.php index 65fd0342..8d320361 100644 --- a/wp-admin/edit.php +++ b/wp-admin/edit.php @@ -7,7 +7,7 @@ */ /** WordPress Administration Bootstrap */ -require_once( './admin.php' ); +require_once( dirname( __FILE__ ) . '/admin.php' ); if ( ! $typenow ) wp_die( __( 'Invalid post type' ) ); @@ -224,52 +224,77 @@ if ( 'post' == $post_type ) { add_screen_option( 'per_page', array( 'label' => $title, 'default' => 20, 'option' => 'edit_' . $post_type . '_per_page' ) ); -require_once('./admin-header.php'); +$bulk_counts = array( + 'updated' => isset( $_REQUEST['updated'] ) ? absint( $_REQUEST['updated'] ) : 0, + 'locked' => isset( $_REQUEST['locked'] ) ? absint( $_REQUEST['locked'] ) : 0, + 'deleted' => isset( $_REQUEST['deleted'] ) ? absint( $_REQUEST['deleted'] ) : 0, + 'trashed' => isset( $_REQUEST['trashed'] ) ? absint( $_REQUEST['trashed'] ) : 0, + 'untrashed' => isset( $_REQUEST['untrashed'] ) ? absint( $_REQUEST['untrashed'] ) : 0, +); + +$bulk_messages = array(); +$bulk_messages['post'] = array( + 'updated' => _n( '%s post updated.', '%s posts updated.', $bulk_counts['updated'] ), + 'locked' => _n( '%s post not updated, somebody is editing it.', '%s posts not updated, somebody is editing them.', $bulk_counts['locked'] ), + 'deleted' => _n( '%s post permanently deleted.', '%s posts permanently deleted.', $bulk_counts['deleted'] ), + 'trashed' => _n( '%s post moved to the Trash.', '%s posts moved to the Trash.', $bulk_counts['trashed'] ), + 'untrashed' => _n( '%s post restored from the Trash.', '%s posts restored from the Trash.', $bulk_counts['untrashed'] ), +); +$bulk_messages['page'] = array( + 'updated' => _n( '%s page updated.', '%s pages updated.', $bulk_counts['updated'] ), + 'locked' => _n( '%s page not updated, somebody is editing it.', '%s pages not updated, somebody is editing them.', $bulk_counts['locked'] ), + 'deleted' => _n( '%s page permanently deleted.', '%s pages permanently deleted.', $bulk_counts['deleted'] ), + 'trashed' => _n( '%s page moved to the Trash.', '%s pages moved to the Trash.', $bulk_counts['trashed'] ), + 'untrashed' => _n( '%s page restored from the Trash.', '%s pages restored from the Trash.', $bulk_counts['untrashed'] ), +); + +/** + * Filter the bulk action updated messages. + * + * By default, custom post types use the messages for the 'post' post type. + * + * @since 3.7.0 + * + * @param array $bulk_messages Arrays of messages, each keyed by the corresponding post type. Messages are + * keyed with 'updated', 'locked', 'deleted', 'trashed', and 'untrashed'. + * @param array $bulk_counts Array of item counts for each message, used to build internationalized strings. + */ +$bulk_messages = apply_filters( 'bulk_post_updated_messages', $bulk_messages, $bulk_counts ); +$bulk_counts = array_filter( $bulk_counts ); + +require_once( ABSPATH . 'wp-admin/admin-header.php' ); ?>

labels->name ); if ( current_user_can( $post_type_object->cap->create_posts ) ) - echo ' ' . esc_html( $post_type_object->labels->add_new ) . ''; + echo ' ' . esc_html( $post_type_object->labels->add_new ) . ''; if ( ! empty( $_REQUEST['s'] ) ) printf( ' ' . __('Search results for “%s”') . '', get_search_query() ); ?>

- -

-' . __('Undo') . ''; -} - -if ( isset( $_REQUEST['untrashed'] ) && $untrashed = absint( $_REQUEST['untrashed'] ) ) { - $messages[] = sprintf( _n( 'Item restored from the Trash.', '%s items restored from the Trash.', $untrashed ), number_format_i18n( $untrashed ) ); + $count ) { + if ( isset( $bulk_messages[ $post_type ][ $message ] ) ) + $messages[] = sprintf( $bulk_messages[ $post_type ][ $message ], number_format_i18n( $count ) ); + elseif ( isset( $bulk_messages['post'][ $message ] ) ) + $messages[] = sprintf( $bulk_messages['post'][ $message ], number_format_i18n( $count ) ); + + if ( $message == 'trashed' && isset( $_REQUEST['ids'] ) ) { + $ids = preg_replace( '/[^0-9,]/', '', $_REQUEST['ids'] ); + $messages[] = '' . __('Undo') . ''; + } } if ( $messages ) - echo join( ' ', $messages ); + echo '

' . join( ' ', $messages ) . '

'; unset( $messages ); $_SERVER['REQUEST_URI'] = remove_query_arg( array( 'locked', 'skipped', 'updated', 'deleted', 'trashed', 'untrashed' ), $_SERVER['REQUEST_URI'] ); ?> -

- views(); ?> @@ -297,4 +322,4 @@ if ( $wp_list_table->has_items() )

- +
- + diff --git a/wp-admin/freedoms.php b/wp-admin/freedoms.php index d7accd1b..2f8fce4f 100644 --- a/wp-admin/freedoms.php +++ b/wp-admin/freedoms.php @@ -7,7 +7,7 @@ */ /** WordPress Administration Bootstrap */ -require_once( './admin.php' ); +require_once( dirname( __FILE__ ) . '/admin.php' ); $title = __( 'Freedoms' ); @@ -19,7 +19,7 @@ include( ABSPATH . 'wp-admin/admin-header.php' );

-
+
diff --git a/wp-admin/images/about-globe-2x.png b/wp-admin/images/about-globe-2x.png new file mode 100644 index 0000000000000000000000000000000000000000..648c5dafd3c1091e54979110545a4ec073a66b8e GIT binary patch literal 10570 zcmaKSby!s2+V;TE3?<=EGV}lfGjw-L3@N1y-QC?KhzLlB4ANcFGPE=b3MdUqNFyQn z;d#&Ryx$++`S!JIt^M5hde&O^wXXdoy>wk|ynM|)tO2rCt`^o1RcCWsYaMHID}VQ4YY6}V$ZW4?=w+y(E@tWK z%wzu7hR4s@?H&yPNJ#s+nOizqdqFI$ZS7qonGQO-nIQI7l1xtpHDDTU^450tDghqW zx&fMcmI02IqE<}OQV*D$EVY(kMUO#g;UN{fz zZsuH$J*0N$NGQ${eKdB>iN4_^Xgc8x_Wz9-cOtj^WUc2#N<7!&AnVb z^juw?{uxDtovW9tr=6=CL|z^O)iAfTcllf9_!mG!Lrm4h)63k&(pptPlIfm;$KKvb zOh`mXP*9N%&Zi{A4~HxAi}DF6iOS0h%gGD#Df032|ASRtLOJ^_ZhyQu0GWV)oE-i zTRjAhn;sSx1%0|Ug#xag0zx*tJpvB}O#nd};&&Uw8eYWxE$L9my35MQSaCJTI|`@o zJAZ8%6CKvr6x8_MnUS&aqbu;k!JJa|#)rVk&`Htr`~j91OxkJ(K^dChKg9uPVT21P zh~Dklir8;<59iAk{jl|*r30+@pO!tt8#y+o3aHT!!zOhnEOdDamUcXX+wN@4r^zV_ z(Jk*5UU=xPTtK9SH8In(DNHF}123=+$wrj7C)M98jC{1<%cAJ^A9*jpJgyINBV6eS z7oRF1666!YT60b-P9wPHI^?-L0mCNym*gpjrKZ7eaui4~r7^Doi(N(WG&=iF%r=3p zxSE)^=~>7q40#;E;)ogg*5-+PqVUB8zRwJ3GhnEi23!dQF5XgFSwhFpnDP-cmq>(X z8##u}0t*D&WipAbckMFHfwyEAphK_7@ZJpLDNzym&36R^v3MY`wt`03CZKehzJXac z)4Gf~FUL#lsRkJK`^h;Xkj8nNtlu*OU1m}7WOD~AuOsmO!Aa1T-9GR(%TF^yU46+q zHGX1o(u*f>`1)Q-~*kzBA`8RvP#e>OeWYKnrs!;=Wrq==%( z_q0Cbu}vTS(YgiYX}91W8|Izpa&lf;UEO0#ZL25#T1byQWW4eTZ4Uy!W|XjGc=C{u zF$GAbc!WZG;>ujS5~)%gZZj$$Hn|nwm-{)tL9m`O80>$|ninRg)+#GWED_ldiNPG? z#e2xNV!{N(TBSSixUu8nob&$E8{fq>boQo8+=uqqXZ)hFqPtx8gh04LwV&MhDVtvUXICJ2mb$mse(1{JDfwbQqHzv{r>*!SH>JgP>hUG+BF64o$oJwcYJ*_q2$OUTI!`p z3Ea*|40*}s#EH{7w;<{Zf~&oO=t|WG!q6At=a&5T|JVHF+KQ>~YJP*F`3(E#zps@j%X1!ybv+?fu z!mYSvsUc|?@=}t7ol$-sD0%ESfzoQf?Nx>krl+TY>zs|DqP#%Te#i%^K8_tSOL7;l zZVVEf+e{4RLwav1L18&8JjQ|Nda%&-PVLIO>r+}=R-{{@58eZi4vjjPtbMhbDgWx# zYQHWZ0;331+zXgjg|LfLH!)voYEHeXRTX_-z_mH)M}VWL2vhML2?VpLeIi{EkKf#9 zj>IT>Y;K1UBP5K60U_wI%5HQXm>IZgse1orU4j{r%Xfp_HdC;Q=4~!2p)4V1us~l( zoA-oIhF4a;#GlwU^t_&}CZC-I2ei@2ye06BmJz>rFj#zQ4u)p9$@eFq+2czQk*ncw zJU=pR(YIvRam@4Eo3Y&BsiUxhP^vN?x9B5Lag15pV>8Cp!Aynm%3>v)LGW5z5h9h2 z*zr^1m-Papm7!NM)hl@Xkj|M`!@=lmN-gGkoplg1rX|gh>F+Wn%*mU4pW`X?kG{bC zBU?TUNG_S_u5#AcDANMW5zuWTn(`ia;fYrYw5Whpr18c!S`N65<20jGYd{@lo4V-lTN!UlzX zJb1NNK(Zha>Qz%)KqlKb%;0T%OfMkvqSxLanjCDY_nSk(t*&&!|NV`ViFv->z_H#F zJQ`y?5Vz}ql?i2I1;mutzcmaVSLStzRif)|K2eO(c(vH}WwT(a?W@K6ImxIuyV}!? z%D*5R%5AIAn6M1rgc*$JXLzBO#q)z&F z+6HKR>Ta|jb9^6*);`qB8=)FBv{oR8!Mx}ki3IT;QPl8C=LlIPvq+e}BNlpyO*ogE zwpTl(LN7P}O-8U`ht{f0onx%jj&?WJO>=0cxK{EQg++mR%H9e!>inu6BCobrR;3s{ zh#u?6&<6~>FuK{NV-!tNl`?E0qRV>5p8Ec{F<9IljbNtd${-Z5HnKyVw)Ky2NxF% zgXdsr3+Yk}pc1E*164g5P5}h(95WM@q7YQJiZtN4#ghSKnxgsHz(W@EN4c6Z;r$O% znUsO5$%P^>!Z9!tZ#W`eczAuQ=C@(L^~{+)XQQdL<(!tN8sFeYMNxiT?;{4S#lL#G zP!O@%da%rJjaIKc&_JE!qk@oln1tBzj~C@4KHh0#fk=@~2ZCaF-ApG_=f7|_tV#l& ztp6gQcy1OyY}1c#-DEBzh_nA&?R#Ln|HEk<=WKD#*biTg2lLcQ(mtl7GHK!K8OW1> zNY^@4NGVUzwT2?+ZJ{??!PJTv;T{?sNyEi#c-E&i$(X<>u&?aEr^J=y{5gR;>4T|^ z+?dAwnJF-~I-8)pXZ+Z2i#D1f+@t;?C?liz%{7;@uZstwySHZZ4XNKgU#haca5nNm z$~WzKeFkt{$NI9S-fp~@QvwxetF_?6Oi|;r7k(N1dGU>6fr(vZD=$x!eJ$s-VeX#f zKkSG^?-hVpt|8sq?hp=vX{!&9G%}%hGu8N^ z9a`lCpbBm_D807!{u^Q6s@!<&Ml8uIN*&C-%%tLwOeZd(Jc8PHdB3DOmh)7X?pj=S zR?a_Z5v^IWV{x8@J0!A)<#04Lhh~3iIaRv+?DDpmQX%{g;x;}6aT0H4@)En=v#8>!klIQT6L4E9p_D-AjWQ z%25CF?f24$xsHycW^gr1WEjk{2d2obojYCc@+lejRq~xL4`15!RukocC5nfZf+Q4n zeB`Mk4IE|p^aR;Lo$r46(QhrjT2~G_dX7Z|dV2?@3*$PS`@r#>T%EL?z*;K|%N`f1W$j*>)mShF8t z;wmO{7|HY^?nBJUky$dW)Qq?CVp5OJ$IMn9=i6AAwG|Ob4OoWAtZH$!HV>8uiujUJV%CWCQFGmFQ3q55Hv?E;d94l79Q`B`Bf?KR$~%seYay(q z7&k7l(N((tq3Q6#m{oTW=UAJB-z_1%4=yHwS+#q>9mz?=oL@l^ACHOUO1;4|)@=CA z%xd&+-)hkXJ0@qw{3Vz0DgBuyxxLbNbr`WNH%QGqYtlpJ#jmLHl%i`HS=p`SR)iy( zt*U9t_?b@6Cuc>ppXw*7;kFN`_o%N;inc4faivu+O=0f8nsFBcN#Wwq~M#@r) z&I@eLpEYho^gg}Ecg8^vCeKqIBhdg?mi!=>`7~enUNDhELX2#f9KmCO>WxRwJY#*T z%&>_|-t_eRaw6RH39h$_dsmjPvCpO^OwaDp3uxdbi2eL}Bmhmbt{P1e=F8TrhKk6Y)1}45!BtP!aHXVVi&chlf=tI+E@cd;9e{1%3{rUM!?aq~SeVZE> z{35&gdjf%h9l``@`SD8sTEc5i3h-PLQ{{bW0uSAMo4eHLC$}p~{_W!0D{GkYA3eub zwEr^mVeV&WWPex~hS}FND6}~q!!uAg^n&_`1!Avik_h^=`9Y;w86rBsv->z4oi2f5CFKm!S&<=3FCBD+G-ZS+#nWzx6lN+j4X4hnTtT6C73TOo9u$j{*TS z_=L=H3`sl9pya*lv zvPum?8bS&uExBd*scXNdMRYtY{e_+sRi&o1w;$l~+i|ZSIxOHB;R}x18()sYM^mm>;w~Eh^%tu`Lbi9~*?tT^2)fr(H~n z4w)al{s2>z0?R*Y2zMM2DEeG_?lQk%kXhOm^8G#P+CabJi$vAyRSL|4m_KUK&#J*8 zgIVK09mnA5NdZdOlkVc|-j0csVsg(1LV{*-j&9g^TxWJ`Vl|x3&T`lAL;OLB z3f?7s=cxH|$szOp8Ezu6Z2m}4p{!e6>Div)#9A8D#`@91fmydO&#S2Orj*g)&N}(k zK=Cpn&^tqdBn9q0!vYO@k70YR{Ly}a2e;9V()gh)QI0>hq?GGFt4z@Vagz43W<*Yu z-GVT$E2yYqc;Z_9S2M9uP&!K#&2x`=XOT_Q%vsYW%Af9Ut3&h;&tfPDS!s%jN7e&L zz^QMVrkZD>TTu4wB$BUgZZlhBUeUc@13k#<;3mFKlq6XGu0xP$zzAMIAiW}X6#RlE zgePjH11ccmgu32F@)>S_z?h*Na=s>}?n`f$zW|g*Nr^}!e@#s|(aL&OYz+Qc>=*i; zaMFlNu0={)M4HOV^E_@Un{X&(ey!S;EyFn4*wSyC0d03+&ds13#Wu2y-IvJjYVs;N zLe=d}BQ>_neRN~Ve7Y!ZF!31BeH>JWwxih@kMuK^a>o6@DCcQ?vJWwYUU=+e;nqKd zkS`}=uD9cbNb(+breIFFJkGS&GY`tdNhqPr*8>r@SZZpOsmVQ{BHsNyw8|i~Fz&hF z!`55K=&3%Y@fr(fvQ3lI&rHIiS6w5|O-CO&w)TzQWjV4$J3VZD)Tq`hYku?W`PYbr z*|~Uq=tr-oSly;8bZ5E*%Yi`5BKIhqq_-DDV9Tvq5@r!oojXh}ef5LI7h!dHuJ!^r0O8!Ci09OfUnG{e?2>mU| zCbiJ|MAOE>*D0XSO5BbHT+aKPzdrPRZ;iohmZJ7WP7E8_6AO!?tnRo{=VKy9oLD@k zq7Y>ca)+f8-y1Bzb_nasknN1@C_1^UzQfQ{Q2i= z+lqw@k+szdK?g}H%lLsaOneaVhYsIi9!r$}^6keTb(61NYWY3O=U^>?z>YD%f+(*B z_t+t&Xj-UYgFIHUh>q&O>!jdV1LyBIe%v3J zdgN*gC+Ok6;HB^(i8(N4QH+nLaHpdoT$c9p(6$>{4d71UCiS5F6;lP)143*Sbx17c z_lcBNHCqoR(^Lc~cCxL&De!uC*$4d|^quwd!L z+nK?4*4|phq+&(s8|bira=cyY)ToTA_+nzRwq}xLY2m`3HTIIIfvT05UKM=FAMpxK zAygFYv24p{oMX<=OPM65%^a1!5S&u#1A@r&p$lC7_lghEU;$SIdo2%SHBmd*iolcQVEkv zF)F)QJK=0^z0$yukT8fh)4b(1-jC*}usZc^7*66=Dcu@JTbshZ<|Z%=T->{8IXCvL zrRmq_aU=19q~2^$Ju2b8;NOEpGh&q`GMR8-h$IfLbN*H2DE` z!aNBQ6V-FTD%jD!I(}oZUimv*uuEv6i60zg*bB7f@u z5@#q7Jw(*RY8qod7OJ{0Eu*Rrq{+0_Q{&#O9Esjk=oNK}*!D@+bhQ0IJ~8cWtiv!6 zq!9st#R1^+QIk-{F9QC*qNUL|9eF*4Rys)q(oG%bBk*c>xDx?rjkN z>z8fbCJWz#u`-S93|PR}balh@VMME%Ss}xWScAlX!5h$nef&RvGENh&R00s>4s!F& zb3f4}Dx~20cM)}OLdY{_yW7TZ4v@6>FVDa*cj7SjNOjSRB>|4@>wr4>Ksdrp+SN?7 z=)C6i$-C2%+}|@iJ7o>De^wdxKD79B;UoySD0O2^xC@WLle>3Z87 z3JOf@XdWG-BZ`-po$4e$yU*Z_TE9x+{Mvo5>T;pGMEG7sa?<>LV;!a(N(NM-SsXyA zJU-}Xr6LE^>*@D&8z_^^R4AvYe&4ZdX4Y06mB#0-sZXxGZ28r_*r5I>Y9GQrOkjTS z()B~J-Sn{Dl5ilwaG!lF)A}F<`$5b*+oGw2QxmVgzIr2ulLffVB^b2=IX&D=lBaF^}*BV<;;rJ)el4qQeoX4su)nb zfrvOXDSBSSg+&%RGM*o)$$qq;TPNr6?p=5F4?H8%x3{Hz0U0+n!Y#o0*d1X z98_2&Fp&&%8sXlEf@`D#NfjrP!il6Jo*?esX6>?wbMzm6K?%L8DYN-%KXyg*A+m=E z^vQ)=U1(&jFQPjmHH$MDHY@ys$s>bnvEJe9Cem`#!7o=n>_D3qe6|*0`CRvfsivs^ z4EUSe<8NK&^AGh*+(5vPW*irqi5nAx?;@qa)iJRzaFsJvw|O^;;dLm}KcnTP3tv-d z!IeuvVnk7F8V3mz9l5_kE`LjMO;cg~p_RM+kw`?t;NZFP^!oY^m%=62J}&wJlGJyu z{Wef;2XG zw9m^YAt$lgXYnl31H$j~d_{McxAuA}zm|Q;sH>@b@k8k#hv4IN%ZKAtLeTzNGK>R-(?O*iuzn7VXNb2tUw@ z<*RQ1*_*%_-YZ>SF^70j{4^K{51IYFG?JEi$6n2@dG<$u$>tD>_) zk@%Qwb9cm@>a{je>ZwKLOZoWLG}bwKq|VP6VQ$Zld5R~6-%21+l0J{b6hpHU2|%gC zGwQCB3f9K=q1PMk)()@rjp~OX0z-!Tu*1Q&49tzpp8P9^l_voKknl}n&7f9y_BB;^ zALu9W^J>`_C!P<%3n)9S@ydDyS>AnU32{ImB>wT!%qD|*rXtJUU>Iu1rfS93&243y zl8St=E~OpE|7X(WamIo^wB82()QBWa#z&gnV4v%LSy2TunlC$z9oRX9*#^sKkwo&T zS0W6IIoL>%E3c_uojyO!?0=U`13dUzRL;n_tMo3X43NCY+++i1P9g@qRhX zpMYu0HHX8sS{pSB4mczwK_B-MWtyYukSq6j%4OMe_QI!=_aE*btdo=fPrcoHaCLVt3A9T#yeYCVq3$pa#_VU2+SIz$GBjZYIygZWVd;wTTHBu zUTVa;L!QKBWq=VlO+U?usnMo>f!|+vO($tLPevk`0(?^d`$}-~gIi3*aH}{~uwK`Q zRlz1YunjHKe>7K0WP-u}IIU0P|!x#zu$9U`Tclznp4y>v14+Co1&!moDBkG0vfh2A(MAj7mh zv^@?xyw?@A$1DsF9V>+sQ|eLahE*iwYGY!D zmmFzM^;s2xA|BsD-i*fqBEt^qRH=jOLxRb^N7KR$+!qNme%S(D@~SH zDPk`grSzGof{RQGz&Ck2Ur?7IZ5EJZ*OJ2E;4k^E2DMA{wiMAICoP8q`Zhg56f;ok zC22E0Nj+GHcmXRfkHr}hq`0t`RELewjpRRMarkYd$EuOK#M!P@ULrm3z`f~Jh4h0e zYS}qSWI7cmFg=7gGQ1u8l%d%i&{~<^t*!-FP_`_X^z&{)dv^0nq)o}wG_2Q`4FsSf z7rfKp$<6SkjGkP%Xb?Ef>7qb7^k&fC;f^F81+{^xx0d64Qo8-E(VyD*T=Fu{84k1t zS!-|xW@F)Wsk>j%I z$vN3Rijm|I$H$3)^fX=WA&Dyt22#SapM;&!M2zR%wE{~0upO>Xh z3G1yG3|3?jP~xy%xM^2TRpp6wE)NeUOA^xn$3#$)OEZdX=f(0xHZcD&s}TQgj*Wwj z%Z@#?+b?tnhlymzUYyiBW2DDZS7zYL8_8xJVPHSpIUpKkC6N?#Lu{%BU46K;cllVWtNH{fZqvEpP?`}hOD$sr$hv@~yp6+yU55jCof;-seFasV z^y?U@=OX+W4j-e6sK#2)pum*Tj<|3p3v_Z=(MI9Xi@Oci@8Yx&&ZqVOh9%{<{^38^ zyuavE&C<<2fADkFyNUiajjqC;&W`#Ux*ryZx%P5i-vMx77fO!w!hv9n?Xi$M4fv)W zEIE!_BUsbM0wEoKq^WG;`7d#_q#TlgnDg(0f3mOFxjhO6_6;6k;mWn4Z{=7oIl#}D zu3HCNzotyN`(`S)CRqs*fe45@>p1WkWP7Ws68VSo;KR?Ju0dXe=c<|WtMAs{a^t&# zRWnOuF34vMQv5fuqXp?Qe6@l1Fo}kN)bf-a;>@8A`=zoZ9L{l1cI>`KD?9-~GNw;V zbybsu3LT%*?Z8Mxtq627<@w5vp3x#%9Ln{kgr(+Z+Xk0+c<(=1pQ08%(b*@}Uo2hT zk%KEYPp7!n>g6C*@~JbyoIPq~aznsm{yj$!1A0FAhA?;PMwOxE<(Y9?1SFFsM@M+A zt$wN27O|3jbM|FKC`88m6$KQfW2r*=5?#GUxU$L>x`*hvU4EFY{xb)qq2f1jYLm!% z_TXA9B1)PW=cbekR-P?=&`y-aC&5$5 z`N*72A+-}r{6JgA$LU+d4Tl|>0EZ~EzcksGk~9XunnF6=Hq&a9*7hf>%eKhw1u|<% z3~wR=Q$ka6Q(6Xu-zy9HcC&YG_8|OT_s*k!t(PU{47Z|a^z;`y z`;@++p%RQAScjcX4bwZ6O#YiT2yx&4IaK+jMw|xVL3p3n0<2kSyPS=YDE*#GPR-hx zjQ4R^bo$H<+v>|I_qXQ2g-F&^7+rbWSd`oHQEqPX0A!qaa7pO|a|8-3iyV;`nNRUZ zyJda)4EEbAzY5NhB-Ho&uwF`2>O7MT)9vCu(7C++!|OHoEPq)8qeppEo*EOJ65EUj zyO4CJ6>*)`xDRKWyIFY(3x=&K`m8=Md8&@B=AJcY*``Y0$2qqC)s@%;cs$?oClP2o z3JCYXFY4vJAH%N<$_-8wVU4!~NW_TgH)pO9v)4_2Yft}vKHDN9jlqc_ky%s0_6Grf z2Kme1gf3hvn7*m#LL0fdD8Rz_gBR=@Ltgvy{28TWE)X&6DL7UbkfH#Aza7f1U5jq( z&@>(XGO4lmdU7y#5f%G8WFtYjnkV)q=LrYGAdb|1a!7jY`82 zN~zH9_|ad&4xetrFDkyYhqZY#T(AhDXz?sCGF8RtzoHIwlJ*wseU8y%BTI4;8J;zE zBGwjYgsVj-pj_Y?1>ITZ&{F1i)YmVwEeVw#`hfto`yKca$Ve1cH*3$el;g|cd@v}= zoZ9o6*lK7~HE!e=KT@H9svePyMJF9Y^P`=uWjPzsd|7>;Vy1%E*N<;UTeLb3iXHX7 z^leKz$^DhNXq=hrzJu@p(Dck^DM8!?hy4=Tq#g>dH_!*77vgxKRGS{} z<`M{Wc#CsY7DasZ(hJ-YWqQ!tU-VvpVIUbc0#ZW37F6&D1qU|wG{yJ*Ah1Jn7AA{v z7!x+8mf@%{P9ki=41}F%bR5W{l8o1V?ps0zh6xDQKCjDUk?y*)Ire|Hqh7g8c z+^;Ce2v4`%6*WS^j?uQl+(Nlx0vyo@K-~r9gn;NH9o-OcgriH4?*Kvx0EqcK%&jn1 z#zqRxC?wSJj|?;r=|eyRfRbvUkE63E0t0bExOsRh^X@da@j^UYlzA;>j3tbHG!gC| zdckPKtzZ*#=U`7~c^6()6^K%x0)YUDz&JtzkzU?@3W3VJfAcC3>VLY$c_Dv`U_6z1 z|HmjRV>5^*3XOosKxM?7C1BDJIe92d1}1$ICJK?1fJuom@$OXokj2rXq^cMQfyL0mi_AOIR51x2CV#9{LC^5PPb;*yeL1PL*}Aa9Ig zpqRHG-#-jm2tQ}EhY!XBEd8G;AbtKz>+Sa+HxV2r9_Z*J4ueYk znbJRk#>W4DQ6%!e(ta2?;(zV^e-itd2l*hx;RrvJKiZkFaISoRRQV`qq7jZ56xtkx z^7_Y%X6`5q%Fi9;1JTrkTsL-f_VE7G7XBMxY^Jp^vfBU3_aCgwzuF?J^RHNOf-&NMR`&l|>3_Ni;q#~Z z-?$|-{u}uSZ$h}E331K$G^qywSatNZ)Xf8@xAMpXna1necQX0;iFnVng@0z1Ot#0; zfk{PPL5h9}GSJsxiwdsmF{+nEQba>kf>}Z83Ht85BxVNjWEzywt`ud>Q?uE50mJy& z7M@raO|;wE@Z5fAAK;Ly7_cf=I)kp#|BDHp8}ddV!v|t98eDJ`IY$|+=x#jvO|2Yz zM@{5a*gWYostw>hNw9sfeu1v~=Z7iq!QC}arjxNiCdT#Ig2%T)nd(69dhGR4ce%)B ziJNjRKCFN>)xYL1y|L+MqE(7 zrbtS7!=f!w5El)8={)`Il~llUFSV2DA=}m`+wUQ~q$PAW=;`a+o;u zPANAPnH;hD(dVaod>p7Ni(oYo9L8PWY5jSZd~oJbgb9f;=$xglsy&eopl=B)5Gosg z@O0me19VEe?mLQ*wq_{O1YnZe6v5OO*>z5x#P{loQG!^V2n*JRALQ+^7(HiF_s}R+ z=WF3xRL`hSg@u0?@`CPC&VK%ixxO48xn-S2%&FU=DfgJ_R~`AT@5ZB8vvP1nq?Amv znw!~mQY=S9!H9Z2;|^0cxVnX^>9Okwk(v&iMw%9bNwImqIY8X47&~bRSRF>bCB0el z)z-(t%PZdcXF&9PW6&&Uk{Kg}!)lzRfeLKYM5q8mA?_$BJ?M~z(nS5jq-C(51Sfp)2@f^#L}d_-XDPO)RaBr&F9L6fnJ^i*oE3M`jCv)(QQeSB$O8k)-76FMU{ z7(S4?`Em=LpJ7{t=@I+JpY?gQ#?37zIyTO_f`>jcW%Q?oryl9CHPwZEpVyl&uxzmd zW5G18z9laHxr5Yd@XlO%0V!BY+E%AH2chk4tpNBShx9Mq`Z~l0X}uj3x-6b;YMa>G zHE(bpEtNa;)41y0jzFu%~8;u-3 zTkHH)_C9C(OVf7N9GBm|=7|3WP3E3mO+r2CF3h$NdSWX9I;I}#HHug#X_%U<^D9+( zzBh3z?(F1%XyaRRxtUDa>CUaU28mnF%d*N{&v*8JTy>;hi6fJ+PvV=KjWmz|;-@T~ zAhAU4s-Q1v_?2QwuL*$wdpS5jawmHefwKV4KoZ4E~XA8 zN5~W1`=G-=%UN&2-7*Iw+qPj4(XsNA$qKxK5C3yA=8DEGTh~F?HEWj zoHa}xd{br}2ib=j2B7?E<(URlcOPUXPra>rWTlAEQ#iTwZ7q;r0!}xwyLweef=kD* z<)U3CXY!)cP7_y&@b#o!JXxwG+A59F7vmlKW`@F$?pxX4e^CkJ%UMT4KQuI2HV~x* z(nUDR#-@iJJb!bzMI9r^31w)BgjGx80^V-#{)Km%95!qL9gAvi2Hb@o^?rM`=}!U+ zX?@wfoFD~#&OK67_M4Ji`;jzALT-Npld(y2`l52(fI|-N8DX^x?kc&120@g-)OWHg zrm-K7#(w&uDuw2FSXt?d?)P-(=dlmfB(vB8{gTdT`7Ois8?2>w@f;%SQ+*6=zV!Jr zefMs@W)}w}zpdr?3j5RG!cyDu4oj1=m*v;2(S*Zfs8Z*lAQ#{QFXLRwVQNZ-TeWT4 zs0Y}4PbkFh)YH=ebAwAuwSy}IAu$Ic@Z7$mz8;B|Fk(Am3ZHbLq+yS@Yc7l43Qq!= z#KtzN$%`ZE^;|HacF#2mpZ_L$Ye;;?b!Ko&QxAYxscwy4MCWNJZU?Q1Fm19)G(L@Gzq7!_eI^%sr zxfpgH(ACK9F^~j(ED+}3?8YXxAZ7%l7rQuu&a>WcUK}xXt=-nH2Q-q*vT3mB*r!Ja z4z%9(tL^V4)yX05Y%e?=n5{Cla$@@B6F=d)eo;dhBNpT=C2qq3%JTQTa+~b!21#S# zuyc!AE&lL4NL1j=O9y~CW}r&??Ud+}D$fN!kC(;u9I=UnrM=9XK9o&vy-+e~n@&1v8H3=&w!bCfRkqNRhUffnJIFt%(C3*;RoTa}C`!wv&v6ZjvlR z83b{`=F2Lvg^c}DM1S<9E9QKS#3oFivD5wc%kLQejiB2MP5KL_t~j0&d3QvI<(skC z@fgm-8NOirO``QoTN8@|{ZU*UYY4LlC%c`c$z=0N<-Uq7Ct)s)-s@;lz_zXv#4j9A}q3=^93k3A*xnLj1H-#h+oo;8>G z#%=ZHH%$#D2M_nL0HjpK1Ilf;dRt+VElhjml1D z>_Y6UNi&juS@sQ6zf;k2umE*2W%BvtiM_V|yb@~WPN%+Ieq>InEnz!}@^2Y#EG_)9 zR43zpbW-VZzSwx}kd$0bysz>dlna!e`S`)_+V7Z(u>#~Z;s;WC3tf({WH_R^s&2)F z=X53h7Nb@({j@bGEYv#w>fAayjjz}s8zTytlXobI)Ln#fd{WHtF=uJ43GJw|-lV~|u&0`JD^<`PL)Q=y8U^Cf8f4X$ zR#4)om``1&b5Pd5DRRYu4V%v>)^>Gt18mj7Efc$YJE}cyzu8bG$#>u6qH!=_w=gXL z*jMzG<+<=Hn*EWv_=R)76-_4h6!p1(JJ`V@e>*3J&%V#YoE4?5UQG_EDo9zS*~XA5 z$lY50oqgq$m^4+cBM(U)A0QGbSajXs-d2(Dt-!i4ZIE6_CY{1jMv;3fZpVN0yj#)j z!=T@_D+%Og^M#16sUKOYGdT3SygRD(Pk>)m>RYxJ(>)QO200}a>iR25L^R`jQr*92 zj9Z8|dG5%H8p5~!99_(>QuBeH&X?&cb0x-zda46>x{j-q32_Z|<5O?DgnK*+8h(`O ztBrY;<4$UrYB`IR{CS2Goz=VbtEkdoPLSniu~+`U(^7hy6M4i=|V8_uW<5eMH?6Fj%jER3vk?}JzY!aA0k zJe9k!iaX96zq%0W^l=6xt!*kNQ*?W13`DUd6LuTu8Ke7QJU{w=z$mK z+n&>>!(12V=HrpOj?7j{^&}!OPCSBVPkCQ0!I*V!2qke3kv+?x6H;(sT@QGIeufBo zgo&T884bIMFNLP0=dLcqEa=86j_yv5#eS(()@!-?@*W4Z3U1-Urq!q-4G0orc1Sa{ zAUyBJNZ0!M`UhrSt?IE{K`-S$L!&7F|65QD9j?$Hm8R`x!^=M6HKo;D-{mFDG)NzHbre8^QCHx zSqZ0})WAMlJ*p+ns-Or%;5K-*d6{Z}^5^9JfaC$A=3S2N7|XvIZgA&XUZzS^*mO~= zWhf2{ye^7QYm%EgJ({aDM(8Kd?>wbqFDW*J?k}Xd_PJB;uR-3xKU>;yd7(yzkHHm= zj{^IeSVi;DDHq?V)VQMy*cew)si5O@am5)`*4ppADFqd*J61>Nt9y9-gB(TRHbmje zz(a9Et^@cs-cmdtS$ZAsOz^@TpA$}eLarg(_MoH61u@t_8rtG&J(~VCr`P1ciy$c* z*Whpf)>9xZF|txK0&ABR@UEHHVyhtf>H@%5Qun`1NStdVJP0X`HDsaQIRImC0%}H* zME-%teAuJeH+HIW*Y?rpJeF`%TxmYmtz%5MVY1#xB;@2hZ&Sse#AZ@(So6XY=CyJU z_c2tkGOQ$|*yguQ#e^HB+f}3w$C$^+`NjJ1!6(mB>c&<6)5k2^4^CHY%B%S~P_r%& zH{m29gWcf+;)0D5QKoK<%H6BWSrZkX77D!!7wPki1^q%f+rX5muN{!qmaI_juc+nh z7kgjrB9y#Vo^a7KqfUka9j>FfIuhgWENbIJF{8jy(_%X|I|u*Ubf{^&f~T-@h{cnS z(@KYZWYK35J;624-R!**eRLtb6p;62BM2YVZL06AIjBu72}GAMbu!u#TQPwDQV5e= zo|sO4R!<@B@FrV;|0ShW-vf%@Pacr6TJ=M}q7HLEPO666F~@yQ);?F+gH9iKv6W76 z9X(I^lL!9FX>}~?;TW3+!1;o6ngb)gbOjr(m0z5WagMKjbMhC5rrUzTwR%1rMMq~e zlZ(0_(+13EUEZ0;J-=;uZwgyym|&x_lDXnCuwq2=HTbxCUXFWO`azv)c`Nh1y^Gt$ z35SDkaR)IMd?K=;0zc)B1Mjf|8cJI&?5pXqfSLbi*DH?w$*!9RTuAnxT5%Wkah4Sr zLp`g&r&A1Y+6q^;mcS7wBS4H5GB`Lm@Uh=O@i~37`!piAtM$pv6b+#h#}#EH-Lv}l zuxRF-hcFYW_9COF(hAhXcX=dY%`81X4QOVSV0*u;n>c=&t`6yzGSkT* zQNw>!4c%k-Yp7xrGG75t+i-ixNP8v6hBU7^soZoC8=`d@!<1Tw^1LK7w%LgY#MOd; z?q~81@s4?Im&5@qyJWNVP1PkD*!@?T0>fXj_eP7!zgfJp^?##Y0eM7w*EnxE7So}_ z5C~(V3chhC+4lKarHph%mU`16x%({#IGhRV8lkS%MOiAIPT_OjQ=1v5*7tiqk*K{r z(Jg{(!l5NKc*D4}gT6fM19`WNkvY(>4qp*I{blTu7#Jt!))LWlq`YUr%?NB<(-={c zy$G7qtv0?tIA$M(p*hO<2nK%gu+=pC3aRH?i=}9jWD5h6zAI6fO4>cH?|i^_K%-Qgaqeh8vLj(h#WSUfCaU!| zBY`)+klmIjGwi~MAJ#ic-L&u*k(x?H!MC-9(u1I-0D^H9>P;+^q2)rrcVdlenS0bj zM)+};*P{C0s7J+eFS!JP@48BwQdYN@e72sok_lf-F{)H;{2{q}G5YbDepI!szVcL* zPoSU=s3WE)iUfP6_Ec3m3XwwCljK(mY~B|-uz(<{;MMA9?DKmOq^X}_S^LmM*Een? z*bx0N>$F!#4qR9C2P}qvf3^nt9hBC~#H03m2yf(IyT4|1Z{p!1AjtE*0wLikLe7)h zJ)2{{97yj;vu=t6LBheSkLjSC-*%SDRPVQS@9i4-5ro03C#k6?T}}Ch`tjjUK651c zlVU@J1oEABKXJDPOA4!$FvsB=GJ%wxm))yTU_);1Z@9f6?Cy2(Q0!=70x-&!{l+cO zb&B;|eA`;F8fTNabPS9l8GxU3g*He^U&^nwzQhW8CVi4zcn82;je;=%g$|qDeiBA& zGrXqd@1BAeEwIsN1URGxyP2gO>QEA5QrjBj@i@tYz!C4M3|>H5F#1H~m5@KGW!tE; zRfq?wR8arhe-eF^I4wbzL0@@qiQ)Jx;moSy?PmO|5sg9ZyFHQE=PH23RO@yerA#!b zbd^lEZ|7M;vCv^(WAD3WPxI55^sL1d@|mK3=-LM7pzAa#wl@}>KK*5G=-rO> z)mf6-@5K?+m(YBJ+()W0RJ61KNwH*hKV?>u<3#7?n=~?Br`16-@#smngfQ~OF*XAqg^t2gO9l8@YF z#9*q%zmM;!n;I?NG9W2PDM)ovZ&CMUHNui$H4+%ou5^!~mx^G|;Z}Sa(M&?EntWmc zE;>aEjfq9J@hPeC+N4e$%cCKExdY~j%0U~KBy0fl+_Ozth0jrcelzK7n`l*O+>QJ{ D9xW96OxqF$rT45+aoh+NA?^@O4M|HU z2Y&N=8h&pFXEYiELt4(;+1%33%AM81>aC5V4B()-9l&Y>l>xjF)fCipRvQBiLi=G@C%6wi98kJWfc|_0tpC$1cX3*Lc)@Q5|Toqtp9oe z(9&F?Fv*u-m4C@X-^l>1-QArf1q8gjy!gF9{7$ZK1%xCdBm@M71%!q9&=h=ba7TA@ zZ$3vi_J4B#Te(@f+Bm!0I61Q3b2PVb@^F^{pf&v;6C9lX!`9L5Uv5G>Ou*aRSwM(i z@ZO|<6KZPy|4AJj{zL8N{?h7y_5FV`cGHDBTM4|ha&z)-Nm0Q!?(#G-r{_#HmO-)HPM>ltKM@uU;unYjrg5Sml zDhX0l5>!xmDlV)dCMYDN43ZEQQ;|?o5?53b7giPqf&PsJJ6U=-SUI}?8w>qk?9=~> zy^jS4XS8Inm8*@X6;#F5$$|ABnEfC$&@fuI27K|1~}7KE$eBxY$WhzVD!Q%*_n@uGvfUGzb8 zJ`CUt>HHG>vwzQ|^0%3nb1o6Sx{H$Ty4(Tx3h3gqCbm@Hp5Uz0!g$d{oD!#nG#ywir>*ukCf)0{obdD41Z-j83WAp~K01MDEO zZ_Pe`?)6Auq5NT00a{`$}MlHcoysP(jsDe#40Q)xfOmH3U4%V5- z3FjVRZ^P?nj*gY7W^SErZ$&`rV3jDzQfYe)EW6%YaVk{;$K8hYh^#q)mhF6zO-~CO z!72vT=|Kn+rXlupv??#J{9{#?$}$x2z&qU62?rpoNOwdxD_xmv#*Wm^RF5LLC45g3 z@#OHanU_v7If6oQCqqwq@)EZc1bHO-d@`t}4Z9-%{|d8INR*I*p3T{8zkqQTv(n0} zu2@avnWYv?E>zS~7Qr7J75joD*kg;i<58t=k(zsCKhi0}P5k_Q^tY%1f=AvU_jMex zjLV)(9RD?ieLnV_x=)*|0FadP;I{{r;b5~aN`@Faals{n*H{$D;-DR7mqCZG;fdkxZA9UvvI45mtSFWJmWW>pXVNaL;K0}3)nsej{ z3MY0fVoMG9filqsD`E7OlyuO5EK^3=a25}qb~oYda@jrr2qWfca8s{3KfH8Hr)m5o zmwNeG6iuGv44j2+8m_*K_|Sb?)ZsV&A$9#D1tL1c1obAMiC+}AlWYuRx?d_Iic5hs z305Xe3-wnqp<7|-h%=&@c*+KtVE^qZP|7Ka%SJHf4}@si5&?wEf`8;Rq*u^L6S5I@ zt~zcSMlHsD2#M0*`PAs~c$Th`&h|lw`f@~{TL(<=hh=b-Mkw%C1?mlEusi|239L;t zL!?9vOhawv@PyZ0HC2gl1#e$GMj6K%Q<6d-{5|1P_pk2QNAkzIm{-x?4U7QQ1Q^MG zsX7Z@W>Dl}q*#?=>}YE$fNA*6uxNI|TU9g_qK;cH31YkqpSgpg% zQNXNxqzgd!H8)xPgI#@FqL99A!ZT`iI39(5Vi8Gw_~ltL2l*++!UJbQ1U-emAV-8x z)>ZLi0!bxe00>ZRrdo<8iW@u-8>InG0aCIPfMF-}ni%AWOU#+(GA{H3oKop433eMi z3VQsn+l?2^VxqVTf@V{((UT-#=!Hl(Wlx+9H#tskiCF~|0?EiCyi_X|%qrX`oIKMF z0wK)jQW}0Sv(jPscaBmbkYw7RB`jww1#9mG{?k4fvX#j~(|e@R<#(W_&z^ZWhg#b5 zlAB3_xaP5sFvnm(Paic#9q@yfwZH2(y3mUbY%z$e?r@r$ltq=R%)8{ti#B zq5)F+ntrc?`Qd_Af3C|%ySS;NbHPyaiLrk2qZSBb3bqX6UXW?b4a1Tx*juuLIkAHqW*fxq z=xH9lOm_R+3deO!y-C2$_f2D}o!Wq6*j!91OWbqrDON7Aa^{vy>$BU-%lSFumks6b zTPv|Z$#ei#AtsR|igFL~S!ixCKxf&dIlz7PIN<5cRXM3C*-rUM5YYEI%vugu%6c+#;^rfJQ##~+;oC1d?YmK`V&E@ss49;!&taW2T4*s*CC zRl7|sOfhb1q29Qex|}=-c&mJU%3}8(pfS}m(ShF0Qtwx(XH`e}28O)vpQ!8$vR1XY z^*<21tTj#czvd(X635EEh#v6k;5cEfl!|I5>P}*RV0cUW%+tZBWxG2d5LW@htOZHq zTUa3>f$#uD@^NdkD#u4&m&x=Az!?<3rLkVycf~e5`0oFhz3e88KVi_k0sqGmEJBEp z0D)wCCKjqnQuynq+@>)qU93*K`;WAOA0MkulLQ=|n;IB=fKVF`WbJphh2>rHP-AE5)J#p=Z|*ef>1GejaM^5Pt>cw!^dD1i&c`|Ka|-g-4N*U$N3rJ95qu>H zI^O-4F!lWmnc8cq*?>)+F-t``7MS-PG{(QcGHMh!H5RbzoP*8 zBqHT=4SbGvk?Fik>8|ztxm5%sCZ25k&c$j=ZM~CLTaHTWrc-|(@DwU(TmV#C#GX$J zT!j8PU6HuvoQ!Eg(HWU<=Qevla&Q5XRABs0P-BLkt1? zp=vcHmEEPrg*&yq6`W1BzfX<}q6CJNb|f5+9A4W=pV522)wZ51o7>WA$e1lVQ@J$9 zxv?&kh|I9>}w0R(QB7iA);VCGHFj z)=_+}yMH%I((-;>-z-Dg&UuII5cbNI@ni&sz^B=CuGuJIdF@wZ-Y;NbVad+F;v&Ul zO6H_fmdz5a<2VtPv*C@MoX&pt5|)6DM6wfhq0GS{ASJP3BRt%z9ssvKi&Yr;(TNRJ z;tPJLb61PCVhG}lt3X(*6pAD=la5BJA>F#>nRxU87@v?;`2TdRf|PS;JHH}%yq0V z;I(WA{YF>r#z*6`m>1B@RL^Qob@r}{M9Gt@Gts@7ky~!xc7b@TDW1rt*2+rUA*r`$m#|b5oewjjB>`=m@EAkc9vXNjPK$5gvi4}9iD0U z-ws&u^{j(uXUSZ2DK-dl74HihCvmtJ;%=B@1w?qPkU|e-;-$xk#Qnx|ugrO>&n_9Bcjzh zM5NY&EZD!>?|FHf(2&xSHQ19D0%8~ObJUBdj;BMUr$ZwoM!IAf(V-pAAL;+0Yrf6> z>~K+x_}L$XoAvi^G3HO3C^h)kj3Zc6ZXtcB!FA^n18EtZV|5L~F06gVX|>`FD_{cu@YlHUDPI4Gf?3D# zI7PH7iX5u)gTMJ0I}GZw4JZj<2PQ0GbwbD*V{Z4e59N^tT(={$MBrHr1Dz z=!IEwM<~l;RZf}(Lh!YuARZD9t?r7>IQnQ;_A(Lj*@~ud@xpC01E-nhcjyQV^Zh;m z@a~aM%;Id5e&C;s^MC{q+-St?)Kh4LnxEAJUV}w3z1ls>Fwh|z1=3SKO@F(0#j$Yh zx%bP8^+>HRX6CBG-5VNN+&=TI9gBp=Ag9n)4R8Tz5)RqpiH3@cYq{%hO2i$cq`oOF z4wEsOZ!YySjYU)Xc=gDu{dKkzg-@qpk=7_?;P>Q3z zmi{gO#M9JA=HvdV1emt97Pf4qeHvrnh*W+@+A5vBrnIC>VGevg1wdHPi~H5jeW))d zS`WW5CXe!J2e>hxa9-F{YbcQoExU!>!_Ahadt zFH1KdC={CDL9E1t{>AdKtp9088$j6ZV?!(+q8?_5Hb>D0b*c_c2uh`K!0|B}h5J!a z{1E-{2@f%jc9S3jsFiYV0ubNTuElhV#RNL;BX~k?bI&#Bo+}}(-s)n?#9wh4)kQi5 z&fFZdkw5KFr>f9_Ywaj8BBpxj$++(toC>75#posDf0m|@-tQnk@n7ljTgg((jp$N_ z1k)G@)qN}L(?|ew8F4}q=3C*)$KULUcnB2~dCDN%emT$Mkj&Ag@4d~f_(w(Hs=e9- zSO#{zlZt5!AQ{TJ&=8MOckh0@1<^=X%P{#ITC{@OT9ztc8bAy4IsXDyta4k6P$%8D z3_T4#_k5uVM#RriocZSQ4PMAF_n4|}yQcxP|{b+R+a$c{rGb1#Gz z?FEXtpMXECGkBV z(OdGt236YOSrlkXR-e}Qk*zY}yiiAvesb9)&YIl#e%%^Xy5P~xU@+1#N=`-)SJT2G zK)>#@k7I~`Mm%e%k(n>8@;#GQ(B zGu4}G&V{)a*2x8ItlM~+v@l>pYUEqt0IVINE&rEmZalxTy41Oit#zv}TbLBpU2s0I zcXyg_vvl|v(2iwy3KVRJS#+klv9*?j^ek{9(nocWz80@MU$2 zMB|XW?HvlHjmvP0h98U$Y1McyS)#BFwa$2`zDm~zv-rRRV~9|EE9(=+z1MQ(*B3+s z_7o7#j~|;6_ju|!qy}{R?;MoYStIglOKKOMS4?(F_BPl7m3}7Lu6LH#@l|Z05R-Np zzk0DA8=}qhv6&wI)uC{SL%t;U#YM*1dYnTVCXPh^1P5T=fXJk)s_@u^Bos`59p{B+ z7&*yqv}NUxT8bk{*zHgN$@AUg&XyG!)1$_pj72P`_}gi5@A@Bj_h$L(aFt^P@8qyy z@?zLMT)q+r@t~h>jCqE?$-XtaGqetNq@7blqo9g*8=3XbYTotpNVs9s4 zxBH1V^DGfSxP)|Oe21vne&GBKUMP)y6Wnua@#BrLU?00lxkj%A#q29k$q_rGzs zN5fywk~lu*2YkbhRP9|J$dT?*i*FEu1zIeoKc;!SY=tV1(%&7GWR>3NU;=gXY ziCi>-g_xx4NhplRDC3!bPsf%1)Tk0I0@DfWthM-a8ANJZAOt)y$_~%_oB1Xz#USyi zO)ubGq9{xu^=m{%6q+zZ&p_xRe%!3_eU%Q~-EN-QQV1vB30qpXtbf5^!i^6<%!T8r=DwrJ!=5E{9zszHTDMjAeEzH-?%Q4WaCD`gA$rdL*hO!)k?cnSUH{13_8awQ>IqsRQJAxU^rHdB?jtBL4ykTkO1;xP z$@j+wvp&>VA|n!{`EKrxi#X(uDo{(^M_4&jEK$Kg$UpamCEnUfeH0Zv5Hy~S%cO2& z_{JWx_9SEFk?f007meFB4tcx%&gD^sk;!W|bOOCr;$@QZiqesEh!UZvvBW)@-q~10 z?gChYsxZ_9scF!9^p+<3N{iCBba_0HOIReH#_N_ge3rVG==H?o?N~CtXCqSVCGmJn zbg*I^{Q~vs%wz`;0SD5z#!o2!aj0Mk{9iMZd>dzmr(8N(i@ z>St;yGG$v-DMg!_s-J+>!x-n(&9PtE_xiBdRDC*q%3)>; z|6Q-a#5Nz_H|7-AHeU1l!;t@5o8S2PLn(~Zi}i`s4-RI(N%7n~OlqW=GKmafQVDgd zQZ-3_-7Y6$FCb8xwo6A67dK72mP|W9Qm9Gw!cy<@z^lG} z=O|)l1?p&p7arvMLJ~eeEmdW>_gIN`znGDVafZVvP+EMa;+A_*huo)DY3KHWELQ2! zd9;u1#Y%~meN|5nkrEW0qjwIxpIVx_5ZQHIC!Yc)Aw^(V2MTZr)B3Ic-q!9^0XHe8 znm(`cx+E4!kwgPQEsLj{&wmwnW}LzAB<(bIZvb&l4SB4u@e6fgRJZdl5droc-w+GeJDo$gqEw8^# zzi!|8d{Zg6hV3KVNhLz5{p@;Q_;}*z=SF*bY9i!JE;pIZwpXRTR90o>=lYJvmDqM@ z(qf2q^K6eRH80v%NLsY7q-PJf2ZrHm-Sy|ADQ*n5T$1G;SqQoehGiULbNrm`Ld}-K zCA*h@vcIdR;s|QhxxI}m5(3RKr&Mnlr3=je>AnsS4AREkm~Jwb)7UlH0!b`P|FSQe zZq(+WSWq0kq8bMiCAi{Ip_TMHwxpedKyc#}V4+MiVM zX=?6gbPlx?hrzAMQM|%>k4C)PNTx0@H-|rG68~z|G2)3#>3P$e8)^-- zA0Av(2J49+2@U%-P=Ea{c1;4>Z$oQ@pT zj~&EgN0Fb_D3Wq&b}(5w?GD>&^!$md7$u?@2pSQE!O+#J+=!X<(IEodA0zk~0Ijh}6b>3*art{x9cn)BxZa%zWk_4CZnH&v}&3F>`|*bs7@|LOBuDRUpKUmW5T+8La_X zH$@o@_(_@mlB~0!_WvBFWT|2xq!^|+B!G-h!^CqoHG+u!iu2G2+G8kFp%Y@WMX91q zz)=a7;XTG}d~_y}UT==2D_q53y<9Z@KN6*h#lVMlhgoVrWisSuJ>)E%=m4+sgeK&9 zBBt&OUIEF(#r6Ka%%q*c(G&ca} zP(-mmqXT&_BZvdxBFv*_S%AvtH)fnPb1viH$fV#pzJ#d2`XS_=n7!*LoyoazS@K2_b z+8N;vN#HfaVd@;%k#TxC;xhp{{w+>3x z(&1sFLWJW(HkLC8YPT{_;&s`onx*uI3c^^sJY3czH(nM2?#=T$E@hC^WhSf97+EN3!Ra)5^hq@F|q@QnW)p9h;9qGz5SYz71AVZl8scm zZ!6o_Ee_dPc!;v|&YXaK^0G_JSpA7;XBy>xcFdCuJx>-psRW!j{_R z83Nx|>rhyJt>(>&864mcU#b)~kjoCsJM3aDNVo?j%J z>Vz+^W6`wF58y01YT&D4T#@g-Nv_RHfuCJqG||Wjz?H!;VG-<%FEwso##%us1TS*> zmJdm0O*Tv9DJ>(2JtcNQT<4_;mvYhc)`3KT>W<*l2Q)jiBhIUsR1L+bhL-5A5xYDh zy8W3(=3V|8qgoENw=dg}Vwo&Nd=0FCSCN5&*?Oh5qhlwYm6y^QxujaPd`PQ9ANeE2p<=4$ zsl^^L(uNH-in+Sr=w)iGNS4L{IPom3l8eiqz#qdi=@RyV2kAn-#=CL;YUy=E3Ui(@ zJB9vHhcs1rMTuRI9X!T2^{V5q5H>Y7FCI6vH_mueFnhl|DZ0PvWT8q)V9%t6pj8kR zEfMF907HAR#gn(qIv5|lHP#`J2#x%tf|&&R{kz_^t1n5tz|`I}G5cz<@aDtrR-`98 z=SAwLe12t1j9Es!Hdz#XD{7DKUaj`gVD6_W`2>Q_qUhMoE7pSIc{S5-Bz zp0xAFpHM2}111#kP`Mj=!LVsK5uKmu=HcCzUeV*nvUyjT`P61BCWr%`;9z*BZ`!sJ zFHR&CL4o*1kRW6_M^h8AFqJM484=OE{VCRx@r3VF-%^6zvdd4hGwzd(C*K`&%?(_^ z$N-T#;{B~Bktr(eW`JrQndF1V(oGijlPg?nShH-E-9%EDXS5JJV7poHkMfL8M=RM@ z6OTdy}R^RKmo%z!P3bPbgpB@t!76_ z7?PZx;(6WRz;r384i2V2wg5x#y5XDieIqIj*a|Nwn^OW#<>%*|JS0az-%wTp zX$jiV8>yyet=X4V#YtCS=$j-u+Y}<6(0JdKoc#LC-C*}Xa-1M>bXVozNImv9Qi1RUdcGyx%x)P#bAy&hA9z9Ub1xgs_WI>-gc>$mh zR*t?#Anb1n0q2!JbQ2cy$2t>bVwnPB-_Gulo)iH?Z=nUJDB1pCC8)|b%uIA``DQ+$ zhv*`mlN@2J4CCiSu5=6zO5XuM3V$#{WZBeSI_mu`7DLxRE)3-;*_+5I^p~MxZEj_$ zNE@I*chFGIG#eP%BMj1Ff(N`jmo$v(i5gJks#*X1b$6?^*NYD@2oGITl)uE}VaDFhNL*7*_N=xeQX%&^ClOK}vQanpxK%xsPmZ#sW_(f|NB7s3 z)!P=y{qV>)7dNyKsRiYnD$Gb(Y0yHv$zpdE`O^}Kuf}m>TKn_2jp&I4)iS7$fc@=$ z9kCs?f(68M3GF9lIL$_H63D(m!H|RA1YXEHzmu) zN(-B30bEexC2(cN_T$U<{ZD=xdBmcdz&f^^Yn|u_k%4c|oZq*vhL#j8b(MH6n9;K* zP^pd~r4hP~9XiJcnN3xib1^ey_j4P?`8|;{Yqxw?*T|efHID|`qowU|32s^yFiiEJ z6c(yS$cG=d$CwS-Bz@QG%2b!)oyc*J4WC0=!blyPM0jpe+9|VL&B4%!9TH+-&C|O( zyOX}2or97YzZXV|7EVca1WIPW`;_8?T<%sby7KXmnqP9{t3E#kQbLk5g35q|;zK%) zUSb*uKKGf;?NviLzk0{-O>>U2WDWpGd8@}&v4%#;x;6OQU!8$sGH;pv*2}c&+o? z664IuxnaUs7<=@9#*z+=7R*KY&!B@SbKKs=C`!+2=*_NGTy&WdAI+~rov+)TG$`yb zyZ5F|Hi1}fFE4G-17V3_5!+H8fBePu%Ca6((Jnn`sa2n}H78~9qF&!X8JtgD z+X1oI0qo%PZ~O3S8^4p=JciWArp0a=_D1Zt0gB%i)6Q#$bt<>7k0xr#k5c!`CTblNe^u|Xp892eAFoML>?dYUbF&%^cY9YrW?N64 zhA>{+bJQ|R=>Y=R!*W2D5;?s_JN^z!nSM%to-v4Malb03Py7MmSZmycGkHldEp0)w zOq;BA4@_f_@Rn=O%~xy9sw(I?yC{u912p*kWFREuYA%qh*!1t$7*fmC)!+KO)4m$( z9&;_sUPNJW8K8;yifq~COC?M{RQKS!V^egyg4@@|MWZTEUTx8!F7mgG{uhlV$*Lnl zkKkEb97#MJ*7D~j32z(b^(*-Vq%2RWqeH!D@*2-0(;^er{V5O>BKy|p*lA2s)aHCq z=y|>tXZxPtv>0Y@bbYg2H??k(Q4V|%RO`x70i0U%-1DHB4H%L3^*f(A@Q^c5EFYG0 zPZ@mYiq->%DcOJ*SocY~T#5xQS#CZ)@0D7jdl`=&M41m>c5HxHqDx2+r?phc)!Ys9 z&i1z*!;(DkRv>zA$=q=``AmF;AsMLM&E+g?NpK|z8|46LQoa#TsO;f{VT z77~po*12%w^xE5w&DTMPgHHg+v!RVeK_Bc)uP0Z-9gx7KKNz;5ZKP|HDi2m6fTJG1 rEse@nrbv;~r+$m0D1Q-%iHGsc?}YTN+3EKE;I^8w7Pwr|Ead+H{I2QT literal 0 HcmV?d00001 diff --git a/wp-admin/import.php b/wp-admin/import.php index 72b9142f..076f0d1f 100644 --- a/wp-admin/import.php +++ b/wp-admin/import.php @@ -9,7 +9,7 @@ define('WP_LOAD_IMPORTERS', true); /** Load WordPress Bootstrap */ -require_once ('admin.php'); +require_once( dirname( __FILE__ ) . '/admin.php' ); if ( !current_user_can('import') ) wp_die(__('You do not have sufficient permissions to import content in this site.')); @@ -47,7 +47,7 @@ if ( ! empty( $_GET['invalid'] ) && isset( $popular_importers[ $_GET['invalid'] add_thickbox(); wp_enqueue_script( 'plugin-install' ); -require_once ('admin-header.php'); +require_once( ABSPATH . 'wp-admin/admin-header.php' ); $parent_file = 'tools.php'; ?> @@ -130,4 +130,4 @@ if ( current_user_can('install_plugins') ) get_col( $wpdb->prepare( "SELECT t.name FROM $wpdb->term_taxonomy AS tt INNER JOIN $wpdb->terms AS t ON tt.term_id = t.term_id WHERE tt.taxonomy = %s AND t.name LIKE (%s)", $taxonomy, '%' . like_escape( $s ) . '%' ) ); + $results = get_terms( $taxonomy, array( 'name__like' => $s, 'fields' => 'names', 'hide_empty' => false ) ); echo join( $results, "\n" ); wp_die(); @@ -163,6 +190,7 @@ function wp_ajax_autocomplete_user() { if ( ! is_multisite() || ! current_user_can( 'promote_users' ) || wp_is_large_network( 'users' ) ) wp_die( -1 ); + /** This filter is documented in wp-admin/user-new.php */ if ( ! is_super_admin() && ! apply_filters( 'autocomplete_users_for_site_admins', false ) ) wp_die( -1 ); @@ -241,10 +269,11 @@ function wp_ajax_logged_in() { * @return die */ function _wp_ajax_delete_comment_response( $comment_id, $delta = -1 ) { - $total = (int) @$_POST['_total']; - $per_page = (int) @$_POST['_per_page']; - $page = (int) @$_POST['_page']; - $url = esc_url_raw( @$_POST['_url'] ); + $total = isset( $_POST['_total'] ) ? (int) $_POST['_total'] : 0; + $per_page = isset( $_POST['_per_page'] ) ? (int) $_POST['_per_page'] : 0; + $page = isset( $_POST['_page'] ) ? (int) $_POST['_page'] : 0; + $url = isset( $_POST['_url'] ) ? esc_url_raw( $_POST['_url'] ) : ''; + // JS didn't send us everything we need to know. Just die with success message if ( !$total || !$per_page || !$page || !$url ) wp_die( time() ); @@ -546,7 +575,7 @@ function wp_ajax_dim_comment() { wp_die( -1 ); $current = wp_get_comment_status( $comment->comment_ID ); - if ( $_POST['new'] == $current ) + if ( isset( $_POST['new'] ) && $_POST['new'] == $current ) wp_die( time() ); check_ajax_referer( "approve-comment_$id" ); @@ -694,9 +723,18 @@ function wp_ajax_get_comments( $action ) { check_ajax_referer( $action ); + if ( empty( $post_id ) && ! empty( $_REQUEST['p'] ) ) { + $id = absint( $_REQUEST['p'] ); + if ( ! empty( $id ) ) + $post_id = $id; + } + + if ( empty( $post_id ) ) + wp_die( -1 ); + $wp_list_table = _get_list_table( 'WP_Post_Comments_List_Table', array( 'screen' => 'edit-comments' ) ); - if ( !current_user_can( 'edit_post', $post_id ) ) + if ( ! current_user_can( 'edit_post', $post_id ) ) wp_die( -1 ); $wp_list_table->prepare_items(); @@ -750,6 +788,9 @@ function wp_ajax_replyto_comment( $action ) { $comment_author_url = wp_slash( $user->user_url ); $comment_content = trim($_POST['content']); if ( current_user_can( 'unfiltered_html' ) ) { + if ( ! isset( $_POST['_wp_unfiltered_html_comment'] ) ) + $_POST['_wp_unfiltered_html_comment'] = ''; + 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 @@ -762,7 +803,9 @@ function wp_ajax_replyto_comment( $action ) { if ( '' == $comment_content ) wp_die( __( 'ERROR: please type a comment.' ) ); - $comment_parent = absint($_POST['comment_ID']); + $comment_parent = 0; + if ( isset( $_POST['comment_ID'] ) ) + $comment_parent = absint( $_POST['comment_ID'] ); $comment_auto_approved = false; $commentdata = compact('comment_post_ID', 'comment_author', 'comment_author_email', 'comment_author_url', 'comment_content', 'comment_type', 'comment_parent', 'user_ID'); @@ -783,19 +826,18 @@ function wp_ajax_replyto_comment( $action ) { $position = ( isset($_POST['position']) && (int) $_POST['position'] ) ? (int) $_POST['position'] : '-1'; ob_start(); - if ( 'dashboard' == $_REQUEST['mode'] ) { - require_once( ABSPATH . 'wp-admin/includes/dashboard.php' ); - _wp_dashboard_recent_comments_row( $comment ); + if ( isset( $_REQUEST['mode'] ) && 'dashboard' == $_REQUEST['mode'] ) { + require_once( ABSPATH . 'wp-admin/includes/dashboard.php' ); + _wp_dashboard_recent_comments_row( $comment ); + } else { + if ( isset( $_REQUEST['mode'] ) && 'single' == $_REQUEST['mode'] ) { + $wp_list_table = _get_list_table('WP_Post_Comments_List_Table', array( 'screen' => 'edit-comments' ) ); } else { - if ( 'single' == $_REQUEST['mode'] ) { - $wp_list_table = _get_list_table('WP_Post_Comments_List_Table', array( 'screen' => 'edit-comments' ) ); - } else { - $wp_list_table = _get_list_table('WP_Comments_List_Table', array( 'screen' => 'edit-comments' ) ); - } - $wp_list_table->single_row( $comment ); + $wp_list_table = _get_list_table('WP_Comments_List_Table', array( 'screen' => 'edit-comments' ) ); } - $comment_list_item = ob_get_contents(); - ob_end_clean(); + $wp_list_table->single_row( $comment ); + } + $comment_list_item = ob_get_clean(); $response = array( 'what' => 'comment', @@ -824,7 +866,8 @@ function wp_ajax_edit_comment() { if ( '' == $_POST['content'] ) wp_die( __( 'ERROR: please type a comment.' ) ); - $_POST['comment_status'] = $_POST['status']; + if ( isset( $_POST['status'] ) ) + $_POST['comment_status'] = $_POST['status']; edit_comment(); $position = ( isset($_POST['position']) && (int) $_POST['position']) ? (int) $_POST['position'] : '-1'; @@ -834,11 +877,12 @@ function wp_ajax_edit_comment() { $wp_list_table = _get_list_table( $checkbox ? 'WP_Comments_List_Table' : 'WP_Post_Comments_List_Table', array( 'screen' => 'edit-comments' ) ); $comment = get_comment( $comment_id ); + if ( empty( $comment->comment_ID ) ) + wp_die( -1 ); ob_start(); - $wp_list_table->single_row( $comment ); - $comment_list_item = ob_get_contents(); - ob_end_clean(); + $wp_list_table->single_row( $comment ); + $comment_list_item = ob_get_clean(); $x = new WP_Ajax_Response(); @@ -905,6 +949,14 @@ function wp_ajax_add_menu_item() { } } + /** + * Filter the Walker class used when adding nav menu items. + * + * @since 3.4.0 + * + * @param string $class The walker class to use. Default 'Walker_Nav_Menu_Edit'. + * @param int $menu_id The menu id, derived from $_POST['menu']. + */ $walker_class_name = apply_filters( 'wp_edit_nav_menu_walker', 'Walker_Nav_Menu_Edit', $_POST['menu'] ); if ( ! class_exists( $walker_class_name ) ) @@ -1046,9 +1098,10 @@ function wp_ajax_autosave() { check_ajax_referer( 'autosave', 'autosavenonce' ); - $_POST['post_category'] = explode(",", $_POST['catslist']); - if ( $_POST['post_type'] == 'page' || empty($_POST['post_category']) ) - unset($_POST['post_category']); + if ( ! empty( $_POST['catslist'] ) ) + $_POST['post_category'] = explode( ',', $_POST['catslist'] ); + if ( $_POST['post_type'] == 'page' || empty( $_POST['post_category'] ) ) + unset( $_POST['post_category'] ); $data = ''; $supplemental = array(); @@ -1056,18 +1109,16 @@ function wp_ajax_autosave() { $post_id = (int) $_POST['post_id']; $_POST['ID'] = $_POST['post_ID'] = $post_id; - $post = get_post($post_id); + $post = get_post( $post_id ); + if ( empty( $post->ID ) || ! current_user_can( 'edit_post', $post->ID ) ) + wp_die( __( 'You are not allowed to edit this post.' ) ); + + if ( 'page' == $post->post_type && ! current_user_can( 'edit_page', $post->ID ) ) + wp_die( __( 'You are not allowed to edit this page.' ) ); + if ( 'auto-draft' == $post->post_status ) $_POST['post_status'] = 'draft'; - if ( 'page' == $post->post_type ) { - if ( !current_user_can('edit_page', $post->ID) ) - wp_die( __( 'You are not allowed to edit this page.' ) ); - } else { - if ( !current_user_can('edit_post', $post->ID) ) - wp_die( __( 'You are not allowed to edit this post.' ) ); - } - if ( ! empty( $_POST['autosave'] ) ) { if ( ! wp_check_post_lock( $post->ID ) && get_current_user_id() == $post->post_author && ( 'auto-draft' == $post->post_status || 'draft' == $post->post_status ) ) { // Drafts and auto-drafts are just overwritten by autosave for the same user if the post is not locked @@ -1177,7 +1228,15 @@ function wp_ajax_menu_get_metabox() { } if ( ! empty( $_POST['item-object'] ) && isset( $items[$_POST['item-object']] ) ) { - $item = apply_filters( 'nav_menu_meta_box_object', $items[ $_POST['item-object'] ] ); + $menus_meta_box_object = $items[ $_POST['item-object'] ]; + /** + * Filter a nav menu meta box object. + * + * @since 3.0.0 + * + * @param object $menus_meta_box_object A nav menu meta box object, such as Page, Post, Category, Tag, etc. + */ + $item = apply_filters( 'nav_menu_meta_box_object', $menus_meta_box_object ); ob_start(); call_user_func_array($callback, array( null, @@ -1313,7 +1372,7 @@ function wp_ajax_inline_save() { $data['excerpt'] = $post['post_excerpt']; // rename - $data['user_ID'] = $GLOBALS['user_ID']; + $data['user_ID'] = get_current_user_id(); if ( isset($data['post_parent']) ) $data['parent_id'] = $data['post_parent']; @@ -1506,9 +1565,26 @@ function wp_ajax_save_widget() { unset( $_POST['savewidgets'], $_POST['action'] ); - do_action('load-widgets.php'); - do_action('widgets.php'); - do_action('sidebar_admin_setup'); + /** + * Fires early when editing the widgets displayed in sidebars. + * + * @since 2.8.0 + */ + do_action( 'load-widgets.php' ); + + /** + * Fires early when editing the widgets displayed in sidebars. + * + * @since 2.8.0 + */ + do_action( 'widgets.php' ); + + /** + * Fires early when editing the widgets displayed in sidebars. + * + * @since 2.2.0 + */ + do_action( 'sidebar_admin_setup' ); $id_base = $_POST['id_base']; $widget_id = $_POST['widget-id']; @@ -1762,6 +1838,13 @@ function wp_ajax_wp_remove_post_lock() { if ( $active_lock[1] != get_current_user_id() ) wp_die( 0 ); + /** + * Filter the post lock window duration. + * + * @since 3.3.0 + * + * @param int $interval The interval in seconds the post lock duration should last, plus 5 seconds. Default 120. + */ $new_lock = ( time() - apply_filters( 'wp_check_post_lock_window', 120 ) + 5 ) . ':' . $active_lock[1]; update_post_meta( $post_id, '_edit_lock', $new_lock, implode( ':', $active_lock ) ); wp_die( 1 ); @@ -1833,6 +1916,14 @@ function wp_ajax_query_attachments() { if ( current_user_can( get_post_type_object( 'attachment' )->cap->read_private_posts ) ) $query['post_status'] .= ',private'; + /** + * Filter the arguments passed to WP_Query during an AJAX call for querying attachments. + * + * @since 3.7.0 + * + * @param array $query An array of query variables. @see WP_Query::parse_query() + */ + $query = apply_filters( 'ajax_query_attachments_args', $query ); $query = new WP_Query( $query ); $posts = array_map( 'wp_prepare_attachment_for_js', $query->posts ); @@ -1911,6 +2002,7 @@ function wp_ajax_save_attachment_compat() { if ( 'attachment' != $post['post_type'] ) wp_send_json_error(); + /** This filter is documented in wp-admin/includes/media.php */ $post = apply_filters( 'attachment_fields_to_save', $post, $attachment_data ); if ( isset( $post['errors'] ) ) { @@ -2013,6 +2105,7 @@ function wp_ajax_send_attachment_to_editor() { $html = stripslashes_deep( $_POST['html'] ); } + /** This filter is documented in wp-admin/includes/media.php */ $html = apply_filters( 'media_send_to_editor', $html, $id, $attachment ); wp_send_json_success( $html ); @@ -2053,6 +2146,7 @@ function wp_ajax_send_link_to_editor() { && ( 'audio' == $ext_type || 'video' == $ext_type ) ) $type = $ext_type; + /** This filter is documented in wp-admin/includes/media.php */ $html = apply_filters( $type . '_send_to_editor_url', $html, $src, $title ); wp_send_json_success( $html ); @@ -2083,12 +2177,39 @@ function wp_ajax_heartbeat() { if ( ! empty($_POST['data']) ) { $data = (array) $_POST['data']; + + /** + * Filter the Heartbeat response received. + * + * @since 3.6.0 + * + * @param array|object $response The Heartbeat response object or array. + * @param array $data The $_POST data sent. + * @param string $screen_id The screen id. + */ $response = apply_filters( 'heartbeat_received', $response, $data, $screen_id ); } + /** + * Filter the Heartbeat response sent. + * + * @since 3.6.0 + * + * @param array|object $response The Heartbeat response object or array. + * @param string $screen_id The screen id. + */ $response = apply_filters( 'heartbeat_send', $response, $screen_id ); - // Allow the transport to be replaced with long-polling easily + /** + * Fires when Heartbeat ticks in logged-in environments. + * + * Allows the transport to be easily replaced with long-polling. + * + * @since 3.6.0 + * + * @param array|object $response The Heartbeat response object or array. + * @param string $screen_id The screen id. + */ do_action( 'heartbeat_tick', $response, $screen_id ); // Send the current time according to the server diff --git a/wp-admin/includes/bookmark.php b/wp-admin/includes/bookmark.php index 0897fdc5..33785964 100644 --- a/wp-admin/includes/bookmark.php +++ b/wp-admin/includes/bookmark.php @@ -70,7 +70,7 @@ function get_default_link_to_edit() { } /** - * Delete link specified from database + * Delete link specified from database. * * @since 2.0.0 * @@ -79,13 +79,25 @@ function get_default_link_to_edit() { */ function wp_delete_link( $link_id ) { global $wpdb; - + /** + * Fires before a link is deleted. + * + * @since 2.0.0 + * + * @param int $link_id ID of the link to delete. + */ do_action( 'delete_link', $link_id ); wp_delete_object_term_relationships( $link_id, 'link_category' ); $wpdb->delete( $wpdb->links, array( 'link_id' => $link_id ) ); - + /** + * Fires after a link has been deleted. + * + * @since 2.2.0 + * + * @param int $link_id ID of the deleted link. + */ do_action( 'deleted_link', $link_id ); clean_bookmark_cache( $link_id ); @@ -206,11 +218,25 @@ function wp_insert_link( $linkdata, $wp_error = false ) { wp_set_link_cats( $link_id, $link_category ); - if ( $update ) + if ( $update ) { + /** + * Fires after a link was updated in the database. + * + * @since 2.0.0 + * + * @param int $link_id ID of the link that was updated. + */ do_action( 'edit_link', $link_id ); - else + } else { + /** + * Fires after a link was added to the database. + * + * @since 2.0.0 + * + * @param int $link_id ID of the link that was added. + */ do_action( 'add_link', $link_id ); - + } clean_bookmark_cache( $link_id ); return $link_id; diff --git a/wp-admin/includes/class-wp-comments-list-table.php b/wp-admin/includes/class-wp-comments-list-table.php index 23f3169d..345bda2f 100644 --- a/wp-admin/includes/class-wp-comments-list-table.php +++ b/wp-admin/includes/class-wp-comments-list-table.php @@ -52,6 +52,8 @@ class WP_Comments_List_Table extends WP_List_Table { $search = ( isset( $_REQUEST['s'] ) ) ? $_REQUEST['s'] : ''; + $post_type = ( isset( $_REQUEST['post_type'] ) ) ? sanitize_key( $_REQUEST['post_type'] ) : ''; + $user_id = ( isset( $_REQUEST['user_id'] ) ) ? $_REQUEST['user_id'] : ''; $orderby = ( isset( $_REQUEST['orderby'] ) ) ? $_REQUEST['orderby'] : ''; @@ -96,6 +98,7 @@ class WP_Comments_List_Table extends WP_List_Table { 'type' => $comment_type, 'orderby' => $orderby, 'order' => $order, + 'post_type' => $post_type, ); $_comments = get_comments( $args ); diff --git a/wp-admin/includes/class-wp-filesystem-base.php b/wp-admin/includes/class-wp-filesystem-base.php index d64fe4bb..c471b54f 100644 --- a/wp-admin/includes/class-wp-filesystem-base.php +++ b/wp-admin/includes/class-wp-filesystem-base.php @@ -1,6 +1,6 @@ find_folder(ABSPATH); - //Perhaps the FTP folder is rooted at the WordPress install, Check for wp-includes folder in root, Could have some false positives, but rare. + // Perhaps the FTP folder is rooted at the WordPress install, Check for wp-includes folder in root, Could have some false positives, but rare. if ( ! $folder && $this->is_dir('/wp-includes') ) $folder = '/'; return $folder; } + /** - * Returns the path on the remote filesystem of WP_CONTENT_DIR + * Return the path on the remote filesystem of WP_CONTENT_DIR. * - * @since 2.7 * @access public + * @since 2.7.0 + * * @return string The location of the remote path. */ function wp_content_dir() { return $this->find_folder(WP_CONTENT_DIR); } + /** - * Returns the path on the remote filesystem of WP_PLUGIN_DIR + * Return the path on the remote filesystem of WP_PLUGIN_DIR. * - * @since 2.7 * @access public + * @since 2.7.0 * * @return string The location of the remote path. */ function wp_plugins_dir() { return $this->find_folder(WP_PLUGIN_DIR); } + /** - * Returns the path on the remote filesystem of the Themes Directory + * Return the path on the remote filesystem of the Themes Directory. * - * @since 2.7 * @access public + * @since 2.7.0 * + * @param string $theme The Theme stylesheet or template for the directory. * @return string The location of the remote path. */ - function wp_themes_dir() { - return $this->wp_content_dir() . 'themes/'; + function wp_themes_dir( $theme = false ) { + $theme_root = get_theme_root( $theme ); + + // Account for relative theme roots + if ( '/themes' == $theme_root || ! is_dir( $theme_root ) ) + $theme_root = WP_CONTENT_DIR . $theme_root; + + return $this->find_folder( $theme_root ); } + /** - * Returns the path on the remote filesystem of WP_LANG_DIR + * Return the path on the remote filesystem of WP_LANG_DIR. * - * @since 3.2.0 * @access public + * @since 3.2.0 * * @return string The location of the remote path. */ @@ -97,73 +116,109 @@ class WP_Filesystem_Base { } /** - * Locates a folder on the remote filesystem. - * - * Deprecated; use WP_Filesystem::abspath() or WP_Filesystem::wp_*_dir() methods instead. + * Locate a folder on the remote filesystem. * - * @since 2.5 - * @deprecated 2.7 * @access public + * @since 2.5.0 + * @deprecated 2.7.0 use WP_Filesystem::abspath() or WP_Filesystem::wp_*_dir() instead. + * @see WP_Filesystem::abspath() + * @see WP_Filesystem::wp_content_dir() + * @see WP_Filesystem::wp_plugins_dir() + * @see WP_Filesystem::wp_themes_dir() + * @see WP_Filesystem::wp_lang_dir() * - * @param string $base The folder to start searching from - * @param bool $echo True to display debug information + * @param string $base The folder to start searching from. + * @param bool $echo True to display debug information. + * Default false. * @return string The location of the remote path. */ - function find_base_dir($base = '.', $echo = false) { + function find_base_dir( $base = '.', $echo = false ) { _deprecated_function(__FUNCTION__, '2.7', 'WP_Filesystem::abspath() or WP_Filesystem::wp_*_dir()' ); $this->verbose = $echo; return $this->abspath(); } + /** - * Locates a folder on the remote filesystem. - * - * Deprecated; use WP_Filesystem::abspath() or WP_Filesystem::wp_*_dir() methods instead. + * Locate a folder on the remote filesystem. * - * @since 2.5 - * @deprecated 2.7 * @access public + * @since 2.5.0 + * @deprecated 2.7.0 use WP_Filesystem::abspath() or WP_Filesystem::wp_*_dir() methods instead. + * @see WP_Filesystem::abspath() + * @see WP_Filesystem::wp_content_dir() + * @see WP_Filesystem::wp_plugins_dir() + * @see WP_Filesystem::wp_themes_dir() + * @see WP_Filesystem::wp_lang_dir() * - * @param string $base The folder to start searching from - * @param bool $echo True to display debug information + * @param string $base The folder to start searching from. + * @param bool $echo True to display debug information. * @return string The location of the remote path. */ - function get_base_dir($base = '.', $echo = false) { + function get_base_dir( $base = '.', $echo = false ) { _deprecated_function(__FUNCTION__, '2.7', 'WP_Filesystem::abspath() or WP_Filesystem::wp_*_dir()' ); $this->verbose = $echo; return $this->abspath(); } /** - * Locates a folder on the remote filesystem. + * Locate a folder on the remote filesystem. * - * Assumes that on Windows systems, Stripping off the Drive letter is OK - * Sanitizes \\ to / in windows filepaths. + * Assumes that on Windows systems, Stripping off the Drive + * letter is OK Sanitizes \\ to / in windows filepaths. * - * @since 2.7 * @access public + * @since 2.7.0 * - * @param string $folder the folder to locate + * @param string $folder the folder to locate. * @return string The location of the remote path. */ - function find_folder($folder) { + function find_folder( $folder ) { + + if ( isset( $this->cache[ $folder ] ) ) + return $this->cache[ $folder ]; + + if ( stripos($this->method, 'ftp') !== false ) { + $constant_overrides = array( + 'FTP_BASE' => ABSPATH, + 'FTP_CONTENT_DIR' => WP_CONTENT_DIR, + 'FTP_PLUGIN_DIR' => WP_PLUGIN_DIR, + 'FTP_LANG_DIR' => WP_LANG_DIR + ); + + // Direct matches ( folder = CONSTANT/ ) + foreach ( $constant_overrides as $constant => $dir ) { + if ( ! defined( $constant ) ) + continue; + if ( $folder === $dir ) + return trailingslashit( constant( $constant ) ); + } + + // Prefix Matches ( folder = CONSTANT/subdir ) + foreach ( $constant_overrides as $constant => $dir ) { + if ( ! defined( $constant ) ) + continue; + if ( 0 === stripos( $folder, $dir ) ) { // $folder starts with $dir + $potential_folder = preg_replace( '#^' . preg_quote( $dir, '#' ) . '/#i', trailingslashit( constant( $constant ) ), $folder ); + $potential_folder = trailingslashit( $potential_folder ); - if ( strpos($this->method, 'ftp') !== false ) { - $constant_overrides = array( 'FTP_BASE' => ABSPATH, 'FTP_CONTENT_DIR' => WP_CONTENT_DIR, 'FTP_PLUGIN_DIR' => WP_PLUGIN_DIR, 'FTP_LANG_DIR' => WP_LANG_DIR ); - foreach ( $constant_overrides as $constant => $dir ) - if ( defined($constant) && $folder === $dir ) - return trailingslashit(constant($constant)); + if ( $this->is_dir( $potential_folder ) ) { + $this->cache[ $folder ] = $potential_folder; + return $potential_folder; + } + } + } } elseif ( 'direct' == $this->method ) { - $folder = str_replace('\\', '/', $folder); //Windows path sanitisation + $folder = str_replace('\\', '/', $folder); // Windows path sanitisation return trailingslashit($folder); } - $folder = preg_replace('|^([a-z]{1}):|i', '', $folder); //Strip out windows drive letter if it's there. - $folder = str_replace('\\', '/', $folder); //Windows path sanitisation + $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 ( $this->exists($folder) ) { //Folder exists at that absolute path. + if ( $this->exists($folder) ) { // Folder exists at that absolute path. $folder = trailingslashit($folder); $this->cache[ $folder ] = $folder; return $folder; @@ -174,43 +229,47 @@ class WP_Filesystem_Base { } /** - * Locates a folder on the remote filesystem. + * Locate a folder on the remote filesystem. * - * Expects Windows sanitized path + * Expects Windows sanitized path. * - * @since 2.7 * @access private + * @since 2.7.0 * - * @param string $folder the folder to locate - * @param string $base the folder to start searching from - * @param bool $loop if the function has recursed, Internal use only + * @param string $folder The folder to locate. + * @param string $base The folder to start searching from. + * @param bool $loop If the function has recursed, Internal use only. * @return string The location of the remote path. */ - function search_for_folder($folder, $base = '.', $loop = false ) { + function search_for_folder( $folder, $base = '.', $loop = false ) { if ( empty( $base ) || '.' == $base ) $base = trailingslashit($this->cwd()); $folder = untrailingslashit($folder); + if ( $this->verbose ) + printf( "\n" . __('Looking for %1$s in %2$s') . "
\n", $folder, $base ); + $folder_parts = explode('/', $folder); - $last_index = array_pop( array_keys( $folder_parts ) ); + $folder_part_keys = array_keys( $folder_parts ); + $last_index = array_pop( $folder_part_keys ); $last_path = $folder_parts[ $last_index ]; $files = $this->dirlist( $base ); foreach ( $folder_parts as $index => $key ) { if ( $index == $last_index ) - continue; //We want this to be caught by the next code block. + continue; // We want this to be caught by the next code block. - //Working from /home/ to /user/ to /wordpress/ see if that file exists within the current folder, + // Working from /home/ to /user/ to /wordpress/ see if that file exists within the current folder, // If it's found, change into it and follow through looking for it. // If it cant find WordPress down that route, it'll continue onto the next folder level, and see if that matches, and so on. // If it reaches the end, and still cant find it, it'll return false for the entire function. if ( isset($files[ $key ]) ){ - //Lets try that folder: + // Lets try that folder: $newdir = trailingslashit(path_join($base, $key)); if ( $this->verbose ) - printf( __('Changing to %s') . '
', $newdir ); + printf( "\n" . __('Changing to %s') . "
\n", $newdir ); // only search for the remaining path tokens in the directory, not the full path again $newfolder = implode( '/', array_slice( $folder_parts, $index + 1 ) ); if ( $ret = $this->search_for_folder( $newfolder, $newdir, $loop) ) @@ -218,32 +277,38 @@ class WP_Filesystem_Base { } } - //Only check this as a last resort, to prevent locating the incorrect install. All above procedures will fail quickly if this is the right branch to take. + // Only check this as a last resort, to prevent locating the incorrect install. All above procedures will fail quickly if this is the right branch to take. if (isset( $files[ $last_path ] ) ) { if ( $this->verbose ) - printf( __('Found %s') . '
', $base . $last_path ); + printf( "\n" . __('Found %s') . "
\n", $base . $last_path ); return trailingslashit($base . $last_path); } - if ( $loop ) - return false; //Prevent this function from looping again. - //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); + + // Prevent this function from looping again. + // No need to proceed if we've just searched in / + if ( $loop || '/' == $base ) + return false; + + // 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/.... + return $this->search_for_folder( $folder, '/', true ); } /** - * Returns the *nix style file permissions for a file + * Return the *nix-style file permissions for a file. * - * From the PHP documentation page for fileperms() + * From the PHP documentation page for fileperms(). * * @link http://docs.php.net/fileperms - * @since 2.5 + * * @access public + * @since 2.5.0 * - * @param string $file string filename - * @return string *nix style representation of permissions + * @param string $file String filename. + * @return string The *nix-style representation of permissions. */ - function gethchmod($file){ + function gethchmod( $file ){ $perms = $this->getchmod($file); if (($perms & 0xC000) == 0xC000) // Socket $info = 's'; @@ -286,19 +351,20 @@ class WP_Filesystem_Base { } /** - * Converts *nix style file permissions to a octal number. + * Convert *nix-style file permissions to a octal number. * * Converts '-rw-r--r--' to 0644 * From "info at rvgate dot nl"'s comment on the PHP documentation for chmod() * * @link http://docs.php.net/manual/en/function.chmod.php#49614 - * @since 2.5 + * * @access public + * @since 2.5.0 * - * @param string $mode string *nix style file permission + * @param string $mode string The *nix-style file permission. * @return int octal representation */ - function getnumchmodfromh($mode) { + function getnumchmodfromh( $mode ) { $realmode = ''; $legal = array('', 'w', 'r', 'x', '-'); $attarray = preg_split('//', $mode); @@ -319,15 +385,379 @@ class WP_Filesystem_Base { } /** - * Determines if the string provided contains binary characters. + * Determine if the string provided contains binary characters. * - * @since 2.7 * @access private + * @since 2.7.0 * - * @param string $text String to test against - * @return bool true if string is binary, false otherwise + * @param string $text String to test against. + * @return bool true if string is binary, false otherwise. */ function is_binary( $text ) { - return (bool) preg_match('|[^\x20-\x7E]|', $text); //chr(32)..chr(127) + return (bool) preg_match( '|[^\x20-\x7E]|', $text ); // chr(32)..chr(127) + } + + /** + * Change the ownership of a file / folder. + * + * Default behavior is to do nothing, override this in your subclass, if desired. + * + * @since 2.5.0 + * + * @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. + * @return bool Returns true on success or false on failure. + */ + function chown( $file, $owner, $recursive = false ) { + return false; + } + + /** + * Connect filesystem. + * + * @since 2.5.0 + * + * @return bool True on success or false on failure (always true for WP_Filesystem_Direct). + */ + function connect() { + return true; + } + + /** + * Read entire file into a string. + * + * @since 2.5.0 + * + * @param string $file Name of the file to read. + * @return string|bool Returns the read data or false on failure. + */ + function get_contents( $file ) { + return false; } -} + + /** + * Read entire file into an array. + * + * @since 2.5.0 + * + * @param string $file Path to the file. + * @return array|bool the file contents in an array or false on failure. + */ + function get_contents_array( $file ) { + return false; + } + + /** + * Write a string to a file. + * + * @since 2.5.0 + * + * @param string $file Remote path to the file where to write the data. + * @param string $contents The data to write. + * @param int $mode Optional. The file permissions as octal number, usually 0644. + * @return bool False on failure. + */ + function put_contents( $file, $contents, $mode = false ) { + return false; + } + + /** + * Get the current working directory. + * + * @since 2.5.0 + * + * @return string|bool The current working directory on success, or false on failure. + */ + function cwd() { + return false; + } + + /** + * Change current directory. + * + * @since 2.5.0 + * + * @param string $dir The new current directory. + * @return bool Returns true on success or false on failure. + */ + function chdir( $dir ) { + return false; + } + + /** + * Change the file group. + * + * @since 2.5.0 + * + * @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 recursively. Defaults to False. + * @return bool Returns true on success or false on failure. + */ + function chgrp( $file, $group, $recursive = false ) { + return false; + } + + /** + * Change filesystem permissions. + * + * @since 2.5.0 + * + * @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 recursively. Defaults to False. + * @return bool Returns true on success or false on failure. + */ + function chmod( $file, $mode = false, $recursive = false ) { + return false; + } + + /** + * Get the file owner. + * + * @since 2.5.0 + * + * @param string $file Path to the file. + * @return string|bool Username of the user or false on error. + */ + function owner( $file ) { + return false; + } + + /** + * Get the file's group. + * + * @since 2.5.0 + * + * @param string $file Path to the file. + * @return string|bool The group or false on error. + */ + function group( $file ) { + return false; + } + + /** + * Copy a file. + * + * @since 2.5.0 + * + * @param string $source Path to the source file. + * @param string $destination Path to the destination file. + * @param bool $overwrite Optional. Whether to overwrite the destination file if it exists. + * Default false. + * @param int $mode Optional. The permissions as octal number, usually 0644 for files, 0755 for dirs. + * Default false. + * @return bool True if file copied successfully, False otherwise. + */ + function copy( $source, $destination, $overwrite = false, $mode = false ) { + return false; + } + + /** + * Move a file. + * + * @since 2.5.0 + * + * @param string $source Path to the source file. + * @param string $destination Path to the destination file. + * @param bool $overwrite Optional. Whether to overwrite the destination file if it exists. + * Default false. + * @return bool True if file copied successfully, False otherwise. + */ + function move( $source, $destination, $overwrite = false ) { + return false; + } + + /** + * Delete a file or directory. + * + * @since 2.5.0 + * + * @param string $file Path to the file. + * @param bool $recursive Optional. If set True changes file group recursively. Defaults to False. + * Default false. + * @param bool $type Type of resource. 'f' for file, 'd' for directory. + * Default false. + * @return bool True if the file or directory was deleted, false on failure. + */ + function delete( $file, $recursive = false, $type = false ) { + return false; + } + + /** + * Check if a file or directory exists. + * + * @since 2.5.0 + * + * @param string $file Path to file/directory. + * @return bool Whether $file exists or not. + */ + function exists( $file ) { + return false; + } + + /** + * Check if resource is a file. + * + * @since 2.5.0 + * + * @param string $file File path. + * @return bool Whether $file is a file. + */ + function is_file( $file ) { + return false; + } + + /** + * Check if resource is a directory. + * + * @since 2.5.0 + * + * @param string $path Directory path. + * @return bool Whether $path is a directory. + */ + function is_dir( $path ) { + return false; + } + + /** + * Check if a file is readable. + * + * @since 2.5.0 + * + * @param string $file Path to file. + * @return bool Whether $file is readable. + */ + function is_readable( $file ) { + return false; + } + + /** + * Check if a file or directory is writable. + * + * @since 2.5.0 + * + * @param string $path Path to file/directory. + * @return bool Whether $file is writable. + */ + function is_writable( $file ) { + return false; + } + + /** + * Gets the file's last access time. + * + * @since 2.5.0 + * + * @param string $file Path to file. + * @return int Unix timestamp representing last access time. + */ + function atime( $file ) { + return false; + } + + /** + * Gets the file modification time. + * + * @since 2.5.0 + * + * @param string $file Path to file. + * @return int Unix timestamp representing modification time. + */ + function mtime( $file ) { + return false; + } + + /** + * Gets the file size (in bytes). + * + * @since 2.5.0 + * + * @param string $file Path to file. + * @return int Size of the file in bytes. + */ + function size( $file ) { + return false; + } + + /** + * Set the access and modification times of a file. + * + * Note: If $file doesn't exist, it will be created. + * + * @since 2.5.0 + * + * @param string $file Path to file. + * @param int $time Optional. Modified time to set for file. + * Default 0. + * @param int $atime Optional. Access time to set for file. + * Default 0. + * @return bool Whether operation was successful or not. + */ + function touch( $file, $time = 0, $atime = 0 ) { + return false; + } + + /** + * Create a directory. + * + * @since 2.5.0 + * + * @param string $path Path for new directory. + * @param mixed $chmod Optional. The permissions as octal number, (or False to skip chmod) + * Default false. + * @param mixed $chown Optional. A user name or number (or False to skip chown) + * Default false. + * @param mixed $chgrp Optional. A group name or number (or False to skip chgrp). + * Default false. + * @return bool False if directory cannot be created, true otherwise. + */ + function mkdir( $path, $chmod = false, $chown = false, $chgrp = false ) { + return false; + } + + /** + * Delete a directory. + * + * @since 2.5.0 + * + * @param string $path Path to directory. + * @param bool $recursive Optional. Whether to recursively remove files/directories. + * Default false. + * @return bool Whether directory is deleted successfully or not. + */ + function rmdir( $path, $recursive = false ) { + return false; + } + + /** + * Get details for files in a directory or a specific file. + * + * @since 2.5.0 + * + * @param string $path Path to directory or file. + * @param bool $include_hidden Optional. Whether to include details of hidden ("." prefixed) files. + * Default true. + * @param bool $recursive Optional. Whether to recursively include file details in nested directories. + * Default false. + * @return array|bool { + * Array of files. False if unable to list directory contents. + * + * @type string 'name' Name of the file/directory. + * @type string 'perms' *nix representation of permissions. + * @type int 'permsn' Octal representation of permissions. + * @type string 'owner' Owner name or ID. + * @type int 'size' Size of file in bytes. + * @type int 'lastmodunix' Last modified unix timestamp. + * @type mixed 'lastmod' Last modified month (3 letter) and day (without leading 0). + * @type int 'time' Last modified time. + * @type string 'type' Type of resource. 'f' for file, 'd' for directory. + * @type mixed 'files' If a directory and $recursive is true, contains another array of files. + * } + */ + function dirlist( $path, $include_hidden = true, $recursive = false ) { + return false; + } + +} // WP_Filesystem_Base diff --git a/wp-admin/includes/class-wp-filesystem-direct.php b/wp-admin/includes/class-wp-filesystem-direct.php index e25c9ef8..d07305bc 100644 --- a/wp-admin/includes/class-wp-filesystem-direct.php +++ b/wp-admin/includes/class-wp-filesystem-direct.php @@ -15,7 +15,7 @@ * @uses WP_Filesystem_Base Extends class */ class WP_Filesystem_Direct extends WP_Filesystem_Base { - var $errors = null; + /** * constructor * @@ -25,14 +25,7 @@ class WP_Filesystem_Direct extends WP_Filesystem_Base { $this->method = 'direct'; $this->errors = new WP_Error(); } - /** - * connect filesystem. - * - * @return bool Returns true on success or false on failure (always true for WP_Filesystem_Direct). - */ - function connect() { - return true; - } + /** * Reads entire file into a string * @@ -42,6 +35,7 @@ class WP_Filesystem_Direct extends WP_Filesystem_Base { function get_contents($file) { return @file_get_contents($file); } + /** * Reads entire file into an array * @@ -51,6 +45,7 @@ class WP_Filesystem_Direct extends WP_Filesystem_Base { function get_contents_array($file) { return @file($file); } + /** * Write a string to a file * @@ -59,14 +54,29 @@ class WP_Filesystem_Direct extends WP_Filesystem_Base { * @param int $mode (optional) The file permissions as octal number, usually 0644. * @return bool False upon failure. */ - function put_contents($file, $contents, $mode = false ) { - if ( ! ($fp = @fopen($file, 'w')) ) + function put_contents( $file, $contents, $mode = false ) { + $fp = @fopen( $file, 'wb' ); + if ( ! $fp ) + return false; + + mbstring_binary_safe_encoding(); + + $data_length = strlen( $contents ); + + $bytes_written = fwrite( $fp, $contents ); + + reset_mbstring_encoding(); + + fclose( $fp ); + + if ( $data_length !== $bytes_written ) return false; - @fwrite($fp, $contents); - @fclose($fp); - $this->chmod($file, $mode); + + $this->chmod( $file, $mode ); + return true; } + /** * Gets the current working directory * @@ -75,6 +85,7 @@ class WP_Filesystem_Direct extends WP_Filesystem_Base { function cwd() { return @getcwd(); } + /** * Change directory * @@ -84,6 +95,7 @@ class WP_Filesystem_Direct extends WP_Filesystem_Base { function chdir($dir) { return @chdir($dir); } + /** * Changes file group * @@ -99,7 +111,7 @@ class WP_Filesystem_Direct extends WP_Filesystem_Base { return @chgrp($file, $group); if ( ! $this->is_dir($file) ) return @chgrp($file, $group); - //Is a directory, and we want recursive + // Is a directory, and we want recursive $file = trailingslashit($file); $filelist = $this->dirlist($file); foreach ($filelist as $filename) @@ -107,6 +119,7 @@ class WP_Filesystem_Direct extends WP_Filesystem_Base { return true; } + /** * Changes filesystem permissions * @@ -127,7 +140,7 @@ class WP_Filesystem_Direct extends WP_Filesystem_Base { if ( ! $recursive || ! $this->is_dir($file) ) return @chmod($file, $mode); - //Is a directory, and we want recursive + // Is a directory, and we want recursive $file = trailingslashit($file); $filelist = $this->dirlist($file); foreach ( (array)$filelist as $filename => $filemeta) @@ -135,6 +148,7 @@ class WP_Filesystem_Direct extends WP_Filesystem_Base { return true; } + /** * Changes file owner * @@ -150,18 +164,19 @@ class WP_Filesystem_Direct extends WP_Filesystem_Base { return @chown($file, $owner); if ( ! $this->is_dir($file) ) return @chown($file, $owner); - //Is a directory, and we want recursive + // Is a directory, and we want recursive $filelist = $this->dirlist($file); foreach ($filelist as $filename) { $this->chown($file . '/' . $filename, $owner, $recursive); } return true; } + /** * Gets file owner * * @param string $file Path to the file. - * @return string Username of the user. + * @return string|bool Username of the user or false on error. */ function owner($file) { $owneruid = @fileowner($file); @@ -172,6 +187,7 @@ class WP_Filesystem_Direct extends WP_Filesystem_Base { $ownerarray = posix_getpwuid($owneruid); return $ownerarray['name']; } + /** * Gets file permissions * @@ -183,6 +199,7 @@ class WP_Filesystem_Direct extends WP_Filesystem_Base { function getchmod($file) { return substr(decoct(@fileperms($file)),3); } + function group($file) { $gid = @filegroup($file); if ( ! $gid ) @@ -220,27 +237,30 @@ class WP_Filesystem_Direct extends WP_Filesystem_Base { } function delete($file, $recursive = false, $type = false) { - if ( empty($file) ) //Some filesystems report this as /, which can cause non-expected recursive deletion of all files in the filesystem. + if ( empty( $file ) ) // Some filesystems report this as /, which can cause non-expected recursive deletion of all files in the filesystem. return false; - $file = str_replace('\\', '/', $file); //for win32, occasional problems deleting files otherwise + $file = str_replace( '\\', '/', $file ); // for win32, occasional problems deleting files otherwise if ( 'f' == $type || $this->is_file($file) ) return @unlink($file); if ( ! $recursive && $this->is_dir($file) ) return @rmdir($file); - //At this point it's a folder, and we're in recursive mode + // At this point it's a folder, and we're in recursive mode $file = trailingslashit($file); $filelist = $this->dirlist($file, true); $retval = true; - if ( is_array($filelist) ) //false if no files, So check first. - foreach ($filelist as $filename => $fileinfo) + if ( is_array( $filelist ) ) { + foreach ( $filelist as $filename => $fileinfo ) { if ( ! $this->delete($file . $filename, $recursive, $fileinfo['type']) ) $retval = false; + } + } if ( file_exists($file) && ! @rmdir($file) ) $retval = false; + return $retval; } @@ -271,6 +291,7 @@ class WP_Filesystem_Direct extends WP_Filesystem_Base { function mtime($file) { return @filemtime($file); } + function size($file) { return @filesize($file); } diff --git a/wp-admin/includes/class-wp-filesystem-ftpext.php b/wp-admin/includes/class-wp-filesystem-ftpext.php index d0871891..b9e32cdc 100644 --- a/wp-admin/includes/class-wp-filesystem-ftpext.php +++ b/wp-admin/includes/class-wp-filesystem-ftpext.php @@ -23,14 +23,13 @@ class WP_Filesystem_FTPext extends WP_Filesystem_Base { $this->method = 'ftpext'; $this->errors = new WP_Error(); - //Check if possible to use ftp functions. + // Check if possible to use ftp functions. if ( ! extension_loaded('ftp') ) { $this->errors->add('no_ftp_ext', __('The ftp PHP extension is not available')); return false; } - // Set defaults: - //This Class uses the timeout on a per-connection basis, Others use it on a per-action basis. + // This Class uses the timeout on a per-connection basis, Others use it on a per-action basis. if ( ! defined('FS_TIMEOUT') ) define('FS_TIMEOUT', 240); @@ -80,7 +79,7 @@ class WP_Filesystem_FTPext extends WP_Filesystem_Base { return false; } - //Set the Connection to use Passive FTP + // Set the Connection to use Passive FTP @ftp_pasv( $this->link, true ); if ( @ftp_get_option($this->link, FTP_TIMEOUT_SEC) < FS_TIMEOUT ) @ftp_set_option($this->link, FTP_TIMEOUT_SEC, FS_TIMEOUT); @@ -88,20 +87,17 @@ class WP_Filesystem_FTPext extends WP_Filesystem_Base { return true; } - function get_contents($file, $type = '', $resumepos = 0 ) { - if ( empty($type) ) - $type = FTP_BINARY; - + function get_contents( $file ) { $tempfile = wp_tempnam($file); $temp = fopen($tempfile, 'w+'); if ( ! $temp ) return false; - if ( ! @ftp_fget($this->link, $temp, $file, $type, $resumepos) ) + if ( ! @ftp_fget($this->link, $temp, $file, FTP_BINARY ) ) return false; - fseek($temp, 0); //Skip back to the start of the file being written to + fseek( $temp, 0 ); // Skip back to the start of the file being written to $contents = ''; while ( ! feof($temp) ) @@ -111,21 +107,33 @@ class WP_Filesystem_FTPext extends WP_Filesystem_Base { unlink($tempfile); return $contents; } + function get_contents_array($file) { return explode("\n", $this->get_contents($file)); } function put_contents($file, $contents, $mode = false ) { $tempfile = wp_tempnam($file); - $temp = fopen($tempfile, 'w+'); + $temp = fopen( $tempfile, 'wb+' ); if ( ! $temp ) return false; - fwrite($temp, $contents); - fseek($temp, 0); //Skip back to the start of the file being written to + mbstring_binary_safe_encoding(); + + $data_length = strlen( $contents ); + $bytes_written = fwrite( $temp, $contents ); + + reset_mbstring_encoding(); + + if ( $data_length !== $bytes_written ) { + fclose( $temp ); + unlink( $tempfile ); + return false; + } - $type = $this->is_binary($contents) ? FTP_BINARY : FTP_ASCII; - $ret = @ftp_fput($this->link, $file, $temp, $type); + fseek( $temp, 0 ); // Skip back to the start of the file being written to + + $ret = @ftp_fput( $this->link, $file, $temp, FTP_BINARY ); fclose($temp); unlink($tempfile); @@ -134,18 +142,22 @@ class WP_Filesystem_FTPext extends WP_Filesystem_Base { return $ret; } + function cwd() { $cwd = @ftp_pwd($this->link); if ( $cwd ) $cwd = trailingslashit($cwd); return $cwd; } + function chdir($dir) { return @ftp_chdir($this->link, $dir); } + function chgrp($file, $group, $recursive = false ) { return false; } + function chmod($file, $mode = false, $recursive = false) { if ( ! $mode ) { if ( $this->is_file($file) ) @@ -168,29 +180,31 @@ class WP_Filesystem_FTPext extends WP_Filesystem_Base { return (bool)@ftp_site($this->link, sprintf('CHMOD %o %s', $mode, $file)); return (bool)@ftp_chmod($this->link, $mode, $file); } - function chown($file, $owner, $recursive = false ) { - return false; - } + function owner($file) { $dir = $this->dirlist($file); return $dir[$file]['owner']; } + function getchmod($file) { $dir = $this->dirlist($file); return $dir[$file]['permsn']; } + function group($file) { $dir = $this->dirlist($file); return $dir[$file]['group']; } + function copy($source, $destination, $overwrite = false, $mode = false) { if ( ! $overwrite && $this->exists($destination) ) return false; $content = $this->get_contents($source); - if ( false === $content) + if ( false === $content ) return false; return $this->put_contents($destination, $content, $mode); } + function move($source, $destination, $overwrite = false) { return ftp_rename($this->link, $source, $destination); } @@ -214,9 +228,11 @@ class WP_Filesystem_FTPext extends WP_Filesystem_Base { $list = @ftp_nlist($this->link, $file); return !empty($list); //empty list = no file, so invert. } + function is_file($file) { return $this->exists($file) && !$this->is_dir($file); } + function is_dir($path) { $cwd = $this->cwd(); $result = @ftp_chdir($this->link, trailingslashit($path) ); @@ -226,26 +242,31 @@ class WP_Filesystem_FTPext extends WP_Filesystem_Base { } return false; } + function is_readable($file) { - //Get dir list, Check if the file is readable by the current user?? return true; } + function is_writable($file) { - //Get dir list, Check if the file is writable by the current user?? return true; } + function atime($file) { return false; } + function mtime($file) { return ftp_mdtm($this->link, $file); } + function size($file) { return ftp_size($this->link, $file); } + function touch($file, $time = 0, $atime = 0) { return false; } + function mkdir($path, $chmod = false, $chown = false, $chgrp = false) { $path = untrailingslashit($path); if ( empty($path) ) @@ -260,6 +281,7 @@ class WP_Filesystem_FTPext extends WP_Filesystem_Base { $this->chgrp($path, $chgrp); return true; } + function rmdir($path, $recursive = false) { return $this->delete($path, $recursive); } diff --git a/wp-admin/includes/class-wp-filesystem-ftpsockets.php b/wp-admin/includes/class-wp-filesystem-ftpsockets.php index 728385b7..817dd08e 100644 --- a/wp-admin/includes/class-wp-filesystem-ftpsockets.php +++ b/wp-admin/includes/class-wp-filesystem-ftpsockets.php @@ -23,12 +23,11 @@ class WP_Filesystem_ftpsockets extends WP_Filesystem_Base { $this->method = 'ftpsockets'; $this->errors = new WP_Error(); - //Check if possible to use ftp functions. + // Check if possible to use ftp functions. if ( ! @include_once ABSPATH . 'wp-admin/includes/class-ftp.php' ) return false; $this->ftp = new ftp(); - //Set defaults: if ( empty($opt['port']) ) $this->options['port'] = 21; else @@ -75,32 +74,35 @@ class WP_Filesystem_ftpsockets extends WP_Filesystem_Base { return false; } - $this->ftp->SetType(FTP_AUTOASCII); - $this->ftp->Passive(true); - $this->ftp->setTimeout(FS_TIMEOUT); + $this->ftp->SetType( FTP_BINARY ); + $this->ftp->Passive( true ); + $this->ftp->setTimeout( FS_TIMEOUT ); return true; } - function get_contents($file, $type = '', $resumepos = 0) { + function get_contents( $file ) { if ( ! $this->exists($file) ) return false; - if ( empty($type) ) - $type = FTP_AUTOASCII; - $this->ftp->SetType($type); - $temp = wp_tempnam( $file ); if ( ! $temphandle = fopen($temp, 'w+') ) return false; + mbstring_binary_safe_encoding(); + if ( ! $this->ftp->fget($temphandle, $file) ) { fclose($temphandle); unlink($temp); - return ''; //Blank document, File does exist, It's just blank. + + reset_mbstring_encoding(); + + return ''; // Blank document, File does exist, It's just blank. } - fseek($temphandle, 0); //Skip back to the start of the file being written to + reset_mbstring_encoding(); + + fseek( $temphandle, 0 ); // Skip back to the start of the file being written to $contents = ''; while ( ! feof($temphandle) ) @@ -122,14 +124,25 @@ class WP_Filesystem_ftpsockets extends WP_Filesystem_Base { return false; } - fwrite($temphandle, $contents); - fseek($temphandle, 0); //Skip back to the start of the file being written to + // The FTP class uses string functions internally during file download/upload + mbstring_binary_safe_encoding(); + + $bytes_written = fwrite( $temphandle, $contents ); + if ( false === $bytes_written || $bytes_written != strlen( $contents ) ) { + fclose( $temphandle ); + unlink( $temp ); + + reset_mbstring_encoding(); + + return false; + } - $type = $this->is_binary($contents) ? FTP_BINARY : FTP_ASCII; - $this->ftp->SetType($type); + fseek( $temphandle, 0 ); // Skip back to the start of the file being written to $ret = $this->ftp->fput($file, $temphandle); + reset_mbstring_encoding(); + fclose($temphandle); unlink($temp); @@ -174,10 +187,6 @@ class WP_Filesystem_ftpsockets extends WP_Filesystem_Base { return $this->ftp->chmod($file, $mode); } - function chown($file, $owner, $recursive = false ) { - return false; - } - function owner($file) { $dir = $this->dirlist($file); return $dir[$file]['owner']; @@ -219,8 +228,10 @@ class WP_Filesystem_ftpsockets extends WP_Filesystem_Base { return $this->ftp->mdel($file); } - function exists($file) { - return $this->ftp->is_exists($file); + function exists( $file ) { + $list = $this->ftp->nlist( $file ); + return !empty( $list ); //empty list = no file, so invert. + // return $this->ftp->is_exists($file); has issues with ABOR+426 responses on the ncFTPd server } function is_file($file) { @@ -241,12 +252,10 @@ class WP_Filesystem_ftpsockets extends WP_Filesystem_Base { } function is_readable($file) { - //Get dir list, Check if the file is writable by the current user?? return true; } function is_writable($file) { - //Get dir list, Check if the file is writable by the current user?? return true; } @@ -295,9 +304,15 @@ class WP_Filesystem_ftpsockets extends WP_Filesystem_Base { $limit_file = false; } + mbstring_binary_safe_encoding(); + $list = $this->ftp->dirlist($path); - if ( empty($list) && !$this->exists($path) ) + if ( empty( $list ) && ! $this->exists( $path ) ) { + + reset_mbstring_encoding(); + return false; + } $ret = array(); foreach ( $list as $struc ) { @@ -324,6 +339,9 @@ class WP_Filesystem_ftpsockets extends WP_Filesystem_Base { $ret[ $struc['name'] ] = $struc; } + + reset_mbstring_encoding(); + return $ret; } diff --git a/wp-admin/includes/class-wp-filesystem-ssh2.php b/wp-admin/includes/class-wp-filesystem-ssh2.php index 8ff3cb18..f942989d 100644 --- a/wp-admin/includes/class-wp-filesystem-ssh2.php +++ b/wp-admin/includes/class-wp-filesystem-ssh2.php @@ -1,13 +1,6 @@ sftp_link . '/' . $file); } @@ -161,12 +154,14 @@ class WP_Filesystem_SSH2 extends WP_Filesystem_Base { } function put_contents($file, $contents, $mode = false ) { - $file = ltrim($file, '/'); - $ret = file_put_contents('ssh2.sftp://' . $this->sftp_link . '/' . $file, $contents); + $ret = file_put_contents( 'ssh2.sftp://' . $this->sftp_link . '/' . ltrim( $file, '/' ), $contents ); + + if ( $ret !== strlen( $contents ) ) + return false; $this->chmod($file, $mode); - return false !== $ret; + return true; } function cwd() { @@ -206,7 +201,17 @@ class WP_Filesystem_SSH2 extends WP_Filesystem_Base { return $this->run_command(sprintf('chmod -R %o %s', $mode, escapeshellarg($file)), true); } - function chown($file, $owner, $recursive = false ) { + /** + * Change the ownership of a file / folder. + * + * @since Unknown + * + * @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. + * @return bool Returns true on success or false on failure. + */ + function chown( $file, $owner, $recursive = false ) { if ( ! $this->exists($file) ) return false; if ( ! $recursive || ! $this->is_dir($file) ) diff --git a/wp-admin/includes/class-wp-importer.php b/wp-admin/includes/class-wp-importer.php index b017c84f..57ff7f4b 100644 --- a/wp-admin/includes/class-wp-importer.php +++ b/wp-admin/includes/class-wp-importer.php @@ -179,7 +179,7 @@ class WP_Importer { */ function get_page( $url, $username = '', $password = '', $head = false ) { // Increase the timeout - add_filter( 'http_request_timeout', array( &$this, 'bump_request_timeout' ) ); + add_filter( 'http_request_timeout', array( $this, 'bump_request_timeout' ) ); $headers = array(); $args = array(); diff --git a/wp-admin/includes/class-wp-list-table.php b/wp-admin/includes/class-wp-list-table.php index 22c35f5e..bab488ec 100644 --- a/wp-admin/includes/class-wp-list-table.php +++ b/wp-admin/includes/class-wp-list-table.php @@ -87,7 +87,7 @@ class WP_List_Table { $this->screen = convert_to_screen( $args['screen'] ); - add_filter( "manage_{$this->screen->id}_columns", array( &$this, 'get_columns' ), 0 ); + add_filter( "manage_{$this->screen->id}_columns", array( $this, 'get_columns' ), 0 ); if ( !$args['plural'] ) $args['plural'] = $this->screen->base; @@ -99,7 +99,7 @@ class WP_List_Table { if ( $args['ajax'] ) { // wp_enqueue_script( 'list-table' ); - add_action( 'admin_footer', array( &$this, '_js_vars' ) ); + add_action( 'admin_footer', array( $this, '_js_vars' ) ); } } @@ -340,7 +340,7 @@ class WP_List_Table { if ( !$action_count ) return ''; - $out = '
'; + $out = '
'; foreach ( $actions as $action => $link ) { ++$i; ( $i == $action_count ) ? $sep = '' : $sep = ' | '; @@ -367,6 +367,16 @@ class WP_List_Table { ORDER BY post_date DESC ", $post_type ) ); + /** + * Filter the months dropdown results. + * + * @since 3.7.0 + * + * @param object $months The months dropdown query results. + * @param string $post_type The post type. + */ + $months = apply_filters( 'months_dropdown_results', $months, $post_type ); + $month_count = count( $months ); if ( !$month_count || ( 1 == $month_count && 0 == $months[0]->month ) ) @@ -764,7 +774,7 @@ class WP_List_Table { ?>
-
+
bulk_actions(); ?>
"; - echo call_user_func( array( &$this, 'column_' . $column_name ), $item ); + echo call_user_func( array( $this, 'column_' . $column_name ), $item ); echo ""; } else { diff --git a/wp-admin/includes/class-wp-media-list-table.php b/wp-admin/includes/class-wp-media-list-table.php index 67fd187c..1f0067dd 100644 --- a/wp-admin/includes/class-wp-media-list-table.php +++ b/wp-admin/includes/class-wp-media-list-table.php @@ -301,11 +301,17 @@ foreach ( $columns as $column_name => $column_display_name ) { break; case 'parent': - if ( $post->post_parent > 0 && get_post( $post->post_parent ) ) { + if ( $post->post_parent > 0 ) + $parent = get_post( $post->post_parent ); + else + $parent = false; + + if ( $parent ) { $title = _draft_or_post_title( $post->post_parent ); + $parent_type = get_post_type_object( $parent->post_type ); ?> > - post_parent ) ) { ?> + post_parent ) && $parent_type->show_ui ) { ?> + + items = array_reverse( $this->items ); } else { - uasort( $this->items, array( &$this, '_order_callback' ) ); + uasort( $this->items, array( $this, '_order_callback' ) ); } } @@ -284,8 +284,8 @@ class WP_MS_Themes_List_Table extends WP_List_Table { if ( ! $allowed && current_user_can( 'delete_themes' ) && ! $this->is_site_themes && $stylesheet != get_option( 'stylesheet' ) && $stylesheet != get_option( 'template' ) ) $actions['delete'] = '' . __( 'Delete' ) . ''; - $actions = apply_filters( 'theme_action_links', array_filter( $actions ), $stylesheet, $theme, $context ); - $actions = apply_filters( "theme_action_links_$stylesheet", $actions, $stylesheet, $theme, $context ); + $actions = apply_filters( 'theme_action_links', array_filter( $actions ), $theme, $context ); + $actions = apply_filters( "theme_action_links_$stylesheet", $actions, $theme, $context ); $class = ! $allowed ? 'inactive' : 'active'; $checkbox_id = "checkbox_" . md5( $theme->get('Name') ); diff --git a/wp-admin/includes/class-wp-plugin-install-list-table.php b/wp-admin/includes/class-wp-plugin-install-list-table.php index 76ef2ce2..6cae9cef 100644 --- a/wp-admin/includes/class-wp-plugin-install-list-table.php +++ b/wp-admin/includes/class-wp-plugin-install-list-table.php @@ -37,7 +37,23 @@ class WP_Plugin_Install_List_Table extends WP_List_Table { $nonmenu_tabs = array( 'plugin-information' ); //Valid actions to perform which do not have a Menu item. + /** + * Filter the tabs shown on the Plugin Install screen. + * + * @since 2.7.0 + * + * @param array $tabs The tabs shown on the Plugin Install screen. Defaults are 'dashboard', 'search', + * 'upload', 'featured', 'popular', 'new', and 'favorites'. + */ $tabs = apply_filters( 'install_plugins_tabs', $tabs ); + + /** + * Filter tabs not associated with a menu item on the Plugin Install screen. + * + * @since 2.7.0 + * + * @param array $nonmenu_tabs The tabs that don't have a Menu item on the Plugin Install screen. + */ $nonmenu_tabs = apply_filters( 'install_plugins_nonmenu_tabs', $nonmenu_tabs ); // If a non-valid menu tab has been selected, And it's not a non-menu action. @@ -85,8 +101,22 @@ class WP_Plugin_Install_List_Table extends WP_List_Table { default: $args = false; + break; } + /** + * Filter API request arguments for each Plugin Install screen tab. + * + * The dynamic portion of the hook name, $tab, refers to the plugin install tabs. + * Default tabs are 'dashboard', 'search', 'upload', 'featured', 'popular', 'new', + * and 'favorites'. + * + * @since 3.7.0 + * + * @param array|bool $args Plugin Install API arguments. + */ + $args = apply_filters( "install_plugins_table_api_args_$tab", $args ); + if ( !$args ) return; @@ -124,7 +154,13 @@ class WP_Plugin_Install_List_Table extends WP_List_Table { if ( 'top' == $which ) { ?>
- +
pagination( $which ); ?>
@@ -218,6 +254,14 @@ class WP_Plugin_Install_List_Table extends WP_List_Table { } } + /** + * Filter the install action links for a plugin. + * + * @since 2.7.0 + * + * @param array $action_links An array of plugin action hyperlinks. Defaults are links to Details and Install Now. + * @param array $plugin The plugin currently being listed. + */ $action_links = apply_filters( 'plugin_install_action_links', $action_links, $plugin ); ?> diff --git a/wp-admin/includes/class-wp-plugins-list-table.php b/wp-admin/includes/class-wp-plugins-list-table.php index ae1d1b8d..9e648498 100644 --- a/wp-admin/includes/class-wp-plugins-list-table.php +++ b/wp-admin/includes/class-wp-plugins-list-table.php @@ -99,7 +99,7 @@ class WP_Plugins_List_Table extends WP_List_Table { if ( $s ) { $status = 'search'; - $plugins['search'] = array_filter( $plugins['all'], array( &$this, '_search_callback' ) ); + $plugins['search'] = array_filter( $plugins['all'], array( $this, '_search_callback' ) ); } $totals = array(); @@ -121,7 +121,7 @@ class WP_Plugins_List_Table extends WP_List_Table { $orderby = ucfirst( $orderby ); $order = strtoupper( $order ); - uasort( $this->items, array( &$this, '_order_callback' ) ); + uasort( $this->items, array( $this, '_order_callback' ) ); } $plugins_per_page = $this->get_items_per_page( str_replace( '-', '_', $screen->id . '_per_page' ), 999 ); @@ -321,7 +321,7 @@ class WP_Plugins_List_Table extends WP_List_Table { if ( true === ( $dropins[ $plugin_file ][1] ) ) { // Doesn't require a constant $is_active = true; $description = '

' . $dropins[ $plugin_file ][0] . '

'; - } elseif ( constant( $dropins[ $plugin_file ][1] ) ) { // Constant is true + } elseif ( defined( $dropins[ $plugin_file ][1] ) && constant( $dropins[ $plugin_file ][1] ) ) { // Constant is true $is_active = true; $description = '

' . $dropins[ $plugin_file ][0] . '

'; } else { diff --git a/wp-admin/includes/class-wp-posts-list-table.php b/wp-admin/includes/class-wp-posts-list-table.php index a798a2c2..016a726b 100644 --- a/wp-admin/includes/class-wp-posts-list-table.php +++ b/wp-admin/includes/class-wp-posts-list-table.php @@ -57,9 +57,10 @@ class WP_Posts_List_Table extends WP_List_Table { $post_type_object = get_post_type_object( $post_type ); if ( !current_user_can( $post_type_object->cap->edit_others_posts ) ) { + $exclude_states = get_post_stati( array( 'show_in_admin_all_list' => false ) ); $this->user_posts_count = $wpdb->get_var( $wpdb->prepare( " SELECT COUNT( 1 ) FROM $wpdb->posts - WHERE post_type = %s AND post_status NOT IN ( 'trash', 'auto-draft' ) + WHERE post_type = %s AND post_status NOT IN ( '" . implode( "','", $exclude_states ) . "' ) AND post_author = %d ", $post_type, get_current_user_id() ) ); @@ -69,7 +70,7 @@ class WP_Posts_List_Table extends WP_List_Table { if ( 'post' == $post_type && $sticky_posts = get_option( 'sticky_posts' ) ) { $sticky_posts = implode( ', ', array_map( 'absint', (array) $sticky_posts ) ); - $this->sticky_posts_count = $wpdb->get_var( $wpdb->prepare( "SELECT COUNT( 1 ) FROM $wpdb->posts WHERE post_type = %s AND post_status != 'trash' AND ID IN ($sticky_posts)", $post_type ) ); + $this->sticky_posts_count = $wpdb->get_var( $wpdb->prepare( "SELECT COUNT( 1 ) FROM $wpdb->posts WHERE post_type = %s AND post_status NOT IN ('trash', 'auto-draft') AND ID IN ($sticky_posts)", $post_type ) ); } } @@ -417,12 +418,12 @@ class WP_Posts_List_Table extends WP_List_Table { * * @since 3.1.0 (Standalone function exists since 2.6.0) * - * @param unknown_type $children_pages - * @param unknown_type $count - * @param unknown_type $parent - * @param unknown_type $level - * @param unknown_type $pagenum - * @param unknown_type $per_page + * @param array $children_pages + * @param int $count + * @param int $parent + * @param int $level + * @param int $pagenum + * @param int $per_page */ function _page_rows( &$children_pages, &$count, $parent, $level, $pagenum, $per_page ) { @@ -539,8 +540,10 @@ class WP_Posts_List_Table extends WP_List_Table { $level++; $find_main_page = (int) $parent->post_parent; - if ( !isset( $parent_name ) ) + if ( !isset( $parent_name ) ) { + /** This filter is documented in wp-includes/post-template.php */ $parent_name = apply_filters( 'the_title', $parent->post_title, $parent->ID ); + } } } } @@ -1034,6 +1037,33 @@ class WP_Posts_List_Table extends WP_List_Table {
+ + post_type, 'post-formats' ) ) { + $all_post_formats = get_post_format_strings(); + + ?> + + +
+ post_type, 'author' ) ) { ?> + +

diff --git a/wp-admin/includes/class-wp-terms-list-table.php b/wp-admin/includes/class-wp-terms-list-table.php index eef7ccfd..f44b6266 100644 --- a/wp-admin/includes/class-wp-terms-list-table.php +++ b/wp-admin/includes/class-wp-terms-list-table.php @@ -259,7 +259,8 @@ class WP_Terms_List_Table extends WP_List_Table { } if ( current_user_can( $tax->cap->delete_terms ) && $tag->term_id != $default_term ) $actions['delete'] = "term_id ) . "'>" . __( 'Delete' ) . ""; - $actions['view'] = '' . __( 'View' ) . ''; + if ( $tax->public ) + $actions['view'] = '' . __( 'View' ) . ''; $actions = apply_filters( 'tag_row_actions', $actions, $tag ); $actions = apply_filters( "{$taxonomy}_row_actions", $actions, $tag ); diff --git a/wp-admin/includes/class-wp-theme-install-list-table.php b/wp-admin/includes/class-wp-theme-install-list-table.php index 8a46199f..bb8328fb 100644 --- a/wp-admin/includes/class-wp-theme-install-list-table.php +++ b/wp-admin/includes/class-wp-theme-install-list-table.php @@ -90,8 +90,11 @@ class WP_Theme_Install_List_Table extends WP_Themes_List_Table { default: $args = false; + break; } + $args = apply_filters( 'install_themes_table_api_args_' . $tab, $args ); + if ( ! $args ) return; diff --git a/wp-admin/includes/class-wp-themes-list-table.php b/wp-admin/includes/class-wp-themes-list-table.php index 684bd8be..d49d9930 100644 --- a/wp-admin/includes/class-wp-themes-list-table.php +++ b/wp-admin/includes/class-wp-themes-list-table.php @@ -114,6 +114,16 @@ class WP_Themes_List_Table extends WP_List_Table { return array(); } + function display_rows_or_placeholder() { + if ( $this->has_items() ) { + $this->display_rows(); + } else { + echo '
'; + $this->no_items(); + echo '
'; + } + } + function display_rows() { $themes = $this->items; @@ -149,6 +159,7 @@ class WP_Themes_List_Table extends WP_List_Table { . "' );" . '">' . __( 'Delete' ) . ''; $actions = apply_filters( 'theme_action_links', $actions, $theme ); + $actions = apply_filters( "theme_action_links_$stylesheet", $actions, $theme ); $delete_action = isset( $actions['delete'] ) ? '
' . $actions['delete'] . '
' : ''; unset( $actions['delete'] ); diff --git a/wp-admin/includes/class-wp-upgrader-skins.php b/wp-admin/includes/class-wp-upgrader-skins.php new file mode 100644 index 00000000..b8c82c7a --- /dev/null +++ b/wp-admin/includes/class-wp-upgrader-skins.php @@ -0,0 +1,662 @@ + '', 'nonce' => '', 'title' => '', 'context' => false ); + $this->options = wp_parse_args($args, $defaults); + } + + function set_upgrader(&$upgrader) { + if ( is_object($upgrader) ) + $this->upgrader =& $upgrader; + $this->add_strings(); + } + + function add_strings() { + } + + function set_result($result) { + $this->result = $result; + } + + function request_filesystem_credentials($error = false) { + $url = $this->options['url']; + $context = $this->options['context']; + if ( !empty($this->options['nonce']) ) + $url = wp_nonce_url($url, $this->options['nonce']); + return request_filesystem_credentials($url, '', $error, $context); //Possible to bring inline, Leaving as is for now. + } + + function header() { + if ( $this->done_header ) + return; + $this->done_header = true; + echo '
'; + screen_icon(); + echo '

' . $this->options['title'] . '

'; + } + function footer() { + echo '
'; + } + + function error($errors) { + if ( ! $this->done_header ) + $this->header(); + if ( is_string($errors) ) { + $this->feedback($errors); + } elseif ( is_wp_error($errors) && $errors->get_error_code() ) { + foreach ( $errors->get_error_messages() as $message ) { + if ( $errors->get_error_data() && is_string( $errors->get_error_data() ) ) + $this->feedback($message . ' ' . esc_html( $errors->get_error_data() ) ); + else + $this->feedback($message); + } + } + } + + function feedback($string) { + if ( isset( $this->upgrader->strings[$string] ) ) + $string = $this->upgrader->strings[$string]; + + if ( strpos($string, '%') !== false ) { + $args = func_get_args(); + $args = array_splice($args, 1); + if ( $args ) { + $args = array_map( 'strip_tags', $args ); + $args = array_map( 'esc_html', $args ); + $string = vsprintf($string, $args); + } + } + if ( empty($string) ) + return; + show_message($string); + } + function before() {} + function after() {} + +} + +/** + * Plugin Upgrader Skin for WordPress Plugin Upgrades. + * + * @package WordPress + * @subpackage Upgrader + * @since 2.8.0 + */ +class Plugin_Upgrader_Skin extends WP_Upgrader_Skin { + var $plugin = ''; + var $plugin_active = false; + var $plugin_network_active = false; + + function __construct($args = array()) { + $defaults = array( 'url' => '', 'plugin' => '', 'nonce' => '', 'title' => __('Update Plugin') ); + $args = wp_parse_args($args, $defaults); + + $this->plugin = $args['plugin']; + + $this->plugin_active = is_plugin_active( $this->plugin ); + $this->plugin_network_active = is_plugin_active_for_network( $this->plugin ); + + parent::__construct($args); + } + + function after() { + $this->plugin = $this->upgrader->plugin_info(); + if ( !empty($this->plugin) && !is_wp_error($this->result) && $this->plugin_active ){ + echo ''; + } + + $update_actions = array( + 'activate_plugin' => '' . __('Activate Plugin') . '', + 'plugins_page' => '' . __('Return to Plugins page') . '' + ); + if ( $this->plugin_active || ! $this->result || is_wp_error( $this->result ) || ! current_user_can( 'activate_plugins' ) ) + unset( $update_actions['activate_plugin'] ); + + $update_actions = apply_filters('update_plugin_complete_actions', $update_actions, $this->plugin); + if ( ! empty($update_actions) ) + $this->feedback(implode(' | ', (array)$update_actions)); + } + + function before() { + if ( $this->upgrader->show_before ) { + echo $this->upgrader->show_before; + $this->upgrader->show_before = ''; + } + } +} + +/** + * Plugin Upgrader Skin for WordPress Plugin Upgrades. + * + * @package WordPress + * @subpackage Upgrader + * @since 3.0.0 + */ +class Bulk_Upgrader_Skin extends WP_Upgrader_Skin { + var $in_loop = false; + var $error = false; + + function __construct($args = array()) { + $defaults = array( 'url' => '', 'nonce' => '' ); + $args = wp_parse_args($args, $defaults); + + parent::__construct($args); + } + + function add_strings() { + $this->upgrader->strings['skin_upgrade_start'] = __('The update process is starting. This process may take a while on some hosts, so please be patient.'); + $this->upgrader->strings['skin_update_failed_error'] = __('An error occurred while updating %1$s: %2$s'); + $this->upgrader->strings['skin_update_failed'] = __('The update of %1$s failed.'); + $this->upgrader->strings['skin_update_successful'] = __('%1$s updated successfully.').' '.__('Show Details').'.'; + $this->upgrader->strings['skin_upgrade_end'] = __('All updates have been completed.'); + } + + function feedback($string) { + if ( isset( $this->upgrader->strings[$string] ) ) + $string = $this->upgrader->strings[$string]; + + if ( strpos($string, '%') !== false ) { + $args = func_get_args(); + $args = array_splice($args, 1); + if ( $args ) { + $args = array_map( 'strip_tags', $args ); + $args = array_map( 'esc_html', $args ); + $string = vsprintf($string, $args); + } + } + if ( empty($string) ) + return; + if ( $this->in_loop ) + echo "$string
\n"; + else + echo "

$string

\n"; + } + + function header() { + // Nothing, This will be displayed within a iframe. + } + + function footer() { + // Nothing, This will be displayed within a iframe. + } + function error($error) { + if ( is_string($error) && isset( $this->upgrader->strings[$error] ) ) + $this->error = $this->upgrader->strings[$error]; + + if ( is_wp_error($error) ) { + foreach ( $error->get_error_messages() as $emessage ) { + if ( $error->get_error_data() && is_string( $error->get_error_data() ) ) + $messages[] = $emessage . ' ' . esc_html( $error->get_error_data() ); + else + $messages[] = $emessage; + } + $this->error = implode(', ', $messages); + } + echo ''; + } + + function bulk_header() { + $this->feedback('skin_upgrade_start'); + } + + function bulk_footer() { + $this->feedback('skin_upgrade_end'); + } + + function before($title = '') { + $this->in_loop = true; + printf( '

' . $this->upgrader->strings['skin_before_update_header'] . '

', $title, $this->upgrader->update_current, $this->upgrader->update_count); + echo ''; + echo '

'; + $this->flush_output(); + } + + function after($title = '') { + echo '

'; + if ( $this->error || ! $this->result ) { + if ( $this->error ) + echo '

' . sprintf($this->upgrader->strings['skin_update_failed_error'], $title, $this->error) . '

'; + else + echo '

' . sprintf($this->upgrader->strings['skin_update_failed'], $title) . '

'; + + echo ''; + } + if ( $this->result && ! is_wp_error( $this->result ) ) { + if ( ! $this->error ) + echo '

' . sprintf($this->upgrader->strings['skin_update_successful'], $title, 'jQuery(\'#progress-' . esc_js($this->upgrader->update_current) . '\').toggle();jQuery(\'span\', this).toggle(); return false;') . '

'; + echo ''; + } + + $this->reset(); + $this->flush_output(); + } + + function reset() { + $this->in_loop = false; + $this->error = false; + } + + function flush_output() { + wp_ob_end_flush_all(); + flush(); + } +} + +class Bulk_Plugin_Upgrader_Skin extends Bulk_Upgrader_Skin { + var $plugin_info = array(); // Plugin_Upgrader::bulk() will fill this in. + + function __construct($args = array()) { + parent::__construct($args); + } + + function add_strings() { + parent::add_strings(); + $this->upgrader->strings['skin_before_update_header'] = __('Updating Plugin %1$s (%2$d/%3$d)'); + } + + function before($title = '') { + parent::before($this->plugin_info['Title']); + } + + function after($title = '') { + parent::after($this->plugin_info['Title']); + } + function bulk_footer() { + parent::bulk_footer(); + $update_actions = array( + 'plugins_page' => '' . __('Return to Plugins page') . '', + 'updates_page' => '' . __('Return to WordPress Updates') . '' + ); + if ( ! current_user_can( 'activate_plugins' ) ) + unset( $update_actions['plugins_page'] ); + + $update_actions = apply_filters('update_bulk_plugins_complete_actions', $update_actions, $this->plugin_info); + if ( ! empty($update_actions) ) + $this->feedback(implode(' | ', (array)$update_actions)); + } +} + +class Bulk_Theme_Upgrader_Skin extends Bulk_Upgrader_Skin { + var $theme_info = array(); // Theme_Upgrader::bulk() will fill this in. + + function __construct($args = array()) { + parent::__construct($args); + } + + function add_strings() { + parent::add_strings(); + $this->upgrader->strings['skin_before_update_header'] = __('Updating Theme %1$s (%2$d/%3$d)'); + } + + function before($title = '') { + parent::before( $this->theme_info->display('Name') ); + } + + function after($title = '') { + parent::after( $this->theme_info->display('Name') ); + } + + function bulk_footer() { + parent::bulk_footer(); + $update_actions = array( + 'themes_page' => '' . __('Return to Themes page') . '', + 'updates_page' => '' . __('Return to WordPress Updates') . '' + ); + if ( ! current_user_can( 'switch_themes' ) && ! current_user_can( 'edit_theme_options' ) ) + unset( $update_actions['themes_page'] ); + + $update_actions = apply_filters('update_bulk_theme_complete_actions', $update_actions, $this->theme_info ); + if ( ! empty($update_actions) ) + $this->feedback(implode(' | ', (array)$update_actions)); + } +} + +/** + * Plugin Installer Skin for WordPress Plugin Installer. + * + * @package WordPress + * @subpackage Upgrader + * @since 2.8.0 + */ +class Plugin_Installer_Skin extends WP_Upgrader_Skin { + var $api; + var $type; + + function __construct($args = array()) { + $defaults = array( 'type' => 'web', 'url' => '', 'plugin' => '', 'nonce' => '', 'title' => '' ); + $args = wp_parse_args($args, $defaults); + + $this->type = $args['type']; + $this->api = isset($args['api']) ? $args['api'] : array(); + + parent::__construct($args); + } + + function before() { + if ( !empty($this->api) ) + $this->upgrader->strings['process_success'] = sprintf( __('Successfully installed the plugin %s %s.'), $this->api->name, $this->api->version); + } + + function after() { + + $plugin_file = $this->upgrader->plugin_info(); + + $install_actions = array(); + + $from = isset($_GET['from']) ? wp_unslash( $_GET['from'] ) : 'plugins'; + + if ( 'import' == $from ) + $install_actions['activate_plugin'] = '' . __('Activate Plugin & Run Importer') . ''; + else + $install_actions['activate_plugin'] = '' . __('Activate Plugin') . ''; + + if ( is_multisite() && current_user_can( 'manage_network_plugins' ) ) { + $install_actions['network_activate'] = '' . __('Network Activate') . ''; + unset( $install_actions['activate_plugin'] ); + } + + if ( 'import' == $from ) + $install_actions['importers_page'] = '' . __('Return to Importers') . ''; + else if ( $this->type == 'web' ) + $install_actions['plugins_page'] = '' . __('Return to Plugin Installer') . ''; + else + $install_actions['plugins_page'] = '' . __('Return to Plugins page') . ''; + + if ( ! $this->result || is_wp_error($this->result) ) { + unset( $install_actions['activate_plugin'], $install_actions['network_activate'] ); + } elseif ( ! current_user_can( 'activate_plugins' ) ) { + unset( $install_actions['activate_plugin'] ); + } + + $install_actions = apply_filters('install_plugin_complete_actions', $install_actions, $this->api, $plugin_file); + if ( ! empty($install_actions) ) + $this->feedback(implode(' | ', (array)$install_actions)); + } +} + +/** + * Theme Installer Skin for the WordPress Theme Installer. + * + * @package WordPress + * @subpackage Upgrader + * @since 2.8.0 + */ +class Theme_Installer_Skin extends WP_Upgrader_Skin { + var $api; + var $type; + + function __construct($args = array()) { + $defaults = array( 'type' => 'web', 'url' => '', 'theme' => '', 'nonce' => '', 'title' => '' ); + $args = wp_parse_args($args, $defaults); + + $this->type = $args['type']; + $this->api = isset($args['api']) ? $args['api'] : array(); + + parent::__construct($args); + } + + function before() { + if ( !empty($this->api) ) + $this->upgrader->strings['process_success'] = sprintf( $this->upgrader->strings['process_success_specific'], $this->api->name, $this->api->version); + } + + function after() { + if ( empty($this->upgrader->result['destination_name']) ) + return; + + $theme_info = $this->upgrader->theme_info(); + if ( empty( $theme_info ) ) + return; + + $name = $theme_info->display('Name'); + $stylesheet = $this->upgrader->result['destination_name']; + $template = $theme_info->get_template(); + + $preview_link = add_query_arg( array( + 'preview' => 1, + 'template' => urlencode( $template ), + 'stylesheet' => urlencode( $stylesheet ), + ), trailingslashit( home_url() ) ); + + $activate_link = add_query_arg( array( + 'action' => 'activate', + 'template' => urlencode( $template ), + 'stylesheet' => urlencode( $stylesheet ), + ), admin_url('themes.php') ); + $activate_link = wp_nonce_url( $activate_link, 'switch-theme_' . $stylesheet ); + + $install_actions = array(); + $install_actions['preview'] = '' . __('Preview') . ''; + $install_actions['preview'] .= '' . __('Live Preview') . ''; + $install_actions['activate'] = '' . __('Activate') . ''; + + if ( is_network_admin() && current_user_can( 'manage_network_themes' ) ) + $install_actions['network_enable'] = '' . __( 'Network Enable' ) . ''; + + if ( $this->type == 'web' ) + $install_actions['themes_page'] = '' . __('Return to Theme Installer') . ''; + elseif ( current_user_can( 'switch_themes' ) || current_user_can( 'edit_theme_options' ) ) + $install_actions['themes_page'] = '' . __('Return to Themes page') . ''; + + if ( ! $this->result || is_wp_error($this->result) || is_network_admin() || ! current_user_can( 'switch_themes' ) ) + unset( $install_actions['activate'], $install_actions['preview'] ); + + $install_actions = apply_filters('install_theme_complete_actions', $install_actions, $this->api, $stylesheet, $theme_info); + if ( ! empty($install_actions) ) + $this->feedback(implode(' | ', (array)$install_actions)); + } +} + +/** + * Theme Upgrader Skin for WordPress Theme Upgrades. + * + * @package WordPress + * @subpackage Upgrader + * @since 2.8.0 + */ +class Theme_Upgrader_Skin extends WP_Upgrader_Skin { + var $theme = ''; + + function __construct($args = array()) { + $defaults = array( 'url' => '', 'theme' => '', 'nonce' => '', 'title' => __('Update Theme') ); + $args = wp_parse_args($args, $defaults); + + $this->theme = $args['theme']; + + parent::__construct($args); + } + + function after() { + + $update_actions = array(); + if ( ! empty( $this->upgrader->result['destination_name'] ) && $theme_info = $this->upgrader->theme_info() ) { + $name = $theme_info->display('Name'); + $stylesheet = $this->upgrader->result['destination_name']; + $template = $theme_info->get_template(); + + $preview_link = add_query_arg( array( + 'preview' => 1, + 'template' => urlencode( $template ), + 'stylesheet' => urlencode( $stylesheet ), + ), trailingslashit( home_url() ) ); + + $activate_link = add_query_arg( array( + 'action' => 'activate', + 'template' => urlencode( $template ), + 'stylesheet' => urlencode( $stylesheet ), + ), admin_url('themes.php') ); + $activate_link = wp_nonce_url( $activate_link, 'switch-theme_' . $stylesheet ); + + if ( get_stylesheet() == $stylesheet ) { + if ( current_user_can( 'edit_theme_options' ) ) + $update_actions['preview'] = '' . __('Customize') . ''; + } elseif ( current_user_can( 'switch_themes' ) ) { + $update_actions['preview'] = '' . __('Preview') . ''; + $update_actions['preview'] .= '' . __('Live Preview') . ''; + $update_actions['activate'] = '' . __('Activate') . ''; + } + + if ( ! $this->result || is_wp_error( $this->result ) || is_network_admin() ) + unset( $update_actions['preview'], $update_actions['activate'] ); + } + + $update_actions['themes_page'] = '' . __('Return to Themes page') . ''; + + $update_actions = apply_filters('update_theme_complete_actions', $update_actions, $this->theme); + if ( ! empty($update_actions) ) + $this->feedback(implode(' | ', (array)$update_actions)); + } +} + +/** + * Translation Upgrader Skin for WordPress Translation Upgrades. + * + * @package WordPress + * @subpackage Upgrader + * @since 3.7.0 + */ +class Language_Pack_Upgrader_Skin extends WP_Upgrader_Skin { + var $language_update = null; + var $done_header = false; + var $display_footer_actions = true; + + function __construct( $args = array() ) { + $defaults = array( 'url' => '', 'nonce' => '', 'title' => __( 'Update Translations' ), 'skip_header_footer' => false ); + $args = wp_parse_args( $args, $defaults ); + if ( $args['skip_header_footer'] ) { + $this->done_header = true; + $this->display_footer_actions = false; + } + parent::__construct( $args ); + } + + function before() { + $name = $this->upgrader->get_name_for_update( $this->language_update ); + + echo '
'; + + printf( '

' . __( 'Updating translations for %1$s (%2$s)…' ) . '

', $name, $this->language_update->language ); + } + + function error( $error ) { + echo '
'; + parent::error( $error ); + echo '
'; + } + + function after() { + echo '
'; + } + + function bulk_footer() { + $update_actions = array(); + $update_actions['updates_page'] = '' . __( 'Return to WordPress Updates' ) . ''; + $update_actions = apply_filters( 'update_translations_complete_actions', $update_actions ); + + if ( $update_actions && $this->display_footer_actions ) + $this->feedback( implode( ' | ', $update_actions ) ); + + parent::footer(); + } +} + +/** + * Upgrader Skin for Automatic WordPress Upgrades + * + * This skin is designed to be used when no output is intended, all output + * is captured and stored for the caller to process and log/email/discard. + * + * @package WordPress + * @subpackage Upgrader + * @since 3.7.0 + */ +class Automatic_Upgrader_Skin extends WP_Upgrader_Skin { + protected $messages = array(); + + function request_filesystem_credentials( $error = false, $context = '' ) { + if ( $context ) + $this->options['context'] = $context; + // TODO: fix up request_filesystem_credentials(), or split it, to allow us to request a no-output version + // This will output a credentials form in event of failure, We don't want that, so just hide with a buffer + ob_start(); + $result = parent::request_filesystem_credentials( $error ); + ob_end_clean(); + return $result; + } + + function get_upgrade_messages() { + return $this->messages; + } + + function feedback( $data ) { + if ( is_wp_error( $data ) ) + $string = $data->get_error_message(); + else if ( is_array( $data ) ) + return; + else + $string = $data; + + if ( ! empty( $this->upgrader->strings[ $string ] ) ) + $string = $this->upgrader->strings[ $string ]; + + if ( strpos( $string, '%' ) !== false ) { + $args = func_get_args(); + $args = array_splice( $args, 1 ); + if ( ! empty( $args ) ) + $string = vsprintf( $string, $args ); + } + + $string = trim( $string ); + + // Only allow basic HTML in the messages, as it'll be used in emails/logs rather than direct browser output. + $string = wp_kses( $string, array( + 'a' => array( + 'href' => true + ), + 'br' => true, + 'em' => true, + 'strong' => true, + ) ); + + if ( empty( $string ) ) + return; + + $this->messages[] = $string; + } + + function header() { + ob_start(); + } + + function footer() { + $output = ob_get_contents(); + if ( ! empty( $output ) ) + $this->feedback( $output ); + ob_end_clean(); + } + + function bulk_header() {} + function bulk_footer() {} + function before() {} + function after() {} +} diff --git a/wp-admin/includes/class-wp-upgrader.php b/wp-admin/includes/class-wp-upgrader.php index 6c399c7e..891a4e89 100644 --- a/wp-admin/includes/class-wp-upgrader.php +++ b/wp-admin/includes/class-wp-upgrader.php @@ -11,11 +11,11 @@ * @since 2.8.0 */ +require ABSPATH . 'wp-admin/includes/class-wp-upgrader-skins.php'; + /** * WordPress Upgrader class for Upgrading/Installing a local set of files via the Filesystem Abstraction classes from a Zip file. * - * @TODO More Detailed docs, for methods as well. - * * @package WordPress * @subpackage Upgrader * @since 2.8.0 @@ -93,8 +93,8 @@ class WP_Upgrader { if ( ! $wp_filesystem->wp_plugins_dir() ) return new WP_Error('fs_no_plugins_dir', $this->strings['fs_no_plugins_dir']); break; - case WP_CONTENT_DIR . '/themes': - if ( ! $wp_filesystem->find_folder(WP_CONTENT_DIR . '/themes') ) + case get_theme_root(): + if ( ! $wp_filesystem->wp_themes_dir() ) return new WP_Error('fs_no_themes_dir', $this->strings['fs_no_themes_dir']); break; default: @@ -108,6 +108,19 @@ class WP_Upgrader { function download_package($package) { + /** + * Filter whether to return the package. + * + * @since 3.7.0 + * + * @param bool $reply Whether to bail without returning the package. Default is false. + * @param string $package The package file name. + * @param object $this The WP_Upgrader instance. + */ + $reply = apply_filters( 'upgrader_pre_download', false, $package, $this ); + if ( false !== $reply ) + return $reply; + if ( ! preg_match('!^(http|https|ftp)://!i', $package) && file_exists($package) ) //Local file or remote? return $package; //must be a local file.. @@ -146,7 +159,7 @@ class WP_Upgrader { $wp_filesystem->delete($working_dir, true); // Unzip package to working directory - $result = unzip_file($package, $working_dir); //TODO optimizations, Copy when Move/Rename would suffice? + $result = unzip_file( $package, $working_dir ); // Once extracted, delete the package if required. if ( $delete_package ) @@ -163,12 +176,17 @@ class WP_Upgrader { return $working_dir; } - function install_package($args = array()) { - global $wp_filesystem; - $defaults = array( 'source' => '', 'destination' => '', //Please always pass these - 'clear_destination' => false, 'clear_working' => false, - 'abort_if_destination_exists' => true, - 'hook_extra' => array()); + function install_package( $args = array() ) { + global $wp_filesystem, $wp_theme_directories; + + $defaults = array( + 'source' => '', // Please always pass this + 'destination' => '', // and this + 'clear_destination' => false, + 'clear_working' => false, + 'abort_if_destination_exists' => true, + 'hook_extra' => array() + ); $args = wp_parse_args($args, $defaults); extract($args); @@ -195,7 +213,7 @@ 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 ) - return new WP_Error( 'incompatible_archive', $this->strings['incompatible_archive'], $this->strings['no_files'] ); //There are no files? + return new WP_Error( 'incompatible_archive_empty', $this->strings['incompatible_archive'], $this->strings['no_files'] ); // There are no files? else //It's 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); @@ -208,8 +226,13 @@ class WP_Upgrader { if ( $source !== $remote_source ) $source_files = array_keys( $wp_filesystem->dirlist($source) ); - //Protection against deleting files in any important base directories. - if ( in_array( $destination, array(ABSPATH, WP_CONTENT_DIR, WP_PLUGIN_DIR, WP_CONTENT_DIR . '/themes') ) ) { + // Protection against deleting files in any important base directories. + // Theme_Upgrader & Plugin_Upgrader also trigger this, as they pass the destination directory (WP_PLUGIN_DIR / wp-content/themes) + // intending to copy the directory into the directory, whilst they pass the source as the actual files to copy. + $protected_directories = array( ABSPATH, WP_CONTENT_DIR, WP_PLUGIN_DIR, WP_CONTENT_DIR . '/themes' ); + if ( is_array( $wp_theme_directories ) ) + $protected_directories = array_merge( $protected_directories, $wp_theme_directories ); + if ( in_array( $destination, $protected_directories ) ) { $remote_destination = trailingslashit($remote_destination) . trailingslashit(basename($source)); $destination = trailingslashit($destination) . trailingslashit(basename($source)); } @@ -239,7 +262,7 @@ class WP_Upgrader { //Create destination if needed if ( !$wp_filesystem->exists($remote_destination) ) if ( !$wp_filesystem->mkdir($remote_destination, FS_CHMOD_DIR) ) - return new WP_Error('mkdir_failed', $this->strings['mkdir_failed'], $remote_destination); + return new WP_Error( 'mkdir_failed_destination', $this->strings['mkdir_failed'], $remote_destination ); // Copy new version of item into place. $result = copy_dir($source, $remote_destination); @@ -271,38 +294,48 @@ class WP_Upgrader { function run($options) { - $defaults = array( 'package' => '', //Please always pass this. - 'destination' => '', //And this - 'clear_destination' => false, - 'abort_if_destination_exists' => true, // Abort if the Destination directory exists, Pass clear_destination as false please - 'clear_working' => true, - 'is_multi' => false, - 'hook_extra' => array() //Pass any extra $hook_extra args here, this will be passed to any hooked filters. - ); + $defaults = array( + 'package' => '', // Please always pass this. + 'destination' => '', // And this + 'clear_destination' => false, + 'abort_if_destination_exists' => true, // Abort if the Destination directory exists, Pass clear_destination as false please + 'clear_working' => true, + 'is_multi' => false, + 'hook_extra' => array() // Pass any extra $hook_extra args here, this will be passed to any hooked filters. + ); $options = wp_parse_args($options, $defaults); extract($options); - //Connect to the Filesystem first. + if ( ! $is_multi ) // call $this->header separately if running multiple times + $this->skin->header(); + + // Connect to the Filesystem first. $res = $this->fs_connect( array(WP_CONTENT_DIR, $destination) ); - if ( ! $res ) //Mainly for non-connected filesystem. + // Mainly for non-connected filesystem. + if ( ! $res ) { + if ( ! $is_multi ) + $this->skin->footer(); return false; + } + + $this->skin->before(); if ( is_wp_error($res) ) { $this->skin->error($res); + $this->skin->after(); + if ( ! $is_multi ) + $this->skin->footer(); return $res; } - if ( !$is_multi ) // call $this->header separately if running multiple times - $this->skin->header(); - - $this->skin->before(); - //Download the package (Note, This just returns the filename of the file if the package is a local file) $download = $this->download_package( $package ); if ( is_wp_error($download) ) { $this->skin->error($download); $this->skin->after(); + if ( ! $is_multi ) + $this->skin->footer(); return $download; } @@ -313,18 +346,21 @@ class WP_Upgrader { if ( is_wp_error($working_dir) ) { $this->skin->error($working_dir); $this->skin->after(); + if ( ! $is_multi ) + $this->skin->footer(); return $working_dir; } //With the given options, this installs it to the destination directory. $result = $this->install_package( array( - 'source' => $working_dir, - 'destination' => $destination, - 'clear_destination' => $clear_destination, - 'abort_if_destination_exists' => $abort_if_destination_exists, - 'clear_working' => $clear_working, - 'hook_extra' => $hook_extra - ) ); + 'source' => $working_dir, + 'destination' => $destination, + 'clear_destination' => $clear_destination, + 'abort_if_destination_exists' => $abort_if_destination_exists, + 'clear_working' => $clear_working, + 'hook_extra' => $hook_extra + ) ); + $this->skin->set_result($result); if ( is_wp_error($result) ) { $this->skin->error($result); @@ -333,10 +369,13 @@ class WP_Upgrader { //Install Succeeded $this->skin->feedback('process_success'); } + $this->skin->after(); - if ( !$is_multi ) + if ( ! $is_multi ) { + do_action( 'upgrader_process_complete', $this, $hook_extra ); $this->skin->footer(); + } return $result; } @@ -361,8 +400,6 @@ class WP_Upgrader { /** * Plugin Upgrader class for WordPress Plugins, It is designed to upgrade/install plugins from a local zip, remote zip URL, or uploaded zip file. * - * @TODO More Detailed docs, for methods as well. - * * @package WordPress * @subpackage Upgrader * @since 2.8.0 @@ -394,35 +431,46 @@ class Plugin_Upgrader extends WP_Upgrader { $this->strings['process_success'] = __('Plugin installed successfully.'); } - function install($package) { + function install( $package, $args = array() ) { + + $defaults = array( + 'clear_update_cache' => true, + ); + $parsed_args = wp_parse_args( $args, $defaults ); $this->init(); $this->install_strings(); - add_filter('upgrader_source_selection', array(&$this, 'check_package') ); - - $this->run(array( - 'package' => $package, - 'destination' => WP_PLUGIN_DIR, - 'clear_destination' => false, //Do not overwrite files. - 'clear_working' => true, - 'hook_extra' => array() - )); + add_filter('upgrader_source_selection', array($this, 'check_package') ); + + $this->run( array( + 'package' => $package, + 'destination' => WP_PLUGIN_DIR, + 'clear_destination' => false, // Do not overwrite files. + 'clear_working' => true, + 'hook_extra' => array( + 'type' => 'plugin', + 'action' => 'install', + ) + ) ); - remove_filter('upgrader_source_selection', array(&$this, 'check_package') ); + 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'); - wp_cache_delete( 'plugins', 'plugins' ); - do_action( 'upgrader_process_complete', $this, array( 'action' => 'install', 'type' => 'plugin' ), $package ); + wp_clean_plugins_cache( $parsed_args['clear_update_cache'] ); return true; } - function upgrade($plugin) { + function upgrade( $plugin, $args = array() ) { + + $defaults = array( + 'clear_update_cache' => true, + ); + $parsed_args = wp_parse_args( $args, $defaults ); $this->init(); $this->upgrade_strings(); @@ -439,34 +487,41 @@ class Plugin_Upgrader extends WP_Upgrader { // Get the URL to the zip file $r = $current->response[ $plugin ]; - 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'), //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, - 'destination' => WP_PLUGIN_DIR, - 'clear_destination' => true, - 'clear_working' => true, - 'hook_extra' => array( - 'plugin' => $plugin - ) - )); + 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'), //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, + 'destination' => WP_PLUGIN_DIR, + 'clear_destination' => true, + 'clear_working' => true, + 'hook_extra' => array( + 'plugin' => $plugin, + 'type' => 'plugin', + 'action' => 'update', + ), + ) ); // 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')); if ( ! $this->result || is_wp_error($this->result) ) return $this->result; // Force refresh of plugin update information - delete_site_transient('update_plugins'); - wp_cache_delete( 'plugins', 'plugins' ); - do_action( 'upgrader_process_complete', $this, array( 'action' => 'update', 'type' => 'plugin' ), $plugin ); + wp_clean_plugins_cache( $parsed_args['clear_update_cache'] ); + + return true; } - function bulk_upgrade($plugins) { + function bulk_upgrade( $plugins, $args = array() ) { + + $defaults = array( + 'clear_update_cache' => true, + ); + $parsed_args = wp_parse_args( $args, $defaults ); $this->init(); $this->bulk = true; @@ -474,7 +529,7 @@ class Plugin_Upgrader extends WP_Upgrader { $current = get_site_transient( 'update_plugins' ); - add_filter('upgrader_clear_destination', array(&$this, 'delete_old_plugin'), 10, 4); + add_filter('upgrader_clear_destination', array($this, 'delete_old_plugin'), 10, 4); $this->skin->header(); @@ -487,10 +542,13 @@ class Plugin_Upgrader extends WP_Upgrader { $this->skin->bulk_header(); - // Only start maintenance mode if running in Multisite OR the plugin is in use - $maintenance = is_multisite(); // @TODO: This should only kick in for individual sites if at all possible. + // Only start maintenance mode if: + // - running Multisite and there are one or more plugins specified, OR + // - a plugin with an update available is currently active. + // @TODO: For multisite, maintenance mode should only kick in for individual sites if at all possible. + $maintenance = ( is_multisite() && ! empty( $plugins ) ); foreach ( $plugins as $plugin ) - $maintenance = $maintenance || (is_plugin_active($plugin) && isset($current->response[ $plugin ]) ); // Only activate Maintenance mode if a plugin is active AND has an update available + $maintenance = $maintenance || ( is_plugin_active( $plugin ) && isset( $current->response[ $plugin] ) ); if ( $maintenance ) $this->maintenance_mode(true); @@ -516,16 +574,16 @@ class Plugin_Upgrader extends WP_Upgrader { $this->skin->plugin_active = is_plugin_active($plugin); - $result = $this->run(array( - 'package' => $r->package, - 'destination' => WP_PLUGIN_DIR, - 'clear_destination' => true, - 'clear_working' => true, - 'is_multi' => true, - 'hook_extra' => array( - 'plugin' => $plugin - ) - )); + $result = $this->run( array( + 'package' => $r->package, + 'destination' => WP_PLUGIN_DIR, + 'clear_destination' => true, + 'clear_working' => true, + 'is_multi' => true, + 'hook_extra' => array( + 'plugin' => $plugin + ) + ) ); $results[$plugin] = $this->result; @@ -536,17 +594,22 @@ class Plugin_Upgrader extends WP_Upgrader { $this->maintenance_mode(false); + do_action( 'upgrader_process_complete', $this, array( + 'action' => 'update', + 'type' => 'plugin', + 'bulk' => true, + 'plugins' => $plugins, + ) ); + $this->skin->bulk_footer(); $this->skin->footer(); // Cleanup our hooks, in case something else does a upgrade on this connection. - remove_filter('upgrader_clear_destination', array(&$this, 'delete_old_plugin')); + remove_filter('upgrader_clear_destination', array($this, 'delete_old_plugin')); // Force refresh of plugin update information - delete_site_transient('update_plugins'); - wp_cache_delete( 'plugins', 'plugins' ); - do_action( 'upgrader_process_complete', $this, array( 'action' => 'update', 'type' => 'plugin', 'bulk' => true ), $plugins ); + wp_clean_plugins_cache( $parsed_args['clear_update_cache'] ); return $results; } @@ -572,7 +635,7 @@ class Plugin_Upgrader extends WP_Upgrader { } if ( ! $plugins_found ) - return new WP_Error( 'incompatible_archive', $this->strings['incompatible_archive'], __('No valid plugins were found.') ); + return new WP_Error( 'incompatible_archive_no_plugins', $this->strings['incompatible_archive'], __( 'No valid plugins were found.' ) ); return $source; } @@ -599,6 +662,10 @@ class Plugin_Upgrader extends WP_Upgrader { if ( is_wp_error($return) ) //Bypass. return $return; + // When in cron (background updates) don't deactivate the plugin, as we require a browser to reactivate it + if ( defined( 'DOING_CRON' ) && DOING_CRON ) + return $return; + $plugin = isset($plugin['plugin']) ? $plugin['plugin'] : ''; if ( empty($plugin) ) return new WP_Error('bad_request', $this->strings['bad_request']); @@ -642,8 +709,6 @@ class Plugin_Upgrader extends WP_Upgrader { /** * Theme Upgrader class for WordPress Themes, It is designed to upgrade/install themes from a local zip, remote zip URL, or uploaded zip file. * - * @TODO More Detailed docs, for methods as well. - * * @package WordPress * @subpackage Upgrader * @since 2.8.0 @@ -705,7 +770,7 @@ class Theme_Upgrader extends WP_Upgrader { if ( ! $api || is_wp_error($api) ) { $this->skin->feedback( 'parent_theme_not_found', $theme_info->get('Template') ); // Don't show activate or preview actions after install - add_filter('install_theme_complete_actions', array(&$this, 'hide_activate_preview_actions') ); + add_filter('install_theme_complete_actions', array($this, 'hide_activate_preview_actions') ); return $install_result; } @@ -724,13 +789,13 @@ class Theme_Upgrader extends WP_Upgrader { // Install the parent theme $parent_result = $this->run( array( 'package' => $api->download_link, - 'destination' => WP_CONTENT_DIR . '/themes', + 'destination' => get_theme_root(), 'clear_destination' => false, //Do not overwrite files. 'clear_working' => true ) ); if ( is_wp_error($parent_result) ) - add_filter('install_theme_complete_actions', array(&$this, 'hide_activate_preview_actions') ); + add_filter('install_theme_complete_actions', array($this, 'hide_activate_preview_actions') ); // Start cleaning up after the parents installation remove_filter('install_theme_complete_actions', '__return_false', 999); @@ -748,37 +813,48 @@ class Theme_Upgrader extends WP_Upgrader { return $actions; } - function install($package) { + function install( $package, $args = array() ) { + + $defaults = array( + 'clear_update_cache' => true, + ); + $parsed_args = wp_parse_args( $args, $defaults ); $this->init(); $this->install_strings(); - add_filter('upgrader_source_selection', array(&$this, 'check_package') ); - add_filter('upgrader_post_install', array(&$this, 'check_parent_theme_filter'), 10, 3); + add_filter('upgrader_source_selection', array($this, 'check_package') ); + add_filter('upgrader_post_install', array($this, 'check_parent_theme_filter'), 10, 3); - $options = array( - 'package' => $package, - 'destination' => WP_CONTENT_DIR . '/themes', - 'clear_destination' => false, //Do not overwrite files. - 'clear_working' => true - ); - - $this->run($options); + $this->run( array( + 'package' => $package, + 'destination' => get_theme_root(), + 'clear_destination' => false, //Do not overwrite files. + 'clear_working' => true, + 'hook_extra' => array( + 'type' => 'theme', + 'action' => 'install', + ), + ) ); - remove_filter('upgrader_source_selection', array(&$this, 'check_package') ); - remove_filter('upgrader_post_install', array(&$this, 'check_parent_theme_filter')); + remove_filter('upgrader_source_selection', array($this, 'check_package') ); + remove_filter('upgrader_post_install', array($this, 'check_parent_theme_filter')); if ( ! $this->result || is_wp_error($this->result) ) return $this->result; - // Force refresh of theme update information - wp_clean_themes_cache(); - do_action( 'upgrader_process_complete', $this, array( 'action' => 'install', 'type' => 'theme' ), $package ); + // Refresh the Theme Update information + wp_clean_themes_cache( $parsed_args['clear_update_cache'] ); return true; } - function upgrade($theme) { + function upgrade( $theme, $args = array() ) { + + $defaults = array( + 'clear_update_cache' => true, + ); + $parsed_args = wp_parse_args( $args, $defaults ); $this->init(); $this->upgrade_strings(); @@ -795,37 +871,40 @@ class Theme_Upgrader extends WP_Upgrader { $r = $current->response[ $theme ]; - add_filter('upgrader_pre_install', array(&$this, 'current_before'), 10, 2); - add_filter('upgrader_post_install', array(&$this, 'current_after'), 10, 2); - add_filter('upgrader_clear_destination', array(&$this, 'delete_old_theme'), 10, 4); - - $options = array( - 'package' => $r['package'], - 'destination' => WP_CONTENT_DIR . '/themes', - 'clear_destination' => true, - 'clear_working' => true, - 'hook_extra' => array( - 'theme' => $theme - ) - ); - - $this->run($options); + add_filter('upgrader_pre_install', array($this, 'current_before'), 10, 2); + add_filter('upgrader_post_install', array($this, 'current_after'), 10, 2); + add_filter('upgrader_clear_destination', array($this, 'delete_old_theme'), 10, 4); + + $this->run( array( + 'package' => $r['package'], + 'destination' => get_theme_root( $theme ), + 'clear_destination' => true, + 'clear_working' => true, + 'hook_extra' => array( + 'theme' => $theme, + 'type' => 'theme', + 'action' => 'update', + ), + ) ); - remove_filter('upgrader_pre_install', array(&$this, 'current_before')); - remove_filter('upgrader_post_install', array(&$this, 'current_after')); - remove_filter('upgrader_clear_destination', array(&$this, 'delete_old_theme')); + remove_filter('upgrader_pre_install', array($this, 'current_before')); + remove_filter('upgrader_post_install', array($this, 'current_after')); + remove_filter('upgrader_clear_destination', array($this, 'delete_old_theme')); if ( ! $this->result || is_wp_error($this->result) ) return $this->result; - // Force refresh of theme update information - wp_clean_themes_cache(); - do_action( 'upgrader_process_complete', $this, array( 'action' => 'update', 'type' => 'theme' ), $theme ); + wp_clean_themes_cache( $parsed_args['clear_update_cache'] ); return true; } - function bulk_upgrade($themes) { + function bulk_upgrade( $themes, $args = array() ) { + + $defaults = array( + 'clear_update_cache' => true, + ); + $parsed_args = wp_parse_args( $args, $defaults ); $this->init(); $this->bulk = true; @@ -833,9 +912,9 @@ class Theme_Upgrader extends WP_Upgrader { $current = get_site_transient( 'update_themes' ); - add_filter('upgrader_pre_install', array(&$this, 'current_before'), 10, 2); - add_filter('upgrader_post_install', array(&$this, 'current_after'), 10, 2); - add_filter('upgrader_clear_destination', array(&$this, 'delete_old_theme'), 10, 4); + add_filter('upgrader_pre_install', array($this, 'current_before'), 10, 2); + add_filter('upgrader_post_install', array($this, 'current_after'), 10, 2); + add_filter('upgrader_clear_destination', array($this, 'delete_old_theme'), 10, 4); $this->skin->header(); @@ -848,8 +927,11 @@ class Theme_Upgrader extends WP_Upgrader { $this->skin->bulk_header(); - // Only start maintenance mode if running in Multisite OR the theme is in use - $maintenance = is_multisite(); // @TODO: This should only kick in for individual sites if at all possible. + // Only start maintenance mode if: + // - running Multisite and there are one or more themes specified, OR + // - a theme with an update available is currently in use. + // @TODO: For multisite, maintenance mode should only kick in for individual sites if at all possible. + $maintenance = ( is_multisite() && ! empty( $themes ) ); foreach ( $themes as $theme ) $maintenance = $maintenance || $theme == get_stylesheet() || $theme == get_template(); if ( $maintenance ) @@ -876,17 +958,15 @@ class Theme_Upgrader extends WP_Upgrader { // Get the URL to the zip file $r = $current->response[ $theme ]; - $options = array( - 'package' => $r['package'], - 'destination' => WP_CONTENT_DIR . '/themes', - 'clear_destination' => true, - 'clear_working' => true, - 'hook_extra' => array( - 'theme' => $theme - ) - ); - - $result = $this->run($options); + $result = $this->run( array( + 'package' => $r['package'], + 'destination' => get_theme_root( $theme ), + 'clear_destination' => true, + 'clear_working' => true, + 'hook_extra' => array( + 'theme' => $theme + ), + ) ); $results[$theme] = $this->result; @@ -897,18 +977,24 @@ class Theme_Upgrader extends WP_Upgrader { $this->maintenance_mode(false); + do_action( 'upgrader_process_complete', $this, array( + 'action' => 'update', + 'type' => 'plugin', + 'bulk' => true, + 'themes' => $themes, + ) ); + $this->skin->bulk_footer(); $this->skin->footer(); // Cleanup our hooks, in case something else does a upgrade on this connection. - remove_filter('upgrader_pre_install', array(&$this, 'current_before')); - remove_filter('upgrader_post_install', array(&$this, 'current_after')); - remove_filter('upgrader_clear_destination', array(&$this, 'delete_old_theme')); + remove_filter('upgrader_pre_install', array($this, 'current_before')); + remove_filter('upgrader_post_install', array($this, 'current_after')); + remove_filter('upgrader_clear_destination', array($this, 'delete_old_theme')); - // Force refresh of theme update information - wp_clean_themes_cache(); - do_action( 'upgrader_process_complete', $this, array( 'action' => 'update', 'type' => 'theme', 'bulk' => true ), $themes ); + // Refresh the Theme Update information + wp_clean_themes_cache( $parsed_args['clear_update_cache'] ); return $results; } @@ -926,16 +1012,16 @@ class Theme_Upgrader extends WP_Upgrader { // A proper archive should have a style.css file in the single subdirectory if ( ! file_exists( $working_directory . 'style.css' ) ) - return new WP_Error( 'incompatible_archive', $this->strings['incompatible_archive'], __('The theme is missing the style.css stylesheet.') ); + return new WP_Error( 'incompatible_archive_theme_no_style', $this->strings['incompatible_archive'], __( 'The theme is missing the style.css stylesheet.' ) ); $info = get_file_data( $working_directory . 'style.css', array( 'Name' => 'Theme Name', 'Template' => 'Template' ) ); if ( empty( $info['Name'] ) ) - return new WP_Error( 'incompatible_archive', $this->strings['incompatible_archive'], __("The style.css stylesheet doesn't contain a valid theme header.") ); + return new WP_Error( 'incompatible_archive_theme_no_name', $this->strings['incompatible_archive'], __( "The style.css stylesheet doesn't contain a valid theme header." ) ); // If it's not a child theme, it must have at least an index.php to be legit. if ( empty( $info['Template'] ) && ! file_exists( $working_directory . 'index.php' ) ) - return new WP_Error( 'incompatible_archive', $this->strings['incompatible_archive'], __('The theme is missing the index.php file.') ); + return new WP_Error( 'incompatible_archive_theme_no_index', $this->strings['incompatible_archive'], __( 'The theme is missing the index.php file.' ) ); return $source; } @@ -978,18 +1064,22 @@ class Theme_Upgrader extends WP_Upgrader { return $return; } - function delete_old_theme($removed, $local_destination, $remote_destination, $theme) { + function delete_old_theme( $removed, $local_destination, $remote_destination, $theme ) { global $wp_filesystem; - $theme = isset($theme['theme']) ? $theme['theme'] : ''; + if ( is_wp_error( $removed ) ) + return $removed; // Pass errors through. - if ( is_wp_error($removed) || empty($theme) ) - return $removed; //Pass errors through. + if ( ! isset( $theme['theme'] ) ) + return $removed; - $themes_dir = $wp_filesystem->wp_themes_dir(); - if ( $wp_filesystem->exists( trailingslashit($themes_dir) . $theme ) ) - if ( ! $wp_filesystem->delete( trailingslashit($themes_dir) . $theme, true ) ) + $theme = $theme['theme']; + $themes_dir = trailingslashit( $wp_filesystem->wp_themes_dir( $theme ) ); + if ( $wp_filesystem->exists( $themes_dir . $theme ) ) { + if ( ! $wp_filesystem->delete( $themes_dir . $theme, true ) ) return false; + } + return true; } @@ -1001,15 +1091,210 @@ class Theme_Upgrader extends WP_Upgrader { else return false; } - return wp_get_theme( $theme, WP_CONTENT_DIR . '/themes/' ); + return wp_get_theme( $theme ); } } +add_action( 'upgrader_process_complete', array( 'Language_Pack_Upgrader', 'async_upgrade' ), 20 ); + /** - * Core Upgrader class for WordPress. It allows for WordPress to upgrade itself in combination with the wp-admin/includes/update-core.php file + * Language pack upgrader, for updating translations of plugins, themes, and core. * - * @TODO More Detailed docs, for methods as well. + * @package WordPress + * @subpackage Upgrader + * @since 3.7.0 + */ +class Language_Pack_Upgrader extends WP_Upgrader { + + var $result; + var $bulk = true; + + static function async_upgrade( $upgrader = false ) { + // Avoid recursion. + if ( $upgrader && $upgrader instanceof Language_Pack_Upgrader ) + return; + + // Nothing to do? + $language_updates = wp_get_translation_updates(); + if ( ! $language_updates ) + return; + + $skin = new Language_Pack_Upgrader_Skin( array( + 'skip_header_footer' => true, + ) ); + + $lp_upgrader = new Language_Pack_Upgrader( $skin ); + $lp_upgrader->upgrade(); + } + + function upgrade_strings() { + $this->strings['starting_upgrade'] = __( 'Some of your translations need updating. Sit tight for a few more seconds while we update them as well.' ); + $this->strings['up_to_date'] = __( 'The translation is up to date.' ); // We need to silently skip this case + $this->strings['no_package'] = __( 'Update package not available.' ); + $this->strings['downloading_package'] = __( 'Downloading translation from %s…' ); + $this->strings['unpack_package'] = __( 'Unpacking the update…' ); + $this->strings['process_failed'] = __( 'Translation update failed.' ); + $this->strings['process_success'] = __( 'Translation updated successfully.' ); + } + + function upgrade( $update = false, $args = array() ) { + if ( $update ) + $update = array( $update ); + $results = $this->bulk_upgrade( $update, $args ); + return $results[0]; + } + + function bulk_upgrade( $language_updates = array(), $args = array() ) { + global $wp_filesystem; + + $defaults = array( + 'clear_update_cache' => true, + ); + $parsed_args = wp_parse_args( $args, $defaults ); + + $this->init(); + $this->upgrade_strings(); + + if ( ! $language_updates ) + $language_updates = wp_get_translation_updates(); + + if ( empty( $language_updates ) ) { + $this->skin->header(); + $this->skin->before(); + $this->skin->set_result( true ); + $this->skin->feedback( 'up_to_date' ); + $this->skin->after(); + $this->skin->bulk_footer(); + $this->skin->footer(); + return true; + } + + if ( 'upgrader_process_complete' == current_filter() ) + $this->skin->feedback( 'starting_upgrade' ); + + add_filter( 'upgrader_source_selection', array( &$this, 'check_package' ), 10, 3 ); + + $this->skin->header(); + + // Connect to the Filesystem first. + $res = $this->fs_connect( array( WP_CONTENT_DIR, WP_LANG_DIR ) ); + if ( ! $res ) { + $this->skin->footer(); + return false; + } + + $results = array(); + + $this->update_count = count( $language_updates ); + $this->update_current = 0; + + // The filesystem's mkdir() is not recursive. Make sure WP_LANG_DIR exists, + // as we then may need to create a /plugins or /themes directory inside of it. + $remote_destination = $wp_filesystem->find_folder( WP_LANG_DIR ); + if ( ! $wp_filesystem->exists( $remote_destination ) ) + if ( ! $wp_filesystem->mkdir( $remote_destination, FS_CHMOD_DIR ) ) + return new WP_Error( 'mkdir_failed_lang_dir', $this->strings['mkdir_failed'], $remote_destination ); + + foreach ( $language_updates as $language_update ) { + + $this->skin->language_update = $language_update; + + $destination = WP_LANG_DIR; + if ( 'plugin' == $language_update->type ) + $destination .= '/plugins'; + elseif ( 'theme' == $language_update->type ) + $destination .= '/themes'; + + $this->update_current++; + + $options = array( + 'package' => $language_update->package, + 'destination' => $destination, + 'clear_destination' => false, + 'abort_if_destination_exists' => false, // We expect the destination to exist. + 'clear_working' => true, + 'is_multi' => true, + 'hook_extra' => array( + 'language_update_type' => $language_update->type, + 'language_update' => $language_update, + ) + ); + + $result = $this->run( $options ); + + $results[] = $this->result; + + // Prevent credentials auth screen from displaying multiple times. + if ( false === $result ) + break; + } + + $this->skin->bulk_footer(); + + $this->skin->footer(); + + // Clean up our hooks, in case something else does an upgrade on this connection. + remove_filter( 'upgrader_source_selection', array( &$this, 'check_package' ), 10, 2 ); + + if ( $parsed_args['clear_update_cache'] ) { + wp_clean_themes_cache( true ); + wp_clean_plugins_cache( true ); + delete_site_transient( 'update_core' ); + } + + return $results; + } + + function check_package( $source, $remote_source ) { + global $wp_filesystem; + + if ( is_wp_error( $source ) ) + return $source; + + // Check that the folder contains a valid language. + $files = $wp_filesystem->dirlist( $remote_source ); + + // Check to see if a .po and .mo exist in the folder. + $po = $mo = false; + foreach ( (array) $files as $file => $filedata ) { + if ( '.po' == substr( $file, -3 ) ) + $po = true; + elseif ( '.mo' == substr( $file, -3 ) ) + $mo = true; + } + + if ( ! $mo || ! $po ) + return new WP_Error( 'incompatible_archive_pomo', $this->strings['incompatible_archive'], + __( 'The language pack is missing either the .po or .mo files.' ) ); + + return $source; + } + + function get_name_for_update( $update ) { + switch ( $update->type ) { + case 'core': + return 'WordPress'; // Not translated + break; + case 'theme': + $theme = wp_get_theme( $update->slug ); + if ( $theme->exists() ) + return $theme->Get( 'Name' ); + break; + case 'plugin': + $plugin_data = get_plugins( '/' . $update->slug ); + $plugin_data = array_shift( $plugin_data ); + if ( $plugin_data ) + return $plugin_data['Name']; + break; + } + return ''; + } + +} + +/** + * Core Upgrader class for WordPress. It allows for WordPress to upgrade itself in combination with the wp-admin/includes/update-core.php file * * @package WordPress * @subpackage Upgrader @@ -1024,11 +1309,22 @@ class Core_Upgrader extends WP_Upgrader { $this->strings['unpack_package'] = __('Unpacking the update…'); $this->strings['copy_failed'] = __('Could not copy files.'); $this->strings['copy_failed_space'] = __('Could not copy files. You may have run out of disk space.' ); + $this->strings['start_rollback'] = __( 'Attempting to roll back to previous version.' ); + $this->strings['rollback_was_required'] = __( 'Due to an error during updating, WordPress has rolled back to your previous version.' ); } - function upgrade($current) { + function upgrade( $current, $args = array() ) { global $wp_filesystem, $wp_version; + $start_time = time(); + + $defaults = array( + 'pre_check_md5' => true, + 'attempt_rollback' => false, + 'do_rollback' => false, + ); + $parsed_args = wp_parse_args( $args, $defaults ); + $this->init(); $this->upgrade_strings(); @@ -1042,11 +1338,19 @@ class Core_Upgrader extends WP_Upgrader { $wp_dir = trailingslashit($wp_filesystem->abspath()); + $partial = true; + if ( $parsed_args['do_rollback'] ) + $partial = false; + elseif ( $parsed_args['pre_check_md5'] && ! $this->check_files() ) + $partial = false; + // If partial update is returned from the API, use that, unless we're doing a reinstall. // If we cross the new_bundled version number, then use the new_bundled zip. // Don't though if the constant is set to skip bundled items. // If the API returns a no_content zip, go with it. Finally, default to the full zip. - if ( $current->packages->partial && 'reinstall' != $current->response && $wp_version == $current->partial_version ) + if ( $parsed_args['do_rollback'] && $current->packages->rollback ) + $to_download = 'rollback'; + elseif ( $current->packages->partial && 'reinstall' != $current->response && $wp_version == $current->partial_version && $partial ) $to_download = 'partial'; elseif ( $current->packages->new_bundled && version_compare( $wp_version, $current->new_bundled, '<' ) && ( ! defined( 'CORE_UPGRADE_SKIP_NEW_BUNDLED' ) || ! CORE_UPGRADE_SKIP_NEW_BUNDLED ) ) @@ -1067,625 +1371,1031 @@ class Core_Upgrader extends WP_Upgrader { // Copy update-core.php from the new version into place. if ( !$wp_filesystem->copy($working_dir . '/wordpress/wp-admin/includes/update-core.php', $wp_dir . 'wp-admin/includes/update-core.php', true) ) { $wp_filesystem->delete($working_dir, true); - return new WP_Error('copy_failed', $this->strings['copy_failed']); + return new WP_Error( 'copy_failed_for_update_core_file', __( 'The update cannot be installed because we will be unable to copy some files. This is usually due to inconsistent file permissions.' ), 'wp-admin/includes/update-core.php' ); } $wp_filesystem->chmod($wp_dir . 'wp-admin/includes/update-core.php', FS_CHMOD_FILE); - require(ABSPATH . 'wp-admin/includes/update-core.php'); + require_once( ABSPATH . 'wp-admin/includes/update-core.php' ); if ( ! function_exists( 'update_core' ) ) return new WP_Error( 'copy_failed_space', $this->strings['copy_failed_space'] ); $result = update_core( $working_dir, $wp_dir ); - do_action( 'upgrader_process_complete', $this, array( 'action' => 'update', 'type' => 'core' ), $result ); - return $result; - } -} + // In the event of an issue, we may be able to roll back. + if ( $parsed_args['attempt_rollback'] && $current->packages->rollback && ! $parsed_args['do_rollback'] ) { + $try_rollback = false; + if ( is_wp_error( $result ) ) { + $error_code = $result->get_error_code(); + // Not all errors are equal. These codes are critical: copy_failed__copy_dir, + // mkdir_failed__copy_dir, copy_failed__copy_dir_retry, and disk_full. + // do_rollback allows for update_core() to trigger a rollback if needed. + if ( false !== strpos( $error_code, 'do_rollback' ) ) + $try_rollback = true; + elseif ( false !== strpos( $error_code, '__copy_dir' ) ) + $try_rollback = true; + elseif ( 'disk_full' === $error_code ) + $try_rollback = true; + } -/** - * Generic Skin for the WordPress Upgrader classes. This skin is designed to be extended for specific purposes. - * - * @TODO More Detailed docs, for methods as well. - * - * @package WordPress - * @subpackage Upgrader - * @since 2.8.0 - */ -class WP_Upgrader_Skin { + if ( $try_rollback ) { + apply_filters( 'update_feedback', $result ); + apply_filters( 'update_feedback', $this->strings['start_rollback'] ); - var $upgrader; - var $done_header = false; - var $result = false; + $rollback_result = $this->upgrade( $current, array_merge( $parsed_args, array( 'do_rollback' => true ) ) ); - function __construct($args = array()) { - $defaults = array( 'url' => '', 'nonce' => '', 'title' => '', 'context' => false ); - $this->options = wp_parse_args($args, $defaults); - } + $original_result = $result; + $result = new WP_Error( 'rollback_was_required', $this->strings['rollback_was_required'], (object) array( 'update' => $original_result, 'rollback' => $rollback_result ) ); + } + } - function set_upgrader(&$upgrader) { - if ( is_object($upgrader) ) - $this->upgrader =& $upgrader; - $this->add_strings(); - } + do_action( 'upgrader_process_complete', $this, array( 'action' => 'update', 'type' => 'core' ) ); - function add_strings() { - } + // Clear the current updates + delete_site_transient( 'update_core' ); - function set_result($result) { - $this->result = $result; - } + if ( ! $parsed_args['do_rollback'] ) { + $stats = array( + 'update_type' => $current->response, + 'success' => true, + 'fs_method' => $wp_filesystem->method, + 'fs_method_forced' => defined( 'FS_METHOD' ) || has_filter( 'filesystem_method' ), + 'time_taken' => time() - $start_time, + 'attempted' => $current->version, + ); - function request_filesystem_credentials($error = false) { - $url = $this->options['url']; - $context = $this->options['context']; - if ( !empty($this->options['nonce']) ) - $url = wp_nonce_url($url, $this->options['nonce']); - return request_filesystem_credentials($url, '', $error, $context); //Possible to bring inline, Leaving as is for now. - } + if ( is_wp_error( $result ) ) { + $stats['success'] = false; + // Did a rollback occur? + if ( ! empty( $try_rollback ) ) { + $stats['error_code'] = $original_result->get_error_code(); + $stats['error_data'] = $original_result->get_error_data(); + // Was the rollback successful? If not, collect its error too. + $stats['rollback'] = ! is_wp_error( $rollback_result ); + if ( is_wp_error( $rollback_result ) ) { + $stats['rollback_code'] = $rollback_result->get_error_code(); + $stats['rollback_data'] = $rollback_result->get_error_data(); + } + } else { + $stats['error_code'] = $result->get_error_code(); + $stats['error_data'] = $result->get_error_data(); + } + } - function header() { - if ( $this->done_header ) - return; - $this->done_header = true; - echo '
'; - screen_icon(); - echo '

' . $this->options['title'] . '

'; - } - function footer() { - echo '
'; + wp_version_check( $stats ); + } + + return $result; } - function error($errors) { - if ( ! $this->done_header ) - $this->header(); - if ( is_string($errors) ) { - $this->feedback($errors); - } elseif ( is_wp_error($errors) && $errors->get_error_code() ) { - foreach ( $errors->get_error_messages() as $message ) { - if ( $errors->get_error_data() ) - $this->feedback($message . ' ' . esc_html( $errors->get_error_data() ) ); - else - $this->feedback($message); + // Determines if this WordPress Core version should update to $offered_ver or not + static function should_update_to_version( $offered_ver /* x.y.z */ ) { + include ABSPATH . WPINC . '/version.php'; // $wp_version; // x.y.z + + $current_branch = implode( '.', array_slice( preg_split( '/[.-]/', $wp_version ), 0, 2 ) ); // x.y + $new_branch = implode( '.', array_slice( preg_split( '/[.-]/', $offered_ver ), 0, 2 ) ); // x.y + $current_is_development_version = (bool) strpos( $wp_version, '-' ); + + // Defaults: + $upgrade_dev = true; + $upgrade_minor = true; + $upgrade_major = false; + + // WP_AUTO_UPDATE_CORE = true (all), 'minor', false. + if ( defined( 'WP_AUTO_UPDATE_CORE' ) ) { + if ( false === WP_AUTO_UPDATE_CORE ) { + // Defaults to turned off, unless a filter allows it + $upgrade_dev = $upgrade_minor = $upgrade_major = false; + } elseif ( true === WP_AUTO_UPDATE_CORE ) { + // ALL updates for core + $upgrade_dev = $upgrade_minor = $upgrade_major = true; + } elseif ( 'minor' === WP_AUTO_UPDATE_CORE ) { + // Only minor updates for core + $upgrade_dev = $upgrade_major = false; + $upgrade_minor = true; } } - } - function feedback($string) { - if ( isset( $this->upgrader->strings[$string] ) ) - $string = $this->upgrader->strings[$string]; - - if ( strpos($string, '%') !== false ) { - $args = func_get_args(); - $args = array_splice($args, 1); - if ( $args ) { - $args = array_map( 'strip_tags', $args ); - $args = array_map( 'esc_html', $args ); - $string = vsprintf($string, $args); - } + // 1: If we're already on that version, not much point in updating? + if ( $offered_ver == $wp_version ) + return false; + + // 2: If we're running a newer version, that's a nope + if ( version_compare( $wp_version, $offered_ver, '>' ) ) + return false; + + $failure_data = get_site_option( 'auto_core_update_failed' ); + if ( $failure_data ) { + // If this was a critical update failure, cannot update. + if ( ! empty( $failure_data['critical'] ) ) + return false; + + // Don't claim we can update on update-core.php if we have a non-critical failure logged. + if ( $wp_version == $failure_data['current'] && false !== strpos( $offered_ver, '.1.next.minor' ) ) + return false; + + // Cannot update if we're retrying the same A to B update that caused a non-critical failure. + // Some non-critical failures do allow retries, like download_failed. + // 3.7.1 => 3.7.2 resulted in files_not_writable, if we are still on 3.7.1 and still trying to update to 3.7.2. + if ( empty( $failure_data['retry'] ) && $wp_version == $failure_data['current'] && $offered_ver == $failure_data['attempted'] ) + return false; } - if ( empty($string) ) - return; - show_message($string); + + // 3: 3.7-alpha-25000 -> 3.7-alpha-25678 -> 3.7-beta1 -> 3.7-beta2 + if ( $current_is_development_version ) { + if ( ! apply_filters( 'allow_dev_auto_core_updates', $upgrade_dev ) ) + return false; + // else fall through to minor + major branches below + } + + // 4: Minor In-branch updates (3.7.0 -> 3.7.1 -> 3.7.2 -> 3.7.4) + if ( $current_branch == $new_branch ) + return apply_filters( 'allow_minor_auto_core_updates', $upgrade_minor ); + + // 5: Major version updates (3.7.0 -> 3.8.0 -> 3.9.1) + if ( version_compare( $new_branch, $current_branch, '>' ) ) + return apply_filters( 'allow_major_auto_core_updates', $upgrade_major ); + + // If we're not sure, we don't want it + return false; } - function before() {} - function after() {} + function check_files() { + global $wp_version, $wp_local_package; + + $checksums = get_core_checksums( $wp_version, isset( $wp_local_package ) ? $wp_local_package : 'en_US' ); + + if ( ! is_array( $checksums ) ) + return false; + + foreach ( $checksums as $file => $checksum ) { + // Skip files which get updated + if ( 'wp-content' == substr( $file, 0, 10 ) ) + continue; + if ( ! file_exists( ABSPATH . $file ) || md5_file( ABSPATH . $file ) !== $checksum ) + return false; + } + + return true; + } } /** - * Plugin Upgrader Skin for WordPress Plugin Upgrades. - * - * @TODO More Detailed docs, for methods as well. + * Upgrade Skin helper for File uploads. This class handles the upload process and passes it as if it's a local file to the Upgrade/Installer functions. * * @package WordPress * @subpackage Upgrader * @since 2.8.0 */ -class Plugin_Upgrader_Skin extends WP_Upgrader_Skin { - var $plugin = ''; - var $plugin_active = false; - var $plugin_network_active = false; +class File_Upload_Upgrader { + var $package; + var $filename; + var $id = 0; - function __construct($args = array()) { - $defaults = array( 'url' => '', 'plugin' => '', 'nonce' => '', 'title' => __('Update Plugin') ); - $args = wp_parse_args($args, $defaults); + function __construct($form, $urlholder) { - $this->plugin = $args['plugin']; + if ( empty($_FILES[$form]['name']) && empty($_GET[$urlholder]) ) + wp_die(__('Please select a file')); - $this->plugin_active = is_plugin_active( $this->plugin ); - $this->plugin_network_active = is_plugin_active_for_network( $this->plugin ); + //Handle a newly uploaded file, Else assume it's already been uploaded + if ( ! empty($_FILES) ) { + $overrides = array( 'test_form' => false, 'test_type' => false ); + $file = wp_handle_upload( $_FILES[$form], $overrides ); - parent::__construct($args); - } + if ( isset( $file['error'] ) ) + wp_die( $file['error'] ); - function after() { - $this->plugin = $this->upgrader->plugin_info(); - if ( !empty($this->plugin) && !is_wp_error($this->result) && $this->plugin_active ){ - echo ''; - } + $this->filename = $_FILES[$form]['name']; + $this->package = $file['file']; - $update_actions = array( - 'activate_plugin' => '' . __('Activate Plugin') . '', - 'plugins_page' => '' . __('Return to Plugins page') . '' - ); - if ( $this->plugin_active || ! $this->result || is_wp_error( $this->result ) || ! current_user_can( 'activate_plugins' ) ) - unset( $update_actions['activate_plugin'] ); + // 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' + ); - $update_actions = apply_filters('update_plugin_complete_actions', $update_actions, $this->plugin); - if ( ! empty($update_actions) ) - $this->feedback(implode(' | ', (array)$update_actions)); - } + // 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')); - function before() { - if ( $this->upgrader->show_before ) { - echo $this->upgrader->show_before; - $this->upgrader->show_before = ''; + $this->filename = $attachment->post_title; + $this->package = get_attached_file( $attachment->ID ); + } 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; } } + + function cleanup() { + if ( $this->id ) + wp_delete_attachment( $this->id ); + + elseif ( file_exists( $this->package ) ) + return @unlink( $this->package ); + + return true; + } } /** - * Plugin Upgrader Skin for WordPress Plugin Upgrades. + * The WordPress automatic background updater. * * @package WordPress * @subpackage Upgrader - * @since 3.0.0 + * @since 3.7.0 */ -class Bulk_Upgrader_Skin extends WP_Upgrader_Skin { - var $in_loop = false; - var $error = false; - - function __construct($args = array()) { - $defaults = array( 'url' => '', 'nonce' => '' ); - $args = wp_parse_args($args, $defaults); +class WP_Automatic_Updater { + + /** + * Tracks update results during processing. + * + * @var array + */ + protected $update_results = array(); + + /** + * Whether the entire automatic updater is disabled. + * + * @since 3.7.0 + */ + public function is_disabled() { + // Background updates are disabled if you don't want file changes. + if ( defined( 'DISALLOW_FILE_MODS' ) && DISALLOW_FILE_MODS ) + return true; + + if ( defined( 'WP_INSTALLING' ) ) + return true; + + // More fine grained control can be done through the WP_AUTO_UPDATE_CORE constant and filters. + $disabled = defined( 'AUTOMATIC_UPDATER_DISABLED' ) && AUTOMATIC_UPDATER_DISABLED; + + /** + * Filter whether to entirely disable background updates. + * + * There are more fine-grained filters and controls for selective disabling. + * This filter parallels the AUTOMATIC_UPDATER_DISABLED constant in name. + * + * This also disables update notification emails. That may change in the future. + * + * @since 3.7.0 + * @param bool $disabled Whether the updater should be disabled. + */ + return apply_filters( 'automatic_updater_disabled', $disabled ); + } + + /** + * Check for version control checkouts. + * + * Checks for Subversion, Git, Mercurial, and Bazaar. It recursively looks up the + * filesystem to the top of the drive, erring on the side of detecting a VCS + * checkout somewhere. + * + * ABSPATH is always checked in addition to whatever $context is (which may be the + * wp-content directory, for example). The underlying assumption is that if you are + * using version control *anywhere*, then you should be making decisions for + * how things get updated. + * + * @since 3.7.0 + * + * @param string $context The filesystem path to check, in addition to ABSPATH. + */ + public function is_vcs_checkout( $context ) { + $context_dirs = array( untrailingslashit( $context ) ); + if ( $context !== ABSPATH ) + $context_dirs[] = untrailingslashit( ABSPATH ); + + $vcs_dirs = array( '.svn', '.git', '.hg', '.bzr' ); + $check_dirs = array(); + + foreach ( $context_dirs as $context_dir ) { + // Walk up from $context_dir to the root. + do { + $check_dirs[] = $context_dir; + + // Once we've hit '/' or 'C:\', we need to stop. dirname will keep returning the input here. + if ( $context_dir == dirname( $context_dir ) ) + break; - parent::__construct($args); - } + // Continue one level at a time. + } while ( $context_dir = dirname( $context_dir ) ); + } - function add_strings() { - $this->upgrader->strings['skin_upgrade_start'] = __('The update process is starting. This process may take a while on some hosts, so please be patient.'); - $this->upgrader->strings['skin_update_failed_error'] = __('An error occurred while updating %1$s: %2$s'); - $this->upgrader->strings['skin_update_failed'] = __('The update of %1$s failed.'); - $this->upgrader->strings['skin_update_successful'] = __('%1$s updated successfully.').' '.__('Show Details').'.'; - $this->upgrader->strings['skin_upgrade_end'] = __('All updates have been completed.'); - } + $check_dirs = array_unique( $check_dirs ); - function feedback($string) { - if ( isset( $this->upgrader->strings[$string] ) ) - $string = $this->upgrader->strings[$string]; - - if ( strpos($string, '%') !== false ) { - $args = func_get_args(); - $args = array_splice($args, 1); - if ( $args ) { - $args = array_map( 'strip_tags', $args ); - $args = array_map( 'esc_html', $args ); - $string = vsprintf($string, $args); + // Search all directories we've found for evidence of version control. + foreach ( $vcs_dirs as $vcs_dir ) { + foreach ( $check_dirs as $check_dir ) { + if ( $checkout = @is_dir( rtrim( $check_dir, '\\/' ) . "/$vcs_dir" ) ) + break 2; } } - if ( empty($string) ) - return; - if ( $this->in_loop ) - echo "$string
\n"; - else - echo "

$string

\n"; - } - function header() { - // Nothing, This will be displayed within a iframe. - } + /** + * Filter whether the automatic updater should consider a filesystem location to be potentially + * managed by a version control system. + * + * @since 3.7.0 + * + * @param bool $checkout Whether a VCS checkout was discovered at $context or ABSPATH, or anywhere higher. + * @param string $context The filesystem context (a path) against which filesystem status should be checked. + */ + return apply_filters( 'automatic_updates_is_vcs_checkout', $checkout, $context ); + } + + /** + * Tests to see if we can and should update a specific item. + * + * @since 3.7.0 + * + * @param string $type The type of update being checked: 'core', 'theme', 'plugin', 'translation'. + * @param object $item The update offer. + * @param string $context The filesystem context (a path) against which filesystem access and status + * should be checked. + */ + public function should_update( $type, $item, $context ) { + // Used to see if WP_Filesystem is set up to allow unattended updates. + $skin = new Automatic_Upgrader_Skin; + + if ( $this->is_disabled() ) + return false; - function footer() { - // Nothing, This will be displayed within a iframe. - } - function error($error) { - if ( is_string($error) && isset( $this->upgrader->strings[$error] ) ) - $this->error = $this->upgrader->strings[$error]; - - if ( is_wp_error($error) ) { - foreach ( $error->get_error_messages() as $emessage ) { - if ( $error->get_error_data() ) - $messages[] = $emessage . ' ' . esc_html( $error->get_error_data() ); - else - $messages[] = $emessage; - } - $this->error = implode(', ', $messages); + // If we can't do an auto core update, we may still be able to email the user. + if ( ! $skin->request_filesystem_credentials( false, $context ) || $this->is_vcs_checkout( $context ) ) { + if ( 'core' == $type ) + $this->send_core_update_notification_email( $item ); + return false; } - echo ''; - } - - function bulk_header() { - $this->feedback('skin_upgrade_start'); - } - function bulk_footer() { - $this->feedback('skin_upgrade_end'); - } + // Next up, is this an item we can update? + if ( 'core' == $type ) + $update = Core_Upgrader::should_update_to_version( $item->current ); + else + $update = ! empty( $item->autoupdate ); + + /** + * Filter whether to automatically update core, a plugin, a theme, or a language. + * + * The dynamic portion of the hook name, $type, refers to the type of update + * being checked. Can be 'core', 'theme', 'plugin', or 'translation'. + * + * Generally speaking, plugins, themes, and major core versions are not updated by default, + * while translations and minor and development versions for core are updated by default. + * + * See the filters allow_dev_auto_core_updates, allow_minor_auto_core_updates, and + * allow_major_auto_core_updates more straightforward filters to adjust core updates. + * + * @since 3.7.0 + * + * @param bool $update Whether to update. + * @param object $item The update offer. + */ + $update = apply_filters( 'auto_update_' . $type, $update, $item ); + + if ( ! $update ) { + if ( 'core' == $type ) + $this->send_core_update_notification_email( $item ); + return false; + } - function before($title = '') { - $this->in_loop = true; - printf( '

' . $this->upgrader->strings['skin_before_update_header'] . '

', $title, $this->upgrader->update_current, $this->upgrader->update_count); - echo ''; - echo '

'; - $this->flush_output(); - } + // If it's a core update, are we actually compatible with its requirements? + if ( 'core' == $type ) { + global $wpdb; - function after($title = '') { - echo '

'; - if ( $this->error || ! $this->result ) { - if ( $this->error ) - echo '

' . sprintf($this->upgrader->strings['skin_update_failed_error'], $title, $this->error) . '

'; + $php_compat = version_compare( phpversion(), $item->php_version, '>=' ); + if ( file_exists( WP_CONTENT_DIR . '/db.php' ) && empty( $wpdb->is_mysql ) ) + $mysql_compat = true; else - echo '

' . sprintf($this->upgrader->strings['skin_update_failed'], $title) . '

'; + $mysql_compat = version_compare( $wpdb->db_version(), $item->mysql_version, '>=' ); - echo ''; - } - if ( $this->result && ! is_wp_error( $this->result ) ) { - if ( ! $this->error ) - echo '

' . sprintf($this->upgrader->strings['skin_update_successful'], $title, 'jQuery(\'#progress-' . esc_js($this->upgrader->update_current) . '\').toggle();jQuery(\'span\', this).toggle(); return false;') . '

'; - echo ''; + if ( ! $php_compat || ! $mysql_compat ) + return false; } - $this->reset(); - $this->flush_output(); + return true; } - function reset() { - $this->in_loop = false; - $this->error = false; - } + /** + * Notifies an administrator of a core update. + * + * @since 3.7.0 + * + * @param object $item The update offer. + */ + protected function send_core_update_notification_email( $item ) { + $notify = true; + $notified = get_site_option( 'auto_core_update_notified' ); - function flush_output() { - wp_ob_end_flush_all(); - flush(); - } -} + // Don't notify if we've already notified the same email address of the same version. + if ( $notified && $notified['email'] == get_site_option( 'admin_email' ) && $notified['version'] == $item->current ) + return false; -class Bulk_Plugin_Upgrader_Skin extends Bulk_Upgrader_Skin { - var $plugin_info = array(); // Plugin_Upgrader::bulk() will fill this in. + // See if we need to notify users of a core update. + $notify = ! empty( $item->notify_email ); + + /** + * Whether to notify the site administrator of a new core update. + * + * By default, administrators are notified when the update offer received from WordPress.org + * sets a particular flag. This allows for discretion in if and when to notify. + * + * This filter only fires once per release -- if the same email address was already + * notified of the same new version, we won't repeatedly email the administrator. + * + * This filter is also used on about.php to check if a plugin has disabled these notifications. + * + * @since 3.7.0 + * + * @param bool $notify Whether the site administrator is notified. + * @param object $item The update offer. + */ + if ( ! apply_filters( 'send_core_update_notification_email', $notify, $item ) ) + return false; - function __construct($args = array()) { - parent::__construct($args); + $this->send_email( 'manual', $item ); + return true; } - function add_strings() { - parent::add_strings(); - $this->upgrader->strings['skin_before_update_header'] = __('Updating Plugin %1$s (%2$d/%3$d)'); - } + /** + * Update an item, if appropriate. + * + * @since 3.7.0 + * + * @param string $type The type of update being checked: 'core', 'theme', 'plugin', 'translation'. + * @param object $item The update offer. + */ + public function update( $type, $item ) { + $skin = new Automatic_Upgrader_Skin; + + switch ( $type ) { + case 'core': + // The Core upgrader doesn't use the Upgrader's skin during the actual main part of the upgrade, instead, firing a filter. + add_filter( 'update_feedback', array( $skin, 'feedback' ) ); + $upgrader = new Core_Upgrader( $skin ); + $context = ABSPATH; + break; + case 'plugin': + $upgrader = new Plugin_Upgrader( $skin ); + $context = WP_PLUGIN_DIR; // We don't support custom Plugin directories, or updates for WPMU_PLUGIN_DIR + break; + case 'theme': + $upgrader = new Theme_Upgrader( $skin ); + $context = get_theme_root( $item ); + break; + case 'translation': + $upgrader = new Language_Pack_Upgrader( $skin ); + $context = WP_CONTENT_DIR; // WP_LANG_DIR; + break; + } - function before($title = '') { - parent::before($this->plugin_info['Title']); - } + // Determine whether we can and should perform this update. + if ( ! $this->should_update( $type, $item, $context ) ) + return false; - function after($title = '') { - parent::after($this->plugin_info['Title']); - } - function bulk_footer() { - parent::bulk_footer(); - $update_actions = array( - 'plugins_page' => '' . __('Return to Plugins page') . '', - 'updates_page' => '' . __('Return to WordPress Updates') . '' - ); - if ( ! current_user_can( 'activate_plugins' ) ) - unset( $update_actions['plugins_page'] ); + switch ( $type ) { + case 'core': + $skin->feedback( __( 'Updating to WordPress %s' ), $item->version ); + $item_name = sprintf( __( 'WordPress %s' ), $item->version ); + break; + case 'theme': + $theme = wp_get_theme( $item ); + $item_name = $theme->Get( 'Name' ); + $skin->feedback( __( 'Updating theme: %s' ), $item_name ); + break; + case 'plugin': + $plugin_data = get_plugin_data( $context . '/' . $item ); + $item_name = $plugin_data['Name']; + $skin->feedback( __( 'Updating plugin: %s' ), $item_name ); + break; + case 'translation': + $language_item_name = $upgrader->get_name_for_update( $item ); + $item_name = sprintf( __( 'Translations for %s' ), $language_item_name ); + $skin->feedback( sprintf( __( 'Updating translations for %1$s (%2$s)…' ), $language_item_name, $item->language ) ); + break; + } - $update_actions = apply_filters('update_bulk_plugins_complete_actions', $update_actions, $this->plugin_info); - if ( ! empty($update_actions) ) - $this->feedback(implode(' | ', (array)$update_actions)); - } -} + // Boom, This sites about to get a whole new splash of paint! + $upgrade_result = $upgrader->upgrade( $item, array( + 'clear_update_cache' => false, + 'pre_check_md5' => false, /* always use partial builds if possible for core updates */ + 'attempt_rollback' => true, /* only available for core updates */ + ) ); -class Bulk_Theme_Upgrader_Skin extends Bulk_Upgrader_Skin { - var $theme_info = array(); // Theme_Upgrader::bulk() will fill this in. + // Core doesn't output this, so lets append it so we don't get confused + if ( 'core' == $type ) { + if ( is_wp_error( $upgrade_result ) ) { + $skin->error( __( 'Installation Failed' ), $upgrade_result ); + } else { + $skin->feedback( __( 'WordPress updated successfully' ) ); + } + } - function __construct($args = array()) { - parent::__construct($args); - } + $this->update_results[ $type ][] = (object) array( + 'item' => $item, + 'result' => $upgrade_result, + 'name' => $item_name, + 'messages' => $skin->get_upgrade_messages() + ); - function add_strings() { - parent::add_strings(); - $this->upgrader->strings['skin_before_update_header'] = __('Updating Theme %1$s (%2$d/%3$d)'); + return $upgrade_result; } - function before($title = '') { - parent::before( $this->theme_info->display('Name') ); - } + /** + * Kicks off the background update process, looping through all pending updates. + * + * @since 3.7.0 + */ + public function run() { + global $wpdb, $wp_version; - function after($title = '') { - parent::after( $this->theme_info->display('Name') ); - } + if ( $this->is_disabled() ) + return; - function bulk_footer() { - parent::bulk_footer(); - $update_actions = array( - 'themes_page' => '' . __('Return to Themes page') . '', - 'updates_page' => '' . __('Return to WordPress Updates') . '' - ); - if ( ! current_user_can( 'switch_themes' ) && ! current_user_can( 'edit_theme_options' ) ) - unset( $update_actions['themes_page'] ); + if ( ! is_main_network() || ! is_main_site() ) + return; - $update_actions = apply_filters('update_bulk_theme_complete_actions', $update_actions, $this->theme_info ); - if ( ! empty($update_actions) ) - $this->feedback(implode(' | ', (array)$update_actions)); - } -} + $lock_name = 'auto_updater.lock'; -/** - * Plugin Installer Skin for WordPress Plugin Installer. - * - * @TODO More Detailed docs, for methods as well. - * - * @package WordPress - * @subpackage Upgrader - * @since 2.8.0 - */ -class Plugin_Installer_Skin extends WP_Upgrader_Skin { - var $api; - var $type; + // Try to lock + $lock_result = $wpdb->query( $wpdb->prepare( "INSERT IGNORE INTO `$wpdb->options` ( `option_name`, `option_value`, `autoload` ) VALUES (%s, %s, 'no') /* LOCK */", $lock_name, time() ) ); - function __construct($args = array()) { - $defaults = array( 'type' => 'web', 'url' => '', 'plugin' => '', 'nonce' => '', 'title' => '' ); - $args = wp_parse_args($args, $defaults); + if ( ! $lock_result ) { + $lock_result = get_option( $lock_name ); - $this->type = $args['type']; - $this->api = isset($args['api']) ? $args['api'] : array(); + // If we couldn't create a lock, and there isn't a lock, bail + if ( ! $lock_result ) + return; - parent::__construct($args); - } + // Check to see if the lock is still valid + if ( $lock_result > ( time() - HOUR_IN_SECONDS ) ) + return; + } - function before() { - if ( !empty($this->api) ) - $this->upgrader->strings['process_success'] = sprintf( __('Successfully installed the plugin %s %s.'), $this->api->name, $this->api->version); - } + // Update the lock, as by this point we've definately got a lock, just need to fire the actions + update_option( $lock_name, time() ); + + // Don't automatically run these thins, as we'll handle it ourselves + remove_action( 'upgrader_process_complete', array( 'Language_Pack_Upgrader', 'async_upgrade' ), 20 ); + remove_action( 'upgrader_process_complete', 'wp_version_check' ); + remove_action( 'upgrader_process_complete', 'wp_update_plugins' ); + remove_action( 'upgrader_process_complete', 'wp_update_themes' ); + + // Next, Plugins + wp_update_plugins(); // Check for Plugin updates + $plugin_updates = get_site_transient( 'update_plugins' ); + if ( $plugin_updates && !empty( $plugin_updates->response ) ) { + foreach ( array_keys( $plugin_updates->response ) as $plugin ) { + $this->update( 'plugin', $plugin ); + } + // Force refresh of plugin update information + wp_clean_plugins_cache(); + } - function after() { + // Next, those themes we all love + wp_update_themes(); // Check for Theme updates + $theme_updates = get_site_transient( 'update_themes' ); + if ( $theme_updates && !empty( $theme_updates->response ) ) { + foreach ( array_keys( $theme_updates->response ) as $theme ) { + $this->update( 'theme', $theme ); + } + // Force refresh of theme update information + wp_clean_themes_cache(); + } - $plugin_file = $this->upgrader->plugin_info(); + // Next, Process any core update + wp_version_check(); // Check for Core updates + $core_update = find_core_auto_update(); - $install_actions = array(); + if ( $core_update ) + $this->update( 'core', $core_update ); - $from = isset($_GET['from']) ? wp_unslash( $_GET['from'] ) : 'plugins'; + // Clean up, and check for any pending translations + // (Core_Upgrader checks for core updates) + wp_update_themes(); // Check for Theme updates + wp_update_plugins(); // Check for Plugin updates - if ( 'import' == $from ) - $install_actions['activate_plugin'] = '' . __('Activate Plugin & Run Importer') . ''; - else - $install_actions['activate_plugin'] = '' . __('Activate Plugin') . ''; + // Finally, Process any new translations + $language_updates = wp_get_translation_updates(); + if ( $language_updates ) { + foreach ( $language_updates as $update ) { + $this->update( 'translation', $update ); + } - if ( is_multisite() && current_user_can( 'manage_network_plugins' ) ) { - $install_actions['network_activate'] = '' . __('Network Activate') . ''; - unset( $install_actions['activate_plugin'] ); - } + // Clear existing caches + wp_clean_plugins_cache(); + wp_clean_themes_cache(); + delete_site_transient( 'update_core' ); - if ( 'import' == $from ) - $install_actions['importers_page'] = '' . __('Return to Importers') . ''; - else if ( $this->type == 'web' ) - $install_actions['plugins_page'] = '' . __('Return to Plugin Installer') . ''; - else - $install_actions['plugins_page'] = '' . __('Return to Plugins page') . ''; + wp_version_check(); // check for Core updates + wp_update_themes(); // Check for Theme updates + wp_update_plugins(); // Check for Plugin updates + } - if ( ! $this->result || is_wp_error($this->result) ) { - unset( $install_actions['activate_plugin'], $install_actions['network_activate'] ); - } elseif ( ! current_user_can( 'activate_plugins' ) ) { - unset( $install_actions['activate_plugin'] ); + // Send debugging email to all development installs. + if ( ! empty( $this->update_results ) ) { + $development_version = false !== strpos( $wp_version, '-' ); + /** + * Filter whether to send a debugging email for each automatic background update. + * + * @since 3.7.0 + * @param bool $development_version By default, emails are sent if the install is a development version. + * Return false to avoid the email. + */ + if ( apply_filters( 'automatic_updates_send_debug_email', $development_version ) ) + $this->send_debug_email(); + + if ( ! empty( $this->update_results['core'] ) ) + $this->after_core_update( $this->update_results['core'][0] ); } - $install_actions = apply_filters('install_plugin_complete_actions', $install_actions, $this->api, $plugin_file); - if ( ! empty($install_actions) ) - $this->feedback(implode(' | ', (array)$install_actions)); + // Clear the lock + delete_option( $lock_name ); } -} -/** - * Theme Installer Skin for the WordPress Theme Installer. - * - * @TODO More Detailed docs, for methods as well. - * - * @package WordPress - * @subpackage Upgrader - * @since 2.8.0 - */ -class Theme_Installer_Skin extends WP_Upgrader_Skin { - var $api; - var $type; - - function __construct($args = array()) { - $defaults = array( 'type' => 'web', 'url' => '', 'theme' => '', 'nonce' => '', 'title' => '' ); - $args = wp_parse_args($args, $defaults); + /** + * If we tried to perform a core update, check if we should send an email, + * and if we need to avoid processing future updates. + * + * @param object $update_result The result of the core update. Includes the update offer and result. + */ + protected function after_core_update( $update_result ) { + global $wp_version; - $this->type = $args['type']; - $this->api = isset($args['api']) ? $args['api'] : array(); + $core_update = $update_result->item; + $result = $update_result->result; - parent::__construct($args); - } + if ( ! is_wp_error( $result ) ) { + $this->send_email( 'success', $core_update ); + return; + } - function before() { - if ( !empty($this->api) ) - $this->upgrader->strings['process_success'] = sprintf( $this->upgrader->strings['process_success_specific'], $this->api->name, $this->api->version); - } + $error_code = $result->get_error_code(); + + // Any of these WP_Error codes are critical failures, as in they occurred after we started to copy core files. + // We should not try to perform a background update again until there is a successful one-click update performed by the user. + $critical = false; + if ( $error_code === 'disk_full' || false !== strpos( $error_code, '__copy_dir' ) ) { + $critical = true; + } elseif ( $error_code === 'rollback_was_required' && is_wp_error( $result->get_error_data()->rollback ) ) { + // A rollback is only critical if it failed too. + $critical = true; + $rollback_result = $result->get_error_data()->rollback; + } elseif ( false !== strpos( $error_code, 'do_rollback' ) ) { + $critical = true; + } - function after() { - if ( empty($this->upgrader->result['destination_name']) ) + if ( $critical ) { + $critical_data = array( + 'attempted' => $core_update->current, + 'current' => $wp_version, + 'error_code' => $error_code, + 'error_data' => $result->get_error_data(), + 'timestamp' => time(), + 'critical' => true, + ); + if ( isset( $rollback_result ) ) { + $critical_data['rollback_code'] = $rollback_result->get_error_code(); + $critical_data['rollback_data'] = $rollback_result->get_error_data(); + } + update_site_option( 'auto_core_update_failed', $critical_data ); + $this->send_email( 'critical', $core_update, $result ); return; + } - $theme_info = $this->upgrader->theme_info(); - if ( empty( $theme_info ) ) + /* + * Any other WP_Error code (like download_failed or files_not_writable) occurs before + * we tried to copy over core files. Thus, the failures are early and graceful. + * + * We should avoid trying to perform a background update again for the same version. + * But we can try again if another version is released. + * + * For certain 'transient' failures, like download_failed, we should allow retries. + * In fact, let's schedule a special update for an hour from now. (It's possible + * the issue could actually be on WordPress.org's side.) If that one fails, then email. + */ + $send = true; + $transient_failures = array( 'incompatible_archive', 'download_failed', 'insane_distro' ); + if ( in_array( $error_code, $transient_failures ) && ! get_site_option( 'auto_core_update_failed' ) ) { + wp_schedule_single_event( time() + HOUR_IN_SECONDS, 'wp_maybe_auto_update' ); + $send = false; + } + + $n = get_site_option( 'auto_core_update_notified' ); + // Don't notify if we've already notified the same email address of the same version of the same notification type. + if ( $n && 'fail' == $n['type'] && $n['email'] == get_site_option( 'admin_email' ) && $n['version'] == $core_update->current ) + $send = false; + + update_site_option( 'auto_core_update_failed', array( + 'attempted' => $core_update->current, + 'current' => $wp_version, + 'error_code' => $error_code, + 'error_data' => $result->get_error_data(), + 'timestamp' => time(), + 'retry' => in_array( $error_code, $transient_failures ), + ) ); + + if ( $send ) + $this->send_email( 'fail', $core_update, $result ); + } + + /** + * Sends an email upon the completion or failure of a background core update. + * + * @since 3.7.0 + * + * @param string $type The type of email to send. Can be one of 'success', 'fail', 'manual', 'critical'. + * @param object $core_update The update offer that was attempted. + * @param mixed $result Optional. The result for the core update. Can be WP_Error. + */ + protected function send_email( $type, $core_update, $result = null ) { + update_site_option( 'auto_core_update_notified', array( + 'type' => $type, + 'email' => get_site_option( 'admin_email' ), + 'version' => $core_update->current, + 'timestamp' => time(), + ) ); + + $next_user_core_update = get_preferred_from_update_core(); + // If the update transient is empty, use the update we just performed + if ( ! $next_user_core_update ) + $next_user_core_update = $core_update; + $newer_version_available = ( 'upgrade' == $next_user_core_update->response && version_compare( $next_user_core_update->version, $core_update, '>' ) ); + + /** + * Filter whether to send an email following an automatic background core update. + * + * @since 3.7.0 + * + * @param bool $send Whether to send the email. Default true. + * @param string $type The type of email to send. Can be one of 'success', 'fail', 'critical'. + * @param object $core_update The update offer that was attempted. + * @param mixed $result The result for the core update. Can be WP_Error. + */ + if ( 'manual' !== $type && ! apply_filters( 'auto_core_update_send_email', true, $type, $core_update, $result ) ) return; - $name = $theme_info->display('Name'); - $stylesheet = $this->upgrader->result['destination_name']; - $template = $theme_info->get_template(); - - $preview_link = add_query_arg( array( - 'preview' => 1, - 'template' => urlencode( $template ), - 'stylesheet' => urlencode( $stylesheet ), - ), trailingslashit( home_url() ) ); - - $activate_link = add_query_arg( array( - 'action' => 'activate', - 'template' => urlencode( $template ), - 'stylesheet' => urlencode( $stylesheet ), - ), admin_url('themes.php') ); - $activate_link = wp_nonce_url( $activate_link, 'switch-theme_' . $stylesheet ); - - $install_actions = array(); - $install_actions['preview'] = '' . __('Preview') . ''; - $install_actions['preview'] .= '' . __('Live Preview') . ''; - $install_actions['activate'] = '' . __('Activate') . ''; - - if ( is_network_admin() && current_user_can( 'manage_network_themes' ) ) - $install_actions['network_enable'] = '' . __( 'Network Enable' ) . ''; - - if ( $this->type == 'web' ) - $install_actions['themes_page'] = '' . __('Return to Theme Installer') . ''; - elseif ( current_user_can( 'switch_themes' ) || current_user_can( 'edit_theme_options' ) ) - $install_actions['themes_page'] = '' . __('Return to Themes page') . ''; - - if ( ! $this->result || is_wp_error($this->result) || is_network_admin() || ! current_user_can( 'switch_themes' ) ) - unset( $install_actions['activate'], $install_actions['preview'] ); - - $install_actions = apply_filters('install_theme_complete_actions', $install_actions, $this->api, $stylesheet, $theme_info); - if ( ! empty($install_actions) ) - $this->feedback(implode(' | ', (array)$install_actions)); - } -} + switch ( $type ) { + case 'success' : // We updated. + /* translators: 1: Site name, 2: WordPress version number. */ + $subject = __( '[%1$s] Your site has updated to WordPress %2$s' ); + break; -/** - * Theme Upgrader Skin for WordPress Theme Upgrades. - * - * @TODO More Detailed docs, for methods as well. - * - * @package WordPress - * @subpackage Upgrader - * @since 2.8.0 - */ -class Theme_Upgrader_Skin extends WP_Upgrader_Skin { - var $theme = ''; + case 'fail' : // We tried to update but couldn't. + case 'manual' : // We can't update (and made no attempt). + /* translators: 1: Site name, 2: WordPress version number. */ + $subject = __( '[%1$s] WordPress %2$s is available. Please update!' ); + break; - function __construct($args = array()) { - $defaults = array( 'url' => '', 'theme' => '', 'nonce' => '', 'title' => __('Update Theme') ); - $args = wp_parse_args($args, $defaults); + case 'critical' : // We tried to update, started to copy files, then things went wrong. + /* translators: 1: Site name. */ + $subject = __( '[%1$s] URGENT: Your site may be down due to a failed update' ); + break; - $this->theme = $args['theme']; + default : + return; + } - parent::__construct($args); - } + // If the auto update is not to the latest version, say that the current version of WP is available instead. + $version = 'success' === $type ? $core_update->current : $next_user_core_update->current; + $subject = sprintf( $subject, wp_specialchars_decode( get_option( 'blogname' ), ENT_QUOTES ), $version ); - function after() { - - $update_actions = array(); - if ( ! empty( $this->upgrader->result['destination_name'] ) && $theme_info = $this->upgrader->theme_info() ) { - $name = $theme_info->display('Name'); - $stylesheet = $this->upgrader->result['destination_name']; - $template = $theme_info->get_template(); - - $preview_link = add_query_arg( array( - 'preview' => 1, - 'template' => urlencode( $template ), - 'stylesheet' => urlencode( $stylesheet ), - ), trailingslashit( home_url() ) ); - - $activate_link = add_query_arg( array( - 'action' => 'activate', - 'template' => urlencode( $template ), - 'stylesheet' => urlencode( $stylesheet ), - ), admin_url('themes.php') ); - $activate_link = wp_nonce_url( $activate_link, 'switch-theme_' . $stylesheet ); - - if ( get_stylesheet() == $stylesheet ) { - if ( current_user_can( 'edit_theme_options' ) ) - $update_actions['preview'] = '' . __('Customize') . ''; - } elseif ( current_user_can( 'switch_themes' ) ) { - $update_actions['preview'] = '' . __('Preview') . ''; - $update_actions['preview'] .= '' . __('Live Preview') . ''; - $update_actions['activate'] = '' . __('Activate') . ''; - } + $body = ''; - if ( ! $this->result || is_wp_error( $this->result ) || is_network_admin() ) - unset( $update_actions['preview'], $update_actions['activate'] ); - } + switch ( $type ) { + case 'success' : + $body .= sprintf( __( 'Howdy! Your site at %1$s has been updated automatically to WordPress %2$s.' ), home_url(), $core_update->current ); + $body .= "\n\n"; + if ( ! $newer_version_available ) + $body .= __( 'No further action is needed on your part.' ) . ' '; - $update_actions['themes_page'] = '' . __('Return to Themes page') . ''; + // Can only reference the About screen if their update was successful. + list( $about_version ) = explode( '-', $core_update->current, 2 ); + $body .= sprintf( __( "For more on version %s, see the About WordPress screen:" ), $about_version ); + $body .= "\n" . admin_url( 'about.php' ); - $update_actions = apply_filters('update_theme_complete_actions', $update_actions, $this->theme); - if ( ! empty($update_actions) ) - $this->feedback(implode(' | ', (array)$update_actions)); - } -} + if ( $newer_version_available ) { + $body .= "\n\n" . sprintf( __( 'WordPress %s is also now available.' ), $next_user_core_update->current ) . ' '; + $body .= __( 'Updating is easy and only takes a few moments:' ); + $body .= "\n" . network_admin_url( 'update-core.php' ); + } -/** - * Upgrade Skin helper for File uploads. This class handles the upload process and passes it as if it's a local file to the Upgrade/Installer functions. - * - * @TODO More Detailed docs, for methods as well. - * - * @package WordPress - * @subpackage Upgrader - * @since 2.8.0 - */ -class File_Upload_Upgrader { - var $package; - var $filename; - var $id = 0; + break; - function __construct($form, $urlholder) { + case 'fail' : + case 'manual' : + $body .= sprintf( __( 'Please update your site at %1$s to WordPress %2$s.' ), home_url(), $next_user_core_update->current ); - if ( empty($_FILES[$form]['name']) && empty($_GET[$urlholder]) ) - wp_die(__('Please select a file')); + $body .= "\n\n"; - //Handle a newly uploaded file, Else assume it's already been uploaded - if ( ! empty($_FILES) ) { - $overrides = array( 'test_form' => false, 'test_type' => false ); - $file = wp_handle_upload( $_FILES[$form], $overrides ); + // Don't show this message if there is a newer version available. + // Potential for confusion, and also not useful for them to know at this point. + if ( 'fail' == $type && ! $newer_version_available ) + $body .= __( 'We tried but were unable to update your site automatically.' ) . ' '; - if ( isset( $file['error'] ) ) - wp_die( $file['error'] ); + $body .= __( 'Updating is easy and only takes a few moments:' ); + $body .= "\n" . network_admin_url( 'update-core.php' ); + break; - $this->filename = $_FILES[$form]['name']; - $this->package = $file['file']; + case 'critical' : + if ( $newer_version_available ) + $body .= sprintf( __( 'Your site at %1$s experienced a critical failure while trying to update WordPress to version %2$s.' ), home_url(), $core_update->current ); + else + $body .= sprintf( __( 'Your site at %1$s experienced a critical failure while trying to update to the latest version of WordPress, %2$s.' ), home_url(), $core_update->current ); - // 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' - ); + $body .= "\n\n" . __( "This means your site may be offline or broken. Don't panic; this can be fixed." ); - // Save the data - $this->id = wp_insert_attachment( $object, $file['file'] ); + $body .= "\n\n" . __( "Please check out your site now. It's possible that everything is working. If it says you need to update, you should do so:" ); + $body .= "\n" . network_admin_url( 'update-core.php' ); + break; + } - // 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 ) ); + // Updates are important! + if ( $type != 'success' || $newer_version_available ) + $body .= "\n\n" . __( 'Keeping your site updated is important for security. It also makes the internet a safer place for you and your readers.' ); - } 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')); + // Add a note about the support forums to all emails. + $body .= "\n\n" . __( 'If you experience any issues or need support, the volunteers in the WordPress.org support forums may be able to help.' ); + $body .= "\n" . __( 'http://wordpress.org/support/' ); - $this->filename = $attachment->post_title; - $this->package = get_attached_file( $attachment->ID ); - } 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'] ); + // If things are successful and we're now on the latest, mention plugins and themes if any are out of date. + if ( $type == 'success' && ! $newer_version_available && ( get_plugin_updates() || get_theme_updates() ) ) { + $body .= "\n\n" . __( 'You also have some plugins or themes with updates available. Update them now:' ); + $body .= "\n" . network_admin_url(); + } - $this->filename = $_GET[$urlholder]; - $this->package = $uploads['basedir'] . '/' . $this->filename; + $body .= "\n\n" . __( 'The WordPress Team' ) . "\n"; + + if ( 'critical' == $type && is_wp_error( $result ) ) { + $body .= "\n***\n\n"; + $body .= sprintf( __( 'Your site was running version %s.' ), $GLOBALS['wp_version'] ); + $body .= ' ' . __( 'We have some data that describes the error your site encountered.' ); + $body .= ' ' . __( 'Your hosting company, support forum volunteers, or a friendly developer may be able to use this information to help you:' ); + + // If we had a rollback and we're still critical, then the rollback failed too. + // Loop through all errors (the main WP_Error, the update result, the rollback result) for code, data, etc. + if ( 'rollback_was_required' == $result->get_error_code() ) + $errors = array( $result, $result->get_error_data()->update, $result->get_error_data()->rollback ); + else + $errors = array( $result ); + + foreach ( $errors as $error ) { + if ( ! is_wp_error( $error ) ) + continue; + $error_code = $error->get_error_code(); + $body .= "\n\n" . sprintf( __( "Error code: %s" ), $error_code ); + if ( 'rollback_was_required' == $error_code ) + continue; + if ( $error->get_error_message() ) + $body .= "\n" . $error->get_error_message(); + $error_data = $error->get_error_data(); + if ( $error_data ) + $body .= "\n" . implode( ', ', (array) $error_data ); + } + $body .= "\n"; } - } - function cleanup() { - if ( $this->id ) - wp_delete_attachment( $this->id ); + $to = get_site_option( 'admin_email' ); + $headers = ''; + + $email = compact( 'to', 'subject', 'body', 'headers' ); + /** + * Filter the email sent following an automatic background core update. + * + * @since 3.7.0 + * + * @param array $email { + * Array of email arguments that will be passed to wp_mail(). + * + * @type string $to The email recipient. An array of emails can be returned, as handled by wp_mail(). + * @type string $subject The email's subject. + * @type string $body The email message body. + * @type string $headers Any email headers, defaults to no headers. + * } + * @param string $type The type of email being sent. Can be one of 'success', 'fail', 'manual', 'critical'. + * @param object $core_update The update offer that was attempted. + * @param mixed $result The result for the core update. Can be WP_Error. + */ + $email = apply_filters( 'auto_core_update_email', $email, $type, $core_update, $result ); + + wp_mail( $email['to'], $email['subject'], $email['body'], $email['headers'] ); + } + + /** + * Prepares and sends an email of a full log of background update results, useful for debugging and geekery. + * + * @since 3.7.0 + */ + protected function send_debug_email() { + $update_count = 0; + foreach ( $this->update_results as $type => $updates ) + $update_count += count( $updates ); + + $body = array(); + $failures = 0; + + $body[] = 'WordPress site: ' . network_home_url( '/' ); + + // Core + if ( isset( $this->update_results['core'] ) ) { + $result = $this->update_results['core'][0]; + if ( $result->result && ! is_wp_error( $result->result ) ) { + $body[] = sprintf( 'SUCCESS: WordPress was successfully updated to %s', $result->name ); + } else { + $body[] = sprintf( 'FAILED: WordPress failed to update to %s', $result->name ); + $failures++; + } + $body[] = ''; + } - elseif ( file_exists( $this->package ) ) - return @unlink( $this->package ); + // Plugins, Themes, Translations + foreach ( array( 'plugin', 'theme', 'translation' ) as $type ) { + if ( ! isset( $this->update_results[ $type ] ) ) + continue; + $success_items = wp_list_filter( $this->update_results[ $type ], array( 'result' => true ) ); + if ( $success_items ) { + $body[] = "The following {$type}s were successfully updated:"; + foreach ( wp_list_pluck( $success_items, 'name' ) as $name ) + $body[] = ' * SUCCESS: ' . $name; + } + if ( $success_items != $this->update_results[ $type ] ) { + // Failed updates + $body[] = "The following {$type}s failed to update:"; + foreach ( $this->update_results[ $type ] as $item ) { + if ( ! $item->result || is_wp_error( $item->result ) ) { + $body[] = ' * FAILED: ' . $item->name; + $failures++; + } + } + } + $body[] = ''; + } - return true; + if ( $failures ) { + $body[] = ''; + $body[] = 'BETA TESTING?'; + $body[] = '============='; + $body[] = ''; + $body[] = 'This debugging email is sent when you are using a development version of WordPress.'; + $body[] = ''; + $body[] = 'If you think these failures might be due to a bug in WordPress, could you report it?'; + $body[] = ' * Open a thread in the support forums: http://wordpress.org/support/forum/alphabeta'; + $body[] = " * Or, if you're comfortable writing a bug report: http://core.trac.wordpress.org/"; + $body[] = ''; + $body[] = 'Thanks! -- The WordPress Team'; + $body[] = ''; + $subject = sprintf( '[%s] There were failures during background updates', get_bloginfo( 'name' ) ); + } else { + $subject = sprintf( '[%s] Background updates have finished', get_bloginfo( 'name' ) ); + } + + $body[] = 'UPDATE LOG'; + $body[] = '=========='; + $body[] = ''; + + foreach ( array( 'core', 'plugin', 'theme', 'translation' ) as $type ) { + if ( ! isset( $this->update_results[ $type ] ) ) + continue; + foreach ( $this->update_results[ $type ] as $update ) { + $body[] = $update->name; + $body[] = str_repeat( '-', strlen( $update->name ) ); + foreach ( $update->messages as $message ) + $body[] = " " . html_entity_decode( str_replace( '…', '...', $message ) ); + if ( is_wp_error( $update->result ) ) { + $results = array( 'update' => $update->result ); + // If we rolled back, we want to know an error that occurred then too. + if ( 'rollback_was_required' === $update->result->get_error_code() ) + $results = (array) $update->result->get_error_data(); + foreach ( $results as $result_type => $result ) { + if ( ! is_wp_error( $result ) ) + continue; + $body[] = ' ' . ( 'rollback' === $result_type ? 'Rollback ' : '' ) . 'Error: [' . $result->get_error_code() . '] ' . $result->get_error_message(); + if ( $result->get_error_data() ) + $body[] = ' ' . implode( ', ', (array) $result->get_error_data() ); + } + } + $body[] = ''; + } + } + + //echo "

\n$subject\n

\n"; + //echo "
\n" . implode( "\n", $body ) . "\n
"; + + wp_mail( get_site_option( 'admin_email' ), $subject, implode( "\n", $body ) ); } } diff --git a/wp-admin/includes/comment.php b/wp-admin/includes/comment.php index 1620755b..a74eeaac 100644 --- a/wp-admin/includes/comment.php +++ b/wp-admin/includes/comment.php @@ -36,12 +36,18 @@ function edit_comment() { if ( ! current_user_can( 'edit_comment', (int) $_POST['comment_ID'] ) ) wp_die ( __( 'You are not allowed to edit comments on this post.' ) ); - $_POST['comment_author'] = $_POST['newcomment_author']; - $_POST['comment_author_email'] = $_POST['newcomment_author_email']; - $_POST['comment_author_url'] = $_POST['newcomment_author_url']; - $_POST['comment_approved'] = $_POST['comment_status']; - $_POST['comment_content'] = $_POST['content']; - $_POST['comment_ID'] = (int) $_POST['comment_ID']; + if ( isset( $_POST['newcomment_author'] ) ) + $_POST['comment_author'] = $_POST['newcomment_author']; + if ( isset( $_POST['newcomment_author_email'] ) ) + $_POST['comment_author_email'] = $_POST['newcomment_author_email']; + if ( isset( $_POST['newcomment_author_url'] ) ) + $_POST['comment_author_url'] = $_POST['newcomment_author_url']; + if ( isset( $_POST['comment_status'] ) ) + $_POST['comment_approved'] = $_POST['comment_status']; + if ( isset( $_POST['content'] ) ) + $_POST['comment_content'] = $_POST['content']; + if ( isset( $_POST['comment_ID'] ) ) + $_POST['comment_ID'] = (int) $_POST['comment_ID']; foreach ( array ('aa', 'mm', 'jj', 'hh', 'mn') as $timeunit ) { if ( !empty( $_POST['hidden_' . $timeunit] ) && $_POST['hidden_' . $timeunit] != $_POST[$timeunit] ) { @@ -83,7 +89,14 @@ function get_comment_to_edit( $id ) { $comment->comment_post_ID = (int) $comment->comment_post_ID; $comment->comment_content = format_to_edit( $comment->comment_content ); - $comment->comment_content = apply_filters( 'comment_edit_pre', $comment->comment_content); + /** + * Filter the comment content before editing. + * + * @since 2.0.0 + * + * @param string $comment->comment_content Comment content. + */ + $comment->comment_content = apply_filters( 'comment_edit_pre', $comment->comment_content ); $comment->comment_author = format_to_edit( $comment->comment_author ); $comment->comment_author_email = format_to_edit( $comment->comment_author_email ); @@ -148,7 +161,7 @@ function get_pending_comments_num( $post_id ) { */ function floated_admin_avatar( $name ) { global $comment; - $avatar = get_avatar( $comment, 32 ); + $avatar = get_avatar( $comment, 32, 'mystery' ); return "$avatar $name"; } diff --git a/wp-admin/includes/dashboard.php b/wp-admin/includes/dashboard.php index 657402f9..1f71f243 100644 --- a/wp-admin/includes/dashboard.php +++ b/wp-admin/includes/dashboard.php @@ -142,11 +142,13 @@ function wp_dashboard_setup() { if ( $update ) update_option( 'dashboard_widget_options', $widget_options ); + /** This action is documented in wp-admin/edit-form-advanced.php */ do_action('do_meta_boxes', $screen->id, 'normal', ''); + /** This action is documented in wp-admin/edit-form-advanced.php */ do_action('do_meta_boxes', $screen->id, 'side', ''); } -function wp_add_dashboard_widget( $widget_id, $widget_name, $callback, $control_callback = null ) { +function wp_add_dashboard_widget( $widget_id, $widget_name, $callback, $control_callback = null, $callback_args = null ) { $screen = get_current_screen(); global $wp_dashboard_control_callbacks; @@ -177,7 +179,7 @@ function wp_add_dashboard_widget( $widget_id, $widget_name, $callback, $control_ if ( 'dashboard_browser_nag' === $widget_id ) $priority = 'high'; - add_meta_box( $widget_id, $widget_name, $callback, $screen, $location, $priority ); + add_meta_box( $widget_id, $widget_name, $callback, $screen, $location, $priority, $callback_args ); } function _wp_dashboard_control_callback( $dashboard, $meta_box ) { @@ -366,7 +368,7 @@ function wp_dashboard_right_now() { if ( $theme->errors() ) { if ( ! is_multisite() || is_super_admin() ) - echo '' . __('ERROR: The themes directory is either empty or doesn’t exist. Please check your installation.') . ''; + echo '' . sprintf( __( 'ERROR: %s' ), $theme->errors()->get_error_message() ) . ''; } elseif ( ! empty($wp_registered_sidebars) ) { $sidebars_widgets = wp_get_sidebars_widgets(); $num_widgets = 0; @@ -710,7 +712,7 @@ function _wp_dashboard_recent_comments_row( &$comment, $show_date = true ) {
comment_ID) ) ); ?>> comment_type || 'comment' == $comment->comment_type ) : ?> - +

@@ -1095,6 +1097,7 @@ function wp_dashboard_rss_control( $widget_id, $form_inputs = array() ) { if ( 'POST' == $_SERVER['REQUEST_METHOD'] && isset($_POST['widget-rss'][$number]) ) { $_POST['widget-rss'][$number] = wp_unslash( $_POST['widget-rss'][$number] ); $widget_options[$widget_id] = wp_widget_rss_process( $_POST['widget-rss'][$number] ); + $widget_options[$widget_id]['number'] = $number; // title is optional. If black, fill it if possible if ( !$widget_options[$widget_id]['title'] && isset($_POST['widget-rss'][$number]['title']) ) { $rss = fetch_feed($widget_options[$widget_id]['url']); @@ -1225,7 +1228,7 @@ function wp_check_browser_version() { 'user-agent' => 'WordPress/' . $wp_version . '; ' . home_url() ); - $response = wp_remote_post( 'http://api.wordpress.org/core/browse-happy/1.0/', $options ); + $response = wp_remote_post( 'http://api.wordpress.org/core/browse-happy/1.1/', $options ); if ( is_wp_error( $response ) || 200 != wp_remote_retrieve_response_code( $response ) ) return false; @@ -1241,7 +1244,7 @@ function wp_check_browser_version() { * 'img_src' - string - An image representing the browser * 'img_src_ssl' - string - An image (over SSL) representing the browser */ - $response = maybe_unserialize( wp_remote_retrieve_body( $response ) ); + $response = json_decode( wp_remote_retrieve_body( $response ), true ); if ( ! is_array( $response ) ) return false; diff --git a/wp-admin/includes/deprecated.php b/wp-admin/includes/deprecated.php index 399577ed..66d9abb3 100644 --- a/wp-admin/includes/deprecated.php +++ b/wp-admin/includes/deprecated.php @@ -13,8 +13,8 @@ */ /** - * @since 2.1 - * @deprecated 2.1 + * @since 2.1.0 + * @deprecated 2.1.0 * @deprecated Use wp_editor(). * @see wp_editor() */ @@ -27,8 +27,8 @@ function tinymce_include() { /** * Unused Admin function. * - * @since 2.0 - * @deprecated 2.5 + * @since 2.0.0 + * @deprecated 2.5.0 * */ function documentation_link() { @@ -106,6 +106,22 @@ function dropdown_link_categories( $default = 0 ) { wp_link_category_checklist( $link_id ); } +/** + * Get the real filesystem path to a file to edit within the admin. + * + * @since 1.5.0 + * @deprecated 2.9.0 + * @uses WP_CONTENT_DIR Full filesystem path to the wp-content directory. + * + * @param string $file Filesystem path relative to the wp-content directory. + * @return string Full filesystem path to edit. + */ +function get_real_file_to_edit( $file ) { + _deprecated_function( __FUNCTION__, '2.9' ); + + return WP_CONTENT_DIR . $file; +} + /** * {@internal Missing Short Description}} * @@ -207,7 +223,7 @@ function codepress_footer_js() { /** * Determine whether to use CodePress. * - * @since 2.8 + * @since 2.8.0 * @deprecated 3.0.0 **/ function use_codepress() { @@ -719,7 +735,7 @@ function wp_dashboard_quick_press_output() { /** * @since 2.7.0 - * @deprecated 3.3 + * @deprecated 3.3.0 * @deprecated Use wp_editor() * @see wp_editor() */ @@ -924,6 +940,7 @@ function get_allowed_themes() { * {@internal Missing Short Description}} * * @since 1.5.0 + * @deprecated 3.4.0 * * @return unknown */ @@ -947,6 +964,7 @@ function get_broken_themes() { * {@internal Missing Short Description}} * * @since 2.0.0 + * @deprecated 3.4.0 * * @return unknown */ @@ -1023,3 +1041,93 @@ function wp_create_thumbnail( $file, $max_side, $deprecated = '' ) { _deprecated_function( __FUNCTION__, '3.5', 'image_resize()' ); return apply_filters( 'wp_create_thumbnail', image_resize( $file, $max_side, $max_side ) ); } + +/** + * This was once used to display a metabox for the nav menu theme locations. + * + * Deprecated in favor of a 'Manage Locations' tab added to nav menus management screen. + * + * @since 3.0.0 + * @deprecated 3.6.0 + */ +function wp_nav_menu_locations_meta_box() { + _deprecated_function( __FUNCTION__, '3.6' ); +} + +/** + * This was once used to kick-off the Core Updater. + * + * Deprecated in favor of instantating a Core_Upgrader instance directly, + * and calling the 'upgrade' method. + * + * @since 2.7.0 + * @deprecated 3.7.0 + */ +function wp_update_core($current, $feedback = '') { + _deprecated_function( __FUNCTION__, '3.7', 'new Core_Upgrader();' ); + + if ( !empty($feedback) ) + add_filter('update_feedback', $feedback); + + include ABSPATH . 'wp-admin/includes/class-wp-upgrader.php'; + $upgrader = new Core_Upgrader(); + return $upgrader->upgrade($current); + +} + +/** + * This was once used to kick-off the Plugin Updater. + * + * Deprecated in favor of instantating a Plugin_Upgrader instance directly, + * and calling the 'upgrade' method. + * Unused since 2.8.0. + * + * @since 2.5.0 + * @deprecated 3.7.0 + */ +function wp_update_plugin($plugin, $feedback = '') { + _deprecated_function( __FUNCTION__, '3.7', 'new Plugin_Upgrader();' ); + + if ( !empty($feedback) ) + add_filter('update_feedback', $feedback); + + include ABSPATH . 'wp-admin/includes/class-wp-upgrader.php'; + $upgrader = new Plugin_Upgrader(); + return $upgrader->upgrade($plugin); +} + +/** + * This was once used to kick-off the Plugin Updater. + * + * Deprecated in favor of instantating a Plugin_Upgrader instance directly, + * and calling the 'upgrade' method. + * Unused since 2.8.0. + * + * @since 2.7.0 + * @deprecated 3.7.0 + */ +function wp_update_theme($theme, $feedback = '') { + _deprecated_function( __FUNCTION__, '3.7', 'new Theme_Upgrader();' ); + + if ( !empty($feedback) ) + add_filter('update_feedback', $feedback); + + include ABSPATH . 'wp-admin/includes/class-wp-upgrader.php'; + $upgrader = new Theme_Upgrader(); + return $upgrader->upgrade($theme); +} + +/** + * This was once used to display attachment links. Now it is deprecated and stubbed. + * + * {@internal Missing Short Description}} + * + * @since 2.0.0 + * @deprecated 3.7.0 + * + * @param unknown_type $id + * @return unknown + */ +function the_attachment_links( $id = false ) { + _deprecated_function( __FUNCTION__, '3.7' ); +} diff --git a/wp-admin/includes/export.php b/wp-admin/includes/export.php index ae08c3c1..91d88a18 100644 --- a/wp-admin/includes/export.php +++ b/wp-admin/includes/export.php @@ -367,10 +367,11 @@ function export_wp( $args = array() ) { $is_sticky = is_sticky( $post->ID ) ? 1 : 0; ?> + <?php echo apply_filters( 'the_title_rss', $post->post_title ); ?> - + post_content ) ); ?> diff --git a/wp-admin/includes/file.php b/wp-admin/includes/file.php index ca424264..7b83ca55 100644 --- a/wp-admin/includes/file.php +++ b/wp-admin/includes/file.php @@ -93,30 +93,6 @@ function get_home_path() { return str_replace( '\\', '/', $home_path ); } -/** - * Get the real file system path to a file to edit within the admin - * - * If the $file is index.php or .htaccess this function will assume it is relative - * to the install root, otherwise it is assumed the file is relative to the wp-content - * directory - * - * @since 1.5.0 - * - * @uses get_home_path - * @uses WP_CONTENT_DIR full filesystem path to the wp-content directory - * @param string $file filesystem path relative to the WordPress install directory or to the wp-content directory - * @return string full file system path to edit - */ -function get_real_file_to_edit( $file ) { - if ('index.php' == $file || '.htaccess' == $file ) { - $real_file = get_home_path() . $file; - } else { - $real_file = WP_CONTENT_DIR . $file; - } - - return $real_file; -} - /** * Returns a listing of all files in the specified folder and all subdirectories up to 100 levels deep. * The depth of the recursiveness can be controlled by the $levels param. @@ -509,9 +485,43 @@ function download_url( $url, $timeout = 300 ) { return new WP_Error( 'http_404', trim( wp_remote_retrieve_response_message( $response ) ) ); } + $content_md5 = wp_remote_retrieve_header( $response, 'content-md5' ); + if ( $content_md5 ) { + $md5_check = verify_file_md5( $tmpfname, $content_md5 ); + if ( is_wp_error( $md5_check ) ) { + unlink( $tmpfname ); + return $md5_check; + } + } + return $tmpfname; } +/** + * Calculates and compares the MD5 of a file to it's expected value. + * + * @since 3.7.0 + * + * @param string $filename The filename to check the MD5 of. + * @param string $expected_md5 The expected MD5 of the file, either a base64 encoded raw md5, or a hex-encoded md5 + * @return bool|object WP_Error on failure, true on success, false when the MD5 format is unknown/unexpected + */ +function verify_file_md5( $filename, $expected_md5 ) { + if ( 32 == strlen( $expected_md5 ) ) + $expected_raw_md5 = pack( 'H*', $expected_md5 ); + elseif ( 24 == strlen( $expected_md5 ) ) + $expected_raw_md5 = base64_decode( $expected_md5 ); + else + return false; // unknown format + + $file_md5 = md5_file( $filename, true ); + + if ( $file_md5 === $expected_raw_md5 ) + return true; + + return new WP_Error( 'md5_mismatch', sprintf( __( 'The checksum of the file (%1$s) does not match the expected checksum value (%2$s).' ), bin2hex( $file_md5 ), bin2hex( $expected_raw_md5 ) ) ); +} + /** * 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. @@ -586,24 +596,38 @@ function _unzip_file_ziparchive($file, $to, $needed_dirs = array() ) { $z = new ZipArchive(); - // PHP4-compat - php4 classes can't contain constants - $zopen = $z->open($file, /* ZIPARCHIVE::CHECKCONS */ 4); + $zopen = $z->open( $file, ZIPARCHIVE::CHECKCONS ); if ( true !== $zopen ) - return new WP_Error('incompatible_archive', __('Incompatible Archive.')); + return new WP_Error( 'incompatible_archive', __( 'Incompatible Archive.' ), array( 'ziparchive_error' => $zopen ) ); + + $uncompressed_size = 0; for ( $i = 0; $i < $z->numFiles; $i++ ) { if ( ! $info = $z->statIndex($i) ) - return new WP_Error('stat_failed', __('Could not retrieve file from archive.')); + return new WP_Error( 'stat_failed_ziparchive', __( 'Could not retrieve file from archive.' ) ); if ( '__MACOSX/' === substr($info['name'], 0, 9) ) // Skip the OS X-created __MACOSX directory continue; + $uncompressed_size += $info['size']; + if ( '/' == substr($info['name'], -1) ) // directory $needed_dirs[] = $to . untrailingslashit($info['name']); else $needed_dirs[] = $to . untrailingslashit(dirname($info['name'])); } + /* + * disk_free_space() could return false. Assume that any falsey value is an error. + * A disk that has zero free bytes has bigger problems. + * Require we have enough space to unzip the file and copy its contents, with a 10% buffer. + */ + if ( defined( 'DOING_CRON' ) && DOING_CRON ) { + $available_space = @disk_free_space( WP_CONTENT_DIR ); + if ( $available_space && ( $uncompressed_size * 2.1 ) > $available_space ) + return new WP_Error( 'disk_full_unzip_file', __( 'Could not copy files. You may have run out of disk space.' ), compact( 'uncompressed_size', 'available_space' ) ); + } + $needed_dirs = array_unique($needed_dirs); foreach ( $needed_dirs as $dir ) { // Check the parent folders of the folders all exist within the creation array. @@ -623,13 +647,13 @@ function _unzip_file_ziparchive($file, $to, $needed_dirs = array() ) { // Create those directories if need be: foreach ( $needed_dirs as $_dir ) { if ( ! $wp_filesystem->mkdir($_dir, FS_CHMOD_DIR) && ! $wp_filesystem->is_dir($_dir) ) // Only check to see if the Dir exists upon creation failure. Less I/O this way. - return new WP_Error('mkdir_failed', __('Could not create directory.'), $_dir); + return new WP_Error( 'mkdir_failed_ziparchive', __( 'Could not create directory.' ), substr( $_dir, strlen( $to ) ) ); } unset($needed_dirs); for ( $i = 0; $i < $z->numFiles; $i++ ) { if ( ! $info = $z->statIndex($i) ) - return new WP_Error('stat_failed', __('Could not retrieve file from archive.')); + return new WP_Error( 'stat_failed_ziparchive', __( 'Could not retrieve file from archive.' ) ); if ( '/' == substr($info['name'], -1) ) // directory continue; @@ -639,10 +663,10 @@ function _unzip_file_ziparchive($file, $to, $needed_dirs = array() ) { $contents = $z->getFromIndex($i); if ( false === $contents ) - return new WP_Error('extract_failed', __('Could not extract file from archive.'), $info['name']); + return new WP_Error( 'extract_failed_ziparchive', __( 'Could not extract file from archive.' ), $info['name'] ); if ( ! $wp_filesystem->put_contents( $to . $info['name'], $contents, FS_CHMOD_FILE) ) - return new WP_Error('copy_failed', __('Could not copy file.'), $to . $info['name']); + return new WP_Error( 'copy_failed_ziparchive', __( 'Could not copy file.' ), $info['name'] ); } $z->close(); @@ -666,11 +690,7 @@ function _unzip_file_ziparchive($file, $to, $needed_dirs = array() ) { function _unzip_file_pclzip($file, $to, $needed_dirs = array()) { global $wp_filesystem; - // See #15789 - PclZip uses string functions on binary data, If it's overloaded with Multibyte safe functions the results are incorrect. - if ( ini_get('mbstring.func_overload') && function_exists('mb_internal_encoding') ) { - $previous_encoding = mb_internal_encoding(); - mb_internal_encoding('ISO-8859-1'); - } + mbstring_binary_safe_encoding(); require_once(ABSPATH . 'wp-admin/includes/class-pclzip.php'); @@ -678,24 +698,38 @@ function _unzip_file_pclzip($file, $to, $needed_dirs = array()) { $archive_files = $archive->extract(PCLZIP_OPT_EXTRACT_AS_STRING); - if ( isset($previous_encoding) ) - mb_internal_encoding($previous_encoding); + reset_mbstring_encoding(); // Is the archive valid? if ( !is_array($archive_files) ) return new WP_Error('incompatible_archive', __('Incompatible Archive.'), $archive->errorInfo(true)); if ( 0 == count($archive_files) ) - return new WP_Error('empty_archive', __('Empty archive.')); + return new WP_Error( 'empty_archive_pclzip', __( 'Empty archive.' ) ); + + $uncompressed_size = 0; // Determine any children directories needed (From within the archive) foreach ( $archive_files as $file ) { if ( '__MACOSX/' === substr($file['filename'], 0, 9) ) // Skip the OS X-created __MACOSX directory continue; + $uncompressed_size += $file['size']; + $needed_dirs[] = $to . untrailingslashit( $file['folder'] ? $file['filename'] : dirname($file['filename']) ); } + /* + * disk_free_space() could return false. Assume that any falsey value is an error. + * A disk that has zero free bytes has bigger problems. + * Require we have enough space to unzip the file and copy its contents, with a 10% buffer. + */ + if ( defined( 'DOING_CRON' ) && DOING_CRON ) { + $available_space = @disk_free_space( WP_CONTENT_DIR ); + if ( $available_space && ( $uncompressed_size * 2.1 ) > $available_space ) + return new WP_Error( 'disk_full_unzip_file', __( 'Could not copy files. You may have run out of disk space.' ), compact( 'uncompressed_size', 'available_space' ) ); + } + $needed_dirs = array_unique($needed_dirs); foreach ( $needed_dirs as $dir ) { // Check the parent folders of the folders all exist within the creation array. @@ -714,8 +748,9 @@ function _unzip_file_pclzip($file, $to, $needed_dirs = array()) { // Create those directories if need be: foreach ( $needed_dirs as $_dir ) { - if ( ! $wp_filesystem->mkdir($_dir, FS_CHMOD_DIR) && ! $wp_filesystem->is_dir($_dir) ) // Only check to see if the dir exists upon creation failure. Less I/O this way. - return new WP_Error('mkdir_failed', __('Could not create directory.'), $_dir); + // Only check to see if the dir exists upon creation failure. Less I/O this way. + if ( ! $wp_filesystem->mkdir( $_dir, FS_CHMOD_DIR ) && ! $wp_filesystem->is_dir( $_dir ) ) + return new WP_Error( 'mkdir_failed_pclzip', __( 'Could not create directory.' ), substr( $_dir, strlen( $to ) ) ); } unset($needed_dirs); @@ -728,7 +763,7 @@ function _unzip_file_pclzip($file, $to, $needed_dirs = array()) { continue; if ( ! $wp_filesystem->put_contents( $to . $file['filename'], $file['content'], FS_CHMOD_FILE) ) - return new WP_Error('copy_failed', __('Could not copy file.'), $to . $file['filename']); + return new WP_Error( 'copy_failed_pclzip', __( 'Could not copy file.' ), $file['filename'] ); } return true; } @@ -752,31 +787,31 @@ function copy_dir($from, $to, $skip_list = array() ) { $from = trailingslashit($from); $to = trailingslashit($to); - $skip_regex = ''; - foreach ( (array)$skip_list as $key => $skip_file ) - $skip_regex .= preg_quote($skip_file, '!') . '|'; - - if ( !empty($skip_regex) ) - $skip_regex = '!(' . rtrim($skip_regex, '|') . ')$!i'; - foreach ( (array) $dirlist as $filename => $fileinfo ) { - if ( !empty($skip_regex) ) - if ( preg_match($skip_regex, $from . $filename) ) - continue; + if ( in_array( $filename, $skip_list ) ) + continue; if ( 'f' == $fileinfo['type'] ) { if ( ! $wp_filesystem->copy($from . $filename, $to . $filename, true, FS_CHMOD_FILE) ) { // If copy failed, chmod file to 0644 and try again. - $wp_filesystem->chmod($to . $filename, 0644); + $wp_filesystem->chmod( $to . $filename, FS_CHMOD_FILE ); if ( ! $wp_filesystem->copy($from . $filename, $to . $filename, true, FS_CHMOD_FILE) ) - return new WP_Error('copy_failed', __('Could not copy file.'), $to . $filename); + return new WP_Error( 'copy_failed_copy_dir', __( 'Could not copy file.' ), $to . $filename ); } } elseif ( 'd' == $fileinfo['type'] ) { if ( !$wp_filesystem->is_dir($to . $filename) ) { if ( !$wp_filesystem->mkdir($to . $filename, FS_CHMOD_DIR) ) - return new WP_Error('mkdir_failed', __('Could not create directory.'), $to . $filename); + return new WP_Error( 'mkdir_failed_copy_dir', __( 'Could not create directory.' ), $to . $filename ); } - $result = copy_dir($from . $filename, $to . $filename, $skip_list); + + // generate the $sub_skip_list for the subdirectory as a sub-set of the existing $skip_list + $sub_skip_list = array(); + foreach ( $skip_list as $skip_item ) { + if ( 0 === strpos( $skip_item, $filename . '/' ) ) + $sub_skip_list[] = preg_replace( '!^' . preg_quote( $filename, '!' ) . '/!i', '', $skip_item ); + } + + $result = copy_dir($from . $filename, $to . $filename, $sub_skip_list); if ( is_wp_error($result) ) return $result; } @@ -831,9 +866,9 @@ function WP_Filesystem( $args = false, $context = false ) { // Set the permission constants if not already set. if ( ! defined('FS_CHMOD_DIR') ) - define('FS_CHMOD_DIR', 0755 ); + define('FS_CHMOD_DIR', ( fileperms( ABSPATH ) & 0777 | 0755 ) ); if ( ! defined('FS_CHMOD_FILE') ) - define('FS_CHMOD_FILE', 0644 ); + define('FS_CHMOD_FILE', ( fileperms( ABSPATH . 'index.php' ) & 0777 | 0644 ) ); return true; } @@ -860,6 +895,11 @@ function get_filesystem_method($args = array(), $context = false) { if ( ! $method && function_exists('getmyuid') && function_exists('fileowner') ){ if ( !$context ) $context = WP_CONTENT_DIR; + + // If the directory doesn't exist (wp-content/languages) then use the parent directory as we'll create it. + if ( WP_LANG_DIR == $context && ! is_dir( $context ) ) + $context = dirname( $context ); + $context = trailingslashit($context); $temp_file_name = $context . 'temp-write-test-' . time(); $temp_handle = @fopen($temp_file_name, 'w'); @@ -990,9 +1030,8 @@ jQuery(function($){ -->
-
- -

+
+

- size="40" /> +

size="40" />
+
diff --git a/wp-admin/includes/image-edit.php b/wp-admin/includes/image-edit.php index 9d717d7e..40cea96e 100644 --- a/wp-admin/includes/image-edit.php +++ b/wp-admin/includes/image-edit.php @@ -467,8 +467,8 @@ function stream_preview_image( $post_id ) { $h = $size['height']; $ratio = _image_get_preview_ratio( $w, $h ); - $w2 = $w * $ratio; - $h2 = $h * $ratio; + $w2 = max ( 1, $w * $ratio ); + $h2 = max ( 1, $h * $ratio ); if ( is_wp_error( $img->resize( $w2, $h2 ) ) ) return false; @@ -499,6 +499,7 @@ function wp_restore_image($post_id) { if ( defined('IMAGE_EDIT_OVERWRITE') && IMAGE_EDIT_OVERWRITE ) { // delete only if it's edited image if ( preg_match('/-e[0-9]{13}\./', $parts['basename']) ) { + /** This filter is documented in wp-admin/custom-header.php */ $delpath = apply_filters('wp_delete_file', $file); @unlink($delpath); } @@ -522,6 +523,7 @@ function wp_restore_image($post_id) { if ( defined('IMAGE_EDIT_OVERWRITE') && IMAGE_EDIT_OVERWRITE ) { // delete only if it's edited image if ( preg_match('/-e[0-9]{13}-/', $meta['sizes'][$default_size]['file']) ) { + /** This filter is documented in wp-admin/custom-header.php */ $delpath = apply_filters( 'wp_delete_file', path_join($parts['dirname'], $meta['sizes'][$default_size]['file']) ); @unlink($delpath); } @@ -722,6 +724,7 @@ function wp_save_image( $post_id ) { } if ( $delete ) { + /** This filter is documented in wp-admin/custom-header.php */ $delpath = apply_filters('wp_delete_file', $new_path); @unlink( $delpath ); } diff --git a/wp-admin/includes/import.php b/wp-admin/includes/import.php index 69f7ebe6..590a54f5 100644 --- a/wp-admin/includes/import.php +++ b/wp-admin/includes/import.php @@ -108,10 +108,10 @@ function wp_get_popular_importers() { $popular_importers = get_site_transient( 'popular_importers_' . $locale ); if ( ! $popular_importers ) { - $url = add_query_arg( 'locale', get_locale(), 'http://api.wordpress.org/core/importers/1.0/' ); + $url = add_query_arg( 'locale', get_locale(), 'http://api.wordpress.org/core/importers/1.1/' ); $options = array( 'user-agent' => 'WordPress/' . $wp_version . '; ' . home_url() ); $response = wp_remote_get( $url, $options ); - $popular_importers = maybe_unserialize( wp_remote_retrieve_body( $response ) ); + $popular_importers = json_decode( wp_remote_retrieve_body( $response ), true ); if ( is_array( $popular_importers ) ) set_site_transient( 'popular_importers_' . $locale, $popular_importers, 2 * DAY_IN_SECONDS ); diff --git a/wp-admin/includes/list-table.php b/wp-admin/includes/list-table.php index 071df0dc..2403ec85 100644 --- a/wp-admin/includes/list-table.php +++ b/wp-admin/includes/list-table.php @@ -95,7 +95,7 @@ class _WP_List_Table_Compat extends WP_List_Table { if ( !empty( $columns ) ) { $this->_columns = $columns; - add_filter( 'manage_' . $screen->id . '_columns', array( &$this, 'get_columns' ), 0 ); + add_filter( 'manage_' . $screen->id . '_columns', array( $this, 'get_columns' ), 0 ); } } diff --git a/wp-admin/includes/media.php b/wp-admin/includes/media.php index b8cc0981..e2f78d63 100644 --- a/wp-admin/includes/media.php +++ b/wp-admin/includes/media.php @@ -914,18 +914,19 @@ function media_post_single_attachment_fields_to_edit( $form_fields, $post ) { * @param array $attachment {@internal $attachment not used}} * @return array */ -function image_attachment_fields_to_save($post, $attachment) { - if ( substr($post['post_mime_type'], 0, 5) == 'image' ) { - if ( strlen(trim($post['post_title'])) == 0 ) { - $post['post_title'] = preg_replace('/\.\w+$/', '', basename($post['guid'])); - $post['errors']['post_title']['errors'][] = __('Empty Title filled from filename.'); +function image_attachment_fields_to_save( $post, $attachment ) { + if ( substr( $post['post_mime_type'], 0, 5 ) == 'image' ) { + if ( strlen( trim( $post['post_title'] ) ) == 0 ) { + $attachment_url = ( isset( $post['attachment_url'] ) ) ? $post['attachment_url'] : $post['guid']; + $post['post_title'] = preg_replace( '/\.\w+$/', '', wp_basename( $attachment_url ) ); + $post['errors']['post_title']['errors'][] = __( 'Empty Title filled from filename.' ); } } return $post; } -add_filter('attachment_fields_to_save', 'image_attachment_fields_to_save', 10, 2); +add_filter( 'attachment_fields_to_save', 'image_attachment_fields_to_save', 10, 2 ); /** * {@internal Missing Short Description}} @@ -1499,7 +1500,7 @@ function media_upload_header() { * @param unknown_type $errors */ function media_upload_form( $errors = null ) { - global $type, $tab, $pagenow, $is_IE, $is_opera; + global $type, $tab, $is_IE, $is_opera; if ( ! _device_can_upload() ) { echo '

' . sprintf( __('The web browser on your device cannot be used to upload files. You may be able to use the native app for your device instead.'), 'http://wordpress.org/mobile/' ) . '

'; @@ -2077,17 +2078,18 @@ $arc_query = "SELECT DISTINCT YEAR(post_date) AS yyear, MONTH(post_date) AS mmon $arc_result = $wpdb->get_results( $arc_query ); $month_count = count($arc_result); +$selected_month = isset( $_GET['m'] ) ? $_GET['m'] : 0; if ( $month_count && !( 1 == $month_count && 0 == $arc_result[0]->mmonth ) ) { ?>
-
+
-
+
ID ), $matches ) ) echo esc_html( strtoupper( $matches[1] ) ); @@ -2448,19 +2450,51 @@ function attachment_submitbox_metadata() { ?>
-post_mime_type ) ): + ID ); + $file_size = false; + + if ( isset( $meta['filesize'] ) ) + $file_size = $meta['filesize']; + elseif ( file_exists( $file ) ) + $file_size = filesize( $file ); + + if ( ! empty( $file_size ) ) : ?> +
+ +
+ __( 'Mime-type:' ), - 'year' => __( 'Year:' ), - 'genre' => __( 'Genre:' ), + if ( preg_match( '#^(audio|video)#', $post->post_mime_type ) ): + + /** + * Audio and video metadata fields to be shown in the publish meta box. + * + * The key for each item in the array should correspond to an attachment + * metadata key, and the value should be the desired label. + * + * @since 3.7.0 + * + * @param array $fields { + * An array of the attachment metadata keys and labels. + * + * @type string 'mime_type' Label to be shown before the field mime_type. + * @type string 'year' Label to be shown before the field year. + * @type string 'genre' Label to be shown before the field genre. + * @type string 'length_formatted' Label to be shown before the field length_formatted. + * } + */ + $fields = apply_filters( 'media_submitbox_misc_sections', array( + 'mime_type' => __( 'Mime-type:' ), + 'year' => __( 'Year:' ), + 'genre' => __( 'Genre:' ), 'length_formatted' => __( 'Length:' ), - ); + ) ); foreach ( $fields as $key => $label ): if ( ! empty( $meta[$key] ) ) : ?> -
+
-
+
__( 'Audio Format:' ), - 'codec' => __( 'Audio Codec:' ) - ); + 'codec' => __( 'Audio Codec:' ) + ) ); foreach ( $audio_fields as $key => $label ): if ( ! empty( $meta['audio'][$key] ) ) : ?> -
+
-
+
post_status ) {
-
+
post_status ) { @@ -105,7 +105,7 @@ switch ( $post->post_status ) {
-
+
post_status ) { @@ -138,7 +138,7 @@ echo esc_html( $visibility_trans ); ?> ID ) ); ?> />
/>
-
+
/>

@@ -174,7 +174,7 @@ if ( 0 != $post->ID ) { if ( ! empty( $args['args']['revisions_count'] ) ) : $revisions_to_keep = wp_revisions_to_keep( $post ); ?> -

+
0 && $revisions_to_keep <= $args['args']['revisions_count'] ) { echo ' +
@@ -278,7 +278,7 @@ function attachment_submit_meta_box( $post ) { $stamp = __('Uploaded on: %1$s'); $date = date_i18n( $datef, strtotime( $post->post_date ) ); ?> -
+
@@ -506,7 +506,7 @@ foreach ( $metadata as $key => $value ) { unset( $metadata[ $key ] ); } list_meta( $metadata ); -meta_form(); ?> +meta_form( $post ); ?>

use in your theme.'); ?>

-
+
@@ -962,11 +962,11 @@ function link_advanced_meta_box($link) { - + - + diff --git a/wp-admin/includes/misc.php b/wp-admin/includes/misc.php index 5b609e45..5a3b9706 100644 --- a/wp-admin/includes/misc.php +++ b/wp-admin/includes/misc.php @@ -7,17 +7,50 @@ */ /** - * {@internal Missing Short Description}} + * Returns whether the server is running Apache with the mod_rewrite module loaded. * * @since 2.0.0 * - * @return unknown + * @return bool */ function got_mod_rewrite() { $got_rewrite = apache_mod_loaded('mod_rewrite', true); + + /** + * Filter whether Apache and mod_rewrite are present. + * + * This filter was previously used to force URL rewriting for other servers, + * like nginx. Use the got_url_rewrite filter in got_url_rewrite() instead. + * + * @see got_url_rewrite() + * + * @since 2.5.0 + * @param bool $got_rewrite Whether Apache and mod_rewrite are present. + */ return apply_filters('got_rewrite', $got_rewrite); } +/** + * Returns whether the server supports URL rewriting. + * + * Detects Apache's mod_rewrite, IIS 7.0+ permalink support, and nginx. + * + * @since 3.7.0 + * + * @return bool Whether the server supports URL rewriting. + */ +function got_url_rewrite() { + $got_url_rewrite = ( got_mod_rewrite() || $GLOBALS['is_nginx'] || iis7_supports_permalinks() ); + + /** + * Filter whether URL rewriting is available. + * + * @since 3.7.0 + * @param bool $got_url_rewrite Whether URL rewriting is available. + */ + return apply_filters( 'got_url_rewrite', $got_url_rewrite ); +} + /** * {@internal Missing Short Description}} * @@ -263,7 +296,7 @@ function wp_reset_vars( $vars ) { */ function show_message($message) { if ( is_wp_error($message) ){ - if ( $message->get_error_data() ) + if ( $message->get_error_data() && is_string( $message->get_error_data() ) ) $message = $message->get_error_message() . ': ' . $message->get_error_data(); else $message = $message->get_error_message(); diff --git a/wp-admin/includes/ms.php b/wp-admin/includes/ms.php index bba4adbe..7c3f4bba 100644 --- a/wp-admin/includes/ms.php +++ b/wp-admin/includes/ms.php @@ -61,7 +61,14 @@ function wpmu_delete_blog( $blog_id, $drop = false ) { } $blog = get_blog_details( $blog_id ); - + /** + * Fires before a blog is deleted. + * + * @since MU + * + * @param int $blog_id The blog ID. + * @param bool $drop True if blog's table should be dropped. Default is false. + */ do_action( 'delete_blog', $blog_id, $drop ); $users = get_users( array( 'blog_id' => $blog_id, 'fields' => 'ids' ) ); @@ -80,7 +87,16 @@ function wpmu_delete_blog( $blog_id, $drop = false ) { $drop = false; if ( $drop ) { - $drop_tables = apply_filters( 'wpmu_drop_tables', $wpdb->tables( 'blog' ), $blog_id ); + $tables = $wpdb->tables( 'blog' ); + /** + * Filter the tables to drop when the blog is deleted. + * + * @since MU + * + * @param array $tables The blog tables to be dropped. + * @param int $blog_id The ID of the blog to drop tables for. + */ + $drop_tables = apply_filters( 'wpmu_drop_tables', $tables, $blog_id ); foreach ( (array) $drop_tables as $table ) { $wpdb->query( "DROP TABLE IF EXISTS `$table`" ); @@ -89,6 +105,14 @@ function wpmu_delete_blog( $blog_id, $drop = false ) { $wpdb->delete( $wpdb->blogs, array( 'blog_id' => $blog_id ) ); $uploads = wp_upload_dir(); + /** + * Filter the upload base directory to delete when the blog is deleted. + * + * @since MU + * + * @param string $uploads['basedir'] Uploads path without subdirectory. @see wp_upload_dir() + * @param int $blog_id The blog ID. + */ $dir = apply_filters( 'wpmu_delete_blog_upload_dir', $uploads['basedir'], $blog_id ); $dir = rtrim( $dir, DIRECTORY_SEPARATOR ); $top_dir = $dir; @@ -137,7 +161,13 @@ function wpmu_delete_user( $id ) { if ( !$user->exists() ) return false; - + /** + * Fires before a user is deleted from the network. + * + * @since MU + * + * @param int $id ID of the user about to be deleted from the network. + */ do_action( 'wpmu_delete_user', $id ); $blogs = get_blogs_of_user( $id ); @@ -172,7 +202,13 @@ function wpmu_delete_user( $id ) { clean_user_cache( $user ); - // allow for commit transaction + /** + * Fires after the user is deleted from the network. + * + * @since 2.8.0 + * + * @param int $id ID of the user that was deleted from the network. + */ do_action( 'deleted_user', $id ); return true; @@ -190,7 +226,7 @@ function update_option_new_admin_email( $old_value, $value ) { ); update_option( 'adminhash', $new_admin_email ); - $content = apply_filters( 'new_admin_email_content', __( "Dear user, + $email_text = __( 'Dear user, You recently requested to have the administration email address on your site changed. @@ -204,7 +240,23 @@ This email has been sent to ###EMAIL### Regards, All at ###SITENAME### -###SITEURL### "), $new_admin_email ); +###SITEURL###' ); + + /** + * Filter the email text sent when the site admin email is changed. + * + * The following strings have a special meaning and will get replaced dynamically: + * ###ADMIN_URL### The link to click on to confirm the email change. Required otherwise this functunalty is will break. + * ###EMAIL### The new email. + * ###SITENAME### The name of the site. + * ###SITEURL### The URL to the site. + * + * @since MU + * + * @param string $email_text Text in the email. + * @param string $new_admin_email New admin email that the current administration email was changed to. + */ + $content = apply_filters( 'new_admin_email_content', $email_text, $new_admin_email ); $content = str_replace( '###ADMIN_URL###', esc_url( admin_url( 'options.php?adminhash='.$hash ) ), $content ); $content = str_replace( '###EMAIL###', $value, $content ); @@ -244,7 +296,7 @@ function send_confirmation_on_profile_email() { ); update_option( $current_user->ID . '_new_email', $new_user_email ); - $content = apply_filters( 'new_user_email_content', __( "Dear user, + $email_text = __( 'Dear user, You recently requested to have the email address on your account changed. If this is correct, please click on the following link to change it: @@ -257,7 +309,23 @@ This email has been sent to ###EMAIL### Regards, All at ###SITENAME### -###SITEURL###" ), $new_user_email ); +###SITEURL###' ); + + /** + * Filter the email text sent when a user changes emails. + * + * The following strings have a special meaning and will get replaced dynamically: + * ###ADMIN_URL### The link to click on to confirm the email change. Required otherwise this functunalty is will break. + * ###EMAIL### The new email. + * ###SITENAME### The name of the site. + * ###SITEURL### The URL to the site. + * + * @since MU + * + * @param string $email_text Text in the email. + * @param string $new_user_email New user email that the current user has changed to. + */ + $content = apply_filters( 'new_user_email_content', $email_text, $new_user_email ); $content = str_replace( '###ADMIN_URL###', esc_url( admin_url( 'profile.php?newuseremail='.$hash ) ), $content ); $content = str_replace( '###EMAIL###', $_POST['email'], $content); @@ -377,10 +445,25 @@ function update_user_status( $id, $pref, $value, $deprecated = null ) { clean_user_cache( $user ); if ( $pref == 'spam' ) { - if ( $value == 1 ) + if ( $value == 1 ) { + /** + * Fires after the user is marked as a SPAM user. + * + * @since 3.0.0 + * + * @param int $id ID of the user marked as SPAM. + */ do_action( 'make_spam_user', $id ); - else + } else { + /** + * Fires after the user is marked as a HAM user. Opposite of SPAM. + * + * @since 3.0.0 + * + * @param int $id ID of the user marked as HAM. + */ do_action( 'make_ham_user', $id ); + } } return $value; @@ -411,6 +494,15 @@ function format_code_lang( $code = '' ) { 'sg' => 'Sango', 'sa' => 'Sanskrit', 'sr' => 'Serbian', 'hr' => 'Croatian', 'si' => 'Sinhala; Sinhalese', 'sk' => 'Slovak', 'sl' => 'Slovenian', 'se' => 'Northern Sami', 'sm' => 'Samoan', 'sn' => 'Shona', 'sd' => 'Sindhi', 'so' => 'Somali', 'st' => 'Sotho, Southern', 'es' => 'Spanish; Castilian', 'sc' => 'Sardinian', 'ss' => 'Swati', 'su' => 'Sundanese', 'sw' => 'Swahili', 'sv' => 'Swedish', 'ty' => 'Tahitian', 'ta' => 'Tamil', 'tt' => 'Tatar', 'te' => 'Telugu', 'tg' => 'Tajik', 'tl' => 'Tagalog', 'th' => 'Thai', 'bo' => 'Tibetan', 'ti' => 'Tigrinya', 'to' => 'Tonga (Tonga Islands)', 'tn' => 'Tswana', 'ts' => 'Tsonga', 'tk' => 'Turkmen', 'tr' => 'Turkish', 'tw' => 'Twi', 'ug' => 'Uighur; Uyghur', 'uk' => 'Ukrainian', 'ur' => 'Urdu', 'uz' => 'Uzbek', 've' => 'Venda', 'vi' => 'Vietnamese', 'vo' => 'Volapük', 'cy' => 'Welsh','wa' => 'Walloon','wo' => 'Wolof', 'xh' => 'Xhosa', 'yi' => 'Yiddish', 'yo' => 'Yoruba', 'za' => 'Zhuang; Chuang', 'zu' => 'Zulu' ); + + /** + * Filter the language codes. + * + * @since MU + * + * @param array $lang_codes Key/value pair of language codes where key is the short version. + * @param string $code A two-letter designation of the language. + */ $lang_codes = apply_filters( 'lang_codes', $lang_codes, $code ); return strtr( $code, $lang_codes ); } @@ -498,31 +590,19 @@ function mu_dropdown_languages( $lang_files = array(), $current = '' ) { // Order by name uksort( $output, 'strnatcasecmp' ); - + /** + * Filter the languages available in the dropdown. + * + * @since MU + * + * @param array $output HTML output of the dropdown. + * @param array $lang_files Available language files. + * @param string $current The current language code. + */ $output = apply_filters( 'mu_dropdown_languages', $output, $lang_files, $current ); echo implode( "\n\t", $output ); } -/* Warn the admin if SECRET SALT information is missing from wp-config.php */ -function secret_salt_warning() { - if ( !is_super_admin() ) - return; - $secret_keys = array( 'AUTH_KEY', 'SECURE_AUTH_KEY', 'LOGGED_IN_KEY', 'NONCE_KEY', 'AUTH_SALT', 'SECURE_AUTH_SALT', 'LOGGED_IN_SALT', 'NONCE_SALT' ); - $out = ''; - foreach( $secret_keys as $key ) { - if ( ! defined( $key ) ) - $out .= "define( '$key', '" . esc_html( wp_generate_password( 64, true, true ) ) . "' );
"; - } - if ( $out != '' ) { - $msg = __( 'Warning! WordPress encrypts user cookies, but you must add the following lines to wp-config.php for it to be more secure.' ); - $msg .= '
' . __( "Before the line /* That's all, stop editing! Happy blogging. */ please add this code:" ); - $msg .= "

$out"; - - echo "
$msg
"; - } -} -add_action( 'network_admin_notices', 'secret_salt_warning' ); - function site_admin_notice() { global $wp_db_version; if ( !is_super_admin() ) @@ -595,7 +675,11 @@ function choose_primary_blog() { @@ -604,18 +688,25 @@ function choose_primary_blog() { } /** - * Grants super admin privileges. + * Grants Super Admin privileges. * * @since 3.0.0 - * @param int $user_id + * @param int $user_id ID of the user to be granted Super Admin privileges. */ function grant_super_admin( $user_id ) { global $super_admins; // If global super_admins override is defined, there is nothing to do here. - if ( isset($super_admins) ) + if ( isset( $super_admins ) ) return false; + /** + * Fires before the user is granted Super Admin privileges. + * + * @since 3.0.0 + * + * @param int $user_id ID of the user that is about to be granted Super Admin privileges. + */ do_action( 'grant_super_admin', $user_id ); // Directly fetch site_admins instead of using get_super_admins() @@ -625,6 +716,14 @@ function grant_super_admin( $user_id ) { if ( $user && ! in_array( $user->user_login, $super_admins ) ) { $super_admins[] = $user->user_login; update_site_option( 'site_admins' , $super_admins ); + + /** + * Fires after the user is granted Super Admin privileges. + * + * @since 3.0.0 + * + * @param int $user_id ID of the user that was granted Super Admin privileges. + */ do_action( 'granted_super_admin', $user_id ); return true; } @@ -632,18 +731,25 @@ function grant_super_admin( $user_id ) { } /** - * Revokes super admin privileges. + * Revokes Super Admin privileges. * * @since 3.0.0 - * @param int $user_id + * @param int $user_id ID of the user Super Admin privileges to be revoked from. */ function revoke_super_admin( $user_id ) { global $super_admins; // If global super_admins override is defined, there is nothing to do here. - if ( isset($super_admins) ) + if ( isset( $super_admins ) ) return false; + /** + * Fires before the user's Super Admin privileges are revoked. + * + * @since 3.0.0 + * + * @param int $user_id ID of the user Super Admin privileges are being revoked from. + */ do_action( 'revoke_super_admin', $user_id ); // Directly fetch site_admins instead of using get_super_admins() @@ -654,6 +760,14 @@ function revoke_super_admin( $user_id ) { if ( false !== ( $key = array_search( $user->user_login, $super_admins ) ) ) { unset( $super_admins[$key] ); update_site_option( 'site_admins', $super_admins ); + + /** + * Fires after the user's Super Admin privileges are revoked. + * + * @since 3.0.0 + * + * @param int $user_id ID of the user Super Admin privileges were revoked from. + */ do_action( 'revoked_super_admin', $user_id ); return true; } @@ -667,16 +781,24 @@ function revoke_super_admin( $user_id ) { * By default editing of network is restricted to the Network Admin for that site_id this allows for this to be overridden * * @since 3.1.0 - * @param integer $site_id The network/site id to check. + * @param integer $site_id The network/site ID to check. */ function can_edit_network( $site_id ) { global $wpdb; - if ($site_id == $wpdb->siteid ) + if ( $site_id == $wpdb->siteid ) $result = true; else $result = false; + /** + * Filter whether this network can be edited from this page. + * + * @since 3.1.0 + * + * @param bool $result Whether the network can be edited from this page. + * @param int $site_id The network/site ID to check. + */ return apply_filters( 'can_edit_network', $result, $site_id ); } diff --git a/wp-admin/includes/nav-menu.php b/wp-admin/includes/nav-menu.php index 7e9fe6ad..d3aa7bd0 100644 --- a/wp-admin/includes/nav-menu.php +++ b/wp-admin/includes/nav-menu.php @@ -9,36 +9,47 @@ */ class Walker_Nav_Menu_Edit extends Walker_Nav_Menu { /** + * Starts the list before the elements are added. + * * @see Walker_Nav_Menu::start_lvl() + * * @since 3.0.0 * * @param string $output Passed by reference. + * @param int $depth Depth of menu item. Used for padding. + * @param array $args Not used. */ function start_lvl( &$output, $depth = 0, $args = array() ) {} /** + * Ends the list of after the elements are added. + * * @see Walker_Nav_Menu::end_lvl() + * * @since 3.0.0 * * @param string $output Passed by reference. + * @param int $depth Depth of menu item. Used for padding. + * @param array $args Not used. */ function end_lvl( &$output, $depth = 0, $args = array() ) {} /** - * @see Walker::start_el() + * Start the element output. + * + * @see Walker_Nav_Menu::start_el() * @since 3.0.0 * * @param string $output Passed by reference. Used to append additional content. - * @param object $item Menu item data object. - * @param int $depth Depth of menu item. Used for padding. - * @param object $args + * @param object $item Menu item data object. + * @param int $depth Depth of menu item. Used for padding. + * @param array $args Not used. + * @param int $id Not used. */ function start_el( &$output, $item, $depth = 0, $args = array(), $id = 0 ) { global $_wp_nav_menu_max_depth; $_wp_nav_menu_max_depth = $depth > $_wp_nav_menu_max_depth ? $depth : $_wp_nav_menu_max_depth; - $indent = ( $depth ) ? str_repeat( "\t", $depth ) : ''; - ob_start(); $item_id = esc_attr( $item->ID ); $removed_args = array( @@ -57,7 +68,7 @@ class Walker_Nav_Menu_Edit extends Walker_Nav_Menu { $original_title = false; } elseif ( 'post_type' == $item->type ) { $original_object = get_post( $item->object_id ); - $original_title = $original_object->post_title; + $original_title = get_the_title( $original_object->ID ); } $classes = array( @@ -214,7 +225,8 @@ class Walker_Nav_Menu_Edit extends Walker_Nav_Menu { \n"; } + /** + * Ends the list of after the elements are added. + * + * @see Walker_Nav_Menu::end_lvl() + * + * @since 3.0.0 + * + * @param string $output Passed by reference. Used to append additional content. + * @param int $depth Depth of page. Used for padding. + * @param array $args Not used. + */ function end_lvl( &$output, $depth = 0, $args = array() ) { $indent = str_repeat( "\t", $depth ); $output .= "\n$indent"; } /** - * @see Walker::start_el() + * Start the element output. + * + * @see Walker_Nav_Menu::start_el() + * * @since 3.0.0 * * @param string $output Passed by reference. Used to append additional content. - * @param object $item Menu item data object. - * @param int $depth Depth of menu item. Used for padding. - * @param object $args + * @param object $item Menu item data object. + * @param int $depth Depth of menu item. Used for padding. + * @param array $args Not used. + * @param int $id Not used. */ function start_el( &$output, $item, $depth = 0, $args = array(), $id = 0 ) { global $_nav_menu_placeholder; @@ -261,15 +299,23 @@ class Walker_Nav_Menu_Checklist extends Walker_Nav_Menu { $output .= $indent . '
  • '; $output .= ''; + $output .= ''; // Menu item hidden fields $output .= ''; @@ -283,7 +329,8 @@ class Walker_Nav_Menu_Checklist extends Walker_Nav_Menu { $output .= ''; $output .= ''; } -} + +} // Walker_Nav_Menu_Checklist /** * Prints the appropriate response to a menu quick search. @@ -486,51 +533,6 @@ function wp_nav_menu_taxonomy_meta_boxes() { } } -/** - * Displays a metabox for the nav menu theme locations. - * - * @since 3.0.0 - */ -function wp_nav_menu_locations_meta_box() { - global $nav_menu_selected_id; - - if ( ! current_theme_supports( 'menus' ) ) { - // We must only support widgets. Leave a message and bail. - echo '

    ' . __('The current theme does not natively support menus, but you can use the “Custom Menu” widget to add any menus you create here to the theme’s sidebar.') . '

    '; - return; - } - - $locations = get_registered_nav_menus(); - $menus = wp_get_nav_menus(); - $menu_locations = get_nav_menu_locations(); - $num_locations = count( array_keys($locations) ); - - echo '

    ' . _n( 'Select a menu to use within your theme.', 'Select the menus you will use in your theme.', $num_locations ) . '

    '; - - foreach ( $locations as $location => $description ) { - ?> -

    - -

    - -

    - - -

    - per_page) ) $args->per_page = 24; - // Allows a plugin to override the WordPress.org API entirely. - // 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); + /** + * Override the Plugin Install API arguments. + * + * Please ensure that an object is returned. + * + * @since 2.7.0 + * + * @param object $args Plugin API arguments. + * @param string $action The type of information being requested from the Plugin Install API. + */ + $args = apply_filters( 'plugins_api_args', $args, $action ); + + /** + * Allows a plugin to override the WordPress.org Plugin Install API entirely. + * + * Please ensure that an object is returned. + * + * @since 2.7.0 + * + * @param bool|object The result object. Default is false. + * @param string $action The type of information being requested from the Plugin Install API. + * @param object $args Plugin API arguments. + */ + $res = apply_filters( 'plugins_api', false, $action, $args ); if ( false === $res ) { - $request = wp_remote_post('http://api.wordpress.org/plugins/info/1.0/', array( 'timeout' => 15, 'body' => array('action' => $action, 'request' => serialize($args))) ); + $url = 'http://api.wordpress.org/plugins/info/1.0/'; + if ( wp_http_supports( array( 'ssl' ) ) ) + $url = set_url_scheme( $url, 'https' ); + + $request = wp_remote_post( $url, array( + 'timeout' => 15, + 'body' => array( + 'action' => $action, + 'request' => serialize( $args ) + ) + ) ); + if ( is_wp_error($request) ) { $res = new WP_Error('plugins_api_failed', __( 'An unexpected error occurred. Something may be wrong with WordPress.org or this server’s configuration. If you continue to have problems, please try the support forums.' ), $request->get_error_message() ); } else { @@ -53,7 +83,16 @@ function plugins_api($action, $args = null) { $res->external = true; } - return apply_filters('plugins_api_result', $res, $action, $args); + /** + * Filter the Plugin Install API response results. + * + * @since 2.7.0 + * + * @param object|WP_Error $res Response object or WP_Error. + * @param string $action The type of information being requested from the Plugin Install API. + * @param object $args Plugin API arguments. + */ + return apply_filters( 'plugins_api_result', $res, $action, $args ); } /** @@ -265,7 +304,7 @@ function install_plugin_install_status($api, $loop = false) { function install_plugin_information() { global $tab; - $api = plugins_api('plugin_information', array('slug' => wp_unslash( $_REQUEST['plugin'] ) )); + $api = plugins_api( 'plugin_information', array( 'slug' => wp_unslash( $_REQUEST['plugin'] ), 'is_ssl' => is_ssl() ) ); if ( is_wp_error($api) ) wp_die($api); @@ -296,9 +335,11 @@ function install_plugin_information() { $api->$key = wp_kses( $api->$key, $plugins_allowedtags ); } - $section = isset($_REQUEST['section']) ? wp_unslash( $_REQUEST['section'] ) : 'description'; //Default to the Description tab, Do not translate, API returns English. - if ( empty($section) || ! isset($api->sections[ $section ]) ) - $section = array_shift( $section_titles = array_keys((array)$api->sections) ); + $section = isset( $_REQUEST['section'] ) ? wp_unslash( $_REQUEST['section'] ) : 'description'; //Default to the Description tab, Do not translate, API returns English. + if ( empty( $section ) || ! isset( $api->sections[ $section ] ) ) { + $section_titles = array_keys( (array) $api->sections ); + $section = array_shift( $section_titles ); + } iframe_header( __('Plugin Install') ); echo "
    \n"; diff --git a/wp-admin/includes/plugin.php b/wp-admin/includes/plugin.php index 109e66d8..4e2126a3 100644 --- a/wp-admin/includes/plugin.php +++ b/wp-admin/includes/plugin.php @@ -114,6 +114,9 @@ function get_plugin_data( $plugin_file, $markup = true, $translate = true ) { */ function _get_plugin_data_markup_translate( $plugin_file, $plugin_data, $markup = true, $translate = true ) { + // Sanitize the plugin filename to a WP_PLUGIN_DIR relative path + $plugin_file = plugin_basename( $plugin_file ); + // Translate fields if ( $translate ) { if ( $textdomain = $plugin_data['TextDomain'] ) { @@ -537,7 +540,28 @@ function activate_plugin( $plugin, $redirect = '', $network_wide = false, $silen include_once(WP_PLUGIN_DIR . '/' . $plugin); if ( ! $silent ) { + /** + * Fires before a plugin is activated in activate_plugin() when the $silent parameter is false. + * + * @since 2.9.0 + * + * @param string $plugin Plugin path to main plugin file with plugin data. + * @param bool $network_wide Whether to enable the plugin for all sites in the network + * or just the current site. Multisite only. Default is false. + */ do_action( 'activate_plugin', $plugin, $network_wide ); + + /** + * Fires before a plugin is activated in activate_plugin() when the $silent parameter is false. + * + * The action concatenates the 'activate_' prefix with the $plugin value passed to + * activate_plugin() to create a dynamically-named action. + * + * @since 2.0.0 + * + * @param bool $network_wide Whether to enable the plugin for all sites in the network + * or just the current site. Multisite only. Default is false. + */ do_action( 'activate_' . $plugin, $network_wide ); } @@ -551,6 +575,15 @@ function activate_plugin( $plugin, $redirect = '', $network_wide = false, $silen } if ( ! $silent ) { + /** + * Fires after a plugin has been activated in activate_plugin() when the $silent parameter is false. + * + * @since 2.9.0 + * + * @param string $plugin Plugin path to main plugin file with plugin data. + * @param bool $network_wide Whether to enable the plugin for all sites in the network + * or just the current site. Multisite only. Default is false. + */ do_action( 'activated_plugin', $plugin, $network_wide ); } @@ -591,6 +624,16 @@ function deactivate_plugins( $plugins, $silent = false, $network_wide = null ) { $network_deactivating = false !== $network_wide && is_plugin_active_for_network( $plugin ); if ( ! $silent ) + /** + * Fires for each plugin being deactivated in deactivate_plugins(), before deactivation + * and when the $silent parameter is false. + * + * @since 2.9.0 + * + * @param string $plugin Plugin path to main plugin file with plugin data. + * @param bool $network_deactivating Whether the plugin is deactivated for all sites in the network + * or just the current site. Multisite only. Default is false. + */ do_action( 'deactivate_plugin', $plugin, $network_deactivating ); if ( false !== $network_wide ) { @@ -611,7 +654,30 @@ function deactivate_plugins( $plugins, $silent = false, $network_wide = null ) { } if ( ! $silent ) { + /** + * Fires for each plugin being deactivated in deactivate_plugins(), after deactivation + * and when the $silent parameter is false. + * + * The action concatenates the 'deactivate_' prefix with the plugin's basename + * to create a dynamically-named action. + * + * @since 2.0.0 + * + * @param bool $network_deactivating Whether the plugin is deactivated for all sites in the network + * or just the current site. Multisite only. Default is false. + */ do_action( 'deactivate_' . $plugin, $network_deactivating ); + + /** + * Fires for each plugin being deactivated in deactivate_plugins(), after deactivation + * and when the $silent parameter is false. + * + * @since 2.9.0 + * + * @param string $plugin Plugin path to main plugin file with plugin data. + * @param bool $network_deactivating Whether the plugin is deactivated for all sites in the network + * or just the current site. Multisite only. Default is false. + */ do_action( 'deactivated_plugin', $plugin, $network_deactivating ); } } @@ -862,6 +928,15 @@ function uninstall_plugin($plugin) { include WP_PLUGIN_DIR . '/' . $file; add_action( 'uninstall_' . $file, $callable ); + + /** + * Fires in uninstall_plugin() once the plugin has been uninstalled. + * + * The action concatenates the 'uninstall_' prefix with the basename of the + * plugin passed to {@see uninstall_plugin()} to create a dynamically-named action. + * + * @since 2.7.0 + */ do_action( 'uninstall_' . $file ); } } @@ -1761,3 +1836,16 @@ function settings_fields($option_group) { echo ''; wp_nonce_field("$option_group-options"); } + +/** + * Clears the Plugins cache used by get_plugins() and by default, the Plugin Update cache. + * + * @since 3.7.0 + * + * @param bool $clear_update_cache Whether to clear the Plugin updates cache + */ +function wp_clean_plugins_cache( $clear_update_cache = true ) { + if ( $clear_update_cache ) + delete_site_transient( 'update_plugins' ); + wp_cache_delete( 'plugins', 'plugins' ); +} diff --git a/wp-admin/includes/post.php b/wp-admin/includes/post.php index f5324bff..7d074dd7 100644 --- a/wp-admin/includes/post.php +++ b/wp-admin/includes/post.php @@ -52,7 +52,7 @@ function _wp_translate_postdata( $update = false, $post_data = null ) { if ( isset($post_data['trackback_url']) ) $post_data['to_ping'] = $post_data['trackback_url']; - $post_data['user_ID'] = $GLOBALS['user_ID']; + $post_data['user_ID'] = get_current_user_id(); if (!empty ( $post_data['post_author_override'] ) ) { $post_data['post_author'] = (int) $post_data['post_author_override']; @@ -178,6 +178,15 @@ function edit_post( $post_data = null ) { wp_die( __('You are not allowed to edit this post.' )); } + if ( post_type_supports( $ptype->name, 'revisions' ) ) { + $revisions = wp_get_post_revisions( $post_ID, array( 'order' => 'ASC', 'posts_per_page' => 1 ) ); + $revision = current( $revisions ); + + // Check if the revisions have been upgraded + if ( $revisions && _wp_get_post_revision_version( $revision ) < 1 ) + _wp_upgrade_revisions_of_post( $post, wp_get_post_revisions( $post_ID ) ); + } + $post_data = _wp_translate_postdata( true, $post_data ); if ( is_wp_error($post_data) ) wp_die( $post_data->get_error_message() ); @@ -261,12 +270,13 @@ function edit_post( $post_data = null ) { } $attachment_data = isset( $post_data['attachments'][ $post_ID ] ) ? $post_data['attachments'][ $post_ID ] : array(); + /** This filter is documented in wp-admin/includes/media.php */ $post_data = apply_filters( 'attachment_fields_to_save', $post_data, $attachment_data ); } add_meta( $post_ID ); - update_post_meta( $post_ID, '_edit_last', $GLOBALS['current_user']->ID ); + update_post_meta( $post_ID, '_edit_last', get_current_user_id() ); wp_update_post( $post_data ); @@ -324,7 +334,13 @@ function bulk_edit_posts( $post_data = null ) { $post_IDs = array_map( 'intval', (array) $post_data['post'] ); - $reset = array( 'post_author', 'post_status', 'post_password', 'post_parent', 'page_template', 'comment_status', 'ping_status', 'keep_private', 'tax_input', 'post_category', 'sticky' ); + $reset = array( + 'post_author', 'post_status', 'post_password', + 'post_parent', 'page_template', 'comment_status', + 'ping_status', 'keep_private', 'tax_input', + 'post_category', 'sticky', 'post_format', + ); + foreach ( $reset as $field ) { if ( isset($post_data[$field]) && ( '' == $post_data[$field] || -1 == $post_data[$field] ) ) unset($post_data[$field]); @@ -418,6 +434,9 @@ function bulk_edit_posts( $post_data = null ) { else 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 ); @@ -529,8 +548,6 @@ function post_exists($title, $content = '', $date = '') { * @return unknown */ function wp_write_post() { - global $user_ID; - if ( isset($_POST['post_type']) ) $ptype = get_post_type_object($_POST['post_type']); else @@ -741,15 +758,15 @@ function update_meta( $meta_id, $meta_key, $meta_value ) { * @since 2.3.0 * @access private * - * @param unknown_type $post_ID - * @return unknown + * @param int|object $post Post ID or post object. + * @return void|int|WP_Error Void if nothing fixed. 0 or WP_Error on update failure. The post ID on update success. */ -function _fix_attachment_links( $post_ID ) { - $post = get_post( $post_ID, ARRAY_A ); +function _fix_attachment_links( $post ) { + $post = get_post( $post, ARRAY_A ); $content = $post['post_content']; - // quick sanity check, don't run if no pretty permalinks or post is not published - if ( !get_option('permalink_structure') || $post['post_status'] != 'publish' ) + // Don't run if no pretty permalinks or post is not published, scheduled, or privately published. + if ( ! get_option( 'permalink_structure' ) || ! in_array( $post['post_status'], array( 'publish', 'future', 'private' ) ) ) return; // Short if there aren't any links or no '?attachment_id=' strings (strpos cannot be zero) @@ -995,9 +1012,9 @@ function postbox_classes( $id, $page ) { * @return array With two entries of type string */ function get_sample_permalink($id, $title = null, $name = null) { - $post = get_post($id); - if ( !$post->ID ) - return array('', ''); + $post = get_post( $id ); + if ( ! $post ) + return array( '', '' ); $ptype = get_post_type_object($post->post_type); @@ -1057,8 +1074,9 @@ function get_sample_permalink($id, $title = null, $name = null) { * @return string The HTML of the sample permalink slug editor. */ function get_sample_permalink_html( $id, $new_title = null, $new_slug = null ) { - global $wpdb; - $post = get_post($id); + $post = get_post( $id ); + if ( ! $post ) + return ''; list($permalink, $post_name) = get_sample_permalink($post->ID, $new_title, $new_slug); @@ -1260,7 +1278,13 @@ function _admin_notice_post_locked() { ?>
    ID, 64 ); ?>
    -

    display_name ) ); ?>

    +

    + display_name ) ); + ?> +

    diff --git a/wp-admin/includes/revision.php b/wp-admin/includes/revision.php index 597ec1f0..737c3b16 100644 --- a/wp-admin/includes/revision.php +++ b/wp-admin/includes/revision.php @@ -1,6 +1,6 @@ $name ) { + /** + * Contextually filter a post revision field. + * + * The dynamic portion of the hook name, $field, corresponds to each of the post + * fields of the revision object being iterated over in a foreach statement. + * + * @since 3.6.0 + * + * @param string $compare_from->$field The current revision field to compare to or from. + * @param string $field The current revision field. + * @param WP_Post $compare_from The revision post object to compare to or from. + * @param string null The context of whether the current revision is the old or the new one. Values are 'to' or 'from'. + */ $content_from = $compare_from ? apply_filters( "_wp_post_revision_field_$field", $compare_from->$field, $field, $compare_from, 'from' ) : ''; + + /** This filter is documented in wp-admin/includes/revision.php */ $content_to = apply_filters( "_wp_post_revision_field_$field", $compare_to->$field, $field, $compare_to, 'to' ); $diff = wp_text_diff( $content_from, $content_to, array( 'show_split_view' => true ) ); @@ -85,9 +100,9 @@ function wp_get_revision_ui_diff( $post, $compare_from, $compare_to ) { * * @since 3.6.0 * - * @param object $post The post object. - * @param int $selected_revision_id The selected revision id. - * @param int $from (optional) The revision id to compare from. + * @param object|int $post The post object. Also accepts a post ID. + * @param int $selected_revision_id The selected revision ID. + * @param int $from Optional. The revision ID to compare from. * * @return array An associative array of revision data and related settings. */ diff --git a/wp-admin/includes/schema.php b/wp-admin/includes/schema.php index 162651a4..f88f79d0 100644 --- a/wp-admin/includes/schema.php +++ b/wp-admin/includes/schema.php @@ -230,7 +230,7 @@ CREATE TABLE $wpdb->posts ( 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', + archived tinyint(2) 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', @@ -272,6 +272,7 @@ CREATE TABLE $wpdb->sitemeta ( KEY site_id (site_id) ) $charset_collate; CREATE TABLE $wpdb->signups ( + signup_id bigint(20) NOT NULL auto_increment, domain varchar(200) NOT NULL default '', path varchar(100) NOT NULL default '', title longtext NOT NULL, @@ -282,8 +283,11 @@ CREATE TABLE $wpdb->signups ( active tinyint(1) NOT NULL default '0', activation_key varchar(50) NOT NULL default '', meta longtext, + PRIMARY KEY (signup_id), KEY activation_key (activation_key), - KEY domain (domain) + KEY user_email (user_email), + KEY user_login_email (user_login,user_email), + KEY domain_path (domain,path) ) $charset_collate;"; switch ( $scope ) { @@ -542,6 +546,24 @@ function populate_options() { // delete obsolete magpie stuff $wpdb->query("DELETE FROM $wpdb->options WHERE option_name REGEXP '^rss_[0-9a-f]{32}(_ts)?$'"); + + // Deletes all expired transients. + // The multi-table delete syntax is used to delete the transient record from table a, + // and the corresponding transient_timeout record from table b. + $time = time(); + $wpdb->query("DELETE a, b FROM $wpdb->options a, $wpdb->options b WHERE + a.option_name LIKE '\_transient\_%' AND + a.option_name NOT LIKE '\_transient\_timeout\_%' AND + b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) ) + AND b.option_value < $time"); + + if ( is_main_site() && is_main_network() ) { + $wpdb->query("DELETE a, b FROM $wpdb->options a, $wpdb->options b WHERE + a.option_name LIKE '\_site\_transient\_%' AND + a.option_name NOT LIKE '\_site\_transient\_timeout\_%' AND + b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) ) + AND b.option_value < $time"); + } } /** @@ -918,6 +940,16 @@ We hope you enjoy your new site. Thanks! if ( ! $subdomain_install ) $sitemeta['illegal_names'][] = 'blog'; + /** + * Filter meta for a network on creation. + * + * @since 3.7.0 + * + * @param array $sitemeta Associative of meta keys and values to be inserted. + * @param int $network_id Network ID being created. + */ + $sitemeta = apply_filters( 'populate_network_meta', $sitemeta, $network_id ); + $insert = ''; foreach ( $sitemeta as $meta_key => $meta_value ) { if ( is_array( $meta_value ) ) @@ -936,7 +968,7 @@ We hope you enjoy your new site. Thanks! $current_site->domain = $domain; $current_site->path = $path; $current_site->site_name = ucfirst( $domain ); - $wpdb->insert( $wpdb->blogs, array( 'site_id' => $network_id, 'domain' => $domain, 'path' => $path, 'registered' => current_time( 'mysql' ) ) ); + $wpdb->insert( $wpdb->blogs, array( 'site_id' => $network_id, 'blog_id' => 1, 'domain' => $domain, 'path' => $path, 'registered' => current_time( 'mysql' ) ) ); $current_site->blog_id = $blog_id = $wpdb->insert_id; update_user_meta( $site_user->ID, 'source_domain', $domain ); update_user_meta( $site_user->ID, 'primary_blog', $blog_id ); @@ -947,9 +979,10 @@ We hope you enjoy your new site. Thanks! $wp_rewrite->set_permalink_structure( '/blog/%year%/%monthnum%/%day%/%postname%/' ); flush_rewrite_rules(); - } - if ( $subdomain_install ) { + if ( ! $subdomain_install ) + return true; + $vhost_ok = false; $errstr = ''; $hostname = substr( md5( time() ), 0, 6 ) . '.' . $domain; // Very random hostname! diff --git a/wp-admin/includes/taxonomy.php b/wp-admin/includes/taxonomy.php index fdc6d64d..87fe6e6d 100644 --- a/wp-admin/includes/taxonomy.php +++ b/wp-admin/includes/taxonomy.php @@ -34,7 +34,8 @@ function category_exists($cat_name, $parent = 0) { * @return unknown */ function get_category_to_edit( $id ) { - $category = get_category( $id, OBJECT, 'edit' ); + $category = get_term( $id, 'category', OBJECT, 'edit' ); + _make_cat_compat( $category ); return $category; } @@ -155,7 +156,8 @@ function wp_update_category($catarr) { return false; // First, get all of the original fields - $category = get_category($cat_ID, ARRAY_A); + $category = get_term( $cat_ID, 'category', ARRAY_A ); + _make_cat_compat( $category ); // Escape data pulled from DB. $category = wp_slash($category); diff --git a/wp-admin/includes/template.php b/wp-admin/includes/template.php index 18349644..ad42074d 100644 --- a/wp-admin/includes/template.php +++ b/wp-admin/includes/template.php @@ -24,16 +24,51 @@ class Walker_Category_Checklist extends Walker { var $tree_type = 'category'; var $db_fields = array ('parent' => 'parent', 'id' => 'term_id'); //TODO: decouple this + /** + * Starts the list before the elements are added. + * + * @see Walker:start_lvl() + * + * @since 2.5.1 + * + * @param string $output Passed by reference. Used to append additional content. + * @param int $depth Depth of category. Used for tab indentation. + * @param array $args An array of arguments. @see wp_terms_checklist() + */ function start_lvl( &$output, $depth = 0, $args = array() ) { $indent = str_repeat("\t", $depth); $output .= "$indent

      \n"; } + /** + * Ends the list of after the elements are added. + * + * @see Walker::end_lvl() + * + * @since 2.5.1 + * + * @param string $output Passed by reference. Used to append additional content. + * @param int $depth Depth of category. Used for tab indentation. + * @param array $args An array of arguments. @see wp_terms_checklist() + */ function end_lvl( &$output, $depth = 0, $args = array() ) { $indent = str_repeat("\t", $depth); $output .= "$indent
    \n"; } + /** + * Start the element output. + * + * @see Walker::start_el() + * + * @since 2.5.1 + * + * @param string $output Passed by reference. Used to append additional content. + * @param object $category The current term object. + * @param int $depth Depth of the term in reference to parents. Default 0. + * @param array $args An array of arguments. @see wp_terms_checklist() + * @param int $id ID of the current term. + */ function start_el( &$output, $category, $depth = 0, $args = array(), $id = 0 ) { extract($args); if ( empty($taxonomy) ) @@ -48,6 +83,18 @@ class Walker_Category_Checklist extends Walker { $output .= "\n
  • " . ''; } + /** + * Ends the element output, if needed. + * + * @see Walker::end_el() + * + * @since 2.5.1 + * + * @param string $output Passed by reference. Used to append additional content. + * @param object $category The current term object. + * @param int $depth Depth of the term in reference to parents. Default 0. + * @param array $args An array of arguments. @see wp_terms_checklist() + */ function end_el( &$output, $category, $depth = 0, $args = array() ) { $output .= "
  • \n"; } @@ -500,12 +547,15 @@ function _list_meta_row( $entry, &$count ) { } /** - * {@internal Missing Short Description}} + * Prints the form in the Custom Fields meta box. * * @since 1.2.0 + * + * @param WP_Post $post Optional. The post being edited. */ -function meta_form() { +function meta_form( $post = null ) { global $wpdb; + $post = get_post( $post ); $limit = (int) apply_filters( 'postmeta_form_limit', 30 ); $keys = $wpdb->get_col( " SELECT meta_key @@ -535,7 +585,7 @@ function meta_form() { ID, $key ) ) continue; echo "\n"; } @@ -695,57 +745,6 @@ function parent_dropdown( $default = 0, $parent = 0, $level = 0 ) { } } -/** - * {@internal Missing Short Description}} - * - * @since 2.0.0 - * - * @param unknown_type $id - * @return unknown - */ -function the_attachment_links( $id = false ) { - $id = (int) $id; - $post = get_post( $id ); - - if ( $post->post_type != 'attachment' ) - return false; - - $icon = wp_get_attachment_image( $post->ID, 'thumbnail', true ); - $attachment_data = wp_get_attachment_metadata( $id ); - $thumb = isset( $attachment_data['thumb'] ); -?> - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - html elements for role selectors * @@ -757,7 +756,7 @@ function wp_dropdown_roles( $selected = false ) { $p = ''; $r = ''; - $editable_roles = get_editable_roles(); + $editable_roles = array_reverse( get_editable_roles() ); foreach ( $editable_roles as $role => $details ) { $name = translate_user_role($details['name'] ); @@ -1072,13 +1071,6 @@ function add_settings_section($id, $title, $callback, $page) { $page = 'reading'; } - if ( !isset($wp_settings_sections) ) - $wp_settings_sections = array(); - if ( !isset($wp_settings_sections[$page]) ) - $wp_settings_sections[$page] = array(); - if ( !isset($wp_settings_sections[$page][$id]) ) - $wp_settings_sections[$page][$id] = array(); - $wp_settings_sections[$page][$id] = array('id' => $id, 'title' => $title, 'callback' => $callback); } @@ -1117,13 +1109,6 @@ function add_settings_field($id, $title, $callback, $page, $section = 'default', $page = 'reading'; } - if ( !isset($wp_settings_fields) ) - $wp_settings_fields = array(); - if ( !isset($wp_settings_fields[$page]) ) - $wp_settings_fields[$page] = array(); - if ( !isset($wp_settings_fields[$page][$section]) ) - $wp_settings_fields[$page][$section] = array(); - $wp_settings_fields[$page][$section][$id] = array('id' => $id, 'title' => $title, 'callback' => $callback, 'args' => $args); } @@ -1143,7 +1128,7 @@ function add_settings_field($id, $title, $callback, $page, $section = 'default', function do_settings_sections( $page ) { global $wp_settings_sections, $wp_settings_fields; - if ( ! isset( $wp_settings_sections ) || !isset( $wp_settings_sections[$page] ) ) + if ( ! isset( $wp_settings_sections[$page] ) ) return; foreach ( (array) $wp_settings_sections[$page] as $section ) { @@ -1178,7 +1163,7 @@ function do_settings_sections( $page ) { function do_settings_fields($page, $section) { global $wp_settings_fields; - if ( !isset($wp_settings_fields) || !isset($wp_settings_fields[$page]) || !isset($wp_settings_fields[$page][$section]) ) + if ( ! isset( $wp_settings_fields[$page][$section] ) ) return; foreach ( (array) $wp_settings_fields[$page][$section] as $field ) { @@ -1219,9 +1204,6 @@ function do_settings_fields($page, $section) { function add_settings_error( $setting, $code, $message, $type = 'error' ) { global $wp_settings_errors; - if ( !isset($wp_settings_errors) ) - $wp_settings_errors = array(); - $new_error = array( 'setting' => $setting, 'code' => $code, @@ -1256,7 +1238,7 @@ function add_settings_error( $setting, $code, $message, $type = 'error' ) { function get_settings_errors( $setting = '', $sanitize = false ) { global $wp_settings_errors; - // If $sanitize is true, manually re-run the sanitizisation for this option + // If $sanitize is true, manually re-run the sanitization for this option // This allows the $sanitize_callback from register_setting() to run, adding // any settings errors you want to show by default. if ( $sanitize ) @@ -1453,6 +1435,10 @@ do_action("admin_head-$hook_suffix"); do_action('admin_head'); $admin_body_class .= ' locale-' . sanitize_html_class( strtolower( str_replace( '_', '-', get_locale() ) ) ); + +if ( is_rtl() ) + $admin_body_class .= ' rtl'; + ?> class="wp-admin wp-core-ui no-js iframe "> @@ -1905,7 +1891,7 @@ final class WP_Internal_Pointers { $content = '

    ' . __( 'Compare Revisions' ) . '

    '; $content .= '

    ' . __( 'View, compare, and restore other versions of this content on the improved revisions screen.' ) . '

    '; - self::print_js( 'wp360_revisions', '.misc-pub-section.num-revisions', array( + self::print_js( 'wp360_revisions', '.misc-pub-section.misc-pub-revisions', array( 'content' => $content, 'position' => array( 'edge' => is_rtl() ? 'left' : 'right', 'align' => 'center', 'my' => is_rtl() ? 'left' : 'right-14px' ), ) ); diff --git a/wp-admin/includes/theme.php b/wp-admin/includes/theme.php index 315f0213..0e48bac8 100644 --- a/wp-admin/includes/theme.php +++ b/wp-admin/includes/theme.php @@ -282,7 +282,17 @@ function themes_api($action, $args = null) { $res = apply_filters('themes_api', false, $action, $args); //NOTE: Allows a theme to completely override the builtin WordPress.org API. if ( ! $res ) { - $request = wp_remote_post('http://api.wordpress.org/themes/info/1.0/', array( 'body' => array('action' => $action, 'request' => serialize($args))) ); + $url = 'http://api.wordpress.org/themes/info/1.0/'; + if ( wp_http_supports( array( 'ssl' ) ) ) + $url = set_url_scheme( $url, 'https' ); + + $request = wp_remote_post( $url, array( + 'body' => array( + 'action' => $action, + 'request' => serialize( $args ) + ) + ) ); + if ( is_wp_error($request) ) { $res = new WP_Error('themes_api_failed', __( 'An unexpected error occurred. Something may be wrong with WordPress.org or this server’s configuration. If you continue to have problems, please try the support forums.' ), $request->get_error_message() ); } else { diff --git a/wp-admin/includes/update-core.php b/wp-admin/includes/update-core.php index ea1312b1..52ef1fd4 100644 --- a/wp-admin/includes/update-core.php +++ b/wp-admin/includes/update-core.php @@ -558,6 +558,10 @@ $_old_files = array( 'wp-admin/js/categories.min.js', 'wp-admin/js/custom-fields.js', 'wp-admin/js/custom-fields.min.js', +// 3.7 +'wp-admin/js/cat.js', +'wp-admin/js/cat.min.js', +'wp-includes/js/tinymce/plugins/wpeditimage/js/editimage.min.js', ); /** @@ -658,11 +662,11 @@ function update_core($from, $to) { $versions_file = trailingslashit( $wp_filesystem->wp_content_dir() ) . 'upgrade/version-current.php'; if ( ! $wp_filesystem->copy( $from . $distro . 'wp-includes/version.php', $versions_file ) ) { $wp_filesystem->delete( $from, true ); - return new WP_Error( 'copy_failed', __('Could not copy file.') ); + return new WP_Error( 'copy_failed_for_version_file', __( 'The update cannot be installed because we will be unable to copy some files. This is usually due to inconsistent file permissions.' ), 'wp-includes/version.php' ); } $wp_filesystem->chmod( $versions_file, FS_CHMOD_FILE ); - require_once( WP_CONTENT_DIR . '/upgrade/version-current.php' ); + require( WP_CONTENT_DIR . '/upgrade/version-current.php' ); $wp_filesystem->delete( $versions_file ); $php_version = phpversion(); @@ -685,16 +689,100 @@ function update_core($from, $to) { elseif ( !$mysql_compat ) return new WP_Error( 'mysql_not_compatible', sprintf( __('The update cannot be installed because WordPress %1$s requires MySQL version %2$s or higher. You are running version %3$s.'), $wp_version, $required_mysql_version, $mysql_version ) ); - apply_filters('update_feedback', __('Installing the latest version…')); + apply_filters( 'update_feedback', __( 'Preparing to install the latest version…' ) ); + // Don't copy wp-content, we'll deal with that below + $skip = array( 'wp-content' ); + $check_is_writable = array(); + + // Check to see which files don't really need updating - only available for 3.7 and higher + if ( function_exists( 'get_core_checksums' ) ) { + $checksums = get_core_checksums( $wp_version, isset( $wp_local_package ) ? $wp_local_package : 'en_US' ); + if ( is_array( $checksums ) && isset( $checksums[ $wp_version ] ) ) + $checksums = $checksums[ $wp_version ]; // Compat code for 3.7-beta2 + if ( is_array( $checksums ) ) { + foreach( $checksums as $file => $checksum ) { + if ( 'wp-content' == substr( $file, 0, 10 ) ) + continue; + if ( ! file_exists( ABSPATH . $file ) ) + continue; + if ( md5_file( ABSPATH . $file ) === $checksum ) + $skip[] = $file; + else + $check_is_writable[ $file ] = ABSPATH . $file; + } + } + } + + // If we're using the direct method, we can predict write failures that are due to permissions. + if ( $check_is_writable && 'direct' === $wp_filesystem->method ) { + $files_writable = array_filter( $check_is_writable, array( $wp_filesystem, 'is_writable' ) ); + if ( $files_writable !== $check_is_writable ) { + $files_not_writable = array_diff_key( $check_is_writable, $files_writable ); + foreach ( $files_not_writable as $relative_file_not_writable => $file_not_writable ) { + // If the writable check failed, chmod file to 0644 and try again, same as copy_dir(). + $wp_filesystem->chmod( $file_not_writable, FS_CHMOD_FILE ); + if ( $wp_filesystem->is_writable( $file_not_writable ) ) + unset( $files_not_writable[ $relative_file_not_writable ] ); + } + + // Store package-relative paths (the key) of non-writable files in the WP_Error object. + $error_data = version_compare( $old_wp_version, '3.7-beta2', '>' ) ? array_keys( $files_not_writable ) : ''; + + if ( $files_not_writable ) + return new WP_Error( 'files_not_writable', __( 'The update cannot be installed because we will be unable to copy some files. This is usually due to inconsistent file permissions.' ), implode( ', ', $error_data ) ); + } + } + + apply_filters( 'update_feedback', __( 'Enabling Maintenance mode…' ) ); // Create maintenance file to signal that we are upgrading $maintenance_string = ''; $maintenance_file = $to . '.maintenance'; $wp_filesystem->delete($maintenance_file); $wp_filesystem->put_contents($maintenance_file, $maintenance_string, FS_CHMOD_FILE); + apply_filters( 'update_feedback', __( 'Copying the required files…' ) ); // Copy new versions of WP files into place. - $result = _copy_dir($from . $distro, $to, array('wp-content') ); + $result = _copy_dir( $from . $distro, $to, $skip ); + if ( is_wp_error( $result ) ) + $result = new WP_Error( $result->get_error_code(), $result->get_error_message(), substr( $result->get_error_data(), strlen( $to ) ) ); + + // Check to make sure everything copied correctly, ignoring the contents of wp-content + $skip = array( 'wp-content' ); + $failed = array(); + if ( is_array( $checksums ) ) { + foreach ( $checksums as $file => $checksum ) { + if ( 0 === strpos( $file, 'wp-content' ) ) + continue; + + if ( file_exists( ABSPATH . $file ) && md5_file( ABSPATH . $file ) == $checksum ) + $skip[] = $file; + else + $failed[] = $file; + } + } + + // Some files didn't copy properly + if ( ! empty( $failed ) ) { + $total_size = 0; + // Find the local version of the working directory + $working_dir_local = WP_CONTENT_DIR . '/upgrade/' . basename( $from ) . $distro; + foreach ( $failed as $file ) { + if ( file_exists( $working_dir_local . $file ) ) + $total_size += filesize( $working_dir_local . $file ); + } + + // If we don't have enough free space, it isn't worth trying again. + // Unlikely to be hit due to the check in unzip_file(). + $available_space = @disk_free_space( ABSPATH ); + if ( $available_space && $total_size >= $available_space ) { + $result = new WP_Error( 'disk_full', __( 'There is not enough free disk space to complete the update.' ) ); + } else { + $result = _copy_dir( $from . $distro, $to, $skip ); + if ( is_wp_error( $result ) ) + $result = new WP_Error( $result->get_error_code() . '_retry', $result->get_error_message(), substr( $result->get_error_data(), strlen( $to ) ) ); + } + } // Custom Content Directory needs updating now. // Copy Languages @@ -711,11 +799,18 @@ function update_core($from, $to) { if ( @is_dir($lang_dir) ) { $wp_lang_dir = $wp_filesystem->find_folder($lang_dir); - if ( $wp_lang_dir ) + if ( $wp_lang_dir ) { $result = copy_dir($from . $distro . 'wp-content/languages/', $wp_lang_dir); + if ( is_wp_error( $result ) ) + $result = new WP_Error( $result->get_error_code() . '_languages', $result->get_error_message(), substr( $result->get_error_data(), strlen( $wp_lang_dir ) ) ); + } } } + apply_filters( 'update_feedback', __( 'Disabling Maintenance mode…' ) ); + // Remove maintenance file, we're done with potential site-breaking changes + $wp_filesystem->delete( $maintenance_file ); + // 3.5 -> 3.5+ - an empty twentytwelve directory was created upon upgrade to 3.5 for some users, preventing installation of Twenty Twelve. if ( '3.5' == $old_wp_version ) { if ( is_dir( WP_CONTENT_DIR . '/themes/twentytwelve' ) && ! file_exists( WP_CONTENT_DIR . '/themes/twentytwelve/style.css' ) ) { @@ -749,15 +844,20 @@ function update_core($from, $to) { continue; if ( ! $wp_filesystem->copy($from . $distro . 'wp-content/' . $file, $dest . $filename, FS_CHMOD_FILE) ) - $result = new WP_Error('copy_failed', __('Could not copy file.'), $dest . $filename); + $result = new WP_Error( "copy_failed_for_new_bundled_$type", __( 'Could not copy file.' ), $dest . $filename ); } else { if ( ! $development_build && $wp_filesystem->is_dir( $dest . $filename ) ) continue; $wp_filesystem->mkdir($dest . $filename, FS_CHMOD_DIR); $_result = copy_dir( $from . $distro . 'wp-content/' . $file, $dest . $filename); - if ( is_wp_error($_result) ) //If a error occurs partway through this final step, keep the error flowing through, but keep process going. - $result = $_result; + + // If a error occurs partway through this final step, keep the error flowing through, but keep process going. + if ( is_wp_error( $_result ) ) { + if ( ! is_wp_error( $result ) ) + $result = new WP_Error; + $result->add( $_result->get_error_code() . "_$type", $_result->get_error_message(), substr( $_result->get_error_data(), strlen( $dest ) ) ); + } } } } //end foreach @@ -765,7 +865,6 @@ function update_core($from, $to) { // Handle $result error from the above blocks if ( is_wp_error($result) ) { - $wp_filesystem->delete($maintenance_file); $wp_filesystem->delete($from, true); return $result; } @@ -792,12 +891,13 @@ function update_core($from, $to) { else delete_option('update_core'); - // Remove maintenance file, we're done. - $wp_filesystem->delete($maintenance_file); - // If we made it this far: do_action( '_core_updated_successfully', $wp_version ); + // Clear the option that blocks auto updates after failures, now that we've been successful. + if ( function_exists( 'delete_site_option' ) ) + delete_site_option( 'auto_core_update_failed' ); + return $wp_version; } @@ -805,10 +905,12 @@ function update_core($from, $to) { * Copies a directory from one location to another via the WordPress Filesystem Abstraction. * Assumes that WP_Filesystem() has already been called and setup. * - * This is a temporary function for the 3.1 -> 3.2 upgrade only and will be removed in 3.3 + * This is a temporary function for the 3.1 -> 3.2 upgrade, as well as for those upgrading to + * 3.7+ * * @ignore * @since 3.2.0 + * @since 3.7.0 Updated not to use a regular expression for the skip list * @see copy_dir() * * @param string $from source directory @@ -824,31 +926,31 @@ function _copy_dir($from, $to, $skip_list = array() ) { $from = trailingslashit($from); $to = trailingslashit($to); - $skip_regex = ''; - foreach ( (array)$skip_list as $key => $skip_file ) - $skip_regex .= preg_quote($skip_file, '!') . '|'; - - if ( !empty($skip_regex) ) - $skip_regex = '!(' . rtrim($skip_regex, '|') . ')$!i'; - foreach ( (array) $dirlist as $filename => $fileinfo ) { - if ( !empty($skip_regex) ) - if ( preg_match($skip_regex, $from . $filename) ) - continue; + if ( in_array( $filename, $skip_list ) ) + continue; if ( 'f' == $fileinfo['type'] ) { if ( ! $wp_filesystem->copy($from . $filename, $to . $filename, true, FS_CHMOD_FILE) ) { // If copy failed, chmod file to 0644 and try again. - $wp_filesystem->chmod($to . $filename, 0644); + $wp_filesystem->chmod( $to . $filename, FS_CHMOD_FILE ); if ( ! $wp_filesystem->copy($from . $filename, $to . $filename, true, FS_CHMOD_FILE) ) - return new WP_Error('copy_failed', __('Could not copy file.'), $to . $filename); + return new WP_Error( 'copy_failed__copy_dir', __( 'Could not copy file.' ), $to . $filename ); } } elseif ( 'd' == $fileinfo['type'] ) { if ( !$wp_filesystem->is_dir($to . $filename) ) { if ( !$wp_filesystem->mkdir($to . $filename, FS_CHMOD_DIR) ) - return new WP_Error('mkdir_failed', __('Could not create directory.'), $to . $filename); + return new WP_Error( 'mkdir_failed__copy_dir', __( 'Could not create directory.' ), $to . $filename ); + } + + // generate the $sub_skip_list for the subdirectory as a sub-set of the existing $skip_list + $sub_skip_list = array(); + foreach ( $skip_list as $skip_item ) { + if ( 0 === strpos( $skip_item, $filename . '/' ) ) + $sub_skip_list[] = preg_replace( '!^' . preg_quote( $filename, '!' ) . '/!i', '', $skip_item ); } - $result = _copy_dir($from . $filename, $to . $filename, $skip_list); + + $result = _copy_dir($from . $filename, $to . $filename, $sub_skip_list); if ( is_wp_error($result) ) return $result; } @@ -870,7 +972,7 @@ function _redirect_to_about_wordpress( $new_version ) { if ( version_compare( $wp_version, '3.4-RC1', '>=' ) ) return; - // Ensure we only run this on the update-core.php page. wp_update_core() could be called in other contexts. + // Ensure we only run this on the update-core.php page. The Core_Upgrader may be used in other contexts. if ( 'update-core.php' != $pagenow ) return; diff --git a/wp-admin/includes/update.php b/wp-admin/includes/update.php index 5cca9dca..147ce4a1 100644 --- a/wp-admin/includes/update.php +++ b/wp-admin/includes/update.php @@ -6,8 +6,6 @@ * @subpackage Administration */ -// The admin side of our 1.1 update system - /** * Selects the first update version from the update_core option * @@ -15,10 +13,10 @@ */ function get_preferred_from_update_core() { $updates = get_core_updates(); - if ( !is_array( $updates ) ) + if ( ! is_array( $updates ) ) return false; if ( empty( $updates ) ) - return (object)array('response' => 'latest'); + return (object) array( 'response' => 'latest' ); return $updates[0]; } @@ -30,51 +28,129 @@ function get_preferred_from_update_core() { * @return array Array of the update objects */ function get_core_updates( $options = array() ) { - $options = array_merge( array('available' => true, 'dismissed' => false ), $options ); + $options = array_merge( array( 'available' => true, 'dismissed' => false ), $options ); $dismissed = get_site_option( 'dismissed_update_core' ); - if ( !is_array( $dismissed ) ) $dismissed = array(); + + if ( ! is_array( $dismissed ) ) + $dismissed = array(); + $from_api = get_site_transient( 'update_core' ); - if ( empty($from_api) ) + + if ( ! isset( $from_api->updates ) || ! is_array( $from_api->updates ) ) return false; - if ( !isset( $from_api->updates ) || !is_array( $from_api->updates ) ) return false; + $updates = $from_api->updates; - if ( !is_array( $updates ) ) return false; $result = array(); - foreach($updates as $update) { - if ( array_key_exists( $update->current.'|'.$update->locale, $dismissed ) ) { + foreach ( $updates as $update ) { + if ( $update->response == 'autoupdate' ) + continue; + + if ( array_key_exists( $update->current . '|' . $update->locale, $dismissed ) ) { if ( $options['dismissed'] ) { $update->dismissed = true; - $result[]= $update; + $result[] = $update; } } else { if ( $options['available'] ) { $update->dismissed = false; - $result[]= $update; + $result[] = $update; } } } return $result; } +/** + * Gets the best available (and enabled) Auto-Update for WordPress Core. + * + * If there's 1.2.3 and 1.3 on offer, it'll choose 1.3 if the install allows it, else, 1.2.3 + * + * @since 3.7.0 + * + * @return bool|array False on failure, otherwise the core update offering. + */ +function find_core_auto_update() { + $updates = get_site_transient( 'update_core' ); + if ( ! $updates || empty( $updates->updates ) ) + return false; + + include_once ABSPATH . 'wp-admin/includes/class-wp-upgrader.php'; + + $auto_update = false; + $upgrader = new WP_Automatic_Updater; + foreach ( $updates->updates as $update ) { + if ( 'autoupdate' != $update->response ) + continue; + + if ( ! $upgrader->should_update( 'core', $update, ABSPATH ) ) + continue; + + if ( ! $auto_update || version_compare( $update->current, $auto_update->current, '>' ) ) + $auto_update = $update; + } + return $auto_update; +} + +/** + * Gets and caches the checksums for the given version of WordPress. + * + * @since 3.7.0 + * + * @param string $version Version string to query. + * @param string $locale Locale to query. + * @return bool|array False on failure. An array of checksums on success. + */ +function get_core_checksums( $version, $locale ) { + $return = array(); + + $url = 'http://api.wordpress.org/core/checksums/1.0/?' . http_build_query( compact( 'version', 'locale' ), null, '&' ); + + if ( wp_http_supports( array( 'ssl' ) ) ) + $url = set_url_scheme( $url, 'https' ); + + $options = array( + 'timeout' => ( ( defined('DOING_CRON') && DOING_CRON ) ? 30 : 3 ), + ); + + $response = wp_remote_get( $url, $options ); + + if ( is_wp_error( $response ) || 200 != wp_remote_retrieve_response_code( $response ) ) + return false; + + $body = trim( wp_remote_retrieve_body( $response ) ); + $body = json_decode( $body, true ); + + if ( ! is_array( $body ) || ! isset( $body['checksums'] ) || ! is_array( $body['checksums'] ) ) + return false; + + return $body['checksums']; +} + function dismiss_core_update( $update ) { $dismissed = get_site_option( 'dismissed_update_core' ); - $dismissed[ $update->current.'|'.$update->locale ] = true; + $dismissed[ $update->current . '|' . $update->locale ] = true; return update_site_option( 'dismissed_update_core', $dismissed ); } function undismiss_core_update( $version, $locale ) { $dismissed = get_site_option( 'dismissed_update_core' ); - $key = $version.'|'.$locale; - if ( !isset( $dismissed[$key] ) ) return false; + $key = $version . '|' . $locale; + + if ( ! isset( $dismissed[$key] ) ) + return false; + unset( $dismissed[$key] ); return update_site_option( 'dismissed_update_core', $dismissed ); } function find_core_update( $version, $locale ) { $from_api = get_site_transient( 'update_core' ); - if ( !is_array( $from_api->updates ) ) return false; + + if ( ! isset( $from_api->updates ) || ! is_array( $from_api->updates ) ) + return false; + $updates = $from_api->updates; - foreach($updates as $update) { + foreach ( $updates as $update ) { if ( $update->current == $version && $update->locale == $locale ) return $update; } @@ -211,15 +287,6 @@ function wp_plugin_update_row( $file, $plugin_data ) { } } -function wp_update_plugin($plugin, $feedback = '') { - if ( !empty($feedback) ) - add_filter('update_feedback', $feedback); - - include ABSPATH . 'wp-admin/includes/class-wp-upgrader.php'; - $upgrader = new Plugin_Upgrader(); - return $upgrader->upgrade($plugin); -} - function get_theme_updates() { $themes = wp_get_themes(); $current = get_site_transient('update_themes'); @@ -236,15 +303,6 @@ function get_theme_updates() { return $update_themes; } -function wp_update_theme($theme, $feedback = '') { - if ( !empty($feedback) ) - add_filter('update_feedback', $feedback); - - include ABSPATH . 'wp-admin/includes/class-wp-upgrader.php'; - $upgrader = new Theme_Upgrader(); - return $upgrader->upgrade($theme); -} - function wp_theme_update_rows() { if ( !current_user_can('update_themes' ) ) return; @@ -285,19 +343,28 @@ function wp_theme_update_row( $theme_key, $theme ) { echo '
    '; } -function wp_update_core($current, $feedback = '') { - if ( !empty($feedback) ) - add_filter('update_feedback', $feedback); - - include ABSPATH . 'wp-admin/includes/class-wp-upgrader.php'; - $upgrader = new Core_Upgrader(); - return $upgrader->upgrade($current); - -} - function maintenance_nag() { + include ABSPATH . WPINC . '/version.php'; // include an unmodified $wp_version global $upgrading; - if ( ! isset( $upgrading ) ) + $nag = isset( $upgrading ); + if ( ! $nag ) { + $failed = get_site_option( 'auto_core_update_failed' ); + /* + * If an update failed critically, we may have copied over version.php but not other files. + * In that case, if the install claims we're running the version we attempted, nag. + * This is serious enough to err on the side of nagging. + * + * If we simply failed to update before we tried to copy any files, then assume things are + * OK if they are now running the latest. + * + * This flag is cleared whenever a successful update occurs using Core_Upgrader. + */ + $comparison = ! empty( $failed['critical'] ) ? '>=' : '>'; + if ( version_compare( $failed['attempted'], $wp_version, '>=' ) ) + $nag = true; + } + + if ( ! $nag ) return false; if ( current_user_can('update_core') ) @@ -308,3 +375,4 @@ function maintenance_nag() { echo "
    $msg
    "; } add_action( 'admin_notices', 'maintenance_nag' ); +add_action( 'network_admin_notices', 'maintenance_nag' ); diff --git a/wp-admin/includes/upgrade.php b/wp-admin/includes/upgrade.php index 0d17d8fc..b1b85555 100644 --- a/wp-admin/includes/upgrade.php +++ b/wp-admin/includes/upgrade.php @@ -402,6 +402,9 @@ function upgrade_all() { if ( $wp_current_db_version < 22422 ) upgrade_350(); + if ( $wp_current_db_version < 25824 ) + upgrade_370(); + maybe_disable_link_manager(); maybe_disable_automattic_widgets(); @@ -1208,6 +1211,17 @@ function upgrade_350() { wp_delete_term( $term->term_id, 'post_format' ); } +/** + * Execute changes made in WordPress 3.7. + * + * @since 3.7.0 + */ +function upgrade_370() { + global $wp_current_db_version; + if ( $wp_current_db_version < 25824 ) + wp_clear_scheduled_hook( 'wp_auto_updates_maybe_update' ); +} + /** * Execute network level changes * @@ -1215,6 +1229,20 @@ function upgrade_350() { */ function upgrade_network() { global $wp_current_db_version, $wpdb; + + // Always + if ( is_main_network() ) { + // Deletes all expired transients. + // The multi-table delete syntax is used to delete the transient record from table a, + // and the corresponding transient_timeout record from table b. + $time = time(); + $wpdb->query("DELETE a, b FROM $wpdb->sitemeta a, $wpdb->sitemeta b WHERE + a.meta_key LIKE '\_site\_transient\_%' AND + a.meta_key NOT LIKE '\_site\_transient\_timeout\_%' AND + b.meta_key = CONCAT( '_site_transient_timeout_', SUBSTRING( a.meta_key, 17 ) ) + AND b.meta_value < $time"); + } + // 2.8 if ( $wp_current_db_version < 11549 ) { $wpmu_sitewide_plugins = get_site_option( 'wpmu_sitewide_plugins' ); @@ -1978,6 +2006,22 @@ function pre_schema_upgrade() { $wpdb->query("ALTER TABLE $wpdb->options DROP INDEX option_name"); } + // Multisite schema upgrades. + if ( $wp_current_db_version < 25448 && is_multisite() && ! defined( 'DO_NOT_UPGRADE_GLOBAL_TABLES' ) && is_main_network() ) { + + // Upgrade verions prior to 3.7 + if ( $wp_current_db_version < 25179 ) { + // New primary key for signups. + $wpdb->query( "ALTER TABLE $wpdb->signups ADD signup_id BIGINT(20) NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST" ); + $wpdb->query( "ALTER TABLE $wpdb->signups DROP INDEX domain" ); + } + + if ( $wp_current_db_version < 25448 ) { + // Convert archived from enum to tinyint. + $wpdb->query( "ALTER TABLE $wpdb->blogs CHANGE COLUMN archived archived varchar(1) NOT NULL default '0'" ); + $wpdb->query( "ALTER TABLE $wpdb->blogs CHANGE COLUMN archived archived tinyint(2) NOT NULL default 0" ); + } + } } /** diff --git a/wp-admin/includes/user.php b/wp-admin/includes/user.php index 9e9d9449..b61cb7ad 100644 --- a/wp-admin/includes/user.php +++ b/wp-admin/includes/user.php @@ -85,7 +85,7 @@ function edit_user( $user_id = 0 ) { if ( isset( $_POST['description'] ) ) $user->description = trim( $_POST['description'] ); - foreach ( _wp_get_user_contactmethods( $user ) as $method => $name ) { + foreach ( wp_get_user_contact_methods( $user ) as $method => $name ) { if ( isset( $_POST[$method] )) $user->$method = sanitize_text_field( $_POST[$method] ); } @@ -195,12 +195,13 @@ function get_editable_roles() { * @since 2.0.5 * * @param int $user_id User ID. - * @return object WP_User object with user data. + * @return WP_User|bool WP_User object on success, false on failure. */ function get_user_to_edit( $user_id ) { $user = get_userdata( $user_id ); - $user->filter = 'edit'; + if ( $user ) + $user->filter = 'edit'; return $user; } diff --git a/wp-admin/index.php b/wp-admin/index.php index b476267c..d74a45b8 100644 --- a/wp-admin/index.php +++ b/wp-admin/index.php @@ -7,7 +7,7 @@ */ /** Load WordPress Bootstrap */ -require_once('./admin.php'); +require_once( dirname( __FILE__ ) . '/admin.php' ); /** Load WordPress dashboard API */ require_once(ABSPATH . 'wp-admin/includes/dashboard.php'); @@ -120,7 +120,17 @@ $today = current_time('mysql', 1);
    - + remove_action( 'welcome_panel', 'wp_welcome_panel' ); + * + * @since 3.5.0 + */ + do_action( 'welcome_panel' ); + ?>
    diff --git a/wp-admin/install.php b/wp-admin/install.php index 71d59a9c..0b6ac2ed 100644 --- a/wp-admin/install.php +++ b/wp-admin/install.php @@ -36,10 +36,10 @@ define( 'WP_INSTALLING', true ); require_once( dirname( dirname( __FILE__ ) ) . '/wp-load.php' ); /** Load WordPress Administration Upgrade API */ -require_once( dirname( __FILE__ ) . '/includes/upgrade.php' ); +require_once( ABSPATH . 'wp-admin/includes/upgrade.php' ); /** Load wpdb */ -require_once(dirname(dirname(__FILE__)) . '/wp-includes/wp-db.php'); +require_once( ABSPATH . 'wp-includes/wp-db.php' ); $step = isset( $_GET['step'] ) ? (int) $_GET['step'] : 0; @@ -85,13 +85,13 @@ function display_setup_form( $error = null ) { $blog_public = isset( $_POST['blog_public'] ); $weblog_title = isset( $_POST['weblog_title'] ) ? trim( wp_unslash( $_POST['weblog_title'] ) ) : ''; - $user_name = isset($_POST['user_name']) ? trim( wp_unslash( $_POST['user_name'] ) ) : 'admin'; + $user_name = isset($_POST['user_name']) ? trim( wp_unslash( $_POST['user_name'] ) ) : ''; $admin_password = isset($_POST['admin_password']) ? trim( wp_unslash( $_POST['admin_password'] ) ) : ''; $admin_email = isset( $_POST['admin_email'] ) ? trim( wp_unslash( $_POST['admin_email'] ) ) : ''; if ( ! is_null( $error ) ) { ?> -

    ERROR: %s' ), $error ); ?>

    +

    @@ -190,7 +190,7 @@ switch($step) { display_header(); // Fill in the data we gathered $weblog_title = isset( $_POST['weblog_title'] ) ? trim( wp_unslash( $_POST['weblog_title'] ) ) : ''; - $user_name = isset($_POST['user_name']) ? trim( wp_unslash( $_POST['user_name'] ) ) : 'admin'; + $user_name = isset($_POST['user_name']) ? trim( wp_unslash( $_POST['user_name'] ) ) : ''; $admin_password = isset($_POST['admin_password']) ? wp_unslash( $_POST['admin_password'] ) : ''; $admin_password_check = isset($_POST['admin_password2']) ? wp_unslash( $_POST['admin_password2'] ) : ''; $admin_email = isset( $_POST['admin_email'] ) ?trim( wp_unslash( $_POST['admin_email'] ) ) : ''; @@ -199,22 +199,22 @@ switch($step) { $error = false; if ( empty( $user_name ) ) { // TODO: poka-yoke - display_setup_form( __('you must provide a valid username.') ); + display_setup_form( __( 'Please provide a valid username.' ) ); $error = true; } elseif ( $user_name != sanitize_user( $user_name, true ) ) { - display_setup_form( __('the username you provided has invalid characters.') ); + display_setup_form( __( 'The username you provided has invalid characters.' ) ); $error = true; } elseif ( $admin_password != $admin_password_check ) { // TODO: poka-yoke - display_setup_form( __( 'your passwords do not match. Please try again' ) ); + display_setup_form( __( 'Your passwords do not match. Please try again.' ) ); $error = true; } else if ( empty( $admin_email ) ) { // TODO: poka-yoke - display_setup_form( __( 'you must provide an e-mail address.' ) ); + display_setup_form( __( 'You must provide an email address.' ) ); $error = true; } elseif ( ! is_email( $admin_email ) ) { // TODO: poka-yoke - display_setup_form( __( 'that isn’t a valid e-mail address. E-mail addresses look like: username@example.com' ) ); + display_setup_form( __( 'Sorry, that isn’t a valid email address. Email addresses look like username@example.com.' ) ); $error = true; } diff --git a/wp-admin/js/about.js b/wp-admin/js/about.js new file mode 100644 index 00000000..3aaa66d7 --- /dev/null +++ b/wp-admin/js/about.js @@ -0,0 +1,80 @@ +(function($){ + var password = 'Gosh, WordPress is grand.', + $input = $('#pass'), + shouldAnimate = true, + timesForAnimation = [280, 300, 305, 310, 315, 325, 330, 345, 360, 370, 380, 400, 450, 500, 600], + resultsCache = {}, + indicatorString = $('#pass-strength-result').text(); + + function updateResult(){ + var strength; + + if ( typeof( resultsCache[ $input.val() ]) === 'undefined') { + strength = wp.passwordStrength.meter($input.val(), [], $input.val()); + resultsCache[ $input.val() ] = strength; + } else { + strength = resultsCache[ $input.val() ]; + } + + $('#pass-strength-result').removeClass('short bad good strong'); + switch ( strength ) { + case 2: + $('#pass-strength-result').addClass('bad').html( pwsL10n['bad'] ); + break; + case 3: + $('#pass-strength-result').addClass('good').html( pwsL10n['good'] ); + break; + case 4: + $('#pass-strength-result').addClass('strong').html( pwsL10n['strong'] ); + break; + default: + $('#pass-strength-result').addClass('short').html( pwsL10n['short'] ); + } + } + function resetMeter(){ + $input.val(''); + $('#pass-strength-result').text(indicatorString); + $('#pass-strength-result').removeClass('short bad good strong'); + } + + function animate(){ + if (shouldAnimate === false) + return; + if ($input.val().length < password.length){ + $input.val( password.substr(0, $input.val().length + 1) ); + updateResult(); + + // Look like real typing by changing the speed new letters are added each time + setTimeout( animate, ( timesForAnimation[ Math.floor( Math.random() * timesForAnimation.length ) ] ) ); + } else { + resetMeter(); + + // When we reset, let's wait a bit longer than normal to start again + setTimeout(animate, 700); + } + + } + + function begin(){ + // we async load zxcvbn, so we need to make sure it's loaded before starting + if (typeof(zxcvbn) !== 'undefined') + animate(); + else + setTimeout(begin,800); + } + + // Turn off the animation on focus + $input.on('focus', function(){ + shouldAnimate = false; + resetMeter(); + }); + + // Act like a normal password strength meter + $input.on('keyup', function(){ + updateResult(); + }); + + // Start the animation + begin(); + +})(jQuery); diff --git a/wp-admin/js/about.min.js b/wp-admin/js/about.min.js new file mode 100644 index 00000000..4720562f --- /dev/null +++ b/wp-admin/js/about.min.js @@ -0,0 +1 @@ +!function(a){function b(){var b;switch("undefined"==typeof j[g.val()]?(b=wp.passwordStrength.meter(g.val(),[],g.val()),j[g.val()]=b):b=j[g.val()],a("#pass-strength-result").removeClass("short bad good strong"),b){case 2:a("#pass-strength-result").addClass("bad").html(pwsL10n.bad);break;case 3:a("#pass-strength-result").addClass("good").html(pwsL10n.good);break;case 4:a("#pass-strength-result").addClass("strong").html(pwsL10n.strong);break;default:a("#pass-strength-result").addClass("short").html(pwsL10n["short"])}}function c(){g.val(""),a("#pass-strength-result").text(k),a("#pass-strength-result").removeClass("short bad good strong")}function d(){h!==!1&&(g.val().length' + catL10n.how + ''); - $('#categorychecklist').wpList( { alt: '', response: 'cat-ajax-response', confirm: myConfirm } ); -} ); diff --git a/wp-admin/js/cat.min.js b/wp-admin/js/cat.min.js deleted file mode 100644 index f286d612..00000000 --- a/wp-admin/js/cat.min.js +++ /dev/null @@ -1 +0,0 @@ -jQuery(document).ready(function(b){var a=function(){return""!==b("#newcat").val()};b("#jaxcat").prepend(''+catL10n.how+'');b("#categorychecklist").wpList({alt:"",response:"cat-ajax-response",confirm:a})}); \ No newline at end of file diff --git a/wp-admin/js/color-picker.min.js b/wp-admin/js/color-picker.min.js index 178ab378..2a374570 100644 --- a/wp-admin/js/color-picker.min.js +++ b/wp-admin/js/color-picker.min.js @@ -1 +1 @@ -(function(f,e){var a='',c='
    ',b='
    ',g='';var d={options:{defaultColor:false,change:false,clear:false,hide:true,palettes:true},_create:function(){if(!f.support.iris){return}var h=this;var i=h.element;f.extend(h.options,i.data());h.initialValue=i.val();i.addClass("wp-color-picker").hide().wrap(b);h.wrap=i.parent();h.toggler=f(a).insertBefore(i).css({backgroundColor:h.initialValue}).attr("title",wpColorPickerL10n.pick).attr("data-current",wpColorPickerL10n.current);h.pickerContainer=f(c).insertAfter(i);h.button=f(g);if(h.options.defaultColor){h.button.addClass("wp-picker-default").val(wpColorPickerL10n.defaultString)}else{h.button.addClass("wp-picker-clear").val(wpColorPickerL10n.clear)}i.wrap('').after(h.button);i.iris({target:h.pickerContainer,hide:true,width:255,mode:"hsv",palettes:h.options.palettes,change:function(j,k){h.toggler.css({backgroundColor:k.color.toString()});if(f.isFunction(h.options.change)){h.options.change.call(this,j,k)}}});i.val(h.initialValue);h._addListeners();if(!h.options.hide){h.toggler.click()}},_addListeners:function(){var h=this;h.toggler.click(function(i){i.stopPropagation();h.element.toggle().iris("toggle");h.button.toggleClass("hidden");h.toggler.toggleClass("wp-picker-open");if(h.toggler.hasClass("wp-picker-open")){f("body").on("click",{wrap:h.wrap,toggler:h.toggler},h._bodyListener)}else{f("body").off("click",h._bodyListener)}});h.element.change(function(j){var i=f(this),k=i.val();if(k===""||k==="#"){h.toggler.css("backgroundColor","");if(f.isFunction(h.options.clear)){h.options.clear.call(this,j)}}});h.toggler.on("keyup",function(i){if(i.keyCode===13||i.keyCode===32){i.preventDefault();h.toggler.trigger("click").next().focus()}});h.button.click(function(j){var i=f(this);if(i.hasClass("wp-picker-clear")){h.element.val("");h.toggler.css("backgroundColor","");if(f.isFunction(h.options.clear)){h.options.clear.call(this,j)}}else{if(i.hasClass("wp-picker-default")){h.element.val(h.options.defaultColor).change()}}})},_bodyListener:function(h){if(!h.data.wrap.find(h.target).length){h.data.toggler.click()}},color:function(h){if(h===e){return this.element.iris("option","color")}this.element.iris("option","color",h)},defaultColor:function(h){if(h===e){return this.options.defaultColor}this.options.defaultColor=h}};f.widget("wp.wpColorPicker",d)}(jQuery)); \ No newline at end of file +!function(a,b){var c='',d='
    ',e='
    ',f='',g={options:{defaultColor:!1,change:!1,clear:!1,hide:!0,palettes:!0},_create:function(){if(a.support.iris){var b=this,g=b.element;a.extend(b.options,g.data()),b.initialValue=g.val(),g.addClass("wp-color-picker").hide().wrap(e),b.wrap=g.parent(),b.toggler=a(c).insertBefore(g).css({backgroundColor:b.initialValue}).attr("title",wpColorPickerL10n.pick).attr("data-current",wpColorPickerL10n.current),b.pickerContainer=a(d).insertAfter(g),b.button=a(f),b.options.defaultColor?b.button.addClass("wp-picker-default").val(wpColorPickerL10n.defaultString):b.button.addClass("wp-picker-clear").val(wpColorPickerL10n.clear),g.wrap('').after(b.button),g.iris({target:b.pickerContainer,hide:!0,width:255,mode:"hsv",palettes:b.options.palettes,change:function(c,d){b.toggler.css({backgroundColor:d.color.toString()}),a.isFunction(b.options.change)&&b.options.change.call(this,c,d)}}),g.val(b.initialValue),b._addListeners(),b.options.hide||b.toggler.click()}},_addListeners:function(){var b=this;b.toggler.click(function(c){c.stopPropagation(),b.element.toggle().iris("toggle"),b.button.toggleClass("hidden"),b.toggler.toggleClass("wp-picker-open"),b.toggler.hasClass("wp-picker-open")?a("body").on("click",{wrap:b.wrap,toggler:b.toggler},b._bodyListener):a("body").off("click",b._bodyListener)}),b.element.change(function(c){var d=a(this),e=d.val();(""===e||"#"===e)&&(b.toggler.css("backgroundColor",""),a.isFunction(b.options.clear)&&b.options.clear.call(this,c))}),b.toggler.on("keyup",function(a){(13===a.keyCode||32===a.keyCode)&&(a.preventDefault(),b.toggler.trigger("click").next().focus())}),b.button.click(function(c){var d=a(this);d.hasClass("wp-picker-clear")?(b.element.val(""),b.toggler.css("backgroundColor",""),a.isFunction(b.options.clear)&&b.options.clear.call(this,c)):d.hasClass("wp-picker-default")&&b.element.val(b.options.defaultColor).change()})},_bodyListener:function(a){a.data.wrap.find(a.target).length||a.data.toggler.click()},color:function(a){return a===b?this.element.iris("option","color"):(this.element.iris("option","color",a),void 0)},defaultColor:function(a){return a===b?this.options.defaultColor:(this.options.defaultColor=a,void 0)}};a.widget("wp.wpColorPicker",g)}(jQuery); \ No newline at end of file diff --git a/wp-admin/js/comment.min.js b/wp-admin/js/comment.min.js index e5a48a5e..fbfa877a 100644 --- a/wp-admin/js/comment.min.js +++ b/wp-admin/js/comment.min.js @@ -1 +1 @@ -jQuery(document).ready(function(b){postboxes.add_postbox_toggles("comment");var a=b("#timestamp").html();b(".edit-timestamp").click(function(){if(b("#timestampdiv").is(":hidden")){b("#timestampdiv").slideDown("normal");b(".edit-timestamp").hide()}return false});b(".cancel-timestamp").click(function(){b("#timestampdiv").slideUp("normal");b("#mm").val(b("#hidden_mm").val());b("#jj").val(b("#hidden_jj").val());b("#aa").val(b("#hidden_aa").val());b("#hh").val(b("#hidden_hh").val());b("#mn").val(b("#hidden_mn").val());b("#timestamp").html(a);b(".edit-timestamp").show();return false});b(".save-timestamp").click(function(){var g=b("#aa").val(),h=b("#mm").val(),d=b("#jj").val(),c=b("#hh").val(),f=b("#mn").val(),e=new Date(g,h-1,d,c,f);if(e.getFullYear()!=g||(1+e.getMonth())!=h||e.getDate()!=d||e.getMinutes()!=f){b(".timestamp-wrap","#timestampdiv").addClass("form-invalid");return false}else{b(".timestamp-wrap","#timestampdiv").removeClass("form-invalid")}b("#timestampdiv").slideUp("normal");b(".edit-timestamp").show();b("#timestamp").html(commentL10n.submittedOn+" "+b('#mm option[value="'+h+'"]').text()+" "+d+", "+g+" @ "+c+":"+f+" ");return false})}); \ No newline at end of file +jQuery(document).ready(function(a){postboxes.add_postbox_toggles("comment");var b=a("#timestamp").html();a(".edit-timestamp").click(function(){return a("#timestampdiv").is(":hidden")&&(a("#timestampdiv").slideDown("normal"),a(".edit-timestamp").hide()),!1}),a(".cancel-timestamp").click(function(){return a("#timestampdiv").slideUp("normal"),a("#mm").val(a("#hidden_mm").val()),a("#jj").val(a("#hidden_jj").val()),a("#aa").val(a("#hidden_aa").val()),a("#hh").val(a("#hidden_hh").val()),a("#mn").val(a("#hidden_mn").val()),a("#timestamp").html(b),a(".edit-timestamp").show(),!1}),a(".save-timestamp").click(function(){var b=a("#aa").val(),c=a("#mm").val(),d=a("#jj").val(),e=a("#hh").val(),f=a("#mn").val(),g=new Date(b,c-1,d,e,f);return g.getFullYear()!=b||1+g.getMonth()!=c||g.getDate()!=d||g.getMinutes()!=f?(a(".timestamp-wrap","#timestampdiv").addClass("form-invalid"),!1):(a(".timestamp-wrap","#timestampdiv").removeClass("form-invalid"),a("#timestampdiv").slideUp("normal"),a(".edit-timestamp").show(),a("#timestamp").html(commentL10n.submittedOn+" "+a('#mm option[value="'+c+'"]').text()+" "+d+", "+b+" @ "+e+":"+f+" "),!1)})}); \ No newline at end of file diff --git a/wp-admin/js/common.js b/wp-admin/js/common.js index 228cf0cc..822af979 100644 --- a/wp-admin/js/common.js +++ b/wp-admin/js/common.js @@ -160,7 +160,7 @@ $('.contextual-help-tabs').delegate('a', 'click focus', function(e) { }); $(document).ready( function() { - var lastClicked = false, checks, first, last, checked, menu = $('#adminmenu'), mobileEvent, + var lastClicked = false, checks, first, last, checked, sliced, menu = $('#adminmenu'), mobileEvent, pageInput = $('input.current-page'), currentPage = pageInput.val(); // when the menu is folded, make the fly-out submenu header clickable @@ -286,7 +286,8 @@ $(document).ready( function() { last = checks.index( this ); checked = $(this).prop('checked'); if ( 0 < first && 0 < last && first != last ) { - checks.slice( first, last ).prop( 'checked', function(){ + sliced = ( last > first ) ? checks.slice( first, last ) : checks.slice( last, first ); + sliced.prop( 'checked', function() { if ( $(this).closest('tr').is(':visible') ) return checked; @@ -333,6 +334,20 @@ $(document).ready( function() { }); }); + // Show row actions on keyboard focus of its parent container element or any other elements contained within + var transitionTimeout, focusedRowActions; + $( 'td.post-title, td.title, td.comment, .bookmarks td.column-name, td.blogname, td.username, .dashboard-comment-wrap' ).focusin(function(){ + clearTimeout( transitionTimeout ); + focusedRowActions = $(this).find( '.row-actions' ); + focusedRowActions.addClass( 'visible' ); + }).focusout(function(){ + // Tabbing between post title and .row-actions links needs a brief pause, otherwise + // the .row-actions div gets hidden in transit in some browsers (ahem, Firefox). + transitionTimeout = setTimeout(function(){ + focusedRowActions.removeClass( 'visible' ); + }, 30); + }); + $('#default-password-nag-no').click( function() { setUserSetting('default_password_nag', 'hide'); $('div.default-password-nag').hide(); @@ -395,6 +410,10 @@ $(document).ready( function() { }); } + $('.search-box input[type="search"], .search-box input[type="submit"]').mousedown(function () { + $('select[name^="action"]').val('-1'); + }); + // Scroll into view when focused $('#contextual-help-link, #show-settings-link').on( 'focus.scroll-into-view', function(e){ if ( e.target.scrollIntoView ) diff --git a/wp-admin/js/common.min.js b/wp-admin/js/common.min.js index c2aa152e..430e0c2d 100644 --- a/wp-admin/js/common.min.js +++ b/wp-admin/js/common.min.js @@ -1 +1 @@ -var showNotice,adminMenu,columns,validateForm,screenMeta;(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(){b.focus();c.addClass("screen-meta-active").attr("aria-expanded",true)})},close:function(b,c){b.slideUp("fast",function(){c.removeClass("screen-meta-active").attr("aria-expanded",false);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 i=false,d,f,j,h,c=a("#adminmenu"),b,e=a("input.current-page"),g=e.val();c.on("click.wp-submenu-head",".wp-submenu-head",function(k){a(k.target).parent().siblings("a").get(0).click()});a("#collapse-menu").on("click.collapse-menu",function(m){var k=a(document.body),l;a("#adminmenu div.wp-submenu").css("margin-top","");l=navigator.userAgent.indexOf("AppleWebKit/")>-1?a(window).width():window.innerWidth;if(l&&l<900){if(k.hasClass("auto-fold")){k.removeClass("auto-fold").removeClass("folded");setUserSetting("unfold",1);setUserSetting("mfold","o")}else{k.addClass("auto-fold");setUserSetting("unfold",0)}}else{if(k.hasClass("folded")){k.removeClass("folded");setUserSetting("mfold","o")}else{k.addClass("folded");setUserSetting("mfold","f")}}});if("ontouchstart" in window||/IEMobile\/[1-9]/.test(navigator.userAgent)){b=/Mobile\/.+Safari/.test(navigator.userAgent)?"touchstart":"click";a(document.body).on(b+".wp-mobile-hover",function(k){if(!a(k.target).closest("#adminmenu").length){c.find("li.wp-has-submenu.opensub").removeClass("opensub")}});c.find("a.wp-has-submenu").on(b+".wp-mobile-hover",function(m){var l=a(this),k=l.parent();if(!k.hasClass("opensub")&&(!k.hasClass("wp-menu-open")||k.width()<40)){m.preventDefault();c.find("li.opensub").removeClass("opensub");k.addClass("opensub")}})}c.find("li.wp-has-submenu").hoverIntent({over:function(s){var u,q,k,r,l=a(this).find(".wp-submenu"),v,n,p,t=parseInt(l.css("top"),10);if(isNaN(t)||t>-5){return}v=a(this).offset().top;n=a(window).scrollTop();p=v-n-30;u=v+l.height()+1;q=a("#wpwrap").height();k=60+u-q;r=a(window).height()+n-15;if(r<(u-k)){k=u-r}if(k>p){k=p}if(k>1){l.css("margin-top","-"+k+"px")}else{l.css("margin-top","")}c.find("li.menu-top").removeClass("opensub");a(this).addClass("opensub")},out:function(){a(this).removeClass("opensub").find(".wp-submenu").css("margin-top","")},timeout:200,sensitivity:7,interval:90});c.on("focus.adminmenu",".wp-submenu a",function(k){a(k.target).closest("li.menu-top").addClass("opensub")}).on("blur.adminmenu",".wp-submenu a",function(k){a(k.target).closest("li.menu-top").removeClass("opensub")});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(!i){return true}d=a(i).closest("form").find(":checkbox");f=d.index(i);j=d.index(this);h=a(this).prop("checked");if(0=0){k=this.scrollTop;m.value=q.substring(0,r).concat("\t",q.substring(l));m.selectionStart=m.selectionEnd=r+1;this.scrollTop=k}}if(p.stopPropagation){p.stopPropagation()}if(p.preventDefault){p.preventDefault()}});a("#newcontent").bind("blur.wpevent_InsertTab",function(k){if(this.lastKey&&9==this.lastKey){this.focus()}});if(e.length){e.closest("form").submit(function(k){if(a('select[name="action"]').val()==-1&&a('select[name="action2"]').val()==-1&&e.val()==g){e.val("1")}})}a("#contextual-help-link, #show-settings-link").on("focus.scroll-into-view",function(k){if(k.target.scrollIntoView){k.target.scrollIntoView(false)}});(function(){var l,k,m=a("form.wp-upload-form");if(!m.length){return}l=m.find('input[type="submit"]');k=m.find('input[type="file"]');function n(){l.prop("disabled",""===k.map(function(){return a(this).val()}).get().join(""))}n();k.on("change",n)})()});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;!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 c=a(this),d=c.val();c.prop("checked")?b.checked(d):b.unchecked(d),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 a=this.id;return a.substring(a,a.length-5)}).get().join(",")}},colSpanChange:function(b){var c,d=a("table").find(".colspanchange");d.length&&(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 a=commonL10n.warnDelete||"";return confirm(a)?!0:!1},note:function(a){alert(a)}},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(b){var c=a(this.href.replace(/.+#/,"#"));b.preventDefault(),c.length&&(c.is(":visible")?screenMeta.close(c,a(this)):screenMeta.open(c,a(this)))},open:function(b,c){a(".screen-meta-toggle").not(c.parent()).css("visibility","hidden"),b.parent().show(),b.slideDown("fast",function(){b.focus(),c.addClass("screen-meta-active").attr("aria-expanded",!0)})},close:function(b,c){b.slideUp("fast",function(){c.removeClass("screen-meta-active").attr("aria-expanded",!1),a(".screen-meta-toggle").css("visibility",""),b.parent().hide()})}},a(".contextual-help-tabs").delegate("a","click focus",function(b){var c,d=a(this);return b.preventDefault(),d.is(".active a")?!1:(a(".contextual-help-tabs .active").removeClass("active"),d.parent("li").addClass("active"),c=a(d.attr("href")),a(".help-tab-content").not(c).removeClass("active").hide(),c.addClass("active").show(),void 0)}),a(document).ready(function(){var b,c,d,e,f,g,h=!1,i=a("#adminmenu"),j=a("input.current-page"),k=j.val();i.on("click.wp-submenu-head",".wp-submenu-head",function(b){a(b.target).parent().siblings("a").get(0).click()}),a("#collapse-menu").on("click.collapse-menu",function(){var b,c=a(document.body);a("#adminmenu div.wp-submenu").css("margin-top",""),b=navigator.userAgent.indexOf("AppleWebKit/")>-1?a(window).width():window.innerWidth,b&&900>b?c.hasClass("auto-fold")?(c.removeClass("auto-fold").removeClass("folded"),setUserSetting("unfold",1),setUserSetting("mfold","o")):(c.addClass("auto-fold"),setUserSetting("unfold",0)):c.hasClass("folded")?(c.removeClass("folded"),setUserSetting("mfold","o")):(c.addClass("folded"),setUserSetting("mfold","f"))}),("ontouchstart"in window||/IEMobile\/[1-9]/.test(navigator.userAgent))&&(g=/Mobile\/.+Safari/.test(navigator.userAgent)?"touchstart":"click",a(document.body).on(g+".wp-mobile-hover",function(b){a(b.target).closest("#adminmenu").length||i.find("li.wp-has-submenu.opensub").removeClass("opensub")}),i.find("a.wp-has-submenu").on(g+".wp-mobile-hover",function(b){var c=a(this),d=c.parent();d.hasClass("opensub")||d.hasClass("wp-menu-open")&&!(d.width()<40)||(b.preventDefault(),i.find("li.opensub").removeClass("opensub"),d.addClass("opensub"))})),i.find("li.wp-has-submenu").hoverIntent({over:function(){var b,c,d,e,f,g,h,j=a(this).find(".wp-submenu"),k=parseInt(j.css("top"),10);isNaN(k)||k>-5||(f=a(this).offset().top,g=a(window).scrollTop(),h=f-g-30,b=f+j.height()+1,c=a("#wpwrap").height(),d=60+b-c,e=a(window).height()+g-15,b-d>e&&(d=b-e),d>h&&(d=h),d>1?j.css("margin-top","-"+d+"px"):j.css("margin-top",""),i.find("li.menu-top").removeClass("opensub"),a(this).addClass("opensub"))},out:function(){a(this).removeClass("opensub").find(".wp-submenu").css("margin-top","")},timeout:200,sensitivity:7,interval:90}),i.on("focus.adminmenu",".wp-submenu a",function(b){a(b.target).closest("li.menu-top").addClass("opensub")}).on("blur.adminmenu",".wp-submenu a",function(b){a(b.target).closest("li.menu-top").removeClass("opensub")}),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(g){if("undefined"==g.shiftKey)return!0;if(g.shiftKey){if(!h)return!0;b=a(h).closest("form").find(":checkbox"),c=b.index(h),d=b.index(this),e=a(this).prop("checked"),c>0&&d>0&&c!=d&&(f=d>c?b.slice(c,d):b.slice(d,c),f.prop("checked",function(){return a(this).closest("tr").is(":visible")?e:!1}))}h=this;var i=a(this).closest("tbody").find(":checkbox").filter(":visible").not(":checked");return a(this).closest("table").children("thead, tfoot").find(":checkbox").prop("checked",function(){return 0==i.length}),!0}),a("thead, tfoot").find(".check-column :checkbox").click(function(b){var c=a(this).prop("checked"),d="undefined"==typeof toggleWithKeyboard?!1:toggleWithKeyboard,e=b.shiftKey||d;a(this).closest("table").children("tbody").filter(":visible").children().children(".check-column").find(":checkbox").prop("checked",function(){return a(this).is(":hidden")?!1:e?a(this).prop("checked"):c?!0:!1}),a(this).closest("table").children("thead, tfoot").filter(":visible").children().children(".check-column").find(":checkbox").prop("checked",function(){return e?!1:c?!0:!1})});var l,m;a("td.post-title, td.title, td.comment, .bookmarks td.column-name, td.blogname, td.username, .dashboard-comment-wrap").focusin(function(){clearTimeout(l),m=a(this).find(".row-actions"),m.addClass("visible")}).focusout(function(){l=setTimeout(function(){m.removeClass("visible")},30)}),a("#default-password-nag-no").click(function(){return setUserSetting("default_password_nag","hide"),a("div.default-password-nag").hide(),!1}),a("#newcontent").bind("keydown.wpevent_InsertTab",function(b){var c,d,e,f,g,h=b.target;if(27==b.keyCode)return a(h).data("tab-out",!0),void 0;if(!(9!=b.keyCode||b.ctrlKey||b.altKey||b.shiftKey)){if(a(h).data("tab-out"))return a(h).data("tab-out",!1),void 0;c=h.selectionStart,d=h.selectionEnd,e=h.value;try{this.lastKey=9}catch(i){}document.selection?(h.focus(),g=document.selection.createRange(),g.text=" "):c>=0&&(f=this.scrollTop,h.value=e.substring(0,c).concat(" ",e.substring(d)),h.selectionStart=h.selectionEnd=c+1,this.scrollTop=f),b.stopPropagation&&b.stopPropagation(),b.preventDefault&&b.preventDefault()}}),a("#newcontent").bind("blur.wpevent_InsertTab",function(){this.lastKey&&9==this.lastKey&&this.focus()}),j.length&&j.closest("form").submit(function(){-1==a('select[name="action"]').val()&&-1==a('select[name="action2"]').val()&&j.val()==k&&j.val("1")}),a('.search-box input[type="search"], .search-box input[type="submit"]').mousedown(function(){a('select[name^="action"]').val("-1")}),a("#contextual-help-link, #show-settings-link").on("focus.scroll-into-view",function(a){a.target.scrollIntoView&&a.target.scrollIntoView(!1)}),function(){function b(){c.prop("disabled",""===d.map(function(){return a(this).val()}).get().join(""))}var c,d,e=a("form.wp-upload-form");e.length&&(c=e.find('input[type="submit"]'),d=e.find('input[type="file"]'),b(),d.on("change",b))}()}),a(document).bind("wp_CloseOnEscape",function(a,b){return"function"==typeof b.cb?(("function"!=typeof b.condition||b.condition())&&b.cb(),!0):void 0})}(jQuery); \ No newline at end of file diff --git a/wp-admin/js/custom-background.min.js b/wp-admin/js/custom-background.min.js index 4ada9f8f..669d281f 100644 --- a/wp-admin/js/custom-background.min.js +++ b/wp-admin/js/custom-background.min.js @@ -1 +1 @@ -(function(a){a(document).ready(function(){var b=a("#custom-background-image"),c;a("#background-color").wpColorPicker({change:function(d,e){b.css("background-color",e.color.toString())},clear:function(){b.css("background-color","")}});a('input[name="background-position-x"]').change(function(){b.css("background-position",a(this).val()+" top")});a('input[name="background-repeat"]').change(function(){b.css("background-repeat",a(this).val())});a("#choose-from-library-link").click(function(e){var d=a(this);e.preventDefault();if(c){c.open();return}c=wp.media.frames.customBackground=wp.media({title:d.data("choose"),library:{type:"image"},button:{text:d.data("update"),close:false}});c.on("select",function(){var f=c.state().get("selection").first();a.post(ajaxurl,{action:"set-background-image",attachment_id:f.id,size:"full"}).done(function(){window.location.reload()})});c.open()})})})(jQuery); \ No newline at end of file +!function(a){a(document).ready(function(){var b,c=a("#custom-background-image");a("#background-color").wpColorPicker({change:function(a,b){c.css("background-color",b.color.toString())},clear:function(){c.css("background-color","")}}),a('input[name="background-position-x"]').change(function(){c.css("background-position",a(this).val()+" top")}),a('input[name="background-repeat"]').change(function(){c.css("background-repeat",a(this).val())}),a("#choose-from-library-link").click(function(c){var d=a(this);return c.preventDefault(),b?(b.open(),void 0):(b=wp.media.frames.customBackground=wp.media({title:d.data("choose"),library:{type:"image"},button:{text:d.data("update"),close:!1}}),b.on("select",function(){var c=b.state().get("selection").first();a.post(ajaxurl,{action:"set-background-image",attachment_id:c.id,size:"full"}).done(function(){window.location.reload()})}),b.open(),void 0)})})}(jQuery); \ No newline at end of file diff --git a/wp-admin/js/customize-controls.js b/wp-admin/js/customize-controls.js index 01fffbac..f780db7c 100644 --- a/wp-admin/js/customize-controls.js +++ b/wp-admin/js/customize-controls.js @@ -36,7 +36,7 @@ $.extend( this, options || {} ); this.id = id; - this.selector = '#customize-control-' + id.replace( ']', '' ).replace( '[', '-' ); + this.selector = '#customize-control-' + id.replace( /\]/g, '' ).replace( /\[/g, '-' ); this.container = $( this.selector ); settings = $.map( this.params.settings, function( value ) { @@ -553,14 +553,19 @@ // Check for URLs that include "/wp-admin/" or end in "/wp-admin". // Strip hashes and query strings before testing. - if ( /\/wp-admin(\/|$)/.test( to.replace(/[#?].*$/, '') ) ) + if ( /\/wp-admin(\/|$)/.test( to.replace( /[#?].*$/, '' ) ) ) return null; // Attempt to match the URL to the control frame's scheme // and check if it's allowed. If not, try the original URL. $.each([ to.replace( rscheme, self.scheme() ), to ], function( i, url ) { $.each( self.allowedUrls, function( i, allowed ) { - if ( 0 === url.indexOf( allowed ) ) { + var path; + + allowed = allowed.replace( /\/+$/, '' ); + path = url.replace( allowed, '' ); + + if ( 0 === url.indexOf( allowed ) && /^([/#?]|$)/.test( path ) ) { result = url; return false; } @@ -862,7 +867,7 @@ if ( 9 === event.which ) // tab return; if ( 13 === event.which ) // enter - parent.send( 'close' ); + this.click(); event.preventDefault(); }); diff --git a/wp-admin/js/customize-controls.min.js b/wp-admin/js/customize-controls.min.js index 82050c46..3a7de3d9 100644 --- a/wp-admin/js/customize-controls.min.js +++ b/wp-admin/js/customize-controls.min.js @@ -1 +1 @@ -(function(a,c){var b=wp.customize;b.Setting=b.Value.extend({initialize:function(g,f,d){var e;b.Value.prototype.initialize.call(this,f,d);this.id=g;this.transport=this.transport||"refresh";this.bind(this.preview)},preview:function(){switch(this.transport){case"refresh":return this.previewer.refresh();case"postMessage":return this.previewer.send("setting",[this.id,this()])}}});b.Control=b.Class.extend({initialize:function(i,e){var g=this,d,h,f;this.params={};c.extend(this,e||{});this.id=i;this.selector="#customize-control-"+i.replace("]","").replace("[","-");this.container=c(this.selector);f=c.map(this.params.settings,function(j){return j});b.apply(b,f.concat(function(){var j;g.settings={};for(j in g.params.settings){g.settings[j]=b(g.params.settings[j])}g.setting=g.settings["default"]||null;g.ready()}));g.elements=[];d=this.container.find("[data-customize-setting-link]");h={};d.each(function(){var k=c(this),j;if(k.is(":radio")){j=k.prop("name");if(h[j]){return}h[j]=true;k=d.filter('[name="'+j+'"]')}b(k.data("customizeSettingLink"),function(m){var l=new b.Element(k);g.elements.push(l);l.sync(m);l.set(m())})})},ready:function(){},dropdownInit:function(){var f=this,e=this.container.find(".dropdown-status"),g=this.params,h=function(i){if(typeof i==="string"&&g.statuses&&g.statuses[i]){e.html(g.statuses[i]).show()}else{e.hide()}};var d=false;this.container.on("click keydown",".dropdown",function(i){if(i.type==="keydown"&&13!==i.which){return}i.preventDefault();if(!d){f.container.toggleClass("open")}if(f.container.hasClass("open")){f.container.parent().parent().find("li.library-selected").focus()}d=true;setTimeout(function(){d=false},400)});this.setting.bind(h);h(this.setting())}});b.ColorControl=b.Control.extend({ready:function(){var e=this,d=this.container.find(".color-picker-hex");d.val(e.setting()).wpColorPicker({change:function(g,f){e.setting.set(d.wpColorPicker("color"))},clear:function(){e.setting.set(false)}})}});b.UploadControl=b.Control.extend({ready:function(){var d=this;this.params.removed=this.params.removed||"";this.success=c.proxy(this.success,this);this.uploader=c.extend({container:this.container,browser:this.container.find(".upload"),dropzone:this.container.find(".upload-dropzone"),success:this.success,plupload:{},params:{}},this.uploader||{});if(d.params.extensions){d.uploader.plupload.filters=[{title:b.l10n.allowedFiles,extensions:d.params.extensions}]}if(d.params.context){d.uploader.params["post_data[context]"]=this.params.context}if(b.settings.theme.stylesheet){d.uploader.params["post_data[theme]"]=b.settings.theme.stylesheet}this.uploader=new wp.Uploader(this.uploader);this.remover=this.container.find(".remove");this.remover.on("click keydown",function(e){if(e.type==="keydown"&&13!==e.which){return}d.setting.set(d.params.removed);e.preventDefault()});this.removerVisibility=c.proxy(this.removerVisibility,this);this.setting.bind(this.removerVisibility);this.removerVisibility(this.setting.get())},success:function(d){this.setting.set(d.get("url"))},removerVisibility:function(d){this.remover.toggle(d!=this.params.removed)}});b.ImageControl=b.UploadControl.extend({ready:function(){var e=this,d;this.uploader={init:function(f){var h,g;if(this.supports.dragdrop){return}h=e.container.find(".upload-fallback");g=h.children().detach();this.browser.detach().empty().append(g);h.append(this.browser).show()}};b.UploadControl.prototype.ready.call(this);this.thumbnail=this.container.find(".preview-thumbnail img");this.thumbnailSrc=c.proxy(this.thumbnailSrc,this);this.setting.bind(this.thumbnailSrc);this.library=this.container.find(".library");this.tabs={};d=this.library.find(".library-content");this.library.children("ul").children("li").each(function(){var g=c(this),h=g.data("customizeTab"),f=d.filter('[data-customize-tab="'+h+'"]');e.tabs[h]={both:g.add(f),link:g,panel:f}});this.library.children("ul").on("click keydown","li",function(g){if(g.type==="keydown"&&13!==g.which){return}var h=c(this).data("customizeTab"),f=e.tabs[h];g.preventDefault();if(f.link.hasClass("library-selected")){return}e.selected.both.removeClass("library-selected");e.selected=f;e.selected.both.addClass("library-selected")});this.library.on("click keydown","a",function(f){if(f.type==="keydown"&&13!==f.which){return}var g=c(this).data("customizeImageValue");if(g){e.setting.set(g);f.preventDefault()}});if(this.tabs.uploaded){this.tabs.uploaded.target=this.library.find(".uploaded-target");if(!this.tabs.uploaded.panel.find(".thumbnail").length){this.tabs.uploaded.both.addClass("hidden")}}d.each(function(){var f=e.tabs[c(this).data("customizeTab")];if(!f.link.hasClass("hidden")){e.selected=f;f.both.addClass("library-selected");return false}});this.dropdownInit()},success:function(d){b.UploadControl.prototype.success.call(this,d);if(this.tabs.uploaded&&this.tabs.uploaded.target.length){this.tabs.uploaded.both.removeClass("hidden");d.element=c('').data("customizeImageValue",d.get("url")).append('').appendTo(this.tabs.uploaded.target)}},thumbnailSrc:function(d){if(/^(https?:)?\/\//.test(d)){this.thumbnail.prop("src",d).show()}else{this.thumbnail.hide()}}});b.defaultConstructor=b.Setting;b.control=new b.Values({defaultConstructor:b.Control});b.PreviewFrame=b.Messenger.extend({sensitivity:2000,initialize:function(g,f){var e=c.Deferred(),d=this;e.promise(this);this.container=g.container;this.signature=g.signature;c.extend(g,{channel:b.PreviewFrame.uuid()});b.Messenger.prototype.initialize.call(this,g,f);this.add("previewUrl",g.previewUrl);this.query=c.extend(g.query||{},{customize_messenger_channel:this.channel()});this.run(e)},run:function(e){var d=this,f=false,g=false;if(this._ready){this.unbind("ready",this._ready)}this._ready=function(){g=true;if(f){e.resolveWith(d)}};this.bind("ready",this._ready);this.request=c.ajax(this.previewUrl(),{type:"POST",data:this.query,xhrFields:{withCredentials:true}});this.request.fail(function(){e.rejectWith(d,["request failure"])});this.request.done(function(j){var i=d.request.getResponseHeader("Location"),h=d.signature,k;if(i&&i!=d.previewUrl()){e.rejectWith(d,["redirect",i]);return}if("0"===j){d.login(e);return}if("-1"===j){e.rejectWith(d,["cheatin"]);return}k=j.lastIndexOf(h);if(-1===k||k")){e.rejectWith(d,["unsigned"]);return}j=j.slice(0,k)+j.slice(k+h.length);d.iframe=c("