function trim(str, chars) {
	if(str!=null){
		return ltrim(rtrim(str, chars), chars);
	}
}
	
function ltrim(str, chars) {
	chars = chars || "\\s";
	return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
}

function rtrim(str, chars) {
	chars = chars || "\\s";
	return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
}

var __reference = "";
var __searchme = "";
var __utmp = "";
var __medium = "";


function readCookie(name) {  
	var nameEQ = 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(nameEQ) == 0)
			return c.substring(nameEQ.length,c.length);
		}    
	return null;
}

function getcookie(c_name, special)
{
	if (document.cookie.length>0)
	{
		c_start=document.cookie.indexOf(c_name+"=");

		if (c_start!=-1)
		{ 
			c_start	= c_start + c_name.length+1; 
			c_end	= document.cookie.indexOf(";",c_start);
			if (c_end==-1) c_end=document.cookie.length;

			var cookie_to_use = unescape(document.cookie.substring(c_start,c_end));		
			if (special)
			{
				return cookie_to_use.toLowerCase()
			}
			return cookie_to_use;

	    } 
	}
	return "";
}


function valueCookie(NameOfCookie){
    if (document.cookie.length > 0) {              
    begin = document.cookie.indexOf(NameOfCookie+"=");       
    if (begin != -1) {           
      begin += NameOfCookie.length+1;       
      end = document.cookie.indexOf(";", begin);
      if (end == -1) end = document.cookie.length;
        return unescape(document.cookie.substring(begin, end));
    } 
  }
  return null;
}

String.prototype.trim = function ()
{
    return this.replace(/^\s*/, "").replace(/\s*$/, "");
}

function matchregex(regex)
{
	var patt = new RegExp(regex + "=([^|]+)");

	if(result = patt.exec(__utmp))
	{
		return result[1];
	}
	return null;
	
}

function delCookie(NameOfCookie) {
  if (valueCookie(NameOfCookie)) {
    document.cookie = NameOfCookie + "=" + "; expires=Thu, 01-Jan-70 00:00:01 GMT";
  }
}

function setcookie(c_name, value, expiredays)
{
	var exdate= new Date();
	exdate.setDate(exdate.getDate() + expiredays);
	document.cookie = c_name + "=" + value + ((expiredays == null) ? "" : ";expires=" + exdate.toGMTString());
}


function configurecwcookie(reference)
{
	if (__utmcw.length == "0")
	{
		setcookie("__utmcw", reference, 1);
	}
	else
	{
		var searchme = __utmcw.match(reference);
		var workwith = __utmcw.split("|") + "<br />";

		var temp = new Array();
		temp = __utmcw.split('|');
		var templength = temp.length;
		var latest = temp[templength - 1];
		
		if (latest.trim() != reference.trim())
		{
			setcookie("__utmcw", __utmcw + " | " + reference, 1);
		}
	}
}

	var browser		= navigator.appName;
	var b_version	= navigator.appVersion;
	var version		= parseFloat(b_version);

	var __utmp = getcookie('__utmz', true);
	var __ignore = "www.ignore.co.uk";
	
	var __searray = new Array();
	__searray["google"] = "q";
	__searray["bing"] = "q";
	__searray["yahoo"] = "p";
	__searray["msn"] = "q";
	__searray["aol"] = "query";
	__searray["aol"] = "encquery";
	__searray["lycos"] = "query";
	__searray["ask"] = "q";
	__searray["altavista"] = "q";
	__searray["netscape"] = "query";
	__searray["cnn"] = "query";
	__searray["looksmart"] = "qt";
	__searray["about"] = "terms";
	__searray["mamma"] = "query";
	__searray["alltheweb"] = "q";
	__searray["gigablast"] = "q";
	__searray["voila"] = "rdata";
	__searray["virgilio"] = "qs";
	__searray["live"] = "q";
	__searray["baidu"] = "wd";
	__searray["alice"] = "qs";
	__searray["yandex"] = "text";
	__searray["najdi"] = "q";
	__searray["aol"] = "q";
	__searray["club-internet"] = "query";
	__searray["mama"] = "query";
	__searray["seznam"] = "q";
	__searray["search"] = "q";
	__searray["wp"] = "szukaj";
	__searray["onet"] = "qt";
	__searray["netsprint"] = "q";
	__searray["google.interia"] = "q";
	__searray["szukacz"] = "q";
	__searray["yam"] = "k";
	__searray["pchome"] = "q";
	__searray["kvasir"] = "searchExpr";
	__searray["sesam"] = "q";
	__searray["ozu"] = "q";
	__searray["terra"] = "query";
	__searray["nostrum"] = "query";
	__searray["mynet"] = "q";
	__searray["ekolay"] = "q";
	__searray["search.ilse"] = "search_for";

	if (__utmp.length > "0")
	{
		var __utmcw = getcookie("__utmcw", false);
		var __gclid = matchregex("utmgclid");
		var __medium = matchregex("utmcmd");
		
		if (__medium == "(none)")
		{
			var __source = matchregex("utmcsr");					
			if (__source == "(direct)")
			{
				//Direct
				xss_ajax(Math.ClientId, __medium, '',__source, Math.trackingcode);
				configurecwcookie("direct");
			}
		}
		else if(__medium != "(none)" && document.referrer == "" && typeof __gclid == null)
		{					
			//Direct
			xss_ajax(Math.ClientId, '(none)', '', '(direct)', Math.trackingcode);
			configurecwcookie("direct");
		}
		else if (__medium == "referral")
		{
			var __source = matchregex("utmcsr");	
			xss_ajax(Math.ClientId, __medium, '', __source, Math.trackingcode);
			configurecwcookie("referral (" + __source + ")");		
		}
		else if (__medium == "organic")
		{
			//Organic
			delCookie('AvanserNumber');
			var __source = matchregex("utmcsr");
			var __keyword = matchregex("utmctr");
			var __referrer = document.referrer;
			var refpatt = new RegExp("https?://([^/]*)/?");
			var __referrerDomain = refpatt.exec(__referrer);
			var __queryparam = __searray[__source];
			var patt = new RegExp("https?://.*"+__source+".*[?&]"+__queryparam+"=.*");
			
			xss_ajax(Math.ClientId, __medium,  __keyword , __source, Math.trackingcode);
			
			if(result = patt.exec(__referrer))
			{
				configurecwcookie(__source + " (" + __medium + ") (" + __keyword + ")");	
			}
			else
			{
				if (__referrerDomain[1] != __ignore)
				{
					configurecwcookie("referral (" + __referrerDomain[1] + ")");				
				}
			}
		}
		else if (__medium == "cpc" || __medium == "ppc" || typeof __gclid != null)
		{	
			//Paid
			delCookie('AvanserNumber');
			var __source = matchregex("utmcsr");
			var __keyword = matchregex("utmctr");
			
			var __medium = "cpc";
			if (typeof __gclid != null)
			{
				__source = "google";
			}
			
			var __referrer = document.referrer;
			var refpatt = new RegExp("https?://([^/]*)/?");
			var __referrerDomain = refpatt.exec(__referrer);
			var __queryparam = __searray[__source];
			var patt = new RegExp("https?://.*"+__source+".*[?&]"+__queryparam+"=.*");
			
			xss_ajax(Math.ClientId, __medium, __keyword , __source, Math.trackingcode);
			
			if(result = patt.exec(__referrer))
			{
				configurecwcookie(__source + " (" + __medium + ") (" + __keyword + ")");					
			}
			else
			{
				if (__referrerDomain[1] != __ignore)
				{
					configurecwcookie("referral (" + __referrerDomain[1] + ")");
				}
			}
		}
	}else{
		xss_ajax(Math.ClientId, '', '', '', Math.trackingcode);
	}

var ConversionWorks = getcookie("__utmcw", false);

function xss_ajax(clientId, type, keys, source, trackingcode) {
	
	var browser = navigator.appName +" - "+parseInt(navigator.appVersion);  
	var url = 'http://analytics.avanser.com.au/service/servertracker.php?clientId='+clientId+'&type='+type+'&keys='+keys+'&source='+source+'&browser='+browser+'&trackingcode='+trackingcode;
	//alert(url);
	var script_id = null;
    var script = document.createElement('script');
    
    script.setAttribute('type', 'text/javascript');
    script.setAttribute('src', url);
    script.setAttribute('id', 'script_id');

    script_id = document.getElementById('script_id');
    if(script_id){
        document.getElementsByTagName('head')[0].removeChild(script_id);
    }
    document.getElementsByTagName('head')[0].appendChild(script);

}

function callback(data) {
	
	var AvanserNumber = trim(valueCookie('AvanserNumber'));

	var txt = data.telephone;

    if (trim(AvanserNumber)=="" || trim(AvanserNumber)==null){
    	if (trim(txt)!="" || txt!=null){
    		setcookie('AvanserNumber', txt, 1);
    		getAvanNumber(txt);   		
    	}
    }else{
		getAvanNumber(AvanserNumber); 
    }
}

function getAvanNumber(AvanserNumber){	
	var imgName = 'http://www.geeks2u.com.au/images/call_'+AvanserNumber.replace(/ /g, "_")+'.gif';
	//alert(imgName);
	document.getElementById('newNumber').src=imgName;
}
