<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" /><style type="text/css"><!--
#msg dl { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre, #msg p { overflow: auto; background: #ffc; border: 1px #fc0 solid; padding: 6px; }
#msg ul { overflow: auto; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<title>[11965] trunk: Image Editor improvements, see #10528</title>
</head>
<body>

<div id="msg">
<dl>
<dt>Revision</dt> <dd><a href="http://trac.wordpress.org/changeset/11965">11965</a></dd>
<dt>Author</dt> <dd>azaozz</dd>
<dt>Date</dt> <dd>2009-09-24 01:54:07 +0000 (Thu, 24 Sep 2009)</dd>
</dl>

<h3>Log Message</h3>
<pre>Image Editor improvements, see <a href="http://trac.wordpress.org/ticket/10528">#10528</a></pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkwpadminadminajaxphp">trunk/wp-admin/admin-ajax.php</a></li>
<li><a href="#trunkwpadmincsscolorsclassiccss">trunk/wp-admin/css/colors-classic.css</a></li>
<li><a href="#trunkwpadmincsscolorsclassicdevcss">trunk/wp-admin/css/colors-classic.dev.css</a></li>
<li><a href="#trunkwpadmincsscolorsfreshcss">trunk/wp-admin/css/colors-fresh.css</a></li>
<li><a href="#trunkwpadmincsscolorsfreshdevcss">trunk/wp-admin/css/colors-fresh.dev.css</a></li>
<li><a href="#trunkwpadmincssmediacss">trunk/wp-admin/css/media.css</a></li>
<li><a href="#trunkwpadmincssmediadevcss">trunk/wp-admin/css/media.dev.css</a></li>
<li><a href="#trunkwpadminincludesimageeditphp">trunk/wp-admin/includes/image-edit.php</a></li>
<li><a href="#trunkwpadminincludesmediaphp">trunk/wp-admin/includes/media.php</a></li>
<li><a href="#trunkwpadminjsimageeditdevjs">trunk/wp-admin/js/image-edit.dev.js</a></li>
<li><a href="#trunkwpadminjsimageeditjs">trunk/wp-admin/js/image-edit.js</a></li>
<li><a href="#trunkwpadminwpadmindevcss">trunk/wp-admin/wp-admin.dev.css</a></li>
<li><a href="#trunkwpincludespostphp">trunk/wp-includes/post.php</a></li>
<li><a href="#trunkwpincludesscriptloaderphp">trunk/wp-includes/script-loader.php</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkwpadminadminajaxphp"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/admin-ajax.php (11964 => 11965)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/admin-ajax.php        2009-09-23 22:03:39 UTC (rev 11964)
+++ trunk/wp-admin/admin-ajax.php        2009-09-24 01:54:07 UTC (rev 11965)
</span><span class="lines">@@ -111,7 +111,7 @@
</span><span class="cx"> 
</span><span class="cx">         die('0');
</span><span class="cx">         break;
</span><del>-case 'load-preview-image' :
</del><ins>+case 'imgedit-preview' :
</ins><span class="cx">         $post_id = intval($_GET['postid']);
</span><span class="cx">         if ( empty($post_id) || !current_user_can('edit_post', $post_id) )
</span><span class="cx">                 die('-1');
</span><span class="lines">@@ -1348,29 +1348,30 @@
</span><span class="cx"> 
</span><span class="cx">         die();
</span><span class="cx">         break;
</span><del>-case 'image-edit-save':
-        // $post_id is the attachment ID
-        $post_id = intval($_POST['postid']);
-        if ( empty($post_id) || !current_user_can('edit_post', $post_id) )
</del><ins>+case 'image-editor':
+        $attachment_id = intval($_POST['postid']);
+        if ( empty($attachment_id) || !current_user_can('edit_post', $attachment_id) )
</ins><span class="cx">                 die('-1');
</span><span class="cx"> 
</span><del>-        check_ajax_referer( &quot;image_editor-$post_id&quot; );
-
</del><ins>+        check_ajax_referer( &quot;image_editor-$attachment_id&quot; );
</ins><span class="cx">         include_once( ABSPATH . 'wp-admin/includes/image-edit.php' );
</span><del>-        $msg = wp_save_image($post_id);
</del><span class="cx"> 
</span><del>-        die($msg);
-        break;
-case 'open-image-editor' :
-        $post_id = intval($_POST['postid']);
-        if ( empty($post_id) || !current_user_can('edit_post', $post_id) )
-                die('-1');
</del><ins>+        $msg = false;
+        switch ( $_POST['do'] ) {
+                case 'save' :
+                        $msg = wp_save_image($attachment_id);
+                        $msg = json_encode($msg);
+                        die($msg);
+                        break;
+                case 'scale' :
+                        $msg = wp_save_image($attachment_id);
+                        break;
+                case 'restore' :
+                        $msg = wp_restore_image($attachment_id);
+                        break;
+        }
</ins><span class="cx"> 
</span><del>-        check_ajax_referer( &quot;image_editor-$post_id&quot; );
-
-        include_once( ABSPATH . 'wp-admin/includes/image-edit.php' );
-        wp_image_editor($post_id);
-
</del><ins>+        wp_image_editor($attachment_id, $msg);
</ins><span class="cx">         die();
</span><span class="cx">         break;
</span><span class="cx"> default :
</span></span></pre></div>
<a id="trunkwpadmincsscolorsclassiccss"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/css/colors-classic.css (11964 => 11965)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/css/colors-classic.css        2009-09-23 22:03:39 UTC (rev 11964)
+++ trunk/wp-admin/css/colors-classic.css        2009-09-24 01:54:07 UTC (rev 11965)
</span><span class="lines">@@ -1 +1 @@
</span><del>-html{background-color:#f7f6f1;}* html input,* html .widget{border-color:#8cbdd5;}textarea,input,select{border-color:#dfdfdf;}kbd,code{background:#eaeaea;}input[readonly]{background-color:#eee;}.find-box-search{border-color:#dfdfdf;background-color:#f1f1f1;}.find-box{background-color:#f1f1f1;}.find-box-inside{background-color:#fff;}a.page-numbers:hover{border-color:#999;}body,#wpbody,.form-table .pre{color:#333;}body&gt;#upload-menu{border-bottom-color:#fff;}#postcustomstuff table,#your-profile fieldset,#rightnow,div.dashboard-widget,#dashboard-widgets p.dashboard-widget-links,#replyrow #ed_reply_toolbar input{border-color:#ccc;}#poststuff .inside label.spam,#poststuff .inside label.deleted{color:red;}#poststuff .inside label.waiting{color:orange;}#poststuff .inside label.approved{color:green;}#postcustomstuff table{border-color:#dfdfdf;background-color:#f9f9f9;}#postcustomstuff thead th{background-color:#f1f1f1;}#postcustomstuff table input,#postcustomstuff table textarea{border-color:#dfdfdf;background-color:#fff;}.widefat{border-color:#dfdfdf;background-color:#fff;}div.dashboard-widget-error{background-color:#c43;}div.dashboard-widget-notice{background-color:#cfe1ef;}div.dashboard-widget-submit{border-top-color:#ccc;}div.tabs-panel,ul#category-tabs li.tabs{border-color:#dfdfdf;}ul#category-tabs li.tabs{background-color:#f1f1f1;}input.disabled,textarea.disabled{background-color:#ccc;}.login #backtoblog a:hover,#plugin-information .action-button a,#plugin-information .action-button a:hover,#plugin-information .action-button a:visited{color:#fff;}.widget .widget-top,.postbox h3,.stuffbox h3{background:#d5e6f2 url(&quot;../images/blue-grad.png&quot;) repeat-x left top;text-shadow:#fff 0 1px 0;}.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:#093e56;}.ac_over{background-color:#f0f0b8;}.ac_results{background-color:#fff;border-color:#808080;}.ac_results li{color:#101010;}.alt .alternate{background-color:#edfbfc;}.available-theme a.screenshot{background-color:#f1f1f1;border-color:#ddd;}.bar{background-color:#e8e8e8;border-right-color:#99d;}#media-upload{background:#fff;}#media-upload .slidetoggle{border-top-color:#dfdfdf;}.error,.login #login_error{background-color:#ffebe8;border-color:#c00;}.error a{color:#c00;}.form-invalid{background-color:#ffebe8!important;}.form-invalid input{border-color:#c00!important;}.submit{border-color:#8cbdd5;}.highlight{background-color:#e4f2fd;color:#d54e21;}.howto,.nonessential,#edit-slug-box,.form-input-tip,.rss-widget span.rss-date,.subsubsub{color:#666;}.media-item{border-bottom-color:#dfdfdf;}#wpbody-content #media-items .describe{border-top-color:#dfdfdf;}.describe input[type=&quot;text&quot;],.describe textarea{border-color:#dfdfdf;}.media-upload-form label.form-help,td.help{color:#9a9a9a;}.post-com-count{background-image:url(../images/bubble_bg.gif);color:#fff;}.post-com-count span{background-color:#bbb;color:#fff;}.post-com-count:hover span{background-color:#d54e21;}.quicktags,.search{background-color:#ccc;color:#000;}.side-info h5{border-bottom-color:#dadada;}.side-info ul{color:#666;}.button,.button-secondary,.submit input,input[type=button],input[type=submit]{border-color:#dfdfdf;color:#464646;}.button:hover,.button-secondary:hover,.submit input:hover,input[type=button]:hover,input[type=submit]:hover{color:#000;border-color:#adaca7;}.button,.submit input,.button-secondary{background:#f2f2f2 url(../images/white-grad.png) repeat-x scroll left top;text-shadow:rgba(255,255,255,1) 0 1px 0;}.button:active,.submit input:active,.button-secondary:active{background:#eee url(../images/white-grad-active.png) repeat-x scroll left top;}input.button-primary,button.button-primary,a.button-primary{border-color:#5b86ab;font-weight:bold;color:#fff;background:#5580a6 url(../images/button-grad-vs.png) repeat-x scroll left top;text-shadow:rgba(0,0,0,0.3) 0 -1px 0;}input.button-primary:active,button.button-primary:active,a.button-primary:active{background:#21759b url(../images/button-grad-active-vs.png) repeat-x scroll left top;color:#eaf2fa;}input.button-primary:hover,button.button-primary:hover,a.button-primary:hover,a.button-primary:focus,a.button-primary:active{border-color:#2e5475;color:#eaf2fa;}.button-disabled,.button[disabled],.button:disabled,.button-secondary[disabled],.button-secondary:disabled,a.button.disabled{color:#aaa!important;border-color:#ddd!important;}.button-primary-disabled,.button-primary[disabled],.button-primary:disabled{color:#B0C3E2!important;background:#6590A6!important;}a:hover,a:active,a:focus{color:#d54e21;}#wphead #viewsite a:hover,#adminmenu a:hover,#adminmenu ul.wp-submenu a:hover,#the-comment-list .comment a:hover,#rightnow a:hover,#media-upload a.del-link:hover,div.dashboard-widget-submit input:hover,.subsubsub a:hover,.subsubsub a.current:hover,.ui-tabs-nav a:hover,.plugins .inactive a:hover,#all-plugins-table .plugins .inactive a:hover,#search-plugins-table .plugins .inactive a:hover{color:#d54e21;}#the-comment-list .comment-item,#dashboard-widgets #dashboard_quick_press form p.submit{border-color:#dfdfdf;}#dashboard_right_now .table{background:#faf9f7!important;}#side-sortables #category-tabs .tabs a{color:#333;}#rightnow .rbutton{background-color:#ebebeb;color:#264761;}.submitbox .submit{background-color:#464646;color:#ccc;}.plugins a.delete:hover,#all-plugins-table .plugins a.delete:hover,#search-plugins-table .plugins a.delete:hover,.submitbox .submitdelete,a.delete{color:#f00;border-bottom-color:#f00;}.submitbox .submitdelete:hover,#media-items a.delete:hover{color:#fff;background-color:#f00;border-bottom-color:#f00;}#normal-sortables .submitbox .submitdelete:hover{color:#000;background-color:#f00;border-bottom-color:#f00;}.tablenav .dots{border-color:transparent;}.tablenav .next,.tablenav .prev{border-color:transparent;color:#21759b;}.tablenav .next:hover,.tablenav .prev:hover{border-color:transparent;color:#d54e21;}.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,#install-plugins .plugins td,#install-plugins .plugins th{border-color:#dfdfdf;}.widefat th{text-shadow:rgba(255,255,255,0.8) 0 1px 0;}.widefat thead tr th,.widefat tfoot tr th,h3.dashboard-widget-title,h3.dashboard-widget-title span,h3.dashboard-widget-title small,.find-box-head{color:#333;background:#d5e6f2 url(../images/blue-grad.png) repeat-x scroll left top;}h3.dashboard-widget-title small a{color:#d7d7d7;}h3.dashboard-widget-title small a:hover{color:#fff;}a,#adminmenu a,#poststuff #edButtonPreview,#poststuff #edButtonHTML,#the-comment-list p.comment-author strong a,#media-upload a.del-link,#media-items a.delete,.plugins a.delete,.ui-tabs-nav a{color:#1c6280;}body.press-this .tabs a,body.press-this .tabs a:hover{background-color:#fff;border-color:#c6d9e9;border-bottom-color:#fff;color:#d54e21;}#adminmenu #awaiting-mod,#adminmenu .update-plugins,#sidemenu a .update-plugins,#rightnow .reallynow,#plugin-information .action-button{background-color:#d54e21;color:#fff;}#adminmenu li a:hover #awaiting-mod,#adminmenu li a:hover .update-plugins,#sidemenu li a:hover .update-plugins{background-color:#264761;color:#fff;}#adminmenu li.current a #awaiting-mod,#adminmenu li.current a .update-plugins,#adminmenu li.wp-has-current-submenu a .update-plugins,#adminmenu li.wp-has-current-submenu a .update-plugins{background-color:#ddd;color:#000;text-shadow:none;-moz-box-shadow:rgba(0,0,0,0.2) 0 -1px 0;-khtml-box-shadow:rgba(0,0,0,0.2) 0 -1px 0;-webkit-box-shadow:rgba(0,0,0,0.2) 0 -1px 0;box-shadow:rgba(0,0,0,0.2) 0 -1px 0;}#adminmenu li.current a:hover #awaiting-mod,#adminmenu li.current a:hover .update-plugins,#adminmenu li.wp-has-current-submenu a:hover #awaiting-mod,#adminmenu li.wp-has-current-submenu a:hover .update-plugins{background-color:#264761;color:#fff;}div#media-upload-header,div#plugin-information-header{background-color:#f9f9f9;border-bottom-color:#dfdfdf;}#currenttheme img{border-color:#666;}#dashboard_secondary div.dashboard-widget-content ul li a{background-color:#f9f9f9;}input.readonly,textarea.readonly{background-color:#ddd;}#ed_toolbar input,#ed_reply_toolbar input{background:#fff url(&quot;../images/fade-butt.png&quot;) repeat-x 0 -2px;}#editable-post-name{background-color:#fffbcc;}#edit-slug-box strong,.tablenav .displaying-num,#submitted-on{color:#777;}.login #nav a{color:#21759b!important;}.login #nav a:hover{color:#d54e21!important;}#footer,#footer-upgrade{background:#1d507d;color:#b6d1e4;}#media-items{border-color:#dfdfdf;}.checkbox,.side-info,.plugins tr,.postbox,#your-profile #rich_editing{background-color:#fff;}.plugins .inactive,.plugins .inactive th,.plugins .inactive td,tr.inactive+tr.plugin-update-tr .plugin-update{background-color:#ebeeef;}.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 .unapproved,#the-comment-list .unapproved th,#the-comment-list .unapproved td{background-color:#ffffe0;}#the-comment-list .approve a{color:#006505;}#the-comment-list .unapprove a{color:#d98500;}#the-comment-list .delete a{color:#bc0b0b;}.widget,#widget-list .widget-top,.postbox,#titlediv,#poststuff .postarea,.stuffbox{border-color:#dfdfdf;}.widget,.postbox{background-color:#fff;}.ui-sortable .postbox h3{color:#093e56;}.widget .widget-top,.ui-sortable .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{background-color:#fffeeb;border-color:#ccc;color:#555;}.login #backtoblog a{color:#ccc;}#wphead{background-color:#1d507d;}body.login{border-top-color:#093e56;}#wphead h1 a{color:#fff;}#user_info{color:#b6d1e4;}#user_info a:link,#user_info a:visited,#footer a:link,#footer a:visited{color:#fff;text-decoration:none;}#user_info a:hover,#user_info a:active,#footer a:hover,#footer a:active{text-decoration:underline;}div#media-upload-error,.file-error,abbr.required,.widget-control-remove:hover,.delete a:hover{color:#f00;}#pass-strength-result{background-color:#eee;border-color:#ddd!important;}#pass-strength-result.bad{background-color:#ffb78c;border-color:#ff853c!important;}#pass-strength-result.good{background-color:#ffec8b;border-color:#fc0!important;}#pass-strength-result.short{background-color:#ffa0a0;border-color:#f04040!important;}#pass-strength-result.strong{background-color:#c3ff88;border-color:#8dff1c!important;}#quicktags{border-color:#dfdfdf;background-color:#dfdfdf;}#ed_toolbar input{border-color:#c3c3c3;}#ed_toolbar input:hover{border-color:#aaa;background:#ddd;}#poststuff .wp_themeSkin .mceStatusbar{border-color:#ededed;}#poststuff #edButtonPreview,#poststuff #edButtonHTML{background-color:#f2f1eb;border-color:#dfdfdf;color:#999;}#poststuff #editor-toolbar .active{border-bottom-color:#e3eef7;background-color:#e3eef7;color:#333;}#post-status-info{background-color:#ededed;}.wp_themeSkin *,.wp_themeSkin a:hover,.wp_themeSkin a:link,.wp_themeSkin a:visited,.wp_themeSkin a:active{color:#000;}.wp_themeSkin iframe{background:#fff;}.wp_themeSkin .mceStatusbar{color:#000;background-color:#f5f5f5;}.wp_themeSkin .mceButton{background-color:#e9e8e8;border-color:#b2b2b2;}.wp_themeSkin a.mceButtonEnabled:hover,.wp_themeSkin a.mceButtonActive,.wp_themeSkin a.mceButtonSelected{background-color:#d5d5d5;border-color:#777!important;}.wp_themeSkin .mceButtonDisabled{border-color:#ccc!important;}.wp_themeSkin .mceListBox .mceText,.wp_themeSkin .mceListBox .mceOpen{border-color:#b2b2b2;background-color:#d5d5d5;}.wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,.wp_themeSkin .mceListBoxHover .mceOpen,.wp_themeSkin .mceListBoxSelected .mceOpen,.wp_themeSkin .mceListBoxSelected .mceText{border-color:#777!important;background-color:#d5d5d5;}.wp_themeSkin table.mceListBoxEnabled:hover .mceText,.wp_themeSkin .mceListBoxHover .mceText{border-color:#777!important;}.wp_themeSkin select.mceListBox{border-color:#b2b2b2;background-color:#fff;}.wp_themeSkin .mceSplitButton a.mceAction,.wp_themeSkin .mceSplitButton a.mceOpen{border-color:#b2b2b2;}.wp_themeSkin .mceSplitButton a.mceOpen:hover,.wp_themeSkin .mceSplitButtonSelected a.mceOpen,.wp_themeSkin table.mceSplitButtonEnabled:hover a.mceAction,.wp_themeSkin .mceSplitButton a.mceAction:hover{background-color:#d5d5d5;border-color:#777!important;}.wp_themeSkin .mceSplitButtonActive{background-color:#b2b2b2;}.wp_themeSkin div.mceColorSplitMenu table{background-color:#ebebeb;border-color:#b2b2b2;}.wp_themeSkin .mceColorSplitMenu a{border-color:#b2b2b2;}.wp_themeSkin .mceColorSplitMenu a.mceMoreColors{border-color:#fff;}.wp_themeSkin .mceColorSplitMenu a.mceMoreColors:hover{border-color:#0a246a;background-color:#b6bdd2;}.wp_themeSkin a.mceMoreColors:hover{border-color:#0a246a;}.wp_themeSkin .mceMenu{border-color:#ddd;}.wp_themeSkin .mceMenu table{background-color:#ebeaeb;}.wp_themeSkin .mceMenu .mceText{color:#000;}.wp_themeSkin .mceMenu .mceMenuItemEnabled a:hover,.wp_themeSkin .mceMenu .mceMenuItemActive{background-color:#f5f5f5;}.wp_themeSkin td.mceMenuItemSeparator{background-color:#aaa;}.wp_themeSkin .mceMenuItemTitle a{background-color:#ccc;border-bottom-color:#aaa;}.wp_themeSkin .mceMenuItemTitle span.mceText{color:#000;}.wp_themeSkin .mceMenuItemDisabled .mceText{color:#888;}#quicktags,.wp_themeSkin tr.mceFirst td.mceToolbar{background:#e3eef7 url(&quot;../images/ed-bg-vs.gif&quot;) repeat-x scroll left top;}.wp_themeSkin tr.mceFirst td.mceToolbar{border-color:#dfdfdf;}.wp-admin #mceModalBlocker{background:#000;}.wp-admin .clearlooks2 .mceFocus .mceTop .mceLeft{background:#444;border-left:1px solid #999;border-top:1px solid #999;-moz-border-radius:4px 0 0 0;-webkit-border-top-left-radius:4px;-khtml-border-top-left-radius:4px;border-top-left-radius:4px;}.wp-admin .clearlooks2 .mceFocus .mceTop .mceRight{background:#444;border-right:1px solid #999;border-top:1px solid #999;border-top-right-radius:4px;-khtml-border-top-right-radius:4px;-webkit-border-top-right-radius:4px;-moz-border-radius:0 4px 0 0;}.wp-admin .clearlooks2 .mceMiddle .mceLeft{background:#f1f1f1;border-left:1px solid #999;}.wp-admin .clearlooks2 .mceMiddle .mceRight{background:#f1f1f1;border-right:1px solid #999;}.wp-admin .clearlooks2 .mceBottom{background:#f1f1f1;border-bottom:1px solid #999;}.wp-admin .clearlooks2 .mceBottom .mceLeft{background:#f1f1f1;border-bottom:1px solid #999;border-left:1px solid #999;}.wp-admin .clearlooks2 .mceBottom .mceCenter{background:#f1f1f1;border-bottom:1px solid #999;}.wp-admin .clearlooks2 .mceBottom .mceRight{background:#f1f1f1;border-bottom:1px solid #999;border-right:1px solid #999;}.wp-admin .clearlooks2 .mceFocus .mceTop span{color:#e5e5e5;}#editorcontainer,#post-status-info,#titlediv #title,.editwidget .widget-inside{border-color:#dfdfdf;}#titlediv #title{background-color:#fff;}#tTips p#tTips_inside{background-color:#ddd;color:#333;}#timestampdiv input,#namediv input,#poststuff .inside .the-tagcloud{border-color:#dfdfdf;}#adminmenu *{border-color:#dfdfdf;}#adminmenu li.wp-menu-separator{background:transparent url(../images/menu-arrows.gif) no-repeat scroll left 5px;}.folded #adminmenu li.wp-menu-separator{background:transparent url(../images/menu-arrows.gif) no-repeat scroll right -34px;}#adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,#adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle{background:transparent url(../images/menu-bits-vs.gif) no-repeat scroll left -207px;}#adminmenu .wp-has-submenu:hover .wp-menu-toggle,#adminmenu .wp-menu-open .wp-menu-toggle{background:transparent url(../images/menu-bits-vs.gif) no-repeat scroll left -109px;}#adminmenu a.menu-top{background:#eaf3fa url(../images/menu-bits-vs.gif) repeat-x scroll left -379px;}#adminmenu .wp-submenu a{background:#fff url(../images/menu-bits-vs.gif) no-repeat scroll 0 -310px;}#adminmenu .wp-has-current-submenu ul li a{background:none;}#adminmenu .wp-has-current-submenu ul li a.current{background:url(../images/menu-dark.gif) top left no-repeat!important;}#adminmenu li.wp-has-current-submenu a.wp-has-current-submenu,#adminmenu .menu-top .current{background:#3c6b95 url(../images/menu-bits-vs.gif) top left repeat-x;border-color:#1d507d;color:#fff;text-shadow:rgba(0,0,0,0.4) 0 -1px 0;}#adminmenu li.wp-has-current-submenu .wp-submenu,#adminmenu li.wp-has-current-submenu ul li a{border-color:#aaa!important;}#adminmenu li.wp-has-current-submenu ul li a{background:url(../images/menu-dark.gif) bottom left no-repeat!important;}#adminmenu li.wp-has-current-submenu ul{border-bottom-color:#aaa;}#adminmenu li.menu-top .current:hover{border-color:#6583c0;}#adminmenu .wp-submenu .current a.current{background:transparent url(../images/menu-bits-vs.gif) no-repeat scroll 0 -289px;}#adminmenu .wp-submenu a:hover{background-color:#eaf2fa!important;color:#333!important;}#adminmenu .wp-submenu li.current,#adminmenu .wp-submenu li.current a,#adminmenu .wp-submenu li.current a:hover{color:#333;background-color:#f5f5f5;background-image:none;border-color:#e3e3e3;text-shadow:rgba(255,255,255,1) 0 1px 0;}#adminmenu .wp-submenu ul{background-color:#fff;}.folded #adminmenu li.menu-top,#adminmenu .wp-submenu .wp-submenu-head{background-color:#eaf2fa;}.folded #adminmenu li.wp-has-current-submenu,.folded #adminmenu li.menu-top.current{background-color:#bbd8e7;}#adminmenu .wp-has-current-submenu .wp-submenu .wp-submenu-head{background-color:#bbd8e7;border-color:#8cbdd5;}#adminmenu div.wp-submenu{background-color:transparent;}#adminmenu #menu-dashboard div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -61px -33px;}#adminmenu #menu-dashboard:hover div.wp-menu-image,#adminmenu #menu-dashboard.wp-has-current-submenu div.wp-menu-image,#adminmenu #menu-dashboard.current div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -61px -1px;}#adminmenu #menu-posts div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -272px -33px;}#adminmenu #menu-posts:hover div.wp-menu-image,#adminmenu #menu-posts.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -272px -1px;}#adminmenu #menu-media div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -121px -33px;}#adminmenu #menu-media:hover div.wp-menu-image,#adminmenu #menu-media.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -121px -1px;}#adminmenu #menu-links div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -91px -33px;}#adminmenu #menu-links:hover div.wp-menu-image,#adminmenu #menu-links.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -91px -1px;}#adminmenu #menu-pages div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -151px -33px;}#adminmenu #menu-pages:hover div.wp-menu-image,#adminmenu #menu-pages.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -151px -1px;}#adminmenu #menu-comments div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -31px -33px;}#adminmenu #menu-comments:hover div.wp-menu-image,#adminmenu #menu-comments.wp-has-current-submenu div.wp-menu-image,#adminmenu #menu-comments.current div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -31px -1px;}#adminmenu #menu-appearance div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -1px -33px;}#adminmenu #menu-appearance:hover div.wp-menu-image,#adminmenu #menu-appearance.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -1px -1px;}#adminmenu #menu-plugins div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -181px -33px;}#adminmenu #menu-plugins:hover div.wp-menu-image,#adminmenu #menu-plugins.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -181px -1px;}#adminmenu #menu-users div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -301px -33px;}#adminmenu #menu-users:hover div.wp-menu-image,#adminmenu #menu-users.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -301px -1px;}#adminmenu #menu-tools div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -211px -33px;}#adminmenu #menu-tools:hover div.wp-menu-image,#adminmenu #menu-tools.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -211px -1px;}#adminmenu #menu-settings div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -241px -33px;}#adminmenu #menu-settings:hover div.wp-menu-image,#adminmenu #menu-settings.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -241px -1px;}table.diff .diff-deletedline{background-color:#fdd;}table.diff .diff-deletedline del{background-color:#f99;}table.diff .diff-addedline{background-color:#dfd;}table.diff .diff-addedline ins{background-color:#9f9;}#att-info{background-color:#e4f2fd;}#sidemenu a{background-color:#f9f9f9;border-color:#f9f9f9;border-bottom-color:#dfdfdf;}#sidemenu a.current{background-color:#fff;border-color:#dfdfdf #dfdfdf #fff;color:#d54e21;}#screen-options-wrap,#contextual-help-wrap{background-color:#eae9e4;border-color:#dfdfdf;}#screen-meta-links a.show-settings{color:#606060;}#screen-meta-links a.show-settings:hover{color:#000;}#replysubmit{background-color:#f1f1f1;border-top-color:#ddd;}#replyerror{border-color:#ddd;background-color:#f9f9f9;}#edithead,#replyhead{background-color:#f1f1f1;}#ed_reply_toolbar{background-color:#e9e9e9;}.vim-current,.vim-current th,.vim-current td{background-color:#e4f2fd!important;}.star-average,.star.star-rating{background-color:#fc0;}div.star.select:hover{background-color:#d00;}#plugin-information .fyi ul{background-color:#eaf3fa;}#plugin-information .fyi h2.mainheader{background-color:#cee1ef;}#plugin-information pre,#plugin-information code{background-color:#ededff;}#plugin-information pre{border:1px solid #ccc;}.inline-edit-row fieldset input[type=&quot;text&quot;],.inline-edit-row fieldset textarea,#bulk-titles,#replyrow input{border-color:#ddd;}.inline-editor div.title{background-color:#eaf3fa;}.inline-editor ul.cat-checklist{background-color:#fff;border-color:#ddd;}.inline-editor .categories .catshow,.inline-editor .categories .cathide{color:#21759b;}.inline-editor .quick-edit-save{background-color:#f1f1f1;}#replyrow #ed_reply_toolbar input:hover{border-color:#aaa;background:#ddd;}fieldset.inline-edit-col-right .inline-edit-col{border-color:#dfdfdf;}.attention{color:#d54e21;}.meta-box-sortables .postbox:hover .handlediv{background:transparent url(../images/menu-bits-vs.gif) no-repeat scroll left -111px;}#major-publishing-actions{background:#eaf2fa;}.tablenav .tablenav-pages{color:#555;}.tablenav .tablenav-pages a{border-color:#e3e3e3;background:#eee url('../images/menu-bits-vs.gif') repeat-x scroll left -379px;}.tablenav .tablenav-pages a:hover{color:#d54e21;border-color:#d54321;}.tablenav .tablenav-pages a:active{color:#fff!important;}.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-bottom-color:#eee;}#minor-publishing{border-bottom-color:#ddd;}#post-body .misc-pub-section{border-right-color:#eee;}.post-com-count span{background-color:#bbb;}.form-table .color-palette td{border-color:#fff;}.sortable-placeholder{border-color:#bbb;background-color:#f5f5f5;}#post-body ul#category-tabs li.tabs a{color:#333;}#wp_editimgbtn,#wp_delimgbtn,#wp_editgallery,#wp_delgallery{border-color:#999;background-color:#eee;}#wp_editimgbtn:hover,#wp_delimgbtn:hover,#wp_editgallery:hover,#wp_delgallery:hover{border-color:#555;background-color:#ccc;}#favorite-first{background:#5580a6 url(../images/fav-vs.png) repeat-x 0 center;border-color:#517ea5!important;border-bottom-color:#416686!important;}#favorite-actions .slide-down{background-image:url(../images/fav-top-vs.gif);background-position:0 0;background-repeat:repeat-x;}#favorite-inside{border-color:#5b86ac;background-color:#5580a6;}#favorite-toggle{background:transparent url(../images/fav-arrow-vs.gif) no-repeat 0 -4px;}#favorite-actions a{color:#ddd;}#favorite-actions a:hover{color:#fff;}#favorite-inside a:hover{text-decoration:underline;}#favorite-actions .slide-down{border-bottom-color:#626262;}#screen-meta a.show-settings{background-color:transparent;text-shadow:rgba(255,255,255,0.7) 0 1px 0;}#icon-edit,#icon-post{background:transparent url(../images/icons32-vs.png) no-repeat -552px -5px;}#icon-index{background:transparent url(../images/icons32-vs.png) no-repeat -137px -5px;}#icon-upload{background:transparent url(../images/icons32-vs.png) no-repeat -251px -5px;}#icon-link-manager,#icon-link,#icon-link-category{background:transparent url(../images/icons32-vs.png) no-repeat -190px -5px;}#icon-edit-pages,#icon-page{background:transparent url(../images/icons32-vs.png) no-repeat -312px -5px;}#icon-edit-comments{background:transparent url(../images/icons32-vs.png) no-repeat -72px -5px;}#icon-themes{background:transparent url(../images/icons32-vs.png) no-repeat -11px -5px;}#icon-plugins{background:transparent url(../images/icons32-vs.png) no-repeat -370px -5px;}#icon-users,#icon-profile,#icon-user-edit{background:transparent url(../images/icons32-vs.png) no-repeat -600px -5px;}#icon-tools,#icon-admin{background:transparent url(../images/icons32-vs.png) no-repeat -432px -5px;}#icon-options-general{background:transparent url(../images/icons32-vs.png) no-repeat -492px -5px;}.view-switch #view-switch-list{background:transparent url(../images/list-vs.png) no-repeat 0 0;}.view-switch #view-switch-list.current{background:transparent url(../images/list-vs.png) no-repeat -40px 0;}.view-switch #view-switch-excerpt{background:transparent url(../images/list-vs.png) no-repeat -20px 0;}.view-switch #view-switch-excerpt.current{background:transparent url(../images/list-vs.png) no-repeat -60px 0;}#header-logo{background:transparent url(../images/wp-logo-vs.gif) no-repeat scroll center center;}#wphead #site-visit-button{background-color:#3c6b95;background-image:url(../images/visit-site-button-grad-vs.gif);color:#b6d1e4;text-shadow:#3f3f3f 0 -1px 0;}#wphead a:hover #site-visit-button{color:#fff;}#wphead a:focus #site-visit-button,#wphead a:active #site-visit-button{background-position:0 -27px;}.popular-tags,.feature-filter{background-color:#fff;border-color:#dfdfdf;}#theme-information .action-button{border-top-color:#dfdfdf;}.theme-listing br.line{border-bottom-color:#ccc;}div.widgets-sortables,#widgets-left .inactive{background-color:#f1f1f1;border-color:#ddd;}#available-widgets .widget-holder{background-color:#fff;border-color:#ddd;}#widgets-left .sidebar-name{background-color:#aaa;background-image:url(../images/ed-bg-vs.gif);text-shadow:#FFF 0 1px 0;border-color:#dfdfdf;}#widgets-right .sidebar-name{background-image:url(../images/fav-vs.png);text-shadow:#3f3f3f 0 -1px 0;background-color:#636363;border-color:#636363;color:#fff;}.sidebar-name:hover,#removing-widget{color:#d54e21;}#removing-widget span{color:black;}#widgets-left .sidebar-name-arrow{background:transparent url(../images/menu-bits-vs.gif) no-repeat scroll left -109px;}#widgets-right .sidebar-name-arrow{background:transparent url(../images/fav-arrow-vs.gif) no-repeat scroll 0 -1px;}.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:#b1b1b1;background-color:#e3e3e3;}.imgedit-menu div.disabled{border-color:#b3b3b3;background-color:#cacaca;filter:alpha(opacity=40);opacity:.4;}
</del><span class="cx">\ No newline at end of file
</span><ins>+html{background-color:#f7f6f1;}* html input,* html .widget{border-color:#8cbdd5;}textarea,input,select{border-color:#dfdfdf;}kbd,code{background:#eaeaea;}input[readonly]{background-color:#eee;}.find-box-search{border-color:#dfdfdf;background-color:#f1f1f1;}.find-box{background-color:#f1f1f1;}.find-box-inside{background-color:#fff;}a.page-numbers:hover{border-color:#999;}body,#wpbody,.form-table .pre{color:#333;}body&gt;#upload-menu{border-bottom-color:#fff;}#postcustomstuff table,#your-profile fieldset,#rightnow,div.dashboard-widget,#dashboard-widgets p.dashboard-widget-links,#replyrow #ed_reply_toolbar input{border-color:#ccc;}#poststuff .inside label.spam,#poststuff .inside label.deleted{color:red;}#poststuff .inside label.waiting{color:orange;}#poststuff .inside label.approved{color:green;}#postcustomstuff table{border-color:#dfdfdf;background-color:#f9f9f9;}#postcustomstuff thead th{background-color:#f1f1f1;}#postcustomstuff table input,#postcustomstuff table textarea{border-color:#dfdfdf;background-color:#fff;}.widefat{border-color:#dfdfdf;background-color:#fff;}div.dashboard-widget-error{background-color:#c43;}div.dashboard-widget-notice{background-color:#cfe1ef;}div.dashboard-widget-submit{border-top-color:#ccc;}div.tabs-panel,ul#category-tabs li.tabs{border-color:#dfdfdf;}ul#category-tabs li.tabs{background-color:#f1f1f1;}input.disabled,textarea.disabled{background-color:#ccc;}.login #backtoblog a:hover,#plugin-information .action-button a,#plugin-information .action-button a:hover,#plugin-information .action-button a:visited{color:#fff;}.widget .widget-top,.postbox h3,.stuffbox h3{background:#d5e6f2 url(&quot;../images/blue-grad.png&quot;) repeat-x left top;text-shadow:#fff 0 1px 0;}.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:#093e56;}.ac_over{background-color:#f0f0b8;}.ac_results{background-color:#fff;border-color:#808080;}.ac_results li{color:#101010;}.alt .alternate{background-color:#edfbfc;}.available-theme a.screenshot{background-color:#f1f1f1;border-color:#ddd;}.bar{background-color:#e8e8e8;border-right-color:#99d;}#media-upload{background:#fff;}#media-upload .slidetoggle{border-top-color:#dfdfdf;}.error,.login #login_error{background-color:#ffebe8;border-color:#c00;}.error a{color:#c00;}.form-invalid{background-color:#ffebe8!important;}.form-invalid input{border-color:#c00!important;}.submit{border-color:#8cbdd5;}.highlight{background-color:#e4f2fd;color:#d54e21;}.howto,.nonessential,#edit-slug-box,.form-input-tip,.rss-widget span.rss-date,.subsubsub{color:#666;}.media-item{border-bottom-color:#dfdfdf;}#wpbody-content #media-items .describe{border-top-color:#dfdfdf;}.describe input[type=&quot;text&quot;],.describe textarea{border-color:#dfdfdf;}.media-upload-form label.form-help,td.help{color:#9a9a9a;}.post-com-count{background-image:url(../images/bubble_bg.gif);color:#fff;}.post-com-count span{background-color:#bbb;color:#fff;}.post-com-count:hover span{background-color:#d54e21;}.quicktags,.search{background-color:#ccc;color:#000;}.side-info h5{border-bottom-color:#dadada;}.side-info ul{color:#666;}.button,.button-secondary,.submit input,input[type=button],input[type=submit]{border-color:#dfdfdf;color:#464646;}.button:hover,.button-secondary:hover,.submit input:hover,input[type=button]:hover,input[type=submit]:hover{color:#000;border-color:#adaca7;}.button,.submit input,.button-secondary{background:#f2f2f2 url(../images/white-grad.png) repeat-x scroll left top;text-shadow:rgba(255,255,255,1) 0 1px 0;}.button:active,.submit input:active,.button-secondary:active{background:#eee url(../images/white-grad-active.png) repeat-x scroll left top;}input.button-primary,button.button-primary,a.button-primary{border-color:#5b86ab;font-weight:bold;color:#fff;background:#5580a6 url(../images/button-grad-vs.png) repeat-x scroll left top;text-shadow:rgba(0,0,0,0.3) 0 -1px 0;}input.button-primary:active,button.button-primary:active,a.button-primary:active{background:#21759b url(../images/button-grad-active-vs.png) repeat-x scroll left top;color:#eaf2fa;}input.button-primary:hover,button.button-primary:hover,a.button-primary:hover,a.button-primary:focus,a.button-primary:active{border-color:#2e5475;color:#eaf2fa;}.button-disabled,.button[disabled],.button:disabled,.button-secondary[disabled],.button-secondary:disabled,a.button.disabled{color:#aaa!important;border-color:#ddd!important;}.button-primary-disabled,.button-primary[disabled],.button-primary:disabled{color:#B0C3E2!important;background:#6590A6!important;}a:hover,a:active,a:focus{color:#d54e21;}#wphead #viewsite a:hover,#adminmenu a:hover,#adminmenu ul.wp-submenu a:hover,#the-comment-list .comment a:hover,#rightnow a:hover,#media-upload a.del-link:hover,div.dashboard-widget-submit input:hover,.subsubsub a:hover,.subsubsub a.current:hover,.ui-tabs-nav a:hover,.plugins .inactive a:hover,#all-plugins-table .plugins .inactive a:hover,#search-plugins-table .plugins .inactive a:hover{color:#d54e21;}#the-comment-list .comment-item,#dashboard-widgets #dashboard_quick_press form p.submit{border-color:#dfdfdf;}#dashboard_right_now .table{background:#faf9f7!important;}#side-sortables #category-tabs .tabs a{color:#333;}#rightnow .rbutton{background-color:#ebebeb;color:#264761;}.submitbox .submit{background-color:#464646;color:#ccc;}.plugins a.delete:hover,#all-plugins-table .plugins a.delete:hover,#search-plugins-table .plugins a.delete:hover,.submitbox .submitdelete,a.delete{color:#f00;border-bottom-color:#f00;}.submitbox .submitdelete:hover,#media-items a.delete:hover{color:#fff;background-color:#f00;border-bottom-color:#f00;}#normal-sortables .submitbox .submitdelete:hover{color:#000;background-color:#f00;border-bottom-color:#f00;}.tablenav .dots{border-color:transparent;}.tablenav .next,.tablenav .prev{border-color:transparent;color:#21759b;}.tablenav .next:hover,.tablenav .prev:hover{border-color:transparent;color:#d54e21;}.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,#install-plugins .plugins td,#install-plugins .plugins th{border-color:#dfdfdf;}.widefat th{text-shadow:rgba(255,255,255,0.8) 0 1px 0;}.widefat thead tr th,.widefat tfoot tr th,h3.dashboard-widget-title,h3.dashboard-widget-title span,h3.dashboard-widget-title small,.find-box-head{color:#333;background:#d5e6f2 url(../images/blue-grad.png) repeat-x scroll left top;}h3.dashboard-widget-title small a{color:#d7d7d7;}h3.dashboard-widget-title small a:hover{color:#fff;}a,#adminmenu a,#poststuff #edButtonPreview,#poststuff #edButtonHTML,#the-comment-list p.comment-author strong a,#media-upload a.del-link,#media-items a.delete,.plugins a.delete,.ui-tabs-nav a{color:#1c6280;}body.press-this .tabs a,body.press-this .tabs a:hover{background-color:#fff;border-color:#c6d9e9;border-bottom-color:#fff;color:#d54e21;}#adminmenu #awaiting-mod,#adminmenu .update-plugins,#sidemenu a .update-plugins,#rightnow .reallynow,#plugin-information .action-button{background-color:#d54e21;color:#fff;}#adminmenu li a:hover #awaiting-mod,#adminmenu li a:hover .update-plugins,#sidemenu li a:hover .update-plugins{background-color:#264761;color:#fff;}#adminmenu li.current a #awaiting-mod,#adminmenu li.current a .update-plugins,#adminmenu li.wp-has-current-submenu a .update-plugins,#adminmenu li.wp-has-current-submenu a .update-plugins{background-color:#ddd;color:#000;text-shadow:none;-moz-box-shadow:rgba(0,0,0,0.2) 0 -1px 0;-khtml-box-shadow:rgba(0,0,0,0.2) 0 -1px 0;-webkit-box-shadow:rgba(0,0,0,0.2) 0 -1px 0;box-shadow:rgba(0,0,0,0.2) 0 -1px 0;}#adminmenu li.current a:hover #awaiting-mod,#adminmenu li.current a:hover .update-plugins,#adminmenu li.wp-has-current-submenu a:hover #awaiting-mod,#adminmenu li.wp-has-current-submenu a:hover .update-plugins{background-color:#264761;color:#fff;}div#media-upload-header,div#plugin-information-header{background-color:#f9f9f9;border-bottom-color:#dfdfdf;}#currenttheme img{border-color:#666;}#dashboard_secondary div.dashboard-widget-content ul li a{background-color:#f9f9f9;}input.readonly,textarea.readonly{background-color:#ddd;}#ed_toolbar input,#ed_reply_toolbar input{background:#fff url(&quot;../images/fade-butt.png&quot;) repeat-x 0 -2px;}#editable-post-name{background-color:#fffbcc;}#edit-slug-box strong,.tablenav .displaying-num,#submitted-on{color:#777;}.login #nav a{color:#21759b!important;}.login #nav a:hover{color:#d54e21!important;}#footer,#footer-upgrade{background:#1d507d;color:#b6d1e4;}#media-items,.imgedit-group{border-color:#dfdfdf;}.checkbox,.side-info,.plugins tr,.postbox,#your-profile #rich_editing{background-color:#fff;}.plugins .inactive,.plugins .inactive th,.plugins .inactive td,tr.inactive+tr.plugin-update-tr .plugin-update{background-color:#ebeeef;}.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 .unapproved,#the-comment-list .unapproved th,#the-comment-list .unapproved td{background-color:#ffffe0;}#the-comment-list .approve a{color:#006505;}#the-comment-list .unapprove a{color:#d98500;}#the-comment-list .delete a{color:#bc0b0b;}.widget,#widget-list .widget-top,.postbox,#titlediv,#poststuff .postarea,.stuffbox{border-color:#dfdfdf;}.widget,.postbox{background-color:#fff;}.ui-sortable .postbox h3{color:#093e56;}.widget .widget-top,.ui-sortable .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{background-color:#fffeeb;border-color:#ccc;color:#555;}.login #backtoblog a{color:#ccc;}#wphead{background-color:#1d507d;}body.login{border-top-color:#093e56;}#wphead h1 a{color:#fff;}#user_info{color:#b6d1e4;}#user_info a:link,#user_info a:visited,#footer a:link,#footer a:visited{color:#fff;text-decoration:none;}#user_info a:hover,#user_info a:active,#footer a:hover,#footer a:active{text-decoration:underline;}div#media-upload-error,.file-error,abbr.required,.widget-control-remove:hover,.delete a:hover{color:#f00;}#pass-strength-result{background-color:#eee;border-color:#ddd!important;}#pass-strength-result.bad{background-color:#ffb78c;border-color:#ff853c!important;}#pass-strength-result.good{background-color:#ffec8b;border-color:#fc0!important;}#pass-strength-result.short{background-color:#ffa0a0;border-color:#f04040!important;}#pass-strength-result.strong{background-color:#c3ff88;border-color:#8dff1c!important;}#quicktags{border-color:#dfdfdf;background-color:#dfdfdf;}#ed_toolbar input{border-color:#c3c3c3;}#ed_toolbar input:hover{border-color:#aaa;background:#ddd;}#poststuff .wp_themeSkin .mceStatusbar{border-color:#ededed;}#poststuff #edButtonPreview,#poststuff #edButtonHTML{background-color:#f2f1eb;border-color:#dfdfdf;color:#999;}#poststuff #editor-toolbar .active{border-bottom-color:#e3eef7;background-color:#e3eef7;color:#333;}#post-status-info{background-color:#ededed;}.wp_themeSkin *,.wp_themeSkin a:hover,.wp_themeSkin a:link,.wp_themeSkin a:visited,.wp_themeSkin a:active{color:#000;}.wp_themeSkin iframe{background:#fff;}.wp_themeSkin .mceStatusbar{color:#000;background-color:#f5f5f5;}.wp_themeSkin .mceButton{background-color:#e9e8e8;border-color:#b2b2b2;}.wp_themeSkin a.mceButtonEnabled:hover,.wp_themeSkin a.mceButtonActive,.wp_themeSkin a.mceButtonSelected{background-color:#d5d5d5;border-color:#777!important;}.wp_themeSkin .mceButtonDisabled{border-color:#ccc!important;}.wp_themeSkin .mceListBox .mceText,.wp_themeSkin .mceListBox .mceOpen{border-color:#b2b2b2;background-color:#d5d5d5;}.wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,.wp_themeSkin .mceListBoxHover .mceOpen,.wp_themeSkin .mceListBoxSelected .mceOpen,.wp_themeSkin .mceListBoxSelected .mceText{border-color:#777!important;background-color:#d5d5d5;}.wp_themeSkin table.mceListBoxEnabled:hover .mceText,.wp_themeSkin .mceListBoxHover .mceText{border-color:#777!important;}.wp_themeSkin select.mceListBox{border-color:#b2b2b2;background-color:#fff;}.wp_themeSkin .mceSplitButton a.mceAction,.wp_themeSkin .mceSplitButton a.mceOpen{border-color:#b2b2b2;}.wp_themeSkin .mceSplitButton a.mceOpen:hover,.wp_themeSkin .mceSplitButtonSelected a.mceOpen,.wp_themeSkin table.mceSplitButtonEnabled:hover a.mceAction,.wp_themeSkin .mceSplitButton a.mceAction:hover{background-color:#d5d5d5;border-color:#777!important;}.wp_themeSkin .mceSplitButtonActive{background-color:#b2b2b2;}.wp_themeSkin div.mceColorSplitMenu table{background-color:#ebebeb;border-color:#b2b2b2;}.wp_themeSkin .mceColorSplitMenu a{border-color:#b2b2b2;}.wp_themeSkin .mceColorSplitMenu a.mceMoreColors{border-color:#fff;}.wp_themeSkin .mceColorSplitMenu a.mceMoreColors:hover{border-color:#0a246a;background-color:#b6bdd2;}.wp_themeSkin a.mceMoreColors:hover{border-color:#0a246a;}.wp_themeSkin .mceMenu{border-color:#ddd;}.wp_themeSkin .mceMenu table{background-color:#ebeaeb;}.wp_themeSkin .mceMenu .mceText{color:#000;}.wp_themeSkin .mceMenu .mceMenuItemEnabled a:hover,.wp_themeSkin .mceMenu .mceMenuItemActive{background-color:#f5f5f5;}.wp_themeSkin td.mceMenuItemSeparator{background-color:#aaa;}.wp_themeSkin .mceMenuItemTitle a{background-color:#ccc;border-bottom-color:#aaa;}.wp_themeSkin .mceMenuItemTitle span.mceText{color:#000;}.wp_themeSkin .mceMenuItemDisabled .mceText{color:#888;}#quicktags,.wp_themeSkin tr.mceFirst td.mceToolbar{background:#e3eef7 url(&quot;../images/ed-bg-vs.gif&quot;) repeat-x scroll left top;}.wp_themeSkin tr.mceFirst td.mceToolbar{border-color:#dfdfdf;}.wp-admin #mceModalBlocker{background:#000;}.wp-admin .clearlooks2 .mceFocus .mceTop .mceLeft{background:#444;border-left:1px solid #999;border-top:1px solid #999;-moz-border-radius:4px 0 0 0;-webkit-border-top-left-radius:4px;-khtml-border-top-left-radius:4px;border-top-left-radius:4px;}.wp-admin .clearlooks2 .mceFocus .mceTop .mceRight{background:#444;border-right:1px solid #999;border-top:1px solid #999;border-top-right-radius:4px;-khtml-border-top-right-radius:4px;-webkit-border-top-right-radius:4px;-moz-border-radius:0 4px 0 0;}.wp-admin .clearlooks2 .mceMiddle .mceLeft{background:#f1f1f1;border-left:1px solid #999;}.wp-admin .clearlooks2 .mceMiddle .mceRight{background:#f1f1f1;border-right:1px solid #999;}.wp-admin .clearlooks2 .mceBottom{background:#f1f1f1;border-bottom:1px solid #999;}.wp-admin .clearlooks2 .mceBottom .mceLeft{background:#f1f1f1;border-bottom:1px solid #999;border-left:1px solid #999;}.wp-admin .clearlooks2 .mceBottom .mceCenter{background:#f1f1f1;border-bottom:1px solid #999;}.wp-admin .clearlooks2 .mceBottom .mceRight{background:#f1f1f1;border-bottom:1px solid #999;border-right:1px solid #999;}.wp-admin .clearlooks2 .mceFocus .mceTop span{color:#e5e5e5;}#editorcontainer,#post-status-info,#titlediv #title,.editwidget .widget-inside{border-color:#dfdfdf;}#titlediv #title{background-color:#fff;}#tTips p#tTips_inside{background-color:#ddd;color:#333;}#timestampdiv input,#namediv input,#poststuff .inside .the-tagcloud{border-color:#dfdfdf;}#adminmenu *{border-color:#dfdfdf;}#adminmenu li.wp-menu-separator{background:transparent url(../images/menu-arrows.gif) no-repeat scroll left 5px;}.folded #adminmenu li.wp-menu-separator{background:transparent url(../images/menu-arrows.gif) no-repeat scroll right -34px;}#adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,#adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle{background:transparent url(../images/menu-bits-vs.gif) no-repeat scroll left -207px;}#adminmenu .wp-has-submenu:hover .wp-menu-toggle,#adminmenu .wp-menu-open .wp-menu-toggle{background:transparent url(../images/menu-bits-vs.gif) no-repeat scroll left -109px;}#adminmenu a.menu-top{background:#eaf3fa url(../images/menu-bits-vs.gif) repeat-x scroll left -379px;}#adminmenu .wp-submenu a{background:#fff url(../images/menu-bits-vs.gif) no-repeat scroll 0 -310px;}#adminmenu .wp-has-current-submenu ul li a{background:none;}#adminmenu .wp-has-current-submenu ul li a.current{background:url(../images/menu-dark.gif) top left no-repeat!important;}#adminmenu li.wp-has-current-submenu a.wp-has-current-submenu,#adminmenu .menu-top .current{background:#3c6b95 url(../images/menu-bits-vs.gif) top left repeat-x;border-color:#1d507d;color:#fff;text-shadow:rgba(0,0,0,0.4) 0 -1px 0;}#adminmenu li.wp-has-current-submenu .wp-submenu,#adminmenu li.wp-has-current-submenu ul li a{border-color:#aaa!important;}#adminmenu li.wp-has-current-submenu ul li a{background:url(../images/menu-dark.gif) bottom left no-repeat!important;}#adminmenu li.wp-has-current-submenu ul{border-bottom-color:#aaa;}#adminmenu li.menu-top .current:hover{border-color:#6583c0;}#adminmenu .wp-submenu .current a.current{background:transparent url(../images/menu-bits-vs.gif) no-repeat scroll 0 -289px;}#adminmenu .wp-submenu a:hover{background-color:#eaf2fa!important;color:#333!important;}#adminmenu .wp-submenu li.current,#adminmenu .wp-submenu li.current a,#adminmenu .wp-submenu li.current a:hover{color:#333;background-color:#f5f5f5;background-image:none;border-color:#e3e3e3;text-shadow:rgba(255,255,255,1) 0 1px 0;}#adminmenu .wp-submenu ul{background-color:#fff;}.folded #adminmenu li.menu-top,#adminmenu .wp-submenu .wp-submenu-head{background-color:#eaf2fa;}.folded #adminmenu li.wp-has-current-submenu,.folded #adminmenu li.menu-top.current{background-color:#bbd8e7;}#adminmenu .wp-has-current-submenu .wp-submenu .wp-submenu-head{background-color:#bbd8e7;border-color:#8cbdd5;}#adminmenu div.wp-submenu{background-color:transparent;}#adminmenu #menu-dashboard div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -61px -33px;}#adminmenu #menu-dashboard:hover div.wp-menu-image,#adminmenu #menu-dashboard.wp-has-current-submenu div.wp-menu-image,#adminmenu #menu-dashboard.current div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -61px -1px;}#adminmenu #menu-posts div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -272px -33px;}#adminmenu #menu-posts:hover div.wp-menu-image,#adminmenu #menu-posts.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -272px -1px;}#adminmenu #menu-media div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -121px -33px;}#adminmenu #menu-media:hover div.wp-menu-image,#adminmenu #menu-media.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -121px -1px;}#adminmenu #menu-links div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -91px -33px;}#adminmenu #menu-links:hover div.wp-menu-image,#adminmenu #menu-links.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -91px -1px;}#adminmenu #menu-pages div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -151px -33px;}#adminmenu #menu-pages:hover div.wp-menu-image,#adminmenu #menu-pages.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -151px -1px;}#adminmenu #menu-comments div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -31px -33px;}#adminmenu #menu-comments:hover div.wp-menu-image,#adminmenu #menu-comments.wp-has-current-submenu div.wp-menu-image,#adminmenu #menu-comments.current div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -31px -1px;}#adminmenu #menu-appearance div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -1px -33px;}#adminmenu #menu-appearance:hover div.wp-menu-image,#adminmenu #menu-appearance.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -1px -1px;}#adminmenu #menu-plugins div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -181px -33px;}#adminmenu #menu-plugins:hover div.wp-menu-image,#adminmenu #menu-plugins.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -181px -1px;}#adminmenu #menu-users div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -301px -33px;}#adminmenu #menu-users:hover div.wp-menu-image,#adminmenu #menu-users.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -301px -1px;}#adminmenu #menu-tools div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -211px -33px;}#adminmenu #menu-tools:hover div.wp-menu-image,#adminmenu #menu-tools.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -211px -1px;}#adminmenu #menu-settings div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -241px -33px;}#adminmenu #menu-settings:hover div.wp-menu-image,#adminmenu #menu-settings.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu-vs.png&quot;) no-repeat scroll -241px -1px;}table.diff .diff-deletedline{background-color:#fdd;}table.diff .diff-deletedline del{background-color:#f99;}table.diff .diff-addedline{background-color:#dfd;}table.diff .diff-addedline ins{background-color:#9f9;}#att-info{background-color:#e4f2fd;}#sidemenu a{background-color:#f9f9f9;border-color:#f9f9f9;border-bottom-color:#dfdfdf;}#sidemenu a.current{background-color:#fff;border-color:#dfdfdf #dfdfdf #fff;color:#d54e21;}#screen-options-wrap,#contextual-help-wrap{background-color:#eae9e4;border-color:#dfdfdf;}#screen-meta-links a.show-settings{color:#606060;}#screen-meta-links a.show-settings:hover{color:#000;}#replysubmit{background-color:#f1f1f1;border-top-color:#ddd;}#replyerror{border-color:#ddd;background-color:#f9f9f9;}#edithead,#replyhead{background-color:#f1f1f1;}#ed_reply_toolbar{background-color:#e9e9e9;}.vim-current,.vim-current th,.vim-current td{background-color:#e4f2fd!important;}.star-average,.star.star-rating{background-color:#fc0;}div.star.select:hover{background-color:#d00;}#plugin-information .fyi ul{background-color:#eaf3fa;}#plugin-information .fyi h2.mainheader{background-color:#cee1ef;}#plugin-information pre,#plugin-information code{background-color:#ededff;}#plugin-information pre{border:1px solid #ccc;}.inline-edit-row fieldset input[type=&quot;text&quot;],.inline-edit-row fieldset textarea,#bulk-titles,#replyrow input{border-color:#ddd;}.inline-editor div.title{background-color:#eaf3fa;}.inline-editor ul.cat-checklist{background-color:#fff;border-color:#ddd;}.inline-editor .categories .catshow,.inline-editor .categories .cathide{color:#21759b;}.inline-editor .quick-edit-save{background-color:#f1f1f1;}#replyrow #ed_reply_toolbar input:hover{border-color:#aaa;background:#ddd;}fieldset.inline-edit-col-right .inline-edit-col{border-color:#dfdfdf;}.attention{color:#d54e21;}.meta-box-sortables .postbox:hover .handlediv{background:transparent url(../images/menu-bits-vs.gif) no-repeat scroll left -111px;}#major-publishing-actions{background:#eaf2fa;}.tablenav .tablenav-pages{color:#555;}.tablenav .tablenav-pages a{border-color:#e3e3e3;background:#eee url('../images/menu-bits-vs.gif') repeat-x scroll left -379px;}.tablenav .tablenav-pages a:hover{color:#d54e21;border-color:#d54321;}.tablenav .tablenav-pages a:active{color:#fff!important;}.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-bottom-color:#eee;}#minor-publishing{border-bottom-color:#ddd;}#post-body .misc-pub-section{border-right-color:#eee;}.post-com-count span{background-color:#bbb;}.form-table .color-palette td{border-color:#fff;}.sortable-placeholder{border-color:#bbb;background-color:#f5f5f5;}#post-body ul#category-tabs li.tabs a{color:#333;}#wp_editimgbtn,#wp_delimgbtn,#wp_editgallery,#wp_delgallery{border-color:#999;background-color:#eee;}#wp_editimgbtn:hover,#wp_delimgbtn:hover,#wp_editgallery:hover,#wp_delgallery:hover{border-color:#555;background-color:#ccc;}#favorite-first{background:#5580a6 url(../images/fav-vs.png) repeat-x 0 center;border-color:#517ea5!important;border-bottom-color:#416686!important;}#favorite-actions .slide-down{background-image:url(../images/fav-top-vs.gif);background-position:0 0;background-repeat:repeat-x;}#favorite-inside{border-color:#5b86ac;background-color:#5580a6;}#favorite-toggle{background:transparent url(../images/fav-arrow-vs.gif) no-repeat 0 -4px;}#favorite-actions a{color:#ddd;}#favorite-actions a:hover{color:#fff;}#favorite-inside a:hover{text-decoration:underline;}#favorite-actions .slide-down{border-bottom-color:#626262;}#screen-meta a.show-settings{background-color:transparent;text-shadow:rgba(255,255,255,0.7) 0 1px 0;}#icon-edit,#icon-post{background:transparent url(../images/icons32-vs.png) no-repeat -552px -5px;}#icon-index{background:transparent url(../images/icons32-vs.png) no-repeat -137px -5px;}#icon-upload{background:transparent url(../images/icons32-vs.png) no-repeat -251px -5px;}#icon-link-manager,#icon-link,#icon-link-category{background:transparent url(../images/icons32-vs.png) no-repeat -190px -5px;}#icon-edit-pages,#icon-page{background:transparent url(../images/icons32-vs.png) no-repeat -312px -5px;}#icon-edit-comments{background:transparent url(../images/icons32-vs.png) no-repeat -72px -5px;}#icon-themes{background:transparent url(../images/icons32-vs.png) no-repeat -11px -5px;}#icon-plugins{background:transparent url(../images/icons32-vs.png) no-repeat -370px -5px;}#icon-users,#icon-profile,#icon-user-edit{background:transparent url(../images/icons32-vs.png) no-repeat -600px -5px;}#icon-tools,#icon-admin{background:transparent url(../images/icons32-vs.png) no-repeat -432px -5px;}#icon-options-general{background:transparent url(../images/icons32-vs.png) no-repeat -492px -5px;}.view-switch #view-switch-list{background:transparent url(../images/list-vs.png) no-repeat 0 0;}.view-switch #view-switch-list.current{background:transparent url(../images/list-vs.png) no-repeat -40px 0;}.view-switch #view-switch-excerpt{background:transparent url(../images/list-vs.png) no-repeat -20px 0;}.view-switch #view-switch-excerpt.current{background:transparent url(../images/list-vs.png) no-repeat -60px 0;}#header-logo{background:transparent url(../images/wp-logo-vs.gif) no-repeat scroll center center;}#wphead #site-visit-button{background-color:#3c6b95;background-image:url(../images/visit-site-button-grad-vs.gif);color:#b6d1e4;text-shadow:#3f3f3f 0 -1px 0;}#wphead a:hover #site-visit-button{color:#fff;}#wphead a:focus #site-visit-button,#wphead a:active #site-visit-button{background-position:0 -27px;}.popular-tags,.feature-filter{background-color:#fff;border-color:#dfdfdf;}#theme-information .action-button{border-top-color:#dfdfdf;}.theme-listing br.line{border-bottom-color:#ccc;}div.widgets-sortables,#widgets-left .inactive{background-color:#f1f1f1;border-color:#ddd;}#available-widgets .widget-holder{background-color:#fff;border-color:#ddd;}#widgets-left .sidebar-name{background-color:#aaa;background-image:url(../images/ed-bg-vs.gif);text-shadow:#FFF 0 1px 0;border-color:#dfdfdf;}#widgets-right .sidebar-name{background-image:url(../images/fav-vs.png);text-shadow:#3f3f3f 0 -1px 0;background-color:#636363;border-color:#636363;color:#fff;}.sidebar-name:hover,#removing-widget{color:#d54e21;}#removing-widget span{color:black;}#widgets-left .sidebar-name-arrow{background:transparent url(../images/menu-bits-vs.gif) no-repeat scroll left -109px;}#widgets-right .sidebar-name-arrow{background:transparent url(../images/fav-arrow-vs.gif) no-repeat scroll 0 -1px;}.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:#b1b1b1;background-color:#e3e3e3;}.imgedit-menu div.disabled{border-color:#b3b3b3;background-color:#cacaca;filter:alpha(opacity=40);opacity:.4;}
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkwpadmincsscolorsclassicdevcss"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/css/colors-classic.dev.css (11964 => 11965)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/css/colors-classic.dev.css        2009-09-23 22:03:39 UTC (rev 11964)
+++ trunk/wp-admin/css/colors-classic.dev.css        2009-09-24 01:54:07 UTC (rev 11965)
</span><span class="lines">@@ -585,7 +585,8 @@
</span><span class="cx">         color: #b6d1e4;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-#media-items {
</del><ins>+#media-items,
+.imgedit-group {
</ins><span class="cx">         border-color: #dfdfdf;
</span><span class="cx"> }
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkwpadmincsscolorsfreshcss"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/css/colors-fresh.css (11964 => 11965)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/css/colors-fresh.css        2009-09-23 22:03:39 UTC (rev 11964)
+++ trunk/wp-admin/css/colors-fresh.css        2009-09-24 01:54:07 UTC (rev 11965)
</span><span class="lines">@@ -1 +1 @@
</span><del>-html{background-color:#f9f9f9;}* html input,* html .widget{border-color:#dfdfdf;}textarea,input,select{border-color:#DFDFDF;}kbd,code{background:#eaeaea;}input[readonly]{background-color:#eee;}.find-box-search{border-color:#dfdfdf;background-color:#f1f1f1;}.find-box{background-color:#f1f1f1;}.find-box-inside{background-color:#fff;}a.page-numbers:hover{border-color:#999;}body,#wpbody,.form-table .pre{color:#333;}body&gt;#upload-menu{border-bottom-color:#fff;}#postcustomstuff table,#your-profile fieldset,#rightnow,div.dashboard-widget,#dashboard-widgets p.dashboard-widget-links,#replyrow #ed_reply_toolbar input{border-color:#ccc;}#poststuff .inside label.spam,#poststuff .inside label.deleted{color:red;}#poststuff .inside label.waiting{color:orange;}#poststuff .inside label.approved{color:green;}#postcustomstuff table{border-color:#dfdfdf;background-color:#F9F9F9;}#postcustomstuff thead th{background-color:#F1F1F1;}#postcustomstuff table input,#postcustomstuff table textarea{border-color:#dfdfdf;background-color:#fff;}.widefat{border-color:#dfdfdf;background-color:#fff;}div.dashboard-widget-error{background-color:#c43;}div.dashboard-widget-notice{background-color:#cfe1ef;}div.dashboard-widget-submit{border-top-color:#ccc;}div.tabs-panel,ul#category-tabs li.tabs{border-color:#dfdfdf;}ul#category-tabs li.tabs{background-color:#f1f1f1;}input.disabled,textarea.disabled{background-color:#ccc;}.login #backtoblog a:hover,#plugin-information .action-button a,#plugin-information .action-button a:hover,#plugin-information .action-button a:visited{color:#fff;}.widget .widget-top,.postbox h3,.stuffbox h3{background:#dfdfdf url(&quot;../images/gray-grad.png&quot;) repeat-x left top;text-shadow:#fff 0 1px 0;}.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;}.ac_over{background-color:#f0f0b8;}.ac_results{background-color:#fff;border-color:#808080;}.ac_results li{color:#101010;}.alternate,.alt{background-color:#f9f9f9;}.available-theme a.screenshot{background-color:#f1f1f1;border-color:#ddd;}.bar{background-color:#e8e8e8;border-right-color:#99d;}#media-upload{background:#fff;}#media-upload .slidetoggle{border-top-color:#dfdfdf;}.error,.login #login_error{background-color:#ffebe8;border-color:#c00;}.error a{color:#c00;}.form-invalid{background-color:#ffebe8!important;}.form-invalid input{border-color:#c00!important;}.submit{border-color:#DFDFDF;}.highlight{background-color:#e4f2fd;color:#d54e21;}.howto,.nonessential,#edit-slug-box,.form-input-tip,.rss-widget span.rss-date,.subsubsub{color:#666;}.media-item{border-bottom-color:#dfdfdf;}#wpbody-content #media-items .describe{border-top-color:#dfdfdf;}.describe input[type=&quot;text&quot;],.describe textarea{border-color:#dfdfdf;}.media-upload-form label.form-help,td.help{color:#9a9a9a;}.post-com-count{background-image:url(../images/bubble_bg.gif);color:#fff;}.post-com-count span{background-color:#bbb;color:#fff;}.post-com-count:hover span{background-color:#d54e21;}.quicktags,.search{background-color:#ccc;color:#000;}.side-info h5{border-bottom-color:#dadada;}.side-info ul{color:#666;}.button,.button-secondary,.submit input,input[type=button],input[type=submit]{border-color:#bbb;color:#464646;}.button:hover,.button-secondary:hover,.submit input:hover,input[type=button]:hover,input[type=submit]:hover{color:#000;border-color:#666;}.button,.submit input,.button-secondary{background:#f2f2f2 url(../images/white-grad.png) repeat-x scroll left top;text-shadow:rgba(255,255,255,1) 0 1px 0;}.button:active,.submit input:active,.button-secondary:active{background:#eee url(../images/white-grad-active.png) repeat-x scroll left top;}input.button-primary,button.button-primary,a.button-primary{border-color:#298cba;font-weight:bold;color:#fff;background:#21759B url(../images/button-grad.png) repeat-x scroll left top;text-shadow:rgba(0,0,0,0.3) 0 -1px 0;}input.button-primary:active,button.button-primary:active,a.button-primary:active{background:#21759b url(../images/button-grad-active.png) repeat-x scroll left top;color:#eaf2fa;}input.button-primary:hover,button.button-primary:hover,a.button-primary:hover,a.button-primary:focus,a.button-primary:active{border-color:#13455b;color:#eaf2fa;}.button-disabled,.button[disabled],.button:disabled,.button-secondary[disabled],.button-secondary:disabled,a.button.disabled{color:#aaa!important;border-color:#ddd!important;}.button-primary-disabled,.button-primary[disabled],.button-primary:disabled{color:#9FD0D5!important;background:#298CBA!important;}a:hover,a:active,a:focus{color:#d54e21;}#wphead #viewsite a:hover,#adminmenu a:hover,#adminmenu ul.wp-submenu a:hover,#the-comment-list .comment a:hover,#rightnow a:hover,#media-upload a.del-link:hover,div.dashboard-widget-submit input:hover,.subsubsub a:hover,.subsubsub a.current:hover,.ui-tabs-nav a:hover,.plugins .inactive a:hover,#all-plugins-table .plugins .inactive a:hover,#search-plugins-table .plugins .inactive a:hover{color:#d54e21;}#the-comment-list .comment-item,#dashboard-widgets #dashboard_quick_press form p.submit{border-color:#dfdfdf;}#side-sortables #category-tabs .tabs a{color:#333;}#rightnow .rbutton{background-color:#ebebeb;color:#264761;}.submitbox .submit{background-color:#464646;color:#ccc;}.plugins a.delete:hover,#all-plugins-table .plugins a.delete:hover,#search-plugins-table .plugins a.delete:hover,.submitbox .submitdelete,a.delete{color:#f00;border-bottom-color:#f00;}.submitbox .submitdelete:hover,#media-items a.delete:hover{color:#fff;background-color:#f00;border-bottom-color:#f00;}#normal-sortables .submitbox .submitdelete:hover{color:#000;background-color:#f00;border-bottom-color:#f00;}.tablenav .dots{border-color:transparent;}.tablenav .next,.tablenav .prev{border-color:transparent;color:#21759b;}.tablenav .next:hover,.tablenav .prev:hover{border-color:transparent;color:#d54e21;}.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,#install-plugins .plugins td,#install-plugins .plugins th{border-color:#dfdfdf;}.widefat th{text-shadow:rgba(255,255,255,0.8) 0 1px 0;}.widefat thead tr th,.widefat tfoot tr th,h3.dashboard-widget-title,h3.dashboard-widget-title span,h3.dashboard-widget-title small,.find-box-head{color:#333;background:#dfdfdf url(../images/gray-grad.png) repeat-x scroll left top;}h3.dashboard-widget-title small a{color:#d7d7d7;}h3.dashboard-widget-title small a:hover{color:#fff;}a,#adminmenu a,#poststuff #edButtonPreview,#poststuff #edButtonHTML,#the-comment-list p.comment-author strong a,#media-upload a.del-link,#media-items a.delete,.plugins a.delete,.ui-tabs-nav a{color:#21759b;}body.press-this .tabs a,body.press-this .tabs a:hover{background-color:#fff;border-color:#c6d9e9;border-bottom-color:#fff;color:#d54e21;}#adminmenu #awaiting-mod,#adminmenu .update-plugins,#sidemenu a .update-plugins,#rightnow .reallynow,#plugin-information .action-button{background-color:#d54e21;color:#fff;}#adminmenu li a:hover #awaiting-mod,#adminmenu li a:hover .update-plugins,#sidemenu li a:hover .update-plugins{background-color:#264761;color:#fff;}#adminmenu li.current a #awaiting-mod,#adminmenu li.current a .update-plugins,#adminmenu li.wp-has-current-submenu a .update-plugins,#adminmenu li.wp-has-current-submenu a .update-plugins{background-color:#ddd;color:#000;text-shadow:none;-moz-box-shadow:rgba(0,0,0,0.2) 0 -1px 0;-khtml-box-shadow:rgba(0,0,0,0.2) 0 -1px 0;-webkit-box-shadow:rgba(0,0,0,0.2) 0 -1px 0;box-shadow:rgba(0,0,0,0.2) 0 -1px 0;}#adminmenu li.current a:hover #awaiting-mod,#adminmenu li.current a:hover .update-plugins,#adminmenu li.wp-has-current-submenu a:hover #awaiting-mod,#adminmenu li.wp-has-current-submenu a:hover .update-plugins{background-color:#264761;color:#fff;}div#media-upload-header,div#plugin-information-header{background-color:#f9f9f9;border-bottom-color:#dfdfdf;}#currenttheme img{border-color:#666;}#dashboard_secondary div.dashboard-widget-content ul li a{background-color:#f9f9f9;}input.readonly,textarea.readonly{background-color:#ddd;}#ed_toolbar input,#ed_reply_toolbar input{background:#fff url(&quot;../images/fade-butt.png&quot;) repeat-x 0 -2px;}#editable-post-name{background-color:#fffbcc;}#edit-slug-box strong,.tablenav .displaying-num,#submitted-on{color:#777;}.login #nav a{color:#21759b!important;}.login #nav a:hover{color:#d54e21!important;}#footer,#footer-upgrade{background:#464646;color:#999;}#media-items{border-color:#dfdfdf;}.checkbox,.side-info,.plugins tr,#your-profile #rich_editing{background-color:#fff;}.plugins .inactive,.plugins .inactive th,.plugins .inactive td,tr.inactive+tr.plugin-update-tr .plugin-update{background-color:#eee;}.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 .unapproved,#the-comment-list .unapproved th,#the-comment-list .unapproved td{background-color:#ffffe0;}#the-comment-list .approve a{color:#006505;}#the-comment-list .unapprove a{color:#d98500;}#the-comment-list .delete a{color:#bc0b0b;}.widget,#widget-list .widget-top,.postbox,#titlediv,#poststuff .postarea,.stuffbox{border-color:#dfdfdf;}.widget,.postbox{background-color:#fff;}.ui-sortable .postbox h3{color:#464646;}.widget .widget-top,.ui-sortable .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{background-color:#fffeeb;border-color:#ccc;color:#555;}.login #backtoblog a{color:#ccc;}#wphead{background-color:#464646;}body.login{border-top-color:#464646;}#wphead h1 a{color:#fff;}#user_info{color:#999;}#user_info a:link,#user_info a:visited,#footer a:link,#footer a:visited{color:#ccc;text-decoration:none;}#user_info a:hover,#footer a:hover{color:#fff;text-decoration:underline!important;}#user_info a:active,#footer a:active{color:#ccc!important;}div#media-upload-error,.file-error,abbr.required,.widget-control-remove:hover,.delete a:hover{color:#f00;}#pass-strength-result{background-color:#eee;border-color:#ddd!important;}#pass-strength-result.bad{background-color:#ffb78c;border-color:#ff853c!important;}#pass-strength-result.good{background-color:#ffec8b;border-color:#fc0!important;}#pass-strength-result.short{background-color:#ffa0a0;border-color:#f04040!important;}#pass-strength-result.strong{background-color:#c3ff88;border-color:#8dff1c!important;}#quicktags{border-color:#dfdfdf;background-color:#dfdfdf;}#ed_toolbar input{border-color:#C3C3C3;}#ed_toolbar input:hover{border-color:#aaa;background:#ddd;}#poststuff .wp_themeSkin .mceStatusbar{border-color:#EDEDED;}#poststuff #edButtonPreview,#poststuff #edButtonHTML{background-color:#f1f1f1;border-color:#dfdfdf;color:#999;}#poststuff #editor-toolbar .active{border-bottom-color:#e9e9e9;background-color:#e9e9e9;color:#333;}#post-status-info{background-color:#EDEDED;}.wp_themeSkin *,.wp_themeSkin a:hover,.wp_themeSkin a:link,.wp_themeSkin a:visited,.wp_themeSkin a:active{color:#000;}.wp_themeSkin iframe{background:#fff;}.wp_themeSkin .mceStatusbar{color:#000;background-color:#f5f5f5;}.wp_themeSkin .mceButton{background-color:#e9e8e8;border-color:#B2B2B2;}.wp_themeSkin a.mceButtonEnabled:hover,.wp_themeSkin a.mceButtonActive,.wp_themeSkin a.mceButtonSelected{background-color:#d5d5d5;border-color:#777!important;}.wp_themeSkin .mceButtonDisabled{border-color:#ccc!important;}.wp_themeSkin .mceListBox .mceText,.wp_themeSkin .mceListBox .mceOpen{border-color:#B2B2B2;background-color:#d5d5d5;}.wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,.wp_themeSkin .mceListBoxHover .mceOpen,.wp_themeSkin .mceListBoxSelected .mceOpen,.wp_themeSkin .mceListBoxSelected .mceText{border-color:#777!important;background-color:#d5d5d5;}.wp_themeSkin table.mceListBoxEnabled:hover .mceText,.wp_themeSkin .mceListBoxHover .mceText{border-color:#777!important;}.wp_themeSkin select.mceListBox{border-color:#B2B2B2;background-color:#fff;}.wp_themeSkin .mceSplitButton a.mceAction,.wp_themeSkin .mceSplitButton a.mceOpen{border-color:#B2B2B2;}.wp_themeSkin .mceSplitButton a.mceOpen:hover,.wp_themeSkin .mceSplitButtonSelected a.mceOpen,.wp_themeSkin table.mceSplitButtonEnabled:hover a.mceAction,.wp_themeSkin .mceSplitButton a.mceAction:hover{background-color:#d5d5d5;border-color:#777!important;}.wp_themeSkin .mceSplitButtonActive{background-color:#B2B2B2;}.wp_themeSkin div.mceColorSplitMenu table{background-color:#ebebeb;border-color:#B2B2B2;}.wp_themeSkin .mceColorSplitMenu a{border-color:#B2B2B2;}.wp_themeSkin .mceColorSplitMenu a.mceMoreColors{border-color:#fff;}.wp_themeSkin .mceColorSplitMenu a.mceMoreColors:hover{border-color:#0A246A;background-color:#B6BDD2;}.wp_themeSkin a.mceMoreColors:hover{border-color:#0A246A;}.wp_themeSkin .mceMenu{border-color:#ddd;}.wp_themeSkin .mceMenu table{background-color:#ebeaeb;}.wp_themeSkin .mceMenu .mceText{color:#000;}.wp_themeSkin .mceMenu .mceMenuItemEnabled a:hover,.wp_themeSkin .mceMenu .mceMenuItemActive{background-color:#f5f5f5;}.wp_themeSkin td.mceMenuItemSeparator{background-color:#aaa;}.wp_themeSkin .mceMenuItemTitle a{background-color:#ccc;border-bottom-color:#aaa;}.wp_themeSkin .mceMenuItemTitle span.mceText{color:#000;}.wp_themeSkin .mceMenuItemDisabled .mceText{color:#888;}.wp_themeSkin tr.mceFirst td.mceToolbar{background:#dfdfdf url(&quot;../images/ed-bg.gif&quot;) repeat-x scroll left top;border-color:#dfdfdf;}.wp-admin #mceModalBlocker{background:#000;}.wp-admin .clearlooks2 .mceFocus .mceTop .mceLeft{background:#444;border-left:1px solid #999;border-top:1px solid #999;-moz-border-radius:4px 0 0 0;-webkit-border-top-left-radius:4px;-khtml-border-top-left-radius:4px;border-top-left-radius:4px;}.wp-admin .clearlooks2 .mceFocus .mceTop .mceRight{background:#444;border-right:1px solid #999;border-top:1px solid #999;border-top-right-radius:4px;-khtml-border-top-right-radius:4px;-webkit-border-top-right-radius:4px;-moz-border-radius:0 4px 0 0;}.wp-admin .clearlooks2 .mceMiddle .mceLeft{background:#f1f1f1;border-left:1px solid #999;}.wp-admin .clearlooks2 .mceMiddle .mceRight{background:#f1f1f1;border-right:1px solid #999;}.wp-admin .clearlooks2 .mceBottom{background:#f1f1f1;border-bottom:1px solid #999;}.wp-admin .clearlooks2 .mceBottom .mceLeft{background:#f1f1f1;border-bottom:1px solid #999;border-left:1px solid #999;}.wp-admin .clearlooks2 .mceBottom .mceCenter{background:#f1f1f1;border-bottom:1px solid #999;}.wp-admin .clearlooks2 .mceBottom .mceRight{background:#f1f1f1;border-bottom:1px solid #999;border-right:1px solid #999;}.wp-admin .clearlooks2 .mceFocus .mceTop span{color:#e5e5e5;}#editorcontainer,#post-status-info,#titlediv #title,.editwidget .widget-inside{border-color:#dfdfdf;}#titlediv #title{background-color:#fff;}#tTips p#tTips_inside{background-color:#ddd;color:#333;}#timestampdiv input,#namediv input,#poststuff .inside .the-tagcloud{border-color:#ddd;}#adminmenu *{border-color:#e3e3e3;}#adminmenu li.wp-menu-separator{background:transparent url(../images/menu-arrows.gif) no-repeat scroll left 5px;}.folded #adminmenu li.wp-menu-separator{background:transparent url(../images/menu-arrows.gif) no-repeat scroll right -34px;}#adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,#adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle{background:transparent url(../images/menu-bits.gif) no-repeat scroll left -207px;}#adminmenu .wp-has-submenu:hover .wp-menu-toggle,#adminmenu .wp-menu-open .wp-menu-toggle{background:transparent url(../images/menu-bits.gif) no-repeat scroll left -109px;}#adminmenu a.menu-top{background:#f1f1f1 url(../images/menu-bits.gif) repeat-x scroll left -379px;}#adminmenu .wp-submenu a{background:#FFF url(../images/menu-bits.gif) no-repeat scroll 0 -310px;}#adminmenu .wp-has-current-submenu ul li a{background:none;}#adminmenu .wp-has-current-submenu ul li a.current{background:url(../images/menu-dark.gif) top left no-repeat!important;}#adminmenu li.wp-has-current-submenu a.wp-has-current-submenu,#adminmenu .menu-top .current{background:#6d6d6d url(../images/menu-bits.gif) top left repeat-x;border-color:#6d6d6d;color:#fff;text-shadow:rgba(0,0,0,0.4) 0 -1px 0;}#adminmenu li.wp-has-current-submenu .wp-submenu,#adminmenu li.wp-has-current-submenu ul li a{border-color:#aaa!important;}#adminmenu li.wp-has-current-submenu ul li a{background:url(../images/menu-dark.gif) bottom left no-repeat!important;}#adminmenu li.wp-has-current-submenu ul{border-bottom-color:#aaa;}#adminmenu li.menu-top .current:hover{border-color:#B5B5B5;}#adminmenu .wp-submenu .current a.current{background:transparent url(../images/menu-bits.gif) no-repeat scroll 0 -289px;}#adminmenu .wp-submenu a:hover{background-color:#EAF2FA!important;color:#333!important;}#adminmenu .wp-submenu li.current,#adminmenu .wp-submenu li.current a,#adminmenu .wp-submenu li.current a:hover{color:#333;background-color:#f5f5f5;background-image:none;border-color:#e3e3e3;text-shadow:rgba(255,255,255,1) 0 1px 0;}#adminmenu .wp-submenu ul{background-color:#fff;}.folded #adminmenu li.menu-top,#adminmenu .wp-submenu .wp-submenu-head{background-color:#F1F1F1;}.folded #adminmenu li.wp-has-current-submenu,.folded #adminmenu li.menu-top.current{background-color:#e6e6e6;}#adminmenu .wp-has-current-submenu .wp-submenu .wp-submenu-head{background-color:#EAEAEA;border-color:#aaa;}#adminmenu div.wp-submenu{background-color:transparent;}#adminmenu #menu-dashboard div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -61px -33px;}#adminmenu #menu-dashboard:hover div.wp-menu-image,#adminmenu #menu-dashboard.wp-has-current-submenu div.wp-menu-image,#adminmenu #menu-dashboard.current div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -61px -1px;}#adminmenu #menu-posts div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -272px -33px;}#adminmenu #menu-posts:hover div.wp-menu-image,#adminmenu #menu-posts.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -272px -1px;}#adminmenu #menu-media div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -121px -33px;}#adminmenu #menu-media:hover div.wp-menu-image,#adminmenu #menu-media.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -121px -1px;}#adminmenu #menu-links div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -91px -33px;}#adminmenu #menu-links:hover div.wp-menu-image,#adminmenu #menu-links.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -91px -1px;}#adminmenu #menu-pages div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -151px -33px;}#adminmenu #menu-pages:hover div.wp-menu-image,#adminmenu #menu-pages.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -151px -1px;}#adminmenu #menu-comments div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -31px -33px;}#adminmenu #menu-comments:hover div.wp-menu-image,#adminmenu #menu-comments.wp-has-current-submenu div.wp-menu-image,#adminmenu #menu-comments.current div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -31px -1px;}#adminmenu #menu-appearance div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -1px -33px;}#adminmenu #menu-appearance:hover div.wp-menu-image,#adminmenu #menu-appearance.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -1px -1px;}#adminmenu #menu-plugins div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -181px -33px;}#adminmenu #menu-plugins:hover div.wp-menu-image,#adminmenu #menu-plugins.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -181px -1px;}#adminmenu #menu-users div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -301px -33px;}#adminmenu #menu-users:hover div.wp-menu-image,#adminmenu #menu-users.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -301px -1px;}#adminmenu #menu-tools div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -211px -33px;}#adminmenu #menu-tools:hover div.wp-menu-image,#adminmenu #menu-tools.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -211px -1px;}#adminmenu #menu-settings div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -241px -33px;}#adminmenu #menu-settings:hover div.wp-menu-image,#adminmenu #menu-settings.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -241px -1px;}table.diff .diff-deletedline{background-color:#fdd;}table.diff .diff-deletedline del{background-color:#f99;}table.diff .diff-addedline{background-color:#dfd;}table.diff .diff-addedline ins{background-color:#9f9;}#att-info{background-color:#E4F2FD;}#sidemenu a{background-color:#f9f9f9;border-color:#f9f9f9;border-bottom-color:#dfdfdf;}#sidemenu a.current{background-color:#fff;border-color:#dfdfdf #dfdfdf #fff;color:#D54E21;}#screen-options-wrap,#contextual-help-wrap{background-color:#f1f1f1;border-color:#dfdfdf;}#screen-meta-links a.show-settings{color:#606060;}#screen-meta-links a.show-settings:hover{color:#000;}#replysubmit{background-color:#f1f1f1;border-top-color:#ddd;}#replyerror{border-color:#ddd;background-color:#f9f9f9;}#edithead,#replyhead{background-color:#f1f1f1;}#ed_reply_toolbar{background-color:#e9e9e9;}.vim-current,.vim-current th,.vim-current td{background-color:#E4F2FD!important;}.star-average,.star.star-rating{background-color:#fc0;}div.star.select:hover{background-color:#d00;}#plugin-information .fyi ul{background-color:#eaf3fa;}#plugin-information .fyi h2.mainheader{background-color:#cee1ef;}#plugin-information pre,#plugin-information code{background-color:#ededff;}#plugin-information pre{border:1px solid #ccc;}.inline-edit-row fieldset input[type=&quot;text&quot;],.inline-edit-row fieldset textarea,#bulk-titles,#replyrow input{border-color:#ddd;}.inline-editor div.title{background-color:#EAF3FA;}.inline-editor ul.cat-checklist{background-color:#FFF;border-color:#ddd;}.inline-editor .categories .catshow,.inline-editor .categories .cathide{color:#21759b;}.inline-editor .quick-edit-save{background-color:#f1f1f1;}#replyrow #ed_reply_toolbar input:hover{border-color:#aaa;background:#ddd;}fieldset.inline-edit-col-right .inline-edit-col{border-color:#dfdfdf;}.attention{color:#D54E21;}.meta-box-sortables .postbox:hover .handlediv{background:transparent url(../images/menu-bits.gif) no-repeat scroll left -111px;}#major-publishing-actions{background:#eaf2fa;}.tablenav .tablenav-pages{color:#555;}.tablenav .tablenav-pages a{border-color:#e3e3e3;background:#eee url('../images/menu-bits.gif') repeat-x scroll left -379px;}.tablenav .tablenav-pages a:hover{color:#d54e21;border-color:#d54321;}.tablenav .tablenav-pages a:active{color:#fff!important;}.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-bottom-color:#eee;}#minor-publishing{border-bottom-color:#ddd;}#post-body .misc-pub-section{border-right-color:#eee;}.post-com-count span{background-color:#bbb;}.form-table .color-palette td{border-color:#fff;}.sortable-placeholder{border-color:#bbb;background-color:#f5f5f5;}#post-body ul#category-tabs li.tabs a{color:#333;}#wp_editimgbtn,#wp_delimgbtn,#wp_editgallery,#wp_delgallery{border-color:#999;background-color:#eee;}#wp_editimgbtn:hover,#wp_delimgbtn:hover,#wp_editgallery:hover,#wp_delgallery:hover{border-color:#555;background-color:#ccc;}#favorite-first{background:#797979 url(../images/fav.png) repeat-x left center;border-color:#777!important;border-bottom-color:#666!important;}#favorite-inside{border-color:#797979;background-color:#797979;}#favorite-toggle{background:transparent url(../images/fav-arrow.gif) no-repeat 0 -4px;}#favorite-actions a{color:#ddd;}#favorite-actions a:hover{color:#fff;}#favorite-inside a:hover{text-decoration:underline;}#favorite-actions .slide-down{border-bottom-color:#626262;}#screen-meta a.show-settings{background-color:transparent;text-shadow:rgba(255,255,255,0.7) 0 1px 0;}#icon-edit,#icon-post{background:transparent url(../images/icons32.png) no-repeat -552px -5px;}#icon-index{background:transparent url(../images/icons32.png) no-repeat -137px -5px;}#icon-upload{background:transparent url(../images/icons32.png) no-repeat -251px -5px;}#icon-link-manager,#icon-link,#icon-link-category{background:transparent url(../images/icons32.png) no-repeat -190px -5px;}#icon-edit-pages,#icon-page{background:transparent url(../images/icons32.png) no-repeat -312px -5px;}#icon-edit-comments{background:transparent url(../images/icons32.png) no-repeat -72px -5px;}#icon-themes{background:transparent url(../images/icons32.png) no-repeat -11px -5px;}#icon-plugins{background:transparent url(../images/icons32.png) no-repeat -370px -5px;}#icon-users,#icon-profile,#icon-user-edit{background:transparent url(../images/icons32.png) no-repeat -600px -5px;}#icon-tools,#icon-admin{background:transparent url(../images/icons32.png) no-repeat -432px -5px;}#icon-options-general{background:transparent url(../images/icons32.png) no-repeat -492px -5px;}.view-switch #view-switch-list{background:transparent url(../images/list.png) no-repeat 0 0;}.view-switch #view-switch-list.current{background:transparent url(../images/list.png) no-repeat -40px 0;}.view-switch #view-switch-excerpt{background:transparent url(../images/list.png) no-repeat -20px 0;}.view-switch #view-switch-excerpt.current{background:transparent url(../images/list.png) no-repeat -60px 0;}#header-logo{background:transparent url(../images/wp-logo.gif) no-repeat scroll center center;}#wphead #site-visit-button{background-color:#585858;background-image:url(../images/visit-site-button-grad.gif);color:#aaa;text-shadow:#3F3F3F 0 -1px 0;}#wphead a:hover #site-visit-button{color:#fff;}#wphead a:focus #site-visit-button,#wphead a:active #site-visit-button{background-position:0 -27px;}.popular-tags,.feature-filter{background-color:#FFF;border-color:#DFDFDF;}#theme-information .action-button{border-top-color:#DFDFDF;}.theme-listing br.line{border-bottom-color:#ccc;}div.widgets-sortables,#widgets-left .inactive{background-color:#f1f1f1;border-color:#ddd;}#available-widgets .widget-holder{background-color:#fff;border-color:#ddd;}#widgets-left .sidebar-name{background-color:#aaa;background-image:url(../images/ed-bg.gif);text-shadow:#FFF 0 1px 0;border-color:#dfdfdf;}#widgets-right .sidebar-name{background-image:url(../images/fav.png);text-shadow:#3f3f3f 0 -1px 0;background-color:#636363;border-color:#636363;color:#fff;}.sidebar-name:hover,#removing-widget{color:#d54e21;}#removing-widget span{color:black;}#widgets-left .sidebar-name-arrow{background:transparent url(../images/menu-bits.gif) no-repeat scroll left -109px;}#widgets-right .sidebar-name-arrow{background:transparent url(../images/fav-arrow.gif) no-repeat scroll 0 -1px;}.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:#b1b1b1;background-color:#e3e3e3;}.imgedit-menu div.disabled{border-color:#b3b3b3;background-color:#cacaca;filter:alpha(opacity=40);opacity:.4;}
</del><span class="cx">\ No newline at end of file
</span><ins>+html{background-color:#f9f9f9;}* html input,* html .widget{border-color:#dfdfdf;}textarea,input,select{border-color:#DFDFDF;}kbd,code{background:#eaeaea;}input[readonly]{background-color:#eee;}.find-box-search{border-color:#dfdfdf;background-color:#f1f1f1;}.find-box{background-color:#f1f1f1;}.find-box-inside{background-color:#fff;}a.page-numbers:hover{border-color:#999;}body,#wpbody,.form-table .pre{color:#333;}body&gt;#upload-menu{border-bottom-color:#fff;}#postcustomstuff table,#your-profile fieldset,#rightnow,div.dashboard-widget,#dashboard-widgets p.dashboard-widget-links,#replyrow #ed_reply_toolbar input{border-color:#ccc;}#poststuff .inside label.spam,#poststuff .inside label.deleted{color:red;}#poststuff .inside label.waiting{color:orange;}#poststuff .inside label.approved{color:green;}#postcustomstuff table{border-color:#dfdfdf;background-color:#F9F9F9;}#postcustomstuff thead th{background-color:#F1F1F1;}#postcustomstuff table input,#postcustomstuff table textarea{border-color:#dfdfdf;background-color:#fff;}.widefat{border-color:#dfdfdf;background-color:#fff;}div.dashboard-widget-error{background-color:#c43;}div.dashboard-widget-notice{background-color:#cfe1ef;}div.dashboard-widget-submit{border-top-color:#ccc;}div.tabs-panel,ul#category-tabs li.tabs{border-color:#dfdfdf;}ul#category-tabs li.tabs{background-color:#f1f1f1;}input.disabled,textarea.disabled{background-color:#ccc;}.login #backtoblog a:hover,#plugin-information .action-button a,#plugin-information .action-button a:hover,#plugin-information .action-button a:visited{color:#fff;}.widget .widget-top,.postbox h3,.stuffbox h3{background:#dfdfdf url(&quot;../images/gray-grad.png&quot;) repeat-x left top;text-shadow:#fff 0 1px 0;}.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;}.ac_over{background-color:#f0f0b8;}.ac_results{background-color:#fff;border-color:#808080;}.ac_results li{color:#101010;}.alternate,.alt{background-color:#f9f9f9;}.available-theme a.screenshot{background-color:#f1f1f1;border-color:#ddd;}.bar{background-color:#e8e8e8;border-right-color:#99d;}#media-upload{background:#fff;}#media-upload .slidetoggle{border-top-color:#dfdfdf;}.error,.login #login_error{background-color:#ffebe8;border-color:#c00;}.error a{color:#c00;}.form-invalid{background-color:#ffebe8!important;}.form-invalid input{border-color:#c00!important;}.submit{border-color:#DFDFDF;}.highlight{background-color:#e4f2fd;color:#d54e21;}.howto,.nonessential,#edit-slug-box,.form-input-tip,.rss-widget span.rss-date,.subsubsub{color:#666;}.media-item{border-bottom-color:#dfdfdf;}#wpbody-content #media-items .describe{border-top-color:#dfdfdf;}.describe input[type=&quot;text&quot;],.describe textarea{border-color:#dfdfdf;}.media-upload-form label.form-help,td.help{color:#9a9a9a;}.post-com-count{background-image:url(../images/bubble_bg.gif);color:#fff;}.post-com-count span{background-color:#bbb;color:#fff;}.post-com-count:hover span{background-color:#d54e21;}.quicktags,.search{background-color:#ccc;color:#000;}.side-info h5{border-bottom-color:#dadada;}.side-info ul{color:#666;}.button,.button-secondary,.submit input,input[type=button],input[type=submit]{border-color:#bbb;color:#464646;}.button:hover,.button-secondary:hover,.submit input:hover,input[type=button]:hover,input[type=submit]:hover{color:#000;border-color:#666;}.button,.submit input,.button-secondary{background:#f2f2f2 url(../images/white-grad.png) repeat-x scroll left top;text-shadow:rgba(255,255,255,1) 0 1px 0;}.button:active,.submit input:active,.button-secondary:active{background:#eee url(../images/white-grad-active.png) repeat-x scroll left top;}input.button-primary,button.button-primary,a.button-primary{border-color:#298cba;font-weight:bold;color:#fff;background:#21759B url(../images/button-grad.png) repeat-x scroll left top;text-shadow:rgba(0,0,0,0.3) 0 -1px 0;}input.button-primary:active,button.button-primary:active,a.button-primary:active{background:#21759b url(../images/button-grad-active.png) repeat-x scroll left top;color:#eaf2fa;}input.button-primary:hover,button.button-primary:hover,a.button-primary:hover,a.button-primary:focus,a.button-primary:active{border-color:#13455b;color:#eaf2fa;}.button-disabled,.button[disabled],.button:disabled,.button-secondary[disabled],.button-secondary:disabled,a.button.disabled{color:#aaa!important;border-color:#ddd!important;}.button-primary-disabled,.button-primary[disabled],.button-primary:disabled{color:#9FD0D5!important;background:#298CBA!important;}a:hover,a:active,a:focus{color:#d54e21;}#wphead #viewsite a:hover,#adminmenu a:hover,#adminmenu ul.wp-submenu a:hover,#the-comment-list .comment a:hover,#rightnow a:hover,#media-upload a.del-link:hover,div.dashboard-widget-submit input:hover,.subsubsub a:hover,.subsubsub a.current:hover,.ui-tabs-nav a:hover,.plugins .inactive a:hover,#all-plugins-table .plugins .inactive a:hover,#search-plugins-table .plugins .inactive a:hover{color:#d54e21;}#the-comment-list .comment-item,#dashboard-widgets #dashboard_quick_press form p.submit{border-color:#dfdfdf;}#side-sortables #category-tabs .tabs a{color:#333;}#rightnow .rbutton{background-color:#ebebeb;color:#264761;}.submitbox .submit{background-color:#464646;color:#ccc;}.plugins a.delete:hover,#all-plugins-table .plugins a.delete:hover,#search-plugins-table .plugins a.delete:hover,.submitbox .submitdelete,a.delete{color:#f00;border-bottom-color:#f00;}.submitbox .submitdelete:hover,#media-items a.delete:hover{color:#fff;background-color:#f00;border-bottom-color:#f00;}#normal-sortables .submitbox .submitdelete:hover{color:#000;background-color:#f00;border-bottom-color:#f00;}.tablenav .dots{border-color:transparent;}.tablenav .next,.tablenav .prev{border-color:transparent;color:#21759b;}.tablenav .next:hover,.tablenav .prev:hover{border-color:transparent;color:#d54e21;}.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,#install-plugins .plugins td,#install-plugins .plugins th{border-color:#dfdfdf;}.widefat th{text-shadow:rgba(255,255,255,0.8) 0 1px 0;}.widefat thead tr th,.widefat tfoot tr th,h3.dashboard-widget-title,h3.dashboard-widget-title span,h3.dashboard-widget-title small,.find-box-head{color:#333;background:#dfdfdf url(../images/gray-grad.png) repeat-x scroll left top;}h3.dashboard-widget-title small a{color:#d7d7d7;}h3.dashboard-widget-title small a:hover{color:#fff;}a,#adminmenu a,#poststuff #edButtonPreview,#poststuff #edButtonHTML,#the-comment-list p.comment-author strong a,#media-upload a.del-link,#media-items a.delete,.plugins a.delete,.ui-tabs-nav a{color:#21759b;}body.press-this .tabs a,body.press-this .tabs a:hover{background-color:#fff;border-color:#c6d9e9;border-bottom-color:#fff;color:#d54e21;}#adminmenu #awaiting-mod,#adminmenu .update-plugins,#sidemenu a .update-plugins,#rightnow .reallynow,#plugin-information .action-button{background-color:#d54e21;color:#fff;}#adminmenu li a:hover #awaiting-mod,#adminmenu li a:hover .update-plugins,#sidemenu li a:hover .update-plugins{background-color:#264761;color:#fff;}#adminmenu li.current a #awaiting-mod,#adminmenu li.current a .update-plugins,#adminmenu li.wp-has-current-submenu a .update-plugins,#adminmenu li.wp-has-current-submenu a .update-plugins{background-color:#ddd;color:#000;text-shadow:none;-moz-box-shadow:rgba(0,0,0,0.2) 0 -1px 0;-khtml-box-shadow:rgba(0,0,0,0.2) 0 -1px 0;-webkit-box-shadow:rgba(0,0,0,0.2) 0 -1px 0;box-shadow:rgba(0,0,0,0.2) 0 -1px 0;}#adminmenu li.current a:hover #awaiting-mod,#adminmenu li.current a:hover .update-plugins,#adminmenu li.wp-has-current-submenu a:hover #awaiting-mod,#adminmenu li.wp-has-current-submenu a:hover .update-plugins{background-color:#264761;color:#fff;}div#media-upload-header,div#plugin-information-header{background-color:#f9f9f9;border-bottom-color:#dfdfdf;}#currenttheme img{border-color:#666;}#dashboard_secondary div.dashboard-widget-content ul li a{background-color:#f9f9f9;}input.readonly,textarea.readonly{background-color:#ddd;}#ed_toolbar input,#ed_reply_toolbar input{background:#fff url(&quot;../images/fade-butt.png&quot;) repeat-x 0 -2px;}#editable-post-name{background-color:#fffbcc;}#edit-slug-box strong,.tablenav .displaying-num,#submitted-on{color:#777;}.login #nav a{color:#21759b!important;}.login #nav a:hover{color:#d54e21!important;}#footer,#footer-upgrade{background:#464646;color:#999;}#media-items,.imgedit-group{border-color:#dfdfdf;}.checkbox,.side-info,.plugins tr,#your-profile #rich_editing{background-color:#fff;}.plugins .inactive,.plugins .inactive th,.plugins .inactive td,tr.inactive+tr.plugin-update-tr .plugin-update{background-color:#eee;}.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 .unapproved,#the-comment-list .unapproved th,#the-comment-list .unapproved td{background-color:#ffffe0;}#the-comment-list .approve a{color:#006505;}#the-comment-list .unapprove a{color:#d98500;}#the-comment-list .delete a{color:#bc0b0b;}.widget,#widget-list .widget-top,.postbox,#titlediv,#poststuff .postarea,.stuffbox{border-color:#dfdfdf;}.widget,.postbox{background-color:#fff;}.ui-sortable .postbox h3{color:#464646;}.widget .widget-top,.ui-sortable .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{background-color:#fffeeb;border-color:#ccc;color:#555;}.login #backtoblog a{color:#ccc;}#wphead{background-color:#464646;}body.login{border-top-color:#464646;}#wphead h1 a{color:#fff;}#user_info{color:#999;}#user_info a:link,#user_info a:visited,#footer a:link,#footer a:visited{color:#ccc;text-decoration:none;}#user_info a:hover,#footer a:hover{color:#fff;text-decoration:underline!important;}#user_info a:active,#footer a:active{color:#ccc!important;}div#media-upload-error,.file-error,abbr.required,.widget-control-remove:hover,.delete a:hover{color:#f00;}#pass-strength-result{background-color:#eee;border-color:#ddd!important;}#pass-strength-result.bad{background-color:#ffb78c;border-color:#ff853c!important;}#pass-strength-result.good{background-color:#ffec8b;border-color:#fc0!important;}#pass-strength-result.short{background-color:#ffa0a0;border-color:#f04040!important;}#pass-strength-result.strong{background-color:#c3ff88;border-color:#8dff1c!important;}#quicktags{border-color:#dfdfdf;background-color:#dfdfdf;}#ed_toolbar input{border-color:#C3C3C3;}#ed_toolbar input:hover{border-color:#aaa;background:#ddd;}#poststuff .wp_themeSkin .mceStatusbar{border-color:#EDEDED;}#poststuff #edButtonPreview,#poststuff #edButtonHTML{background-color:#f1f1f1;border-color:#dfdfdf;color:#999;}#poststuff #editor-toolbar .active{border-bottom-color:#e9e9e9;background-color:#e9e9e9;color:#333;}#post-status-info{background-color:#EDEDED;}.wp_themeSkin *,.wp_themeSkin a:hover,.wp_themeSkin a:link,.wp_themeSkin a:visited,.wp_themeSkin a:active{color:#000;}.wp_themeSkin iframe{background:#fff;}.wp_themeSkin .mceStatusbar{color:#000;background-color:#f5f5f5;}.wp_themeSkin .mceButton{background-color:#e9e8e8;border-color:#B2B2B2;}.wp_themeSkin a.mceButtonEnabled:hover,.wp_themeSkin a.mceButtonActive,.wp_themeSkin a.mceButtonSelected{background-color:#d5d5d5;border-color:#777!important;}.wp_themeSkin .mceButtonDisabled{border-color:#ccc!important;}.wp_themeSkin .mceListBox .mceText,.wp_themeSkin .mceListBox .mceOpen{border-color:#B2B2B2;background-color:#d5d5d5;}.wp_themeSkin table.mceListBoxEnabled:hover .mceOpen,.wp_themeSkin .mceListBoxHover .mceOpen,.wp_themeSkin .mceListBoxSelected .mceOpen,.wp_themeSkin .mceListBoxSelected .mceText{border-color:#777!important;background-color:#d5d5d5;}.wp_themeSkin table.mceListBoxEnabled:hover .mceText,.wp_themeSkin .mceListBoxHover .mceText{border-color:#777!important;}.wp_themeSkin select.mceListBox{border-color:#B2B2B2;background-color:#fff;}.wp_themeSkin .mceSplitButton a.mceAction,.wp_themeSkin .mceSplitButton a.mceOpen{border-color:#B2B2B2;}.wp_themeSkin .mceSplitButton a.mceOpen:hover,.wp_themeSkin .mceSplitButtonSelected a.mceOpen,.wp_themeSkin table.mceSplitButtonEnabled:hover a.mceAction,.wp_themeSkin .mceSplitButton a.mceAction:hover{background-color:#d5d5d5;border-color:#777!important;}.wp_themeSkin .mceSplitButtonActive{background-color:#B2B2B2;}.wp_themeSkin div.mceColorSplitMenu table{background-color:#ebebeb;border-color:#B2B2B2;}.wp_themeSkin .mceColorSplitMenu a{border-color:#B2B2B2;}.wp_themeSkin .mceColorSplitMenu a.mceMoreColors{border-color:#fff;}.wp_themeSkin .mceColorSplitMenu a.mceMoreColors:hover{border-color:#0A246A;background-color:#B6BDD2;}.wp_themeSkin a.mceMoreColors:hover{border-color:#0A246A;}.wp_themeSkin .mceMenu{border-color:#ddd;}.wp_themeSkin .mceMenu table{background-color:#ebeaeb;}.wp_themeSkin .mceMenu .mceText{color:#000;}.wp_themeSkin .mceMenu .mceMenuItemEnabled a:hover,.wp_themeSkin .mceMenu .mceMenuItemActive{background-color:#f5f5f5;}.wp_themeSkin td.mceMenuItemSeparator{background-color:#aaa;}.wp_themeSkin .mceMenuItemTitle a{background-color:#ccc;border-bottom-color:#aaa;}.wp_themeSkin .mceMenuItemTitle span.mceText{color:#000;}.wp_themeSkin .mceMenuItemDisabled .mceText{color:#888;}.wp_themeSkin tr.mceFirst td.mceToolbar{background:#dfdfdf url(&quot;../images/ed-bg.gif&quot;) repeat-x scroll left top;border-color:#dfdfdf;}.wp-admin #mceModalBlocker{background:#000;}.wp-admin .clearlooks2 .mceFocus .mceTop .mceLeft{background:#444;border-left:1px solid #999;border-top:1px solid #999;-moz-border-radius:4px 0 0 0;-webkit-border-top-left-radius:4px;-khtml-border-top-left-radius:4px;border-top-left-radius:4px;}.wp-admin .clearlooks2 .mceFocus .mceTop .mceRight{background:#444;border-right:1px solid #999;border-top:1px solid #999;border-top-right-radius:4px;-khtml-border-top-right-radius:4px;-webkit-border-top-right-radius:4px;-moz-border-radius:0 4px 0 0;}.wp-admin .clearlooks2 .mceMiddle .mceLeft{background:#f1f1f1;border-left:1px solid #999;}.wp-admin .clearlooks2 .mceMiddle .mceRight{background:#f1f1f1;border-right:1px solid #999;}.wp-admin .clearlooks2 .mceBottom{background:#f1f1f1;border-bottom:1px solid #999;}.wp-admin .clearlooks2 .mceBottom .mceLeft{background:#f1f1f1;border-bottom:1px solid #999;border-left:1px solid #999;}.wp-admin .clearlooks2 .mceBottom .mceCenter{background:#f1f1f1;border-bottom:1px solid #999;}.wp-admin .clearlooks2 .mceBottom .mceRight{background:#f1f1f1;border-bottom:1px solid #999;border-right:1px solid #999;}.wp-admin .clearlooks2 .mceFocus .mceTop span{color:#e5e5e5;}#editorcontainer,#post-status-info,#titlediv #title,.editwidget .widget-inside{border-color:#dfdfdf;}#titlediv #title{background-color:#fff;}#tTips p#tTips_inside{background-color:#ddd;color:#333;}#timestampdiv input,#namediv input,#poststuff .inside .the-tagcloud{border-color:#ddd;}#adminmenu *{border-color:#e3e3e3;}#adminmenu li.wp-menu-separator{background:transparent url(../images/menu-arrows.gif) no-repeat scroll left 5px;}.folded #adminmenu li.wp-menu-separator{background:transparent url(../images/menu-arrows.gif) no-repeat scroll right -34px;}#adminmenu li.wp-has-current-submenu.wp-menu-open .wp-menu-toggle,#adminmenu li.wp-has-current-submenu:hover .wp-menu-toggle{background:transparent url(../images/menu-bits.gif) no-repeat scroll left -207px;}#adminmenu .wp-has-submenu:hover .wp-menu-toggle,#adminmenu .wp-menu-open .wp-menu-toggle{background:transparent url(../images/menu-bits.gif) no-repeat scroll left -109px;}#adminmenu a.menu-top{background:#f1f1f1 url(../images/menu-bits.gif) repeat-x scroll left -379px;}#adminmenu .wp-submenu a{background:#FFF url(../images/menu-bits.gif) no-repeat scroll 0 -310px;}#adminmenu .wp-has-current-submenu ul li a{background:none;}#adminmenu .wp-has-current-submenu ul li a.current{background:url(../images/menu-dark.gif) top left no-repeat!important;}#adminmenu li.wp-has-current-submenu a.wp-has-current-submenu,#adminmenu .menu-top .current{background:#6d6d6d url(../images/menu-bits.gif) top left repeat-x;border-color:#6d6d6d;color:#fff;text-shadow:rgba(0,0,0,0.4) 0 -1px 0;}#adminmenu li.wp-has-current-submenu .wp-submenu,#adminmenu li.wp-has-current-submenu ul li a{border-color:#aaa!important;}#adminmenu li.wp-has-current-submenu ul li a{background:url(../images/menu-dark.gif) bottom left no-repeat!important;}#adminmenu li.wp-has-current-submenu ul{border-bottom-color:#aaa;}#adminmenu li.menu-top .current:hover{border-color:#B5B5B5;}#adminmenu .wp-submenu .current a.current{background:transparent url(../images/menu-bits.gif) no-repeat scroll 0 -289px;}#adminmenu .wp-submenu a:hover{background-color:#EAF2FA!important;color:#333!important;}#adminmenu .wp-submenu li.current,#adminmenu .wp-submenu li.current a,#adminmenu .wp-submenu li.current a:hover{color:#333;background-color:#f5f5f5;background-image:none;border-color:#e3e3e3;text-shadow:rgba(255,255,255,1) 0 1px 0;}#adminmenu .wp-submenu ul{background-color:#fff;}.folded #adminmenu li.menu-top,#adminmenu .wp-submenu .wp-submenu-head{background-color:#F1F1F1;}.folded #adminmenu li.wp-has-current-submenu,.folded #adminmenu li.menu-top.current{background-color:#e6e6e6;}#adminmenu .wp-has-current-submenu .wp-submenu .wp-submenu-head{background-color:#EAEAEA;border-color:#aaa;}#adminmenu div.wp-submenu{background-color:transparent;}#adminmenu #menu-dashboard div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -61px -33px;}#adminmenu #menu-dashboard:hover div.wp-menu-image,#adminmenu #menu-dashboard.wp-has-current-submenu div.wp-menu-image,#adminmenu #menu-dashboard.current div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -61px -1px;}#adminmenu #menu-posts div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -272px -33px;}#adminmenu #menu-posts:hover div.wp-menu-image,#adminmenu #menu-posts.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -272px -1px;}#adminmenu #menu-media div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -121px -33px;}#adminmenu #menu-media:hover div.wp-menu-image,#adminmenu #menu-media.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -121px -1px;}#adminmenu #menu-links div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -91px -33px;}#adminmenu #menu-links:hover div.wp-menu-image,#adminmenu #menu-links.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -91px -1px;}#adminmenu #menu-pages div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -151px -33px;}#adminmenu #menu-pages:hover div.wp-menu-image,#adminmenu #menu-pages.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -151px -1px;}#adminmenu #menu-comments div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -31px -33px;}#adminmenu #menu-comments:hover div.wp-menu-image,#adminmenu #menu-comments.wp-has-current-submenu div.wp-menu-image,#adminmenu #menu-comments.current div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -31px -1px;}#adminmenu #menu-appearance div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -1px -33px;}#adminmenu #menu-appearance:hover div.wp-menu-image,#adminmenu #menu-appearance.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -1px -1px;}#adminmenu #menu-plugins div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -181px -33px;}#adminmenu #menu-plugins:hover div.wp-menu-image,#adminmenu #menu-plugins.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -181px -1px;}#adminmenu #menu-users div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -301px -33px;}#adminmenu #menu-users:hover div.wp-menu-image,#adminmenu #menu-users.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -301px -1px;}#adminmenu #menu-tools div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -211px -33px;}#adminmenu #menu-tools:hover div.wp-menu-image,#adminmenu #menu-tools.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -211px -1px;}#adminmenu #menu-settings div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -241px -33px;}#adminmenu #menu-settings:hover div.wp-menu-image,#adminmenu #menu-settings.wp-has-current-submenu div.wp-menu-image{background:transparent url(&quot;../images/menu.png&quot;) no-repeat scroll -241px -1px;}table.diff .diff-deletedline{background-color:#fdd;}table.diff .diff-deletedline del{background-color:#f99;}table.diff .diff-addedline{background-color:#dfd;}table.diff .diff-addedline ins{background-color:#9f9;}#att-info{background-color:#E4F2FD;}#sidemenu a{background-color:#f9f9f9;border-color:#f9f9f9;border-bottom-color:#dfdfdf;}#sidemenu a.current{background-color:#fff;border-color:#dfdfdf #dfdfdf #fff;color:#D54E21;}#screen-options-wrap,#contextual-help-wrap{background-color:#f1f1f1;border-color:#dfdfdf;}#screen-meta-links a.show-settings{color:#606060;}#screen-meta-links a.show-settings:hover{color:#000;}#replysubmit{background-color:#f1f1f1;border-top-color:#ddd;}#replyerror{border-color:#ddd;background-color:#f9f9f9;}#edithead,#replyhead{background-color:#f1f1f1;}#ed_reply_toolbar{background-color:#e9e9e9;}.vim-current,.vim-current th,.vim-current td{background-color:#E4F2FD!important;}.star-average,.star.star-rating{background-color:#fc0;}div.star.select:hover{background-color:#d00;}#plugin-information .fyi ul{background-color:#eaf3fa;}#plugin-information .fyi h2.mainheader{background-color:#cee1ef;}#plugin-information pre,#plugin-information code{background-color:#ededff;}#plugin-information pre{border:1px solid #ccc;}.inline-edit-row fieldset input[type=&quot;text&quot;],.inline-edit-row fieldset textarea,#bulk-titles,#replyrow input{border-color:#ddd;}.inline-editor div.title{background-color:#EAF3FA;}.inline-editor ul.cat-checklist{background-color:#FFF;border-color:#ddd;}.inline-editor .categories .catshow,.inline-editor .categories .cathide{color:#21759b;}.inline-editor .quick-edit-save{background-color:#f1f1f1;}#replyrow #ed_reply_toolbar input:hover{border-color:#aaa;background:#ddd;}fieldset.inline-edit-col-right .inline-edit-col{border-color:#dfdfdf;}.attention{color:#D54E21;}.meta-box-sortables .postbox:hover .handlediv{background:transparent url(../images/menu-bits.gif) no-repeat scroll left -111px;}#major-publishing-actions{background:#eaf2fa;}.tablenav .tablenav-pages{color:#555;}.tablenav .tablenav-pages a{border-color:#e3e3e3;background:#eee url('../images/menu-bits.gif') repeat-x scroll left -379px;}.tablenav .tablenav-pages a:hover{color:#d54e21;border-color:#d54321;}.tablenav .tablenav-pages a:active{color:#fff!important;}.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-bottom-color:#eee;}#minor-publishing{border-bottom-color:#ddd;}#post-body .misc-pub-section{border-right-color:#eee;}.post-com-count span{background-color:#bbb;}.form-table .color-palette td{border-color:#fff;}.sortable-placeholder{border-color:#bbb;background-color:#f5f5f5;}#post-body ul#category-tabs li.tabs a{color:#333;}#wp_editimgbtn,#wp_delimgbtn,#wp_editgallery,#wp_delgallery{border-color:#999;background-color:#eee;}#wp_editimgbtn:hover,#wp_delimgbtn:hover,#wp_editgallery:hover,#wp_delgallery:hover{border-color:#555;background-color:#ccc;}#favorite-first{background:#797979 url(../images/fav.png) repeat-x left center;border-color:#777!important;border-bottom-color:#666!important;}#favorite-inside{border-color:#797979;background-color:#797979;}#favorite-toggle{background:transparent url(../images/fav-arrow.gif) no-repeat 0 -4px;}#favorite-actions a{color:#ddd;}#favorite-actions a:hover{color:#fff;}#favorite-inside a:hover{text-decoration:underline;}#favorite-actions .slide-down{border-bottom-color:#626262;}#screen-meta a.show-settings{background-color:transparent;text-shadow:rgba(255,255,255,0.7) 0 1px 0;}#icon-edit,#icon-post{background:transparent url(../images/icons32.png) no-repeat -552px -5px;}#icon-index{background:transparent url(../images/icons32.png) no-repeat -137px -5px;}#icon-upload{background:transparent url(../images/icons32.png) no-repeat -251px -5px;}#icon-link-manager,#icon-link,#icon-link-category{background:transparent url(../images/icons32.png) no-repeat -190px -5px;}#icon-edit-pages,#icon-page{background:transparent url(../images/icons32.png) no-repeat -312px -5px;}#icon-edit-comments{background:transparent url(../images/icons32.png) no-repeat -72px -5px;}#icon-themes{background:transparent url(../images/icons32.png) no-repeat -11px -5px;}#icon-plugins{background:transparent url(../images/icons32.png) no-repeat -370px -5px;}#icon-users,#icon-profile,#icon-user-edit{background:transparent url(../images/icons32.png) no-repeat -600px -5px;}#icon-tools,#icon-admin{background:transparent url(../images/icons32.png) no-repeat -432px -5px;}#icon-options-general{background:transparent url(../images/icons32.png) no-repeat -492px -5px;}.view-switch #view-switch-list{background:transparent url(../images/list.png) no-repeat 0 0;}.view-switch #view-switch-list.current{background:transparent url(../images/list.png) no-repeat -40px 0;}.view-switch #view-switch-excerpt{background:transparent url(../images/list.png) no-repeat -20px 0;}.view-switch #view-switch-excerpt.current{background:transparent url(../images/list.png) no-repeat -60px 0;}#header-logo{background:transparent url(../images/wp-logo.gif) no-repeat scroll center center;}#wphead #site-visit-button{background-color:#585858;background-image:url(../images/visit-site-button-grad.gif);color:#aaa;text-shadow:#3F3F3F 0 -1px 0;}#wphead a:hover #site-visit-button{color:#fff;}#wphead a:focus #site-visit-button,#wphead a:active #site-visit-button{background-position:0 -27px;}.popular-tags,.feature-filter{background-color:#FFF;border-color:#DFDFDF;}#theme-information .action-button{border-top-color:#DFDFDF;}.theme-listing br.line{border-bottom-color:#ccc;}div.widgets-sortables,#widgets-left .inactive{background-color:#f1f1f1;border-color:#ddd;}#available-widgets .widget-holder{background-color:#fff;border-color:#ddd;}#widgets-left .sidebar-name{background-color:#aaa;background-image:url(../images/ed-bg.gif);text-shadow:#FFF 0 1px 0;border-color:#dfdfdf;}#widgets-right .sidebar-name{background-image:url(../images/fav.png);text-shadow:#3f3f3f 0 -1px 0;background-color:#636363;border-color:#636363;color:#fff;}.sidebar-name:hover,#removing-widget{color:#d54e21;}#removing-widget span{color:black;}#widgets-left .sidebar-name-arrow{background:transparent url(../images/menu-bits.gif) no-repeat scroll left -109px;}#widgets-right .sidebar-name-arrow{background:transparent url(../images/fav-arrow.gif) no-repeat scroll 0 -1px;}.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:#b1b1b1;background-color:#e3e3e3;}.imgedit-menu div.disabled{border-color:#b3b3b3;background-color:#cacaca;filter:alpha(opacity=40);opacity:.4;}
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkwpadmincsscolorsfreshdevcss"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/css/colors-fresh.dev.css (11964 => 11965)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/css/colors-fresh.dev.css        2009-09-23 22:03:39 UTC (rev 11964)
+++ trunk/wp-admin/css/colors-fresh.dev.css        2009-09-24 01:54:07 UTC (rev 11965)
</span><span class="lines">@@ -581,7 +581,8 @@
</span><span class="cx">         color: #999;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-#media-items {
</del><ins>+#media-items,
+.imgedit-group {
</ins><span class="cx">         border-color: #dfdfdf;
</span><span class="cx"> }
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkwpadmincssmediacss"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/css/media.css (11964 => 11965)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/css/media.css        2009-09-23 22:03:39 UTC (rev 11964)
+++ trunk/wp-admin/css/media.css        2009-09-24 01:54:07 UTC (rev 11965)
</span><span class="lines">@@ -1 +1 @@
</span><del>-div#media-upload-header{margin:0;padding:0 5px;font-weight:bold;position:relative;border-bottom-width:1px;border-bottom-style:solid;height:2.5em;}body#media-upload ul#sidemenu{font-weight:normal;margin:0 5px;position:absolute;left:0;bottom:-1px;}div#media-upload-error{margin:1em;font-weight:bold;}form{margin:1em;}#search-filter{text-align:right;}th{position:relative;}.media-upload-form label.form-help,td.help{font-family:&quot;Lucida Grande&quot;,&quot;Bitstream Vera Sans&quot;,Verdana,Arial,sans-serif;font-style:italic;font-weight:normal;}.media-upload-form p.help{margin:0;padding:0;}.media-upload-form fieldset{width:100%;border:none;text-align:justify;margin:0 0 1em 0;padding:0;}.image-align-none-label{background:url(../images/align-none.png) no-repeat center left;}.image-align-left-label{background:url(../images/align-left.png) no-repeat center left;}.image-align-center-label{background:url(../images/align-center.png) no-repeat center left;}.image-align-right-label{background:url(../images/align-right.png) no-repeat center left;}tr.image-size td{width:460px;}tr.image-size div.image-size-item{float:left;width:25%;margin:0;}#library-form .progress,#gallery-form .progress,#flash-upload-ui,.insert-gallery,.describe.startopen,.describe.startclosed{display:none;}.media-item .thumbnail{max-width:128px;max-height:128px;}thead.media-item-info tr{background-color:transparent;}thead.media-item-info th,thead.media-item-info td{border:none;margin:0;}.form-table thead.media-item-info{border:8px solid #fff;}abbr.required{text-decoration:none;border:none;}.describe label{display:inline;}.describe td{vertical-align:middle;padding:0 5px 0 0;}.describe td.A1{width:132px;}.describe input[type=&quot;text&quot;],.describe textarea{width:460px;border-width:1px;border-style:solid;}.describe-toggle-on,.describe-toggle-off{display:block;line-height:36px;float:right;margin-right:20px;}.describe-toggle-off{display:none;}.hidden{height:0;width:0;overflow:hidden;border:none;}#media-upload .media-upload-form p{margin:0 1em 1em 0;}#media-upload p.ml-submit{padding:1em 0;}#media-upload p.help,#media-upload label.help{font-family:&quot;Lucida Grande&quot;,&quot;Bitstream Vera Sans&quot;,Verdana,Arial,sans-serif;font-style:italic;font-weight:normal;}#media-upload tr.image-size td.field{text-align:center;}#media-upload #media-items{border-width:1px;border-style:solid;border-bottom:none;width:623px;}#media-upload .media-item{border-bottom-width:1px;border-bottom-style:solid;min-height:36px;width:100%;}#media-upload .ui-sortable .media-item{cursor:move;}.filename{line-height:36px;padding:0 10px;overflow:hidden;}#media-upload .describe{padding:5px;width:100%;clear:both;cursor:default;}#media-upload .slidetoggle{border-top-width:1px;border-top-style:solid;}#media-upload .describe th.label{padding-top:.5em;text-align:left;min-width:120px;}#media-upload tr.align td.field{text-align:center;}#media-upload tr.image-size{margin-bottom:1em;height:3em;}#media-upload #filter{width:623px;}#media-upload #filter .subsubsub{margin:8px 0;}#filter .tablenav select{border-style:solid;border-width:1px;padding:2px;vertical-align:top;width:auto;}#media-upload .del-attachment{display:none;margin:5px 0;}.menu_order{float:right;font-size:11px;margin:10px 10px 0;}.menu_order_input{border:1px solid #ddd;font-size:10px;padding:1px;width:23px;}.ui-sortable-helper{background-color:#fff;border:1px solid #aaa;opacity:.6;filter:alpha(opacity=60);}#media-upload th.order-head{width:25%;text-align:center;}#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;border-bottom-style:solid;border-bottom-width:1px;font-family:Georgia,&quot;Times New Roman&quot;,Times,serif;font-size:1.6em;border-bottom-color:#DADADA;color:#5A5A5A;}h3.media-title{color:#5A5A5A;font-family:Georgia,&quot;Times New Roman&quot;,Times,serif;font-size:1.6em;font-weight:normal;}#gallery-settings .describe td{vertical-align:middle;height:3.5em;}#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;border:1px solid #dfdfdf;}#gallery-settings label,#gallery-settings legend{font-size:13px;color:#464646;margin-right:15px;}#gallery-settings .align .field label{margin:0 1.5em 0 0;}#gallery-settings p.ml-submit{border-top:1px solid #dfdfdf;}#gallery-settings select#columns{width:6em;}#sort-buttons{font-size:.8em;margin:3px 25px -8px 0;text-align:right;max-width:625px;}#sort-buttons a{text-decoration:none;}#sort-buttons #asc,#sort-buttons #showall{padding-left:5px;}#sort-buttons span{margin-right:25px;}
</del><span class="cx">\ No newline at end of file
</span><ins>+div#media-upload-header{margin:0;padding:0 5px;font-weight:bold;position:relative;border-bottom-width:1px;border-bottom-style:solid;height:2.5em;}body#media-upload ul#sidemenu{font-weight:normal;margin:0 5px;position:absolute;left:0;bottom:-1px;}div#media-upload-error{margin:1em;font-weight:bold;}form{margin:1em;}#search-filter{text-align:right;}th{position:relative;}.media-upload-form label.form-help,td.help{font-family:&quot;Lucida Grande&quot;,&quot;Bitstream Vera Sans&quot;,Verdana,Arial,sans-serif;font-style:italic;font-weight:normal;}.media-upload-form p.help{margin:0;padding:0;}.media-upload-form fieldset{width:100%;border:none;text-align:justify;margin:0 0 1em 0;padding:0;}.image-align-none-label{background:url(../images/align-none.png) no-repeat center left;}.image-align-left-label{background:url(../images/align-left.png) no-repeat center left;}.image-align-center-label{background:url(../images/align-center.png) no-repeat center left;}.image-align-right-label{background:url(../images/align-right.png) no-repeat center left;}tr.image-size td{width:460px;}tr.image-size div.image-size-item{float:left;width:25%;margin:0;}#library-form .progress,#gallery-form .progress,#flash-upload-ui,.insert-gallery,.describe.startopen,.describe.startclosed{display:none;}.media-item .thumbnail{max-width:128px;max-height:128px;}thead.media-item-info tr{background-color:transparent;}thead.media-item-info th,thead.media-item-info td{border:none;margin:0;}.form-table thead.media-item-info{border:8px solid #fff;}abbr.required{text-decoration:none;border:none;}.describe label{display:inline;}.describe td{vertical-align:middle;padding:0 5px 8px 0;}.describe td.A1{width:132px;}.describe input[type=&quot;text&quot;],.describe textarea{width:460px;border-width:1px;border-style:solid;}.describe-toggle-on,.describe-toggle-off{display:block;line-height:36px;float:right;margin-right:20px;}.describe-toggle-off{display:none;}.hidden{height:0;width:0;overflow:hidden;border:none;}#media-upload p.ml-submit{padding:1em 0;}#media-upload p.help,#media-upload label.help{font-family:&quot;Lucida Grande&quot;,&quot;Bitstream Vera Sans&quot;,Verdana,Arial,sans-serif;font-style:italic;font-weight:normal;}#media-upload tr.image-size td.field{text-align:center;}#media-upload #media-items{border-width:1px;border-style:solid;border-bottom:none;width:623px;}#media-upload .media-item{border-bottom-width:1px;border-bottom-style:solid;min-height:36px;width:100%;}#media-upload .ui-sortable .media-item{cursor:move;}.filename{line-height:36px;padding:0 10px;overflow:hidden;}#media-upload .describe{padding:5px;width:100%;clear:both;cursor:default;}#media-upload .slidetoggle{border-top-width:1px;border-top-style:solid;}#media-upload .describe th.label{padding-top:.2em;text-align:left;min-width:120px;}#media-upload tr.align td.field{text-align:center;}#media-upload tr.image-size{margin-bottom:1em;height:3em;}#media-upload #filter{width:623px;}#media-upload #filter .subsubsub{margin:8px 0;}#filter .tablenav select{border-style:solid;border-width:1px;padding:2px;vertical-align:top;width:auto;}#media-upload .del-attachment{display:none;margin:5px 0;}.menu_order{float:right;font-size:11px;margin:10px 10px 0;}.menu_order_input{border:1px solid #ddd;font-size:10px;padding:1px;width:23px;}.ui-sortable-helper{background-color:#fff;border:1px solid #aaa;opacity:.6;filter:alpha(opacity=60);}#media-upload th.order-head{width:25%;text-align:center;}#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;border-bottom-style:solid;border-bottom-width:1px;font-family:Georgia,&quot;Times New Roman&quot;,Times,serif;font-size:1.6em;border-bottom-color:#DADADA;color:#5A5A5A;}h3.media-title{color:#5A5A5A;font-family:Georgia,&quot;Times New Roman&quot;,Times,serif;font-size:1.6em;font-weight:normal;}#gallery-settings .describe td{vertical-align:middle;height:3.5em;}#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;border:1px solid #dfdfdf;}#gallery-settings label,#gallery-settings legend{font-size:13px;color:#464646;margin-right:15px;}#gallery-settings .align .field label{margin:0 1.5em 0 0;}#gallery-settings p.ml-submit{border-top:1px solid #dfdfdf;}#gallery-settings select#columns{width:6em;}#sort-buttons{font-size:.8em;margin:3px 25px -8px 0;text-align:right;max-width:625px;}#sort-buttons a{text-decoration:none;}#sort-buttons #asc,#sort-buttons #showall{padding-left:5px;}#sort-buttons span{margin-right:25px;}
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkwpadmincssmediadevcss"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/css/media.dev.css (11964 => 11965)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/css/media.dev.css        2009-09-23 22:03:39 UTC (rev 11964)
+++ trunk/wp-admin/css/media.dev.css        2009-09-24 01:54:07 UTC (rev 11965)
</span><span class="lines">@@ -120,7 +120,7 @@
</span><span class="cx"> 
</span><span class="cx"> .describe td {
</span><span class="cx">         vertical-align: middle;
</span><del>-        padding: 0 5px 0 0;
</del><ins>+        padding: 0 5px 8px 0;
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> .describe td.A1 {
</span><span class="lines">@@ -155,10 +155,6 @@
</span><span class="cx"> 
</span><span class="cx"> /* Specific to Uploader */
</span><span class="cx"> 
</span><del>-#media-upload .media-upload-form p {
-        margin: 0 1em 1em 0;
-}
-
</del><span class="cx"> #media-upload p.ml-submit {
</span><span class="cx">         padding: 1em 0;
</span><span class="cx"> }
</span><span class="lines">@@ -211,7 +207,7 @@
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> #media-upload .describe th.label {
</span><del>-        padding-top: .5em;
</del><ins>+        padding-top: .2em;
</ins><span class="cx">         text-align: left;
</span><span class="cx">         min-width: 120px;
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkwpadminincludesimageeditphp"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/includes/image-edit.php (11964 => 11965)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/includes/image-edit.php        2009-09-23 22:03:39 UTC (rev 11964)
+++ trunk/wp-admin/includes/image-edit.php        2009-09-24 01:54:07 UTC (rev 11965)
</span><span class="lines">@@ -6,84 +6,207 @@
</span><span class="cx">  * @subpackage Administration
</span><span class="cx">  */
</span><span class="cx"> 
</span><del>-function wp_image_editor($post_id) {
</del><ins>+function wp_image_editor($post_id, $msg = false) {
</ins><span class="cx">         $nonce = wp_create_nonce(&quot;image_editor-$post_id&quot;);
</span><del>-        $image_size_opt = &quot;&lt;option value='all'&gt;&quot; . __('all image sizes') . &quot;&lt;/option&gt;\n&quot;;
-        $image_size_opt .= &quot;&lt;option value='full'&gt;&quot; . __('original image') . &quot;&lt;/option&gt;\n&quot;;
-
</del><span class="cx">         $meta = wp_get_attachment_metadata($post_id);
</span><del>-        if ( is_array($meta) &amp;&amp; is_array($meta['sizes']) ) {
-                $sizes = apply_filters('intermediate_image_sizes', array('thumbnail', 'medium', 'large'));
-                $size_names = array(
-                        'thumbnail' =&gt; __('thumbnail'),
-                        'medium' =&gt; __('medium'),
-                        'large' =&gt; __('large')
-                );
</del><ins>+        $thumb = image_get_intermediate_size($post_id, 'thumbnail');
+        $note = '';
</ins><span class="cx"> 
</span><del>-                foreach ( $sizes as $size ) {
-                        if ( array_key_exists($size, $meta['sizes']) ) {
-                                $size_name = isset($size_names[$size]) ? $size_names[$size] : $size;
-                                $image_size_opt .= &quot;&lt;option value='$size'&gt;$size_name&lt;/option&gt;\n&quot;;
</del><ins>+        if ( is_array($meta) &amp;&amp; isset($meta['width']) )
+                $big = max( $meta['width'], $meta['height'] );
+        else
+                wp_die( __('Image data does not exist. Please re-upload the image.') );
+
+        $sizer = $big &gt; 400 ? 400 / $big : 1;
+
+        $backup_sizes = get_post_meta( $post_id, '_wp_attachment_backup_sizes', true );
+        $can_restore = !empty($backup_sizes) &amp;&amp; isset($backup_sizes['full-orig']);
+
+
+        // temp convert backup sizes
+        if ( isset($meta['sizes']) &amp;&amp; is_array($meta['sizes']) ) {
+                $update = false;
+                foreach ( $meta['sizes'] as $name =&gt; $val ) {
+                        if ( strpos($name, 'backup-') === 0 ) {
+                                $m = array();
+                                preg_match('/backup-([0-9]+)-(.*)/', $name, $m);
+                                if ( !isset($backup_sizes[&quot;{$m[2]}-orig&quot;]) )
+                                        $n = &quot;{$m[2]}-orig&quot;;
+                                else
+                                        $n = &quot;{$m[2]}-{$m[1]}&quot;;
+                                $backup_sizes[$n] = $val;
+                                unset($meta['sizes'][$name]);
+                                $update = true;
</ins><span class="cx">                         }
</span><span class="cx">                 }
</span><del>-        } ?&gt;
</del><ins>+                if ( $update ) {
+                        wp_update_attachment_metadata( $post_id, $meta );
+                        update_post_meta( $post_id, '_wp_attachment_backup_sizes', $backup_sizes);
+                }
+        }
+        // end temp
</ins><span class="cx"> 
</span><ins>+
+        if ( $msg ) {
+                if ( isset($msg-&gt;error) )
+                        $note = &quot;&lt;div class='error'&gt;&lt;p&gt;$msg-&gt;error&lt;/p&gt;&lt;/div&gt;&quot;;
+                elseif ( isset($msg-&gt;msg) )
+                        $note = &quot;&lt;div class='updated'&gt;&lt;p&gt;$msg-&gt;msg&lt;/p&gt;&lt;/div&gt;&quot;;
+        }
+
+        ?&gt;
</ins><span class="cx">         &lt;div class=&quot;imgedit-wrap&quot;&gt;
</span><del>-        &lt;div id=&quot;imgedit-panel-&lt;?php echo $post_id; ?&gt;&quot;&gt;
-                &lt;div class=&quot;imgedit-menu&quot;&gt;
-                &lt;div onclick=&quot;imageEdit.crop(&lt;?php echo &quot;$post_id, '$nonce'&quot;; ?&gt;)&quot; class=&quot;imgedit-crop&quot; title=&quot;&lt;?php echo esc_attr__( 'Crop' ); ?&gt;&quot;&gt;&lt;/div&gt;&lt;?php
</del><ins>+        &lt;?php echo $note; ?&gt;
+        &lt;table id=&quot;imgedit-panel-&lt;?php echo $post_id; ?&gt;&quot;&gt;&lt;tbody&gt;
+        &lt;tr&gt;&lt;td&gt;
+        &lt;div class=&quot;imgedit-menu&quot;&gt;
+                &lt;div onclick=&quot;imageEdit.crop(&lt;?php echo &quot;$post_id, '$nonce'&quot;; ?&gt;, this)&quot; class=&quot;imgedit-crop disabled&quot; title=&quot;&lt;?php echo esc_attr__( 'Crop' ); ?&gt;&quot;&gt;&lt;/div&gt;&lt;?php
</ins><span class="cx"> 
</span><span class="cx">         if ( function_exists('imagerotate') ) { ?&gt;
</span><span class="cx"> 
</span><del>-                &lt;div onclick=&quot;imageEdit.rotate(90, &lt;?php echo &quot;$post_id, '$nonce'&quot;; ?&gt;)&quot; class=&quot;imgedit-rleft&quot; title=&quot;&lt;?php echo esc_attr__( 'Rotate couter-clockwise' ); ?&gt;&quot;&gt;&lt;/div&gt;
-                &lt;div onclick=&quot;imageEdit.rotate(-90, &lt;?php echo &quot;$post_id, '$nonce'&quot;; ?&gt;)&quot; class=&quot;imgedit-rright&quot; title=&quot;&lt;?php echo esc_attr__( 'Rotate clockwise' ); ?&gt;&quot;&gt;&lt;/div&gt;&lt;?php
</del><ins>+                &lt;div onclick=&quot;imageEdit.rotate(90, &lt;?php echo &quot;$post_id, '$nonce'&quot;; ?&gt;, this)&quot; class=&quot;imgedit-rleft&quot; title=&quot;&lt;?php echo esc_attr__( 'Rotate couter-clockwise' ); ?&gt;&quot;&gt;&lt;/div&gt;
+                &lt;div onclick=&quot;imageEdit.rotate(-90, &lt;?php echo &quot;$post_id, '$nonce'&quot;; ?&gt;, this)&quot; class=&quot;imgedit-rright&quot; title=&quot;&lt;?php echo esc_attr__( 'Rotate clockwise' ); ?&gt;&quot;&gt;&lt;/div&gt;&lt;?php
</ins><span class="cx"> 
</span><span class="cx">         } ?&gt;
</span><span class="cx"> 
</span><del>-                &lt;div onclick=&quot;imageEdit.flip(1, &lt;?php echo &quot;$post_id, '$nonce'&quot;; ?&gt;)&quot; class=&quot;imgedit-fliph&quot; title=&quot;&lt;?php echo esc_attr__( 'Flip horizontally' ); ?&gt;&quot;&gt;&lt;/div&gt;
-                &lt;div onclick=&quot;imageEdit.flip(2, &lt;?php echo &quot;$post_id, '$nonce'&quot;; ?&gt;)&quot; class=&quot;imgedit-flipv&quot; title=&quot;&lt;?php echo esc_attr__( 'Flip vertically' ); ?&gt;&quot;&gt;&lt;/div&gt;
</del><ins>+                &lt;div onclick=&quot;imageEdit.flip(1, &lt;?php echo &quot;$post_id, '$nonce'&quot;; ?&gt;, this)&quot; class=&quot;imgedit-fliph&quot; title=&quot;&lt;?php echo esc_attr__( 'Flip horizontally' ); ?&gt;&quot;&gt;&lt;/div&gt;
+                &lt;div onclick=&quot;imageEdit.flip(2, &lt;?php echo &quot;$post_id, '$nonce'&quot;; ?&gt;, this)&quot; class=&quot;imgedit-flipv&quot; title=&quot;&lt;?php echo esc_attr__( 'Flip vertically' ); ?&gt;&quot;&gt;&lt;/div&gt;
</ins><span class="cx"> 
</span><del>-                &lt;div id=&quot;image-undo-&lt;?php echo $post_id; ?&gt;&quot; onclick=&quot;imageEdit.undo(&lt;?php echo &quot;$post_id, '$nonce'&quot;; ?&gt;)&quot; class=&quot;imgedit-undo disabled&quot; title=&quot;&lt;?php echo esc_attr__( 'Undo' ); ?&gt;&quot;&gt;&lt;/div&gt;
-                &lt;div id=&quot;image-redo-&lt;?php echo $post_id; ?&gt;&quot; onclick=&quot;imageEdit.redo(&lt;?php echo &quot;$post_id, '$nonce'&quot;; ?&gt;)&quot; class=&quot;imgedit-redo disabled&quot; title=&quot;&lt;?php echo esc_attr__( 'Redo' ); ?&gt;&quot;&gt;&lt;/div&gt;
</del><ins>+                &lt;div id=&quot;image-undo-&lt;?php echo $post_id; ?&gt;&quot; onclick=&quot;imageEdit.undo(&lt;?php echo &quot;$post_id, '$nonce'&quot;; ?&gt;, this)&quot; class=&quot;imgedit-undo disabled&quot; title=&quot;&lt;?php echo esc_attr__( 'Undo' ); ?&gt;&quot;&gt;&lt;/div&gt;
+                &lt;div id=&quot;image-redo-&lt;?php echo $post_id; ?&gt;&quot; onclick=&quot;imageEdit.redo(&lt;?php echo &quot;$post_id, '$nonce'&quot;; ?&gt;, this)&quot; class=&quot;imgedit-redo disabled&quot; title=&quot;&lt;?php echo esc_attr__( 'Redo' ); ?&gt;&quot;&gt;&lt;/div&gt;
</ins><span class="cx">                 &lt;br class=&quot;clear&quot; /&gt;
</span><ins>+        &lt;/div&gt;
+
+        &lt;input type=&quot;hidden&quot; id=&quot;imgedit-sizer-&lt;?php echo $post_id; ?&gt;&quot; value=&quot;&lt;?php echo $sizer; ?&gt;&quot; /&gt;
+        &lt;input type=&quot;hidden&quot; id=&quot;imgedit-minthumb-&lt;?php echo $post_id; ?&gt;&quot; value=&quot;&lt;?php echo ( get_option('thumbnail_size_w') . ':' . get_option('thumbnail_size_h') ); ?&gt;&quot; /&gt;
+        &lt;input type=&quot;hidden&quot; id=&quot;imgedit-history-&lt;?php echo $post_id; ?&gt;&quot; value=&quot;&quot; /&gt;
+        &lt;input type=&quot;hidden&quot; id=&quot;imgedit-undone-&lt;?php echo $post_id; ?&gt;&quot; value=&quot;0&quot; /&gt;
+        &lt;input type=&quot;hidden&quot; id=&quot;imgedit-selection-&lt;?php echo $post_id; ?&gt;&quot; value=&quot;&quot; /&gt;
+        &lt;input type=&quot;hidden&quot; id=&quot;imgedit-x-&lt;?php echo $post_id; ?&gt;&quot; value=&quot;&lt;?php echo $meta['width']; ?&gt;&quot; /&gt;
+        &lt;input type=&quot;hidden&quot; id=&quot;imgedit-y-&lt;?php echo $post_id; ?&gt;&quot; value=&quot;&lt;?php echo $meta['height']; ?&gt;&quot; /&gt;
+
+        &lt;div id=&quot;imgedit-crop-&lt;?php echo $post_id; ?&gt;&quot; class=&quot;imgedit-crop-wrap&quot;&gt;
+        &lt;img id=&quot;image-preview-&lt;?php echo $post_id; ?&gt;&quot; onload=&quot;imageEdit.imgLoaded('&lt;?php echo $post_id; ?&gt;')&quot; src=&quot;&lt;?php echo admin_url('admin-ajax.php'); ?&gt;?action=imgedit-preview&amp;amp;_ajax_nonce=&lt;?php echo $nonce; ?&gt;&amp;amp;postid=&lt;?php echo $post_id; ?&gt;&amp;amp;rand=&lt;?php echo rand(1, 99999); ?&gt;&quot; /&gt;
+        &lt;/div&gt;
+
+        &lt;div class=&quot;imgedit-submit&quot;&gt;
+                &lt;input type=&quot;button&quot; onclick=&quot;imageEdit.close(&lt;?php echo &quot;$post_id, '$nonce'&quot;; ?&gt;)&quot; class=&quot;button&quot; value=&quot;&lt;?php echo esc_attr__( 'Cancel' ); ?&gt;&quot; /&gt;
+                &lt;input type=&quot;button&quot; onclick=&quot;imageEdit.save(&lt;?php echo &quot;$post_id, '$nonce'&quot;; ?&gt;)&quot; class=&quot;button-primary imgedit-submit-btn&quot; value=&quot;&lt;?php echo esc_attr__( 'Save' ); ?&gt;&quot; /&gt;
+        &lt;/div&gt;
+        &lt;/td&gt;
+
+        &lt;td class=&quot;imgedit-settings&quot;&gt;
+        &lt;div class=&quot;imgedit-group&quot;&gt;
+        &lt;div class=&quot;imgedit-group-top&quot;&gt;
+                &lt;a class=&quot;imgedit-help-toggle&quot; onclick=&quot;imageEdit.toggleHelp(this);return false;&quot; href=&quot;#&quot;&gt;&lt;strong&gt;&lt;?php _e('Scale Image'); ?&gt;&lt;/strong&gt;&lt;/a&gt;
+                &lt;div class=&quot;imgedit-help&quot;&gt;
+                &lt;p&gt;&lt;?php _e('You can proportionally scale the original image. For best results the scaling should be done before performing any other operations on it like crop, rotate, etc. Note that if you make the image larger it may become fuzzy.'); ?&gt;&lt;/p&gt;
+                &lt;p&gt;&lt;?php printf( __('Original dimensions %s'), $meta['width'] . '&amp;times;' . $meta['height'] ); ?&gt;&lt;/p&gt;
+                &lt;div class=&quot;imgedit-submit&quot;&gt;
+                &lt;span class=&quot;nowrap&quot;&gt;&lt;input type=&quot;text&quot; id=&quot;imgedit-scale-width-&lt;?php echo $post_id; ?&gt;&quot; onkeyup=&quot;imageEdit.scaleChanged(&lt;?php echo $post_id; ?&gt;, 1)&quot; onblur=&quot;imageEdit.scaleChanged(&lt;?php echo $post_id; ?&gt;, 1)&quot; style=&quot;width:4em;&quot; value=&quot;&lt;?php echo $meta['width']; ?&gt;&quot; /&gt;&amp;times;&lt;input type=&quot;text&quot; id=&quot;imgedit-scale-height-&lt;?php echo $post_id; ?&gt;&quot; onkeyup=&quot;imageEdit.scaleChanged(&lt;?php echo $post_id; ?&gt;, 0)&quot; onblur=&quot;imageEdit.scaleChanged(&lt;?php echo $post_id; ?&gt;, 0)&quot; style=&quot;width:4em;&quot; value=&quot;&lt;?php echo $meta['height']; ?&gt;&quot; /&gt;
+                &lt;span class=&quot;imgedit-scale-warn&quot; id=&quot;imgedit-scale-warn-&lt;?php echo $post_id; ?&gt;&quot;&gt;!&lt;/span&gt;&lt;/span&gt;
+                &lt;input type=&quot;button&quot; onclick=&quot;imageEdit.action(&lt;?php echo &quot;$post_id, '$nonce'&quot;; ?&gt;, 'scale')&quot; class=&quot;button-primary&quot; value=&quot;&lt;?php echo esc_attr__( 'Scale' ); ?&gt;&quot; /&gt;
</ins><span class="cx">                 &lt;/div&gt;
</span><ins>+                &lt;/div&gt;
+        &lt;/div&gt;
</ins><span class="cx"> 
</span><del>-                &lt;p&gt;
-                &lt;span id=&quot;imgedit-scale-&lt;?php echo $post_id; ?&gt;&quot;&gt;
-                        &lt;input type=&quot;checkbox&quot; onchange=&quot;imageEdit.scaleSwitched(&lt;?php echo $post_id; ?&gt;)&quot; id=&quot;imgedit-scale-switch-&lt;?php echo $post_id; ?&gt;&quot; /&gt;&lt;label for=&quot;imgedit-scale-switch-&lt;?php echo $post_id; ?&gt;&quot;&gt;Scale full size image:&lt;/label&gt;
-                        &lt;span id=&quot;imgedit-scale-values-&lt;?php echo $post_id; ?&gt;&quot;&gt;
-                                &lt;input type=&quot;text&quot; id=&quot;imgedit-scale-width-&lt;?php echo $post_id; ?&gt;&quot; onkeyup=&quot;imageEdit.scaleWidthChanged(&lt;?php echo $post_id; ?&gt;)&quot; style=&quot;width:4em;&quot; /&gt;
-                                &amp;times;
-                                &lt;input type=&quot;text&quot; id=&quot;imgedit-scale-height-&lt;?php echo $post_id; ?&gt;&quot; onkeyup=&quot;imageEdit.scaleHeightChanged(&lt;?php echo $post_id; ?&gt;)&quot; style=&quot;width:4em;&quot; /&gt;
-                        &lt;/span&gt;
-                &lt;/span&gt;
-                &lt;/p&gt;
</del><ins>+&lt;?php if ( $can_restore ) { ?&gt;
</ins><span class="cx"> 
</span><del>-                &lt;input type=&quot;hidden&quot; id=&quot;imgedit-history-&lt;?php echo $post_id; ?&gt;&quot; value=&quot;&quot; /&gt;
-                &lt;input type=&quot;hidden&quot; id=&quot;imgedit-undone-&lt;?php echo $post_id; ?&gt;&quot; value=&quot;0&quot; /&gt;
-                &lt;input type=&quot;hidden&quot; id=&quot;imgedit-selection-&lt;?php echo $post_id; ?&gt;&quot; value=&quot;&quot; /&gt;
-                &lt;input type=&quot;hidden&quot; id=&quot;imgedit-aspect-x-&lt;?php echo $post_id; ?&gt;&quot; value=&quot;&quot; /&gt;
-                &lt;input type=&quot;hidden&quot; id=&quot;imgedit-aspect-y-&lt;?php echo $post_id; ?&gt;&quot; value=&quot;&quot; /&gt;
</del><ins>+        &lt;div class=&quot;imgedit-group-top&quot;&gt;
+                &lt;a class=&quot;imgedit-help-toggle&quot; onclick=&quot;imageEdit.toggleHelp(this);return false;&quot; href=&quot;#&quot;&gt;&lt;strong&gt;&lt;?php _e('Restore Original Image'); ?&gt;&lt;/strong&gt;&lt;/a&gt;
+                &lt;div class=&quot;imgedit-help&quot;&gt;
+                &lt;p&gt;&lt;?php _e('Discard any changes and restore the original image. Previously edited copies of the image will not be deleted.'); ?&gt;&lt;/p&gt;
+                &lt;div class=&quot;imgedit-submit&quot;&gt;
+                &lt;input type=&quot;button&quot; onclick=&quot;imageEdit.action(&lt;?php echo &quot;$post_id, '$nonce'&quot;; ?&gt;, 'restore')&quot; class=&quot;button-primary&quot; value=&quot;&lt;?php echo esc_attr__( 'Restore image' ); ?&gt;&quot; &lt;?php echo $can_restore; ?&gt; /&gt;
+                &lt;/div&gt;
+                &lt;/div&gt;
+        &lt;/div&gt;
</ins><span class="cx"> 
</span><del>-                &lt;h4&gt;&lt;?php _e('Preview Image:'); ?&gt;&lt;/h4&gt;
-                &lt;div id=&quot;imgedit-crop-&lt;?php echo $post_id; ?&gt;&quot; style=&quot;position:relative;&quot;&gt;
-                &lt;img src=&quot;&lt;?php echo admin_url('admin-ajax.php') . &quot;?action=load-preview-image&amp;amp;_ajax_nonce={$nonce}&amp;amp;postid={$post_id}&amp;amp;ver=&quot; . rand(1, 99999); ?&gt;&quot; id=&quot;image-preview-&lt;?php echo $post_id; ?&gt;&quot; /&gt;
</del><ins>+&lt;?php } ?&gt;
+
+        &lt;/div&gt;
+
+        &lt;div class=&quot;imgedit-group&quot;&gt;
+        &lt;div class=&quot;imgedit-group-top&quot;&gt;
+                &lt;strong&gt;&lt;?php _e('Image Crop'); ?&gt;&lt;/strong&gt;
+                &lt;a class=&quot;imgedit-help-toggle&quot; onclick=&quot;imageEdit.toggleHelp(this);return false;&quot; href=&quot;#&quot;&gt;&lt;?php _e('(help)'); ?&gt;&lt;/a&gt;
+                &lt;div class=&quot;imgedit-help&quot;&gt;
+                &lt;p&gt;&lt;?php _e('The image can be cropped by clicking on it and dragging to select the desired part. While dragging the dimensions of the selection are displayed below.'); ?&gt;&lt;/p&gt;
+                &lt;strong&gt;&lt;?php _e('Keyboard shortcuts'); ?&gt;&lt;/strong&gt;
+                &lt;ul&gt;
+                &lt;li&gt;&lt;?php _e('Arrow: move by 10px'); ?&gt;&lt;/li&gt;
+                &lt;li&gt;&lt;?php _e('Shift + arrow: move by 1px'); ?&gt;&lt;/li&gt;
+                &lt;li&gt;&lt;?php _e('Ctrl + arrow: resize by 10px'); ?&gt;&lt;/li&gt;
+                &lt;li&gt;&lt;?php _e('Ctrl + Shift + arrow: resize by 1px'); ?&gt;&lt;/li&gt;
+                &lt;li&gt;&lt;?php _e('Shift + drag: lock aspect ratio'); ?&gt;&lt;/li&gt;
+                &lt;/ul&gt;
+
+                &lt;p&gt;&lt;strong&gt;&lt;?php _e('Crop Aspect Ratio'); ?&gt;&lt;/strong&gt;&lt;br /&gt;
+                &lt;?php _e('You can specify the crop selection aspect ratio then hold down the Shift key while dragging to lock it. The values can be 1:1 (square), 4:3, 16:9, etc. If there is a selection, specifying aspect ratio will set it immediately.'); ?&gt;&lt;/p&gt;
+
+                &lt;p&gt;&lt;strong&gt;&lt;?php _e('Crop Selection'); ?&gt;&lt;/strong&gt;&lt;br /&gt;
+                &lt;?php _e('Once started, the selection can be adjusted by entering new values (in pixels). Note that these values are scaled to approximately match the original image dimensions. The minimum selection size equals the thumbnail size as set in the Media settings.'); ?&gt;&lt;/p&gt;
</ins><span class="cx">                 &lt;/div&gt;
</span><ins>+        &lt;/div&gt;
</ins><span class="cx"> 
</span><del>-                &lt;p&gt;
-                &lt;?php _e('Apply to:'); ?&gt;
-                &lt;select id=&quot;imgedit-save-target-&lt;?php echo $post_id; ?&gt;&quot; onchange=&quot;imageEdit.targetChanged(&lt;?php echo $post_id; ?&gt;)&quot;&gt;
-                &lt;?php echo $image_size_opt; ?&gt;
-                &lt;/select&gt;
-                &lt;/p&gt;
</del><ins>+        &lt;p&gt;
+                &lt;?php _e('Aspect ratio:'); ?&gt;
+                &lt;span  class=&quot;nowrap&quot;&gt;
+                &lt;input type=&quot;text&quot; id=&quot;imgedit-crop-width-&lt;?php echo $post_id; ?&gt;&quot; onkeyup=&quot;imageEdit.setRatioSelection(&lt;?php echo $post_id; ?&gt;, 0, this)&quot; style=&quot;width:3em;&quot; /&gt;
+                :
+                &lt;input type=&quot;text&quot; id=&quot;imgedit-crop-height-&lt;?php echo $post_id; ?&gt;&quot; onkeyup=&quot;imageEdit.setRatioSelection(&lt;?php echo $post_id; ?&gt;, 1, this)&quot; style=&quot;width:3em;&quot; /&gt;
+                &lt;/span&gt;
+        &lt;/p&gt;
</ins><span class="cx"> 
</span><del>-                &lt;p&gt;
-                &lt;input type=&quot;button&quot; onclick=&quot;imageEdit.close(&lt;?php echo &quot;$post_id, '$nonce'&quot;; ?&gt;)&quot; class=&quot;button&quot; value=&quot;&lt;?php echo esc_attr__( 'Close' ); ?&gt;&quot; /&gt;
-                &lt;input type=&quot;button&quot; onclick=&quot;imageEdit.save(&lt;?php echo &quot;$post_id, '$nonce'&quot;; ?&gt;)&quot; class=&quot;button-primary&quot; value=&quot;&lt;?php echo esc_attr__( 'Save' ); ?&gt;&quot; /&gt;
-                &lt;/p&gt;
-                &lt;script type=&quot;text/javascript&quot;&gt;imageEdit.targetChanged(&lt;?php echo $post_id; ?&gt;);&lt;/script&gt;
</del><ins>+        &lt;p id=&quot;imgedit-crop-sel-&lt;?php echo $post_id; ?&gt;&quot;&gt;
+                &lt;?php _e('Selection:'); ?&gt;
+                &lt;span  class=&quot;nowrap&quot;&gt;
+                &lt;input type=&quot;text&quot; id=&quot;imgedit-sel-width-&lt;?php echo $post_id; ?&gt;&quot; onkeyup=&quot;imageEdit.setNumSelection(&lt;?php echo $post_id; ?&gt;)&quot; style=&quot;width:4em;&quot; /&gt;
+                :
+                &lt;input type=&quot;text&quot; id=&quot;imgedit-sel-height-&lt;?php echo $post_id; ?&gt;&quot; onkeyup=&quot;imageEdit.setNumSelection(&lt;?php echo $post_id; ?&gt;)&quot; style=&quot;width:4em;&quot; /&gt;
+                &lt;/span&gt;
+        &lt;/p&gt;
</ins><span class="cx">         &lt;/div&gt;
</span><ins>+
+        &lt;?php if ( $thumb ) {
+                $thumb_img = wp_constrain_dimensions( $thumb['width'], $thumb['height'], 160, 120 );
+        ?&gt;
+
+        &lt;div class=&quot;imgedit-group imgedit-applyto&quot;&gt;
+        &lt;div class=&quot;imgedit-group-top&quot;&gt;
+                &lt;strong&gt;&lt;?php _e('Thumbnail Settings'); ?&gt;&lt;/strong&gt;
+                &lt;a class=&quot;imgedit-help-toggle&quot; onclick=&quot;imageEdit.toggleHelp(this);return false;&quot; href=&quot;#&quot;&gt;&lt;?php _e('(help)'); ?&gt;&lt;/a&gt;
+                &lt;p class=&quot;imgedit-help&quot;&gt;&lt;?php _e('The thumbnail image can be cropped differently. For example it can be square or contain only a portion of the original image to showcase it better. Here you can select whether to apply changes to all image sizes or make the thumbnail different.'); ?&gt;&lt;/p&gt;
+        &lt;/div&gt;
+
+        &lt;p&gt;
+                &lt;img src=&quot;&lt;?php echo $thumb['url']; ?&gt;&quot; width=&quot;&lt;?php echo $thumb_img[0]; ?&gt;&quot; height=&quot;&lt;?php echo $thumb_img[1]; ?&gt;&quot; class=&quot;imgedit-size-preview&quot; alt=&quot;&quot; /&gt;&lt;br /&gt;&lt;?php _e('Current thumbnail'); ?&gt;
+        &lt;/p&gt;
+
+        &lt;p id=&quot;imgedit-save-target-&lt;?php echo $post_id; ?&gt;&quot;&gt;
+                &lt;strong&gt;&lt;?php _e('Apply changes to:'); ?&gt;&lt;/strong&gt;&lt;br /&gt;
+
+                &lt;label class=&quot;imgedit-label&quot;&gt;
+                &lt;input type=&quot;radio&quot; name=&quot;imgedit-target-&lt;?php echo $post_id; ?&gt;&quot; value=&quot;all&quot; checked=&quot;checked&quot; /&gt;
+                &lt;?php _e('All image sizes'); ?&gt;&lt;/label&gt;
+
+                &lt;label class=&quot;imgedit-label&quot;&gt;
+                &lt;input type=&quot;radio&quot; name=&quot;imgedit-target-&lt;?php echo $post_id; ?&gt;&quot; value=&quot;thumbnail&quot; /&gt;
+                &lt;?php _e('Thumbnail'); ?&gt;&lt;/label&gt;
+
+                &lt;label class=&quot;imgedit-label&quot;&gt;
+                &lt;input type=&quot;radio&quot; name=&quot;imgedit-target-&lt;?php echo $post_id; ?&gt;&quot; value=&quot;nothumb&quot; /&gt;
+                &lt;?php _e('All sizes except thumbnail'); ?&gt;&lt;/label&gt;
+        &lt;/p&gt;
+        &lt;/div&gt;
+
+        &lt;?php } ?&gt;
+
+        &lt;/td&gt;&lt;/tr&gt;
+        &lt;/tbody&gt;&lt;/table&gt;
</ins><span class="cx">         &lt;div class=&quot;imgedit-wait&quot; id=&quot;imgedit-wait-&lt;?php echo $post_id; ?&gt;&quot;&gt;&lt;/div&gt;
</span><ins>+        &lt;script type=&quot;text/javascript&quot;&gt;imageEdit.init(&lt;?php echo $post_id; ?&gt;);&lt;/script&gt;
+        &lt;div class=&quot;hidden&quot; id=&quot;imgedit-leaving-&lt;?php echo $post_id; ?&gt;&quot;&gt;&lt;?php _e(&quot;There are unsaved changes that will be lost.  'OK' to continue, 'Cancel' to return to the Image Editor.&quot;); ?&gt;&lt;/div&gt;
</ins><span class="cx">         &lt;/div&gt;
</span><span class="cx"> &lt;?php
</span><span class="cx"> }
</span><span class="lines">@@ -109,7 +232,7 @@
</span><span class="cx">                         break;
</span><span class="cx">         }
</span><span class="cx">         if ( is_resource($image) ) {
</span><del>-                $image = apply_filters('load_image_to_edit', $image, $post-&gt;ID); // allows plugins to remove a watermark
</del><ins>+                $image = apply_filters('load_image_to_edit', $image, $post-&gt;ID);
</ins><span class="cx">                 if ( function_exists('imagealphablending') &amp;&amp; function_exists('imagesavealpha') ) {
</span><span class="cx">                         imagealphablending($image, false);
</span><span class="cx">                         imagesavealpha($image, true);
</span><span class="lines">@@ -268,7 +391,6 @@
</span><span class="cx">         return $img;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-
</del><span class="cx"> function stream_preview_image($post_id) {
</span><span class="cx">         $post = get_post($post_id);
</span><span class="cx">         @ini_set('memory_limit', '256M');
</span><span class="lines">@@ -297,47 +419,113 @@
</span><span class="cx">         return true;
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+function wp_restore_image($post_id) {
+        $meta = wp_get_attachment_metadata($post_id);
+        $backup_sizes = get_post_meta( $post_id, '_wp_attachment_backup_sizes', true );
+        $restored = false;
+        $msg = '';
</ins><span class="cx"> 
</span><ins>+        if ( !is_array($backup_sizes) ) {
+                $msg-&gt;error = __('Cannot load image metadata.');
+                return $msg;
+        }
+
+        $parts = pathinfo($meta['file']);
+        $suffix = time() . rand(100, 999);
+        $default_sizes = apply_filters( 'intermediate_image_sizes', array('large', 'medium', 'thumbnail') );
+        $default_sizes[] = 'full';
+
+        foreach ( $default_sizes as $default_size ) {
+                if ( isset($backup_sizes[&quot;$default_size-orig&quot;]) ) {
+                        $data = $backup_sizes[&quot;$default_size-orig&quot;];
+                        if ( 'full' == $default_size ) {
+                                $backup_sizes[&quot;full-$suffix&quot;] = array('width' =&gt; $meta['width'], 'height' =&gt; $meta['height'], 'file' =&gt; $parts['basename']);
+
+                                $meta['file'] = path_join($parts['dirname'], $data['file']);
+                                $meta['width'] = $data['width'];
+                                $meta['height'] = $data['height'];
+
+                                list ( $uwidth, $uheight ) = wp_shrink_dimensions($meta['width'], $meta['height']);
+                                $meta['hwstring_small'] = &quot;height='$uheight' width='$uwidth'&quot;;
+                                $restored = update_attached_file($post_id, $meta['file']);
+                        } else {
+                                if ( isset($meta['sizes'][$default_size]) )
+                                        $backup_sizes[&quot;$default_size-{$suffix}&quot;] = $meta['sizes'][$default_size];
+
+                                $meta['sizes'][$default_size] = $data;
+                        }
+                }
+        }
+
+        if ( !wp_update_attachment_metadata($post_id, $meta) || !update_post_meta( $post_id, '_wp_attachment_backup_sizes', $backup_sizes) ) {
+                $msg-&gt;error = __('Cannot save image metadata.');
+                return $msg;
+        }
+
+        if ( !$restored )
+                $msg-&gt;error = __('Image metadata is inconsistent.');
+        else
+                $msg-&gt;msg = __('Image restored successfully.');
+
+        return $msg;
+}
+
</ins><span class="cx"> function wp_save_image($post_id) {
</span><del>-        $msg = '';
-        $success = $delete = $full_resized = false;
</del><ins>+        $return = '';
+        $success = $delete = $scaled = $nocrop = false;
</ins><span class="cx">         $post = get_post($post_id);
</span><span class="cx">         @ini_set('memory_limit', '256M');
</span><span class="cx">         $img = load_image_to_edit($post);
</span><span class="cx"> 
</span><del>-        if ( !is_resource($img) )
-                return 'error=' . __('Unable to create new image.');
</del><ins>+        if ( !is_resource($img) ) {
+                $return-&gt;error = esc_js( __('Unable to create new image.') );
+                return $return;
+        }
</ins><span class="cx"> 
</span><span class="cx">         $fwidth = !empty($_REQUEST['fwidth']) ? intval($_REQUEST['fwidth']) : 0;
</span><span class="cx">         $fheight = !empty($_REQUEST['fheight']) ? intval($_REQUEST['fheight']) : 0;
</span><span class="cx">         $target = !empty($_REQUEST['target']) ? preg_replace('/[^a-z0-9_-]+/i', '', $_REQUEST['target']) : '';
</span><ins>+        $scale = !empty($_REQUEST['do']) &amp;&amp; 'scale' == $_REQUEST['do'];
</ins><span class="cx"> 
</span><del>-        if ( !empty($_REQUEST['history']) ) {
</del><ins>+        if ( $scale &amp;&amp; $fwidth &gt; 0 &amp;&amp; $fheight &gt; 0 ) {
+                $sX = imagesx($img);
+                $sY = imagesy($img);
+
+                // check if it has roughly the same w / h ratio
+                if ( round($sX / $sY, 2) == round($fwidth / $fheight, 2) ) {
+                        // scale the full size image
+                        $dst = wp_imagecreatetruecolor($fwidth, $fheight);
+                        if ( imagecopyresampled( $dst, $img, 0, 0, 0, 0, $fwidth, $fheight, $sX, $sY ) ) {
+                                imagedestroy($img);
+                                $img = $dst;
+                                $scaled = true;
+                        }
+                }
+
+                if ( !$scaled ) {
+                        $return-&gt;error = esc_js( __('Error while saving the scaled image. Please reload the page and try again.') );
+                        return $return;
+                }
+        } elseif ( !empty($_REQUEST['history']) ) {
</ins><span class="cx">                 $changes = json_decode( stripslashes($_REQUEST['history']) );
</span><span class="cx">                 if ( $changes )
</span><span class="cx">                         $img = image_edit_apply_changes($img, $changes);
</span><ins>+        } else {
+                $return-&gt;error = esc_js( __('Nothing to save, the image has not changed.') );
+                return $return;
</ins><span class="cx">         }
</span><span class="cx"> 
</span><del>-        if ( $fwidth &gt; 0 &amp;&amp; $fheight &gt; 0 ) {
-                // scale the full size image
-                $dst = wp_imagecreatetruecolor($fwidth, $fheight);
-                if ( imagecopyresampled( $dst, $img, 0, 0, 0, 0, $fwidth, $fheight, imagesx($img), imagesy($img) ) ) {
-                        imagedestroy($img);
-                        $img = $dst;
-                        $full_resized = true;
-                }
</del><ins>+        $meta = wp_get_attachment_metadata($post_id);
+        $backup_sizes = get_post_meta( $post-&gt;ID, '_wp_attachment_backup_sizes', true );
+
+        if ( !is_array($meta) ) {
+                $return-&gt;error = esc_js( __('Image data does not exist. Please re-upload the image.') );
+                return $return;
</ins><span class="cx">         }
</span><span class="cx"> 
</span><del>-        if ( !$changes &amp;&amp; !$full_resized )
-                return 'error=' . __('Nothing to save, the image is not changed.');
</del><ins>+        if ( !is_array($backup_sizes) )
+                $backup_sizes = array();
</ins><span class="cx"> 
</span><del>-        $meta = wp_get_attachment_metadata($post_id, false, false);
-        if ( !is_array($meta) )
-                $meta = array();
-
-        if ( !isset($meta['sizes']) || !is_array($meta['sizes']) )
-                $meta['sizes'] = array();
-
</del><span class="cx">         // generate new filename
</span><span class="cx">         $path = get_attached_file($post_id);
</span><span class="cx">         $path_parts = pathinfo52( $path );
</span><span class="lines">@@ -356,11 +544,14 @@
</span><span class="cx">         }
</span><span class="cx"> 
</span><span class="cx">         // save the full-size file, also needed to create sub-sizes
</span><del>-        if ( !wp_save_image_file($new_path, $img, $post-&gt;post_mime_type, $post_id) )
-                return 'error=' . __('Unable to save the image.');
</del><ins>+        if ( !wp_save_image_file($new_path, $img, $post-&gt;post_mime_type, $post_id) ) {
+                $return-&gt;error = esc_js( __('Unable to save the image.') );
+                return $return;
+        }
</ins><span class="cx"> 
</span><del>-        if ( 'full' == $target || 'all' == $target || $full_resized ) {
-                $meta['sizes'][&quot;backup-{$suffix}-full&quot;] = array('width' =&gt; $meta['width'], 'height' =&gt; $meta['height'], 'file' =&gt; $path_parts['basename']);
</del><ins>+        if ( 'nothumb' == $target || 'all' == $target || $scaled ) {
+                $tag = !isset($backup_sizes['full-orig']) ? 'full-orig' : &quot;full-$suffix&quot;;
+                $backup_sizes[$tag] = array('width' =&gt; $meta['width'], 'height' =&gt; $meta['height'], 'file' =&gt; $path_parts['basename']);
</ins><span class="cx"> 
</span><span class="cx">                 $success = update_attached_file($post_id, $new_path);
</span><span class="cx">                 $meta['file'] = get_attached_file($post_id, true); // get the path unfiltered
</span><span class="lines">@@ -370,21 +561,28 @@
</span><span class="cx">                 list ( $uwidth, $uheight ) = wp_shrink_dimensions($meta['width'], $meta['height']);
</span><span class="cx">                 $meta['hwstring_small'] = &quot;height='$uheight' width='$uwidth'&quot;;
</span><span class="cx"> 
</span><del>-                if ( $success &amp;&amp; $target == 'all' )
</del><ins>+                if ( $success &amp;&amp; ('nothumb' == $target || 'all' == $target) ) {
</ins><span class="cx">                         $sizes = apply_filters( 'intermediate_image_sizes', array('large', 'medium', 'thumbnail') );
</span><ins>+                        if ( 'nothumb' == $target )
+                                $sizes = array_diff( $sizes, array('thumbnail') );
+                }
</ins><span class="cx"> 
</span><del>-                $msg .= &quot;full={$meta['width']}x{$meta['height']}!&quot;;
-        } elseif ( array_key_exists($target, $meta['sizes']) ) {
-                $sizes = array( $target );
-                $success = $delete = true;
</del><ins>+                $return-&gt;fw = $meta['width'];
+                $return-&gt;fh = $meta['height'];
+        } elseif ( 'thumbnail' == $target ) {
+                $sizes = array( 'thumbnail' );
+                $success = $delete = $nocrop = true;
</ins><span class="cx">         }
</span><span class="cx"> 
</span><span class="cx">         if ( isset($sizes) ) {
</span><span class="cx">                 foreach ( $sizes as $size ) {
</span><del>-                        if ( isset($meta['sizes'][$size]) )
-                                $meta['sizes'][&quot;backup-{$suffix}-$size&quot;] = $meta['sizes'][$size];
</del><ins>+                        if ( isset($meta['sizes'][$size]) ) {
+                                $tag = !isset($backup_sizes[&quot;$size-orig&quot;]) ? &quot;$size-orig&quot; : &quot;$size-$suffix&quot;;
+                                $backup_sizes[$tag] = $meta['sizes'][$size];
+                        }
</ins><span class="cx"> 
</span><del>-                        $resized = image_make_intermediate_size($new_path, get_option(&quot;{$size}_size_w&quot;), get_option(&quot;{$size}_size_h&quot;), get_option(&quot;{$size}_crop&quot;) );
</del><ins>+                        $crop = $nocrop ? false : get_option(&quot;{$size}_crop&quot;);
+                        $resized = image_make_intermediate_size($new_path, get_option(&quot;{$size}_size_w&quot;), get_option(&quot;{$size}_size_h&quot;), $crop );
</ins><span class="cx"> 
</span><span class="cx">                         if ( $resized )
</span><span class="cx">                                 $meta['sizes'][$size] = $resized;
</span><span class="lines">@@ -395,10 +593,13 @@
</span><span class="cx"> 
</span><span class="cx">         if ( $success ) {
</span><span class="cx">                 wp_update_attachment_metadata($post_id, $meta);
</span><ins>+                update_post_meta( $post_id, '_wp_attachment_backup_sizes', $backup_sizes);
</ins><span class="cx"> 
</span><del>-                if ( $target == 'thumbnail' || $target == 'all' || ( $target == 'full' &amp;&amp; !array_key_exists('thumbnail', $meta['sizes']) ) ) {
-                        if ( $thumb_url = get_attachment_icon_src($post_id) )
-                                $msg .= &quot;thumbnail={$thumb_url[0]}&quot;;
</del><ins>+                if ( $target == 'thumbnail' || $target == 'all' ) {
+                        if ( $thumb = $meta['sizes']['thumbnail'] ) {
+                                $file_url = wp_get_attachment_url($post_id);
+                                $return-&gt;thumbnail = path_join( dirname($file_url), $thumb['file'] );
+                        }
</ins><span class="cx">                 }
</span><span class="cx">         } else {
</span><span class="cx">                 $delete = true;
</span><span class="lines">@@ -410,6 +611,8 @@
</span><span class="cx">         }
</span><span class="cx"> 
</span><span class="cx">         imagedestroy($img);
</span><del>-        return $msg;
</del><ins>+
+        $return-&gt;msg = esc_js( __('Image saved') );
+        return $return;
</ins><span class="cx"> }
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkwpadminincludesmediaphp"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/includes/media.php (11964 => 11965)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/includes/media.php        2009-09-23 22:03:39 UTC (rev 11964)
+++ trunk/wp-admin/includes/media.php        2009-09-24 01:54:07 UTC (rev 11965)
</span><span class="lines">@@ -249,7 +249,7 @@
</span><span class="cx">  */
</span><span class="cx"> function media_handle_sideload($file_array, $post_id, $desc = null, $post_data = array()) {
</span><span class="cx">         $overrides = array('test_form'=&gt;false);
</span><del>-        
</del><ins>+
</ins><span class="cx">         $file = wp_handle_sideload($file_array, $overrides);
</span><span class="cx">         if ( isset($file['error']) )
</span><span class="cx">                 return new WP_Error( 'upload_error', $file['error'] );
</span><span class="lines">@@ -522,7 +522,7 @@
</span><span class="cx">         if (!empty($file) ) {
</span><span class="cx">                 // Download file to temp location
</span><span class="cx">                 $tmp = download_url($file);
</span><del>-                
</del><ins>+
</ins><span class="cx">                 // Set variables for storage
</span><span class="cx">                 // fix file filename for query strings
</span><span class="cx">                 preg_match('/[^\?]+\.(jpg|JPG|jpe|JPE|jpeg|JPEG|gif|GIF|png|PNG)/', $file, $matches);
</span><span class="lines">@@ -534,18 +534,18 @@
</span><span class="cx">                         @unlink($file_array['tmp_name']);
</span><span class="cx">                         $file_array['tmp_name'] = '';
</span><span class="cx">                 }
</span><del>-                
</del><ins>+
</ins><span class="cx">                 // do the validation and storage stuff
</span><span class="cx">                 $id = media_handle_sideload($file_array, $post_id, @$desc);
</span><span class="cx">                 $src = $id;
</span><del>-                
</del><ins>+
</ins><span class="cx">                 // If error storing permanently, unlink
</span><span class="cx">                 if ( is_wp_error($id) ) {
</span><span class="cx">                         @unlink($file_array['tmp_name']);
</span><span class="cx">                         return $id;
</span><span class="cx">                 }
</span><span class="cx">         }
</span><del>-        
</del><ins>+
</ins><span class="cx">         // Finally check to make sure the file has been saved, then return the html
</span><span class="cx">         if ( !empty($src) ) {
</span><span class="cx">                 $alt = @$desc;
</span><span class="lines">@@ -1167,7 +1167,7 @@
</span><span class="cx">         $image_edit_button = '';
</span><span class="cx">         if ( gd_edit_image_support($post-&gt;post_mime_type) ) {
</span><span class="cx">                 $nonce = wp_create_nonce(&quot;image_editor-$post-&gt;ID&quot;);
</span><del>-                $image_edit_button = &quot;&lt;tr&gt;&lt;td class='A1B1'&gt;&lt;input type='button' id='imgedit-open-btn-{$post-&gt;ID}' onclick='imageEdit.open($post-&gt;ID, \&quot;$nonce\&quot;)' class='button' value='&quot; . esc_attr__( 'Edit image' ) . &quot;' /&gt; &lt;img src='images/wpspin_light.gif' class='imgedit-wait-spin' alt='' /&gt;&lt;/td&gt;&lt;/tr&gt;&quot;;
</del><ins>+                $image_edit_button = &quot;&lt;input type='button' id='imgedit-open-btn-{$post-&gt;ID}' onclick='imageEdit.open($post-&gt;ID, \&quot;$nonce\&quot;)' class='button' value='&quot; . esc_attr__( 'Edit image' ) . &quot;' /&gt; &lt;img src='images/wpspin_light.gif' class='imgedit-wait-spin' alt='' /&gt;&quot;;
</ins><span class="cx">         }
</span><span class="cx"> 
</span><span class="cx">         $item = &quot;
</span><span class="lines">@@ -1178,16 +1178,17 @@
</span><span class="cx">         &lt;table class='slidetoggle describe $class'&gt;
</span><span class="cx">                 &lt;thead class='media-item-info' id='media-head-$post-&gt;ID'&gt;
</span><span class="cx">                 &lt;tr&gt;
</span><del>-                        &lt;td class='A1B1' rowspan='5'&gt;&lt;img class='thumbnail' src='$thumb_url' alt='' /&gt;&lt;/td&gt;
</del><ins>+                        &lt;td class='A1B1' id='thumbnail-head-$post-&gt;ID' rowspan='5'&gt;&lt;img class='thumbnail' src='$thumb_url' alt='' /&gt;&lt;/td&gt;
</ins><span class="cx">                         &lt;td&gt;$filename&lt;/td&gt;
</span><span class="cx">                 &lt;/tr&gt;
</span><span class="cx">                 &lt;tr&gt;&lt;td&gt;$post-&gt;post_mime_type&lt;/td&gt;&lt;/tr&gt;
</span><span class="cx">                 &lt;tr&gt;&lt;td&gt;&quot; . mysql2date($post-&gt;post_date, get_option('time_format')) . &quot;&lt;/td&gt;&lt;/tr&gt;
</span><span class="cx">                 &lt;tr&gt;&lt;td&gt;&quot; . apply_filters('media_meta', $media_dims, $post) . &quot;&lt;/td&gt;&lt;/tr&gt;
</span><del>-                $image_edit_button
</del><ins>+                &lt;tr&gt;&lt;td class='A1B1'&gt;$image_edit_button&lt;/td&gt;&lt;/tr&gt;
</ins><span class="cx">                 &lt;/thead&gt;
</span><span class="cx">                 &lt;tbody&gt;
</span><del>-                &lt;tr&gt;&lt;td style='display:none' colspan='2' id='image-editor-$post-&gt;ID'&gt;&lt;/td&gt;&lt;/tr&gt;\n&quot;;
</del><ins>+                &lt;tr&gt;&lt;td colspan='2' class='imgedit-response' id='imgedit-response-$post-&gt;ID'&gt;&lt;/td&gt;&lt;/tr&gt;
+                &lt;tr&gt;&lt;td style='display:none' colspan='2' class='image-editor' id='image-editor-$post-&gt;ID'&gt;&lt;/td&gt;&lt;/tr&gt;\n&quot;;
</ins><span class="cx"> 
</span><span class="cx">         $defaults = array(
</span><span class="cx">                 'input'      =&gt; 'text',
</span></span></pre></div>
<a id="trunkwpadminjsimageeditdevjs"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/js/image-edit.dev.js (11964 => 11965)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/js/image-edit.dev.js        2009-09-23 22:03:39 UTC (rev 11964)
+++ trunk/wp-admin/js/image-edit.dev.js        2009-09-24 01:54:07 UTC (rev 11965)
</span><span class="lines">@@ -3,38 +3,50 @@
</span><span class="cx"> (function($) {
</span><span class="cx"> imageEdit = {
</span><span class="cx">         iasapi : {},
</span><ins>+        hold : {},
+        postid : '',
</ins><span class="cx"> 
</span><span class="cx">         intval : function(f) {
</span><span class="cx">                 return f | 0;
</span><span class="cx">         },
</span><span class="cx"> 
</span><del>-        setState : function(el, s) {
-                if ( s )
-                        el.removeAttr('disabled');
-                else
-                        el.attr('disabled', 'disabled');
-        },
-
-        setClass : function(el, c) {
-                if ( c )
</del><ins>+        setDisabled : function(el, s) {
+                if ( s ) {
</ins><span class="cx">                         el.removeClass('disabled');
</span><del>-                else
</del><ins>+                        $('input', el).removeAttr('disabled');
+                } else {
</ins><span class="cx">                         el.addClass('disabled');
</span><ins>+                        $('input', el).attr('disabled', 'disabled');
+                }
</ins><span class="cx">         },
</span><span class="cx"> 
</span><del>-        gcd : function(a, b) {
-                var r;
-                if ( a == 0 || b == 0 )
-                        return 0;
-                else if ( a == b )
-                        return a;
-                else {
-                        do {
-                                r = a % b;
-                                a = b; b = r;
-                        } while ( r != 0 );
-                        return a;
-                }
</del><ins>+        init : function(postid, nonce) {
+                var t = this, old = $('#image-editor-' + t.postid),
+                        x = t.intval( $('#imgedit-x-' + postid).val() ),
+                        y = t.intval( $('#imgedit-y-' + postid).val() );
+
+                if ( t.postid != postid &amp;&amp; old.length )
+                        t.close(t.postid);
+
+                t.hold['w'] = t.hold['ow'] = x;
+                t.hold['h'] = t.hold['oh'] = y;
+                t.hold['xy_ratio'] = x / y;
+                t.hold['sizer'] = parseFloat( $('#imgedit-sizer-' + postid).val() );
+                t.postid = postid;
+                $('#imgedit-response-' + postid).empty();
+
+                $('input[type=&quot;text&quot;]', '#imgedit-panel-' + postid).keypress(function(e) {
+                        var k = e.keyCode;
+
+                        if ( 36 &lt; k &amp;&amp; k &lt; 41 )
+                                $(this).blur()
+
+                        if ( 13 == k ) {
+                                e.preventDefault();
+                                e.stopPropagation();
+                                return false;
+                        }
+                });
</ins><span class="cx">         },
</span><span class="cx"> 
</span><span class="cx">         toggleEditor : function(postid, toggle) {
</span><span class="lines">@@ -43,243 +55,256 @@
</span><span class="cx">                 if ( toggle )
</span><span class="cx">                         wait.height( $('#imgedit-panel-' + postid).height() ).fadeIn('fast');
</span><span class="cx">                 else
</span><del>-                        wait.height(500).fadeOut('fast');
</del><ins>+                        wait.fadeOut('fast');
</ins><span class="cx">         },
</span><span class="cx"> 
</span><del>-        isChecked : function(chkbox) {
-                return ( !chkbox.attr('disabled') &amp;&amp; chkbox[0].checked );
</del><ins>+        toggleHelp : function(el) {
+                $(el).siblings('.imgedit-help').slideToggle('fast');
+                return false;
</ins><span class="cx">         },
</span><span class="cx"> 
</span><del>-        getAspect : function(postid) {
-                var enable = this.isChecked( $('#imgedit-scale-switch-' + postid) ), X, Y;
-
-                if ( enable ) {
-                        X = this.intval( $('#imgedit-aspect-x-' + postid).val() );
-                        Y = this.intval( $('#imgedit-aspect-y-' + postid).val() );
-                        return X / Y;
-                } else {
-                        return 0;
-                }
</del><ins>+        getTarget : function(postid) {
+                return $('input:checked', '#imgedit-save-target-' + postid).val() || 'all';
</ins><span class="cx">         },
</span><span class="cx"> 
</span><del>-        scaleWidthChanged : function(postid) {
-                var src = $('#imgedit-scale-width-' + postid), aspect;
</del><ins>+        scaleChanged : function(postid, x) {
+                var w = $('#imgedit-scale-width-' + postid), h = $('#imgedit-scale-height-' + postid),
+                warn = $('#imgedit-scale-warn-' + postid), w1 = '', h1 = '';
</ins><span class="cx"> 
</span><del>-                if ( !src.attr('disabled') ) {
-                        aspect = this.getAspect(postid);
-
-                        if ( aspect != 0 )
-                                $('#imgedit-scale-height-' + postid).val( (src.val() != '') ? this.intval( src.val() / aspect ) : '' );
</del><ins>+                if ( x ) {
+                        h1 = (w.val() != '') ? this.intval( w.val() / this.hold['xy_ratio'] ) : '';
+                        h.val( h1 );
+                } else {
+                        w1 = (h.val() != '') ? this.intval( h.val() * this.hold['xy_ratio'] ) : '';
+                        w.val( w1 );
</ins><span class="cx">                 }
</span><del>-        },
</del><span class="cx"> 
</span><del>-        scaleHeightChanged : function(postid) {
-                var src = $('#imgedit-scale-height-' + postid), aspect;
-                if ( !src.attr('disabled') ) {
-                        aspect = this.getAspect(postid);
-                        if ( aspect != 0 )
-                                $('#imgedit-scale-width-' + postid).val( (src.val() != '') ? this.intval(src.val() * aspect) : '' );
-                }
</del><ins>+                if ( ( h1 &amp;&amp; h1 &gt; this.hold['oh'] ) || ( w1 &amp;&amp; w1 &gt; this.hold['ow'] ) )
+                        warn.css('visibility', 'visible');
+                else
+                        warn.css('visibility', 'hidden');
</ins><span class="cx">         },
</span><span class="cx"> 
</span><del>-        setDefaultAspect : function(postid) {
-                var t = this, g, host = $('#image-preview-' + postid),
-                        X = host.attr('width'), Y = host.attr('height');
</del><ins>+        getSelRatio : function(postid) {
+                var x = this.hold['w'], y = this.hold['h'],
+                        X = this.intval( $('#imgedit-crop-width-' + postid).val() ),
+                        Y = this.intval( $('#imgedit-crop-height-' + postid).val() );
</ins><span class="cx"> 
</span><del>-                while( (g = t.gcd(X, Y) ) &gt; 1) {
-                        X = t.intval( Math.ceil(X / g) );
-                        Y = t.intval( Math.ceil(Y / g) );
-                }
</del><ins>+                if ( X &amp;&amp; Y )
+                        return X + ':' + Y;
</ins><span class="cx"> 
</span><del>-                if ( X &gt; 10 &amp;&amp; Y &gt; 10 ) {
-                        while ( X &gt; 10 &amp;&amp; Y &gt; 10 ) {
-                                X = t.intval( Math.ceil(X / 10) );
-                                Y = t.intval( Math.ceil(Y / 10) );
-                        }
-                        while( ( g = t.gcd(X, Y) ) &gt; 1) {
-                                X = t.intval( Math.ceil(X / g) );
-                                Y = t.intval( Math.ceil(Y / g) );
-                        }
-                }
-                $('#imgedit-aspect-x-' + postid).val(X);
-                $('#imgedit-aspect-y-' + postid).val(Y);
</del><ins>+                if ( x &amp;&amp; y )
+                        return x + ':' + y;
+
+                return '1:1';
</ins><span class="cx">         },
</span><span class="cx"> 
</span><span class="cx">         filterHistory : function(postid) {
</span><span class="cx">                 // apply undo state to history
</span><del>-                var history = $('#imgedit-history-' + postid).val(), pop;
</del><ins>+                var history = $('#imgedit-history-' + postid).val(), pop, n, o, i, op = [];
+
</ins><span class="cx">                 if ( history != '' ) {
</span><ins>+                        history = JSON.parse(history);
</ins><span class="cx">                         pop = this.intval( $('#imgedit-undone-' + postid).val() );
</span><span class="cx">                         if ( pop &gt; 0 ) {
</span><del>-                                history = JSON.parse(history);
</del><span class="cx">                                 while ( pop &gt; 0 ) {
</span><span class="cx">                                         history.pop();
</span><span class="cx">                                         pop--;
</span><span class="cx">                                 }
</span><del>-                                history = JSON.stringify(history);
</del><span class="cx">                         }
</span><ins>+
+                        if ( !history.length ) {
+                                this.newDims(postid, this.hold['ow'], this.hold['oh']);
+                                return '';
+                        }
+
+                        // restore
+                        o = history[history.length - 1];
+                        if ( o.hasOwnProperty('c') ) {
+                                this.newDims(postid, o.c.fw, o.c.fh);
+                        } else if ( o.hasOwnProperty('r') ) {
+                                this.newDims(postid, o.r.fw, o.r.fh);
+                        } else if ( o.hasOwnProperty('f') ) {
+                                this.newDims(postid, o.f.fw, o.f.fh);
+                        }
+
+                        // filter the values
+                        for ( n in history ) {
+                                i = history[n];
+                                if ( i.hasOwnProperty('c') ) {
+                                        op[n] = { 'c': { 'x': i.c.x, 'y': i.c.y, 'w': i.c.w, 'h': i.c.h } };
+                                } else if ( i.hasOwnProperty('r') ) {
+                                        op[n] = { 'r': i.r.r };
+                                } else if ( i.hasOwnProperty('f') ) {
+                                        op[n] = { 'f': i.f.f };
+                                }
+                        }
+                        return JSON.stringify(op);
</ins><span class="cx">                 }
</span><del>-                return history;
</del><ins>+                return '';
</ins><span class="cx">         },
</span><span class="cx"> 
</span><span class="cx">         refreshEditor : function(postid, nonce, callback) {
</span><del>-                var t = this, data, host;
</del><ins>+                var t = this, data, img;
</ins><span class="cx"> 
</span><span class="cx">                 t.toggleEditor(postid, 1);
</span><del>-
</del><span class="cx">                 data = {
</span><del>-                        'action': 'load-preview-image',
</del><ins>+                        'action': 'imgedit-preview',
</ins><span class="cx">                         '_ajax_nonce': nonce,
</span><span class="cx">                         'postid': postid,
</span><span class="cx">                         'history': t.filterHistory(postid),
</span><span class="cx">                         'rand': t.intval(Math.random() * 1000000)
</span><span class="cx">                 };
</span><span class="cx"> 
</span><del>-                host = $('&lt;img id=&quot;image-preview-' + postid + '&quot; /&gt;');
-                host.load( function() {
-                        var parent = $('#imgedit-crop-' + postid);
</del><ins>+                img = $('&lt;img id=&quot;image-preview-' + postid + '&quot; /&gt;');
+                img.load( function() {
+                        var parent = $('#imgedit-crop-' + postid), t = imageEdit;
</ins><span class="cx"> 
</span><del>-                        parent.empty().append(host);
-                        t.initCrop(postid, host, parent);
-                        $('#imgedit-panel-' + postid).show();
</del><ins>+                        parent.empty().append(img);
+                        t.initCrop(postid, img, parent);
+                        t.setCropSelection(postid, 0);
</ins><span class="cx"> 
</span><span class="cx">                         if ( (typeof callback != &quot;unknown&quot;) &amp;&amp; callback != null )
</span><span class="cx">                                 callback();
</span><span class="cx"> 
</span><span class="cx">                         t.toggleEditor(postid, 0);
</span><del>-
</del><span class="cx">                 }).attr('src', ajaxurl + '?' + $.param(data));
</span><span class="cx">         },
</span><span class="cx"> 
</span><del>-        save : function(postid, nonce) {
-                var t = this, fwidth = -1, fheight = -1, w, h, data,
-                        scaled = t.isChecked( $('#imgedit-scale-switch-' + postid) ),
-                        target = $('#imgedit-save-target-' + postid).val();
</del><ins>+        action : function(postid, nonce, action) {
+                var t = this, data, w, h, fw, fh;
</ins><span class="cx"> 
</span><del>-                if ( scaled ) {
-                        w = $('#imgedit-scale-width-' + postid);
-                        h = $('#imgedit-scale-height-' + postid);
-                        fwidth = t.intval(w.val());
-                        fheight = t.intval(h.val());
</del><ins>+                if ( t.notsaved(postid) )
+                        return false;
</ins><span class="cx"> 
</span><del>-                        if ( fwidth &lt;= 0 ) {
</del><ins>+                data = {
+                        'action': 'image-editor',
+                        '_ajax_nonce': nonce,
+                        'postid': postid
+                };
+
+                if ( 'scale' == action ) {
+                        w = $('#imgedit-scale-width-' + postid),
+                        h = $('#imgedit-scale-height-' + postid),
+                        fw = t.intval(w.val()),
+                        fh = t.intval(h.val());
+
+                        if ( fw &lt; 1 ) {
</ins><span class="cx">                                 w.focus();
</span><del>-                                return;
-                        } else if ( fheight &lt;= 0 ) {
</del><ins>+                                return false;;
+                        } else if ( fh &lt; 1 ) {
</ins><span class="cx">                                 h.focus();
</span><del>-                                return;
</del><ins>+                                return false;;
</ins><span class="cx">                         }
</span><ins>+
+                        if ( fw == t.hold.ow || fh == t.hold.oh )
+                                return false;
+
+                        data['do'] = 'scale';
+                        data['fwidth'] = fw;
+                        data['fheight'] = fh;
+                } else if ( 'restore' == action ) {
+                        data['do'] = 'restore';
+                } else {
+                        return false;
</ins><span class="cx">                 }
</span><span class="cx"> 
</span><span class="cx">                 t.toggleEditor(postid, 1);
</span><ins>+                $.post(ajaxurl, data, function(r) {
+                        $('#image-editor-' + postid).empty().append(r);
+                        t.toggleEditor(postid, 0);
+                });
+        },
</ins><span class="cx"> 
</span><ins>+        save : function(postid, nonce) {
+                var data, target = this.getTarget(postid), history = this.filterHistory(postid);
+
+                if ( '' == history )
+                        return false;
+
+                this.toggleEditor(postid, 1);
</ins><span class="cx">                 data = {
</span><del>-                        'action': 'image-edit-save',
</del><ins>+                        'action': 'image-editor',
</ins><span class="cx">                         '_ajax_nonce': nonce,
</span><span class="cx">                         'postid': postid,
</span><del>-                        'history': t.filterHistory(postid),
</del><ins>+                        'history': history,
</ins><span class="cx">                         'target': target,
</span><del>-                        'fwidth': fwidth,
-                        'fheight': fheight
</del><ins>+                        'do': 'save'
</ins><span class="cx">                 };
</span><span class="cx"> 
</span><span class="cx">                 $.post(ajaxurl, data, function(r) {
</span><del>-                        var fields = r.split('!'), pair, res, fw, fh, i, thumbnail;
</del><ins>+                        var ret = JSON.parse(r);
</ins><span class="cx"> 
</span><del>-                        for ( i = 0; i &lt; fields.length; i++ ) {
-                                pair = fields[i].split('=');
-                                if ( pair.length == 2 ) {
-                                        switch ( pair[0] ) {
-                                        case 'full':
-                                                // update full size dimensions
-                                                res = pair[1].split('x');
-                                                if ( res.length == 2 ) {
-                                                        fw = res[0];
-                                                        fh = res[1];
-                                                        $('#image-dims-' + postid).html( fw + '&amp;nbsp;&amp;times;&amp;nbsp;' + fh );
-                                                }
</del><ins>+                        if ( ret.error ) {
+                                $('#imgedit-response-' + postid).html('&lt;div class=&quot;error&quot;&gt;&lt;p&gt;' + ret.error + '&lt;/p&gt;&lt;div&gt;');
+                                imageEdit.close(postid);
+                                return;
+                        }
</ins><span class="cx"> 
</span><del>-                                                // clear undo history, it's no longer valid since we changed the original full size image
-                                                $('#imgedit-history-' + postid).val('');
-                                                $('#imgedit-undone-' + postid).val(0);
-                                                t.setClass($('#image-undo-' + postid), false);
-                                                t.setClass($('#image-redo-' + postid), false);
-                                                break;
-                                        case 'thumbnail':
-                                                // force a reload of the thumbnail ??
-                                                thumbnail = $('#media-item-' + postid);
-                                                if ( thumbnail.length == 0 ) {
-                                                        // when the flash uploader is employed media items are named 'media-item-SWFUpload_n_n' with n &gt;= 0
-                                                        // we therefore try to locate a known element and navigate up to the image-item-info div object
-                                                        thumbnail = $('#media-dims-' + postid).closest('.media-item-info');
-                                                }
-                                                thumbnail = thumbnail.find('.thumbnail');
-                                                thumbnail.attr('src', pair[1]);
-                                                break;
-                                        case 'error':
-                                                $('#imgedit-panel-' + postid).html(pair[1]);
-                                        }
-                                }
-                        }
-                        t.toggleEditor(postid, 0);
</del><ins>+                        if ( ret.fw &amp;&amp; ret.fh )
+                                $('#media-dims-' + postid).html( ret.fw + ' &amp;times; ' + ret.fh );
+
+                        if ( ret.thumbnail )
+                                $('.thumbnail', '#thumbnail-head-' + postid).attr('src', ''+ret.thumbnail);
+
+                        if ( ret.msg )
+                                $('#imgedit-response-' + postid).html('&lt;div class=&quot;updated&quot;&gt;&lt;p&gt;' + ret.msg + '&lt;/p&gt;&lt;/div&gt;');
+
+                        imageEdit.close(postid);
</ins><span class="cx">                 });
</span><span class="cx">         },
</span><span class="cx"> 
</span><span class="cx">         open : function(postid, nonce) {
</span><del>-                var t = this, data, elem = $('#image-editor-' + postid), head = $('#media-head-' + postid),
</del><ins>+                var data, elem = $('#image-editor-' + postid), head = $('#media-head-' + postid),
</ins><span class="cx">                         btn = $('#imgedit-open-btn-' + postid), spin = btn.siblings('img');
</span><span class="cx"> 
</span><span class="cx">                 btn.attr('disabled', 'disabled');
</span><span class="cx">                 spin.css('visibility', 'visible');
</span><span class="cx"> 
</span><span class="cx">                 data = {
</span><del>-                        'action': 'open-image-editor',
</del><ins>+                        'action': 'image-editor',
</ins><span class="cx">                         '_ajax_nonce': nonce,
</span><del>-                        'postid': postid
</del><ins>+                        'postid': postid,
+                        'do': 'open'
</ins><span class="cx">                 };
</span><span class="cx"> 
</span><span class="cx">                 elem.load(ajaxurl, data, function() {
</span><del>-
</del><span class="cx">                         elem.fadeIn('fast');
</span><del>-
</del><span class="cx">                         head.fadeOut('fast', function(){
</span><span class="cx">                                 btn.removeAttr('disabled');
</span><span class="cx">                                 spin.css('visibility', 'hidden');
</span><span class="cx">                         });
</span><ins>+                });
+        },
</ins><span class="cx"> 
</span><del>-                        t.toggleEditor(postid, 1);
</del><ins>+        imgLoaded : function(postid) {
+                var img = $('#image-preview-' + postid), parent = $('#imgedit-crop-' + postid);
</ins><span class="cx"> 
</span><del>-                        $('#image-preview-' + postid).load(function(){
-                                var t = imageEdit, parent = $('#imgedit-crop-' + postid);
-
-                                t.initCrop(postid, this, parent);
-                                t.setDefaultAspect(postid);
-                                t.toggleEditor(postid, 0);
-                        });
-                });
</del><ins>+                this.initCrop(postid, img, parent);
+                this.setCropSelection(postid, 0);
+                this.toggleEditor(postid, 0);
</ins><span class="cx">         },
</span><span class="cx"> 
</span><span class="cx">         initCrop : function(postid, image, parent) {
</span><del>-                var t = this;
</del><ins>+                var t = this, selW = $('#imgedit-sel-width-' + postid),
+                        selH = $('#imgedit-sel-height-' + postid);
</ins><span class="cx"> 
</span><span class="cx">                 t.iasapi = $(image).imgAreaSelect({
</span><span class="cx">                         parent: parent,
</span><span class="cx">                         instance: true,
</span><span class="cx">                         handles: true,
</span><span class="cx">                         keys: true,
</span><del>-                        minHeight: 5,
-                        minWidth: 5,
</del><ins>+                        minWidth: 3,
+                        minHeight: 3,
</ins><span class="cx"> 
</span><span class="cx">                         onInit: function(img, c) {
</span><span class="cx">                                 parent.children().mousedown(function(e){
</span><del>-                                        var sel, ratio = false, X = t.intval( $('#imgedit-aspect-x-' + postid).val() ),
-                                        Y = t.intval( $('#imgedit-aspect-y-' + postid).val() );
</del><ins>+                                        var ratio = false, sel, defRatio;
</ins><span class="cx"> 
</span><del>-                                        defRatio = ( X &amp;&amp; Y ) ? X + ':' + Y : '1:1';
-
</del><span class="cx">                                         if ( e.shiftKey ) {
</span><span class="cx">                                                 sel = t.iasapi.getSelection();
</span><del>-                                                ratio = ( sel.width &amp;&amp; sel.height ) ? sel.width + ':' + sel.height : defRatio;
</del><ins>+                                                defRatio = t.getSelRatio(postid);
+                                                ratio = ( sel &amp;&amp; sel.width &amp;&amp; sel.height ) ? sel.width + ':' + sel.height : defRatio;
</ins><span class="cx">                                         }
</span><span class="cx"> 
</span><span class="cx">                                         t.iasapi.setOptions({
</span><span class="lines">@@ -288,19 +313,73 @@
</span><span class="cx">                                 });
</span><span class="cx">                         },
</span><span class="cx"> 
</span><ins>+                        onSelectStart: function(img, c) {
+                                imageEdit.setDisabled($('#imgedit-crop-sel-' + postid), 1);
+                        },
+
</ins><span class="cx">                         onSelectEnd: function(img, c) {
</span><del>-                                var sel = { 'x': c.x1, 'y': c.y1, 'w': c.width, 'h': c.height };
-                                $('#imgedit-selection-' + postid).val( JSON.stringify(sel) );
</del><ins>+                                imageEdit.setCropSelection(postid, c);
+                        },
+
+                        onSelectChange: function(img, c) {
+                                var sizer = imageEdit.hold.sizer;
+                                selW.val( imageEdit.round(c.width / sizer) );
+                                selH.val( imageEdit.round(c.height / sizer) );
</ins><span class="cx">                         }
</span><span class="cx">                 });
</span><span class="cx">         },
</span><span class="cx"> 
</span><ins>+        setCropSelection : function(postid, c) {
+                var sel, min = $('#imgedit-minthumb-' + postid).val() || '128:128',
+                        sizer = this.hold['sizer'];
+                        min = min.split(':');
+                        c = c || 0;
+
+                if ( !c || ( c.width &lt; 3 &amp;&amp; c.height &lt; 3 ) ) {
+                        this.setDisabled($('.imgedit-crop', '#imgedit-panel-' + postid), 0);
+                        this.setDisabled($('#imgedit-crop-sel-' + postid), 0);
+                        $('#imgedit-sel-width-' + postid).val('');
+                        $('#imgedit-sel-height-' + postid).val('');
+                        $('#imgedit-selection-' + postid).val('');
+                        return false;
+                }
+
+                if ( c.width &lt; (min[0] * sizer) &amp;&amp; c.height &lt; (min[1] * sizer) ) {
+                        this.setDisabled($('.imgedit-crop', '#imgedit-panel-' + postid), 0);
+                        $('#imgedit-selection-' + postid).val('');
+                        return false;
+                }
+
+                sel = { 'x': c.x1, 'y': c.y1, 'w': c.width, 'h': c.height };
+                this.setDisabled($('.imgedit-crop', '#imgedit-panel-' + postid), 1);
+                $('#imgedit-selection-' + postid).val( JSON.stringify(sel) );
+        },
+
</ins><span class="cx">         close : function(postid) {
</span><ins>+                if ( this.notsaved(postid) )
+                        return false;
+                
+                this.iasapi = {};
+                this.hold = {};
</ins><span class="cx">                 $('#image-editor-' + postid).fadeOut('fast', function() {
</span><span class="cx">                         $('#media-head-' + postid).fadeIn('fast');
</span><ins>+                        $(this).empty();
</ins><span class="cx">                 });
</span><span class="cx">         },
</span><ins>+        
+        notsaved : function(postid) {
+                var h = $('#imgedit-history-' + postid).val(),
+                        history = (h != '') ? JSON.parse(h) : new Array(),
+                        pop = this.intval( $('#imgedit-undone-' + postid).val() );
</ins><span class="cx"> 
</span><ins>+                if ( pop &lt; history.length ) {
+                        if ( confirm( $('#imgedit-leaving-' + postid).html() ) )
+                                return false;
+                        return true;
+                }
+                return false;
+        },
+
</ins><span class="cx">         addStep : function(op, postid, nonce) {
</span><span class="cx">                 var t = this, elem = $('#imgedit-history-' + postid),
</span><span class="cx">                 history = (elem.val() != '') ? JSON.parse(elem.val()) : new Array(),
</span><span class="lines">@@ -317,26 +396,47 @@
</span><span class="cx">                 elem.val( JSON.stringify(history) );
</span><span class="cx"> 
</span><span class="cx">                 t.refreshEditor(postid, nonce, function() {
</span><del>-                        t.setClass($('#image-undo-' + postid), true);
-                        t.setClass($('#image-redo-' + postid), false);
</del><ins>+                        t.setDisabled($('#image-undo-' + postid), true);
+                        t.setDisabled($('#image-redo-' + postid), false);
</ins><span class="cx">                 });
</span><span class="cx">         },
</span><span class="cx"> 
</span><del>-        rotate : function(angle, postid, nonce) {
-                this.addStep({ 'r': angle }, postid, nonce);
</del><ins>+        rotate : function(angle, postid, nonce, t) {
+                if ( $(t).hasClass('disabled') )
+                        return false;
+
+                this.addStep({ 'r': { 'r': angle, 'fw': this.hold['h'], 'fh': this.hold['w'] }}, postid, nonce);
</ins><span class="cx">         },
</span><span class="cx"> 
</span><del>-        flip : function (axis, postid, nonce) {
-                this.addStep({ 'f': axis }, postid, nonce);
</del><ins>+        flip : function (axis, postid, nonce, t) {
+                if ( $(t).hasClass('disabled') )
+                        return false;
+
+                this.addStep({ 'f': { 'f': axis, 'fw': this.hold['w'], 'fh': this.hold['h'] }}, postid, nonce);
</ins><span class="cx">         },
</span><span class="cx"> 
</span><del>-        crop : function (postid, nonce) {
</del><ins>+        // w, h are the new full size dims
+        newDims : function(postid, w, h) {
+                var max = Math.max( w, h ), s;
+
+                s = max &gt; 400 ? 400 / max : 1;
+                this.hold['sizer'] = s;
+                this.hold['w'] = w;
+                this.hold['h'] = h;
+                return s;
+        },
+
+        crop : function (postid, nonce, t) {
</ins><span class="cx">                 var sel = $('#imgedit-selection-' + postid).val();
</span><span class="cx"> 
</span><del>-                if ( sel != '' ) {
-                        sel = JSON.parse(sel);
-                        if ( sel.w &gt; 0 &amp;&amp; sel.h &gt; 0 )
-                                this.addStep({ 'c': sel }, postid, nonce);
</del><ins>+                if ( $(t).hasClass('disabled') || sel == '' )
+                        return false;
+
+                sel = JSON.parse(sel);
+                if ( sel.w &gt; 0 &amp;&amp; sel.h &gt; 0 ) {
+                        sel['fw'] = this.intval( $('#imgedit-sel-width-' + postid).val() );
+                        sel['fh'] = this.intval( $('#imgedit-sel-height-' + postid).val() );
+                        this.addStep({ 'c': sel }, postid, nonce);
</ins><span class="cx">                 }
</span><span class="cx">         },
</span><span class="cx"> 
</span><span class="lines">@@ -352,8 +452,8 @@
</span><span class="cx">                         var elem = $('#imgedit-history-' + postid),
</span><span class="cx">                         history = (elem.val() != '') ? JSON.parse(elem.val()) : new Array();
</span><span class="cx"> 
</span><del>-                        t.setClass($('#image-redo-' + postid), true);
-                        t.setClass(button, pop &lt; history.length);
</del><ins>+                        t.setDisabled($('#image-redo-' + postid), true);
+                        t.setDisabled(button, pop &lt; history.length);
</ins><span class="cx">                 });
</span><span class="cx">         },
</span><span class="cx"> 
</span><span class="lines">@@ -366,27 +466,98 @@
</span><span class="cx"> 
</span><span class="cx">                 elem.val(pop);
</span><span class="cx">                 t.refreshEditor(postid, nonce, function() {
</span><del>-                        t.setClass($('#image-undo-' + postid), true);
-                        t.setClass(button, pop &gt; 0);
</del><ins>+                        t.setDisabled($('#image-undo-' + postid), true);
+                        t.setDisabled(button, pop &gt; 0);
</ins><span class="cx">                 });
</span><span class="cx">         },
</span><span class="cx"> 
</span><del>-        scaleSwitched : function(postid) {
-                var enable = this.isChecked( $('#imgedit-scale-switch-' + postid) );
</del><ins>+        setNumSelection : function(postid) {
+                var sel, elX = $('#imgedit-sel-width-' + postid), elY = $('#imgedit-sel-height-' + postid),
+                        x = this.intval( elX.val() ), y = this.intval( elY.val() ),
+                        img = $('#image-preview-' + postid), imgh = img.height(), imgw = img.width(),
+                        sizer = this.hold['sizer'], x1, y1, x2, y2, ias = this.iasapi;
</ins><span class="cx"> 
</span><del>-                this.setState($('#imgedit-scale-width-' + postid), enable);
-                this.setState($('#imgedit-scale-height-' + postid), enable);
-        //        this.setClass($('#imgedit-scale-values-' + postid), !enable);
-                this.scaleWidthChanged(postid);
</del><ins>+                if ( x &lt; 1 ) {
+                        elX.val('');
+                        return false;
+                }
+
+                if ( y &lt; 1 ) {
+                        elY.val('');
+                        return false;
+                }
+
+                if ( x &amp;&amp; y &amp;&amp; ( sel = ias.getSelection() ) ) {
+                        x2 = sel.x1 + Math.round( x * sizer );
+                        y2 = sel.y1 + Math.round( y * sizer );
+                        x1 = sel.x1;
+                        y1 = sel.y1;
+
+                        if ( x2 &gt; imgw ) {
+                                x1 = 0;
+                                x2 = imgw;
+                                elX.val( Math.round( x2 / sizer ) );
+                        }
+
+                        if ( y2 &gt; imgh ) {
+                                y1 = 0;
+                                y2 = imgh;
+                                elY.val( Math.round( y2 / sizer ) );
+                        }
+
+                        ias.setSelection( x1, y1, x2, y2 );
+                        ias.update();
+                        this.setCropSelection(postid, ias.getSelection());
+                }
</ins><span class="cx">         },
</span><ins>+        
+        round : function(num) {
+                var s;
+                num = Math.round(num);
</ins><span class="cx"> 
</span><del>-        targetChanged : function(postid) {
-                var target = $('#imgedit-save-target-' + postid).val(),
-                        enable = (target == 'full' || target == 'all');
</del><ins>+                if ( this.hold.sizer &gt; 0.6 )
+                        return num;
</ins><span class="cx"> 
</span><del>-                this.setState($('#imgedit-scale-switch-' + postid), enable);
-                this.setClass($('#imgedit-scale-' + postid), !enable);
-                this.scaleSwitched(postid);
</del><ins>+                s = num.toString().slice(-1);
+
+                if ( '1' == s )
+                        return num - 1;
+                else if ( '9' == s )
+                        return num + 1;
+
+                return num;
+        },
+
+        setRatioSelection : function(postid, n, el) {
+                var sel, r, x = this.intval( $('#imgedit-crop-width-' + postid).val() ),
+                        y = this.intval( $('#imgedit-crop-height-' + postid).val() ),
+                        h = $('#image-preview-' + postid).height();
+
+                if ( !this.intval( $(el).val() ) ) {
+                        $(el).val('');
+                        return;
+                }
+
+                if ( x &amp;&amp; y ) {
+                        this.iasapi.setOptions({
+                                aspectRatio: x + ':' + y
+                        });
+
+                        if ( sel = this.iasapi.getSelection(true) ) {
+                                r = Math.ceil( sel.y1 + ((sel.x2 - sel.x1) / (x / y)) );
+
+                                if ( r &gt; h ) {
+                                        r = h;
+                                        if ( n )
+                                                $('#imgedit-crop-height-' + postid).val('');
+                                        else
+                                                $('#imgedit-crop-width-' + postid).val('');
+                                }
+
+                                this.iasapi.setSelection( sel.x1, sel.y1, sel.x2, r );
+                                this.iasapi.update();
+                        }
+                }
</ins><span class="cx">         }
</span><span class="cx"> }
</span><span class="cx"> })(jQuery);
</span></span></pre></div>
<a id="trunkwpadminjsimageeditjs"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/js/image-edit.js (11964 => 11965)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/js/image-edit.js        2009-09-23 22:03:39 UTC (rev 11964)
+++ trunk/wp-admin/js/image-edit.js        2009-09-24 01:54:07 UTC (rev 11965)
</span><span class="lines">@@ -1 +1 @@
</span><del>-var imageEdit;(function(a){imageEdit={iasapi:{},intval:function(b){return b|0},setState:function(c,b){if(b){c.removeAttr(&quot;disabled&quot;)}else{c.attr(&quot;disabled&quot;,&quot;disabled&quot;)}},setClass:function(b,d){if(d){b.removeClass(&quot;disabled&quot;)}else{b.addClass(&quot;disabled&quot;)}},gcd:function(d,c){var e;if(d==0||c==0){return 0}else{if(d==c){return d}else{do{e=d%c;d=c;c=e}while(e!=0);return d}}},toggleEditor:function(d,b){var c=a(&quot;#imgedit-wait-&quot;+d);if(b){c.height(a(&quot;#imgedit-panel-&quot;+d).height()).fadeIn(&quot;fast&quot;)}else{c.height(500).fadeOut(&quot;fast&quot;)}},isChecked:function(b){return(!b.attr(&quot;disabled&quot;)&amp;&amp;b[0].checked)},getAspect:function(e){var b=this.isChecked(a(&quot;#imgedit-scale-switch-&quot;+e)),d,c;if(b){d=this.intval(a(&quot;#imgedit-aspect-x-&quot;+e).val());c=this.intval(a(&quot;#imgedit-aspect-y-&quot;+e).val());return d/c}else{return 0}},scaleWidthChanged:function(d){var c=a(&quot;#imgedit-scale-width-&quot;+d),b;if(!c.attr(&quot;disabled&quot;)){b=this.getAspect(d);if(b!=0){a(&quot;#imgedit-scale-height-&quot;+d).val((c.val()!=&quot;&quot;)?this.intval(c.val()/b):&quot;&quot;)}}},scaleHeightChanged:function(d){var c=a(&quot;#imgedit-scale-height-&quot;+d),b;if(!c.attr(&quot;disabled&quot;)){b=this.getAspect(d);if(b!=0){a(&quot;#imgedit-scale-width-&quot;+d).val((c.val()!=&quot;&quot;)?this.intval(c.val()*b):&quot;&quot;)}}},setDefaultAspect:function(h){var b=this,d,c=a(&quot;#image-preview-&quot;+h),f=c.attr(&quot;width&quot;),e=c.attr(&quot;height&quot;);while((d=b.gcd(f,e))&gt;1){f=b.intval(Math.ceil(f/d));e=b.intval(Math.ceil(e/d))}if(f&gt;10&amp;&amp;e&gt;10){while(f&gt;10&amp;&amp;e&gt;10){f=b.intval(Math.ceil(f/10));e=b.intval(Math.ceil(e/10))}while((d=b.gcd(f,e))&gt;1){f=b.intval(Math.ceil(f/d));e=b.intval(Math.ceil(e/d))}}a(&quot;#imgedit-aspect-x-&quot;+h).val(f);a(&quot;#imgedit-aspect-y-&quot;+h).val(e)},filterHistory:function(d){var c=a(&quot;#imgedit-history-&quot;+d).val(),b;if(c!=&quot;&quot;){b=this.intval(a(&quot;#imgedit-undone-&quot;+d).val());if(b&gt;0){c=JSON.parse(c);while(b&gt;0){c.pop();b--}c=JSON.stringify(c)}}return c},refreshEditor:function(g,c,f){var b=this,e,d;b.toggleEditor(g,1);e={action:&quot;load-preview-image&quot;,_ajax_nonce:c,postid:g,history:b.filterHistory(g),rand:b.intval(Math.random()*1000000)};d=a('&lt;img id=&quot;image-preview-'+g+'&quot; /&gt;');d.load(function(){var h=a(&quot;#imgedit-crop-&quot;+g);h.empty().append(d);b.initCrop(g,d,h);a(&quot;#imgedit-panel-&quot;+g).show();if((typeof f!=&quot;unknown&quot;)&amp;&amp;f!=null){f()}b.toggleEditor(g,0)}).attr(&quot;src&quot;,ajaxurl+&quot;?&quot;+a.param(e))},save:function(b,i){var l=this,f=-1,c=-1,k,g,e,d=l.isChecked(a(&quot;#imgedit-scale-switch-&quot;+b)),j=a(&quot;#imgedit-save-target-&quot;+b).val();if(d){k=a(&quot;#imgedit-scale-width-&quot;+b);g=a(&quot;#imgedit-scale-height-&quot;+b);f=l.intval(k.val());c=l.intval(g.val());if(f&lt;=0){k.focus();return}else{if(c&lt;=0){g.focus();return}}}l.toggleEditor(b,1);e={action:&quot;image-edit-save&quot;,_ajax_nonce:i,postid:b,history:l.filterHistory(b),target:j,fwidth:f,fheight:c};a.post(ajaxurl,e,function(p){var m=p.split(&quot;!&quot;),s,o,q,h,n,t;for(n=0;n&lt;m.length;n++){s=m[n].split(&quot;=&quot;);if(s.length==2){switch(s[0]){case&quot;full&quot;:o=s[1].split(&quot;x&quot;);if(o.length==2){q=o[0];h=o[1];a(&quot;#image-dims-&quot;+b).html(q+&quot;&amp;nbsp;&amp;times;&amp;nbsp;&quot;+h)}a(&quot;#imgedit-history-&quot;+b).val(&quot;&quot;);a(&quot;#imgedit-undone-&quot;+b).val(0);l.setClass(a(&quot;#image-undo-&quot;+b),false);l.setClass(a(&quot;#image-redo-&quot;+b),false);break;case&quot;thumbnail&quot;:t=a(&quot;#media-item-&quot;+b);if(t.length==0){t=a(&quot;#media-dims-&quot;+b).closest(&quot;.media-item-info&quot;)}t=t.find(&quot;.thumbnail&quot;);t.attr(&quot;src&quot;,s[1]);break;case&quot;error&quot;:a(&quot;#imgedit-panel-&quot;+b).html(s[1])}}}l.toggleEditor(b,0)})},open:function(i,e){var d=this,g,f=a(&quot;#image-editor-&quot;+i),c=a(&quot;#media-head-&quot;+i),b=a(&quot;#imgedit-open-btn-&quot;+i),h=b.siblings(&quot;img&quot;);b.attr(&quot;disabled&quot;,&quot;disabled&quot;);h.css(&quot;visibility&quot;,&quot;visible&quot;);g={action:&quot;open-image-editor&quot;,_ajax_nonce:e,postid:i};f.load(ajaxurl,g,function(){f.fadeIn(&quot;fast&quot;);c.fadeOut(&quot;fast&quot;,function(){b.removeAttr(&quot;disabled&quot;);h.css(&quot;visibility&quot;,&quot;hidden&quot;)});d.toggleEditor(i,1);a(&quot;#image-preview-&quot;+i).load(function(){var j=imageEdit,k=a(&quot;#imgedit-crop-&quot;+i);j.initCrop(i,this,k);j.setDefaultAspect(i);j.toggleEditor(i,0)})})},initCrop:function(e,d,c){var b=this;b.iasapi=a(d).imgAreaSelect({parent:c,instance:true,handles:true,keys:true,minHeight:5,minWidth:5,onInit:function(f,g){c.children().mousedown(function(j){var i,h=false,l=b.intval(a(&quot;#imgedit-aspect-x-&quot;+e).val()),k=b.intval(a(&quot;#imgedit-aspect-y-&quot;+e).val());defRatio=(l&amp;&amp;k)?l+&quot;:&quot;+k:&quot;1:1&quot;;if(j.shiftKey){i=b.iasapi.getSelection();h=(i.width&amp;&amp;i.height)?i.width+&quot;:&quot;+i.height:defRatio}b.iasapi.setOptions({aspectRatio:h})})},onSelectEnd:function(f,h){var g={x:h.x1,y:h.y1,w:h.width,h:h.height};a(&quot;#imgedit-selection-&quot;+e).val(JSON.stringify(g))}})},close:function(b){a(&quot;#image-editor-&quot;+b).fadeOut(&quot;fast&quot;,function(){a(&quot;#media-head-&quot;+b).fadeIn(&quot;fast&quot;)})},addStep:function(i,h,d){var c=this,e=a(&quot;#imgedit-history-&quot;+h),g=(e.val()!=&quot;&quot;)?JSON.parse(e.val()):new Array(),f=a(&quot;#imgedit-undone-&quot;+h),b=c.intval(f.val());while(b&gt;0){g.pop();b--}f.val(0);g.push(i);e.val(JSON.stringify(g));c.refreshEditor(h,d,function(){c.setClass(a(&quot;#image-undo-&quot;+h),true);c.setClass(a(&quot;#image-redo-&quot;+h),false)})},rotate:function(c,d,b){this.addStep({r:c},d,b)},flip:function(c,d,b){this.addStep({f:c},d,b)},crop:function(d,b){var c=a(&quot;#imgedit-selection-&quot;+d).val();if(c!=&quot;&quot;){c=JSON.parse(c);if(c.w&gt;0&amp;&amp;c.h&gt;0){this.addStep({c:c},d,b)}}},undo:function(g,e){var d=this,c=a(&quot;#image-undo-&quot;+g),f=a(&quot;#imgedit-undone-&quot;+g),b=d.intval(f.val())+1;if(c.hasClass(&quot;disabled&quot;)){return}f.val(b);d.refreshEditor(g,e,function(){var h=a(&quot;#imgedit-history-&quot;+g),i=(h.val()!=&quot;&quot;)?JSON.parse(h.val()):new Array();d.setClass(a(&quot;#image-redo-&quot;+g),true);d.setClass(c,b&lt;i.length)})},redo:function(g,e){var d=this,c=a(&quot;#image-redo-&quot;+g),f=a(&quot;#imgedit-undone-&quot;+g),b=d.intval(f.val())-1;if(c.hasClass(&quot;disabled&quot;)){return}f.val(b);d.refreshEditor(g,e,function(){d.setClass(a(&quot;#image-undo-&quot;+g),true);d.setClass(c,b&gt;0)})},scaleSwitched:function(c){var b=this.isChecked(a(&quot;#imgedit-scale-switch-&quot;+c));this.setState(a(&quot;#imgedit-scale-width-&quot;+c),b);this.setState(a(&quot;#imgedit-scale-height-&quot;+c),b);this.scaleWidthChanged(c)},targetChanged:function(d){var c=a(&quot;#imgedit-save-target-&quot;+d).val(),b=(c==&quot;full&quot;||c==&quot;all&quot;);this.setState(a(&quot;#imgedit-scale-switch-&quot;+d),b);this.setClass(a(&quot;#imgedit-scale-&quot;+d),!b);this.scaleSwitched(d)}}})(jQuery);
</del><span class="cx">\ No newline at end of file
</span><ins>+var imageEdit;(function(a){imageEdit={iasapi:{},hold:{},postid:&quot;&quot;,intval:function(b){return b|0},setDisabled:function(c,b){if(b){c.removeClass(&quot;disabled&quot;);a(&quot;input&quot;,c).removeAttr(&quot;disabled&quot;)}else{c.addClass(&quot;disabled&quot;);a(&quot;input&quot;,c).attr(&quot;disabled&quot;,&quot;disabled&quot;)}},init:function(g,e){var d=this,c=a(&quot;#image-editor-&quot;+d.postid),b=d.intval(a(&quot;#imgedit-x-&quot;+g).val()),f=d.intval(a(&quot;#imgedit-y-&quot;+g).val());if(d.postid!=g&amp;&amp;c.length){d.close(d.postid)}d.hold.w=d.hold.ow=b;d.hold.h=d.hold.oh=f;d.hold.xy_ratio=b/f;d.hold.sizer=parseFloat(a(&quot;#imgedit-sizer-&quot;+g).val());d.postid=g;a(&quot;#imgedit-response-&quot;+g).empty();a('input[type=&quot;text&quot;]',&quot;#imgedit-panel-&quot;+g).keypress(function(i){var h=i.keyCode;if(36&lt;h&amp;&amp;h&lt;41){a(this).blur()}if(13==h){i.preventDefault();i.stopPropagation();return false}})},toggleEditor:function(d,b){var c=a(&quot;#imgedit-wait-&quot;+d);if(b){c.height(a(&quot;#imgedit-panel-&quot;+d).height()).fadeIn(&quot;fast&quot;)}else{c.fadeOut(&quot;fast&quot;)}},toggleHelp:function(b){a(b).siblings(&quot;.imgedit-help&quot;).slideToggle(&quot;fast&quot;);return false},getTarget:function(b){return a(&quot;input:checked&quot;,&quot;#imgedit-save-target-&quot;+b).val()||&quot;all&quot;},scaleChanged:function(i,b){var d=a(&quot;#imgedit-scale-width-&quot;+i),f=a(&quot;#imgedit-scale-height-&quot;+i),g=a(&quot;#imgedit-scale-warn-&quot;+i),c=&quot;&quot;,e=&quot;&quot;;if(b){e=(d.val()!=&quot;&quot;)?this.intval(d.val()/this.hold.xy_ratio):&quot;&quot;;f.val(e)}else{c=(f.val()!=&quot;&quot;)?this.intval(f.val()*this.hold.xy_ratio):&quot;&quot;;d.val(c)}if((e&amp;&amp;e&gt;this.hold.oh)||(c&amp;&amp;c&gt;this.hold.ow)){g.css(&quot;visibility&quot;,&quot;visible&quot;)}else{g.css(&quot;visibility&quot;,&quot;hidden&quot;)}},getSelRatio:function(f){var b=this.hold.w,e=this.hold.h,d=this.intval(a(&quot;#imgedit-crop-width-&quot;+f).val()),c=this.intval(a(&quot;#imgedit-crop-height-&quot;+f).val());if(d&amp;&amp;c){return d+&quot;:&quot;+c}if(b&amp;&amp;e){return b+&quot;:&quot;+e}return&quot;1:1&quot;},filterHistory:function(h){var d=a(&quot;#imgedit-history-&quot;+h).val(),b,g,e,c,f=[];if(d!=&quot;&quot;){d=JSON.parse(d);b=this.intval(a(&quot;#imgedit-undone-&quot;+h).val());if(b&gt;0){while(b&gt;0){d.pop();b--}}if(!d.length){this.newDims(h,this.hold.ow,this.hold.oh);return&quot;&quot;}e=d[d.length-1];if(e.hasOwnProperty(&quot;c&quot;)){this.newDims(h,e.c.fw,e.c.fh)}else{if(e.hasOwnProperty(&quot;r&quot;)){this.newDims(h,e.r.fw,e.r.fh)}else{if(e.hasOwnProperty(&quot;f&quot;)){this.newDims(h,e.f.fw,e.f.fh)}}}for(g in d){c=d[g];if(c.hasOwnProperty(&quot;c&quot;)){f[g]={c:{x:c.c.x,y:c.c.y,w:c.c.w,h:c.c.h}}}else{if(c.hasOwnProperty(&quot;r&quot;)){f[g]={r:c.r.r}}else{if(c.hasOwnProperty(&quot;f&quot;)){f[g]={f:c.f.f}}}}}return JSON.stringify(f)}return&quot;&quot;},refreshEditor:function(g,d,f){var c=this,e,b;c.toggleEditor(g,1);e={action:&quot;imgedit-preview&quot;,_ajax_nonce:d,postid:g,history:c.filterHistory(g),rand:c.intval(Math.random()*1000000)};b=a('&lt;img id=&quot;image-preview-'+g+'&quot; /&gt;');b.load(function(){var i=a(&quot;#imgedit-crop-&quot;+g),h=imageEdit;i.empty().append(b);h.initCrop(g,b,i);h.setCropSelection(g,0);if((typeof f!=&quot;unknown&quot;)&amp;&amp;f!=null){f()}h.toggleEditor(g,0)}).attr(&quot;src&quot;,ajaxurl+&quot;?&quot;+a.param(e))},action:function(b,g,c){var j=this,e,i,f,d,k;if(j.notsaved(b)){return false}e={action:&quot;image-editor&quot;,_ajax_nonce:g,postid:b};if(&quot;scale&quot;==c){i=a(&quot;#imgedit-scale-width-&quot;+b),f=a(&quot;#imgedit-scale-height-&quot;+b),d=j.intval(i.val()),k=j.intval(f.val());if(d&lt;1){i.focus();return false}else{if(k&lt;1){f.focus();return false}}if(d==j.hold.ow||k==j.hold.oh){return false}e[&quot;do&quot;]=&quot;scale&quot;;e.fwidth=d;e.fheight=k}else{if(&quot;restore&quot;==c){e[&quot;do&quot;]=&quot;restore&quot;}else{return false}}j.toggleEditor(b,1);a.post(ajaxurl,e,function(h){a(&quot;#image-editor-&quot;+b).empty().append(h);j.toggleEditor(b,0)})},save:function(f,b){var c,e=this.getTarget(f),d=this.filterHistory(f);if(&quot;&quot;==d){return false}this.toggleEditor(f,1);c={action:&quot;image-editor&quot;,_ajax_nonce:b,postid:f,history:d,target:e,&quot;do&quot;:&quot;save&quot;};a.post(ajaxurl,c,function(h){var g=JSON.parse(h);if(g.error){a(&quot;#imgedit-response-&quot;+f).html('&lt;div class=&quot;error&quot;&gt;&lt;p&gt;'+g.error+&quot;&lt;/p&gt;&lt;div&gt;&quot;);imageEdit.close(f);return}if(g.fw&amp;&amp;g.fh){a(&quot;#media-dims-&quot;+f).html(g.fw+&quot; &amp;times; &quot;+g.fh)}if(g.thumbnail){a(&quot;.thumbnail&quot;,&quot;#thumbnail-head-&quot;+f).attr(&quot;src&quot;,&quot;&quot;+g.thumbnail)}if(g.msg){a(&quot;#imgedit-response-&quot;+f).html('&lt;div class=&quot;updated&quot;&gt;&lt;p&gt;'+g.msg+&quot;&lt;/p&gt;&lt;/div&gt;&quot;)}imageEdit.close(f)})},open:function(h,d){var f,e=a(&quot;#image-editor-&quot;+h),c=a(&quot;#media-head-&quot;+h),b=a(&quot;#imgedit-open-btn-&quot;+h),g=b.siblings(&quot;img&quot;);b.attr(&quot;disabled&quot;,&quot;disabled&quot;);g.css(&quot;visibility&quot;,&quot;visible&quot;);f={action:&quot;image-editor&quot;,_ajax_nonce:d,postid:h,&quot;do&quot;:&quot;open&quot;};e.load(ajaxurl,f,function(){e.fadeIn(&quot;fast&quot;);c.fadeOut(&quot;fast&quot;,function(){b.removeAttr(&quot;disabled&quot;);g.css(&quot;visibility&quot;,&quot;hidden&quot;)})})},imgLoaded:function(d){var b=a(&quot;#image-preview-&quot;+d),c=a(&quot;#imgedit-crop-&quot;+d);this.initCrop(d,b,c);this.setCropSelection(d,0);this.toggleEditor(d,0)},initCrop:function(g,e,c){var b=this,d=a(&quot;#imgedit-sel-width-&quot;+g),f=a(&quot;#imgedit-sel-height-&quot;+g);b.iasapi=a(e).imgAreaSelect({parent:c,instance:true,handles:true,keys:true,minWidth:3,minHeight:3,onInit:function(h,i){c.children().mousedown(function(m){var k=false,l,j;if(m.shiftKey){l=b.iasapi.getSelection();j=b.getSelRatio(g);k=(l&amp;&amp;l.width&amp;&amp;l.height)?l.width+&quot;:&quot;+l.height:j}b.iasapi.setOptions({aspectRatio:k})})},onSelectStart:function(h,i){imageEdit.setDisabled(a(&quot;#imgedit-crop-sel-&quot;+g),1)},onSelectEnd:function(h,i){imageEdit.setCropSelection(g,i)},onSelectChange:function(h,j){var i=imageEdit.hold.sizer;d.val(imageEdit.round(j.width/i));f.val(imageEdit.round(j.height/i))}})},setCropSelection:function(g,f){var e,b=a(&quot;#imgedit-minthumb-&quot;+g).val()||&quot;128:128&quot;,d=this.hold.sizer;b=b.split(&quot;:&quot;);f=f||0;if(!f||(f.width&lt;3&amp;&amp;f.height&lt;3)){this.setDisabled(a(&quot;.imgedit-crop&quot;,&quot;#imgedit-panel-&quot;+g),0);this.setDisabled(a(&quot;#imgedit-crop-sel-&quot;+g),0);a(&quot;#imgedit-sel-width-&quot;+g).val(&quot;&quot;);a(&quot;#imgedit-sel-height-&quot;+g).val(&quot;&quot;);a(&quot;#imgedit-selection-&quot;+g).val(&quot;&quot;);return false}if(f.width&lt;(b[0]*d)&amp;&amp;f.height&lt;(b[1]*d)){this.setDisabled(a(&quot;.imgedit-crop&quot;,&quot;#imgedit-panel-&quot;+g),0);a(&quot;#imgedit-selection-&quot;+g).val(&quot;&quot;);return false}e={x:f.x1,y:f.y1,w:f.width,h:f.height};this.setDisabled(a(&quot;.imgedit-crop&quot;,&quot;#imgedit-panel-&quot;+g),1);a(&quot;#imgedit-selection-&quot;+g).val(JSON.stringify(e))},close:function(b){if(this.notsaved(b)){return false}this.iasapi={};this.hold={};a(&quot;#image-editor-&quot;+b).fadeOut(&quot;fast&quot;,function(){a(&quot;#media-head-&quot;+b).fadeIn(&quot;fast&quot;);a(this).empty()})},notsaved:function(e){var c=a(&quot;#imgedit-history-&quot;+e).val(),d=(c!=&quot;&quot;)?JSON.parse(c):new Array(),b=this.intval(a(&quot;#imgedit-undone-&quot;+e).val());if(b&lt;d.length){if(confirm(a(&quot;#imgedit-leaving-&quot;+e).html())){return false}return true}return false},addStep:function(i,h,d){var c=this,e=a(&quot;#imgedit-history-&quot;+h),g=(e.val()!=&quot;&quot;)?JSON.parse(e.val()):new Array(),f=a(&quot;#imgedit-undone-&quot;+h),b=c.intval(f.val());while(b&gt;0){g.pop();b--}f.val(0);g.push(i);e.val(JSON.stringify(g));c.refreshEditor(h,d,function(){c.setDisabled(a(&quot;#image-undo-&quot;+h),true);c.setDisabled(a(&quot;#image-redo-&quot;+h),false)})},rotate:function(d,e,c,b){if(a(b).hasClass(&quot;disabled&quot;)){return false}this.addStep({r:{r:d,fw:this.hold.h,fh:this.hold.w}},e,c)},flip:function(d,e,c,b){if(a(b).hasClass(&quot;disabled&quot;)){return false}this.addStep({f:{f:d,fw:this.hold.w,fh:this.hold.h}},e,c)},newDims:function(f,c,e){var b=Math.max(c,e),d;d=b&gt;400?400/b:1;this.hold.sizer=d;this.hold.w=c;this.hold.h=e;return d},crop:function(e,c,b){var d=a(&quot;#imgedit-selection-&quot;+e).val();if(a(b).hasClass(&quot;disabled&quot;)||d==&quot;&quot;){return false}d=JSON.parse(d);if(d.w&gt;0&amp;&amp;d.h&gt;0){d.fw=this.intval(a(&quot;#imgedit-sel-width-&quot;+e).val());d.fh=this.intval(a(&quot;#imgedit-sel-height-&quot;+e).val());this.addStep({c:d},e,c)}},undo:function(g,e){var d=this,c=a(&quot;#image-undo-&quot;+g),f=a(&quot;#imgedit-undone-&quot;+g),b=d.intval(f.val())+1;if(c.hasClass(&quot;disabled&quot;)){return}f.val(b);d.refreshEditor(g,e,function(){var h=a(&quot;#imgedit-history-&quot;+g),i=(h.val()!=&quot;&quot;)?JSON.parse(h.val()):new Array();d.setDisabled(a(&quot;#image-redo-&quot;+g),true);d.setDisabled(c,b&lt;i.length)})},redo:function(g,e){var d=this,c=a(&quot;#image-redo-&quot;+g),f=a(&quot;#imgedit-undone-&quot;+g),b=d.intval(f.val())-1;if(c.hasClass(&quot;disabled&quot;)){return}f.val(b);d.refreshEditor(g,e,function(){d.setDisabled(a(&quot;#image-undo-&quot;+g),true);d.setDisabled(c,b&gt;0)})},setNumSelection:function(c){var g,k=a(&quot;#imgedit-sel-width-&quot;+c),j=a(&quot;#imgedit-sel-height-&quot;+c),o=this.intval(k.val()),m=this.intval(j.val()),i=a(&quot;#image-preview-&quot;+c),p=i.height(),h=i.width(),b=this.hold.sizer,f,n,e,l,d=this.iasapi;if(o&lt;1){k.val(&quot;&quot;);return false}if(m&lt;1){j.val(&quot;&quot;);return false}if(o&amp;&amp;m&amp;&amp;(g=d.getSelection())){e=g.x1+Math.round(o*b);l=g.y1+Math.round(m*b);f=g.x1;n=g.y1;if(e&gt;h){f=0;e=h;k.val(Math.round(e/b))}if(l&gt;p){n=0;l=p;j.val(Math.round(l/b))}d.setSelection(f,n,e,l);d.update();this.setCropSelection(c,d.getSelection())}},round:function(b){var c;b=Math.round(b);if(this.hold.sizer&gt;0.6){return b}c=b.toString().slice(-1);if(&quot;1&quot;==c){return b-1}else{if(&quot;9&quot;==c){return b+1}}return b},setRatioSelection:function(j,i,d){var f,e,b=this.intval(a(&quot;#imgedit-crop-width-&quot;+j).val()),g=this.intval(a(&quot;#imgedit-crop-height-&quot;+j).val()),c=a(&quot;#image-preview-&quot;+j).height();if(!this.intval(a(d).val())){a(d).val(&quot;&quot;);return}if(b&amp;&amp;g){this.iasapi.setOptions({aspectRatio:b+&quot;:&quot;+g});if(f=this.iasapi.getSelection(true)){e=Math.ceil(f.y1+((f.x2-f.x1)/(b/g)));if(e&gt;c){e=c;if(i){a(&quot;#imgedit-crop-height-&quot;+j).val(&quot;&quot;)}else{a(&quot;#imgedit-crop-width-&quot;+j).val(&quot;&quot;)}}this.iasapi.setSelection(f.x1,f.y1,f.x2,e);this.iasapi.update()}}}}})(jQuery);
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkwpadminwpadmindevcss"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/wp-admin.dev.css (11964 => 11965)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/wp-admin.dev.css        2009-09-23 22:03:39 UTC (rev 11964)
+++ trunk/wp-admin/wp-admin.dev.css        2009-09-24 01:54:07 UTC (rev 11965)
</span><span class="lines">@@ -1292,8 +1292,7 @@
</span><span class="cx">         clear: both;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-.form-table td,
-#wpbody-content .describe td {
</del><ins>+.form-table td {
</ins><span class="cx">         margin-bottom: 9px;
</span><span class="cx">         padding: 8px 10px;
</span><span class="cx">         line-height: 20px;
</span><span class="lines">@@ -1306,8 +1305,7 @@
</span><span class="cx">         text-shadow: rgba(255,255,255,1) 0 1px 0;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-.form-table th,
-#wpbody-content .describe th {
</del><ins>+.form-table th {
</ins><span class="cx">         vertical-align: top;
</span><span class="cx">         text-align: left;
</span><span class="cx">         padding: 10px;
</span><span class="lines">@@ -2834,6 +2832,13 @@
</span><span class="cx">         padding: 5px;
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+#wpbody-content .describe th {
+        vertical-align: top;
+        text-align: left;
+        padding: 10px;
+        width: 140px;
+}
+
</ins><span class="cx"> #wpbody-content .describe .media-item-info tr {
</span><span class="cx">         background-color: transparent;
</span><span class="cx"> }
</span><span class="lines">@@ -2842,8 +2847,8 @@
</span><span class="cx">         padding: 4px 10px 0;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-#wpbody-content .describe .media-item-info .A1B1 {
-        padding-bottom: 8px;
</del><ins>+.describe .media-item-info .A1B1 {
+        padding: 0 15px 8px 0;
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> #wpbody-content .filename {
</span><span class="lines">@@ -2917,6 +2922,11 @@
</span><span class="cx">         width: 100%;
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+#wpbody-content .media-single .media-item {
+        border-bottom-style: none;
+        border-bottom-width: 0;
+}
+
</ins><span class="cx"> #wpbody-content #media-items {
</span><span class="cx">         border-style: solid solid none;
</span><span class="cx">         border-width: 1px;
</span><span class="lines">@@ -3343,15 +3353,41 @@
</span><span class="cx">         top: -3px;
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+.describe .image-editor {
+        vertical-align: top;
+}
+
</ins><span class="cx"> .imgedit-wrap {
</span><span class="cx">         position: relative;
</span><del>-        min-height: 500px;
</del><span class="cx"> }
</span><span class="cx"> 
</span><ins>+.imgedit-settings p {
+        margin: 8px 0;
+}
+
+.describe .imgedit-wrap table td {
+        vertical-align: top;
+        padding-top: 0;
+}
+
+.imgedit-wrap p,
+.describe .imgedit-wrap table td {
+        font-size: 11px;
+        line-height: 18px;
+}
+
+.describe .imgedit-wrap table td.imgedit-settings {
+        padding: 0 5px;
+}
+
+td.imgedit-settings input {
+        vertical-align: middle;
+}
+
</ins><span class="cx"> .imgedit-wait {
</span><span class="cx">         position: absolute;
</span><span class="cx">         top: 0;
</span><del>-        background: #FFFFFF url(images/wpspin_light.gif) no-repeat scroll 200px 75px;
</del><ins>+        background: #FFFFFF url(images/wpspin_light.gif) no-repeat scroll 22px 10px;
</ins><span class="cx">         opacity: 0.7;
</span><span class="cx">         filter: alpha(opacity=70);
</span><span class="cx">         width: 100%;
</span><span class="lines">@@ -3359,7 +3395,8 @@
</span><span class="cx">         display: none;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-.media-disabled {
</del><ins>+.media-disabled,
+.imgedit-settings .disabled  {
</ins><span class="cx">         color: grey;
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -3370,7 +3407,8 @@
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> .imgedit-menu {
</span><del>-        margin: 5px 0;
</del><ins>+        margin: 0 0 12px;
+        min-width: 315px;
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> .imgedit-menu div {
</span><span class="lines">@@ -3385,6 +3423,10 @@
</span><span class="cx">         border-style: solid;
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+.imgedit-crop-wrap {
+        position: relative;
+}
+
</ins><span class="cx"> .imgedit-crop {
</span><span class="cx">         background: transparent url(images/imgedit.gif) no-repeat scroll -62px 2px;
</span><span class="cx">         margin: 0 8px 0 0;
</span><span class="lines">@@ -3421,3 +3463,71 @@
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> 
</span><ins>+.imgedit-applyto img {
+        margin: 0 8px 0 0;
+}
+
+.imgedit-group-top {
+        margin: 5px 0;
+}
+
+.imgedit-applyto .imgedit-label {
+        padding: 2px 0 0;
+        display: block;
+}
+
+.imgedit-help {
+        display: none;
+        font-style: italic;
+        margin-bottom: 8px;
+}
+
+.imgedit-help ul li {
+        font-size: 11px;
+}
+
+a.imgedit-help-toggle {
+        text-decoration: none;
+}
+
+#wpbody-content .imgedit-response div {
+        width: 600px;
+        margin: 8px;
+}
+
+.form-table td.imgedit-response {
+        padding: 0;
+}
+
+.imgedit-submit {
+        margin: 8px 0;
+}
+
+.imgedit-submit-btn {
+        margin-left: 20px;
+}
+
+.imgedit-wrap .nowrap {
+        white-space: nowrap;
+}
+
+span.imgedit-scale-warn {
+        color: red;
+        font-size: 20px;
+        font-style: normal;
+        visibility: hidden;
+        vertical-align: middle;
+}
+
+.imgedit-group {
+        border-width: 1px;
+        border-style: solid;
+        -moz-border-radius: 8px;
+        -khtml-border-radius: 8px;
+        -webkit-border-radius: 8px;
+        border-radius: 8px;
+        margin-bottom: 8px;
+        padding: 2px 10px;
+}
+
+
</ins></span></pre></div>
<a id="trunkwpincludespostphp"></a>
<div class="modfile"><h4>Modified: trunk/wp-includes/post.php (11964 => 11965)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-includes/post.php        2009-09-23 22:03:39 UTC (rev 11964)
+++ trunk/wp-includes/post.php        2009-09-24 01:54:07 UTC (rev 11965)
</span><span class="lines">@@ -2575,7 +2575,8 @@
</span><span class="cx">         delete_post_meta($post_id, '_wp_trash_meta_status');
</span><span class="cx">         delete_post_meta($post_id, '_wp_trash_meta_time');
</span><span class="cx"> 
</span><del>-        $meta = wp_get_attachment_metadata( $post_id, false, false );
</del><ins>+        $meta = wp_get_attachment_metadata( $post_id );
+        $backup_sizes = get_post_meta( $post-&gt;ID, '_wp_attachment_backup_sizes', true );
</ins><span class="cx">         $file = get_attached_file( $post_id );
</span><span class="cx"> 
</span><span class="cx">         do_action('delete_attachment', $post_id);
</span><span class="lines">@@ -2609,14 +2610,11 @@
</span><span class="cx">                 }
</span><span class="cx">         }
</span><span class="cx"> 
</span><del>-        if ( isset($meta['sizes']) &amp;&amp; is_array($meta['sizes']) ) {
-                foreach ( array_keys($meta['sizes']) as $size ) {
-                        if ( preg_match('/backup-[0-9]+/', $size) ) { // make sure this is a backup
-                    if ( $del = image_get_intermediate_size($post_id, $size) ) {
-                                        $del_file = apply_filters('wp_delete_file', $del['path']);
-                        @ unlink( path_join($uploadpath['basedir'], $del_file) );
-                        }
-                }
</del><ins>+        if ( is_array($backup_sizes) ) {
+                foreach ( $backup_sizes as $size ) {
+                        $del_file = path_join( dirname($meta['file']), $size['file'] );
+                        $del_file = apply_filters('wp_delete_file', $del_file);
+            @ unlink( path_join($uploadpath['basedir'], $del_file) );
</ins><span class="cx">                 }
</span><span class="cx">         }
</span><span class="cx"> 
</span><span class="lines">@@ -2639,21 +2637,13 @@
</span><span class="cx">  * @param bool $unfiltered Optional, default is false. If true, filters are not run.
</span><span class="cx">  * @return string|bool Attachment meta field. False on failure.
</span><span class="cx">  */
</span><del>-function wp_get_attachment_metadata( $post_id, $unfiltered = false, $remove_backups = true ) {
</del><ins>+function wp_get_attachment_metadata( $post_id, $unfiltered = false ) {
</ins><span class="cx">         $post_id = (int) $post_id;
</span><span class="cx">         if ( !$post =&amp; get_post( $post_id ) )
</span><span class="cx">                 return false;
</span><span class="cx"> 
</span><span class="cx">         $data = get_post_meta( $post-&gt;ID, '_wp_attachment_metadata', true );
</span><span class="cx"> 
</span><del>-        if ( $remove_backups &amp;&amp; isset($data['sizes']) &amp;&amp; is_array($data['sizes']) ) {
-                $sizes = apply_filters( 'intermediate_image_sizes', array('large', 'medium', 'thumbnail') );
-                foreach ( $data['sizes'] as $size =&gt; $val ) {
-                        if ( !in_array( $size, $sizes, true ) )
-                                unset($data['sizes'][$size]);
-                }
-        }
-
</del><span class="cx">         if ( $unfiltered )
</span><span class="cx">                 return $data;
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkwpincludesscriptloaderphp"></a>
<div class="modfile"><h4>Modified: trunk/wp-includes/script-loader.php (11964 => 11965)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-includes/script-loader.php        2009-09-23 22:03:39 UTC (rev 11964)
+++ trunk/wp-includes/script-loader.php        2009-09-24 01:54:07 UTC (rev 11965)
</span><span class="lines">@@ -405,7 +405,7 @@
</span><span class="cx">                 $scripts-&gt;add( 'codepress', '/wp-includes/js/codepress/codepress.js', false, '0.9.6' );
</span><span class="cx">                 $scripts-&gt;add_data( 'codepress', 'group', 1 );
</span><span class="cx"> 
</span><del>-                $scripts-&gt;add( 'image-edit', &quot;/wp-admin/js/image-edit$suffix.js&quot;, array('jquery', 'json2', 'imgareaselect'), '20090831' );
</del><ins>+                $scripts-&gt;add( 'image-edit', &quot;/wp-admin/js/image-edit$suffix.js&quot;, array('jquery', 'json2', 'imgareaselect'), '20090922' );
</ins><span class="cx">                 $scripts-&gt;add_data( 'image-edit', 'group', 1 );
</span><span class="cx">         }
</span><span class="cx"> }
</span><span class="lines">@@ -442,12 +442,12 @@
</span><span class="cx">         $rtl_styles = array( 'global', 'colors', 'dashboard', 'ie', 'install', 'login', 'media', 'theme-editor', 'upload', 'widgets', 'press-this', 'plugin-install', 'farbtastic' );
</span><span class="cx"> 
</span><span class="cx">         // all colors stylesheets need to have the same query strings (cache manifest compat)
</span><del>-        $colors_version = '20090824';
</del><ins>+        $colors_version = '20090922';
</ins><span class="cx"> 
</span><span class="cx">         $styles-&gt;add( 'wp-admin', &quot;/wp-admin/wp-admin$suffix.css&quot;, array(), '20090824' );
</span><span class="cx">         $styles-&gt;add_data( 'wp-admin', 'rtl', &quot;/wp-admin/rtl$suffix.css&quot; );
</span><span class="cx"> 
</span><del>-        $styles-&gt;add( 'ie', '/wp-admin/css/ie.css', array(), '20090824' );
</del><ins>+        $styles-&gt;add( 'ie', '/wp-admin/css/ie.css', array(), '20090922' );
</ins><span class="cx">         $styles-&gt;add_data( 'ie', 'conditional', 'lte IE 7' );
</span><span class="cx"> 
</span><span class="cx">         // Register &quot;meta&quot; stylesheet for admin colors. All colors-* style sheets should have the same version string.
</span><span class="lines">@@ -460,7 +460,7 @@
</span><span class="cx">         $styles-&gt;add_data( 'colors-classic', 'rtl', true );
</span><span class="cx"> 
</span><span class="cx">         $styles-&gt;add( 'global', &quot;/wp-admin/css/global$suffix.css&quot;, array(), '20090630' );
</span><del>-        $styles-&gt;add( 'media', &quot;/wp-admin/css/media$suffix.css&quot;, array(), '20090612' );
</del><ins>+        $styles-&gt;add( 'media', &quot;/wp-admin/css/media$suffix.css&quot;, array(), '20090922' );
</ins><span class="cx">         $styles-&gt;add( 'widgets', &quot;/wp-admin/css/widgets$suffix.css&quot;, array(), '20090603' );
</span><span class="cx">         $styles-&gt;add( 'dashboard', &quot;/wp-admin/css/dashboard$suffix.css&quot;, array(), '20090514' );
</span><span class="cx">         $styles-&gt;add( 'install', &quot;/wp-admin/css/install$suffix.css&quot;, array(), '20090514' );
</span></span></pre>
</div>
</div>

</body>
</html>