/*************************************************************
*  JavaScript voor LA4Sale WEBSITE
*  ===============================
* 
'*<versioninfo>1.00.00 (2011-04-19)</versioninfo>
'*<componentinfo>Product LA4Sale</componentinfo>
'*<change>1.00.00 (2011-04-19);Definite version</change>
'*<change>0.99.03 (2010-07-26);Switchen projectteksten</change> 
'*<change>0.99.02 (2010-07-26);SetSWMute implementatie</change>  
*	 
*  Function Written by Thijs van der Laan 20-12-2004
*	 (c) BiSC Nederland BV en Bureau Browserbesst
**************************************************************/  

var	CurrFBEntry=1;			//default:1 current entry in FotoBoek
var	NrFBPages=0;				//
var OldClassName="";

var CurrPrdPage=1;			//default: current production page
var	NrPrdPages=0;
var	aPrds;							//aaray
var	BasisId="";					//Basis ID op basis waarvan we rekenen

/*********************************************************************
'* Function    : TROver                                              *
'* Parameters  : None                                                *
'* returns     : None                                                *
'* purpose     : To highlite row we are on                           *
'*                                                                   *
'********************************************************************/
function TROver(RowId,Klas)
{
	objx=BBB_findObj(RowId);
	OldClassName=objx.className;
	objx.className=Klas;
	document.body.style.cursor='pointer';
	SetSWMute(0);	
}
/*********************************************************************
'* Function    : TROut                                               *
'* Parameters  : None                                                *
'* returns     : None                                                *
'* purpose     : To highlite row we are on                           *
'*                                                                   *
'********************************************************************/
function TROut(RowId)
{
	objx=BBB_findObj(RowId);
	objx.className=OldClassName;	
	document.body.style.cursor='default';
	SetSWMute(1);
}

function TRClick(RowId,NextPage)
{
	objx=BBB_findObj(RowId);
	document.body.style.cursor='default';
	SetSWMute(1);	
	parent.location.href=NextPage;
}

/*************************************************************
*  ReplacePage
**************************************************************/
function ReplacePage( pType)
{	
//	alert("Ja");
	myBody = document.getElementsByTagName("body")[0];
  myBodyElements = myBody.getElementsByTagName("table");	
	nr=myBodyElements.length;
	
//	nr=document.all.length;
	
//	alert(nr);

	for(i=0;i<nr;i++)		//field with ID raised
	{
		myP = myBodyElements[i];
		id=myP.id;
			
		u=id.split("=");
//		alert(u+" - "+u[0]);
		
		if(u[0]=="?state")
		{
//			alert("id="+id);
			
			if(id != "")			//if field with id is found
			{
				s = location.href;	//get url part
				x = s.split("?");
				l = x.length;

//				alert("url="+s);
			
				if(l > 0)
				{
					s = x[0];		//is url part
				}
			}
			document.location.replace(s+id+"&key="+pType);		//old key plus requested type    
      break;

		}
	}	
  return false;    
}

/*************************************************************
*  function to set arrows as requested in ID
**************************************************************/
function SetArrows()
{
	myBody = document.getElementsByTagName("body")[0];
  myBodyElements = myBody.getElementsByTagName("table");	
	nr=myBodyElements.length;

	id="";
	for(i=0;i<nr;i++)
  {
  	myP = myBodyElements[i];
		id=myP.id;
      
    u=id.split("=");
//		alert(u+" - "+u[0]);
		
		if(u[0]=="?state")
		{
//			alert("id="+id);
      
      
    	if(id != "")
      {
        	break;
      }
   	}
  } 

   if(id!="")
   {
      x=id.split("sort=");
      for(j=1;j<4;j++)
      {
         DoArrow(j,x[1].substring(j-1,j));
      }
      x=id.split("vwr=");
      if(x[1].substring(0,6)!="agenda")		//if it is a speelijst we need to change the picture
      {
     		for (i=0;i < document.images.length; i++)
    		{
       		if(document.images[i].name == "listtype")
       		{
            	document.images[i].src="../afb/gif/agenda_kop_speellijst.gif";
          		break;
          }
       	}
      }
   }		        
}
/*************************************************************
*  Do the arrow as it should be
**************************************************************/
function DoArrow(nr,pos)
{
   img="Img"+nr;

//	alert(img+"-"+pos);

    for (i=0;i < document.images.length; i++)
    {
       if(document.images[i].name == img)
       {
          if(pos==4)		//4 is SORT_ASC
          {
             document.images[i].src="../afb/gif/pijltje_neer_oranje_agenda.gif";
          }
          else
          {
             document.images[i].src="../afb/gif/pijltje_op_oranje_agenda.gif";
          }
          break;
       }
     }
}
/*********************************************************************
'* Function    : BBB_findobj                                         *
'* Parameters  : None                                                *
'* returns     : None                                                *
'* purpose     : To highlite row we are on                           *
'*                                                                   *
'********************************************************************/
function BBB_findObj(n, d) 
{ //v4.01
  var p,i,x;  
  
  if(!d) d=document; 
  if((p=n.indexOf("?"))>0&&parent.frames.length) 
  {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);
  }
  if(!(x=d[n])&&d.all) x=d.all[n]; 
  for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=BBB_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); 
  return x;
}

/*************************************************************
*  Function om het aantal FB items te berekenen
*  
*
**************************************************************/
function CalcFBItems(IdBasis,LeegPrev,LeegNext)
{
//	alert(IdBasis);

	BasisId=IdBasis;
	var Cnt=1;
	
	while(Cnt>0)
	{
//		alert(Cnt);
		Idx=IdBasis+Cnt;
		Ofc=MM_findObj(Idx);		
		if(Ofc==null)
		{
			NrFBPages= Cnt-1;
//			alert("nr fotopages="+NrFBPages);			
			return;
		}
		Cnt++;
	}
}

/*************************************************************
*  Function om de volgende foto-item
*  waarbij x het volgnr is
*
*  Sel kan zijn next of prev
*
**************************************************************/
function ItemInFotoBook(Sel)
{
	IDfc=BasisId+CurrFBEntry;		//Picture ID
	Ofc=MM_findObj(IDfc);		//Current Object
	
//	alert("action="+Sel+" on curr FotoId="+IDfc);

	if(Ofc==null)
	{
		alert("ERROR: following div does not exist:"+IDfc);
		return;
	}

	if(Sel=="next")
	{
		Ne=CurrFBEntry+1;				//next Entry
		if(Ne>NrFBPages)
		{
			Ne=1;
		}
	}
	else
	{
		Ne=CurrFBEntry-1;				//previous
	}	
	if(Ne>NrFBPages)
	{
		Ne=1;
	}
	
	if(Ne<1)
	{
		Ne=NrFBPages;
	}		
	IDfn='__F'+Ne;

	Ofn=MM_findObj(IDfn);		//Current Object
	
//	alert("Action:"+Sel+"results in new fotoId="+IDfn);
		
	if(Ofn==null)							//if next object is not there
	{
		alert("ERROR: following div does not exist:"+IDfn);
		return;
	}
	Ofc.style.visibility="hidden";
	Ofn.style.visibility="visible";
	CurrFBEntry=Ne;
}



fHeight=0;
ContTop=0;
ContMT=0;
PostTop=0;
PostMT=0;
PVTop=0;
PVMT=0;
var oC=null;
var oV=null;
var oP=null;

function SetTopMargin(sHeight,div1,div2,div3)
{
//	alert(document.documentElement.clientHeight);

//	oC=BBB_findObj("container");
//	oP=BBB_findObj("_poster");
//	oV=BBB_findObj("projectenvenster");


		
	oC=BBB_findObj(div1);
	if(div2!=""){oP=BBB_findObj(div2);}
	if(div3!=""){oV=BBB_findObj(div3);}		

	if(fHeight==0)
	{
		ContTop=oC.style.top;
		ContMT=oC.style.marginTop;
		if(oP!=null)
		{
			PostTop=oP.style.top;
			PostMT=oP.style.marginTop;
		}
		if(oV!=null)
		{
			PVTop=oV.style.top;
			PVMT=oV.style.marginTop;
		}
		fHeight=sHeight;
	}
		
	dh=document.documentElement.clientHeight; //bepaal vensterhoogte

	if(dh<fHeight)
	{
		oC.style.top='0px';
		oC.style.marginTop='0px';
		
		if(oP!=null)
		{
			oP.style.top='60px';
			oP.style.marginTop='0px';
		}
		
		if(oV!=null)
		{
			oV.style.top='194px';
			oV.style.marginTop='0px';
		}
	}
	else
	{
		oC.style.top=ContTop;
		oC.style.marginTop=ContMT;
		if(oP!=null)
		{
			oP.style.top=PostTop;
			oP.style.marginTop=PostMT;
		}
		
		if(oV!=null)
		{
			oV.style.top=PVTop;
			oV.style.marginTop=PVMT;
		}	
	}
	
}

var f_Height=0;
var	f_Obj= new Array();
var	f_TOP= new Array();
var	f_MT= new Array();
var	f_TOPp= new Array();
var	f_MTp= new Array();
 
function SetTopMargin2(sHeight)
{
	a=SetTopMargin2.arguments;
	dh=document.documentElement.clientHeight; //bepaal vensterhoogte
	j=0;
		
	for(var i=1;i<a.length;i=i+2)
	{
		if(a[i]!="")
		{
			f_Obj[j]=BBB_findObj(a[i]);
			if(f_Obj[j]!=null)
			{
				if(f_Height==0)
				{
					f_TOP[j]=f_Obj[j].style.top;
					f_MT[j]=f_Obj[j].style.marginTop;
				}
				if(dh<sHeight)
				{
					f_Obj[j].style.top=a[i+1];
					f_Obj[j].style.marginTop='0px';
				}
				else
				{
//					alert("ja "+f_TOP[j]);
					f_Obj[j].style.top=f_TOP[j];
					f_Obj[j].style.marginTop=f_MT[j];					
				}
			}
		}
		j++;
	}
	f_Height=sHeight;

}
/*************************************************************
*  Functies om homepage te tonen
*
*
**************************************************************/
var SaveClass=0;
var FirstClass=0;
var	SecondClass=0;

function ti(prid)
{
	var item=new Array();
	var	used=new Array();
	
	var maxproj=60;

//return;
	
	idx=prid.split('#');

	for(var i=0;i<idx.length;i++)
	{
		objx=BBB_findObj('T'+idx[i]);		
		item[i]="<SPAN id=\"T"+idx[i]+"\">"+objx.innerHTML+"</SPAN>";		
	}
//	alert(item.length);
	
	for(var j=0;j<item.length;j++)
	{
//		for(i=0;i<vProjects.length-1;i++)
			
		for(i=0;i<vpNr;i++)
		{			
			if(bStr(item[j])==bStr(vProjects[i]))
			{
				if(i<maxproj) 
				{
					used[i]=1;
					break;
				}
				else
				{
					do
					{
						nEntry=Math.round(maxproj*Math.random());
//						alert(nEntry);
					} while(used[nEntry]==1);
					
					pr=vProjects[i];
					vProjects[i]=vProjects[nEntry];
					vProjects[nEntry]=pr;
					used[nEntry]=1;
						
//					alert("switch");
					break;
				}
			}
		}
//		alert("cnt:"+i);	
	}

	vOHL.innerHTML= vProjects.join(" | ");
	
//	alert(vOHL.innerHTML);
	
		
	for(i=0;i<idx.length;i++)
	{
		objx=BBB_findObj('T'+idx[i]);
		if(i==0)
		{
			SaveClass=objx.className;
			objx.className=FirstClass;						
		}
		else
		{
			objx.className=SecondClass;
		}	
	}
}

function to(prid)
{
	idx=prid.split('#');
//	vOSub.innerHTML="";
	
	for(var i=0;i<idx.length;i++)
	{
		objx=BBB_findObj('T'+idx[i]);
		objx.className=SaveClass;	
	}	
}

function bStr(str)
{
//	alert(str);
	s=str.split(">");
	r=s[1].split("<");
//	alert(r[0]);
	return(r[0]);
}
/*************************************************************
*  Functies om Homepage te tonen
*
*	iGrid
*
*	parameter is string van de vorm +regel-colom-id#aanverwant#...
*
**************************************************************/

/*************************************************************
*	Maak array van geldige vakjes
* 
**************************************************************/
var igNr=0;							//nr of entries
var	igEntry=-1;					//current valid entry
var	iClick="";					//base click url

var	iX1= new Array();
var	iX2= new Array();
var	iY1= new Array();
var	iY2= new Array();
var	igId= new Array();

var wP=6118;					//width Poster

function iGrid(fClass,sClass,iClck,pars)
{	
	FirstClass=fClass;		//save class
	SecondClass=sClass;
	
	iClick=iClck;
	
			
	items=pars.split('+');
	igNr=items.length-1;
	
	for(var i=1;i<=igNr;i++)
	{
		var j=i-1;
		ip=items[i].split("-");
		iX1[j]=ip[0];
		iX2[j]=ip[1];
		iY1[j]=ip[2];
		iY2[j]=ip[3];		
		igId[j]=ip[4];
	}
//	alert(igNr);
//		alert("ja="+igEntry+" Id="+igId[igEntry]+"-"+igId[0]+"-"+igId[1]+"-"+igId[2]);
}

var vScrollRuns=0;
var vOHL;
var vObj;
var vOLeft;
var vORight;
var vOSub;
var vLeftTime=0;
var	vCnt=0;
var aProjects;
var	vProjects= new Array();
var vpNr=0;					//Nr of projects

function	iGridOn(x,y)
{
	var i=0;

//	vOSub.innerHTML="X:"+x+" Y:"+y;
	SetHomeObjects();	
	
	sLeft=vObj.scrollLeft;
	scrPos=x-sLeft;
	scrSize=document.documentElement.clientWidth;
	RA=scrSize-30;

	
	if(scrPos<30 || scrPos>RA)
	{
		if(vScrollRuns==0)
		{
			if(scrPos<10)
				initVScroll("right");
			if(scrPos>RA)
				initVScroll("left");				
			return;
		}
	}
	else
	{
		stopVScroll();	
	}
	
//	alert("hallo"+scrPos+" scherm "+document.documentElement.clientWidth);
	
	GridOut();		
	
	for(i=0;i<igNr;i++)
	{
		if(x>=iX1[i]&& x<=iX2[i]&& y>=iY1[i] && y<=iY2[i])	
		{
//				vOSub.innerHTML="X:"+x+" Y:"+y+" Id:"+igId[i];
//			alert("IGridOn:Id="+igId[i]+" IgEntry="+igEntry+" i="+i);
			if(igEntry==i)
			{
//				alert("return");
				return;
			}
			GridOut();
			ti(igId[i]);
			igEntry=i;
//			alert("i="+i);
			return;
		}
	}
	GridOut();
}
function GridOut()
{

	if(igEntry!=-1)
	{
//		alert("OUT:igEntry="+igEntry+" Id="+igId[igEntry]);
		if(igId[igEntry]!="")
		{
			to(igId[igEntry]);
		}
		igEntry=-1;
	}
}

function	GridClick()
{
	if(igEntry!=-1)
	{
		iids=igId[igEntry].split("#");
		NextPage=iClick+iids[0];
//		alert(NextPage);
		parent.location.href=NextPage;
			
	}
	
}
function initVScroll(dir)
{
	vCnt=0;
	if(vScrollRuns==0)
	{
		vScrollRuns=1;
		vLeftTime = setInterval("doVScroll('"+dir+"')",10) ;
	}
}

function stopVScroll()
{
	if(vScrollRuns!=0)
	{
		clearInterval(vLeftTime);
		vScrollRuns=0;
	}
}

function doVScroll(dir)
{
//	alert("Scroll2 entry="+entry);
//	alert(elemC2[entry].style.top);
	
	if ( vCnt == 0 )
	{
		vCnt=4 ;
	}

	var y = vCnt * ( dir == 'left' ? (+1) : (-1) ) ;
	vObj.scrollLeft=vObj.scrollLeft+y;
	
	CheckHPos();
	
}

function CheckHPos()
{
	if(vObj.scrollLeft==0 )
	{
		stopVScroll();
		vOLeft.style.visibility='hidden';
		vORight.style.visibility='visible';			
		return;
	}
	
	var w=document.documentElement.clientWidth+vObj.scrollLeft;
	
	if(w>=(wP-2))
	{
		stopVScroll();
		vORight.style.visibility='hidden';
		vOLeft.style.visibility='visible';		
		return;
	}
	if(vOLeft!=null)
	{
		vOLeft.style.visibility='visible';
		vORight.style.visibility='visible';	
	}
}
function SetHomeObjects()
{
	if(vOHL==null)
	{
		vOHL=BBB_findObj("homelist");
		vObj=BBB_findObj("homeprojects");	
		vOLeft=BBB_findObj("pylleft");
		vORight=BBB_findObj("pylright");
		vOSub=BBB_findObj("submenu");	
	}
}

function HP(dir)
{
	SetHomeObjects();
	
	if(dir=='left')
	{
		vObj.scrollLeft=0;
		CheckHPos();
		return;
	}
	
	if(dir=='right')
	{
		vObj.scrollLeft=wP;
//		alert(vObj.scrollLeft);
		CheckHPos();
		return;
	}
//	alert("scleft="+vObj.scrollLeft+" CW="+document.documentElement.clientWidth);
}

function SetPoster()
{
	SetHomeObjects();	
	vObj.scrollLeft=(wP/2)-(document.documentElement.clientWidth)/2;
	vObj.style.visibility="visible";	
	CheckHPos();
	aProjects=vOHL.innerHTML;	
	vProjects=aProjects.split(" |");
//	alert(vProjects.length-1);
	vpNr=vProjects.length-1;
}
