// GNU copyright (C) 2003 crisp - freesoftware(at)xs4all.nl

var target = null;
function getTarget(el) { target = (document.getElementById)? document.getElementById(el):0; }
function storeCursor(el) { if (document.all && el.createTextRange) el.cursorPos = document.selection.createRange().duplicate(); }

function putStr(text) 
{
	alert(target);
	if (target) 
	{
		if (document.all && target.cursorPos) 
		{

      target.cursorPos.text = text;

    } else if (typeof(target.selectionStart) != 'undefined') {

      var sStart = target.selectionStart;
      var sEnd = target.selectionEnd;
      target.value = target.value.substr(0, sStart) + text + target.value.substr(sEnd, target.value.length);
      target.selectionStart = (sStart == sEnd)? sStart + text.length:sStart;
      target.selectionEnd = sStart + text.length;

    } else {

      target.value += text;

    }

    target.focus();
    storeCursor(target);

  }

}

function applyUBB(style, extra) 
{
	alert(target);
	if (target) 
	{
		var selectedtext = '';
		if (document.all && target.cursorPos) 
		{
			selectedtext = target.cursorPos.text;
		} 
		else if (typeof(target.selectionStart) != 'undefined') 
		{
			selectedtext = target.value.substr(target.selectionStart, target.selectionEnd - target.selectionStart);
		}

		if (style == 'url') {
			var url = prompt('Vul hier de url in:', 'http://');
			if (!selectedtext) selectedtext = prompt('Vul hier de tekst/beschrijving/aanduiding van de link in:', url);
			selectedtext = '[url='+url+']'+selectedtext+'[/url]';
    		}
		else if (style == 'anchor') {
			var name = prompt('Vul hier de naam van de bladwijzer in:', '');
			selectedtext = '[anchor='+name+']';
    		}
		else if (style == 'goto') {
			var url = prompt('Vul hier de naam van sw bladwijzer in waar de link heen moet:', '');
			if (!selectedtext) selectedtext = prompt('Vul hier de tekst/beschrijving/aanduiding van de link naar de bladwijzer in:', url);
			selectedtext = '[goto='+url+']'+selectedtext+'[/goto]';
    		}
		else if (style == 'page')
		{
			if (!selectedtext) selectedtext = prompt('Vul hier de tekst/beschrijving/aanduiding van de pagina in:', document.getElementById("page").options[document.getElementById("page").selectedIndex].value);
			selectedtext = '[page='+document.getElementById("page").options[document.getElementById("page").selectedIndex].value+']'+selectedtext+'[/page]';
		}
		else if (style == 'mail')
		{
			var url = prompt('Vul hier het e-mailadres in:', selectedtext);
			if (!selectedtext) selectedtext = prompt('Vul hier de tekst/beschrijving/aanduiding van het e-mailadres in:', url);
			selectedtext = '[mail='+url+']'+selectedtext+'[/mail]';
		}
		else if (style.substr(0, 3) == 'lay')
		{
			selectedtext = '[lay='+extra+']'+selectedtext+'[/lay]';
		}
		else if (style.substr(0, 3) == 'img')
		{
			if (extra == '') { alert('U gaat nu een afbeelding invoeren via een url.\nLet er op als u een plaatje van een andere website of server haalt\ndat u wel toestemming heeft om deze te gebruik.\n\nSommige plaatjes zullen mogelijk ook niet werken omdat de eigenaar deze heeft geblokkeerd.'); extra = prompt('Vul hier de url van de afbeelding in:', 'http://'); }
			selectedtext = '[img]'+extra+'[/img]';
		}
		else if (style == 'cadre')
		{
			selectedtext = '[cadre='+document.getElementById("cadreWidth").value+'|'+document.getElementById("cadreBgColor").value+'|'+document.getElementById("cadreBorderColor").value+']'+selectedtext+'[/cadre]';
		}
    		else 
    		{
      			selectedtext = '['+style+']'+selectedtext+'[/'+style+']';
		}
		putStr(selectedtext);
	}
}

function makewindow(url, w, h)
{
	var windowprops = "height=" + h + ",width=" + w + ",location=no,scrollbars=no,menubars=yes,toolbars=no,status=yes,resizable=yes,left=0,top=0";
	popup = window.open(url,'popup'+w*h,windowprops);
}

function makewindowhelp(url, w, h)
{
	var windowprops = "height=" + h + ",width=" + w + ",location=no,scrollbars=yes,menubars=yes,toolbars=no,status=yes,resizable=yes,left=0,top=0";
	popup = window.open(url,'popup'+w*h,windowprops);
}

function makepreview()
{
	if (document.getElementById("previewsize").options[document.getElementById("previewsize").selectedIndex].value == '1')
	{
		w = '800'; h = '600';
	}
	else if (document.getElementById("previewsize").options[document.getElementById("previewsize").selectedIndex].value == '2')
	{
		w = '1024'; h = '768';
	}
	else if (document.getElementById("previewsize").options[document.getElementById("previewsize").selectedIndex].value == '3')
	{
		w = '1280'; h = '1024';
	}
	else if (document.getElementById("previewsize").options[document.getElementById("previewsize").selectedIndex].value == '4')
	{
		w = '1600'; h = '1200';
	}
	else
	{
		w = '800'; h = '600';
	}
	w = w-10;
	h = h-200;

	makewindow("preview.php", w, h);
	//window.popup.getElementById('pleur').value = "sdds";
}
function doPreview()
{
	document.getElementById('code').value = document.getElementById('content').value;document.preview.submit();
	document.getElementById('side_h').value = document.getElementById('h').options[document.getElementById('h').selectedIndex].value;
	document.getElementById('side_b').value = document.getElementById('h').options[document.getElementById('b').selectedIndex].value;
	document.getElementById('side_l').value = document.getElementById('h').options[document.getElementById('l').selectedIndex].value;
	document.getElementById('side_r').value = document.getElementById('h').options[document.getElementById('r').selectedIndex].value;

	makepreview();
}
function setColor (element, color, action)
{
	document.getElementById(element).value = color;
	document.getElementById(element).style.backgroundColor = color;
	if (action != "")
	{
		action = action.replace("#", "'");
		action = action.replace("#", "'");
		setTimeout(action, 1);
	}
	hideColor(element);
}
function changeColor (element)
{
	if (document.getElementById('color').style.display == 'block')
	{
		hideColor(element);
	}
	else
	{
		showColor(element);
	}	
}
function previewColor (element, color)
{
	document.getElementById(element).style.backgroundColor = color;

}
function showColor (element)
{
	document.getElementById('color').style.display = 'block';
	document.getElementById('color').style.visibility = 'visible';
	document.getElementById('img'+element).style.background = 'url(img/color2.gif)';
	selectHide();
}
function hideColor(element)
{
	document.getElementById('color').style.display = 'none';
	document.getElementById('color').style.visibility = 'hidden';
	document.getElementById('img'+element).style.background = 'url(img/color.gif)';
	selectShow();
}
function selectHide()
{
	bn = navigator.appName;
	if(bn.toLowerCase() == "microsoft internet explorer" || bn.toLowerCase() == "netscape")
        {
		selects = document.getElementsByTagName("select");
		for (i = 0; i != selects.length; i++) 
		{
			selects[i].style.visibility = "hidden";
		}
	}
}
function selectShow()
{
	selects = document.getElementsByTagName("select");
	for (i = 0; i != selects.length; i++) 
	{
		selects[i].style.visibility = "visible";
	}
}

function createRequestObject()
{
	var request_o = null;
	
	try
	{
	if (window.XMLHttpRequest) // if Mozilla, Safari etc
		request_o = new XMLHttpRequest()
	else if (window.ActiveXObject){ // if IE
		try 
		{
			request_o = new ActiveXObject("Msxml2.XMLHTTP");
		} 
		catch (e)
		{
			try
			{
				request_o = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (e) { alert(e); }
		}
	}
	else
		alert('Can`t load');
	}
	catch (e) { alert(e); }
	return request_o; 
}

/* getData */

var current = null;
var j = 1;
var parameters = '';
var http = null;

function getContent(fld, arg)
{
	alert('Kaas');
}

function getContent(fld, arg, handler, verbose)
{
  alert(verbose);
  document.getElementById('fld').innerHtml = '<p><img src="../img/loading.gif" alt="Bezig met laden..." />'+verbose+'</p>';
//  getContent(fld, arg, handler);
}

function getContent(fld, arg, handler)
{
 	var temp = "getContentHandler('" + fld + "', '" + arg + "', "+handler+")";
  setTimeout(temp, 1);
 	j++;
}

function getContentHandler(fld, arg, handler)
{
  if (current == null) {
  	current = fld;
  	http = createRequestObject();
  	http.open('get', arg);
  	http.onreadystatechange = handler; 
  	http.send(null);
  }
  else {
  	var temp = "getContentHandler('" + fld + "', '" + arg + "', "+handler+")";
	  setTimeout(temp, 1);
  	j++;
  }
}

function handleContent()
{
	if(http.readyState == 4)
	{
		var response = http.responseText;
		document.getElementById(current).innerHTML = response;
		current = null;
	}
}

function handleContent2()
{
	if(http.readyState == 4)
	{
		alert(current);
		var response = http.responseText;
		document.getElementById(current).innerHTML = response;
		current = null;
	}
}

function handleContentAddClass()
{
	if(http.readyState == 4)
	{
		var response = http.responseText;
		document.getElementById(current).innerHTML = response;
		document.getElementById(current).className+= " loaded";
		current = null;
	}
}

function handleContentDelTime()
{
	if(http.readyState == 4)
	{
		var response = http.responseText;
		document.getElementById(current).innerHTML = response;
    if (response.substring(12,18) == "succes")
      setTimeout("document.getElementById('"+current+"').style.display = 'none';", 2000);
		current = null;
    updatePercentage();
	}
}

percDone = 0;
percTotal = 0;
function updatePercentage(fld) {
  try {
    percDone++;
    var p = new Number((percDone/percTotal)*100);
    document.getElementById('percentageComplete').innerHTML = p.toFixed(2);
  } catch(e) {alert(e);}
}

function handleAddContent()
{
	if(http.readyState == 4)
	{
		var response = http.responseText;
		document.getElementById(current).innerHTML += response;
		current = null;
	}
}

function handleImg()
{
	if(http.readyState == 4)
	{
		var response = http.responseText;
		document.getElementById(current).src = response;
		current = null;
	}
}

function handleContent()
{
	if(http.readyState == 4)
	{
		var response = http.responseText;
		document.getElementById(current).innerHTML = response;
		current = null;
	}
}

function getModOptions(isUbb)
{
	current = 'modOptions';
	document.getElementById(current).innerHTML = "<img src='images/loading.gif' />";
	if (isUbb) 
	{
		http.open('get', 'getModOption.php?q='+document.getElementById('selectMod').options[document.getElementById('selectMod').selectedIndex].value+'&ubb=true');
	}
	else
	{
		http.open('get', 'getModOption.php?q='+document.getElementById('selectMod').options[document.getElementById('selectMod').selectedIndex].value);	
	}
	http.onreadystatechange = handleContent; 
	http.send(null);
}

function bannerPartnerInfo( id )
{
	document.getElementById( 'partner'+id ).style.display='block';
	getContent( 'moreInfo'+id, '../banner/inc.banner.partnerinfo.php?q='+id, handleContent );
}
function bannerStats( id )
{
	document.getElementById( 'moreStats' ).innerHTML = "<br /><br /><img src='../img/loading.gif'> Bezig met ophalen statistieken...";
	getContent( 'moreStats', '../banner/inc.banner.stats.php?q='+id, handleContent );
}
function deleteBanner( id, d )
{
	if ( window.confirm( "Weet u zeker dat u deze banner wilt verwijderen?" ) )
	{
		document.getElementById( 'moreInfo'+id ).innerHTML = "<br /><br /><img src='../img/loading.gif'> Bezig met verweken gegevens...";
		document.getElementById( 'partner'+id ).style.display='block';
		getContent( 'moreInfo'+id, '../banner/inc.banner.partnerinfo.php?q='+id+'&d='+d, handleContent );
	}
}


/* HEADER SECTIONS CODE */

function openSection( sect )
{
	var e = document.getElementById( "h"+sect );
	var d = document.getElementById( sect );

	if (e.className == "header_sel") 
	{ 
		e.className = "header";
		d.style.display = "none";
		
	} 
	else 
	{ 
		e.className = "header_sel";
		d.style.display = "block";
	}	
}

/* INPUTFIELD RUNTIME CHANGE */

function openCfg( fld )
{
	document.getElementById( fld+'Opt' ).style.display ="block";
	document.getElementById( fld+'Normal' ).style.display ="none";
}
function saveCfg( fld )
{
	var txt = document.getElementById( fld+'Input' ).value;
	var pr =  document.getElementById( fld+'Value' );
	
	if (txt == "")
	{
		pr.innerHTML = '<i>&nbsp;&nbsp;&nbsp;Geen&nbsp;&nbsp;&nbsp;</i>';
	}
	else
	{
		pr.innerHTML = txt;
	}
	document.getElementById( fld ).value = txt;
	document.getElementById( fld+'Normal' ).style.display ="inline";
	document.getElementById( fld+'Opt' ).style.display ="none";

}

  function sp(search, area) {
    p = document.getElementById(area);
    search = search.toLowerCase();
  	for(var i=0; i<p.childNodes.length; i++){
  	  try{

				if (p.childNodes[i].title == undefined || p.childNodes[i].title == '')
  		    p.childNodes[i].style.display = "block";
  		  else if (p.childNodes[i].title.indexOf(search) >= 0 || search == "")
  		    p.childNodes[i].style.display = "block";
  		  else
  		    p.childNodes[i].style.display = "none";		
  		} catch(e) { }
  	}
  }

  function changePerm(id,fld,type,lvl)
  {
    document.getElementById(fld).src = '../img/bullet_gray.png';
    var url = './inc.perm.change.php?u='+id+'&c='+type+'&l='+lvl+'';
    getContent(fld, url+'&', 'handleImg');
	}	
  
  function changeBinPerm(id,fld,type)
  {
    document.getElementById(fld).src = '../img/bullet_gray.png';
    var url = './inc.perm.change.php?u='+id+'&c='+type+'&q='+fld.substring(6);
    getContent(fld, url+'&', 'handleImg');
	}

function openFormSection(el) {
	$(el).next("fieldset").toggle("slow");
}

/* LogoCutter */

function lightbox(p, setid, param) {
	$("#lightbox, #lightbox_content").fadeIn('fast');
  $.ajax({
	  	context: $('#lightbox_content'),
 			url: '../plugin/load.php?p='+p+'&setid='+setid,
			type: "GET",
			data: param,
 			beforeSend: function() {  $(this).html("Loading data..."); },
 			success: function(data) { $(this).html(data); },
 			error: function(XMLHttpRequest, textStatus, errorThrown) { alert(textStatus); }
 	});  	
}

function lightboxOff() {
	$("#lightbox_content").html("Closing...");
	$("#lightbox, #lightbox_content").fadeOut('fast');
}



function imgResizeObject(el) {
	this.el = el;
	this.img = '';
	this.x = 10;
	this.y = 10;
	this.w = 10;
	this.h = 10;
	this.imgw = 0;
	this.imgh = 0;
	this.border = 30;
}


imgResizeObject.prototype.updateval = function() {
	if (document.getElementById(iro.el) != undefined) {
		document.getElementById(iro.el).style.top = iro.y+iro.border+'px';
		document.getElementById(iro.el).style.left = iro.x+iro.border+'px';
		document.getElementById(iro.el).style.height = iro.h+'px';
		document.getElementById(iro.el).style.width = iro.w+'px';					
	}
}

imgResizeObject.prototype.setx = function(val) {
	iro.y += val*1;	
	iro.updateval();
}

imgResizeObject.prototype.sety = function(val) {
	iro.x -= val*1;
	iro.updateval();		
}

imgResizeObject.prototype.setzoom = function(val) {		
	iro.w += 1*val;
	iro.h += val*(iro.imgh/iro.imgw);
	iro.x -= (val*(iro.imgh/iro.imgw))/4;
	iro.y -= val/4;
	iro.updateval();
}		
		
imgResizeObject.prototype.setzoomorg = function() {		
	iro.w = iro.imgw;
	iro.h = iro.imgh;			
	iro.x = 0;
	iro.y = 0;	
	iro.updateval();
}
	
imgResizeObject.prototype.val = function() {
	if (document.getElementById('step') != null)
		return document.getElementById('step').value;
	return 1;
}

imgResizeObject.prototype.pushdata = function(data) {
	if (data != undefined && data.error == "") {
		$("#"+iro.el).attr('src', data.url);
		iro.img = data.url					
		iro.imgw = data.imgwidth;
		iro.imgh = data.imgheight;
		iro.w = data.width;
		iro.h = data.height;
		iro.x = data.x;
		iro.y = data.y;
		iro.updateval();
	}
}

imgResizeObject.prototype.loadimage = function(id) {
	$.getJSON('../plugin/img.resize.getimg.php?id=', {"id": id},
		function(data) {
			iro.pushdata(data);
		}
	);
}
