d=document;f=d.documentElement;g=d.forms;j=d.all;k=d.URL;m=d.location;o=d.images;p=d.anchors;t=d.links;u=d.embeds;v=false;ba=window;bb=true;bc=parseInt;bd=location;be=bd.pathname;bj=Array;bk=Object;bl=eval;bm=navigator;bn=bm.plugins;bo=bm.userAgent;bp=undefined;bq=unescape;br=parseFloat;PINT_Global=new bk();PINT_Global.HTML=new bk();PINT_Global.HTML.anchors=d.getElementsByTagName('a');PINT_Global.HTML.label=d.getElementsByTagName('label');PINT_Global.Status=new bk();PINT_Global.Status.windowStatus="";PINT_Global.Browser=new Browser();function PINT_GetEventSource(e){if(e&&e.target){var event=e&&e.target;while(event&&event.nodeType==3)event=event.parentNode;return(event);}if(ba&&ba.event&&ba.event.srcElement)return(ba&&ba.event&&ba.event.srcElement);return v}function PINT_GetElementById(idname){var handle;if(d.getElementById){handle=d.getElementById(idname);if(handle)return handle}if(d.getElementByName){handle=d.getElementByName(idname)[0];if(handle)return handle}handle=document[idname];if(handle)return handle;if(d.all){handle=d.all[idname];if(handle)return handle}if(d.anchors){handle=d.anchors[idname];if(handle)return handle}if(d.links){handle=d.links[idname];if(handle)return handle}if(d.images){handle=d.images[idname];if(handle)return handle}if(d.embeds){handle=d.embeds[idname];if(handle)return handle}return handle}function PINT_GetIdByElement(element){if(!(element))return bp;if(element.id)return element.id;if(element.name)return element.name;return bp}function PINT_ChangePageTitle(pageTitle){if(d.title.readOnly==bb)d.title=pageTitle}function PINT_GetCurrentFileName(){var URL=bq(bd.pathname);var start=URL.lastIndexOf("/")+1;var end=(URL.indexOf("?")>0)?URL.indexOf("?"):URL.length;return(URL.substring(start,end));}function PINT_GetCurrentFilePath(){var URL=bq(bd.pathname);var start=URL.lastIndexOf("/");return(URL.substring(0,start));}function PINT_GetCurrentDirectory(){var filePath=PINT_GetCurrentFilePath();var directories=filePath.split("/");return directories.length&&directories[directories.length-1]!=""?directories[directories.length-1]:""}function PINT_IsRootDirectory(directory){return directory.toLowerCase()==PINT_GetRootDirectory().toLowerCase()?bb:v}function PINT_IsDefaultFile(){var fileName=typeof(PINT_IsDefaultFile.arguments[0])!='undefined'?PINT_IsDefaultFile.arguments[0]:PINT_GetCurrentFileName();if(fileName=="")return bb;var fileNameList=PINT_GetDefaultFile();if(bl('typeof(fileNameList)')=='object'){for(var fileNameListIndex=0;fileNameListIndex<fileNameList.length;fileNameListIndex++)if((fileName==fileNameList[fileNameListIndex]))return bb}return v}function PINT_GetDefaultFile(){if(typeof(defaultFileList)=='undefined')return"";else return defaultFileList.split(",");}function PINT_FirstFocus(){var elementref;var i=0;if(!(elementref=PINT_FirstFocus.arguments[0])){if(!(d.forms[0]))return v;while((elementref=d.forms[0].elements[i++])&&((elementref.type=='hidden')||(elementref.type=='radio')||(elementref.disabled)||(elementref.type=='submit')||(elementref.type=='submit')||(elementref.type=='checkbox'))){}}else{var formIndex;var formElementIndex;var formElementName=PINT_FirstFocus.arguments[0];elementref=null;for(formIndex=0;formIndex<d.forms.length;formIndex++){for(formElementIndex=0;formElementIndex<d.forms[formIndex].elements.length;formElementIndex++){if(d.forms[formIndex].elements[formElementIndex].name==formElementName){elementref=d.forms[formIndex].elements[formElementIndex];break}}if(elementref)break}}if(!(elementref))return v;elementref.focus();return bb}function PINT_OnMouseOverHandler(e){e=(e)?e:((ba.event)?ba.event:"");if(e){var eventsource=PINT_GetEventSource(e);if(bl('typeof(PINT_MenuTriggers)')!='undefined'){typeOfEventSource=typeof(PINT_MenuTriggers[eventsource.id]);if(typeOfEventSource!='undefined')PINT_MenuPopUp(e);}else if(bl('typeof(PINT_Global.Rollover.triggers)')!='undefined'){typeOfEventSource=typeof(PINT_Global.Rollover.triggers[eventsource.id]);if(typeOfEventSource!='undefined')PINT_RORollover(e);}PINT_SetWindowStatus();}return bb}function PINT_OnMouseOutHandler(e){e=(e)?e:((ba.event)?ba.event:"");if(e){var eventsource=PINT_GetEventSource(e);if(bl('typeof(PINT_MenuTriggers)')!='undefined'){typeOfEventSource=typeof(PINT_MenuTriggers[eventsource.id]);if(typeOfEventSource!='undefined')PINT_MenuPopDown(e);}else if(bl('typeof(PINT_Global.Rollover.triggers)')){typeOfEventSource=typeof(PINT_Global.Rollover.triggers[eventsource.id]);if(typeOfEventSource!='undefined')PINT_RORollout(e);}}return bb}function PINT_SetWindowStatus(){if(PINT_SetWindowStatus.arguments.length==0){if(typeof(PINT_Global.Status.windowStatus)!='undefined'&&PINT_Global.Status.windowStatus!=""){ba.status=PINT_Global.Status.windowStatus;PINT_Global.Status.windowStatus=""}}else ba.status=PINT_SetWindowStatus.arguments[0];return bb}function PINT_GetRootDirectory(){if(typeof(rootDirectory)=='undefined')return"";else return rootDirectory}function PINT_getElementsByClass(name){var all=d.all?d.all:d.getElementsByTagName('*');var elements=new bj();for(var e=0;e<all.length;e++){if((name!='')&&(all[e].className.indexOf(name)>=0))elements[elements.length]=all[e]}return elements}function PINT_getURLParam(name,defaultVal){var paramVal=defaultVal;var regex=new RegExp("\&"+name+"\=([^$\&]+)","i");if(d.URL.indexOf('?')!=-1){var qString='&'+d.URL.substring((d.URL.indexOf('?')+1),d.URL.length);var urlMatches=qString.match(regex);if((urlMatches!=null)&&(urlMatches.length==2))paramVal=urlMatches[1]}return paramVal}PINT_Global.OnChange=new bk;PINT_Global.OnChange.linkType=new bj();function PINT_OnChangeHandler(e){var formElement;e=(e)?e:((ba.event)?ba.event:"");if(e){var eventsource=PINT_GetEventSource(e);for(formIndex=0;formIndex<d.forms.length;formIndex++){formElement=d.forms[formIndex];for(elementIndex=0;elementIndex<formElement.elements.length;elementIndex++){if(eventsource.name==formElement.elements[elementIndex].name){if(PINT_Global.OnChange.linkType[eventsource.id]=="anchor"&&formElement.elements[elementIndex].value!="")bd=formElement.action+"#"+formElement.elements[elementIndex].value;else if(PINT_Global.OnChange.linkType[eventsource.id]=="page"&&formElement.elements[elementIndex].value!="")bd=formElement.elements[elementIndex].value}}}}return bb}function PINT_OnChangeInit(){if(PINT_OnChangeInit.arguments.length!=2)return v;if(d.getElementById){var trigger=d.getElementById(PINT_OnChangeInit.arguments[0]);if(trigger){PINT_Global.OnChange.linkType[trigger.id]=PINT_OnChangeInit.arguments[1];trigger.onchange=PINT_OnChangeHandler}}return bb}var rot13map;function rot13init(){var map=new bj();var s="abcdefghijklmnopqrstuvwxyz";for(i=0;i<s.length;i++)map[s.charAt(i)]=s.charAt((i+13)%26);for(i=0;i<s.length;i++)map[s.charAt(i).toUpperCase()]=s.charAt((i+13)%26).toUpperCase();return map}function rot13(a){if(!rot13map)rot13map=rot13init();var s="";for(i=0;i<a.length;i++){var b=a.charAt(i);s+=(b>='A'&&b<='Z'||b>='a'&&b<='z'?rot13map[b]:b);}return s}function print_e(user,domain){var e=rot13(user)+"@"+rot13(domain);var out='<a href="mailto:'+e+'">';out+=e;out+='</a>';d.write(out);}PINT_FlashObject=function(swf,id,w,h,defaultImage,ver,imageMap,c){this.swf=swf;this.id=id;this.width=w;this.height=h;this.imageMap=imageMap;this.version=ver||6;this.align="middle";this.codebase=this.version+",0,0,0";this.redirect="";this.sq=m.search.split("?")[1]||"";this.defaultImage=defaultImage;this.altTxt="Please <a href='http://www.macromedia.com/go/getflashplayer'>upgrade your Flash Player</a>.";this.bypassTxt="";this.params=new bk();this.variables=new bk();if(c)this.color=this.addParam('bgcolor',c);this.addParam('quality','high');this.doDetect=getQueryParamValue('detectflash');};PINT_FlashObject.prototype.addParam=function(name,value){this.params[name]=value};PINT_FlashObject.prototype.getParams=function(){return this.params};PINT_FlashObject.prototype.getParam=function(name){return this.params[name]};PINT_FlashObject.prototype.addVariable=function(name,value){this.variables[name]=value};PINT_FlashObject.prototype.getVariable=function(name){return this.variables[name]};PINT_FlashObject.prototype.getVariables=function(){return this.variables};PINT_FlashObject.prototype.getParamTags=function(){var paramTags="";for(var param in this.getParams()){paramTags+='<param name="'+param+'" value="'+this.getParam(param)+'" />'}if(paramTags==""){paramTags=null}return paramTags};PINT_FlashObject.prototype.getHTML=function(){var flashHTML="";if(ba.ActiveXObject&&bm.userAgent.indexOf('Mac')==-1){flashHTML+='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version='+this.codebase+'" width="'+this.width+'" height="'+this.height+'" id="'+this.id+'" align="'+this.align+'">';flashHTML+='<param name="movie" value="'+this.swf+'" />';if(this.getParamTags()!=null){flashHTML+=this.getParamTags();}if(this.getVariablePairs()!=null){flashHTML+='<param name="flashVars" value="'+this.getVariablePairs()+'" />'}flashHTML+='</object>'}else{flashHTML+='<embed type="application/x-shockwave-flash" src="'+this.swf+'" width="'+this.width+'" height="'+this.height+'" id="'+this.id+'" align="'+this.align+'"';for(var param in this.getParams()){flashHTML+=' '+param+'="'+this.getParam(param)+'"'}if(this.getVariablePairs()!=null){flashHTML+=' flashVars="'+this.getVariablePairs()+'"'}flashHTML+='></embed>'}return flashHTML};PINT_FlashObject.prototype.getVariablePairs=function(){var variablePairs=new bj();for(var name in this.getVariables()){variablePairs.push(name+"="+escape(this.getVariable(name)));}if(variablePairs.length>0){return variablePairs.join("&");}else{return null}};PINT_FlashObject.prototype.write=function(elementId){if(detectFlash(this.version)||this.doDetect=='false'){if(elementId){d.getElementById(elementId).innerHTML=this.getHTML();}else{d.write(this.getHTML());}}else{if(this.redirect!=""){m.replace(this.redirect);}else if(this.defaultImage!=""){imageString="<img src=\""+this.defaultImage+"\" width=\""+this.width+"\" height=\""+this.height+"\" border=\"0\" alt=\"\"";if(bl('typeof(this.imageMap)')!="undefined"&&this.imageMap!="")imageString+=" usemap=\"#"+this.imageMap+"\" ";imageString+=" class=\"inlineimage\" />";d.write(imageString);}else d.write(this.altTxt+""+this.bypassTxt);}};
function getFlashVersion(){var flashversion=0;if(navigator.plugins&&navigator.plugins.length){var x=navigator.plugins["Shockwave Flash"];if(x){if(x.description){var y=x.description;var aDescription = y.split(" ");var aMajorVersion = aDescription[2].split(".");flashversion = aMajorVersion[0];}}}else{result=false;for(var i=15;i>=3&&result!=true;i--){execScript('on error resume next: result = IsObject(CreateObject("ShockwaveFlash.ShockwaveFlash.'+i+'"))','VBScript');flashversion=i}}return flashversion}
function detectFlash(ver){if(getFlashVersion()>=ver){return bb}else{return v}}function getQueryParamValue(param){var q=m.search;var detectIndex=q.indexOf(param);if(q.length>1&&detectIndex!=-1){return q.substring(q.indexOf("=",detectIndex)+1,q.indexOf("&",detectIndex));}else{return bb}}function addEvent(obj,evType,fn){if(obj.addEventListener){obj.addEventListener(evType,fn,bb);return bb}else if(obj.attachEvent){var r=obj.attachEvent("on"+evType,fn);return r}else{return v}}function Browser(){var ua,s,i;this.isIE=v;this.isNS=v;this.version=null;ua=bm.userAgent;s="MSIE";if((i=ua.indexOf(s))>=0){this.isIE=bb;this.version=br(ua.substr(i+s.length));return}s="Netscape6/";if((i=ua.indexOf(s))>=0){this.isNS=bb;this.version=br(ua.substr(i+s.length));return}s="Gecko";if((i=ua.indexOf(s))>=0){this.isNS=bb;this.version=6.1;return}}function PINT_BrowserDetection(){if(PINT_BrowserDetection.arguments.length!=1)return v;var browserUpgradeFile=PINT_BrowserDetection.arguments[0];var currentFileName=PINT_GetCurrentFileName();if(!d.getElementById&&(browserUpgradeFile.indexOf(currentFileName)=="-1"||currentFileName==""))bd.replace(PINT_GetRootDirectory()+'/'+browserUpgradeFile);}function popupWindow(){if(popupWindow.arguments.length<1)return v;var popupWin=null;popupWin=ba.open(popupWindow.arguments[0],popupWindow.arguments[1],popupWindow.arguments[2]);}function PINT_GetWindowSize(style){var size=400;if(style=="width"){if(typeof(ba.innerWidth)=='number')size=ba.innerWidth;else if(d.documentElement&&(d.documentElement.clientWidth||d.documentElement.clientHeight))size=d.documentElement.clientWidth;else if(d.body&&d.body.clientWidth)size=d.body.clientWidth}else if(style=="height"){if(typeof(ba.innerWidth)=='number')size=ba.innerHeight;else if(d.documentElement&&(d.documentElement.clientWidth||d.documentElement.clientHeight))size=d.documentElement.clientHeight;else if(d.body&&d.body.clientHeight)size=d.body.clientHeight}return size}function PINT_AnchorPopupWindows(){if(!d.getElementsByTagName)return;var anchors=PINT_Global.HTML.anchors;var currentAnchor;for(var anchorIndex=0;anchorIndex<anchors.length;anchorIndex++){var targetLink,relArray,relInformation,windowAttributes,javascriptTargetLink,windowName;var bd,menubar,resizable,scrollbars,status,toolbar;var width,height,windowType,windowName;currentAnchor=anchors[anchorIndex];targetLink=currentAnchor.getAttribute("href");relInformation=currentAnchor.getAttribute("rel");if(relInformation&&targetLink){relArray=relInformation.split("|");if(relArray[0]=="popup"&&relArray.length>=4){if(relArray[1]!="null")width=bc(relArray[1])?bc(relArray[1]):400;else width=PINT_GetWindowSize("width");if(relArray[2]!="null")height=bc(relArray[2])?bc(relArray[2]):400;else height=PINT_GetWindowSize("height");windowType=relArray[3];windowAttributes="width="+width+",height="+height;if(windowType=="custom"){if(relArray.length<10)return v;bd=bc(relArray[4])?bc(relArray[4]):0;menubar=bc(relArray[5])?bc(relArray[5]):0;resizable=bc(relArray[6])?bc(relArray[6]):0;scrollbars=bc(relArray[7])?bc(relArray[7]):0;status=bc(relArray[8])?bc(relArray[8]):0;toolbar=bc(relArray[9])?bc(relArray[9]):0;if(relArray.length==11)windowName=relArray[10];else windowName="popupWindow";windowAttributes+=",location="+bd+",menubar="+menubar+",resizable="+resizable+",scrollbars="+scrollbars+",status="+status+",toolbar="+toolbar}else{if(relArray.length==5)windowName=relArray[4];else windowName="popupWindow";if(windowType=="standard")windowAttributes+=",location=0,menubar=0,resizable=0,scrollbars=0,status=0,toolbar=0";else if(windowType=="resize")windowAttributes+=",location=0,menubar=0,resizable=1,scrollbars=0,status=0,toolbar=0";else if(windowType=="scrollbar")windowAttributes+=",location=0,menubar=0,resizable=0,scrollbars=1,status=0,toolbar=0";else if(windowType=="blank")windowAttributes="";else return v}javascriptTargetLink="javascript:popupWindow('"+targetLink+"','"+windowName+"','"+windowAttributes+"');";currentAnchor.setAttribute("href",javascriptTargetLink);}}}}
var currentPMList;

isOpera = false;

try {
	if (opera) {
		isOpera = true;
		var operaControl = {
			selectFocus: false
		};
	}
} catch (e) { }

if (isOpera) {
	var console = {
		log: function(msg) {
			opera.postError(msg);
		}
	};
} else if (typeof console == undefined) {
	var console = {
		log: function() { }
	};
}

function PINT_addEvent(oElement,event,func) {
	if (oElement.addEventListener) {
	  oElement.addEventListener(event,func,false);
	} else if (oElement.attachEvent) {
	  oElement.attachEvent('on'+event,func);
	}
}

// Body onload utility (supports multiple onload functions)
var gverSafeOnload = new Array();
function verSafeAddOnload(f)
{

 if (window.onload != verSafeOnload)
 {
 // if there is an onload event for the window, save it for later execution
 if (window.onload) {
 var arr = window.onload.toString().match(/function\s*(\w+)/);
 gverSafeOnload[0] = arr[1] + "()";
 }
 window.onload = verSafeOnload;
 }
 gverSafeOnload[gverSafeOnload.length] = f;

}

function verSafePrependOnload(f) {
 if (!gverSafeOnload.length) verSafeAddOnload(f);
 else gverSafeOnload.unshift(f);
}

function verSafeOnload()
{
 for (var i=0;i<gverSafeOnload.length;i++) {
 if (gverSafeOnload[i] != null) {
 eval(gverSafeOnload[i]);
 }
 }
}


function getUrlSeparator(url){
	var separator = "?";
	if(url.indexOf('?') != -1) separator = "&";
	return separator;
}

function verDoEmail(emailUrl){
 var dest = emailUrl + getUrlSeparator(emailUrl) + "p=" + escape(document.location.href);
 window.open(dest, "emailWindow", "width=620,height=287,resizable=yes,scrollbars=no,location=no,menubar=no,status=no,status=no,");
 return false;
}

function verDoPrint(){
 if (window.print) window.print();
 else alert("Select \"Print...\" from your file menu");
 return false;
}

function toggleMediaPlayer(state) {
 var playerBackground = document.getElementById('bg_videopopup');
 var player = document.getElementById('video_popup');
 playerBackground.style.display = state;
 player.style.display = state;
}

var gOrderBy = 1;
function PINT_GridControl(objectName) {
 this.gridOrderBy = 0;
 this.name = objectName;
 this.gridColumns = new Array();
 this.gridData = new Array();
 this.evenRowClassname = "";
 this.oddRowClassname = "";
 this.rolloverClassname = "gridRowRollover";
 this.emptyCellValue="--";
}

PINT_GridControl.prototype.drawGrid = function() {
 gridArray = new Array();
 gridArray.push('<table cellspacing="0" cellpadding="0" class="eventlist">');
 gridArray.push(this.gridColumnHeaders());

 var rowClass = this.oddRowClassname;
 // loop through data and create rows
 for(var i=0; i < this.gridData.length; i++) {
 gridArray.push(this.gridResultRow(this.gridData[i], rowClass));
 if (rowClass == this.evenRowClassname)rowClass = this.oddRowClassname;
 else rowClass = this.evenRowClassname;
 }
 gridArray.push('</table>');
 // write our grid to the page

 this.gridContainer.innerHTML = gridArray.join(" ");
}

PINT_GridControl.prototype.gridResultRow = function(rowData, className) {
 if (!className) className = this.oddRowClassname;
 // we assume the last item in the rowData is the link for the row
 var rowStr = "<tr class=\"" + className + "\" onmouseover=\"this.className += ' " + this.rolloverClassname + "';\" onmouseout=\"this.className = this.className.replace(' " + this.rolloverClassname + "', '');\">";
 // rowData should be in the same order as the columns and use gridColumn structure for the count since the rowData has extra indexes that should not be displayed
 for(var c=0; c < this.gridColumns.length; c++) {
 rowStr += "<td>";
 if (rowData[rowData.length-1] && (c == 2 || c == 0)) rowStr += '<a href="' + rowData[rowData.length-1] + '">';
 rowStr += (rowData[c]) ? rowData[c]:this.emptyCellValue;
 if (rowData[rowData.length-1] && (c == 2 || c == 0)) rowStr += '</a>';
 rowStr += "</td>";
 }
 rowStr +="</tr>";
 return rowStr;
}

PINT_GridControl.prototype.gridColumnHeaders = function() {
 var headerRow = "<tr>";
 for (var i =0; i < this.gridColumns.length; i++) {
 headerRow += "<th><a href=\"#\" onclick=\"" + this.name + ".sortGrid(" + i + "); return false;\";>" + this.gridColumns[i] + "</a></th>";
 }
 headerRow += "</tr>";
 return headerRow;
}

PINT_GridControl.prototype.sortGrid = function(orderBy) {
 if (orderBy == this.gridOrderBy) this.gridData.reverse();
 else {
 gColumnSortIndex = orderBy;
 this.gridOrderBy = orderBy;
 /* if (isNaN(parseFloat(this.gridData[0][orderBy], 10))) this.gridData.sort(PINT_AlphaSortByGlobalOrderBy);
 else this.gridData.sort(PINT_NumericSortByGlobalOrderBy);*/
 var sortFunction = PINT_AlphaSort;
 if (this.gridData[0][orderBy].match(/^\d\d[\/-]\d\d[\/-]\d\d\d\d$/)) this.gridData.sort(PINT_DateSort);
 else if (this.gridData[0][orderBy].match(/^\d\d[\/-]\d\d[\/-]\d\d$/)) this.gridData.sort(PINT_DateSort);
 else if (this.gridData[0][orderBy].match(/^[\d\.]+$/)) this.gridData.sort(PINT_NumericSort);
 else this.gridData.sort(PINT_AlphaSort);
 }
 this.drawGrid();
}

// Sorting functions
function PINT_AlphaSort(a,b){
 return a[gColumnSortIndex] > b[gColumnSortIndex] ? 1 : a[gColumnSortIndex] < b[gColumnSortIndex] ? -1 : 0;
}

function PINT_NumericSort(a,b){
 var aa = parseFloat(a[gColumnSortIndex]);
 var bb = parseFloat(b[gColumnSortIndex]);
 // if for some reason one of the entries is not a number set value to 0
 // if (isNaN(aa)) aa = 0;
 //if (isNaN(bb)) bb = 0;
 return aa-bb;
}

function PINT_CurrencySort(a,b) {
 aa = a[gColumnSortIndex].replace(/[^0-9.]/g,'');
 bb = a[gColumnSortIndex].replace(/[^0-9.]/g,'');
 return parseFloat(aa)-parseFloat(bb);
}

function PINT_DateSort(a,b) {
 // y2k notes: two digit years less than 50 are treated as 20XX, greater than 50 are treated as 19XX
 aa = a[gColumnSortIndex];
 bb = b[gColumnSortIndex];
 if (aa.length == 10) {
 dt1 = aa.substr(6,4)+aa.substr(3,2)+aa.substr(0,2);
 } else {
 yr = aa.substr(6,2);
 if (parseInt(yr) < 50) { yr = '20'+yr; } else { yr = '19'+yr; }
 dt1 = yr+aa.substr(3,2)+aa.substr(0,2);
 }
 if (bb.length == 10) {
 dt2 = bb.substr(6,4)+bb.substr(3,2)+bb.substr(0,2);
 } else {
 yr = bb.substr(6,2);
 if (parseInt(yr) < 50) { yr = '20'+yr; } else { yr = '19'+yr; }
 dt2 = yr+bb.substr(3,2)+bb.substr(0,2);
 }
 if (dt1==dt2) return 0;
 if (dt1<dt2) return -1;
 return 1;
}

function PINT_hideNonParentElement(id, e){
	 var nonParent = true;
	 //var element = document.getElementById(id);
	 var current = e.relatedTarget;
	 if(!current)
	    current = e.toElement;
	 if(!current)
	    return;
	if (isOpera) {
		if (id == 'product_menu') {
			if (operaControl.selectFocus == true) {
				return false;
			}
		}
	}
	 while(current.parentNode){
	     if(current.id && current.id == id){
	         nonParent = false;
	         break;
	 }
	 current = current.parentNode;
	 }
	
	 if(nonParent){
	     PINT_showHideElement(id);
	     resetPM();
	 }
}

function resetPM(){
    if(currentPMList != "main"){
        document.getElementById(currentPMList).style.display="none";
        document.getElementById("pm_list").style.display="block";
    }
    //>>>reset  search selections
}

function PINT_renderTransition(transitionId, startElementId, endElementId, inOut){
    var back = document.getElementById(transitionId);
    var opac = back.style.opacity;
    back.style.display="block";
    if(inOut == 'in'){
        opac = parseFloat(opac) + .07
        PINT_setOpacity(transitionId, opac);
        if(opac <= 1){
            setTimeout('PINT_renderTransition("'+transitionId+'", "'+startElementId+'", "'+endElementId+'", "in")',5);
         }
         else
            setTimeout('PINT_renderTransition("'+transitionId+'", "'+startElementId+'", "'+endElementId+'", "out1")',5);
    }
    else if(inOut == 'out1'){
        document.getElementById(startElementId).style.display = "none";
        document.getElementById(endElementId).style.display = "block";
        setTimeout('PINT_renderTransition("'+transitionId+'", "'+startElementId+'", "'+endElementId+'", "out2")',5);
   }
    else{
        opac = opac - .07;
        PINT_setOpacity(transitionId, opac);
        if(opac >= .07)
            setTimeout('PINT_renderTransition("'+transitionId+'", "'+startElementId+'", "'+endElementId+'", "out2")',5);
         else{
            document.getElementById(transitionId).style.display = "none";
         }
    }
        

}


PINT_setOpacity = function (elemid,value)	{
		var e = document.getElementById(elemid);
		e.style.opacity = value;
		e.style.filter = 'alpha(opacity=' + value*100 + ')';
}

function PINT_showHideElement(id, showStyle){
	 if (typeof showStyle == "undefined") {
		showStyle = "block";
	 }

	 var element = document.getElementById(id);

	 if(element.style.display == "none") {
		 if (id == 'product_menu') {
		   if (document.getElementById("parentId") != null) document.getElementById("parentId").style.display = "none";
		 }
		element.style.display = showStyle;
	 } else {
		 if (id == 'product_menu') {
		   if (document.getElementById("parentId") != null) document.getElementById("parentId").style.display = "block";
		 }
	 element.style.display = "none";
	}
}

function checkAll(hiddenField){
 var checkBoxes = PINT_getElementsByClass('checkbox_event');
 var values = (hiddenField.value != '') ? hiddenField.value.split(",") : new Array();
 for (i = 1; i < checkBoxes.length; i++) {
     if(checkBoxes[0].checked) checkBoxes[i].checked = 'checked';
     else checkBoxes[i].checked = '';

    // if check all is selected
	if (checkBoxes[0].checked) values.push(checkBoxes[i].value);
	else {
		// else remove all
		values.length  = 0;
		}
	}
 	if (values.length) hiddenField.value = values.join(",");
	else hiddenField.value = '';
}

var previousSubId = "none";
var previousManuId = "none";

function doSelection(dropdown, current){

    var previousId = previousSubId;

    if(dropdown == "manu")
        previousId = previousManuId;
        
    if(current.value && current.value != "-1"){ 
    	document.getElementById(dropdown+'Select').disabled = "";
    	
        var elements = document.getElementsByName(dropdown+'Option'+current.value);
        for(var i = 0; i<elements.length; i++){
        	elements[i].style.display = "block";
        }
    
        elements = document.getElementsByName(dropdown+'Select'+current.value);
        for(var i = 0; i<elements.length; i++){
        	elements[i].style.display = "block";
        }
        
		turnOffOptions(dropdown, previousId);
		
        if(dropdown == "subCat")
             previousSubId = current.value;
        else if(dropdown == "manu")
             previousManuId = current.value;

        document.getElementById(dropdown+'SelectFirst').selected = true;

        if(dropdown == 'subCat'){
    	    document.getElementById('manuSelectFirst').selected = true;
    	    document.getElementById('manuSelect').disabled = "disabled";
        }

        return;
    }
    
	if(dropdown == "manu"){
		turnOffOptions(dropdown, previousManuId);
	}
	else if(dropdown == "subCat"){
		turnOffOptions("manu", previousManuId);
		turnOffOptions("subCat", previousSubId);
	}
	
    document.getElementById(dropdown+'SelectFirst').selected = true;
    document.getElementById(dropdown+'Select').disabled = "disabled";
    previousManuId = "none";

    if(dropdown == 'subCat'){
        previousSubId = "none";
    	document.getElementById('manuSelectFirst').selected = true;
    	document.getElementById('manuSelect').disabled = "disabled";
    }
}

function turnOffOptions(dropdown, previousId){
	    if(previousId != "none"){
	        elements = document.getElementsByName(dropdown+'Option'+previousId);
	        for(var i = 0; i<elements.length; i++){
	        	elements[i].style.display = "none";
	        }

	        elements = document.getElementsByName(dropdown+'Select'+previousId);
	        for(var i = 0; i<elements.length; i++){
	        	elements[i].style.display = "none";
	        }
    }
}


function initSelect() {
	var catId = document.getElementById('category');
	var subCatId = document.getElementById('subCategory');
	var manuId = document.getElementById('manufacturer');
	var categoryName = '';

	var data = PINT_product_search_data();

	var focusHandler = function(e) {
		operaControl.selectFocus=true;
	};

	var blurHandler = function(e) {
		operaControl.selectFocus=false;
	};
	
	var changeHandler = function(e) {
		this.blur();
	};
	
	subCatId.disabled='disabled';
	manuId.disabled='disabled';	

	if (isOpera) {
		PINT_addEvent(catId,'focus', focusHandler);
		PINT_addEvent(catId,'blur', blurHandler);
		PINT_addEvent(catId,'change', changeHandler);
		PINT_addEvent(subCatId,'focus', focusHandler);
		PINT_addEvent(subCatId,'blur', blurHandler);
		PINT_addEvent(subCatId,'change', changeHandler);
		PINT_addEvent(manuId,'focus', focusHandler);
		PINT_addEvent(manuId,'blur', blurHandler);
		PINT_addEvent(manuId,'change', changeHandler);
	}

	for (var cat in data) {
		var categoryName = data[cat].name;
		var newOption = document.createElement('option');
		newOption.value = cat;
		newOption.text = categoryName;
		try {
			catId.add(newOption,null);
		} catch (e) {
			catId.add(newOption);
		}
	}
}

function doSelect(target) {
	var data = PINT_product_search_data();
	var catId = document.getElementById('category');
	var subCatId = document.getElementById('subCategory');
	var manuId = document.getElementById('manufacturer');
	
	if (target == 'category') {
		subCatId.options.length = 1;
		manuId.options.length = 1;
		var categoryClassId = catId.options[catId.selectedIndex].value;
		
		manuId.disabled='disabled';
		if ( categoryClassId == -1 ) {
			subCatId.disabled='disabled';
			return;
		}
		subCatId.disabled='';
		
		var subCategoryData = data[categoryClassId].subCategory;
		
		for (var subCat in subCategoryData) {
			var subCategoryName = subCategoryData[subCat].name;
			var newOption = document.createElement('option');
			newOption.value = subCat;
			newOption.text = subCategoryName;
			try {
				subCatId.add(newOption,null);
			} catch (e) {
				subCatId.add(newOption);
			}
		}
	} else if (target == 'subCategory') {
		manuId.options.length = 1;
		var categoryClassId = catId.options[catId.selectedIndex].value;
		var subCategoryClassId = subCatId.options[subCatId.selectedIndex].value;
		
		if ( subCategoryClassId == -1 ) {
			manuId.disabled='disabled';
			return;
		}
		manuId.disabled='';

		var manufacturersData = data[categoryClassId].subCategory[subCategoryClassId].manufacturers;
		
		for (var manu in manufacturersData) {
			var manuName = manufacturersData[manu];
			var newOption = document.createElement('option');
			newOption.value = manu;
			newOption.text = manuName;
			try {
				manuId.add(newOption,null);
			} catch (e) {
				manuId.add(newOption);
			}
		}
	}
}

function initCategoryNav()
{
	var flash = document.getElementById('flashcontainer');
	if (!flash) flash = document.getElementById('ver_flash');
	if (typeof PINT_product_dropdown_nav != 'undefined') var doNav = true;
        if (doNav) {
        var pdn = PINT_product_dropdown_nav();
	var productMenu = document.getElementById('product_menu');
//	var pmList = document.getElementById('pm_list');

	var pmList = document.createElement('ul');
	pmList.id = 'pm_list';
	pmList.style.display = 'block';
	productMenu.appendChild(pmList);
        }

	if (flash && productMenu) {

		PINT_addEvent(productMenu,'mouseover', function(e) {
//			flash.style.visibility = 'hidden';
//opera.postError(flash.sendCommandToFlash);
			if (flash.sendCommandToFlash) {
				flash.sendCommandToFlash('stop');
			} else {
				flash.style.visibility = 'hidden';
			}
		});
		PINT_addEvent(productMenu,'mouseout', function(e) {
//			flash.style.visibility = '';
			if (flash.sendCommandToFlash) {
				flash.sendCommandToFlash('play');
			} else {
				flash.style.visibility = '';
			}
		});
	}

	for( var categoryName in pdn) {
		var category = pdn[categoryName];
		var className = category['class'];
		var title = category.title;
		var href = category.href;
		var desc = category.description;
		var subNav = category.subNav;

		var listItem = document.createElement('li');
		listItem.className = className;

		listItem.onclick = function(cName) {
			return function(e) {
			currentPMList = 'pm_'+cName;
			PINT_renderTransition('transition_9CD7FF', 'pm_list', 'pm_'+cName, 'in');

			if (e.stopPropagation) {
				e.stopPropagation();
				e.preventDefault();
			} else {
				e.cancelBubble = true;
				e.returnValue = false;
			}

			return false;
		}}(className);

		pmList.appendChild(listItem);

		var listItemAnchor = document.createElement('a');
		listItemAnchor.href = '#';
		listItemAnchor.innerHTML = title+'<strong>&nbsp;</strong>';
		listItem.appendChild(listItemAnchor);

		var catDiv = document.createElement('div');
		catDiv.id = 'pm_'+className;
		catDiv.className = 'pm_productmain';
		catDiv.style.display = 'none';
		productMenu.appendChild(catDiv);
		
		var catTitle = document.createElement('h1');
		catTitle.innerHTML = title;
		catDiv.appendChild(catTitle);

//		var catDesc = document.createElement('p');
//		catDesc.innerHTML = desc;
//		catDiv.appendChild(catDesc);

		var snLen = subNav.length;
		var start = 0;
		var end = snLen;

		if (snLen >= 6) {
			end = Math.ceil(snLen/2);
		}

		var makeList = function() {
			var uList = document.createElement('ul');
			for(var i = start; i < end; i++) {
				var snItem = subNav[i];
				var subNavList = document.createElement('li');
				var subNavLink = document.createElement('a');
				subNavLink.href = snItem.href;
				subNavLink.innerHTML = snItem.title;
				subNavList.appendChild(subNavLink);
				uList.appendChild(subNavList);
			}
			catDiv.appendChild(uList);
		}
		makeList();
		if (snLen >= 6) {
			start = Math.ceil(snLen/2);
			end = snLen;
			makeList();
		}
		
		var imgClose = document.createElement('img');
		imgClose.src = themeRootDirectory  + '/images/btn_close.gif';
		imgClose.className = 'btn_close';
		imgClose.height = '25';
		imgClose.width = '620';

		imgClose.onclick = function(cName) {
			return function(e) {
			currentPMList = 'pm_'+cName;
			PINT_renderTransition('transition_9CD7FF', 'pm_'+cName, 'pm_list', 'in');
			return false;
		}}(className);

		catDiv.appendChild(imgClose);
	}

}
