function openWin(path,w,h,title) {
	var date = new Date();
	
	if (path.indexOf("?") != -1) {
		path = path + "&time=" + date.getTime();
	} else {
		path = path + "?time=" + date.getTime();
	}
	
	if (!(w) && !(h)) {
		w = 600;
		h = 400;
	}
	var popup = window.open(path,title,"width="+w+",height="+h+",scrollbars=yes,resizable=yes,statusbar");
}

function openHelpWin(path,w,h) {
	if (!(w) && !(h)) {
		w = 600;
		h = 400;
	}
	var helppopup = window.open(path,'help',"width="+w+",height="+h+",scrollbars=yes,resizable=yes,statusbar");
	helppopup.focus();
}

// Faktor Breite zu Hoehe
var factor = 0;
// Werte fuer Breite und Hoehe des Bildes holen
function get_factor(){
	var width = document.editblock.width.value;
	var height = document.editblock.height.value;
	factor = width / height;
}

// Nach Verlassen des Textfeld, das andere Textfeld proportional angleichen, falls Checkbox markiert.
function berechne(box) {
	if ( document.editblock.proportional.checked == true ) {
		if ( box == 'width' ) {
			document.editblock.height.value = parseInt( document.editblock.width.value / factor );
		} else {
			document.editblock.width.value = parseInt( document.editblock.height.value * factor );
		}
	}
}

// laesst Textfeld 'externe Seite' im Title-Block erscheinen bzw. verschwinden
function extern() {
	document.getElementById("href").style.visibility = (document.getElementById("linktype").value == "extern") ? "visible" : "hidden";
}

// korrigiert doppeltes 'http://' in Linkziel im Newsblock 'Link'
function doublehttp() {
	if (document.editblock.type.value == 'http') {
		var href = document.editblock.href.value;
		var Ausdruck = /(http:\/\/)?(.*)/;
		Ausdruck.exec(href);
		href = RegExp.$2;
		document.editblock.href.value = href;
	}
}

function toggleInfo(field) {
	document.getElementById(field).style.display = ( document.getElementById(field).style.display == 'none' ) ? 'block' : 'none';
}

// Funkttionen für die Zonen-Edit-Bereich
// fuegt die ausgewählte Farbe in das Textfeld ein
function take_color(id, style, col) {
	document.forms.editzone.display_color.value=col;
}
// fuegt die ausgewählte Archivzone in das Textfeld ein
function push_zone_archive(id, name) {
	document.forms.editzone.archive_zone_ID.value=id;
	document.forms.editzone.archive_zone_name.value=name;
}
// wechselt fieldset 
function showtab(id) {
	document.getElementsByTagName("fieldset")[0].style.display = "none";
	document.getElementsByTagName("fieldset")[1].style.display = "none";
	document.getElementsByTagName("fieldset")[2].style.display = "none";
	document.getElementsByTagName("fieldset")[3].style.display = "none";
	document.getElementById(id).style.display = "block";
}

var actualfield;

function push_zone(id, name) {
	if (actualfield == "sszones") {
		var newopt = new Option(name, id, false, true);
		document.forms.editss[actualfield].options[document.forms.editss.sszones.length] = newopt;
	} else {
		document.forms.editss[actualfield].value=id;
		document.forms.editss[actualfield + "_name"].value = name;
	}
}

function delete_zone() {
	document.forms.editss.sszones.options[document.forms.editss.sszones.selectedIndex] = null;
}
function selectAll() {
	// alle aus der select-Box auswaehlen, damit die mitgeschickt werden.
	for(var i=0; i<document.forms.editss.sszones.length; i++) {
		document.forms.editss.sszones.options[i].selected=true;
	}
	return true;
}

function choose_zone(field) {
	actualfield = field;
	openWin('/choose_zone', 600,500);
}

function zoneContextMenu (id, nameOfZone, language){
	
	//alert(language);
	
	if (language = 'DE') {
		zoneEdit = 'Zone editieren';
		createNews = 'Neue News erstellen';
		createSubzone = 'Unterzone erstellen';
		zoneAssistent = 'Zonenassistent';
		tAndP = 'Templates und Parameter';
	} else {
		zoneEdit = 'Edit Zone';
		createNews = 'Create news';
		createSubzone = 'Create sub-zone';
		zoneAssistent = 'Zoneassistent';
		tAndP = 'Templates and parameters';
	}
	
	document.getElementById("contextMenu").style.visibility = "visible";
	document.getElementById("contextMenu").innerHTML = 
		"<span class=\"bold\" onmouseover=\"hs('contextMenu', 'visible');\">Zone: " + nameOfZone + "</span><br>" +
		"<a href=\"/?action=edit_zone&ID="+id+"\" onmouseover=\"hs('contextMenu', 'visible');\">" + zoneEdit + "</a><br>" +
		"<a href=\"/?action=create_news&zone_ID="+id+"\" onmouseover=\"hs('contextMenu', 'visible');\">" + createNews + "</a><br>" +
		"<a href=\"/?action=create_zone&super="+id+"\" onmouseover=\"hs('contextMenu', 'visible');\">" + createSubzone + "</a><br>" +
		"<a href=\"/?action=publish_zone_form&zone_ID="+id+"\" onmouseover=\"hs('contextMenu', 'visible');\">" + zoneAssistent + "</a><br>" +
		"<a href=\"/?action=edit_zone_template&ID="+id+"\" onmouseover=\"hs('contextMenu', 'visible');\">" + tAndP + "</a><br>";	
	
	if (navigator.appName.indexOf("Netscape") != -1){
		this.oncontextmenu = ocm;
	}
	if (navigator.appName.indexOf("Explorer") != -1){
		this.oncontextmenu = ocm();
	}
}

function ocm(e) {
  	if (!e) {
		e = window.event;
	}	
  	if ((e.type && e.type == "contextmenu") || (e.button && e.button == 2) || (e.which && e.which == 3)) {
			document.getElementById("contextMenu").style.left  = (e.clientX - 126) + "px";
			document.getElementById("contextMenu").style.top = (e.clientY - 35) + "px";
            document.getElementById("contextMenu").style.visibility = "visible";	
	}
}

function hs(el, val) {
	document.getElementById(el).style.visibility = val;
}
