<!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>[12046] trunk:
Add the author to the quick edit dropdown author list if they currently lack the ability to edit so as to avoid stealing their post away from them
.</title>
</head>
<body>
<div id="msg">
<dl>
<dt>Revision</dt> <dd><a href="http://trac.wordpress.org/changeset/12046">12046</a></dd>
<dt>Author</dt> <dd>markjaquith</dd>
<dt>Date</dt> <dd>2009-10-17 05:18:29 +0000 (Sat, 17 Oct 2009)</dd>
</dl>
<h3>Log Message</h3>
<pre>Add the author to the quick edit dropdown author list if they currently lack the ability to edit so as to avoid stealing their post away from them. fixes <a href="http://trac.wordpress.org/ticket/10967">#10967</a></pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkwpadminjsinlineeditpostdevjs">trunk/wp-admin/js/inline-edit-post.dev.js</a></li>
<li><a href="#trunkwpadminjsinlineeditpostjs">trunk/wp-admin/js/inline-edit-post.js</a></li>
<li><a href="#trunkwpincludesscriptloaderphp">trunk/wp-includes/script-loader.php</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkwpadminjsinlineeditpostdevjs"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/js/inline-edit-post.dev.js (12045 => 12046)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/js/inline-edit-post.dev.js        2009-10-15 21:47:35 UTC (rev 12045)
+++ trunk/wp-admin/js/inline-edit-post.dev.js        2009-10-17 05:18:29 UTC (rev 12046)
</span><span class="lines">@@ -126,6 +126,11 @@
</span><span class="cx">
</span><span class="cx">                 // populate the data
</span><span class="cx">                 rowData = $('#inline_'+id);
</span><ins>+                if ( !$(':input[name="post_author"] option[value=' + $('.post_author', rowData).text() + ']', editRow).val() ) {
+                        // author no longer has edit caps, so we need to add them to the list of authors
+                        $(':input[name="post_author"]', editRow).prepend('<option value="' + $('.post_author', rowData).text() + '">' + $('#' + t.type + '-' + id + ' .author').text() + '</option>');
+                }
+
</ins><span class="cx">                 for ( f = 0; f < fields.length; f++ ) {
</span><span class="cx">                         $(':input[name="'+fields[f]+'"]', editRow).val( $('.'+fields[f], rowData).text() );
</span><span class="cx">                 }
</span></span></pre></div>
<a id="trunkwpadminjsinlineeditpostjs"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/js/inline-edit-post.js (12045 => 12046)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/js/inline-edit-post.js        2009-10-15 21:47:35 UTC (rev 12045)
+++ trunk/wp-admin/js/inline-edit-post.js        2009-10-17 05:18:29 UTC (rev 12046)
</span><span class="lines">@@ -1 +1 @@
</span><del>-(function(a){inlineEditPost={init:function(){var c=this,d=a("#inline-edit"),b=a("#bulk-edit");c.type=a("table.widefat").hasClass("page")?"page":"post";c.what="#"+c.type+"-";d.keyup(function(f){if(f.which==27){return inlineEditPost.revert()}});b.keyup(function(f){if(f.which==27){return inlineEditPost.revert()}});a("a.cancel",d).click(function(){return inlineEditPost.revert()});a("a.save",d).click(function(){return inlineEditPost.save(this)});a("td",d).keydown(function(f){if(f.which==13){return inlineEditPost.save(this)}});a("a.cancel",b).click(function(){return inlineEditPost.revert()});a("#inline-edit .inline-edit-private input[value=private]").click(function(){var e=a("input.inline-edit-password-input");if(a(this).attr("checked")){e.val("").attr("disabled","disabled")}else{e.attr("disabled","")}});a("a.editinline").live("click",function(){inlineEditPost.edit(this);return false});a("#bulk-title-div").parents("fieldset").after(a("#inline-edit fieldset.inline-edit-categories").clone()).siblings("fieldset:last").prepend(a("#inline-edit label.inline-edit-tags").clone());a("span.catshow").click(function(){a(".inline-editor ul.cat-checklist").addClass("cat-hover");a(".inline-editor span.cathide").show();a(this).hide()});a("span.cathide").click(function(){a(".inline-editor ul.cat-checklist").removeClass("cat-hover");a(".inline-editor span.catshow").show();a(this).hide()});a('select[name="_status"] option[value="future"]',b).remove();a("#doaction, #doaction2").click(function(f){var g=a(this).attr("id").substr(2);if(a('select[name="'+g+'"]').val()=="edit"){f.preventDefault();c.setBulk()}else{if(a("form#posts-filter tr.inline-editor").length>0){c.revert()}}});a("#post-query-submit").click(function(f){if(a("form#posts-filter tr.inline-editor").length>0){c.revert()}})},toggle:function(c){var b=this;a(b.what+b.getId(c)).css("display")=="none"?b.revert():b.edit(c)},setBulk:function(){var d="",c=this.type,b;this.revert();a("#bulk-edit td").attr("colspan",a(".widefat:first thead th:visible").length);a("table.widefat tbody").prepend(a("#bulk-edit"));a("#bulk-edit").addClass("inline-editor").show();a('tbody th.check-column input[type="checkbox"]').each(function(f){if(a(this).attr("checked")){var g=a(this).val(),e;e=a("#inline_"+g+" .post_title").text()||inlineEditL10n.notitle;d+='<div id="ttle'+g+'"><a id="_'+g+'" class="ntdelbutton" title="'+inlineEditL10n.ntdeltitle+'">X</a>'+e+"</div>"}});a("#bulk-titles").html(d);a("#bulk-titles a").click(function(){var e=a(this).attr("id").substr(1);a('table.widefat input[value="'+e+'"]').attr("checked","");a("#ttle"+e).remove()});if(c=="post"){b="post_tag";a('tr.inline-editor textarea[name="tags_input"]').suggest("admin-ajax.php?action=ajax-tag-search&tax="+b,{delay:500,minchars:2,multiple:true,multipleSep:", "})}},edit:function(b){var o=this,j,d,g,n,i,h,k,m,l,c=true,p,e;o.revert();if(typeof(b)=="object"){b=o.getId(b)}j=["post_title","post_name","post_author","_status","jj","mm","aa","hh","mn","ss","post_password"];if(o.type=="page"){j.push("post_parent","menu_order","page_template")}if(o.type=="post"){j.push("tags_input")}d=a("#inline-edit").clone(true);a("td",d).attr("colspan",a(".widefat:first thead th:visible").length);if(a(o.what+b).hasClass("alternate")){a(d).addClass("alternate")}a(o.what+b).hide().after(d);g=a("#inline_"+b);for(k=0;k<j.length;k++){a(':input[name="'+j[k]+'"]',d).val(a("."+j[k],g).text())}if(a(".comment_status",g).text()=="open"){a('input[name="comment_status"]',d).attr("checked","checked")}if(a(".ping_status",g).text()=="open"){a('input[name="ping_status"]',d).attr("checked","checked")}if(a(".sticky",g).text()=="sticky"){a('input[name="sticky"]',d).attr("checked","checked")}if(n=a(".post_category",g).text()){a("ul.cat-checklist :checkbox",d).val(n.split(","))}i=a("._status",g).text();if(i!="future"){a('select[name="_status"] option[value="future"]',d).remove()}if(i=="private"){a('input[name="keep_private"]',d).attr("checked","checked");a("input.inline-edit-password-input").val("").attr("disabled","disabled")}h=a('select[name="post_parent"] option[value="'+b+'"]',d);if(h.length>0){m=h[0].className.split("-")[1];l=h;while(c){l=l.next("option");if(l.length==0){break}p=l[0].className.split("-")[1];if(p<=m){c=false}else{l.remove();l=h}}h.remove()}a(d).attr("id","edit-"+b).addClass("inline-editor").show();a(".ptitle",d).focus();if(o.type=="post"){e="post_tag";a('tr.inline-editor textarea[name="tags_input"]').suggest("admin-ajax.php?action=ajax-tag-search&tax="+e,{delay:500,minchars:2,multiple:true,multipleSep:", "})}return false},save:function(e){var d,b,c=a(".post_status_page").val()||"";if(typeof(e)=="object"){e=this.getId(e)}a("table.widefat .inline-edit-save .waiting").show();d={action:"inline-save",post_type:this.type,post_ID:e,edit_date:"true",post_status:c};b=a("#edit-"+e+" :input").serialize();d=b+"&"+a.param(d);a.post("admin-ajax.php",d,function(f){a("table.widefat .inline-edit-save .waiting").hide();if(f){if(-1!=f.indexOf("<tr")){a(inlineEditPost.what+e).remove();a("#edit-"+e).before(f).remove();a(inlineEditPost.what+e).hide().fadeIn()}else{f=f.replace(/<.[^<>]*?>/g,"");a("#edit-"+e+" .inline-edit-save").append('<span class="error">'+f+"</span>")}}else{a("#edit-"+e+" .inline-edit-save").append('<span class="error">'+inlineEditL10n.error+"</span>")}},"html");return false},revert:function(){var b;if(b=a("table.widefat tr.inline-editor").attr("id")){a("table.widefat .inline-edit-save .waiting").hide();if("bulk-edit"==b){a("table.widefat #bulk-edit").removeClass("inline-editor").hide();a("#bulk-titles").html("");a("#inlineedit").append(a("#bulk-edit"))}else{a("#"+b).remove();b=b.substr(b.lastIndexOf("-")+1);a(this.what+b).show()}}return false},getId:function(c){var d=c.tagName=="TR"?c.id:a(c).parents("tr").attr("id"),b=d.split("-");return b[b.length-1]}};a(document).ready(function(){inlineEditPost.init()})})(jQuery);
</del><span class="cx">\ No newline at end of file
</span><ins>+(function($){inlineEditPost={init:function(){var t=this,qeRow=$("#inline-edit"),bulkRow=$("#bulk-edit");t.type=$("table.widefat").hasClass("page")?"page":"post";t.what="#"+t.type+"-";qeRow.keyup(function(e){if(e.which==27){return inlineEditPost.revert()}});bulkRow.keyup(function(e){if(e.which==27){return inlineEditPost.revert()}});$("a.cancel",qeRow).click(function(){return inlineEditPost.revert()});$("a.save",qeRow).click(function(){return inlineEditPost.save(this)});$("td",qeRow).keydown(function(e){if(e.which==13){return inlineEditPost.save(this)}});$("a.cancel",bulkRow).click(function(){return inlineEditPost.revert()});$("#inline-edit .inline-edit-private input[value=private]").click(function(){var pw=$("input.inline-edit-password-input");if($(this).attr("checked")){pw.val("").attr("disabled","disabled")}else{pw.attr("disabled","")}});$("a.editinline").live("click",function(){inlineEditPost.edit(this);return false});$("#bulk-title-div").parents("fieldset").after($("#inline-edit fieldset.inline-edit-categories").clone()).siblings("fieldset:last").prepend($("#inline-edit label.inline-edit-tags").clone());$("span.catshow").click(function(){$(".inline-editor ul.cat-checklist").addClass("cat-hover");$(".inline-editor span.cathide").show();$(this).hide()});$("span.cathide").click(function(){$(".inline-editor ul.cat-checklist").removeClass("cat-hover");$(".inline-editor span.catshow").show();$(this).hide()});$('select[name="_status"] option[value="future"]',bulkRow).remove();$("#doaction, #doaction2").click(function(e){var n=$(this).attr("id").substr(2);if($('select[name="'+n+'"]').val()=="edit"){e.preventDefault();t.setBulk()}else{if($("form#posts-filter tr.inline-editor").length>0){t.revert()}}});$("#post-query-submit").click(function(e){if($("form#posts-filter tr.inline-editor").length>0){t.revert()}})},toggle:function(el){var t=this;$(t.what+t.getId(el)).css("display")=="none"?t.revert():t.edit(el)},setBulk:function(){var te="",type=this.type,tax;this.revert();$("#bulk-edit td").attr("colspan",$(".widefat:first thead th:visible").length);$("table.widefat tbody").prepend($("#bulk-edit"));$("#bulk-edit").addClass("inline-editor").show();$('tbody th.check-column input[type="checkbox"]').each(function(i){if($(this).attr("checked")){var id=$(this).val(),theTitle;theTitle=$("#inline_"+id+" .post_title").text()||inlineEditL10n.notitle;te+='<div id="ttle'+id+'"><a id="_'+id+'" class="ntdelbutton" title="'+inlineEditL10n.ntdeltitle+'">X</a>'+theTitle+"</div>"}});$("#bulk-titles").html(te);$("#bulk-titles a").click(function(){var id=$(this).attr("id").substr(1);$('table.widefat input[value="'+id+'"]').attr("checked","");$("#ttle"+id).remove()});if(type=="post"){tax="post_tag";$('tr.inline-editor textarea[name="tags_input"]').suggest("admin-ajax.php?action=ajax-tag-search&tax="+tax,{delay:500,minchars:2,multiple:true,multipleSep:", "})}},edit:function(id){var t=this,fields,editRow,rowData,cats,status,pageOpt,f,pageLevel,nextPage,pageLoop=true,nextLevel,tax;t.revert();if(typeof(id)=="object"){id=t.getId(id)}fields=["post_title","post_name","post_author","_status","jj","mm","aa","hh","mn","ss","post_password"];if(t.type=="page"){fields.push("post_parent","menu_order","page_template")}if(t.type=="post"){fields.push("tags_input")}editRow=$("#inline-edit").clone(true);$("td",editRow).attr("colspan",$(".widefat:first thead th:visible").length);if($(t.what+id).hasClass("alternate")){$(editRow).addClass("alternate")}$(t.what+id).hide().after(editRow);rowData=$("#inline_"+id);if(!$(':input[name="post_author"] option[value='+$(".post_author",rowData).text()+"]",editRow).val()){$(':input[name="post_author"]',editRow).prepend('<option value="'+$(".post_author",rowData).text()+'">'+$("#"+t.type+"-"+id+" .author").text()+"</option>")}for(f=0;f<fields.length;f++){$(':input[name="'+fields[f]+'"]',editRow).val($("."+fields[f],rowData).text())}if($(".comment_status",rowData).text()=="open"){$('input[name="comment_status"]',editRow).attr("checked","checked")}if($(".ping_status",rowData).text()=="open"){$('input[name="ping_status"]',editRow).attr("checked","checked")}if($(".sticky",rowData).text()=="sticky"){$('input[name="sticky"]',editRow).attr("checked","checked")}if(cats=$(".post_category",rowData).text()){$("ul.cat-checklist :checkbox",editRow).val(cats.split(","))}status=$("._status",rowData).text();if(status!="future"){$('select[name="_status"] option[value="future"]',editRow).remove()}if(status=="private"){$('input[name="keep_private"]',editRow).attr("checked","checked");$("input.inline-edit-password-input").val("").attr("disabled","disabled")}pageOpt=$('select[name="post_parent"] option[value="'+id+'"]',editRow);if(pageOpt.length>0){pageLevel=pageOpt[0].className.split("-")[1];nextPage=pageOpt;while(pageLoop){nextPage=nextPage.next("option");if(nextPage.length==0){break}nextLevel=nextPage[0].className.split("-")[1];if(nextLevel<=pageLevel){pageLoop=false}else{nextPage.remove();nextPage=pageOpt}}pageOpt.remove()}$(editRow).attr("id","edit-"+id).addClass("inline-editor").show();$(".ptitle",editRow).focus();if(t.type=="post"){tax="post_tag";$('tr.inline-editor textarea[name="tags_input"]').suggest("admin-ajax.php?action=ajax-tag-search&tax="+tax,{delay:500,minchars:2,multiple:true,multipleSep:", "})}return false},save:function(id){var params,fields,page=$(".post_status_page").val()||"";if(typeof(id)=="object"){id=this.getId(id)}$("table.widefat .inline-edit-save .waiting").show();params={action:"inline-save",post_type:this.type,post_ID:id,edit_date:"true",post_status:page};fields=$("#edit-"+id+" :input").serialize();params=fields+"&"+$.param(params);$.post("admin-ajax.php",params,function(r){$("table.widefat .inline-edit-save .waiting").hide();if(r){if(-1!=r.indexOf("<tr")){$(inlineEditPost.what+id).remove();$("#edit-"+id).before(r).remove();$(inlineEditPost.what+id).hide().fadeIn()}else{r=r.replace(/<.[^<>]*?>/g,"");$("#edit-"+id+" .inline-edit-save").append('<span class="error">'+r+"</span>")}}else{$("#edit-"+id+" .inline-edit-save").append('<span class="error">'+inlineEditL10n.error+"</span>")}},"html");return false},revert:function(){var id;if(id=$("table.widefat tr.inline-editor").attr("id")){$("table.widefat .inline-edit-save .waiting").hide();if("bulk-edit"==id){$("table.widefat #bulk-edit").removeClass("inline-editor").hide();$("#bulk-titles").html("");$("#inlineedit").append($("#bulk-edit"))}else{$("#"+id).remove();id=id.substr(id.lastIndexOf("-")+1);$(this.what+id).show()}}return false},getId:function(o){var id=o.tagName=="TR"?o.id:$(o).parents("tr").attr("id"),parts=id.split("-");return parts[parts.length-1]}};$(document).ready(function(){inlineEditPost.init()})})(jQuery);
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkwpincludesscriptloaderphp"></a>
<div class="modfile"><h4>Modified: trunk/wp-includes/script-loader.php (12045 => 12046)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-includes/script-loader.php        2009-10-15 21:47:35 UTC (rev 12045)
+++ trunk/wp-includes/script-loader.php        2009-10-17 05:18:29 UTC (rev 12046)
</span><span class="lines">@@ -335,7 +335,7 @@
</span><span class="cx">                 $scripts->add( 'theme-preview', "/wp-admin/js/theme-preview$suffix.js", array( 'thickbox', 'jquery' ), '20090319' );
</span><span class="cx">                 $scripts->add_data( 'theme-preview', 'group', 1 );
</span><span class="cx">
</span><del>-                $scripts->add( 'inline-edit-post', "/wp-admin/js/inline-edit-post$suffix.js", array( 'jquery', 'suggest' ), '20090725' );
</del><ins>+                $scripts->add( 'inline-edit-post', "/wp-admin/js/inline-edit-post$suffix.js", array( 'jquery', 'suggest' ), '20091016' );
</ins><span class="cx">                 $scripts->add_data( 'inline-edit-post', 'group', 1 );
</span><span class="cx">                 $scripts->localize( 'inline-edit-post', 'inlineEditL10n', array(
</span><span class="cx">                         'error' => __('Error while saving the changes.'),
</span></span></pre>
</div>
</div>
</body>
</html>