var caller_farblayer = '';
function farblayer(obj) {
	caller_farblayer = obj;
	
	document.getElementById('colorpicker').style.display = 'block';

	var objBgColor = obj.style.backgroundColor;
	var bgColor = objBgColor.indexOf("rgb") != -1 ? rgbToHex(objBgColor) : objBgColor.replace("#", '');
	cp1 = new Refresh.Web.ColorPicker('cp1',{startHex: bgColor, startMode:'r'});
}


var styles_replace = new Array ();
styles_replace['background-color'] = 'backgroundColor';
function farbe_uebernehmen(val) {
	
	// Farbfeld
	caller_farblayer.style.backgroundColor = hexToRgb(val);
	// hidden-field
	document.getElementById('farb_form').elements[caller_farblayer.id].value = '#' + val;
	
	//Farbe im Vorschau-Iframe
	var split = caller_farblayer.id.split('_');
	var st = styles_replace[split[2]] ? styles_replace[split[2]] : split[2];
	top.frames[0].document.getElementById(split[1]).style[st] = hexToRgb(val);
	
	hide_colorpicker();
}

function rgbToHex(str) {
	str = str.replace(/rgb\(|\)/g, "").split(",");
	str[0] = parseInt(str[0], 10).toString(16).toLowerCase();
	str[1] = parseInt(str[1], 10).toString(16).toLowerCase();
	str[2] = parseInt(str[2], 10).toString(16).toLowerCase();
	str[0] = (str[0].length == 1) ? '0' + str[0] : str[0];
	str[1] = (str[1].length == 1) ? '0' + str[1] : str[1];
	str[2] = (str[2].length == 1) ? '0' + str[2] : str[2];
	return (str.join(""));
}

function hexToRgb(str) {
	var r = parseInt(str.substring(0,2),16);
	var g = parseInt(str.substring(2,4),16);
	var b = parseInt(str.substring(4,6),16);

	return "rgb("+r+","+g+","+b+")";
}

function hide_colorpicker() {
	// Colorpicker ausblenden
	document.getElementById('colorpicker').style.display = 'none';
	
	// absolut positionierte Elemente des Colorpickers ausblenden
	var imgs = document.getElementsByTagName('img');
	for(var i in imgs) {
		if(!imgs[i] || !imgs[i].src) continue;
		if(imgs[i].src.indexOf('mappoint.gif') != -1 || imgs[i].src.indexOf('rangearrows.gif') != -1) {
			imgs[i].setAttribute('style', 'display:none');
			// noch mal für IE6:
			imgs[i].style.display = 'none';
		}
	}
}

document.doSubmit = function(fid) {
	document.getElementById(fid).submit();
}




function vorschau() {
	var preV = document.getElementById('vorschau_form');
	var preH = document.getElementById('hp_form');
	
	var content = document.getElementById('fck_content___Frame').contentWindow.document.body.getElementsByTagName('iframe')[0].contentWindow.document.body.innerHTML;
	
	preV.seite.value = preH.seite.value;
	preV.content.value = content;
	
	openWin('about:blank', 'Vorschau', 970, 760, 10, 10);
	window.setTimeout(function() { preV.submit(); }, 1);

}

function seitenWechsel(obj) {
	val = obj.options[obj.options.selectedIndex].value;
	
	document.getElementById('seite_form').seite.value = val;
	document.getElementById('seite_form').submit();
	
}

function openWin(uri, fenstername, breite, hoehe, oben, links, parameter) {
	var param = new Object();
	param.menubar    = 'no';
	param.resizeable = 'no';
	param.scrollbars = 'no';
	param.status     = 'no';
	param.toolbar    = 'no';
	param.width      = breite;
	param.height     = hoehe;
	param.top        = oben;
	param.screenY    = oben;
	param.left       = links;
	param.screenX    = links;
	
	if(!fenstername) fenstername = 'fenster';
	
	if(parameter) {
		var paramArr = parameter.split(",");
		for(var i=0; i<paramArr.length; i++) {
			eval('param.' + paramArr[i] + "= 'yes'");
		}
	}

	var fenster = window.open(uri, fenstername, 'menubar='    + param.menubar + ', '
	                                          + 'resizeable=' + param.resizeable + ', '
	                                          + 'scrollbars=' + param.scrollbars + ', '
	                                          + 'status='     + param.status + ', '
	                                          + 'toolbar='    + param.toolbar + ', '
	                                          + 'width='      + param.width + ', '
	                                          + 'height='     + param.height + ', '
	                                          + 'top='        + param.top + ', '
	                                          + 'left='       + param.left + ', '
	                                          + 'screenX='    + param.screenX + ', '
	                                          + 'screenY='    + param.screenY
	                         );
	return fenster;
}
