////
// simple swap image func
function changeImage(inImg) {
    if (inImg.src.indexOf("_1") > 0) {
	inImg.src = inImg.src.replace(/_1/, "_2");
    }
    else
	inImg.src = inImg.src.replace(/_2/, "_1");
}

////
// simple toggle visbility for any object
function toggle(obj){
    if (obj.style.display == "block")
	obj.style.display = "none";
    else
	obj.style.display= "block";
}

////
// Toggle all _Dyn marked TAGs (DIVs?)
//
// How to do this - 
// 1. When parsing the html/css/both files,
// any target TAG (DIV here.. make it changable)
// should have the id changed to x_Dyn like this
//
// #textDivLowestRight to #textDivLowestRight_Dyn
//
// 2. in the style, the display: none; attribute
// HAS TO BE set immidiately like for example..
//
// 	     #textDivLowestRight_Dyn{position: absolute;
//	     ..
//	     ..
//           display: none;
//           }
//
// 3. each page then holds an array of object IDs that
// are to be toggled on when this page is displayed! What
// happens is - at each body onload, the array gets toggled
// ON! This works becuase this setting is fetched from the
// database using PHP5.
//
function toggleAll(d){
    for(var i = 0; i < d.length; i++){
	toggle(d[i]);
    }
}

///
// Toggle one at the time.. 
function toggleNext(){
    if(ENUM>DYNS.length-1){
	toggle(DYNS[ENUM-1]);	
	ENUM=0;
    }
    if(ENUM>0)
	toggle(DYNS[ENUM-1]);	
    toggle(DYNS[ENUM]);
    ENUM++;
}

///
// Toggle one LAYOUT at the time.. 
function toggleNextLayout(){
    if(ENUM>LAY.length-1){
	toggleAll(LAY[ENUM-1]);	
	ENUM=0;
    }
    if(ENUM>0)
	toggleAll(LAY[ENUM-1]);	
    toggleAll(LAY[ENUM]);
    ENUM++;
}

///
// This should be PHP-code?
// the DYNS is global (no var DYNS..)
function setDyns(){
    var t = "DIV";
    DYNS = getDyns(t);
    ENUM=0;

    ///
    // Playing with layouts..
    LAY=new Array();
    var L1=[ "imLeftTopDiv_Dyn", "imLeftMidDiv_Dyn","imLeftBotDiv_Dyn", "imLeftLowestDiv_Dyn", "textTallRight_Dyn" ];
    LAY[0]=matchObjById(L1);
    var L2=["imRightTopDiv_Dyn", "imRightMidDiv_Dyn","imRightBotDiv_Dyn", "imRightLowestDiv_Dyn", "textTallLeft_Dyn"];
    LAY[1]=matchObjById(L2);
    var L3=["imLeftBotDiv_Dyn", "imLeftLowestDiv_Dyn","imMidBotDiv_Dyn", "imMidLowestDiv_Dyn","imRightBotDiv_Dyn", "imRightLowestDiv_Dyn", "textDivUp_Dyn"];
    LAY[2]=matchObjById(L3);
    var L4=["imLeftTopDiv_Dyn", "imLeftMidDiv_Dyn","imMidTopDiv_Dyn", "imMidMidDiv_Dyn","imRightTopDiv_Dyn", "imRightMidDiv_Dyn", "textDivDown_Dyn"];
    LAY[3]=matchObjById(L4);
    var L5=["imLeftTopDiv_Dyn", "imLeftLowestDiv_Dyn","imMidTopDiv_Dyn", "imMidLowestDiv_Dyn","imRightTopDiv_Dyn", "imRightLowestDiv_Dyn", "textDivMid_Dyn"];
    LAY[4]=matchObjById(L5);
    var L6=["imLeftBotDiv_Dyn", "imLeftLowestDiv_Dyn","imMidBotDiv_Dyn", "imMidLowestDiv_Dyn","imRightTopDiv_Dyn", "imRightMidDiv_Dyn", "imRightBotDiv_Dyn", "imRightLowestDiv_Dyn", "textDivUpLeft_Dyn"];
    LAY[5]=matchObjById(L6);
    var L7=["imLeftTopDiv_Dyn", "imLeftLowestDiv_Dyn","imMidTopDiv_Dyn", "imMidLowestDiv_Dyn","imRightTopDiv_Dyn", "imRightMidDiv_Dyn", "imRightBotDiv_Dyn", "imRightLowestDiv_Dyn", "textDivMidLeft_Dyn"];
    LAY[6]=matchObjById(L7);
    var L8=["imLeftTopDiv_Dyn", "imLeftMidDiv_Dyn","imMidTopDiv_Dyn", "imMidMidDiv_Dyn","imRightTopDiv_Dyn", "imRightMidDiv_Dyn", "imRightBotDiv_Dyn", "imRightLowestDiv_Dyn", "textDivLowestLeft_Dyn"];
    LAY[7]=matchObjById(L8);
    var L9=["imMidBotDiv_Dyn", "imMidLowestDiv_Dyn","imRightBotDiv_Dyn", "imRightLowestDiv_Dyn","imLeftTopDiv_Dyn", "imLeftMidDiv_Dyn", "imLeftBotDiv_Dyn", "imLeftLowestDiv_Dyn", "textDivUpRight_Dyn"];
    LAY[8]=matchObjById(L9);
    var L10=["imMidTopDiv_Dyn", "imMidLowestDiv_Dyn","imRightTopDiv_Dyn", "imRightLowestDiv_Dyn","imLeftTopDiv_Dyn", "imLeftMidDiv_Dyn", "imLeftBotDiv_Dyn", "imLeftLowestDiv_Dyn", "textDivMidRight_Dyn"];
    LAY[9]=matchObjById(L10);
    var L11=["imMidTopDiv_Dyn", "imMidMidDiv_Dyn","imRightTopDiv_Dyn", "imRightMidDiv_Dyn","imLeftTopDiv_Dyn", "imLeftMidDiv_Dyn", "imLeftBotDiv_Dyn", "imLeftLowestDiv_Dyn", "textDivLowestRight_Dyn"];
    LAY[10]=matchObjById(L11);
}

///
// Returns _Dyn divs given
// a HTML TAG
function getDyns(tag){
    var listItems;
    var Dyns = new Array();
    // only toggle the ones ending with '_Dyn'
    listItems = document.getElementsByTagName(tag);
    var a = 0;
    for(var i = 0; i < listItems.length; i++){
	if(endsWith(listItems[i].id,'_Dyn')){ 
	    Dyns[a]= listItems[i];
	    a++;
	}
    }
    return Dyns;
}

///
// Returns Array of objects where DYNS[n].id:s are
// matched by given Array of strings
function matchObjById(list){
    var c=0;
    var res=new Array();
    for(var a=0;a<list.length;a++){
	for(var g=0;g<DYNS.length;g++){
	    if(DYNS[g].id==list[a]){
		res[c]=DYNS[g];
		c++;
		break;
	    }
	}
    }
    return res;
}

///
// EndsWith help function
function endsWith(str, lookup){
    if(str.substring(str.length-lookup.length,str.length)==lookup)
	return true;
    else
	return false;
}

