var Ajax=new Object();Ajax.isUpdating=true;Ajax.Request=function(method,url,formname,callback){var allElementList=eval("document."+formname+".elements");var l=allElementList.length;var qs="junk=";for(var i=0;i<l;i++){var element=allElementList[i];if(element.type=="radio"||element.type=="checkbox"){if(element.checked){qs+="&"+element.name+"="+encodeURIComponent(element.value)}}else{qs+="&"+element.name+"="+encodeURIComponent(element.value)}}this.isUpdating=true;this.callbackMethod=callback;this.request=(window.XMLHttpRequest)?new XMLHttpRequest():new ActiveXObject("MSXML2.XMLHTTP");this.request.onreadystatechange=function(){Ajax.checkReadyState()};if(method=="GET"){this.request.open(method,url+"?"+qs,true);this.request.send(null)}if(method=="POST"){this.request.open(method,url,true);this.request.setRequestHeader("Content-type","application/x-www-form-urlencoded");this.request.setRequestHeader("Content-length",qs.length);this.request.setRequestHeader("Connection","close");this.request.send(qs)}};Ajax.SimpleGET=function(a,b){this.isUpdating=true;this.callbackMethod=b;this.request=(window.XMLHttpRequest)?new XMLHttpRequest():new ActiveXObject("MSXML2.XMLHTTP");this.request.onreadystatechange=function(){Ajax.checkReadyState()};this.request.open("GET",a,true);this.request.send(null)};Ajax.checkReadyState=function(a){switch(this.request.readyState){case 1:break;case 2:break;case 3:break;case 4:this.isUpdating=false;this.callbackMethod(this.request.responseText)}};function Validator(a){this.formobj=document.forms[a];if(!this.formobj){alert("BUG: could not get Form object "+a);return}if(this.formobj.onsubmit){this.formobj.old_onsubmit=this.formobj.onsubmit;this.formobj.onsubmit=null}else{this.formobj.old_onsubmit=null}this.formobj.onsubmit=form_submit_handler;this.addValidation=add_validation;this.setAddnlValidationFunction=set_addnl_vfunction;this.clearAllValidations=clear_all_validations}function set_addnl_vfunction(a){this.formobj.addnlvalidation=a}function clear_all_validations(){for(var a=0;a<this.formobj.elements.length;a++){this.formobj.elements[a].validationset=null}}function form_submit_handler(){var isok=true;for(var itr=0;itr<this.elements.length;itr++){if(this.elements[itr].validationset&&!this.elements[itr].validationset.validate()){isok=false}}if(this.addnlvalidation){str=" var ret = "+this.addnlvalidation+"()";eval(str);if(!ret){isok=false}}return isok}function add_validation(d,b,c){if(!this.formobj){alert("BUG: the form object is not set properly");return}var a=this.formobj[d];if(!a){alert("BUG: Couldnot get the input object named: "+d);return}if(!a.validationset){a.validationset=new ValidationSet(a)}a.validationset.add(b,c)}function ValidationDesc(c,b,a){this.desc=b;this.error=a;this.itemobj=c;this.validate=vdesc_validate}function vdesc_validate(){if(!V2validateData(this.desc,this.itemobj,this.error)){this.itemobj.focus();return false}return true}function ValidationSet(a){this.vSet=new Array();this.add=add_validationdesc;this.validate=vset_validate;this.itemobj=a}function add_validationdesc(b,a){this.vSet[this.vSet.length]=new ValidationDesc(this.itemobj,b,a)}function vset_validate(){for(var a=0;a<this.vSet.length;a++){if(!this.vSet[a].validate()){return false}}return true}function validateEmailv2(b){if(b.length<=0){return true}var e=b.match("^(.+)@(.+)$");if(e==null){return false}if(e[1]!=null){var d=/^\"?[\w-_\.]*\"?$/;if(e[1].match(d)==null){return false}}if(e[2]!=null){var c=/^[\w-\.]*\.[A-Za-z]{2,4}$/;if(e[2].match(c)==null){var a=/^\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]$/;if(e[2].match(a)==null){return false}}return true}return false}function V2validateData(strValidateStr,objValue,strError){var epos=strValidateStr.search("=");var command="";var cmdvalue="";if(epos>=0){command=strValidateStr.substring(0,epos);cmdvalue=strValidateStr.substr(epos+1)}else{command=strValidateStr}var isok=true;switch(command){case"req":case"required":if(eval(objValue.value.length)==0){isok=false}break;case"maxlength":case"maxlen":if(eval(objValue.value.length)>eval(cmdvalue)){isok=false}break;case"minlength":case"minlen":if(eval(objValue.value.length)<eval(cmdvalue)){isok=false}break;case"alnum":case"alphanumeric":var charpos=objValue.value.search("[^A-Za-z0-9]");if(objValue.value.length>0&&charpos>=0){isok=false}break;case"num":case"numeric":var charpos=objValue.value.search("[^0-9]");if(objValue.value.length>0&&charpos>=0){isok=false}break;case"alnum_s":case"alphanumeric_space":var charpos=objValue.value.search("[^A-Za-z0-9\\s]");if(objValue.value.length>0&&charpos>=0){isok=false}break;case"dec":case"decimal":var charpos=objValue.value.search("[^0-9.]");if(objValue.value.length>0&&charpos>=0){isok=false}break;case"alphabetic":case"alpha":var charpos=objValue.value.search("[^A-Za-z]");if(objValue.value.length>0&&charpos>=0){isok=false}break;case"email":if(!validateEmailv2(objValue.value)){isok=false}break;case"lt":case"lessthan":if(isNaN(objValue.value)){isok=false}if(eval(objValue.value)>=eval(cmdvalue)){isok=false}break;case"gt":case"greaterthan":if(isNaN(objValue.value)){isok=false}if(eval(objValue.value)<=eval(cmdvalue)){isok=false}break;case"regexp":if(objValue.value.length>0){if(!objValue.value.match(cmdvalue)){isok=false}}break;case"dontselect":if(objValue.selectedIndex==null){isok=false}if(objValue.selectedIndex==eval(cmdvalue)){isok=false}break;case"checked":if(objValue.checked==0){isok=false}break;case"radioreq":var cnt=-1;for(var i=objValue.length-1;i>-1;i--){if(objValue[i].checked){cnt=i;i=-1}}if(cnt==-1){isok=false}break}if(isok){document.getElementById(strError).style.display="none";return true}else{document.getElementById(strError).style.display="inline";return false}}var objDiv=null;var originalDivHTML="";var DivID="";var over=false;function buildDimmerDiv(){document.write('<div id="dimmer" class="dimmer"></div>')}function displayFloatingDiv(a,b){DivID=a;document.getElementById("dimmer").style.visibility="visible";document.getElementById(a).className="dimming";document.getElementById(a).style.visibility="visible"}function hiddenFloatingDiv(a){document.getElementById(a).style.visibility="hidden";document.getElementById("dimmer").style.visibility="hidden";DivID=""}buildDimmerDiv();var Coordinates={ORIGIN:new Coordinate(0,0),northwestPosition:function(b){var a=parseInt(b.style.left);var c=parseInt(b.style.top);return new Coordinate(isNaN(a)?0:a,isNaN(c)?0:c)},southeastPosition:function(a){return Coordinates.northwestPosition(a).plus(new Coordinate(a.offsetWidth,a.offsetHeight))},northwestOffset:function(a,c){var d=new Coordinate(a.offsetLeft,a.offsetTop);if(!c){return d}var b=a.offsetParent;while(b){d=d.plus(new Coordinate(b.offsetLeft,b.offsetTop));b=b.offsetParent}return d},southeastOffset:function(a,b){return Coordinates.northwestOffset(a,b).plus(new Coordinate(a.offsetWidth,a.offsetHeight))},fixEvent:function(a){a.windowCoordinate=new Coordinate(a.clientX,a.clientY)}};function Coordinate(a,b){this.x=a;this.y=b}Coordinate.prototype.toString=function(){return"("+this.x+","+this.y+")"};Coordinate.prototype.plus=function(a){return new Coordinate(this.x+a.x,this.y+a.y)};Coordinate.prototype.minus=function(a){return new Coordinate(this.x-a.x,this.y-a.y)};Coordinate.prototype.distance=function(c){var b=this.x-c.x;var a=this.y-c.y;return Math.sqrt(Math.pow(b,2)+Math.pow(a,2))};Coordinate.prototype.max=function(b){var a=Math.max(this.x,b.x);var c=Math.max(this.y,b.y);return new Coordinate(a,c)};Coordinate.prototype.constrain=function(c,b){if(c.x>b.x||c.y>b.y){return this}var a=this.x;var d=this.y;if(c.x!=null){a=Math.max(a,c.x)}if(b.x!=null){a=Math.min(a,b.x)}if(c.y!=null){d=Math.max(d,c.y)}if(b.y!=null){d=Math.min(d,b.y)}return new Coordinate(a,d)};Coordinate.prototype.reposition=function(a){a.style.top=this.y+"px";a.style.left=this.x+"px"};Coordinate.prototype.equals=function(a){if(this==a){return true}if(!a||a==null){return false}return this.x==a.x&&this.y==a.y};Coordinate.prototype.inside=function(b,a){if((this.x>=b.x)&&(this.x<=a.x)&&(this.y>=b.y)&&(this.y<=a.y)){return true}return false};var Drag={BIG_Z_INDEX:10000,group:null,isDragging:false,makeDraggable:function(a){a.handle=a;a.handle.group=a;a.minX=null;a.minY=null;a.maxX=null;a.maxY=null;a.threshold=0;a.thresholdY=0;a.thresholdX=0;a.onDragStart=new Function();a.onDragEnd=new Function();a.onDrag=new Function();a.setDragHandle=Drag.setDragHandle;a.setDragThreshold=Drag.setDragThreshold;a.setDragThresholdX=Drag.setDragThresholdX;a.setDragThresholdY=Drag.setDragThresholdY;a.constrain=Drag.constrain;a.constrainVertical=Drag.constrainVertical;a.constrainHorizontal=Drag.constrainHorizontal;a.onmousedown=Drag.onMouseDown},constrainVertical:function(){var a=Coordinates.northwestOffset(this,true);this.minX=a.x;this.maxX=a.x},constrainHorizontal:function(){var a=Coordinates.northwestOffset(this,true);this.minY=a.y;this.maxY=a.y},constrain:function(b,a){this.minX=b.x;this.minY=b.y;this.maxX=a.x;this.maxY=a.y},setDragHandle:function(a){if(a&&a!=null){this.handle=a}else{this.handle=this}this.handle.group=this;this.onmousedown=null;this.handle.onmousedown=Drag.onMouseDown},setDragThreshold:function(a){if(isNaN(parseInt(a))){return}this.threshold=a},setDragThresholdX:function(a){if(isNaN(parseInt(a))){return}this.thresholdX=a},setDragThresholdY:function(a){if(isNaN(parseInt(a))){return}this.thresholdY=a},onMouseDown:function(d){d=Drag.fixEvent(d);Drag.group=this.group;var f=this.group;var b=d.windowCoordinate;var c=Coordinates.northwestOffset(f,true);var g=Coordinates.northwestPosition(f);var a=Coordinates.southeastPosition(f);var e=Coordinates.southeastOffset(f,true);f.originalOpacity=f.style.opacity;f.originalZIndex=f.style.zIndex;f.initialWindowCoordinate=b;f.dragCoordinate=b;Drag.showStatus(b,g,a,c,e);f.onDragStart(g,a,c,e);if(f.minX!=null){f.minMouseX=b.x-g.x+f.minX-c.x}if(f.maxX!=null){f.maxMouseX=f.minMouseX+f.maxX-f.minX}if(f.minY!=null){f.minMouseY=b.y-g.y+f.minY-c.y}if(f.maxY!=null){f.maxMouseY=f.minMouseY+f.maxY-f.minY}f.mouseMin=new Coordinate(f.minMouseX,f.minMouseY);f.mouseMax=new Coordinate(f.maxMouseX,f.maxMouseY);document.onmousemove=Drag.onMouseMove;document.onmouseup=Drag.onMouseUp;return false},showStatus:function(b,e,a,c,d){window.status="mouse: "+b.toString()+"    NW pos: "+e.toString()+"    SE pos: "+a.toString()+"    NW offset: "+c.toString()+"    SE offset: "+d.toString()},onMouseMove:function(d){d=Drag.fixEvent(d);var l=Drag.group;var j=d.windowCoordinate;var g=Coordinates.northwestOffset(l,true);var n=Coordinates.northwestPosition(l);var b=Coordinates.southeastPosition(l);var k=Coordinates.southeastOffset(l,true);Drag.showStatus(j,n,b,g,k);if(!Drag.isDragging){if(l.threshold>0){var c=l.initialWindowCoordinate.distance(j);if(c<l.threshold){return true}}else{if(l.thresholdY>0){var f=Math.abs(l.initialWindowCoordinate.y-j.y);if(f<l.thresholdY){return true}}else{if(l.thresholdX>0){var h=Math.abs(l.initialWindowCoordinate.x-j.x);if(h<l.thresholdX){return true}}}}Drag.isDragging=true;l.style.zIndex=Drag.BIG_Z_INDEX;l.style.opacity=0.75}var m=j.constrain(l.mouseMin,l.mouseMax);n=n.plus(m.minus(l.dragCoordinate));n.reposition(l);l.dragCoordinate=m;var a=Coordinates.northwestOffset(l,true);l.onDrag(n,b,g,k);var i=Coordinates.northwestOffset(l,true);if(!a.equals(i)){var e=a.minus(i);n=Coordinates.northwestPosition(l).plus(e);n.reposition(l)}return false},onMouseUp:function(d){d=Drag.fixEvent(d);var f=Drag.group;var b=d.windowCoordinate;var c=Coordinates.northwestOffset(f,true);var g=Coordinates.northwestPosition(f);var a=Coordinates.southeastPosition(f);var e=Coordinates.southeastOffset(f,true);document.onmousemove=null;document.onmouseup=null;f.onDragEnd(g,a,c,e);if(Drag.isDragging){f.style.zIndex=f.originalZIndex;f.style.opacity=f.originalOpacity}Drag.group=null;Drag.isDragging=false;return false},fixEvent:function(a){if(typeof a=="undefined"){a=window.event}Coordinates.fixEvent(a);return a}};var DragDrop={firstContainer:null,lastContainer:null,makeListContainer:function(c){if(this.firstContainer==null){this.firstContainer=this.lastContainer=c;c.previousContainer=null;c.nextContainer=null}else{c.previousContainer=this.lastContainer;c.nextContainer=null;this.lastContainer.nextContainer=c;this.lastContainer=c}c.onDragOver=new Function();c.onDragOut=new Function();var a=c.getElementsByTagName("li");for(var b=0;b<a.length;b++){DragDrop.makeItemDragable(a[b])}},makeItemDragable:function(a){Drag.makeDraggable(a);a.setDragThreshold(5);a.isOutside=false;a.onDragStart=DragDrop.onDragStart;a.onDrag=DragDrop.onDrag;a.onDragEnd=DragDrop.onDragEnd},onDragStart:function(e,b,c,d){var a=DragDrop.firstContainer;while(a!=null){a.northwest=Coordinates.northwestOffset(a,true);a.southeast=Coordinates.southeastOffset(a,true);a=a.nextContainer}this.parentNode.onDragOver()},onDrag:function(i,a,c,g){if(this.isOutside){var b=DragDrop.firstContainer;while(b!=null){if(c.inside(b.northwest,b.southeast)||g.inside(b.northwest,b.southeast)){b.onDragOver();this.isOutside=false;var f=this.parentNode;f.removeChild(this);b.appendChild(this);f.parentNode.removeChild(f);break}b=b.nextContainer}if(this.isOutside){return}}else{if(!(c.inside(this.parentNode.northwest,this.parentNode.southeast)||g.inside(this.parentNode.northwest,this.parentNode.southeast))){this.parentNode.onDragOut();this.isOutside=true;var b=DragDrop.firstContainer;while(b!=null){if(c.inside(b.northwest,b.southeast)||g.inside(b.northwest,b.southeast)){b.onDragOver();this.isOutside=false;this.parentNode.removeChild(this);b.appendChild(this);break}b=b.nextContainer}if(this.isOutside){var f=this.parentNode.cloneNode(false);this.parentNode.removeChild(this);f.appendChild(this);document.getElementsByTagName("body").item(0).appendChild(f);return}}}var h=this.parentNode;var j=this;var d=DragUtils.nextItem(j);while(d!=null&&this.offsetTop>=d.offsetTop-2){var j=d;var d=DragUtils.nextItem(j)}if(this!=j){DragUtils.swap(this,d);return}var j=this;var e=DragUtils.previousItem(j);while(e!=null&&this.offsetTop<=e.offsetTop+2){var j=e;var e=DragUtils.previousItem(j)}if(this!=j){DragUtils.swap(this,j);return}},onDragEnd:function(e,a,b,d){if(this.isOutside){var c=this.parentNode;this.parentNode.removeChild(this);c.parentNode.removeChild(c);return}this.parentNode.onDragOut();this.style.top="0px";this.style.left="0px"}};var DragUtils={swap:function(b,a){var c=b.parentNode;c.removeChild(b);c.insertBefore(b,a);b.style.top="0px";b.style.left="0px"},nextItem:function(b){var a=b.nextSibling;while(a!=null){if(a.nodeName==b.nodeName){return a}a=a.nextSibling}return null},previousItem:function(b){var a=b.previousSibling;while(a!=null){if(a.nodeName==b.nodeName){return a}a=a.previousSibling}return null}};function setOpacity(b,a){a=(a==100)?99.999:a;b.style.filter="alpha(opacity:"+a+")";b.style.KHTMLOpacity=a/100;b.style.MozOpacity=a/100;b.style.opacity=a/100}function fadeIn(b,a){if(document.getElementById){obj=document.getElementById(b);if(a<=100){setOpacity(obj,a);a+=5;window.setTimeout("fadeIn('"+b+"',"+a+")",100)}}}function fadeOut(b,a){if(document.getElementById){obj=document.getElementById(b);if(a>=0){setOpacity(obj,a);a-=5;window.setTimeout("fadeOut('"+b+"',"+a+")",100)}}}function pageWidth(){return window.innerWidth!=null?window.innerWidth:document.documentElement&&document.documentElement.clientWidth?document.documentElement.clientWidth:document.body!=null?document.body.clientWidth:null}function pageHeight(){return window.innerHeight!=null?window.innerHeight:document.documentElement&&document.documentElement.clientHeight?document.documentElement.clientHeight:document.body!=null?document.body.clientHeight:null}function posLeft(){return typeof window.pageXOffset!="undefined"?window.pageXOffset:document.documentElement&&document.documentElement.scrollLeft?document.documentElement.scrollLeft:document.body.scrollLeft?document.body.scrollLeft:0}function posTop(){return typeof window.pageYOffset!="undefined"?window.pageYOffset:document.documentElement&&document.documentElement.scrollTop?document.documentElement.scrollTop:document.body.scrollTop?document.body.scrollTop:0}function posRight(){return posLeft()+pageWidth()}function posBottom(){return posTop()+pageHeight()}function trackLinkout(b,a,c,e,d){Ajax.SimpleGET("/linkout_handler.asp?catID="+b+"&depID="+a+"&subdepID="+c+"&spID="+e+"&from="+d,doNothing)}function trackDLinkout(b,a){Ajax.SimpleGET("/linkout_dlink_handler.asp?ID="+b+"&from="+a,doNothing)}function trackAncillary(a,b){Ajax.SimpleGET("/ancillary_view_handler.asp?token="+a,doNothing)}function doNothing(a){};
