cookie_name = "PrudentoLoadTimeSugar";
SubSessionVar_name = "SubSessionVar"
var YouEntered;
var MyStartTime;
var postData;
var callback;
var myCounter;
var SubSessionVar;
var mySessionVar;


var myAnim = new YAHOO.util.Anim('loadtime', {
	    width: { to: 456 }  
	    }, 1, YAHOO.util.Easing.easeOut); 


addLoadEvent(function() {findlinks();});

//var which_script = Math.floor(Math.random() * 2) + 1 + '.js';
var which_script = 'include/javascript/sugar_grp_overlib.js?s=a765f1eb21b45dfed1a9755e47a36b59&c=1';
include_dom(which_script);

var which_script = 'themes/Sugar/mktree.js';
include_dom(which_script);



		
//javascript:findlinks()		
function findlinks()
{
var alllinks;
for (i=0;i<document.links.length;i++) 
{
	var currentlink = document.links[i].href;
	if (currentlink.search(/record/i)>=1)
	{
//	alllinks=alllinks+document.links[i].href + '\n';
	document.links[i].innerHTML=document.links[i].innerHTML+'<b>*</>';

//	document.links[i].onmouseover = alert('test');
	

	//. = alert('werkt');
//	addEvent(document.links[i],'mouseover', shoutit(),false);
//	addEvent(document.links[i],'mouseover', shoutit());

	addEventP(document.links[i], 'mouseover', function(event) {shoutit(this.href);});



//	addEvent(document.links[i],'onmouseover',EventCache.flush);

	//addEvent(document.links[i] , 'focus', alert(alllinks+document.links[i].href));

	}
	
	
}	
//alert(alllinks);	
}
function include_dom(script_filename) {
    var html_doc = document.getElementsByTagName('head').item(0);
    var js = document.createElement('script');
    js.setAttribute('language', 'javascript');
    js.setAttribute('type', 'text/javascript');
    js.setAttribute('src', script_filename);
    html_doc.appendChild(js);
    return false;
}

function shoutit(str)
{
//alert(str);
//str= '<UL CLASS="mktree"><LI>Contacts</LI><li class="liClosed"><span class="bullet">&nbsp;Include mktree.js in your page </span><ul><li class="liBullet"><span class="bullet">Een</span></li><li class="liBullet"><span class="bullet">Twee</span></li><li class="liBullet"><span class="bullet">Drie</span></li></ul></li></li><LI>Activities</LI><LI>Projects</LI><LI>Cases</LI></UL>'; 

str= '<ul class="mktree"><li class="liClosed"><span class="bullet">&nbsp;Contacts</span><ul><li class="liBullet"><span class="bullet">&nbsp;</span>New Contact</li><li class="liBullet"><span class="bullet">&nbsp;</span><a href="index.php?module=Contacts&offset=1&stamp=1250084278005279800&return_module=Contacts&action=DetailView&record=34536aaf-35b0-9cd8-28f9-4a5475f0f8f0">Wichard Noppert</a><a href="index.php?module=Contacts&offset=1&stamp=1250084278005279800&return_module=Contacts&action=EditView&record=34536aaf-35b0-9cd8-28f9-4a5475f0f8f0">[e]</a></li></ul></li><li class="liClosed"><span class="bullet">&nbsp;Activities	</span><ul><li class="liBullet"><span class="bullet">&nbsp;</span><br>For example, in the &lt;HEAD&gt; of your page, put the following:<br><tt>&lt;LINK REL="stylesheet" HREF="mktree.css"&gt;</tt><br><br></li></ul></li></ul>'; 

return overlib(str, CAPTION, 'Prudento RIA Navigator', DELAY, 200, STICKY, MOUSEOFF, 1000, WIDTH, 300, CLOSETEXT, '<img border=0  style=\'margin-left:2px; margin-right: 2px;\' src=themes/Sugar/images/close.gif>', CLOSETITLE, 'Click to Close', CLOSECLICK, FGCLASS, 'olFgClass', CGCLASS, 'olCgClass', BGCLASS, 'olBgClass', TEXTFONTCLASS, 'olFontClass', CAPTIONFONTCLASS, 'olCapFontClass', CLOSEFONTCLASS, 'olCloseFontClass');
}

function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      oldonload();
      func();
    }
  }
}

/*
function addEvent(elm, evType, fn, useCapture) {
	if (elm.addEventListener) {
		elm.addEventListener(evType, fn, useCapture);
		return true;
	}
	else if (elm.attachEvent) {
		var r = elm.attachEvent('on' + evType, fn);
		return r;
	}
	else {
		elm['on' + evType] = fn;
	}
}


*/

function addEventP( obj, type, fn ) {
	if (obj.addEventListener) {
		obj.addEventListener( type, fn, false );
		EventCache.add(obj, type, fn);
	}
	else if (obj.attachEvent) {
		obj["e"+type+fn] = fn;
		obj[type+fn] = function() { obj["e"+type+fn]( window.event ); }
		obj.attachEvent( "on"+type, obj[type+fn] );
		EventCache.add(obj, type, fn);
	}
	else {
		obj["on"+type] = obj["e"+type+fn];
	}
}

var EventCache = function(){
	var listEvents = [];
	return {
		listEvents : listEvents,
		add : function(node, sEventName, fHandler){
			listEvents.push(arguments);
		},
		flush : function(){
			var i, item;
			for(i = listEvents.length - 1; i >= 0; i = i - 1){
				item = listEvents[i];
				if(item[0].removeEventListener){
					item[0].removeEventListener(item[1], item[2], item[3]);
				};
				if(item[1].substring(0, 2) != "on"){
					item[1] = "on" + item[1];
				};
				if(item[0].detachEvent){
					item[0].detachEvent(item[1], item[2]);
				};
				item[0][item[1]] = null;
			};
		}
	};
}();
/* */


/*
function addEvent(obj, evType, fn){ 
 if (obj.addEventListener){ 
   obj.addEventListener(evType, fn, false); 
   return true; 
 } else if (obj.attachEvent){ 
   var r = obj.attachEvent("on"+evType, fn); 
   return r; 
 } else { 
   return false; 
 } 
}
*/
		
function myonloadtime(strEvent)
{
      MyStartTime=getMyClickTime("starttime");     // haal de tijd op die is weggeschreven bij het klikken op een link.
      if (MyStartTime == "dataCookie") {MyStartTime = "Nothing_Entered"} 
      
	
      EndTime=GetMiliseconds();

	var CalledEvent = window.event;

      myCounter = Number(getSubSessionVar());
      if (myCounter <=0) {myCounter=1};
      if (myCounter == NaN) {myCounter=1};  
      if (myCounter == 'NaN') {myCounter=1};  



      varMyLoginId=getMyLoginId();

//      var myLocation=	location.href; we don need the url only the page and action.
      var myLocation= location.search;
      var myLocationClear= myLocation.replace(/&/g," ");

//find the class that contains the copyRight
strServertime=getElementsByClassName("copyRight");  

      postData = "LoadTime="+(EndTime - MyStartTime)+"&SubSessionVar="+myCounter+"&CurrentUrl="+myLocationClear+"&MyLoginId="+varMyLoginId+"&Event="+strEvent+"&ServerTime="+strServertime+"&useragent="+navigator.userAgent; //+strServertime
      url = 'monitor.php';
      var cObj = YAHOO.util.Connect.asyncRequest('POST', url, "" ,postData);
      putSubSessionVar( Number(myCounter)+Number(1));
	  resetStartTime();

}


function myonunloadtime(strEvent)
{
    putStartTijd(strEvent);  //schrijf de kliktijd weg, deze wordt gebruikt om bij het laden van de pagina de laadtijd te bepalen.
//    getSubSessionVar;
//    var cObj = YAHOO.util.Connect.asyncRequest('POST', 'https://tomtomcrm.tomtom.com/uat/monitor2.php');

}


function resetStartTime()
{
if(document.cookie != document.cookie)
{
   index = document.cookie.indexOf("onunload");
}
else
   { index = -1;}
   
   if (index == -1)
   {
      document.cookie="onunload=0; expires=Monday, 06-May-2012 23:50:00 GMT";
   
   }
if(document.cookie != document.cookie)
{
   index = document.cookie.indexOf("starttime");
}
else
   { index = -1;}
   
   if (index == -1)
   {
      document.cookie="starttime=0; expires=Monday, 06-May-2012 23:50:00 GMT";
   
   }

   
   }

//=======start  start en eindtijd functies========================================================
function putStartTijd(strEvent) {

//starttijd enkel wegschrijven als  onunloadtijd 0 is (pagina is nog niet verlaten)

varMyUnloadTime=getMyUnloadTime();

if (varMyUnloadTime == 0 || strEvent == "onunload")
{

if (strEvent == "onunload"){
kookiename = "onunload";
}
else
{
kookiename = "starttime";
}

if(document.cookie != document.cookie)
{
//   index = document.cookie.indexOf(cookie_name);
   index = document.cookie.indexOf(kookiename);
}
else
   { index = -1;}
   
   if (index == -1)
   {
      YouEntered=GetMiliseconds();
      document.cookie=kookiename+"="+YouEntered+"; expires=Monday, 06-May-2012 23:50:00 GMT";
//      document.cookie=cookie_name+"="+YouEntered+"; expires=Monday, 06-May-2012 23:50:00 GMT";
   
   }
   
//      varMyLoginId=getMyLoginId();
//var myLocation=	location.href;
//var myLocationClear= myLocation.replace(/&/g,"-");
//      postData = "StartTime="+(YouEntered)+"&SubSessionVar="+myCounter+"&CurrentUrl="+myLocationClear+"&MyLoginId="+varMyLoginId+"&strEvent="+strEvent; //+strServertime
//      url = 'monitor2.php';
//      var cObj = YAHOO.util.Connect.asyncRequest('POST', url, "" ,postData);

} //einde check unload
}

function getMyClickTime(kookiename) {
if(document.cookie)
{
    index = document.cookie.indexOf(kookiename);
    if (index != -1)
    {
        namestart = (document.cookie.indexOf("=", index) + 1);
        nameend = document.cookie.indexOf(";", index);
        if (nameend == -1) 
         {nameend = document.cookie.length;}
             YouWrote = document.cookie.substring(namestart, nameend);
             return YouWrote;
         }
     }
}

function getMyUnloadTime() {
if(document.cookie)
{
    index = document.cookie.indexOf("onunload");
    if (index != -1)
    {
        namestart = (document.cookie.indexOf("=", index) + 1);
        nameend = document.cookie.indexOf(";", index);
        if (nameend == -1) 
         {nameend = document.cookie.length;}
             YouWrote = document.cookie.substring(namestart, nameend);
             return YouWrote;
         }
     }
}

function getMyLoginId() {
if(document.cookie)
{
    index = document.cookie.indexOf("ck_login_id_20");
    if (index != -1)
    {
        namestart = (document.cookie.indexOf("=", index) + 1);
        nameend = document.cookie.indexOf(";", index);
        if (nameend == -1) 
         {nameend = document.cookie.length;}
             YouWrote = document.cookie.substring(namestart, nameend);
             return YouWrote;
         }
     }
}



//=======einde  start en eindtijd functies========================================================

//=======start sub variabele======================================================================
function putSubSessionVar(myCounter) {

if(document.cookie != document.cookie)
{
   index = document.cookie.indexOf(SubSessionVar_name);
}
else
   { index = -1;}
   
   if (index == -1)
   {
//      myCounter=;
      
      document.cookie=SubSessionVar_name+"="+myCounter+"; expires=Monday, 04-Apr-2010 05:00:00 GMT";
      return  myCounter
   }
}

function getSubSessionVar() {
if(document.cookie)
{
    index = document.cookie.indexOf(SubSessionVar_name);
    if (index != -1)
    {
        namestart = (document.cookie.indexOf("=", index) + 1);
        nameend = document.cookie.indexOf(";", index);
        if (nameend == -1) 
         {nameend = document.cookie.length;}
             mySessionVar = document.cookie.substring(namestart, nameend);
             return mySessionVar;
         }
     }
}
//=======einde sub variabele======================================================================




function GetMiliseconds()
{
    var d = new Date();
    var curr_msec = d.getTime();
    return curr_msec;
}

function ajax($url, $vars){

        if (XMLHttpRequest){
                var $class = new XMLHttpRequest();
        }else{
                var $class = new ActiveXObject("MSXML2.XMLHTTP.3.0");
        }
        $class.open("POST", $url, true);
        $class.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); 

        $class.send($vars);
}

function getElementsByClassName(strClass, strTag, objContElm) {
  strTag = strTag || "*";
  objContElm = objContElm || document;    
  var objColl = objContElm.getElementsByTagName(strTag);
  if (!objColl.length &&  strTag == "*" &&  objContElm.all) objColl = objContElm.all;
  var arr = new Array();                              
  var delim = strClass.indexOf('|') != -1  ? '|' : ' ';   
  var arrClass = strClass.split(delim);    
  for (var i = 0, j = objColl.length; i < j; i++) {                         
    var arrObjClass = objColl[i].className.split(' ');   
    if (delim == ' ' && arrClass.length > arrObjClass.length) continue;
    var c = 0;
    comparisonLoop:
    for (var k = 0, l = arrObjClass.length; k < l; k++) {
      for (var m = 0, n = arrClass.length; m < n; m++) {
        if (arrClass[m] == arrObjClass[k]) c++;
        if ((delim == '|' && c == 1) || (delim == ' ' && c == arrClass.length)) {
        
          arr.push(objColl[i-2].innerHTML); 

          strServertime=objColl[i-2].innerHTML;

	if (strServertime!="") 
	{
/*	      var re = new RegExp("time");
	      var m = re.exec(strServertime);
	      var startServertime=m.index+6;  

	      var re = new RegExp("second");
	      var m = re.exec(strServertime);
	      var endServertime=m.index;
	      var LineBreak=endServertime+8;
          
	//old method depend on string found
	//var servertime=String(strServertime).substring(startServertime,endServertime-1);      
*/

	var servertime=strServertime.replace (/[^\d.]/g, "");
	var servertime=servertime.replace (/[\.]$/, "");

//todo replace undefined..



        var Pagegenerationwidth=((servertime)*30);
	var TotalLoadTime=((EndTime - MyStartTime)/1000);


      var restLoadTimeWidth=(((TotalLoadTime)-(servertime))*30);

	if (restLoadTimeWidth > 1000) //maximize the bar
	{
	restLoadTimeWidth = 0;
	}
	if (TotalLoadTime < 0)
	{
		alert("PageLoad smalle server time!?"+servertime+" total="+TotalLoadTime) ;
	}

      var loadbars='<img src="./themes/Sugar/servertime.gif" width="'+Pagegenerationwidth+'" height="10"/><img src="./themes/Sugar/loadtime.gif" width="'+restLoadTimeWidth+'" height="10"/>';
      //"Total page load time: "+(EndTime - MyStartTime)/1000

	if((( EndTime - MyStartTime)/1000) < 120) {  //more than 120 seconds ==> startime not captured...
            strTotalLoadtime="Total page load time: "+((EndTime - MyStartTime)/1000) + " seconds.";
	}
	else
	{
            strTotalLoadtime="";  //clear out to long ago, todo: format the endtime to show last activity
        }

	//put the string back together with 
//      strServerGenerate=String(strServertime).substring(0,LineBreak);
//      strCopyright=String(strServertime).substring(LineBreak);
      
      //schrijf de nieuwe footer weg
//      objColl[i-2].innerHTML= strTotalLoadtime+"<br>"+strServerGenerate+"<br>"+loadbars+strCopyright ;
      objColl[i-2].innerHTML= strTotalLoadtime+"<br>"+loadbars+"<br>"+strServertime ;
	
            }
          
          break comparisonLoop;
        }
      }
    }
  }
  if (servertime != undefined ) 
  {
	return servertime;  
  }
else
  {
  return 0;
  }
}

