/******
 * Copyright: Bernardini & Schnyder GmbH
 * Author: Sebastian Haller, Alexandar Penkin
 * Date: 2007
 * javascript
 */

function showSearch() {
	var searchLink = document.getElementById("search_link");
	searchLink.style.color = "#f6a906";
	searchLink.style.textDecoration = "none";
	var subrubric = document.getElementById("searchBox");
	subrubric.style.visibility="visible";	
}

function showRubric(id, lang) {
	var rubric_title = document.getElementById("rubric_title_" + id);
	if (1 == id) {
		rubric_title.className = "one_selected" + lang;
	} else if (2 == id) {
		rubric_title.className = "two_selected" + lang;
	} else if (3 == id) {
		rubric_title.className = "three_selected" + lang;
	} else if (4 == id) {
		rubric_title.className = "four_selected" + lang;
	}
	var subrubric = document.getElementById("subrubric_" + id);
	subrubric.style.display="block";
}

function hideRubric(id, lang) {
	var rubric_title = document.getElementById("rubric_title_" + id);
	if (1 == id) {
		rubric_title.className = "one" + lang;
	} else if (2 == id) {
		rubric_title.className = "two" + lang;
	} else if (3 == id) {
		rubric_title.className = "three" + lang;
	} else if (4 == id) {
		rubric_title.className = "four" + lang;
	}
	var subrubric = document.getElementById("subrubric_" + id);
	subrubric.style.display="none";	
}


// allow only numbers to be entered in sone fields
function goodchars(e, chars)
{
	var key, keychar;

	if (window.event)
		key = window.event.keyCode;
	else if (e)
		key = e.which;
	else
		return true;

	keychar = String.fromCharCode(key);
	keychar = keychar.toLowerCase();
	chars = chars.toLowerCase();

	if (chars.indexOf(keychar) != -1)
		return true;

	// control keys
	if ( key==null || key==0 || key==8 || key==9 || key==13 || key==27 )
		return true;

	return false;
}

// new window
function newwindow(url, name, w, h, features) {
	if(screen.width)
	{
		var winl = (screen.width-w)/2;
		var wint = (screen.height-h)/2;
	}
	else
	{
		winl = 0;
		wint = 0;
	}
	if (winl < 0)
		winl = 0;
	if (wint < 0)
		wint = 0;
	//var settings = 'scrollbars=yes, resizable=yes, ';
	var settings = '';
	settings += 'height=' + h + ', ';
	settings += 'width=' + w + ', ';
	//settings += 'top=' + wint + ', ';
	//settings += 'left=' + winl + ', ';
	settings += features;
	win = window.open(url, name, settings);
	win.resizeTo(w, h);
	win.focus();
	// do not uncomment this. it is used in links containing
	// a href for users without javascript and an onclick="return newwindow(...);" for users with javascript
	// we do not want the href action to be excuted on success!
	return false;
}

// used to confirm a link before sending request (i.e. for delete links)
function confirmlink(text, obj)
{
	var is_confirmed  = confirm(text);
	if (is_confirmed) {
		obj.href += '&js_confirmed=1';
	}

	return is_confirmed;
}

// used to confirm a link before sending request (i.e. for delete links)
function confirmcode(text, code)
{
	var is_confirmed  = confirm(text);
	if (is_confirmed) {
		eval(code);
	}

	return is_confirmed;
}

// changes content of a div
function setcontent(obj, content)
{
	document.getElementById(obj).innerHTML = content;
	return false;
}

// hide div
function hidediv(obj)
{
	o = document.getElementById(obj);
	o.style.display='none';
}

// show div
function showdiv(obj)
{
	o = document.getElementById(obj);
	o.style.display='block';
}



function manageBoxes(id){

	for(i=1;i<5;i++){
		openObj = document.getElementById("box"+i+"_open");
		Obj = document.getElementById("box"+i);	
		if(i==id){
			openObj.style.display="block";
			Obj.style.display="none";				
		}else{
			Obj.style.display="block";
			openObj.style.display="none";				
		}
	}			
}

function selectGo(obj){
	if(obj.value != ""){
		if(obj.value.indexOf("http://")==-1){
			window.location= obj.value;
		}else{
			window.open(obj.value);
			
		}
		
	}
}

function showForm() {
	var formDiv = document.getElementById("form_div");
	var showButton = document.getElementById("show_button");
	var zipButton = document.getElementById("submit_archive");
	var getReportsForm = document.getElementById("getReportsForm");

	formDiv.style.display = "block";
	showButton.style.display = "none";
	zipButton.style.display = "none";
}

function hideForm() {
	var formDiv = document.getElementById("form_div");
	var showButton = document.getElementById("show_button");
	var zipButton = document.getElementById("submit_archive");
	var getReportsForm = document.getElementById("getReportsForm");

	formDiv.style.display = "none";
	showButton.style.display = "block";
	zipButton.style.display = "block";
}

function doJob(myLink, menuItemLink){
/*	var iframe = document.getElementById("targetPlace");
	var itemsTable = document.getElementById("itemsTable");
	iframe.src = link;	
	iframe.style.display = "block";
	
	itemsTable.style.display = "none";
*/	
	var myUrl = "/de-ch/show_iframe_rss.go";
	var params = "link=" + myLink + "&menuItemLink=" + menuItemLink;

	doAjax(myUrl, params, "content");
	
	return false;
}

function doAjax(url, params, target){
 req = GetXmlHttpObject();
 req.onreadystatechange = function(){
  if (req.readyState == 4) {
   if (req.status == 200) {
    var text = req.responseText;
    proccess(target, text);
   } else {
    alert("Problem: " + req.statusText);
   }
  }
 }
 req.open('POST', url, true);
 req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
 req.setRequestHeader("Content-length", params.length);
 req.setRequestHeader("Connection", "close");
 req.send(params);
}

function GetXmlHttpObject(){ 
 var objXMLHttp=null;
 if (window.XMLHttpRequest){
  objXMLHttp=new XMLHttpRequest();
 }
 else if (window.ActiveXObject){
  objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP");
 }
 return objXMLHttp;
}
 
function proccess(target, text){
 if(document.getElementById(target) != null){
  document.getElementById(target).innerHTML = text;
	runScripts(target);
 }
}

function runScripts(id) {
 var elem = document.getElementById(id);
 var e = elem.getElementsByTagName("script");
 if(e != null){
  for(var i=0;i<e.length;i++) {
   eval(e[i].innerHTML);
  }
 }  
}

