Useless notice

git-svn-id: https://develop.svn.wordpress.org/trunk@4069 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Matt Mullenweg 2006-07-29 17:05:39 +00:00
parent da4045e886
commit 24c76ec9d6

View File

@ -1,173 +1,170 @@
<?php <?php
require_once('admin.php'); require_once('admin.php');
header('Content-type: text/javascript; charset=' . get_settings('blog_charset'), true); header('Content-type: text/javascript; charset=' . get_settings('blog_charset'), true);
$handler = get_settings( 'siteurl' ) . '/wp-admin/admin-ajax.php'; $handler = get_settings( 'siteurl' ) . '/wp-admin/admin-ajax.php';
?> ?>
addLoadEvent(function(){theList=new listMan();}); addLoadEvent(function(){theList=new listMan();});
function deleteSomething(what,id,message,obj){if(!obj)obj=theList;if(!message)message="<?php printf(__('Are you sure you want to delete this %s?'),"'+what+'"); ?>";if(confirm(message))return obj.ajaxDelete(what,id);else return false;} function deleteSomething(what,id,message,obj){if(!obj)obj=theList;if(!message)message="<?php printf(__('Are you sure you want to delete this %s?'),"'+what+'"); ?>";if(confirm(message))return obj.ajaxDelete(what,id);else return false;}
function dimSomething(what,id,dimClass,obj){if(!obj)obj=theList;return obj.ajaxDimmer(what,id,dimClass);} function dimSomething(what,id,dimClass,obj){if(!obj)obj=theList;return obj.ajaxDimmer(what,id,dimClass);}
function WPAjax(file, responseEl){//class WPAjax extends sack function WPAjax(file, responseEl){//class WPAjax extends sack
this.getResponseElement=function(r){var p=document.getElementById(r+'-p');if(!p){p=document.createElement('span');p.id=r+'-p';document.getElementById(r).appendChild(p);}this.myResponseElement=p; } this.getResponseElement=function(r){var p=document.getElementById(r+'-p');if(!p){p=document.createElement('span');p.id=r+'-p';document.getElementById(r).appendChild(p);}this.myResponseElement=p; }
this.parseAjaxResponse=function(){ this.parseAjaxResponse=function(){
if(isNaN(this.response)){this.myResponseElement.innerHTML='<div class="error"><p>'+this.response+'</p></div>';return false;} if(isNaN(this.response)){this.myResponseElement.innerHTML='<div class="error"><p>'+this.response+'</p></div>';return false;}
this.response=parseInt(this.response,10); this.response=parseInt(this.response,10);
if(-1==this.response){this.myResponseElement.innerHTML="<div class='error'><p><?php _e("You don't have permission to do that."); ?></p></div>";return false;} if(-1==this.response){this.myResponseElement.innerHTML="<div class='error'><p><?php _e("You don't have permission to do that."); ?></p></div>";return false;}
else if(0==this.response){this.myResponseElement.innerHTML="<div class='error'><p><?php _e("Something odd happened. Try refreshing the page? Either that or what you tried to change never existed in the first place."); ?></p></div>";return false;} else if(0==this.response){this.myResponseElement.innerHTML="<div class='error'><p><?php _e("Something odd happened. Try refreshing the page? Either that or what you tried to change never existed in the first place."); ?></p></div>";return false;}
return true; return true;
} }
this.parseAjaxResponseXML=function(){ this.parseAjaxResponseXML=function(){
if(this.responseXML&&typeof this.responseXML=='object')return true; if(this.responseXML&&typeof this.responseXML=='object')return true;
if(isNaN(this.response)){this.myResponseElement.innerHTML='<div class="error"><p>'+this.response+'</p></div>';return false;} if(isNaN(this.response)){this.myResponseElement.innerHTML='<div class="error"><p>'+this.response+'</p></div>';return false;}
var r=parseInt(this.response,10); var r=parseInt(this.response,10);
if(-1==r){this.myResponseElement.innerHTML="<div class='error'><p><?php _e("You don't have permission to do that."); ?></p></div>";} if(-1==r){this.myResponseElement.innerHTML="<div class='error'><p><?php _e("You don't have permission to do that."); ?></p></div>";}
else if(0==r){this.myResponseElement.innerHTML="<div class='error'><p><?php _e("Invalid Entry."); ?></p></div>";} else if(0==r){this.myResponseElement.innerHTML="<div class='error'><p><?php _e("Invalid Entry."); ?></p></div>";}
return false; return false;
} }
this.init(file,responseEl); this.init(file,responseEl);
} WPAjax.prototype=new sack; } WPAjax.prototype=new sack;
WPAjax.prototype.init=function(f,r){ WPAjax.prototype.init=function(f,r){
this.encVar('cookie', document.cookie); this.encVar('cookie', document.cookie);
this.requestFile=f?f:'<?php echo $handler; ?>';this.getResponseElement(r);this.method='POST'; this.requestFile=f?f:'<?php echo $handler; ?>';this.getResponseElement(r);this.method='POST';
this.onLoading=function(){this.myResponseElement.innerHTML="<?php _e('Sending Data...'); ?>";}; }
this.onLoaded=function(){this.myResponseElement.innerHTML="<?php _e('Data Sent...'); ?>";};
this.onInteractive=function(){this.myResponseElement.innerHTML="<?php _e('Processing Data...'); ?>";}; function listMan(theListId){
} this.theList=null;this.theListId=theListId;
this.ajaxRespEl=null;this.ajaxHandler='<?php echo $handler; ?>';
function listMan(theListId){ this.inputData='';this.clearInputs=new Array();this.showLink=1;
this.theList=null;this.theListId=theListId; this.topAdder=0;this.alt='alternate';this.recolorPos;this.reg_color='#FFFFFF';this.alt_color='#F1F1F1';
this.ajaxRespEl=null;this.ajaxHandler='<?php echo $handler; ?>'; this.addComplete=null;this.delComplete=null;this.dimComplete=null;
this.inputData='';this.clearInputs=new Array();this.showLink=1; var listType;var listItems;
this.topAdder=0;this.alt='alternate';this.recolorPos;this.reg_color='#FFFFFF';this.alt_color='#F1F1F1'; self.aTrap=0;
this.addComplete=null;this.delComplete=null;this.dimComplete=null;
var listType;var listItems; this.ajaxAdder=function(what,where,update){//for TR, server must wrap TR in TABLE TBODY. this.makeEl cleans it
self.aTrap=0; if(self.aTrap)return;self.aTrap=1;setTimeout('aTrap=0',300);
this.ajaxAdd=new WPAjax(this.ajaxHandler,this.ajaxRespEl?this.ajaxRespEl:'ajax-response');
this.ajaxAdder=function(what,where,update){//for TR, server must wrap TR in TABLE TBODY. this.makeEl cleans it if(this.ajaxAdd.failed)return true;
if(self.aTrap)return;self.aTrap=1;setTimeout('aTrap=0',300); this.grabInputs(where);
this.ajaxAdd=new WPAjax(this.ajaxHandler,this.ajaxRespEl?this.ajaxRespEl:'ajax-response'); var tempObj=this;
if(this.ajaxAdd.failed)return true; this.ajaxAdd.onCompletion=function(){
this.grabInputs(where); if(!this.parseAjaxResponseXML())return;
var tempObj=this; var newItems=this.responseXML.getElementsByTagName(what);
this.ajaxAdd.onCompletion=function(){ if(tempObj.topAdder)tempObj.recolorPos=0;
if(!this.parseAjaxResponseXML())return; if(newItems){for (c=0;c<newItems.length;c++){
var newItems=this.responseXML.getElementsByTagName(what); var id=getNodeValue(newItems[c],'id');
if(tempObj.topAdder)tempObj.recolorPos=0; var exists=document.getElementById(what+'-'+id);
if(newItems){for (c=0;c<newItems.length;c++){ if(exists)tempObj.replaceListItem(exists.id,getNodeValue(newItems[c],'newitem'),newItems.length,update);
var id=getNodeValue(newItems[c],'id'); else tempObj.addListItem(getNodeValue(newItems[c],'newitem'),newItems.length);
var exists=document.getElementById(what+'-'+id); }}
if(exists)tempObj.replaceListItem(exists.id,getNodeValue(newItems[c],'newitem'),newItems.length,update); tempObj.inputData='';
else tempObj.addListItem(getNodeValue(newItems[c],'newitem'),newItems.length); if(tempObj.showLink){this.myResponseElement.innerHTML='<div id="jumplink" class="updated fade"><p><a href="#'+what+'-'+id+'"><?php _e('Jump to new item'); ?></a></p></div>';}
}} else this.myResponseElement.innerHTML='';
tempObj.inputData=''; for(var i=0;i<tempObj.clearInputs.length;i++){try{var theI=document.getElementById(tempObj.clearInputs[i]);if(theI.tagName.match(/select/i))theI.selectedIndex=0;else theI.value='';}catch(e){}}
if(tempObj.showLink){this.myResponseElement.innerHTML='<div id="jumplink" class="updated fade"><p><a href="#'+what+'-'+id+'"><?php _e('Jump to new item'); ?></a></p></div>';} if(tempObj.addComplete&&typeof tempObj.addComplete=='function')tempObj.addComplete(what,where,update);
else this.myResponseElement.innerHTML=''; tempObj.recolorList(tempObj.recolorPos,1000);
for(var i=0;i<tempObj.clearInputs.length;i++){try{var theI=document.getElementById(tempObj.clearInputs[i]);if(theI.tagName.match(/select/i))theI.selectedIndex=0;else theI.value='';}catch(e){}} }
if(tempObj.addComplete&&typeof tempObj.addComplete=='function')tempObj.addComplete(what,where,update); this.ajaxAdd.runAJAX('action='+(update?'update-':'add-')+what+this.inputData);
tempObj.recolorList(tempObj.recolorPos,1000); return false;
} }
this.ajaxAdd.runAJAX('action='+(update?'update-':'add-')+what+this.inputData); this.ajaxUpdater=function(what,where){return this.ajaxAdder(what,where,true);}
return false; this.ajaxDelete=function(what,id){
} if(self.aTrap)return;self.aTrap=1;setTimeout('aTrap=0',300);
this.ajaxUpdater=function(what,where){return this.ajaxAdder(what,where,true);} this.ajaxDel=new WPAjax(this.ajaxHandler,this.ajaxRespEl?this.ajaxRespEl:'ajax-response');
this.ajaxDelete=function(what,id){ if(this.ajaxDel.failed)return true;
if(self.aTrap)return;self.aTrap=1;setTimeout('aTrap=0',300); var tempObj=this;
this.ajaxDel=new WPAjax(this.ajaxHandler,this.ajaxRespEl?this.ajaxRespEl:'ajax-response'); this.ajaxDel.onCompletion=function(){if(this.parseAjaxResponse()){tempObj.removeListItem(what.replace('-as-spam','')+'-'+id);this.myResponseElement.innerHTML='';if(tempObj.delComplete&&typeof tempObj.delComplete=='function')tempObj.delComplete(what,id);tempObj.recolorList(tempObj.recolorPos,1000)}};
if(this.ajaxDel.failed)return true; this.ajaxDel.runAJAX('action=delete-'+what+'&id='+id);
var tempObj=this; return false;
this.ajaxDel.onCompletion=function(){if(this.parseAjaxResponse()){tempObj.removeListItem(what.replace('-as-spam','')+'-'+id);this.myResponseElement.innerHTML='';if(tempObj.delComplete&&typeof tempObj.delComplete=='function')tempObj.delComplete(what,id);tempObj.recolorList(tempObj.recolorPos,1000)}}; }
this.ajaxDel.runAJAX('action=delete-'+what+'&id='+id); this.ajaxDimmer=function(what,id,dimClass){
return false; if(self.aTrap)return;self.aTrap=1;setTimeout('aTrap=0',300);
} this.ajaxDim=new WPAjax(this.ajaxHandler,this.ajaxRespEl?this.ajaxRespEl:'ajax-response');
this.ajaxDimmer=function(what,id,dimClass){ if(this.ajaxDim.failed)return true;
if(self.aTrap)return;self.aTrap=1;setTimeout('aTrap=0',300); var tempObj=this;
this.ajaxDim=new WPAjax(this.ajaxHandler,this.ajaxRespEl?this.ajaxRespEl:'ajax-response'); this.ajaxDim.onCompletion=function(){if(this.parseAjaxResponse()){tempObj.dimItem(what+'-'+id,dimClass);this.myResponseElement.innerHTML='';if(tempObj.dimComplete&&typeof tempObj.dimComplete=='function')tempObj.dimComplete(what,id,dimClass);}};
if(this.ajaxDim.failed)return true; this.ajaxDim.runAJAX('action=dim-'+what+'&id='+id);
var tempObj=this; return false;
this.ajaxDim.onCompletion=function(){if(this.parseAjaxResponse()){tempObj.dimItem(what+'-'+id,dimClass);this.myResponseElement.innerHTML='';if(tempObj.dimComplete&&typeof tempObj.dimComplete=='function')tempObj.dimComplete(what,id,dimClass);}}; }
this.ajaxDim.runAJAX('action=dim-'+what+'&id='+id); this.makeEl=function(h){var fakeItem=document.createElement('div');fakeItem.innerHTML=h;var r=fakeItem.firstChild;while(r.tagName.match(/(table|tbody)/i)){r=r.firstChild;}return r;}
return false; this.addListItem=function(h,tot){
} newItem=this.makeEl(h);
this.makeEl=function(h){var fakeItem=document.createElement('div');fakeItem.innerHTML=h;var r=fakeItem.firstChild;while(r.tagName.match(/(table|tbody)/i)){r=r.firstChild;}return r;} if(this.topAdder){var firstItem=this.theList.getElementsByTagName('table'==listType?'tr':'li')[0];listItems.unshift(newItem.id);this.recolorPos++}
this.addListItem=function(h,tot){ else{listItems.push(newItem.id);this.recolorPos=listItems.length;}
newItem=this.makeEl(h); if(this.alt&&!((tot-this.recolorPos)%2))newItem.className+=' '+this.alt;
if(this.topAdder){var firstItem=this.theList.getElementsByTagName('table'==listType?'tr':'li')[0];listItems.unshift(newItem.id);this.recolorPos++} if(firstItem)firstItem.parentNode.insertBefore(newItem,firstItem);
else{listItems.push(newItem.id);this.recolorPos=listItems.length;} else this.theList.appendChild(newItem);
if(this.alt&&!((tot-this.recolorPos)%2))newItem.className+=' '+this.alt; Fat.fade_element(newItem.id);
if(firstItem)firstItem.parentNode.insertBefore(newItem,firstItem); }
else this.theList.appendChild(newItem); this.removeListItem=function(id,noFade){
Fat.fade_element(newItem.id); if(!noFade)Fat.fade_element(id,null,700,'#FF3333');
} var theItem=document.getElementById(id);
this.removeListItem=function(id,noFade){ if(!noFade){var func=encloseFunc(function(a){a.parentNode.removeChild(a);},theItem);setTimeout(func,705);}
if(!noFade)Fat.fade_element(id,null,700,'#FF3333'); else{theItem.parentNode.removeChild(theItem);}
var theItem=document.getElementById(id); var pos=this.getListPos(id);
if(!noFade){var func=encloseFunc(function(a){a.parentNode.removeChild(a);},theItem);setTimeout(func,705);} listItems.splice(pos,1);
else{theItem.parentNode.removeChild(theItem);} }
var pos=this.getListPos(id); this.replaceListItem=function(id,h,tot,update){
listItems.splice(pos,1); if(!update){this.removeListItem(id,true);this.addListItem(h,tot);return;}
} var newItem=this.makeEl(h);
this.replaceListItem=function(id,h,tot,update){ var oldItem=document.getElementById(id);
if(!update){this.removeListItem(id,true);this.addListItem(h,tot);return;} var pos=this.getListPos(oldItem.id,1);if(this.alt&&!(pos%2))newItem.className+=' '+this.alt;
var newItem=this.makeEl(h); oldItem.parentNode.replaceChild(newItem,oldItem);
var oldItem=document.getElementById(id); Fat.fade_element(newItem.id);
var pos=this.getListPos(oldItem.id,1);if(this.alt&&!(pos%2))newItem.className+=' '+this.alt; }
oldItem.parentNode.replaceChild(newItem,oldItem); this.dimItem=function(id,dimClass,noFade){
Fat.fade_element(newItem.id); var theItem=document.getElementById(id);
} if(theItem.className.match(dimClass)){if(!noFade)Fat.fade_element(id,null,700,null);theItem.className=theItem.className.replace(dimClass,'');}
this.dimItem=function(id,dimClass,noFade){ else{if(!noFade)Fat.fade_element(id,null,700,'#FF3333');theItem.className=theItem.className+' '+dimClass;}
var theItem=document.getElementById(id); }
if(theItem.className.match(dimClass)){if(!noFade)Fat.fade_element(id,null,700,null);theItem.className=theItem.className.replace(dimClass,'');} this.grabInputs=function(elId){//text,password,hidden,textarea,select
else{if(!noFade)Fat.fade_element(id,null,700,'#FF3333');theItem.className=theItem.className+' '+dimClass;} var theItem=document.getElementById(elId);
} var inputs=new Array();
this.grabInputs=function(elId){//text,password,hidden,textarea,select inputs.push(theItem.getElementsByTagName('input'),theItem.getElementsByTagName('textarea'),theItem.getElementsByTagName('select'));
var theItem=document.getElementById(elId); for(var a=0;a<inputs.length;a++){
var inputs=new Array(); for(var i=0;i<inputs[a].length;i++){
inputs.push(theItem.getElementsByTagName('input'),theItem.getElementsByTagName('textarea'),theItem.getElementsByTagName('select')); if('action'==inputs[a][i].name)continue;
for(var a=0;a<inputs.length;a++){ if('text'==inputs[a][i].type||'password'==inputs[a][i].type||'hidden'==inputs[a][i].type||inputs[a][i].tagName.match(/textarea/i)){
for(var i=0;i<inputs[a].length;i++){ this.inputData+='&'+inputs[a][i].name+'='+encodeURIComponent(inputs[a][i].value);if('hidden'!=inputs[a][i].type)this.clearInputs.push(inputs[a][i].id);
if('action'==inputs[a][i].name)continue; }else if(inputs[a][i].tagName.match(/select/i)){
if('text'==inputs[a][i].type||'password'==inputs[a][i].type||'hidden'==inputs[a][i].type||inputs[a][i].tagName.match(/textarea/i)){ this.inputData+='&'+inputs[a][i].name+'='+encodeURIComponent(inputs[a][i].options[inputs[a][i].selectedIndex].value);this.clearInputs.push(inputs[a][i].id);
this.inputData+='&'+inputs[a][i].name+'='+encodeURIComponent(inputs[a][i].value);if('hidden'!=inputs[a][i].type)this.clearInputs.push(inputs[a][i].id); }
}else if(inputs[a][i].tagName.match(/select/i)){ }
this.inputData+='&'+inputs[a][i].name+'='+encodeURIComponent(inputs[a][i].options[inputs[a][i].selectedIndex].value);this.clearInputs.push(inputs[a][i].id); }
} }
} this.getListPos=function(id,n){for(var i=0;i<listItems.length;i++){if(id==listItems[i]){var pos=i;break;}}if(!n){if(pos<this.recolorPos)this.recolorPos=pos;}return pos;}
} this.getListItems=function(){
} if(this.theList)return;
this.getListPos=function(id,n){for(var i=0;i<listItems.length;i++){if(id==listItems[i]){var pos=i;break;}}if(!n){if(pos<this.recolorPos)this.recolorPos=pos;}return pos;} listItems=new Array();
this.getListItems=function(){ if(this.theListId){this.theList=document.getElementById(this.theListId);if(!this.theList)return false;}
if(this.theList)return; else{this.theList=document.getElementById('the-list');if(this.theList)this.theListId='the-list';}
listItems=new Array(); if(this.theList){
if(this.theListId){this.theList=document.getElementById(this.theListId);if(!this.theList)return false;} var items=this.theList.getElementsByTagName('tr');listType='table';
else{this.theList=document.getElementById('the-list');if(this.theList)this.theListId='the-list';} if(!items[0]){items=this.theList.getElementsByTagName('li');listType='list';}
if(this.theList){ for(var i=0;i<items.length;i++){listItems.push(items[i].id);}
var items=this.theList.getElementsByTagName('tr');listType='table'; this.recolorPos=listItems.length;
if(!items[0]){items=this.theList.getElementsByTagName('li');listType='list';} }
for(var i=0;i<items.length;i++){listItems.push(items[i].id);} }
this.recolorPos=listItems.length; this.recolorList=function(pos,dur){
} if(!this.alt)return;if(!pos)pos=0;this.recolorPos=listItems.length;
} for(var i=pos;i<listItems.length;i++){var e=document.getElementById(listItems[i]);if(i%2)e.className=e.className.replace(this.alt,'fade-'+this.alt_color.slice(1));else e.className+=' '+this.alt+' fade-'+this.reg_color.slice(1);e.style.backgroundColor='';}
this.recolorList=function(pos,dur){ Fat.fade_all(dur);
if(!this.alt)return;if(!pos)pos=0;this.recolorPos=listItems.length; var func=encloseFunc(function(l){for(var i=0;i<l.length;i++){var e=document.getElementById(l[i]);e.className=e.className.replace(/fade-[a-f0-9]{6}/i,'');}},listItems);
for(var i=pos;i<listItems.length;i++){var e=document.getElementById(listItems[i]);if(i%2)e.className=e.className.replace(this.alt,'fade-'+this.alt_color.slice(1));else e.className+=' '+this.alt+' fade-'+this.reg_color.slice(1);e.style.backgroundColor='';} setTimeout(func,dur+5);
Fat.fade_all(dur); }
var func=encloseFunc(function(l){for(var i=0;i<l.length;i++){var e=document.getElementById(l[i]);e.className=e.className.replace(/fade-[a-f0-9]{6}/i,'');}},listItems); this.getListItems();
setTimeout(func,dur+5); }
} //No submit unless code returns true.
this.getListItems(); function killSubmit ( code, e ) {
} e = e ? e : window.event;
//No submit unless code returns true. if ( !e ) return;
function killSubmit ( code, e ) { var t = e.target ? e.target : e.srcElement;
e = e ? e : window.event; if ( ( 'text' == t.type && e.keyCode == 13 ) || ( 'submit' == t.type && 'click' == e.type ) ) {
if ( !e ) return; if ( ( 'string' == typeof code && !eval(code) ) || 'function' == typeof code && !code() ) {
var t = e.target ? e.target : e.srcElement; if ( !eval(code) ) { e.returnValue = false; e.cancelBubble = true; return false; }
if ( ( 'text' == t.type && e.keyCode == 13 ) || ( 'submit' == t.type && 'click' == e.type ) ) { }
if ( ( 'string' == typeof code && !eval(code) ) || 'function' == typeof code && !code() ) { }
if ( !eval(code) ) { e.returnValue = false; e.cancelBubble = true; return false; } }
} //Pretty func adapted from ALA http://www.alistapart.com/articles/gettingstartedwithajax
} function getNodeValue(tree,el){try { var r = tree.getElementsByTagName(el)[0].firstChild.nodeValue; } catch(err) { var r = null; } return r; }
} //Generic but lame JS closure
//Pretty func adapted from ALA http://www.alistapart.com/articles/gettingstartedwithajax function encloseFunc(f){var a=arguments[1];return function(){return f(a);}}
function getNodeValue(tree,el){try { var r = tree.getElementsByTagName(el)[0].firstChild.nodeValue; } catch(err) { var r = null; } return r; }
//Generic but lame JS closure
function encloseFunc(f){var a=arguments[1];return function(){return f(a);}}