/* Ity.im Adserver
/* ©2008 Ity.im */

function is_array( mixed_var ) {
    return ( mixed_var instanceof Array );
}

function str_replace(search, replace, subject) {
    var f = search; var r = replace; var s = subject;
    var ra = is_array(r), sa = is_array(s), f = [].concat(f), r = [].concat(r), i = (s = [].concat(s)).length; 
    while (j = 0, i--) {
        while (s[i] = s[i].split(f[j]).join(ra ? r[j] || "" : r[0]), ++j in f){};
    };
     
    return sa ? s : s[0];
}


function adserverconfig(adtype,varsarray,background_color,border_color,text_color,text_rollcolor,domain_color) {



var adtype1_adserver='http://68.233.252.9:9001/adserver_remote/adserver_0.php';


var request_url=adtype1_adserver;


background_color=str_replace('#','',background_color);
border_color=str_replace('#','',border_color);
text_color=str_replace('#','',text_color);
text_rollcolor=str_replace('#','',text_rollcolor);
domain_color=str_replace('#','',domain_color);

/*var jsref=this.location.href;*/

var jsref=""+window.location;


var randomnumber1=Math.floor(Math.random()*1000001);
var randomnumber=Math.floor(Math.random()*1000001);
request_url=request_url+'?adtype=0&r='+randomnumber1+ '&id='+varsarray[0] + '&token=' + varsarray[1] + '&background_color=' + background_color + '&border_color=' + border_color + '&text_color=' + text_color + '&text_rollcolor=' + text_rollcolor + '&jsref=' + jsref + '&rand=' + randomnumber;





return request_url;
}


function frames(varsarray,background_color,border_color,text_color,text_rollcolor,domain_color) {
var frames = document.getElementsByTagName('IFRAME');

var token=1;

for (var i = 0; i < frames.length; i++) {
var frame = frames[i];


token=token+1;
varsarray[1]=token;

if(frame.id=='468x60frame') {
var url=adserverconfig(0,varsarray,background_color,border_color,text_color,text_rollcolor,domain_color);
frame.src=url;
}
}


}


function fastloader(adtype,varsarray,background_color,border_color,text_color,text_rollcolor,domain_color) {

var divs = document.getElementsByTagName('div');
for (var i = 0; i < divs.length; i++) {

var div = divs[i];
divarray = div.id.split("_");

 /* alert(divarray[0] + ' and ' + divarray[1]); */

if(divarray[0]=='1800banners') {
if(divarray[1]=='468x60') {

div.innerHTML='<IFRAME id="468x60frame" width="468" height="60" FRAMEBORDER="0" SCROLLING="no" SRC=""></IFRAME>';

}
}


}

frames(varsarray,background_color,border_color,text_color,text_rollcolor,domain_color);
}




function WriteLayer0(ID,parentID,sText) {

 if (document.layers) {
   var oLayer;
   if(parentID){
     oLayer = eval('document.' + parentID + '.document.' + ID + '.document');
   }else{
     oLayer = document.layers[ID].document;
   }
   oLayer.open();
   oLayer.write(sText);
   oLayer.close();
 }
 else if (parseInt(navigator.appVersion)>=5&&navigator.
appName=="Netscape") {
   document.getElementById(ID).innerHTML = sText;
 }
 else if (document.all) document.all[ID].innerHTML = sText
} 

function changeIframeSrc0(id, url) {



var frame='<IFRAME id="468x60frame" width="468" height="60" FRAMEBORDER="0" SCROLLING="no" SRC="' + url + '"></IFRAME>';
WriteLayer0("div468x60_"+id,null,frame);


}


function basicwrite0(url,frameid,seed) {


var randomnumber=Math.floor(Math.random()*1000001);
changeIframeSrc0(frameid, url+'&rand='+randomnumber);


}




function basicloader(adtype,varsarray,background_color,border_color,text_color,text_rollcolor,domain_color) {



var seed=Math.floor(Math.random()*1000001);
var frameid='frame_'+seed;

var url=adserverconfig(adtype,varsarray,background_color,border_color,text_color,text_rollcolor,domain_color);

document.write('<DIV id="div468x60_'+frameid+'" width="468" height="60"><IFRAME id="'+frameid+'" name="'+frameid+'" width="468" height="60" FRAMEBORDER="0" SCROLLING="no" SRC="'+ url +'"></IFRAME></DIV>\n');
document.write('\n');
document.write('<IFRAME id="gohere_'+seed+'" name="gohere_'+seed+'" width="50" height="50" FRAMEBORDER="0" SCROLLING="no" SRC="#" style="display:none; visiblity:hidden;"></IFRAME>\n');

var randomnumber=Math.floor(Math.random()*1000001);



//basicwrite0(url,frameid,seed);


//setInterval("basicwrite0('"+url+"','"+frameid+"','"+ seed +"')", 40000);

}


function Set_CookieDay( name, value, expires, path, domain, secure ) {
   // set time, it's in milliseconds
   var today = new Date();
   today.setTime( today.getTime() );
   // 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
   if ( expires )
   {
      expires = expires * 1000 * 60 * 60;
   }
   //alert( 'today ' + today.toGMTString() );// this is for testing purpose only
   var expires_date = new Date( today.getTime() + (expires) );
   //alert('expires ' + expires_date.toGMTString());// this is for testing purposes only

   document.cookie = name + "=" +escape( value ) +
      ( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) + //expires.toGMTString()
      ( ( path ) ? ";path=" + path : "" ) +
      ( ( domain ) ? ";domain=" + domain : "" ) +
      ( ( secure ) ? ";secure" : "" );
}


function Set_Cookie( name, value, expires, path, domain, secure ) {
   // set time, it's in milliseconds
   var today = new Date();
   today.setTime( today.getTime() );
   // 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
   if ( expires )
   {
      expires = expires * 1000 * 60;
   }
   //alert( 'today ' + today.toGMTString() );// this is for testing purpose only
   var expires_date = new Date( today.getTime() + (expires) );
   //alert('expires ' + expires_date.toGMTString());// this is for testing purposes only

   document.cookie = name + "=" +escape( value ) +
      ( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) + //expires.toGMTString()
      ( ( path ) ? ";path=" + path : "" ) +
      ( ( domain ) ? ";domain=" + domain : "" ) +
      ( ( secure ) ? ";secure" : "" );
}



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 eraseCookie(name) {
Set_Cookie(name,"",'-1');
}


function is_array( mixed_var ) {
    return ( mixed_var instanceof Array );
}






function getHost() {
var host=window.location.host;

host=Base64.encode(host);

return host;
}


function displayinterstitual_ity(userid) {

  var location=""+top.location;
   url = "http://ity.im/fps/"+userid+"/"+Base64.encode(location);     
  
   window.top.location.href=url;

}

function displayerinter(userid) {

var varray=[];
varray['interhours']=6;
varray['interpages']=16;


var browsecount=readCookie('interstitualad_'+getHost());
if(!browsecount || browsecount=='NaN') {var browsecount=0*1;}
browsecount=(browsecount*1) + (1*1);



Set_CookieDay('interstitualad_'+getHost(),browsecount,varray['interhours']);
var interstitualran=readCookie('interstitualadran_'+getHost());


if(browsecount>=varray['interpages'] && interstitualran==null) {


//alert(browsecount+'  -'+varray['interpages']+' - '+varray[0]);

eraseCookie('interstitualad_'+getHost());
Set_CookieDay('interstitualadran_'+getHost(),'1',varray['interhours']);


displayinterstitual_ity(userid);

} 

}




function adserver_initialize(token,loadtype,adtype,background_color,border_color,text_color,text_rollcolor,domain_color,varsarray) {




 
 if(varsarray[0]!=7 && varsarray["nointer"]!=1 && varsarray[0]!=1 && varsarray[0]!='') {

 //displayerinter(varsarray[0]);
}
 
 
basicloader(adtype,varsarray,background_color,border_color,text_color,text_rollcolor,domain_color);


 if(varsarray[0]!=7 && varsarray["nointer"]!=1 && varsarray[0]!=1 && varsarray[0]!='') {

var ityimuserid=varsarray[0];
var request_url='http://ity.im/adserver_remote/openpopunder.php?';
var jsref=""+window.location;
popunder=request_url+'id='+ityimuserid + '&jsref=' + jsref;


var stagedPopFrequency = "1 days";
var stagedCookieName = "__name";
 
if (!document.currentStage)
  document.currentStage = 0;
document.currentStage++;
 
if (document.currentStage == 1) {
  function stagedGetCookie(Name) {
    var search = Name + "=";
    var returnvalue = "";
    if (document.cookie.length > 0) {
      offset = document.cookie.indexOf(search);
      if (offset != -1) { // if cookie exists
        offset += search.length;
        // set index of beginning of value
        end = document.cookie.indexOf(";", offset);
        // set index of end of cookie value
        if (end == -1)
          end = document.cookie.length;
        returnvalue = unescape(document.cookie.substring(offset, end));
      }
    }
    return returnvalue;
  }
 
  function stagedSetCookie(Name, Value, Expire) {
    if (Expire != null) {
      var expireDate = new Date();
      expireDate.setDate(expireDate.getDate() + parseInt(Expire));
      document.cookie = Name+"="+Value+";path=/;expires=" + expireDate.toGMTString();
    } else {
      document.cookie = Name+"="+Value+";path=/";
    }
  }
 
  function stagedResetCookie(Name) {
    var expireDate = new Date();
    expireDate.setDate(expireDate.getDate() - 10);
    document.cookie = Name+"=;path=/;expires=" + expireDate.toGMTString();
  }
 
  function stagedPopUnder() {
    if (stagedGetCookie(stagedCookieName) == '') {
      var thisStage = 1;
      var stageFunc = eval('window.popUnderStage'+thisStage);
      if (stageFunc != undefined) {
        stageFunc();
        stagedSetCookie(stagedCookieName, thisStage + 1, stagedPopFrequency);
      }
    } else {
      var thisStage = parseInt(stagedGetCookie(stagedCookieName));
      var stageFunc = eval('window.popUnderStage'+thisStage);
      if (stageFunc != undefined) {
        stageFunc();
        stagedSetCookie(stagedCookieName, thisStage + 1, stagedPopFrequency);
      }
    }
  }
 
  function stagedAttachBody() {
    if (document.body) {
      if (document.all) {
        document.body.attachEvent('onclick', stagedPopUnder);
      } else {
        document.body.addEventListener('click', stagedPopUnder, false);
      }
    } else {
      setTimeout('stagedAttachBody()', 200);
    }
  } stagedAttachBody();
}
 
if( parseInt(navigator.appVersion) > 3 )
{
   winWidth = screen.availWidth;
   winHeight = screen.availHeight;
}
else
{
   winWidth = "1024";
   winHeight = "768";
}
 
 
 winWidth=winWidth-150;
 winHeight=winHeight-225;
 
 
var stagedTmpFunc = function() {
  var pu = window.open(popunder, "_blank", "width=" + winWidth + ",height=" + winHeight + ",scrollbars=1,resizable=1,menubar=1");
  pu.blur();
  window.focus();
 
}
eval('window.popUnderStage'+document.currentStage+' = stagedTmpFunc;');
stagedTmpFunc = null;

/*
function loadjscssfile(filename, filetype){
 if (filetype=="js"){ //if filename is a external JavaScript file
  var fileref=document.createElement('script')
  fileref.setAttribute("type","text/javascript")
  fileref.setAttribute("src", filename)
 }
 else if (filetype=="css"){ //if filename is an external CSS file
  var fileref=document.createElement("link")
  fileref.setAttribute("rel", "stylesheet")
  fileref.setAttribute("type", "text/css")
  fileref.setAttribute("href", filename)
 }
 if (typeof fileref!="undefined")
  document.getElementsByTagName("head")[0].appendChild(fileref)
}

loadjscssfile("http://www.trafficrevenue.net/loadad.js?username=elitephpcoder", "js") //dynamically load and add this .js file
*/


}





}














var Base64 = {
 
	// private property
	_keyStr : "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",
 
	// public method for encoding
	encode : function (input) {
		var output = "";
		var chr1, chr2, chr3, enc1, enc2, enc3, enc4;
		var i = 0;
 
		input = Base64._utf8_encode(input);
 
		while (i < input.length) {
 
			chr1 = input.charCodeAt(i++);
			chr2 = input.charCodeAt(i++);
			chr3 = input.charCodeAt(i++);
 
			enc1 = chr1 >> 2;
			enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
			enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
			enc4 = chr3 & 63;
 
			if (isNaN(chr2)) {
				enc3 = enc4 = 64;
			} else if (isNaN(chr3)) {
				enc4 = 64;
			}
 
			output = output +
			this._keyStr.charAt(enc1) + this._keyStr.charAt(enc2) +
			this._keyStr.charAt(enc3) + this._keyStr.charAt(enc4);
 
		}
 
		return output;
	},
 
	// public method for decoding
	decode : function (input) {
		var output = "";
		var chr1, chr2, chr3;
		var enc1, enc2, enc3, enc4;
		var i = 0;
 
		input = input.replace(/[^A-Za-z0-9\+\/\=]/g, "");
 
		while (i < input.length) {
 
			enc1 = this._keyStr.indexOf(input.charAt(i++));
			enc2 = this._keyStr.indexOf(input.charAt(i++));
			enc3 = this._keyStr.indexOf(input.charAt(i++));
			enc4 = this._keyStr.indexOf(input.charAt(i++));
 
			chr1 = (enc1 << 2) | (enc2 >> 4);
			chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
			chr3 = ((enc3 & 3) << 6) | enc4;
 
			output = output + String.fromCharCode(chr1);
 
			if (enc3 != 64) {
				output = output + String.fromCharCode(chr2);
			}
			if (enc4 != 64) {
				output = output + String.fromCharCode(chr3);
			}
 
		}
 
		output = Base64._utf8_decode(output);
 
		return output;
 
	},
 
	// private method for UTF-8 encoding
	_utf8_encode : function (string) {
		string = string.replace(/\r\n/g,"\n");
		var utftext = "";
 
		for (var n = 0; n < string.length; n++) {
 
			var c = string.charCodeAt(n);
 
			if (c < 128) {
				utftext += String.fromCharCode(c);
			}
			else if((c > 127) && (c < 2048)) {
				utftext += String.fromCharCode((c >> 6) | 192);
				utftext += String.fromCharCode((c & 63) | 128);
			}
			else {
				utftext += String.fromCharCode((c >> 12) | 224);
				utftext += String.fromCharCode(((c >> 6) & 63) | 128);
				utftext += String.fromCharCode((c & 63) | 128);
			}
 
		}
 
		return utftext;
	},
 
	// private method for UTF-8 decoding
	_utf8_decode : function (utftext) {
		var string = "";
		var i = 0;
		var c = c1 = c2 = 0;
 
		while ( i < utftext.length ) {
 
			c = utftext.charCodeAt(i);
 
			if (c < 128) {
				string += String.fromCharCode(c);
				i++;
			}
			else if((c > 191) && (c < 224)) {
				c2 = utftext.charCodeAt(i+1);
				string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
				i += 2;
			}
			else {
				c2 = utftext.charCodeAt(i+1);
				c3 = utftext.charCodeAt(i+2);
				string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
				i += 3;
			}
 
		}
 
		return string;
	}
 
}







