diff options
author | donncha <donncha@7be80a69-a1ef-0310-a953-fb0f7c49ff36> | 2007-10-30 16:49:38 +0000 |
---|---|---|
committer | donncha <donncha@7be80a69-a1ef-0310-a953-fb0f7c49ff36> | 2007-10-30 16:49:38 +0000 |
commit | d85d717aedbc7690e2a450e40dab8fcebd94b38c (patch) | |
tree | a7340a14bb1192e977fca4f26beef29869e17579 /wp-admin/js | |
parent | 9817ff2d282c68faaa09232845829b96f207e72b (diff) | |
download | wordpress-mu-d85d717aedbc7690e2a450e40dab8fcebd94b38c.tar.gz wordpress-mu-d85d717aedbc7690e2a450e40dab8fcebd94b38c.tar.xz wordpress-mu-d85d717aedbc7690e2a450e40dab8fcebd94b38c.zip |
Merge with WordPress 2.3.1
git-svn-id: http://svn.automattic.com/wordpress-mu/trunk@1139 7be80a69-a1ef-0310-a953-fb0f7c49ff36
Diffstat (limited to 'wp-admin/js')
-rw-r--r-- | wp-admin/js/cat.js | 16 | ||||
-rw-r--r-- | wp-admin/js/categories.js | 24 | ||||
-rw-r--r-- | wp-admin/js/custom-fields.js | 55 | ||||
-rw-r--r-- | wp-admin/js/edit-comments.js | 71 | ||||
-rw-r--r-- | wp-admin/js/edit-posts.js | 22 | ||||
-rw-r--r-- | wp-admin/js/link-cat.js | 11 | ||||
-rw-r--r-- | wp-admin/js/users.js | 41 |
7 files changed, 130 insertions, 110 deletions
diff --git a/wp-admin/js/cat.js b/wp-admin/js/cat.js index 9cb81cf..b486996 100644 --- a/wp-admin/js/cat.js +++ b/wp-admin/js/cat.js @@ -1,4 +1,12 @@ -jQuery( function($) { - $('#jaxcat').prepend('<span id="ajaxcat"><input type="text" name="newcat" id="newcat" size="16" autocomplete="off"/><input type="button" name="Button" class="add:categorychecklist:jaxcat" id="catadd" value="' + catL10n.add + '"/><input type="hidden"/><input type="hidden"/><span id="howto">' + catL10n.how + '</span></span><span id="cat-ajax-response"></span>') - var a = $('#categorychecklist').wpList( { alt: '', response: 'cat-ajax-response' } ); -} ); +addLoadEvent(function(){catList=new listMan('categorychecklist');catList.ajaxRespEl='jaxcat';catList.topAdder=1;catList.alt=0;catList.showLink=0;}); +addLoadEvent(newCatAddIn); +function newCatAddIn() { + var jaxcat = $('jaxcat'); + if ( !jaxcat ) + return false; + // These multiple blank hidden inputs are needed: https://bugzilla.mozilla.org/show_bug.cgi?id=377815 , #3895 , #4664 + Element.update(jaxcat,'<span id="ajaxcat"><input type="text" name="newcat" id="newcat" size="16" autocomplete="off"/><input type="button" name="Button" id="catadd" value="' + catL10n.add + '"/><input type="hidden"/><input type="hidden"/><span id="howto">' + catL10n.how + '</span></span>'); + $('newcat').onkeypress = function(e) { return killSubmit("catList.ajaxAdder('category','jaxcat');", e); }; + $('catadd').onclick = function() { catList.ajaxAdder('category', 'jaxcat'); }; +} + diff --git a/wp-admin/js/categories.js b/wp-admin/js/categories.js index 23a67c5..3cee6c6 100644 --- a/wp-admin/js/categories.js +++ b/wp-admin/js/categories.js @@ -1,18 +1,16 @@ -jQuery(function($) { - var options = document.forms['addcat'].category_parent.options; - - var addAfter = function( r, settings ) { - var name = $("<span>" + $('name', r).text() + "</span>").html(); - var id = $('cat', r).attr('id'); +addLoadEvent(function() { + if (!theList.theList) return false; + document.forms.addcat.submit.onclick = function(e) {return killSubmit('theList.ajaxAdder("cat", "addcat");', e); }; + theList.addComplete = function(what, where, update, transport) { + var name = getNodeValue(transport.responseXML, 'name').unescapeHTML(); + var id = transport.responseXML.getElementsByTagName(what)[0].getAttribute('id'); + var options = document.forms['addcat'].category_parent.options; options[options.length] = new Option(name, id); - } - - var delAfter = function( r, settings ) { - var id = $('cat', r).attr('id'); + }; + theList.delComplete = function(what, id) { + var options = document.forms['addcat'].category_parent.options; for ( var o = 0; o < options.length; o++ ) if ( id == options[o].value ) options[o] = null; - } - - var a = $('#the-list').wpList( { addAfter: addAfter, delAfter: delAfter } ); + }; }); diff --git a/wp-admin/js/custom-fields.js b/wp-admin/js/custom-fields.js index 8f2b1a5..ad7a2db 100644 --- a/wp-admin/js/custom-fields.js +++ b/wp-admin/js/custom-fields.js @@ -1,33 +1,26 @@ -jQuery( function($) { - var before = function() { - var nonce = $('#newmeta [@name=_ajax_nonce]').val(); - var postId = $('#post_ID').val(); - if ( !nonce || !postId ) { return false; } - return [nonce,postId]; +function customFieldsOnComplete( what, where, update, transport ) { + var pidEl = $('post_ID'); + pidEl.name = 'post_ID'; + pidEl.value = getNodeValue(transport.responseXML, 'postid'); + var aEl = $('hiddenaction') + if ( aEl.value == 'post' ) aEl.value = 'postajaxpost'; +} +addLoadEvent(customFieldsAddIn); +function customFieldsAddIn() { + theList.showLink=0; + theList.addComplete = customFieldsOnComplete; + if (!theList.theList) return false; + inputs = theList.theList.getElementsByTagName('input'); + for ( var i=0; i < inputs.length; i++ ) { + if ('text' == inputs[i].type) { + inputs[i].setAttribute('autocomplete', 'off'); + inputs[i].onkeypress = function(e) {return killSubmit('theList.ajaxUpdater("meta", "meta-' + parseInt(this.name.slice(5),10) + '");', e); }; + } + if ('updatemeta' == inputs[i].className) { + inputs[i].onclick = function(e) {return killSubmit('theList.ajaxUpdater("meta", "meta-' + parseInt(this.parentNode.parentNode.id.slice(5),10) + '");', e); }; + } } - var addBefore = function( s ) { - var b = before(); - if ( !b ) { return false; } - s.data = s.data.replace(/_ajax_nonce=[a-f0-9]+/, '_ajax_nonce=' + b[0]) + '&post_id=' + b[1]; - return s; - }; - - var addAfter = function( r, s ) { - var postId = $('postid', r).text(); - if ( !postId ) { return; } - $('#post_ID').attr( 'name', 'post_ID' ).val( postId ); - var h = $('#hiddenaction'); - if ( 'post' == h.val() ) { h.val( 'postajaxpost' ); } - }; - - var delBefore = function( s ) { - var b = before(); if ( !b ) return false; - s.data._ajax_nonce = b[0]; s.data.post_id = b[1]; - return s; - } - - $('#the-list') - .wpList( { addBefore: addBefore, addAfter: addAfter, delBefore: delBefore } ) - .find('.updatemeta, .deletemeta').attr( 'type', 'button' ); -} ); + $('metakeyinput').onkeypress = function(e) {return killSubmit('theList.inputData+="&id="+$("post_ID").value;theList.ajaxAdder("meta", "newmeta");', e); }; + $('updatemetasub').onclick = function(e) {return killSubmit('theList.inputData+="&id="+$("post_ID").value;theList.ajaxAdder("meta", "newmeta");', e); }; +} diff --git a/wp-admin/js/edit-comments.js b/wp-admin/js/edit-comments.js index a185774..e1fc68f 100644 --- a/wp-admin/js/edit-comments.js +++ b/wp-admin/js/edit-comments.js @@ -1,26 +1,59 @@ -var list; var extra; -jQuery(function($) { +addLoadEvent(function() { + theCommentList = new listMan('the-comment-list'); + if ( !theCommentList ) + return false; -var dimAfter = function( r, settings ) { - var a = $('#awaitmod'); - a.html( parseInt(a.html(),10) + ( $('#' + settings.element).is('.' + settings.dimClass) ? 1 : -1 ) ); -} - -var delAfter = function( r, settings ) { - var a = $('#awaitmod'); - if ( $('#' + settings.element).is('.unapproved') && parseInt(a.html(),10) > 0 ) { - a.html( parseInt(a.html(),10) - 1 ); + theExtraCommentList = new listMan('the-extra-comment-list'); + if ( theExtraCommentList ) { + theExtraCommentList.showLink = 0; + theExtraCommentList.altOffset = 1; + if ( theExtraCommentList.theList && theExtraCommentList.theList.childNodes ) + var commentNum = $A(theExtraCommentList.theList.childNodes).findAll( function(i) { return Element.visible(i) } ).length; + else + var commentNum = 0; + var urlQ = document.location.href.split('?'); + var params = urlQ[1] ? urlQ[1].toQueryParams() : []; + var search = params['s'] ? params['s'] : ''; + var page = params['apage'] ? params['apage'] : 1; } - if ( extra.size() == 0 || extra.children().size() == 0 ) { - return; + theCommentList.dimComplete = function(what,id,dimClass) { + var m = document.getElementById('awaitmod'); + if ( document.getElementById(what + '-' + id).className.match(dimClass) ) + m.innerHTML = parseInt(m.innerHTML,10) + 1; + else + m.innerHTML = parseInt(m.innerHTML,10) - 1; } - list[0].wpList.add( extra.children(':eq(0)').remove().clone() ); - $('#get-extra-comments').submit(); -} + theCommentList.delComplete = function(what,id) { + var m = document.getElementById('awaitmod'); + what = what.split('-')[0]; + if ( document.getElementById(what + '-' + id).className.match('unapproved') ) + m.innerHTML = parseInt(m.innerHTML,10) - 1; + if ( theExtraCommentList && commentNum ) { + var theMover = theExtraCommentList.theList.childNodes[0]; + Element.removeClassName(theMover,'alternate'); + theCommentList.theList.appendChild(theMover); + theExtraCommentList.inputData += '&page=' + page; + if ( search ) + theExtraCommentList.inputData += '&s=' + search; // trust the URL not the search box + theExtraCommentList.addComplete = function() { + if ( theExtraCommentList.theList.childNodes ) + var commentNum = $A(theExtraCommentList.theList.childNodes).findAll( function(i) { return Element.visible(i) } ).length; + else + var commentNum = 0; + } + theExtraCommentList.ajaxAdder( 'comment', 'ajax-response' ); // Dummy Request + } + } -extra = $('#the-extra-comment-list').wpList( { alt: '', delColor: 'none', addColor: 'none' } ); -list = $('#the-comment-list').wpList( { dimAfter : dimAfter, delAfter : delAfter, addColor: 'none' } ); + if ( theList ) // the post list: edit.php + theList.delComplete = function() { + var comments = document.getElementById('comments'); + var commdel = encloseFunc(function(a){a.parentNode.removeChild(a);},comments); + var listdel = encloseFunc(function(a){a.parentNode.removeChild(a);},theCommentList.theList); + setTimeout(commdel,705); + setTimeout(listdel,705); + } +}); -} ); diff --git a/wp-admin/js/edit-posts.js b/wp-admin/js/edit-posts.js deleted file mode 100644 index 5241c4c..0000000 --- a/wp-admin/js/edit-posts.js +++ /dev/null @@ -1,22 +0,0 @@ -jQuery(function($) { -var delAfter; var extra; var list; - -if ( document.location.href.match(/(\?|&)c=/) ) - delAfter = function() { $('#comments, #the-comment-list').remove(); } -else - delAfter = function() { - list[0].wpList.add( extra.children(':eq(0)').remove().clone() ); - $('#get-extra-posts').submit(); - } - -var addBefore = function ( settings ) { - var q = document.location.href.split('?'); - if ( q[1] ) - settings.data += '&' + q[1]; - return settings; -} - -extra = $('#the-extra-list').wpList( { alt: '', addBefore: addBefore, addColor: 'none', delColor: 'none' } ); -list = $('#the-list').wpList( { delAfter: delAfter, addColor: 'none' } ); - -} ); diff --git a/wp-admin/js/link-cat.js b/wp-admin/js/link-cat.js index e69de29..1e95fa3 100644 --- a/wp-admin/js/link-cat.js +++ b/wp-admin/js/link-cat.js @@ -0,0 +1,11 @@ +addLoadEvent(function(){linkcatList=new listMan('linkcategorychecklist');linkcatList.ajaxRespEl='jaxcat';linkcatList.topAdder=1;linkcatList.alt=0;linkcatList.showLink=0;}); +addLoadEvent(newLinkCatAddIn); +function newLinkCatAddIn() { + var jaxcat = $('jaxcat'); + if ( !jaxcat ) + return false; + Element.update(jaxcat,'<span id="ajaxcat"><input type="text" name="newcat" id="newcat" size="16" autocomplete="off"/><input type="button" name="Button" id="catadd" value="' + linkcatL10n.add + '"/><input type="hidden"/><span id="howto">' + linkcatL10n.how + '</span></span>'); + $('newcat').onkeypress = function(e) { return killSubmit("linkcatList.ajaxAdder('link-category','jaxcat');", e); }; + $('catadd').onclick = function() { linkcatList.ajaxAdder('link-category', 'jaxcat'); }; +} + diff --git a/wp-admin/js/users.js b/wp-admin/js/users.js index 5b89d0f..f249f65 100644 --- a/wp-admin/js/users.js +++ b/wp-admin/js/users.js @@ -1,22 +1,21 @@ -jQuery( function($) { - var userLists; var list; var addBefore; var addAfter; +addLoadEvent(function() { + theListEls = document.getElementsByTagName('tbody'); + theUserLists = new Array(); + for ( var l = 0; l < theListEls.length; l++ ) { + if ( theListEls[l].id ) + theUserLists[theListEls[l].id] = new listMan(theListEls[l].id); + } + addUserInputs = document.getElementById('adduser').getElementsByTagName('input'); + for ( var i = 0; i < addUserInputs.length; i++ ) { + addUserInputs[i].onkeypress = function(e) { return killSubmit('addUserSubmit();', e); } + } + document.getElementById('addusersub').onclick = function(e) { return killSubmit('addUserSubmit();', e); } +} +); - addBefore = function( s ) { - if ( $( '#role-' + $('#role').val() ).size() ) - return s; - return false; - }; - - addAfter = function( r, s ) { - var roleTable = $( '#role-' + $('role', r).text() ); - - var e = $('#user-' + $('user', r).attr('id') ); - if ( !roleTable.size() ) { return; } - if ( !e.size() ) { return; } - - roleTable[0].wpList.add(e.remove().clone()); - }; - - userLists = $('.user-list').wpList(); - list = $('#user-list').wpList( { addBefore: addBefore, addAfter: addAfter } ); -} ); +function addUserSubmit() { + var roleEl = document.getElementById('role'); + var role = roleEl.options[roleEl.selectedIndex].value; + if ( !theUserLists['role-' + role] ) return true; + return theUserLists['role-' + role].ajaxAdder('user', 'adduser'); +} |