/*
	Gestaltung, Programmierung und Umsetzung:
	
	etone intermedia GmbH
	Endterstraße 7
	90459 Nürnberg 
	
	E-Mail: team@etone.de
	Internet: www.etone.de
	
	Telefon: (+49) 911 / 433 13 - 0
	Fax: (+49) 911 / 433 13 - 29

   modified by wf@bitplan.com
  $Header$
  $Id: global.js 72 2007-12-16 08:42:59Z wf $
  $Log$
  Revision 1.14  2007/12/16 08:40:04  wf
  improved

  Revision 1.13  2007/12/15 19:37:52  wf
  w3c 23

  Revision 1.12  2007/12/15 19:14:07  wf
  fixed

  Revision 1.11  2007/12/15 16:39:05  wf
  english + improved

  Revision 1.10  2007/12/15 08:28:08  wf
  improved version

  Revision 1.9  2007/12/14 10:13:45  wf
  improved

  Revision 1.8  2007/12/13 19:24:53  wf
  language support

  Revision 1.7  2007/12/13 16:59:16  wf
  current changes

  Revision 1.6  2007/12/13 14:49:15  wf
  menu handling improved

  Revision 1.5  2007/12/13 12:58:47  wf
  improved

  Revision 1.4  2007/12/13 09:58:05  wf
  new version

  Revision 1.3  2007/12/13 09:27:51  wf
  improved


*/
var url = window.location.href; 
var segments = url.split("/"); 
var filename = segments.pop();
var locationname = segments.pop();

/**
 * get all elements of a specific class
 */
function getElementsByStyleClass (className) {
  var all = document.all ? document.all :
    document.getElementsByTagName('*');
  var elements = new Array();
  for (var e = 0; e < all.length; e++)
    if (all[e].className == className)
      elements[elements.length] = all[e];
  return elements;
}
//--------------------------------------------------------------------------------------------------------
function toggleVisibility(id) {
//--------------------------------------------------------------------------------------------------------
	/*
	Display Style 'none' => invisible
	Display Style '' => visible 
	*/
	var tTR = document.getElementById(id);
	
	if (tTR != null) {
		if (tTR.style.display == 'none') {
			tTR.style.display='';
		} else {
			tTR.style.display = 'none';
		} //
	} // if
} // toggleVisibility


/**
 * hide or show a list of objects
 */
function setVisibility(elements, show) {
	/*
	Display Style 'none' => invisible
	Display Style '' => visible 
	*/
	// enabling by hide and show      
	if (show) 
		var newDisplay = 'block';
	else
		var newDisplay = 'none';

 	// actually show or hide the elements
	for (var e = 0; e < elements.length; e++) {
		elements[e].style.display = newDisplay;
	} // for
} // toggleVisibility


/**
 * set a cookie name value pair
 */
function set_cookie(name, value) {
  document.cookie=name+"="+escape(value)+"; expires="+cookie_days();
}

/* cookie handling from: http://www.phpfinder.de/php/tutorials/AWassermann/v10.html */
/**
 * how many days to keep the cookies
 */ 
COOKIE_DAYS=7;

/**
 * get the cookie days string in correct format
 */
function cookie_days() {
  var date=new Date();
  date.setDate(date.getDate()+COOKIE_DAYS);
  var gmt=date.toGMTString();
  var k1=gmt.indexOf(" ");
  var k2=gmt.indexOf(" ", k1+1);
  var k3=gmt.indexOf(" ", k2+1);
  var str=gmt.substring(0,k2)+"-"+gmt.substring(k2+1,k3)+"-"+gmt.substring(k3+3,gmt.length);
  return str;
}

/**
 * get the content of a cookie
 */
function get_cookie(name) {
  var value=null;
  if(document.cookie != "") {
    var kk=document.cookie.indexOf(name+"=");
    if(kk >= 0) {
      kk=kk+name.length+1;
      var ll=document.cookie.indexOf(";", kk);
      if(ll < 0)ll=document.cookie.length;
      value=document.cookie.substring(kk, ll);
      value=unescape(value);
    }
  }
  return value;
}
/**
 *  language Switch
 */
function LangSwitch(sprache) {
	//locationname= locationname.replace('/'+sprache.substr(0,2)+'/','en');
	// locationname = sprache.substr(0,2);
	switch(sprache) {
		case "deutsch": 
			var toHideTag	= "en";
			var toShowTag	= "de";
			break;
		case "english": // no break on purpose
		default:
			var toHideTag	= "de";
			var toShowTag	= "en";
			break;
	} // switch
	// alert(sprache);
	set_cookie('lang',sprache);
	setVisibility(getElementsByStyleClass(toHideTag), false);
	setVisibility(getElementsByStyleClass(toShowTag), true);
} // LangSwitch
	
/**
 * init
 */	
function init() {
	var lang=get_cookie('lang');
	if (lang!=null) {
		LangSwitch(lang);
		// alert(lang);
	}	
	switch(filename) {
		case "news.php": 
		case "sw_architecture_events.php": 
			document.getElementById("menu_1_de").className="menuHighlight";
			document.getElementById("menu_1_en").className="menuHighlight";			
			document.getElementById("menu_1_sub_de").style.display="block";
			document.getElementById("menu_1_sub_en").style.display="block";
			break;
		case "isaqb.php":
		case "certified_swarchitect.php": 
		case "mitglieder_vorstellung.php":
			document.getElementById("menu_2_de").className="menuHighlight";
			document.getElementById("menu_2_en").className="menuHighlight";
			document.getElementById("menu_2_sub_de").style.display="block";
			document.getElementById("menu_2_sub_en").style.display="block";
			break;
		case "lehrplaene.php": 
		case "pruefungen.php": 
		case "pruefungsverfahren.php": 
			document.getElementById("menu_3_de").className="menuHighlight";
			document.getElementById("menu_3_en").className="menuHighlight";
			document.getElementById("menu_3_sub_de").style.display="block";
			document.getElementById("menu_3_sub_en").style.display="block";
		break;
		case "trainingsprovider.php":
		case "trainings.php": 
		case "success_stories.php":
			document.getElementById("menu_4_de").className="menuHighlight";
			document.getElementById("menu_4_en").className="menuHighlight";
			document.getElementById("menu_4_sub_de").style.display="block";
			document.getElementById("menu_4_sub_en").style.display="block";
		break;
		case "downloads.php":
		case "buchempfehlungen.php":
		case "links.php":
			document.getElementById("menu_5_de").className="menuHighlight";
			document.getElementById("menu_5_en").className="menuHighlight";
			document.getElementById("menu_5_sub_de").style.display="block";
			document.getElementById("menu_5_sub_en").style.display="block";
			break;
		case "impressum.php":
			document.getElementById("menu_10_de").className="menuHighlight";
			document.getElementById("menu_10_en").className="menuHighlight";
			break;
		case "kontakt.php":
			document.getElementById("menu_11_de").className="menuHighlight";
			document.getElementById("menu_11_en").className="menuHighlight";
			break;
		case "index.php":
			document.getElementById("menu_12_de").className="menuHighlight";
			document.getElementById("menu_12_en").className="menuHighlight";
			break;
		case "haftung.php":
			// none yet
		  break;	
		default:
			// alert(filename);
		break;
	}	
	// start running 
	timed_changecontent();
}

var blocks = new Array();

/**
 * dynamische Änderung de s Boxen inhalts
 */
function timed_changecontent(){
	changecontent();
	// Funktion nach 30 Sekunden erneut starten
  window.setTimeout("timed_changecontent();",  15000);
}	
	
function changecontent() {	
  var boxes = 2;         	// Anzahl der Elemente
  //start = aktiviert;  	// Startwert in Variable "start" laden
                      		// (gibt das nächst gezeigte Element an)
  if (blocks.length <= 0) {
	  for (var i =1; i <= boxes; i++) {
		  blocks[i-1] = i;
	  }
  }		  
   
  var zufallsstart = -1;
	while ((zufallsstart <0) || (zufallsstart >= blocks.length)) {
	   zufallsstart = Math.round(Math.random()*(blocks.length-1));
	}
	
    var intStart = blocks[zufallsstart];

	blocks.splice(zufallsstart, 1);
	
  //Alle Elemente ausblenden
  for (i=1; i<=boxes; i++){
	  try {
      document.getElementById("de_content_"+i).style.display = "none";
	  	document.getElementById("en_content_"+i).style.display = "none";
	  } catch(e) {;}
	  
	}
	
  // naechstes Element einblenden
  try {
  	document.getElementById("de_content_"+intStart).style.display = "block";
  	document.getElementById("en_content_"+intStart).style.display = "block";
  } catch(e) {;}
  
  // auf visible setzen (platzhalterbox)
  
  try {
  	document.getElementById("de_content_"+intStart).style.visibility = "visible";
  	document.getElementById("en_content_"+intStart).style.visibility = "visible";
  } catch(e) {;}
  
  
  // Wenn das letzte Element angezeigt wurde, 
  // start auf 1 setzen und wieder von vorne anfangen
  if (intStart >= boxes) {
      intStart=1;
  }else {
      intStart++;
  } 
}

