function select_option(o_option, val)
{
	try
	{
		o_option.parentNode.parentNode.getElementsByTagName('DIV')[0].innerHTML = o_option.innerHTML;
		o_option.parentNode.parentNode.getElementsByTagName('INPUT')[0].value = val; // o_option.innerHTML;
		if(typeof(o_option.parentNode.parentNode.getElementsByTagName('INPUT')[0].onchange)!= 'undefined'){
			o_option.parentNode.parentNode.getElementsByTagName('INPUT')[0].onchange();
		}
		// If the register form is submitted, check if age is correct
		//is_error('register_date');
	}
	catch (e)
	{
		;
	}
}

function togglegroupcategs()
{
	var classusedie = document.getElementById('groupbtnmore1').getAttribute('className');
	if (classusedie != "btnless")
	{
	document.getElementById('groupwrap1').style.width = "918px";
	document.getElementById('groupbtnmore1').setAttribute('className','btnless');
	document.getElementById('groupbtnmore1').innerHTML = "<b>Less</b>";
	}
		else {
			document.getElementById('groupwrap1').style.width = "598px";
			document.getElementById('groupbtnmore1').setAttribute('className','btnmore');
			document.getElementById('groupbtnmore1').innerHTML = "<b>More</b>";
			};
	
	var classused = document.getElementById('groupbtnmore1').getAttribute('class');
	if (classused != "btnless")
		{
		document.getElementById('groupwrap1').style.width = "918px";
		document.getElementById('groupbtnmore1').setAttribute('class','btnless');
		document.getElementById('groupbtnmore1').innerHTML = "<b>Less</b>";
		}
		else {
			document.getElementById('groupwrap1').style.width = "598px";
			document.getElementById('groupbtnmore1').setAttribute('class','btnmore');
			document.getElementById('groupbtnmore1').innerHTML = "<b>More</b>";
			};
}

function toggleshopcategs()
{
	var classusedie = document.getElementById('shopcategs1').getAttribute('className');
		if (classusedie != "morecategs")
			{
			document.getElementById('shopcategs1').style.height = "100%";
			document.getElementById('shopcategs1').setAttribute('className','morecategs');
			document.getElementById('moreshopcategslnk1').innerHTML = "less...";
			}
			else {
				document.getElementById('shopcategs1').style.height = "224px";
				document.getElementById('shopcategs1').setAttribute('className','lesscategs');
				document.getElementById('moreshopcategslnk1').innerHTML = "more...";
				};
				
	var classused = document.getElementById('shopcategs1').getAttribute('class');
		if (classused != "morecategs")
			{
			document.getElementById('shopcategs1').style.height = "100%";
			document.getElementById('shopcategs1').setAttribute('class','morecategs');
			document.getElementById('moreshopcategslnk1').innerHTML = "less...";
			}
			else {
				document.getElementById('shopcategs1').style.height = "224px";
				document.getElementById('shopcategs1').setAttribute('class','lesscategs');
				document.getElementById('moreshopcategslnk1').innerHTML = "more...";
				};	
}

function togglepimpcategs()
{
	var classusedie = document.getElementById('pimpcategs1').getAttribute('className');
		if (classusedie != "morecategs")
			{
			document.getElementById('pimpcategs1').style.height = "100%";
			document.getElementById('pimpcategs1').setAttribute('className','morecategs');
			document.getElementById('morepimpcategslnk1').innerHTML = "less...";
			}
			else {
				document.getElementById('pimpcategs1').style.height = "200px";
				document.getElementById('pimpcategs1').setAttribute('className','lesscategs2');
				document.getElementById('morepimpcategslnk1').innerHTML = "more...";
				};

	var classused = document.getElementById('pimpcategs1').getAttribute('class');
		if (classused != "morecategs")
			{
			document.getElementById('pimpcategs1').style.height = "100%";
			document.getElementById('pimpcategs1').setAttribute('class','morecategs');
			document.getElementById('morepimpcategslnk1').innerHTML = "less...";
			}
			else {
				document.getElementById('pimpcategs1').style.height = "200px";
				document.getElementById('pimpcategs1').setAttribute('class','lesscategs2');
				document.getElementById('morepimpcategslnk1').innerHTML = "more...";
				};	
}

function togglevideocategs(ix,no)
{
		var classusedie = document.getElementById(ix).getAttribute('className');
		if (classusedie != "morecategs")
			{
			document.getElementById(ix+'').style.height = "100%";
			document.getElementById(ix+'').setAttribute('class','morecategs');
			document.getElementById(ix+'').setAttribute('className','morecategs');
			document.getElementById(ix+'link').innerHTML = "less...";
			}
			else {
				document.getElementById(ix+'').style.height = "224px";
				document.getElementById(ix+'').setAttribute('class','lesscategs'+no);
				document.getElementById(ix+'').setAttribute('className','lesscategs'+no);
				document.getElementById(ix+'link').innerHTML = "more...";
				};
}


/*

function close_select_boxes(e)
{
	try
	{
		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 divs = document.getElementsByTagName('DIV');

		for (var i = 0; i < divs.length; i++)
		{
			if (divs[i].className.match('_opened') && divs[i] != targ.parentNode)
			{
				divs[i].className = divs[i].className.replace('opened', 'closed');
			}
		}
	}
	catch (e)
	{
		;
	}
}

document.onclick = close_select_boxes;


function select_option(o_option, val)
{
	try
	{
		o_option.parentNode.parentNode.getElementsByTagName('DIV')[0].innerHTML = o_option.innerHTML;
		o_option.parentNode.parentNode.getElementsByTagName('INPUT')[0].value = val; // o_option.innerHTML;
	}
	catch (e)
	{
		;
	}
}

function close_select_boxes(e)
{
	try
	{
		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 divs = document.getElementsByTagName('DIV');
	
		for (var i = 0; i < divs.length; i++)
		{
			if (divs[i].className == 'sortbymenu_opened' && divs[i] != targ.parentNode)
			{
				divs[i].className = 'sortbymenu_closed';
			}
		}
	}
	catch (e)
	{
		;
	}
}

document.onclick = close_select_boxes;

*/

function adjust_rating(e, obj, original_rating)
{

	if (obj.getAttribute('clicked'))
    {
    	return;
    }
    
    var the_form = obj.form;
    var r = obj.getElementsByTagName('DIV');
    obj = r[0];
    r = r[1];
    
    var rating_value;
    var posx = 0;
    var posy = 0;
    var curleft = 0;
    var curtop = 0;
    var parent_width = parseInt(obj.style.width);
    
    if (obj.offsetParent)
    {
        do
        {
            curleft += obj.offsetLeft;
            curtop += obj.offsetTop;
        }
        while (obj = obj.offsetParent);
    }
    
    
    if (!e) var e = window.event;
    if (e.pageX || e.pageY)
    {
        posx = e.pageX;
        posy = e.pageY;
    }
    else if (e.clientX || e.clientY)
    {
        posx = e.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
        posy = e.clientY + document.body.scrollTop + document.documentElement.scrollTop;
    }
    
    
    if (original_rating > -1)
    {
    	rating_value = original_rating;
        r.style.width = rating_value + '%';
    }
    else
    {
        rating_value = ((posx - curleft) * 100) / parent_width;
        rating_value = (rating_value > 100)? 100: ((rating_value < 0)?0:parseInt(rating_value));
   		if (rating_value < 5) rating_value = 0;
        
    	rating_value = Math.ceil(rating_value);
        
		rating_value = Math.ceil(rating_value / 20) * 20;
        the_form.rating.value = rating_value;
        r.style.width = rating_value + '%';
    }
}

//------------------------------------------------//

document.getElementsByClassName = function(cl) {
var retnode = [];
var myclass = new RegExp('\\b'+cl+'\\b');
var elem = this.getElementsByTagName('*');
for (var i = 0; i < elem.length; i++) {
var classes = elem[i].className;
if (myclass.test(classes)) retnode.push(elem[i]);
}
return retnode;
}; 

function fancybgrd(pic,w1,h1)
{
	var wrap11=document.getElementsByClassName(pic);
	for (var i = 0; i < wrap11.length; i++)
	if (wrap11[i].nodeName=="IMG")
    {
        var imgwidth = wrap11[i].width;
        var imgheight = wrap11[i].height;
        if (imgwidth > imgheight)
        {
            wrap11[i].setAttribute('style', 'width:' +  Math.round(w1*imgwidth/imgheight) + 'px !important; height:' + h1 + 'px !important; margin-left:-' + Math.round((w1*imgwidth/imgheight-w1)/2) + 'px !important;');
        } else {
            wrap11[i].setAttribute('style', 'width:' + w1 + 'px !important; height:' + Math.round(h1*imgheight/imgwidth) + 'px !important; margin-top:-' + Math.round((h1*imgheight/imgwidth-h1)/2) + 'px !important;');
        }
    }
}

//------------------------------------------------//

function show(id) { if(document.getElementById(id)) {document.getElementById(id).style.display = 'block'; }}
function hide(id) { if(document.getElementById(id)) {document.getElementById(id).style.display = 'none'; } }

//------------------------------------------------//

function tooltiptop(id) {
document.getElementById(id).style.top = '-'+(document.getElementById(id).scrollHeight-3)+'px';
}

//------------------------------------------------//

function setmaxheightforall(thetag,theclass,thecontainerid)
{
// gets the maximum height for all elements with the "thetag" tag and the "theclass" class inside the container with the "thecontainerid" id and then sets that heaight for all those elements inside that container
	if (thecontainerid) { mycontainer = document.getElementById(thecontainerid); }
		else { mycontainer = document; }
	var myitem = mycontainer.getElementsByClassName(theclass);
	var mytag = thetag.toUpperCase();
	if (myitem.length != 0) { var maxfound = myitem[0].clientHeight; }
		else { alert("No such class name found!"); }
	if (maxfound)
		{
		for (var i = 1; i < myitem.length; i++)
			{
			if (myitem[i].clientHeight > maxfound) { maxfound = myitem[i].clientHeight; }
			}
		var uls = mycontainer.getElementsByTagName(mytag);
		for (var k = 0; k < uls.length; k++)
			if (uls[k].className == theclass) { uls[k].style.height = maxfound+"px"; }
		}
}

//------------------------------------------------//

function togglevwscreenshots()
{
	var classusedie = document.getElementById('vwscreens').getAttribute('title');
	if (classusedie == "small")
	{
	document.getElementById('vwscreens').style.height = "205px";
	document.getElementById('vwscreens').setAttribute('title','large');
	document.getElementById('vwscreensbtn').innerHTML = "View Less Screenshots";
	}
		else {
			document.getElementById('vwscreens').style.height = "70px";
			document.getElementById('vwscreens').setAttribute('title','small');
			document.getElementById('vwscreensbtn').innerHTML = "View More Screenshots";
			};
}

//------------------------------------------------//

function findpos(obj) {
//calculates offset of an object
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		do {
			curleft += obj.offsetLeft;
			curtop += obj.offsetTop;
		} while (obj = obj.offsetParent);
	}
	return [curleft,curtop];		
}

function isIE()
{
//returns true if browser is IE
return /msie/i.test(navigator.userAgent) && !/opera/i.test(navigator.userAgent);
}

function creategiftlbox(thetrigger,thefilesrc,thefiletype)
{
	var filecode = '';
	if (thefiletype=='img') { filecode = '<img src="'+thefilesrc+'" alt="" id="mylboximg" style="display:block; width:200px; height:200px; overflow:hidden; border:1px solid #ddd;" />'; }

	if (thefiletype=='swf')	{ 
		if(isIE()){
			filecode = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" style="width:200px; height:200px;" ><param name="wmode" value="transparent"><param name="movie" value="'+thefilesrc+'"><param name="allowScriptAccess" value="always"><param name="allowNetworking" value="all"><param name="autostart" value="true" /></object>';
		} else { 
			filecode = '<embed width="200" height="200" src="'+thefilesrc+'" quality="high" wmode="transparent" allownetworking="all" align="middle" allowScriptAccess="always" allowNetworking="all" autostart="true" pluginspage="http://www.adobe.com/go/getflashplayer" type="application/x-shockwave-flash"></embed>';
		}	
	}
		
	if(thefiletype=='flv')
	{
		if(isIE()) {
			filecode = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" id="mylboximgie" name="mylboximgie" style="width: 250px; height:250px;" ><param NAME=wmode value="transparent"><param NAME=movie value="'+s_web_root+'flash/gifts/giftplay.swf"><param NAME="allowScriptAccess" value="always"><param NAME="FlashVars" value="mov='+thefilesrc +'&aplay=true"><param NAME="allowNetworking" value="all"></object>';
		} else {
			filecode = '<embed width="250" height="250" src="'+s_web_root+'flash/gifts/giftplay.swf" name="mylboximg" id="mylboximg" quality="high" wmode="transparent" allownetworking="all" align="middle" allowScriptAccess="always" allowNetworking="all" flashvars="mov='+thefilesrc+'&amp;aplay=true" pluginspage="http://www.adobe.com/go/getflashplayer" TYPE="application/x-shockwave-flash"></embed>';
		}
	}

	var giftlboxcontent = '<div id="mylboximgwindow" style="display:block; width:202px; height:202px; overflow:hidden; border:1px solid #888; background-color:#eee; padding:4px; -moz-border-radius:4px; z-index:1010;">';
	giftlboxcontent += filecode;
	giftlboxcontent += '</div>';
	if (document.getElementById('lboxgiftwrap')) { document.getElementById('lboxgiftwrap').innerHTML = giftlboxcontent; }

	var triggerpos=findpos(thetrigger);
	var giftlboxpos=findpos(document.getElementById('giftslbox'));

	document.getElementById('mylboximgwindow').style.position = 'absolute';
	var myscrolltop = 0;
	if (document.getElementById('giftslistwrap').scrollTop > 0) { myscrolltop = document.getElementById('giftslistwrap').scrollTop; }
	
	isIE8 = /msie|MSIE 8/.test(navigator.userAgent); if (isIE8) {myscrolltop = 0;}
	
	document.getElementById('mylboximgwindow').style.top = (triggerpos[1]+giftlboxpos[1]-400)-myscrolltop+"px"; 
	document.getElementById('mylboximgwindow').style.left = triggerpos[0]+50+"px";
	document.getElementById('mylboximgwindow').style.display = 'block';
}

//------------------------------------------------//

function lboximg(thelboxid,theimgid)
{
// sets the width and margin-left for 'thelboxid' according to the width of the image inside 'thecontainerid'
document.getElementById(thelboxid).style.width = parseInt(document.getElementById(theimgid).offsetWidth) + 16 +"px";
document.getElementById(thelboxid).style.marginLeft = -(parseInt(document.getElementById(theimgid).offsetWidth) / 2)  +"px";
}

//------------------------------------------------//

function findleftpos(obj1) {
//calculates left offset of an object
	var curleft1 = 0;
	if (obj1.offsetParent) {
		do {
			curleft1 += obj1.offsetLeft;
		} while (obj1 = obj1.offsetParent);
	}
	return curleft1;
}

function getPageScroll() {
//gets page scroll
    var xScroll, yScroll;
    if ((self.pageYOffset) || (self.pageXOffset)) {
      yScroll = self.pageYOffset;
      xScroll = self.pageXOffset;
    } else if (document.documentElement && document.documentElement.scrollTop) {
      yScroll = document.documentElement.scrollTop;
      xScroll = document.documentElement.scrollLeft;
    } else if (document.body) {// all other Explorers
      yScroll = document.body.scrollTop;
      xScroll = document.body.scrollLeft;
    }
    return new Array(xScroll,yScroll)
}

function posgift(myobj,tipclass)
{
	for (i=0;i<=(myobj.childNodes.length-1);i++) {
		var classnow = myobj.childNodes[i].className;
		if ( classnow == tipclass) {
			var myleftscroll = getPageScroll();
			var tipleft = findleftpos(myobj) + 48; // left for tooltip=48px
			var tipright = document.documentElement.clientWidth - tipleft - 212; // tooltip whole width=212px
			if (tipright < 0) { myobj.childNodes[i].style.left=48+tipright+"px"; }
				else { myobj.childNodes[i].style.left="48px"; }
			}	
	}
}
	
//------------------------------------------------//
