// GENERIC FUNCTIONS
function NewWindow(mypage,myname,w,h,scroll,pos)
{
if(pos=="random"){LeftPosition=(screen.width)?Math.floor(Math.random()*(screen.width-w)):100;TopPosition=(screen.height)?Math.floor(Math.random()*((screen.height-h)-75)):100;}
if(pos=="center"){LeftPosition=(screen.width)?(screen.width-w)/2:100;TopPosition=(screen.height)?(screen.height-h)/2:100;}
else if((pos!="center" && pos!="random") || pos==null){LeftPosition=0;TopPosition=20}
settings='width='+w+',height='+h+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',location=no,directories=no,status=no,menubar=no,toolbar=no,resizable=no';
win=window.open(mypage,myname,settings);
}

function doAction(action, param1, param2)
{

	year = getObj('searchyear').options[getObj('searchyear').selectedIndex].value;
	brand = getObj('searchbrand').value;
	model = getObj('searchmodel').options[getObj('searchmodel').selectedIndex].value;
	if (year!="")
	{
		year = year+'/';	
	}
	if (brand!="")
	{
		brand = brand+'/';	
	}
	url = str_replace(" ", "-",year+brand+model);
	window.location="http://"+(param1+str_replace("//","",url));
}

// returns the object found by Id
function getObj(id)
{
	// returns object found by its id
	return document.getElementById(id);
}
// replaces string a la PHP
function str_replace(search, replace, subject) 
{
    var f = search, r = replace, s = subject;
    var ra = r instanceof Array, sa = s instanceof Array, f = [].concat(f), r = [].concat(r), i = (s = [].concat(s)).length;
    while (j = 0, i--) {
        if (s[i]) {
            while (s[i] = s[i].split(f[j]).join(ra ? r[j] || "" : r[0]), ++j in f){};
        }
    };
    return sa ? s : s[0];
}
// retrieves the vaule of a query var
function getQueryVariable(variable) { 
  var query = window.location.search.substring(1); 
  var vars = query.split("&"); 
  for (var i=0;i<vars.length;i++) { 
    var pair = vars[i].split("="); 
    if (pair[0] == variable) { 
      return pair[1]; 
    } 
  } 
  return false;
} 
// main form "action" processor
// shows hide an object
function showHide(id)
{
	if (id!='')
	{
		obj = getObj(id);
		if (obj.style.display=='none')
		{
			obj.style.display='';
		}
		else
		{
			obj.style.display='none';
		}
	}
}
// hides previous object shows passed by param
var currentid = '';
var currenttab = '';
function toggle(t, id, csson, cssoff)
{
	getObj(currenttab).className = cssoff;
	getObj(t).className = csson;
	if (currentid!='')
	{
		obj = getObj(currentid);
		obj.style.display = 'none';
	}
	if (id!='')
	{
		obj = getObj(id);
		if (obj.style.display=='none')
		{
			obj.style.display='';
		}
		else
		{
			obj.style.display='none';
		}
		currentid = id;
	}
	currenttab =t;
}


//  hide an object
function hide(id)
{
	if (id!='')
	{
		obj = getObj(id);
		obj.style.display='none';
	}
}
//  hide an object
function show(id)
{
	if (id!='')
	{
		obj = getObj(id);
		obj.style.display='';
	}
}
// finds the object x position
function findPosX(obj)
{
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;
	return curleft;
}
// finds the object y position
function findPosY(obj)
{
	var curtop = 0;
	
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
		
	return curtop;
}
function onlyDigits(e) 
{
	var _ret = true;
	if (isIE) 
	{
		if (window.event.keyCode < 47 || window.event.keyCode > 57) 
		{
			window.event.keyCode = 0;
			_ret = false;
		}
	}
	if (isNS) 
	{
		if (e.which < 47 || e.which > 57) 
		{
			e.which = 0;
			_ret = false;
		}
	}
	return (_ret); 
}
function checkPassword(string, indicatorId)
{
	obj = getObj(indicatorId);
	if (string.length<6)
	{
		obj.className = 'red';
		obj.innerHTML = '<b>Weak password</b>';
	}
	else
	{
		obj.className = 'green';
		obj.innerHTML = '<b>Password ok</b>';
	}
}
function viewPhoto(photo, viewerPath,w,h)
{
	if (viewerPath!='')
	{
		// flash viewer
		document.getElementById("viewer").src = viewerPath+'viewer/viewer.php?image='+photo;
	}
	else
	{
		//js viewer
		document.getElementById("enlarger").innerHTML = '<img src="'+photo+'" width="'+w+' height="'+h+'">';
	}
}

function bookmark(url,title){
  if ((navigator.appName == "Microsoft Internet Explorer") && (parseInt(navigator.appVersion) >= 4)) {
  window.external.AddFavorite(url,title);
  } else if (navigator.appName == "Netscape") {
    window.sidebar.addPanel(title,url,"");
  } else {
    alert("Press CTRL-D (Netscape) or CTRL-T (Opera) to bookmark");
  }
}
/*function checkForm(szFormId)
{
	var bError = false;
	for (i=0;i<document.getElementById(szFormId).elements.length;i++)
	{
		if ((document.getElementById(szFormId).elements[i].required=="yes") && (document.getElementById(szFormId).elements[i].value==""))
		{
			bError = true;
			break;
		}
	}
	document.getElementById(szFormId).action=window.location.href;
	bError?alert("Some fields are required. Please enter valid information in all the required fields."):document.getElementById(szFormId).submit();
	return false;
}*/
function checkForm(formid)
{
	var bError = false;
	z= (document.getElementById(formid).elements.length);
	for (var i = 0; i < z; i++) 
	{
		if ((document.getElementById(formid).elements[i].required=="yes") && (document.getElementById(formid).elements[i].value==""))
		{
			bError = true;
			break;
		}
		else 
		{
			if ((document.getElementById(formid).elements[i].emailaddress=="yes") && (checkEmail(document.getElementById(formid).elements[i].value)==false))
			{
			bError = true;
			break;
			}
		}
	}
	if (bError)
	{
		alert("Please complete required fields correctly.");
	}
	else
	{
		document.getElementById(formid).action=window.location.href;
		document.getElementById(formid).submit();
	}
}

// returns true/false by string as email
function checkEmail(szEmail) 
{
	if (szEmail == 'test@127.0.0.1')
	{
		return true;	
	}
	if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(szEmail))
	{
		return (true)
	}
	alert("Invalid E-mail Address! Please re-enter.")
	return (false)
}

function enlargePhoto(url, viewerObjId)
{
	
	if ((url!="") && (viewerObjId!=""))	
	{
		viewerPath = (url.substr(0,url.indexOf('resources')))+'/resources/viewer/viewer.php?image=';
		getObj(viewerObjId).innerHTML ='<iframe frameborder="0" scrolling=no width="100%" height="100%" src="'+viewerPath+url+'"></iframe>';
	
	}
}