
/* NAVIGATION */

var focussed_hoofdmenu;

/* */
function gaNaar(url)
{
  document.location.href = url;
}

/* */
function gaNaarBladzijde(bladzijde)
{
  gaNaar(voegParameterToeAanURL(document.location.href, "blz", bladzijde));
}

/* */
function gaNaarPositie(naam)
{
  document.location.href = "#" + naam;
}

/* zoek machine */
function gaNaarResultaten(bladzijde)
{
  (document.getElementById('blz')).value = bladzijde;
  
  submitFormulier("zoeken", "zoekmachine");
}

/* */
function gaNaarURL(url, opgegeven_kant)
{
  if(opgegeven_kant == kant)
  {
    document.location.href = url;
  }
}

/* */
function openCustomPopup(url, breedte, hoogte)
{
  window.open(url, "", "height=" + hoogte + "px,left=200px,resizable=yes,scrollbars=yes,top=200px,width=" + breedte + "px");
}

/* */
function openCustomPopupCentered(url, breedte, hoogte)
{
  window.open(url, "", "height=" + hoogte + "px,left=" + (((screen.width - breedte) / 2)) + "px,resizable=yes,scrollbars=yes,status=1,top=" + (((screen.height - hoogte) / 2)) + "px,width=" + breedte + "px");
}

/* */
function openPopup(url)
{
  window.open(url, "", "height=300px,left=200px,top=200px,width=420px");
}

/* */
function openPopupFullscreen(url)
{
  window.open(url, "", "height=" + (screen.height - 36) + "px,left=0px,resizable=yes,top=0px,width=" + (screen.width - 8) + "px");
}

/* */
function openWindow(url)
{
	window.open(url, "", "location=yes,status=yes,menubar=yes,toolbar=yes,resizable=yes,scrollbars=yes");
}

/* */
function stuurDoor(pagina_id)
{
  openCustomPopupCentered(pad + 'template/popup/vertel_een_vriend.php?pagina_id=' + pagina_id + '', '480', '240');
}

/* */
function verversParentScherm()
{
	self.opener.location.href = self.opener.location.href;
}

/* */
function verversScherm()
{
  document.location.href = document.location.href;
}

/* */
function volgendeBladzijde()
{
  gaNaar(voegParameterToeAanURL(document.location.href, "blz", (parseInt(blz) + 1)));
}

/* */
function vorigeBladzijde()
{
  gaNaar(voegParameterToeAanURL(document.location.href, "blz", (parseInt(blz) - 1)));
}


/* GUI METHODEN */

/*
  bestand invoegen
*/
function bestandInvoegen(bestand, veld_id)
{
  (document.getElementById(veld_id)).value = bestand;
  
  if(document.getElementById("afbeelding_" + veld_id) != null)
  {
    document.getElementById("afbeelding_" + veld_id).src = upload_pad + bestand;
  }
}

function bestandRemoteInvoegen(bestand, veld_id)
{ 
  self.opener.bestandInvoegen(bestand, veld_id);
  
	window.close();
}

function flashInvoegen(bestand, veld_id, width, height)
{
	/*var flash_code = ''+
									 '<script type="text/javascript">'+
									 '  AC_FL_RunContent("codebase","http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0","width","' + width + '","height","' + height + '","id","magazine","align","middle","src","swf_' + veld_id + '","quality","high","bgcolor","#ffffff","name","swf_' + veld_id + '","allowscriptaccess","sameDomain","pluginspage","http://www.macromedia.com/go/getflashplayer","movie","' + pad + 'uploads/' + bestand + '" );'+
									 '</script>'+
									 '<noscript>'+
									 ' <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="' + width + '" height="' + height + '" id="swf_' + veld_id + '" align="middle">'+
									 '    <param name="allowScriptAccess" value="sameDomain" />'+
									 '    <param name="movie" value="' + pad + 'uploads/' + bestand + '" />'+
									 '    <param name="quality" value="high" />'+
									 '    <param name="bgcolor" value="#ffffff" />'+
									 '    <embed src="' + pad + 'uploads/' + bestand + '" quality="high" bgcolor="#ffffff" width="' + width + '" height="' + height + '" name="swf_' + veld_id + '" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />'+
									 '  </object>'+
									 '</noscript>';
	
	if(document.getElementById(veld_id) != null)
	{
		(document.getElementById(veld_id)).value = flash_code;
	}
  
  if(document.getElementById("flash_" + veld_id) != null)
  {
    document.getElementById("flash_" + veld_id).innerHTML = flash_code;
  }*/
	
	if(document.getElementById(veld_id) != null)
	{
		(document.getElementById(veld_id)).value = bestand;
	}	
}/**/

function flashRemoteInvoegen(bestand, veld_id, width, height)
{
  self.opener.flashInvoegen(bestand, veld_id, width, height);
  
	window.close();
}/**/


/* 
  selecteer template type
*/

function selecteerTemplateType(sectie_id, template_type)
{
  var static_selector  = document.getElementById("sectie_" + sectie_id + "_static");
  var pointer_selector = document.getElementById("sectie_" + sectie_id + "_pointer");
  var custom_selector  = document.getElementById("sectie_" + sectie_id + "_custom");
  
  static_selector.style.visibility  = (template_type == "static"  ? "visible" : "hidden");
  pointer_selector.style.visibility = (template_type == "pointer" ? "visible" : "hidden"); 
  custom_selector.style.visibility  = (template_type == "custom"  ? "visible" : "hidden");

  static_selector.style.position  = (template_type == "static"  ? "relative" : "absolute");
  pointer_selector.style.position = (template_type == "pointer" ? "relative" : "absolute"); 
  custom_selector.style.position  = (template_type == "custom"  ? "relative" : "absolute");
  
  var type_selector = document.getElementById("sectie_" + sectie_id + "_type");
  
  for(var i = 0; i < type_selector.options.length; i++)
  {
    if(type_selector.options[i].value == template_type)
    {
      type_selector.selectedIndex = i;
      
      break;
    }
  }
}

/*
  bewerk blok
*/

function bewerkBlok(template_id)
{
  openCustomPopupCentered(pad + "php/util/popup/blok.php?template_id=" + template_id, 566, 600);
}

/*
  bewerk template
*/

function bewerkTemplate(template_id)
{
  openCustomPopupCentered(pad + "php/util/popup/template.php?template_id=" + template_id, 506, 600);
}

function bewerkTemplateWizzard(template_id)
{
  openCustomPopupCentered("nieuw.stap1.php?template_id=" + template_id, 540, 560);
  
  return false;
}

function verplaatsTemplate(template_id, richting)
{
  document.getElementById('id').value     = template_id;
  document.getElementById('waarde').value = richting;
  
  submitFormulier('verplaats', 'template');
}


/* FORM METHODEN */

/*
  item gewijzigd
*/

function isGewijzigd(id, sectie)
{
  //item(s)
  document.getElementById("id").value += (id + ",");
  
  //sectie(s)
  document.getElementById("sectie").value += (sectie + ",");  
}

/*
*/

function zetGewijzigd(id)
{
  document.getElementById("id").value = id;
}

/*
  item toevoegen
*/

function itemToevoegen(object, item_id)
{
  document.getElementById("id").value = item_id;
  
  submitFormulier("toevoegen", object);
}

/*
  item toevoegen aan sectie
*/

function bepaaldeTemplateToevoegenAanSectie(object, pagina_id, sectie_id, template_naam)
{
  document.getElementById("pagina").value = pagina_id;
  document.getElementById("sectie").value = sectie_id;  
  document.getElementById("id").value = template_naam;
	
  submitFormulier("toevoegen", object);
}

function itemToevoegenAanSectie(object, pagina_id, sectie_id, item_type)
{
  document.getElementById("pagina").value = pagina_id;
  document.getElementById("sectie").value = sectie_id;
  document.getElementById("id").value     = item_type;
  
  submitFormulier("toevoegen", object);
}

function templateToevoegenAanSectie(object, pagina_id, sectie_id)
{
  document.getElementById("pagina").value = pagina_id;
  document.getElementById("sectie").value = sectie_id;  
  var template_type                       = document.getElementById("sectie_" + sectie_id + "_type");
  template_type                           = template_type.options[template_type.selectedIndex].value;
  var template_naam                       = document.getElementById("sectie_" + sectie_id + "_" + template_type);
  
  if(template_naam != null)
  {
    template_naam                           = template_naam.options[template_naam.selectedIndex].value; 
    document.getElementById("id").value     = template_naam;
    
    if(template_type != "" && template_naam != "")
    {     
      submitFormulier("toevoegen", object);
    }
    else
    {
      alert("U heeft geen geldige template geselecteerd");
    }
  }
  else
  {
    alert("U heeft geen geldige template type geselecteerd");
  }
}

/* 
  item toevoegen aan template
*/

function blokToevoegenAanTemplate(template_id)
{
  var template_naam                         = document.getElementById("template_" + template_id + "_blok");
  template_naam                             = template_naam.options[template_naam.selectedIndex].value; 
  document.getElementById("id").value       = template_naam;
  document.getElementById("template").value = template_id;
  
  submitFormulier("toevoegen", "blok"); 
}

/*
  item verwijderen
*/

function itemVerwijderen(object, item_id)
{
  document.getElementById("id").value = item_id;
  
  if(confirm("Weet u zeker dat u dit item wilt verwijderen?") == true)
  {
    submitFormulier("verwijderen", object);
  }
}

/*
  item verwijderen uit sectie
*/

function itemVerwijderenUitSectie(object, sectie_id, item_id)
{
  document.getElementById("sectie").value = sectie_id;
  document.getElementById("id").value = item_id;  
  
  submitFormulier("verwijderen", object);
}

/*
  item wijzigen
*/

function itemWijzigen(object, item_id)
{
  document.getElementById("id").value = item_id;
  
  submitFormulier("wijzigen", object);
}

/*
  item (on)zichtbaar maken
*/

function itemZichtbaar(object, item_id)
{
  isGewijzigd(item_id); 
  var zichtbaar = document.getElementById(item_id + "_zichtbaar").value;
  
  if(zichtbaar == "0")
  { //maak zichtbaar
    document.getElementById(item_id + "_zichtbaar").value           = "1";
  }
  else
  { //maak onzichtbaar
    document.getElementById(item_id + "_zichtbaar").value           = "0";
  }
}

/*
  submit (globaal) formulier
*/

function submitFormulier(actie, object)
{
  //zet actie
  document.getElementById("actie").value = actie;
  
  //zet object
  document.getElementById("object").value = object;
  
  //submit formulier
  document.getElementById("globaal_formulier").submit();
}

/*
*/

function selecteerModus(modus)
{
  var url = document.location.href;
  
  url     = voegParameterToeAanURL(url, "modus", modus);
  
  gotoURL(url);
}

/*
*/

function geefLinkGegevens(naam)
{
	var linknaam = document.getElementById("linknaam_" + naam).value;
	var linkurl  = document.getElementById("linkurl_" + naam).value;
	
	return new Array(linknaam, linkurl);
}

function voegLinkAanLinklijstToe(id, groep)
{
	//openCustomPopupCentered(pad + "php/util/popup/linklijst.php?template_id=" + id + "&groep=" + groep, 500, 200);
  
  isGewijzigd(id);
	
	document.getElementById("sectie").value = groep;
  
  submitFormulier("toevoegen", "url");
}

function wijzigLink(id)
{
	openCustomPopupCentered(pad + "php/util/popup/link.php?id=" + id, 500, 200);
}

function wijzigLinklijst(id)
{
  openCustomPopupCentered(pad + "php/util/popup/linklijst.php?id=" + id, 500, 200);
}

function zetLinkGegevens(naam, linknaam, linkurl)
{
	document.getElementById("linknaam_" + naam).value = linknaam;
	
	document.getElementById("linkurl_" + naam).value = linkurl;
	
	linkGewijzigd(naam);
}

function linkGewijzigd(naam)
{
	document.getElementById("id").value = naam;
	
	submitFormulier("wijzigen", "url");
}


/* GLOBAL */

//depricated
function gotoURL(url)
{
  document.location.href = url;
}


/*
  UTIL
*/

function geefObject(id)
{
  var object = document.getElementById(id);
  
  return object;
}

function geefObjectPositie(obj)
{
	var curleft   = 0;
	var curtop    = 0;
	
	if(obj.offsetParent)
	{
		curleft   = obj.offsetLeft;
		curtop    = obj.offsetTop;
		
		while(obj = obj.offsetParent) 
		{
			curleft   += obj.offsetLeft;
			curtop    += obj.offsetTop;
		}
	}
	
	return [curtop, curleft];
}

function transformeerDatum(bron_object_id, doel_object_id)
{
  var datum       = document.getElementById(bron_object_id).value;
  
  var datum_array = datum.split("-");
  
  document.getElementById(doel_object_id).value = (datum_array[2] + "-" + datum_array[1] + "-" + datum_array[0]);
}

function verwijderParameterUitURL(url, naam)
{
  var url_splitted = url.split("?");  
  var url          = url_splitted[0];
  
  if(url_splitted.length > 1)
  {
    var params = url_splitted[1];
    
    if(params.indexOf("&") > 0)
    {
      var param_array = params.split("&");

      for(var p = 0; p < param_array.length; p++)
      {
        var param_name = param_array[p].split("=");
        
        if(param_name[0] != naam)
        {
          url += (p == 0 ? "?" : "&") + param_array[p];
        }
      }
    }
    else
    {
      var param_name = params.split("=");
      
      if(param_name[0] != naam)
      {
        url += "?" + params;
      }
    }
  }
  
  return url;
}

function voegParameterToeAanURL(url, naam, waarde)
{
  url = verwijderParameterUitURL(url, naam);
  
  if(url.indexOf("?") > 0)
  {
    url += "&" + naam + "=" + waarde;
  }
  else
  {
    url += "?" + naam + "=" + waarde;
  }
  
  return url;
}

function zetDatumTijd(object_id, type, field, value)
{
  var object = document.getElementById(object_id);
  var object_value = object.value;
  
  //the value of the object has not beed set yet
  if(object_value == "")
  {
    if(type == "date")
    {
      object_value = "0000-00-00";
    }
    if(type == "time")
    {
      object_value = "00:00:00";
    }
    if(type == "datetime")
    {
      object_value = "0000-00-00 00:00:00";
    }
  }
  
  var new_object_value = "";
  
  //process date
  if(type == "date" || type == "datetime")
  {
    var date       = object_value.split(" ");
    var date_array = date[0].split("-");
    
    if(field == "day")  { date_array[2] = value; }
    if(field == "month"){ date_array[1] = value; }
    if(field == "year") { date_array[0] = value; }
    
    new_object_value += date_array[0] + "-" + date_array[1] + "-" + date_array[2];
  }
  
  //process time
  if(type == "time" || type == "datetime")
  {
    var time       = object_value.split(" ");
    var time_array = (type == "datetime" ? time[1].split(":") : time[0].split(":"));
    
    if(field == "hour")  { time_array[0] = value; }
    if(field == "minute"){ time_array[1] = value; }
    if(field == "second"){ time_array[2] = value; }
    
    new_object_value += (type == "datetime" ? " " : "") + time_array[0] + ":" + time_array[1] + ":" + time_array[2];
  }
  
  object.value = new_object_value;
  
  return new_object_value;
}

/*
	item specefieke functie(s)
*/

function geefVoorgedefineerdePaginaTemplateId(pagina_id, sectie_id)
{
	var selectbox_object = document.getElementById(pagina_id + "_" + sectie_id + "_selectbox");
	
	return selectbox_object.options[selectbox_object.selectedIndex].value;
}