function emptyIfNull(a){if(!a){return"";}return a;}function convertButtonsToYUI(){buttons=[];$("input[type=button]").each(function(f,a){var d=this.onclick;var c=$(a).attr("id");var e=new YAHOO.widget.Button(c);if(d){e.on("click",d);}buttons[c]=e;});return buttons;}function mmCreateUploadFileUrl(b){var a=new Date();if(document.location.protocol==="https:"){return"https://"+location.host+"/_mmwebext/"+b+"?"+a.getTime();}else{return"http://"+location.host+"/_mmwebext/"+b+"?"+a.getTime();}}function mmRequestSoapUrl(){if(document.location.protocol==="https:"){return"https://"+location.host+"/_mmwebext/mmwebext.dll?Soap";}else{return"http://"+location.host+"/_mmwebext/mmwebext.dll?Soap";}}function getNetmask(e,f){var c=e.split(".");var b=f.split(".");var d=[];for(var a=0;a<4;a++){d.push(255-(parseInt(c[a],10)^parseInt(b[a],10)).toString());}return d.join(".");}function CIDR2Range(b){var a=b.split("/");var d=a[0];var c=intToIP(ipToInt(d)+Math.pow(2,32-parseInt(a[1],10))-1);return{name:d+"-"+c,from:d,to:c};}function ipToInt(c){var d=0;var b=c.split(".");for(var a=0;a<4;a++){d=256*d+parseInt(b[a],10);}return d;}function intToIP(b){var a=new Array(4);for(var c=3;c>=0;c--){a[c]=b&255;b=b>>8;}return a.join(".");}function addToIP(b,a){return intToIP(ipToInt(b)+a);}function mmEncode(a){var b=a.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/\'/g,"&apos;").replace(/\"/g,"&quot;");return b;}function mmEscapeNodeName(e,a){var d="";if(a){a.value=false;}if(e){for(var b=0;b<e.length;b++){var f=e.charAt(b);if(((f<"A")||(f>"Z"))&&(f<"a")||(f>"z")){d+="XX_"+e.charCodeAt(b);if(a){a.value=true;}}else{d+=f;}}}return d;}var mmBlocker=function(){var a=null;return{block:function(c,b){this.theBlockedObject=c;this.theBlockedObject.block({css:{border:"none",padding:"15px",backgroundColor:"#000","-webkit-border-radius":"10px","-moz-border-radius":"10px",opacity:0.7,color:"#fff",cursor:"default"},overlayCSS:{backgroundColor:"#000",opacity:0.25,cursor:"default"},message:b});},unblock:function(b){if(b){b.unblock();}else{if(this.theBlockedObject){this.theBlockedObject.unblock();}}}};}();var mmShowProgress=false;function _mmStartProcess(a){if(mmShowProgress){var b;if(a){b=$("#"+a);}else{b=$("#data").parent();}mmBlocker.block(b);}}function mmStartProcess(a){mmShowProgress=true;setTimeout(function(){_mmStartProcess(a);},500);}function mmStopProcess(a){mmShowProgress=false;var b;if(a){b=$("#"+a);}else{b=$("#data").parent();}mmBlocker.unblock(b);}var mmCookie=function(){return{setCookie:function(a,b){YAHOO.util.Cookie.set(a,escape(b),{path:"/"});},setPersistentCookie:function(a,c){var b=new Date();b.setFullYear(b.getFullYear()+1);YAHOO.util.Cookie.set(a,escape(c),{expires:b});},getCookie:function(a){var b=unescape(YAHOO.util.Cookie.get(a));if(b==="null"||b===""){return null;}return b;},removeCookie:function(a){try{this.setCookie(a,null);}catch(b){}}};}();function hideDiv(a){$("#"+a).hide();}function showDiv(a){$("#"+a).show();}function setEnabled(a,b){if(b){a.removeAttr("disabled");}else{a.attr("disabled","disabled");}}function isEnabled(a){return a.attr("disabled")!=="disabled";}function focusFirstEditField(a){$("#"+a+" input[type='text']:first").focus().select();}function qualify(a,b){a=a?a:"";b=b?b:"";if(b.charAt(b.length-1)!=="."){b+=".";}if(a===""){return b;}if(a.charAt(a.length-1)==="."){return a;}return a+"."+b;}function mmGetZoneFromFQDN(a){var c=a.indexOf(".");if(c===-1){return"";}var b=a.substr(c+1,a.length-c);if(b.charAt(b.length-1)!=="."){b+=".";}return b;}function mmGetHostFromFQDN(a){var b=a.split(".");if(b.length<1){return a;}return b[0];}function mmSplitHost(d){var b=d.split(".");if(b.length<1){return d;}var c=b[0];b.splice(0,1);var a=b.join(".");if(a.charAt(a.length)!=="."){a+=".";}return{host:c,zone:a};}function mmGetFQDN(c,b){var a=mmSplitHost(c);if(b.charAt(b.length)!=="."){b+=".";}if(b===a.zone){return a.host;}else{return a.host+"."+a.zone;}}function mmGetArpa(b){if(!b){return"";}var a=b.split(".");var d=[];for(var c=a.length-1;c>=0;c--){d.push(a[c]);}d=d.join(".");return d;}function mmGetArpaZone(a){if(!a){return"";}var b=a.split(".");b.splice(b.length-1,1);b.reverse();b=b.join(".");b+=".in-addr.arpa.";return b;}function mmDottedQuad2IPv6(a){ipv4parts=a.split(".");if(ipv4parts.length===4){firstparts=ipv4parts[0].split(":");ipv4parts[0]=firstparts.pop();if(!validateIPv4(ipv4parts.join("."))){return"";}inIPv6=firstparts.join(":");for(var b=0;b<4;b+=2){inIPv6+=":";for(var c=0;c<2;c++){hex=parseInt(ipv4parts[b+c],10).toString(16);inIPv6+=hex.length===1?"0"+hex:hex;}}return inIPv6;}else{return a;}}function mmPrepareIPv6(c){var b=mmDottedQuad2IPv6(c);if(!b||!validateIPv6(b)){return"";}var a=b.split("::");if(a.length==2){if(a[0]===""){grplen=a[1].split(":").length;}else{if(a[1]===""){grplen=a[0].split(":").length;}else{grplen=a.join(":").split(":").length;}}numMissingGroups=8-grplen;fullIP=a[0]===""?"":a[0]+":";for(var d=0;d<numMissingGroups;d++){fullIP+="0000:";}fullIP+=a[1];fullIP=fullIP.replace(/:$/i,"");}else{fullIP=b;}parts=fullIP.split(":");zeros=["","0","00","000"];for(p in parts){if(parts[p].length!==4){numLead0=4-parts[p].length;parts[p]=zeros[numLead0]+parts[p];}}fullIP=parts.join(":");return fullIP;}function mmGetIPv6ArpaZone(c){if(!c){return"";}var b=mmPrepareIPv6(c);var a=b.replace(/:/g,"").slice(0,-1);var e="";for(var d=a.length;d>0;d--){e+=a[d-1]+".";}e+="ip6.arpa.";return e;}function printObjectType(a){switch(a){case"DNSServer":return"DNS Server";case"DHCPServer":return"DHCP Server";case"DNSZone":return"DNS Zone";case"Range":return"IP Range";case"DHCPScope":return"DHCP Scope";case"DNSView":return"DNS View";case"IPAddress":return"IP Address";case"DHCPGroup":return"DHCP Group";case"ADSite":return"AD Site";case"Suite":return"Men & Mice Suite";case"DHCPReservation":return"DHCP Reservation";case"DHCPAddressPool":return"DHCP Address Pool";case"DNSRecord":return"DNS Record";case"User":return"User";case"DHCPHost":return"DHCP Host";case"Group":return"Group";case"DHCPExclusion":return"DHCP Exclusion";case"DHCPFailoverPeer":return"DHCP Failover Peer";case"DHCPLease":return"DHCP Lease";default:return"Unknown";}}var kDNSRecordTypes={A:{"IP Address":"required ipv4"},NS:{"Name Server":"host"},CNAME:{"Target Record":"host"},PTR:{"Host Name":"host"},HINFO:{Hardware:"",OS:""},MX:{Preference:"required number",Server:"host"},TXT:{Text:""},DHCID:{Text:""},SPF:{Text:""},AAAA:{"IPv6 address":"required ipv6"},SRV:{Priority:"required number",Weight:"required number",Port:"required number",Target:"required host"},SOA:{Master:"host",Hostmaster:"required host",Serial:"required number",Refresh:"required ttlfield",Retry:"required ttlfield",Expire:"required ttlfield","Default TTL":"required ttl"},NSEC3PARAM:{Algorithm:"required number",Flags:"required number",Iterations:"required number",Salt:"isLegalSalt"}};function getRecordTypeNames(){var b=[];for(var a in kDNSRecordTypes){b.push(a);}return b;}function typedArray(a,b){this.type=a;this.data=b?b.slice():[];}typedArray.prototype.push=function(a){this.data.push(a);};typedArray.prototype.toXml=function(){str="";for(var a=0;a<this.data.length;a++){str+="<"+this.type+">";if(typeof(this.data[a])=="object"){str+=json2xml(this.data[a]);}else{str+=this.data[a];}str+="</"+this.type+">";}return str;};function json2xml(c){var d=function(g,j){var h="";if(g instanceof Array){h+="<"+j+">";if(g.length>0){var f=g[0].constructor.toString().split("(")[0].split(" ")[1];if((f==="Number")||(f==="String")||(f==="Boolean")){f=htmlEncode(f.toLowerCase(),false);}for(var k=0,o=g.length;k<o;k++){h+=d(g[k],f);}}h+="</"+j+">";}else{if(typeof(g)=="object"){var l=g.toXml!==undefined;h+="<"+j;for(var e in g){if(e.charAt(0)=="@"){h+=" "+e.substr(1)+'="'+htmlEncode(g[e].toString(),false)+'"';}else{l=true;}}h+=l?">":"/>";if(l){if(g.toXml){h+=g.toXml();}else{for(e in g){if(e=="#text"){h+=htmlEncode(g[e],false);}else{if(e=="#cdata"){h+="<![CDATA["+g[e]+"]]>";}else{if(e.charAt(0)!="@"){h+=d(g[e],e);}}}}}h+="</"+j+">";}}else{h+="<"+j+">"+htmlEncode(g.toString(),false)+"</"+j+">";}}return h;};var b="";for(var a in c){b+=d(c[a],a,"");}return b;}function htmlEncode(d,f,c){function b(j){var g="";for(var h=0;h<j.length;h++){var k=j.charAt(h);if(k<" "||k>"~"){k="&#"+k.charCodeAt()+";";}g+=k;}return g;}function e(g){c=(c>=0)?Math.floor(c):4;var q=g.split(/\r\n|\r|\n/);for(var j=0;j<q.length;j++){var r=q[j];var k="";for(var h=0;h<r.length;h++){var m=r.charAt(h);if(m==="\t"){var l=c-(k.length%c);for(var o=0;o<l;o++){k+=" ";}}else{k+=m;}}k=k.replace(/(^ )|( $)/g,"&nbsp;");q[j]=k;}var n=q.join("<br />");n=n.replace(/  /g," &nbsp;");return n;}var a=d;a=a.replace(/\&/g,"&amp;");a=a.replace(/\</g,"&lt;");a=a.replace(/\>/g,"&gt;");if(f){a=e(a);}else{a=a.replace(new RegExp('"',"g"),"&quot;");}a=b(a);return a;}function createSOAPCommand(a,b){var c=json2xml(b);return"<?xml version='1.0' encoding='utf-8'?><soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'><soap:Body><"+a+" xmlns='http://menandmice.com/webservices/'>"+c+"</"+a+"></soap:Body></soap:Envelope>";}function textValue(a){return(typeof a.text=="string")?a.text:a.textContent;}function setTextValue(b,a){if(typeof b.text=="string"){b.text=a;}else{b.textContent=a;}}function getChildElemValue(c,b){var a=c.getElementsByTagName(b);if(a.length===0){return"";}return textValue(a[0]);}function textToXML(a){if(typeof a=="string"){try{xmlDoc=new ActiveXObject("Microsoft.XMLDOM");xmlDoc.async="false";xmlDoc.loadXML(a);}catch(b){parser=new DOMParser();xmlDoc=parser.parseFromString(a,"text/xml");}return xmlDoc;}return a;}function doLogout(){var a=function(){mmCookie.removeCookie("mmSession");window.location.href="Login.htm";};soaplib.call("Logout",{},a,{onFailure:a});}function getWatermarkedText(a){return(a.hasClass("watermark")?"":a.val());}var createTextNode=function(a,b){var c=b.createElement(a.name);var d=b.createTextNode(a.value);c.appendChild(d);a.parentNode.appendChild(c);};jQuery.fn.toggleFade=function(){if(this.is(":visible")){this.fadeOut("medium");}else{this.fadeIn("medium");}return this;};function clearForm(a){$(":input",a).each(function(){var c=this.type;var b=this.tagName.toLowerCase();if(c==="text"||c==="password"||b==="textarea"){this.value="";}else{if(c==="checkbox"||c==="radio"){this.checked=false;}else{if(b==="select"){this.selectedIndex=-1;}}}});}$.ajaxSetup({url:mmRequestSoapUrl(),global:false,type:"POST",contentType:"text/xml; charset='utf-8'",dataType:"xml"});var mmStringHelper=function(){return{capitalize:function(a){if(!YAHOO.lang.isString(a)){return"";}return a.replace(/[^\s]+/g,function(b){return b.substring(0,1).toUpperCase()+b.substring(1);});},isBlank:function(a){if(!YAHOO.lang.isString(a)){return true;}return($.trim(a).length===0);},summary:function(b,a){if(!a||b.length<=a){return b;}return b.substring(0,a).replace(/\.+$/,"")+"...";},endsWith:function(c,a,b){if(b){c=c.toLowerCase();a=a.toLowerCase();}if((c.length-a.length)<0){return false;}return c.lastIndexOf(a)===(c.length-a.length);},endsWithAny:function(b){for(var a=1;a<arguments.length;a++){if(mmStringHelper.endsWith(b,arguments[a])){return true;}}return false;},startsWith:function(b,c,a){if(a){b=b.toLowerCase();c=c.toLowerCase();}return b.indexOf(c)===0;},matches:function(c,b,a){return a?c.toLowerCase()===b.toLowerCase():c===b;},matchesAny:function(b){for(var a=1;a<arguments.length;a++){if(mmStringHelper.matches(b,arguments[a])){return true;}}return false;},startsWithAny:function(b){for(var a=1;a<arguments.length;a++){if(mmStringHelper.startsWith(b,arguments[a])){return true;}}return false;},has:function(b){for(var a=1;a<arguments.length;a++){if(b.indexOf(arguments[a])>-1){return true;}}return false;},setCharAt:function(c,a,b){if(a>c.length-1){return c;}return c.substr(0,a)+b+c.substr(a+1);}};}();function clone(a){if(a===null||typeof(a)!="object"){return a;}return jQuery.extend(true,{},a);}function quoteSplit(e,d){var c=[];var a=0;var f=false;for(var b=0;b<e.length;b++){if(e.charAt(b)==='"'){if((b===0)||(e.charAt(b-1)!="\\")){f=!f;}}if(!f&&(e.charAt(b)===d)&&((b===0)||(e.charAt(b-1)!="\\"))){c.push(e.substring(a,b));a=b+1;}}if(a!=e.length){c.push(e.substring(a,e.length));}return c;}function showIPRangeSelector(h,i,j,d){var e="<div class='gridContainer'>	<div id='divRangeSelector'>		<div class='hd'>			Select a Range		</div>		<div id='divRangeSelectorBody' class='bd'>			<div class='PageHeaderTopRow'></div>			<div id='pagingRanges' class='ypager'>			</div>			<div class='clear'>			</div>			<div class='gridContainer' id='rangesContainer' style='width:720px; height:auto;' />			<div id='tableDivRanges' class='ytable'>			</div>		</div>	</div></div>";$("#"+i).html(e);var c=null;var g=function(){if(c.getSelectedRows().length>0){return c.getRecordSet().getRecord(c.getSelectedRows()[0])._oData;}return null;};var a=createDialog("divRangeSelector",{width:"750px",height:"550px",fixedcenter:true,modal:true,constraintoviewport:true,useValidator:false,buttons:[{text:"OK",handler:function(l){var k=g();if(k){j(k.ref,k.name);return true;}return false;},isDefault:true},{text:"Cancel",handler:d}],destructor:function(){ygridlib.removeGrid("Ranges");}},null);var f=function(l,m){mmStopProcess();var k=$(l).find("errorcode").text();if(k=="1028"){a.close();yuidialogs.simpleDialog("You do not have access","You do not have access to assign from auto-assign ranges",{handler:function(){$("#itsAutoAssignCheck").attr("checked",false);$("#divIPAddress").show();$("#divAutoAssignmentRanges").hide();}});}else{gApp.failureHandler(l,m);}};c=h.makeGrid({gridID:"AutoAssignRanges",div:"tableDivRanges",pager:"pagingRanges",soapCommand:"GetRanges",resultNode:"range",baseColumns:[{key:"name",label:"Range",sortable:true,resizeable:true},{key:"from",label:"From",sortable:true,resizeable:true},{key:"to",label:"To",sortable:true,resizeable:true}],extraFields:["ref","dhcpScopes"],beforeParseDataHandler:"range",doubleClickHandler:a.defaultDoubleClickHandler,getFilterCriteria:function(k){return"autoAssign:1 "+ygridlib.getFilterText(k);},objType:"Range",rowsPrPage:16,initialHeight:"400px",messageEmpty:"No auto-assign ranges found",dataErrorHandler:f});c.noOffset=true;c.fixedHeight=400;var b=function(k){mmBlocker.unblock($("#divRangeSelectorBody"));};c.subscribe("postRenderEvent",b);}var gAutoCompleteCache=[];function setupAutocompleteField(e,g,c){var a=null;var f=null;var q=null;var o=$("#"+e);var k="Type:Master ";if(g!==true){k+="name:!arpa.$ ";}var r=o.parent().html();var m=o.parent().width();var l=90;var j=5;var s="<table style='width:100%'><tr><td  style='width:"+(m-l-j)+"px;margin-right:"+j+"px'>	<div class='yui-ac'>		"+r+"		<div id='"+e+"Autocomplete'></div>	</div></td><td style='width:"+l+"px'>		<div id='"+e+"ButtonCell' style='float:right'></div></td></tr></table>";o.parent().html(s);o=$("#"+e);function n(){var w="<div class='hd'>	Enter host name</div><div class='bd'>	<form>		<div>			<div class='BottomMarginBig'>				<div class='column_text smallfont'>					Host name: 				</div>				<div class='column_field smallfont'>					<input id='hostEntry_host' name='hostEntry_host' type='text' class='pqdn'/>					<span id='hostEntry_zoneName' style='font-weight: bold'>						&nbsp; 					</span>				</div>			</div>			<div class='clear'>			</div>			<hr />			<div id='hostEntry_table'>				<div>					<div class='PageHeaderLeft'>						<div class='PageHeaderTopRow'>							<div class='column_text smallfont'>Zone:</div>						</div>					</div>					<div id='hostEntry_zonePager' class='ypager'></div>				</div>				<div class='clear'></div>				<div id='hostEntry_zoneTable' class='ytable'></div>			</div>		</div>	</form></div>";$("#hostEntry_zoneName").html("&nbsp;");ygridlib.removeGrid("hostEntry_zoneTable");var y=null;var t={};var v=createDialog("",{width:"700px",fixedcenter:true,modal:true,visible:true,zIndex:17000,constraintoviewport:true,buttons:[{text:"OK",handler:function(){var z=$("#hostEntry_host").val();if(z){z+=".";}o.val(z+t.name);a.selZone=t;return true;},isDefault:true},{text:"Cancel"}],destructor:function(){ygridlib.removeGrid("hostEntry_zoneTable");}},w);$("#hostEntry_host").val(o.val().split(".")[0]);var u={gridID:"hostEntry_zoneTable",divName:"hostEntry_zoneTable",pager:"hostEntry_zonePager",doubleClickHandler:v.defaultDoubleClickHandler,getFilterCriteria:function(z){return k+ygridlib.getFilterText(z);},initialHeight:400,noOffset:true,fixedHeight:400,soapCommand:"GetDNSZones",resultNode:"dnsZone",baseColumns:[{key:"name",label:"Name",sortable:true,resizeable:false},{key:"authority",label:"Authority",sortable:true,resizeable:false}],beforeParseDataHandler:"DNSZone",sortable:true,objType:"DNSZone"};u.dataSource=gridPage.makeDataSource(u);y=ygridlib.addGrid(u);var x=function(){t={ref:"",name:""};var z=ygridlib.getSelectedRecords("hostEntry_zoneTable");if(z&&(z.length==1)){t={ref:z[0]._oData.ref,name:z[0]._oData.name};}$("#hostEntry_zoneName").html(t.name?("."+t.name):"");v.getButtonByName("OK").set("disabled",t.ref==="");};y.subscribe("postRenderEvent",function(z){mmStopProcess();x();v.center();$("#hostEntry_host").focus();});y.subscribe("rowSelectEvent",x);ygridlib.update("hostEntry_zoneTable");}function i(u){var t=[];$.each(gAutoCompleteCache,function(){if(mmStringHelper.startsWith(this.name,u,true)){t.push({name:this.name,ref:this.ref});}});return t;}function h(A,v){var w=[];var y=0;zoneArray=A.split(".");while(zoneArray.length>0){w.push(zoneArray.join("."));zoneArray.shift();}var u=[];if(w.length>0){var t=new soap_queue({},{async:!v});for(y=0;y<w.length;y++){if(w[y]!==""){var x=i(w[y]);if(x.length>0){u=u.concat(x);}else{t.add("GetDNSZones",{sortBy:"name",filter:k+" name:^"+w[y]});}}}if(t.queue.length!==0){t.run({onSuccess:function(E){var F=false;for(var D=0;D<E.result_queue.length;D++){for(var C=0;C<E.result_queue[D].result.dnsZones.length;C++){var G=true;if(c){for(var B=0;B<gAutoCompleteCache.length;B++){if(gAutoCompleteCache[B].name.toLowerCase()===E.result_queue[D].result.dnsZones[C].name.toLowerCase()){G=false;break;}}}if(G){gAutoCompleteCache.push({name:E.result_queue[D].result.dnsZones[C].name,ref:E.result_queue[D].result.dnsZones[C].ref});F=true;}}}if(F){if(!v){a.sendQuery(A);}}if(v){$.each(w,function(){var H=false;u=u.concat(i(this));});}}});}}y=0;var z=[];while(y<u.length){if(z[u[y].ref]===true){u=u.splice(y,1);}else{z[u[y].ref]=true;y++;}}return u;}q=new YAHOO.util.FunctionDataSource(function(t){return h(t,false);});q.responseSchema={fields:["name","ref"]};function b(u,t){for(var v=0;v<u.length;v++){if(mmStringHelper.startsWith(t.name,u.substring(v),true)){if(v===0){return["",t.name];}else{return[u.substring(0,v-1),"."+t.name];}}}return null;}function d(t){a.selZone=t;var u=b(o.val(),a.selZone);if(u){o.val(u[0]+u[1]);}}a=new YAHOO.widget.AutoComplete(e,e+"Autocomplete",q);a.useShadow=true;a.resultTypeList=false;a.suppressInputUpdate=true;a.forceSelection=true;o[0].autoComplete=a;f=new YAHOO.widget.Button({label:"...",id:e+"Button",container:e+"ButtonCell"});f.on("click",n);a.formatResult=function(u,w,t){var v=b(w,u);if(v){return v[0]+"<b>"+v[1]+"</b>";}return w;};a.itemSelectEvent.subscribe(function(u,t,v){d(t[2]);});a.unmatchedItemSelectEvent.subscribe(function(u,t){a.selZone=null;});a.selectionEnforceEvent.subscribe(function(u,t){o.val(t[1]);a.selZone=null;});a.getSelectedHost=function(){if(!this.selZone){var t=h(o.val(),true);if(t.length===1){d(t[0]);}}if(this.selZone){var u=b(o.val(),this.selZone);if(u){return{hostname:u[0],zone:this.selZone};}}return null;};a.reportError=function(x){var u=x?x:"Enter host";var w=o.val();var v="Please enter a fully qualified host name in a zone that you have write access to.";var t={};if(!validateHostName(w,false,false,t)){if(t.status===false){v=t.message;}}else{if(!mmStringHelper.endsWith(w,".")){v="Please enter a fully qualified host name.";}}yuidialogs.simpleDialog(u,v);};return a;}function iconButton(e,d,c){var b=$("#"+e);b.addClass("yui-button");b.addClass("yui-push-button");b.html('<span class="first-child"><div style="width:16px;height:16px"></div></span>');this.icon=d;b.css({background:"none repeat scroll 0 0 transparent",border:"1px solid transparent",height:"16px",width:"16px","float":"left","line-height":"24px","margin-top":"3px","margin-left":"0","margin-right":"0"});var a=this;b.click(function(){a.clickHandler.call(a);});this.userClickHandler=c;this.elem=b;this.setEnabled(true);this.elem.hover(function(){if(a.isEnabled()){a.elem.addClass("yui-button-hover");}},function(){a.elem.removeClass("yui-button-hover");});}iconButton.prototype.clickHandler=function(){if(this.enabledFlag){this.userClickHandler();}};iconButton.prototype.setEnabled=function(a){this.enabledFlag=a;if(a){this.elem.find("div").css("background",'url("images/'+this.icon+'.png") no-repeat scroll 0 80% transparent');}else{this.elem.removeClass("yui-button-hover");this.elem.find("div").css("background",'url("images/'+this.icon+'_disabled.png") no-repeat scroll 0 80% transparent');}};iconButton.prototype.isEnabled=function(){return this.enabledFlag;};function toggleButton(c,b,a){toggleButton.superclass.constructor.call(this,c,b,a);this.select(false);}YAHOO.lang.extend(toggleButton,iconButton);toggleButton.prototype.isSelected=function(){return this.selectedFlag;};toggleButton.prototype.select=function(b){this.selectedFlag=b;if(b){this.elem.find("div").addClass("SelectedToggleButton");for(var a=0;a<this.group.length;a++){if(this.group[a]!==this){this.group[a].select(false);}}}else{this.elem.find("div").removeClass("SelectedToggleButton");}};toggleButton.prototype.clickHandler=function(){if(this.enabledFlag&&!this.selectedFlag){this.select(true);toggleButton.superclass.clickHandler.call(this);}};toggleButton.groupButtons=function(b){for(var a=0;a<b.length;a++){b[a].group=b;}};var Deferer=function(){var b,d;var a=function(){c();};var c=function(){setTimeout(function(){if(b()){a();}else{d();}},0);};return function(e,f){b=e;d=f;c();};}();function runQueueWithProgressBar(d,a,e,b){e=e||function(){};b=b||function(){return false;};var c=new progressBar(a);c.show(0,d.queue.length);d.run({onSuccess:function(f){c.hide();e(f);},onFailure:function(h,g,i,f){if(!b(h,g,i,f)){c.hide();soaplib.defaultOnFailure(h,g);return false;}return true;},onProgress:function(){c.move();}});}
