//parameter info
// chkName = the name of the chekboxes list without 1,2,3,... numbers
// frmName = html form name
// chkTotal = no of checkboxes to look for
function checkAll( chkName , frmName , chkTotal )
{
	var frm = document.forms[frmName];
	var i = 0;
	for (i=1 ; i<=chkTotal ; i++)
	{
		var o = frm.elements[chkName + i.toString()];
		if (o) o.checked = true;
	}
	return false;
}

function clearAll( chkName , frmName , chkTotal )
{
	var frm = document.forms[frmName];
	var i = 0;
	for (i=1 ; i<=chkTotal ; i++)
	{
		var o = frm.elements[chkName + i.toString()];
		if (o) o.checked = false;
	}
	return false;

}

//additional err_msg + same parameters list as the above functions checkAll and clearAll
//err_msg will be displayed if not checkbox is not selected
function is_checked(chkName , frmName , chkTotal, err_msg)
{
	var frm = document.forms[frmName];
	var i = 0;
	for (i=1 ; i<=chkTotal ; i++)
	{
		var o = frm.elements[chkName + i.toString()];
		if(o && o.checked)
			return true;
	}
	alert(err_msg);
	return false;
}


function get_cookie(Name)
{
	var Name = Name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++)
	{
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(Name) == 0) return unescape(c.substring(Name.length,c.length));
	}
	return "";
}

function set_cookie( name, value, expires, path, domain, secure )
{
	/*
	if the expires variable is set, make the correct
	expires time, the current script below will set
	it for x number of days, to make it for hours,
	delete * 24, for minutes, delete * 60 * 24
	*/

	var today = new Date();
	today.setTime( today.getTime() );

	if ( expires )
	{
		expires = expires * 1000 * 60 * 60 * 24;
	}
	var expires_date = new Date( today.getTime() + (expires) );

	document.cookie = name + "=" +escape( value ) +
	( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) +
	( ( path ) ? ";path=" + path : ";path=/" ) +
	( ( domain ) ? ";domain=" + domain : "" ) +
	( ( secure ) ? ";secure" : "" );
}

function open_window(url, width, height)
{
	var sw = window.open(url,"subWnd","Toolbar=1,menubar=0,scrollbars=1,resizable=1,width="+width+",height="+height+",top=100,left=200");
	if (!sw)
	{
		alert("Popup Blocker Detected!\n\nPlease disable your popup blocker software or allow popups on this page.");
	}
	else
	{
		sw.focus();
	}
	return false;
}

function open_window_full(url, width, height, top, left)
{
    if(top == null) top = 0;
    if(left == null) left = 0;
        
	var sw = window.open(url,"subWnd","Toolbar=0,menubar=0,scrollbars=0,resizable=1,width="+width+",height="+height+",top="+top+",left="+left+"");
	if (!sw)
	{
		alert("Popup Blocker Detected!\n\nPlease disable your popup blocker software or allow popups on this page.");
	}
	else
	{
		sw.focus();
	}
	return false;
}

//Dont change window name 'subWnd', its being used on some other pages
function open_window_scroll(url, width, height)
{
	var sw = window.open(url,"subWnd","Toolbar=1,menubar=0,scrollbars=1,resizable=1,width="+width+",height="+height+",top=75,left=150");
	if (!sw)
	{
		alert("Popup Blocker Detected!\n\nPlease disable your popup blocker software or allow popups on this page.");
	}
	else
	{
		sw.focus();
	}
	return false;
}

function TextArea_Keypress( txtName , spnName )
{
	if (document.getElementById(txtName).value.length >= parseInt(document.getElementById(txtName).getAttribute('MaxChars')))
		return false;
}

function TextArea_Keyup( txtName , spnName )
{
	if (document.getElementById(txtName).value.length >= parseInt(document.getElementById(txtName).getAttribute('MaxChars')))
	{
		document.getElementById(txtName).value = document.getElementById(txtName).value.substr(0, parseInt(document.getElementById(txtName).getAttribute('MaxChars'))-1);
	}
	//document.getElementById(spnName).innerHTML = (parseInt(document.getElementById(txtName).attributes['MaxChars'].value)-parseInt(document.getElementById(txtName).value.length));
	document.getElementById(spnName).innerHTML = (parseInt(document.getElementById(txtName).value.length));
}

function trim(str)
{
	str = str.replace(/^\s*|\s*$/g,"");
	return str;
}

function loadwin(url)
{
	var left, top;
	var width = screen.width;
	// Resize the screen depending on the users display
	if(screen.width >= 1280 && screen.height >= 1024)
	{
		wdh = 850;
		hgt = 750;
	}
	else if(screen.width > 1024 && screen.height > 768)
	{
		wdh = 850;
		hgt = 700;
	}
	else if(screen.width >= 800 && screen.height >= 600)
	{
		wdh = 850;
		hgt = 640;
	}
	// Open the window in the middle of the screen
	left = (screen.availWidth - wdh) / 2
	top = (screen.availHeight - hgt) / 2 - 10;
	success = open(url, '', 'width=' + wdh + ',height=' + hgt + ',left=' + left + ',top=' + top + ',scrollbars=yes,resizable=yes,status=no');
}

function set_login_required_cookie(value)
{
	var exp = new Date( );
	var expiry = 60 * 60 * 1000;
//	exp.setTime(expiry);
//	document.cookie = "c_login_required="+ value +"; expires=" + exp.toGMTString() + ";path=/";
	if (typeof(cookie_domain) != "undefined")
		set_cookie("c_login_required",value,expiry,"/",cookie_domain);
	else
		set_cookie("c_login_required",value,expiry,"/");
}


function get_validate_keyword(str1, str2, str3, charlimit)
{
var newword1="", newword2="", newword3="";

	if(str1!="")
	{
		cstr = str1.split(",");
		for(i=0; i<cstr.length; i++)
		{
			newword1 = cstr[i];
			if(newword1.length > charlimit)
			{
				newword1 =  newword1 + "~" + "1";
				return newword1;
			}
		}
	}

	if(str2!="")
	{
		cstr = str2.split(",");
		for(i=0; i<cstr.length; i++)
		{
			newword2 = cstr[i];
			if(newword2.length > charlimit)
			{
				newword2 =  newword2 + "~" + "2";
				return newword2;
			}
		}
	}

	if(str3!="")
	{
		cstr2 = str3.split(",");
		for(i=0; i<cstr2.length; i++)
		{
			newword3 = cstr2[i];
			if(newword3.length > charlimit)
			{
				newword3 =  newword3 + "~" + "3";
				return newword3;
			}
		}
	}

	newword2 = "true~0";
	return newword2;
}

function highlight_table(element, color)
{
	//document.getElementById(element).bgColor = color;
	document.getElementById(element).style.backgroundColor = color;
}
// show checkboxes on buyoffer list pages
function showchecks(total)
{
	total = parseInt(total);
	type = parseInt(get_cookie("c_memtype"));
	display = "none";
	if(type == 1 || type == 2)
	{
		display = "";
	}

	frm = document.frmOffers;
	for(i=1;i<=total;i++)
	{
		if(checkbox = document.getElementById("select_offer_"+i))
		{
			checkbox.style.display = display;
		}
		else
		{
			break;
		}
	}
	for(i=1;i<=2;i++)
	{
		if(div = document.getElementById("div_buttons_"+i))
		{
			div.style.display = display;
		}
	}

}

function collect_stat()
{
	if (typeof(jQuery) == 'undefined')
		return;

	var d=document;
	var _tks_url=d.URL;
	var _tks_title=d.title;
	var _tks_userid = get_cookie("c_userid");
	var _tks_memtype = get_cookie("c_memtype");
	var _tks_ref = parent==self?document.referrer:top.document.referrer;
	var _tks_zone = 0;

	var view_regex = ".*\/(.*)_view\/.*\/([0-9]+)(\/.*)?.htm";
	var view_regex = ".*\/(.*)_view\/(id|uid)\/([0-9]+)(\/.*)?.htm";

	var p=_tks_stat_server + "lang/en/images/stats.gif?rand="+Math.round(99999999*Math.random());

	// page no for querystring page_no
	var _tks_pageno = 1;
	var tmp = _tks_url.match(/page_no(=|\/)([0-9]+)(&|.htm)?/m);
	if (tmp != null)
		_tks_pageno = tmp[2];

	jQuery(document).ready(function(){

		if (typeof(cookie_domain) == "undefined")
			cookie_domain = '';

		// include profile link even if product / selloffer / buyoffer link exist on these pages
		var include_profile_page = "home_index,profile_view";

		var prev_t=0;
		var arr = new Array();

		// get all view page links
		jQuery("a[href*=view]").each(function(i){

			_tks_zone = 0;

			// parse href url to get offer type / id
			var t = jQuery(this).attr("href").match(view_regex);
			if (!t) return;

			// get profile links, and previous link will be of offer
			switch(t[1])
			{
				case "product":
				case "profile":
				case "selloffer":
				case "buyoffer":

					if (!arr[t[1]])
					{
						arr[t[1]] = new Array();
						arr[t[1]]["id"] = new Array();
					}

					// get tk_zone attribute if specified (feautured)
					if (jQuery(this).attr('tk_zone'))
						_tks_zone = jQuery(this).attr('tk_zone');

					// create a key to remove duplicate
					// e.g. [offertype][offerid ~ i(impression)/c(click) ~ zone]
					arr[t[1]]["id"][t[3]+"~i~"+_tks_zone] = "1";
				break;
			}
		});

		// if tracked page is view page -- we need to record a click
		if (_tks_url.indexOf("_view") != -1)
		{
			var t = _tks_url.match(view_regex);
			// if view page, and referrer is tradekey.com then record as click
			if (_tks_ref.indexOf(location.host) != -1)
			{
				if (!arr[t[1]])
				{
					arr[t[1]] = new Array();
					arr[t[1]]["id"] = new Array();
				}

				// remove item if added as impression (due to any other link)
				for (var z=0;z<99;z++)
				{
					if (arr[t[1]]["id"][t[3]+"~i~"+z])
					{
						delete arr[t[1]]["id"][t[3]+"~i~"+z];
						break;
					}
				}
				arr[t[1]]["id"][t[3]+"~c~"+z] = "1";
			}
		}

		var _tks_offersids = "";

		// make delimited string for querystring

		if (typeof(arr["product"]) != "undefined")
		{
			var ids = new Array();
			for (key in arr["product"]["id"])
				ids[ids.length] = key;

			ids = ids.join(",");
			_tks_offersids += "pr:"+ ids +"|";
		}

		if (typeof(arr["selloffer"]) != "undefined")
		{
			var ids = new Array();
			for (key in arr["selloffer"]["id"])
				ids[ids.length] = key;

			ids = ids.join(",");
			_tks_offersids += "so:"+ ids +"|";
		}

		if (typeof(arr["buyoffer"]) != "undefined")
		{
			var ids = new Array();
			for (key in arr["buyoffer"]["id"])
				ids[ids.length] = key;

			ids = ids.join(",");
			_tks_offersids += "bo:"+ ids +"|";
		}

		if (typeof(arr["profile"]) != "undefined")
		{
			var f = 0;
			// dont include profile link even if product / selloffer / buyoffer link exist on page, and action not in include page list
			if ((typeof(arr["buyoffer"]) != "undefined" || typeof(arr["selloffer"]) != "undefined" || typeof(arr["product"]) != "undefined"))
			{
				f = -1;
				var tmp = include_profile_page.split(',');
				for (pg in tmp)
				{
					if ( tmp[pg] == _tks_action )
						f=1;
				}
			}

			if (f == 0 || f == 1)
			{
				var ids = new Array();
				for (key in arr["profile"]["id"])
					ids[ids.length] = key;

				ids = ids.join(",");
				_tks_offersids += "pf:"+ ids +"|";
			}
		}

		// remove last | char
		_tks_offersids = _tks_offersids.substring(0,_tks_offersids.length-1);

		// for pages which does not member's data
		if (_tks_offersids == "")
			return;

		var c_pos_cookie = "";

		// On view page, get last page ids from cookie to get position/zone
		if (_tks_url.indexOf("_view") != -1)
		{
			var t = _tks_url.match(view_regex);

			c_pos_cookie = get_cookie("c_pos");
			if (c_pos_cookie)
			{
				found = false;

				c_pos = c_pos_cookie.split("|");
				for(c in c_pos)
				{
					pos = 0;
					c_ids = c_pos[c].split(":");
					var module = "";
					if (c_ids[0] == "pr")
						module = "product";
					else if (c_ids[0] == "so")
						module = "selloffer";
					else if (c_ids[0] == "pf")
						module = "profile";

					c_rec = c_ids[1].split(",");

					for(var a=0;a<c_rec.length;a++)
					{
						pos++;
						if (t[1] == module && c_rec[a].indexOf(t[3]+"~") != -1)
						{
							// update last page's zone for clicked item
							last_zone = c_rec[a].substr(c_rec[a].length-1,c_rec[a].length);
							_tks_offersids = _tks_offersids.replace(eval("/"+t[3]+"~c~[0-9]+/g"),t[3]+"~c~"+last_zone);
							found = true;
							break;
						}
					}

					if (found)
						break;
				}

				if (found)
				{
					// save clicked item's position -- multiple refresh will save multiple clicks (known issue)
					// impression's position is calculated in collectstats.php
					p+="&_tks_pos="+pos;
				}
			}
		}

		// save position for track on next page click
		set_cookie("c_pos",_tks_offersids,1,"/",cookie_domain);

		p+="&_tks_url="+escape(_tks_url);
		p+="&_tks_title="+escape(_tks_title);
		p+="&_tks_userid="+escape(_tks_userid);
		p+="&_tks_memtype="+escape(_tks_memtype);
		p+="&_tks_rf="+escape(_tks_ref);
		p+="&_tks_page="+escape(_tks_pageno);

		if (typeof(_tks_offersids) != 'undefined' && _tks_offersids!='')
			p+="&_tks_offersids="+escape(_tks_offersids);

		if (typeof(_tks_action) != 'undefined' && _tks_action!='')
			p+="&_tks_action="+escape(_tks_action);

		var i = new Image();
		i.height = "1";
		i.width = "1";
		i.style.display = "none";
		i.src = p;
		document.body.appendChild(i);
	});
}

// remvove symbols and spaces form string to make it small
function replace_special(str)
{
	re = /\$|\s|,|@|#|~|`|\%|\*|\^|\&|\(|\)|\+|\=|\[|\-|\_|\]|\[|\}|\{|\;|\:|\'|\"|\<|\>|\?|\||\\|0|1|2|3|4|5|6|7|8|9|\!|\$|\./g;
	// remove special characters like "$" and "," etc...
	return str.replace(re, "");
}

// Decimal to Hex
function d2h(d)
{
	return d.toString(16);
}

// hex to decimal
function h2d(h)
{
	return parseInt(h,16);
}

/*
	Written by Jonathan Snook, http://www.snook.ca/jonathan
	Add-ons by Robert Nyman, http://www.robertnyman.com
	get_elements_by_classname
*/
function get_elements_by_classname(oElm, strTagName, strClassName){
	var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
	var arrReturnElements = new Array();
	strClassName = strClassName.replace(/\-/g, "\\-");
	var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
	var oElement;
	for(var i=0; i<arrElements.length; i++){
		oElement = arrElements[i];
		if(oRegExp.test(oElement.className)){
			arrReturnElements.push(oElement);
		}
	}
	return (arrReturnElements)
}

function get_first_parent(obj,attrib,value)
{
	while( (obj[attrib]==null || obj[attrib].toLowerCase()!=value.toLowerCase()) && obj.tagName.toLowerCase()!="body")
	{
		obj = obj.parentNode;
	}
	return obj;
}

function toggle_panel(o)
{
	var tr = document.getElementById(o.id);
	var imgs = tr.getElementsByTagName('img');
	if (imgs[0].src.indexOf('minus') != -1)
		imgs[0].src = imgs[0].src.replace('minus','plus');
	else
		imgs[0].src = imgs[0].src.replace('plus','minus');

	var tbody = document.getElementById(o.id+"_body");
	if (tbody.style.display && tbody.style.display == 'none')
	 	tbody.style.display = '';
	else
		tbody.style.display = 'none';

	reposition_error_divs();
}


function unhide_parent(obj)
{
//	alert(obj + "|" + obj.style.display);
	if (obj.tagName.toLowerCase() != 'body' && obj.style.display!='undefined' && obj.style.display != 'none')
		unhide_parent(obj.parentNode);
	else
	{
		obj.style.display = ''
		var img = document.getElementById(obj.id+"_img");
		if (img)
			img.src = img.src.replace("plus","minus");
	}
}


var validate_form_flag=0;
function validate_form(frm)
{
	validate_form_flag = 1;
	var els = frm.elements;
	var flag = true;
	for (var i=0;i<els.length;i++)
	{
		if (!validate_field(els[i]))
		{
			unhide_parent(els[i]);

			// focus first error
			if (flag)
			{
				els[i].focus();
				flag = false;
			}
		}
		position_error_div(els[i],document.getElementById(els[i].name+"_error"));
	}
	return flag;
}


function findPos(obj) {
	if (!obj) return [0,0];
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent)
		{
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	return [curleft,curtop];
}
// Wizard interface JS ends here

// div popup code starts here
function get_pagesize_with_scroll()
{
	if (window.innerHeight && window.scrollMaxY) {// Firefox
		yWithScroll = window.innerHeight + window.scrollMaxY;
		xWithScroll = window.innerWidth + window.scrollMaxX;
	} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
		yWithScroll = document.body.scrollHeight;
		xWithScroll = document.body.scrollWidth;
	} else { // works in Explorer 6 Strict, Mozilla (not FF) and Safari
		yWithScroll = document.body.offsetHeight;
		xWithScroll = document.body.offsetWidth;
  	}
	arrayPageSizeWithScroll = new Array(xWithScroll,yWithScroll);
	//alert( 'The height is ' + yWithScroll + ' and the width is ' + xWithScroll );
	return arrayPageSizeWithScroll;
}

function hide_overlay()
{
	var ref = (document.getElementById("divpopup"))?document:((parent.document.getElementById("divpopup"))?parent.document:null);
	if (!ref)
		return;

	var el = ref.getElementById("divpopup");
	var el2 = ref.getElementById("divpopup_content");
	if (!el)
		return;

	el.style.visibility =  "hidden";
	el2.style.visibility =  "hidden";

	var selects = ref.getElementsByTagName("select");
	for (var i=0;i<selects.length;i++)
		selects[i].style.display = 'inline';

	var frame = document.getElementById('frame_divpopup') || parent.document.getElementById('frame_divpopup');
	frame.src = 'about:blank';
}

function show_overlay()
{
	var ref = (document.getElementById("divpopup"))?document:((parent.document.getElementById("divpopup"))?parent.document:null);
	var el = ref.getElementById("divpopup");
	var el2 = ref.getElementById("divpopup_content");
	if (!el)
		return;

	var selects = ref.getElementsByTagName("select");
	for (var i=0;i<selects.length;i++)
		selects[i].style.display = 'none';

	var size = get_pagesize_with_scroll();
	el.style.height = size[1] + "px";
	el.style.visibility = "visible";
	el2.style.visibility = "visible";
}


function update_ads_clicks(id)
{
	postData = "param[id]="+id;
	sUrl = _tkads_server+"ajax.php?action=tkads.update_ads_clicks&"+postData;
	s=document.createElement("script");
	s.setAttribute("type", "text/javascript");
	s.src=sUrl;
	document.body.appendChild(s);
}

function fetch_ads(type,uids,page,ads_limits)
{
	if(_tkads_kw=="")
	{
		var kw = "";
		var metatags = document.getElementsByTagName("meta");
		for (var cnt = 0; cnt < metatags.length; cnt++)
		{
			var n = metatags[cnt].getAttribute("name");
			if (n == "keywords")
			{
				kw = metatags[cnt].getAttribute("content").split(",")[0];
				break;
			}
		}
	}
	else
	{
		kw = _tkads_kw;
	}
	if (kw == "")
		return;

	var postData = "param[search]="+kw+"&param[type]="+type+"&param[page]="+page;

	if (typeof(uids) != "undefined")
		postData += "&param[uids]="+uids;
	if (typeof(ads_limits) != "undefined")
		postData += "&param[ads_limits]="+ads_limits;

	sUrl = _tkads_server+"ajax.php?action=tkads.fetch_ads";

	var div_tk_place = '';
	if (document.getElementById('div_tk_ads1'))
		div_tk_place = 'div_tk_ads1';
	else if (document.getElementById('div_tk_ads2'))
		div_tk_place = 'div_tk_ads2';

	if (div_tk_place != '')
	{
		ts =sUrl+"&"+postData+"&return=js-xdomain&target="+div_tk_place;
        loadjscssfile(ts, "js");
        return false;
	}
}

function fetch_ads2(type,uids,page,ads_limits)
{
	if(_tkads_kw=="" && _tkads_cid==0)
	{
		var kw = "";
		var metatags = document.getElementsByTagName("meta");
		for (var cnt = 0; cnt < metatags.length; cnt++)
		{
			var n = metatags[cnt].getAttribute("name");
			if (n == "keywords")
			{
				kw = metatags[cnt].getAttribute("content").split(",")[0];
				break;
			}
		}
	}
	else if(_tkads_cid==0)
	{
		kw = _tkads_kw;
	}
	if (kw == "" && _tkads_cid==0)
		return;

	var postData = "param[search]="+kw+"&param[type]="+type+"&param[page]="+page;

	if (typeof(uids) != "undefined")
		postData += "&param[uids]="+uids;
	if (typeof(ads_limits) != "undefined")
		postData += "&param[ads_limits]="+ads_limits;
	if (_tkads_cid !=0 )
		postData += "&param[cid]="+_tkads_cid;
		
	sUrl = _tkads_server+"ajax.php?action=tkads.fetch_ads";

	var div_tk_place = '';
	if (document.getElementById('div_tk_ads1'))
		div_tk_place = 'div_tk_ads1';
	else if (document.getElementById('div_tk_ads2'))
		div_tk_place = 'div_tk_ads2';

	if (div_tk_place != '')
	{
		ts =sUrl+"&"+postData+"&return=js-xdomain&target="+div_tk_place;
        loadjscssfile(ts, "js");
        return false;
	}
}

function loadjscssfile(filename, filetype, callback)
{
	if(filetype=="js")
	{
		var html_doc = document.getElementsByTagName('head').item(0);
		var js=document.createElement('script');
		js.setAttribute("type","text/javascript");
		js.setAttribute("src", filename);
		js.defer = true;

		if(document.all)
		{
			if(js.readyState)
			{
				if(callback != null)
				{
					js.onreadystatechange = function(){if(js.readyState == "loaded" || js.readyState == "complete"){eval(callback);}};
				}
				html_doc.appendChild(js);
			}
			else
			{
				html_doc.appendChild(js);
				if(callback != null) eval(callback);
			}
		}
		else
		{
			if(callback != null)
				js.onload = function(){eval(callback);};
			html_doc.appendChild(js);
		}
	}
	else if(filetype=="css")
	{
		var fileref=document.createElement("link");
		fileref.setAttribute("rel", "stylesheet");
		fileref.setAttribute("type", "text/css");
		fileref.setAttribute("href", filename);
        document.getElementsByTagName("head")[0].appendChild(fileref)
	}
}
/**
 * Usage: <textarea onkeyup="check_textarea_length(this)" maxlength="255" name="txt1"></textarea>
 */
function check_textarea_length(obj)
{
	var mlength=obj.getAttribute? parseInt(obj.getAttribute("maxlength")) : ""
	if (obj.getAttribute && obj.value.length>mlength)
	obj.value=obj.value.substring(0,mlength)
}
	
// Show Hide Div
function showhide(id){
	var text = document.getElementById("c"+id);
	if (document.getElementById){
		obj = document.getElementById(id);
			if (obj.style.display == "none"){
				obj.style.display = "";
				text.innerHTML = "&laquo;"
			} else {
				obj.style.display = "none";
				text.innerHTML = "&raquo;";
			  }
	}
}

/**
 * Refreshing captcha image
 * @author danish.zahur
 */
function refresh_image(captcha,root)
{
	var randomnumber = Math.floor(Math.random()*1001);
	var img_ins = document.getElementById(captcha);
	img_ins.src = root+"functions/generateimage/generateimage.php?id="+randomnumber;
}
/**
 * wrapper to track google analytics events
*/
function tk_track_ga_event(category, action, label, value){
	if(typeof(pageTracker) != 'undefined'){
		pageTracker._trackEvent(category,action,label,value);
	}else if(typeof(_gaq) != 'undefined'){
		_gaq.push(['_trackEvent',category,action,label,value]);
	}
}
