	function handleOnChange(dd1)	{	  var idx = dd1.selectedIndex;	  var val = dd1[idx].text;	  var filename = dd1[idx].value;	  var par = document.forms["myform"];	  var parelmts = par.elements;	  var prezsel = parelmts["prez"];	  var country = val;	  if (country != "Select A Region")	  {		Http.get({					//url: "./pfinder/txt/" +  filename + ".txt",			url: "/www/idgproducts.nsf/" +  filename + ".txt",			callback: fillPrez,			cache: Http.Cache.Get		}, [prezsel]);	  }	}	function fillPrez(xmlreply, prezelmt)	{	  if (xmlreply.status == Http.Status.OK)	  {		var prezresponse = xmlreply.responseText;		var prezar = prezresponse.split("|");		prezelmt.length = 1;		prezelmt.length = prezar.length;		for (o=1; o < prezar.length; o++)		{		  prezelmt[o].text = prezar[o];		  prezelmt[o].value = prezar[o];		}	  }//	  else//	  {//		alert("Cannot handle the AJAX call.");//	  }	}		function getMyHTML(serverPage, objID) {         var req2 = new DataRequestor();         req2.setObjToReplace("myspan");         req2.getURL("/www/idgproducts.nsf/blank.htm");		 var req = new DataRequestor();         req.setObjToReplace(objID);         req.getURL(serverPage);      }    function processGetPost(){		var myajax=ajaxpack.ajaxobj		var myfiletype=ajaxpack.filetype		//if (myajax.readyState == 4){ //if request of file completed		//if (myajax.status==200 || window.location.href.indexOf("http")==-1){ //if request was successful or running script locally		//if (myfiletype=="txt")			document.getElementById('myspan').innerHTML = myajax.responseText; 		//else			//document.getElementById('myspan').innerHTML = ""; 		//}		//}	}	  	  	function selectAll_brand_region() {		var tempval=eval("document.brand_region_asia")		tempval.Checked=true;	}		 /*-----------------------------------------------------------+		 | addLoadEvent: Add event handler to body when window loads |		 +-----------------------------------------------------------*/		function addLoadEvent(func) {			var oldonload = window.onload;						if (typeof window.onload != "function") {				window.onload = func;			} else {				window.onload = function () {					oldonload();					func();				}			}		}				/*------------------------------------+		 | Functions to run when window loads |		 +------------------------------------*/		addLoadEvent(function () {			initChecklist();		});				/*----------------------------------------------------------+		 | initChecklist: Add :hover functionality on labels for IE |		 +----------------------------------------------------------*/		function initChecklist() {			if (document.all && document.getElementById) {				// Get all unordered lists				var lists = document.getElementsByTagName("ul");								for (i = 0; i < lists.length; i++) {					var theList = lists[i];										// Only work with those having the class "checklist"					if (theList.className.indexOf("checklist") > -1) {						var labels = theList.getElementsByTagName("label");												// Assign event handlers to labels within						for (var j = 0; j < labels.length; j++) {							var theLabel = labels[j];							theLabel.onmouseover = function() { this.className += " hover"; };							theLabel.onmouseout = function() { this.className = this.className.replace(" hover", ""); };						}					}				}			}		} function pfSearch() {window.location='#bottomframe';var form = document.getElementById('myform');// get tab namevar thisTab = form.tabname.value;var tabValue = document.getElementById(thisTab).value;tabValue = replaceSubstring(tabValue, '~', ' / ');tabValue = escape(tabValue);if (tabValue == 0) {alert('Please select a ' + thisTab +' to begin your search.');return (true);}//can't give an object an ID of "type".  So type tab is called "producttype".  Convert this for qs.//region value could contain ~ so ajax script can process.  replace with slash.if (thisTab == 'producttype') {qs = '&tab=product&type=' + replaceSubstring(tabValue,'~',' / ');}else {qs = '&tab=' + thisTab + '&' + thisTab + '=' + replaceSubstring(tabValue,'~',' / ');}if (document.getElementById('prez')) {	var countryVal = '';	countryVal = escape(document.getElementById('prez').value);	if (countryVal !='all') {		qs = qs + '&country=' + countryVal;	}}var brandVals = '';var count= 0;//get additional criteriaif (thisTab != 'brand') {	count = 0;	for (i=0; i < form.brand.length; i++) {		if (form.brand[i].checked ==true) {			count = count + 1;			if (brandVals == '') {				brandVals = escape(form.brand[i].value);				}			else {				brandVals = brandVals + ',' + escape(form.brand[i].value);				}			}		}// If no brands selected, or if all brands selected, leave qs as-is.//	alert('Brands count: ' + count + ' Options count: ' + form.brand.length)	if ((brandVals != '') && (count != form.brand.length)) {		qs = qs + '&brand=' + brandVals;	}}var regionVals = '';if (thisTab != 'region') {	count = 0;	for (i=0; i < form.region.length; i++) {		if (form.region[i].checked ==true) {			count = count + 1;			if (regionVals == '') {				regionVals = escape(form.region[i].value);				}			else {				regionVals = regionVals + ',' + escape(form.region[i].value);				}			}		}	if ((regionVals != '') && (count != form.region.length)) {		qs = qs + '&region=' + regionVals;	}}var typeVals  = '';if (thisTab != 'producttype') {	count = 0;	for (i=0; i < form.producttype.length; i++) {		if (form.producttype[i].checked ==true) {			count = count + 1;			if (typeVals == '') {				typeVals = escape(form.producttype[i].value);				}			else {				typeVals = typeVals + ',' + escape(form.producttype[i].value);				}			}		}	if (typeVals != '' && (count != form.producttype.length)) {		qs = qs + '&type=' + typeVals;	}}var audVals  = '';if (thisTab != 'audience') {	count = 0;	for (i=0; i < form.audience.length; i++) {		if (form.audience[i].checked ==true) {			count = count + 1;			if (audVals == '') {				audVals = escape(form.audience[i].value);				}			else {				audVals = audVals + ',' + escape(form.audience[i].value);				}			}		}	if ((audVals != '') && (count != form.region.length)) {		qs = qs + '&audience=' + audVals;	}}//alert(qs);var theURL = '/www/idgproducts.nsf/generalsearch?openagent' + qs;//var qdebug = document.getElementById('querydebug');//qdebug.value = theURL;var iframe = document.getElementById('bottomframe');iframe.src=theURL;//getMyHTML('/www/idgproducts.nsf/blank2.htm' ,'myspan')urchinTracker('/IDG Products/Product Finder/' + thisTab);}//Site search functionfunction doSomething(e){     var targ;	if (!e) var e = window.event;	if (e.target) targ = e.target;	else if (e.srcElement) targ = e.srcElement;	if (targ.nodeType == 3) // defeat Safari bug		targ = targ.parentNode;	var code;	if (!e) var e = window.event;	if (e.keyCode) code = e.keyCode;	else if (e.which) code = e.which;	var character = String.fromCharCode(code);	if (code =="13") {		runSearch();		return false;	}}function stringBlank(s) {	var stringLength = s.length;	for (i = 0; i < stringLength; i++) {		if (s.charAt(i) != "")			return false;	}		return true;}function runSearch() {	//var f = document.forms[0]	//var s = f.SearchValue.value;	//var searchTypeText = f.SearchType.options[f.SearchType.selectedIndex].text;	var searchField = document.getElementById('SearchValue');	var typeField = document.getElementById('SearchType');	var s = searchField.value;	var searchHost = "http://www.idg.com"	var searchTypeText = typeField.options[typeField.selectedIndex].text;	if (stringBlank(s) || s == 'Search for') 		{			alert("Please enter a value for searching");			f.SearchValue.focus();                                }	else {					if (searchTypeText == "Press Room") {				var db = "/www/pr.nsf/"				var view = "webPRSearchView"		}			if (searchTypeText == "IDG In the News") {				var db = "/www/media.nsf/"				var view = "webMRSearchView"		}					if (searchTypeText == "About IDG") {				var db = "/www/homenew.nsf/"				var view = "webAboutSearchView"		}		if (searchTypeText == "Contact IDG") {				var db = "/www/idgdir.nsf/"				var view = "webContactSearchView"		}					if (searchTypeText == "Careers At IDG") {				var db = "/www/idgjobs.nsf/"				var view = "webJobSearchView"		}				if (searchTypeText == "All IDG.com") {			location.href = searchHost + "/www/SearchIDG.nsf/Search?CreateDocument&SearchValue=" + s;		}		else if (searchTypeText == "Products") {			location.href = searchHost + "/www/IDGProducts.nsf/(SimpleSearchAgent)?OpenAgent&query=" + s;		}		else {		location.href = searchHost + db + view + "?SearchView&Query=" + replaceSubstring(s, " ", "+")		}			}}function processJobQuery(queryType) {	var iframe = document.getElementById('results');	var search = 'all';	if (queryType != 'all') {		var control = document.getElementById(queryType);		if (control.options[control.selectedIndex].text == "-Select-") {		alert("Please select select an option before searching.");		return;		}		search = escape(queryType) + '&value=' + escape(control.options[control.selectedIndex].text);	}	var url = '/' + escape(document.getElementById('DBName').value) + '/jobSearch?OpenAgent&type=' +			search;	iframe.src = url;;}function popJob(url) {	window.open(url, 'job', 'scrollbars,width=575,height=650');	return false; }function processNewsQuery(queryType) {	var iframe = document.getElementById('results');	var search = '?????'		if (queryType == 'recent') {		search = 'recent';	}		if (queryType == 'release') {		var control1 = document.getElementById('releaseMonth');		var control2 = document.getElementById('releaseYear');		search = escape(queryType) + '&value=' + escape(control1.options[control1.selectedIndex].value) +			'-' + escape(control2.options[control2.selectedIndex].text);	}		if (queryType == 'fulltext') {		var control = document.getElementById('fulltext');		var matchValue = 'every';		var match = document.getElementById('match0');		if (match.checked) {			matchValue = 'any';		} else {			match = document.getElementById('match2');			if (match.checked) {matchValue = 'phrase';}		}		search = escape(queryType) + '&match=' + matchValue + '&value=' + escape(control.value);	}		if (queryType == 'cat') {		var control = document.getElementById('cat');		if (control.options[control.selectedIndex].text == "-Select-") {			alert("Please select select a Category.");			return;		}		search = escape(queryType) + '&value=' + escape(control.options[control.selectedIndex].value);	}		var url = '/www/pr.nsf/newsSearch?OpenAgent&type=' +			search;	iframe.src = url;}function popNews(url) {	window.open(url, 'news', 'scrollbars,width=655,height=650');	return false; }function goToPage(pageNo) {	var results = document.getElementById('results');	var resultsDoc = results.contentDocument; //works only for mozilla - see next line for ie	if (!resultsDoc) {resultsDoc = results.contentWindow.document;} //this is for ie	var htmlNoPage = resultsDoc.getElementById('htmlNoPage');		var html = htmlNoPage.value;	var i = html.indexOf('&');	if (pageNo.toLowerCase() == 'p') {		//printer friendly		if (confirm('Include the text of the first paragraph from each press release?' +				'\nClick "OK if "Yes", "Cancel" if "No".')) {			html = html.substring(0, i) + '&printerfriendly&firstparagraph' + html.substr(i);		} else {			html = html.substring(0, i) + '&printerfriendly' + html.substr(i);		}		window.open(html, 'printerfriendly', 'width=650,height=650,scrollbars,titlebar=no')	} else {		//normal go to pange number		html = html.substring(0, i) + '&page=' + pageNo.toString() + html.substr(i);		//alert(html);		resultsDoc.location = html;	}}function processContactQuery(queryType) {	var iframe = document.getElementById('results');	var search = queryType;	if ((queryType != 'us') && (queryType != 'nonus')) {		var control = document.getElementById(queryType);		if (control.options[control.selectedIndex].text == "-Select-") {			alert("Please select select an option before searching.");			return;		}		if (queryType == 'country') {			search = escape(queryType) + '&name=' + 				escape(control.options[control.selectedIndex].text) + '&value=' + 				escape(control.options[control.selectedIndex].value);		} else {			search  += '&value=' + escape(control.options[control.selectedIndex].text);		}	}	var url = '/' + escape(document.getElementById('DBName').value) + '/ContactSearch?OpenAgent&type=' +		search;	iframe.src = url;;}function popContact(url) {	window.open(url, 'contact', 'scrollbars,width=575,height=650');	return false; }function goToContactPage(pageNo) {	var results = document.getElementById('results');	var resultsDoc = results.contentDocument; //works only for mozilla - see next line for ie	if (!resultsDoc) {resultsDoc = results.contentWindow.document;} //this is for ie	var htmlNoPage = resultsDoc.getElementById('htmlNoPage');		var html = htmlNoPage.value;	var i = html.indexOf('&');	if (pageNo.toLowerCase() == 'p') {		//printer friendly		if (confirm('Include all contact information for each contact?' +				'\nClick "OK if "Yes", "Cancel" if "No".')) {			html = html.substring(0, i) + '&printerfriendly&fullcontact' + html.substr(i);		} else {			html = html.substring(0, i) + '&printerfriendly' + html.substr(i);		}		//alert(html);		window.open(html, 'printerfriendly', 'width=650,height=650,scrollbars,titlebar=no')	} else {		//normal go to pange number		html = html.substring(0, i) + '&page=' + pageNo.toString() + html.substr(i);		//alert(html);		resultsDoc.location = html;	}}// Macromedia Dreamweaver functions for Product Finder mapfunction MM_swapImgRestore() { //v3.0  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;}function MM_preloadImages() { //v3.0  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}}function MM_findObj(n, d) { //v4.01  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);  if(!x && d.getElementById) x=d.getElementById(n); return x;}function MM_swapImage() { //v3.0  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}}