/*    Start  -  Bepalen browser    */

var browser = navigator.appName;
var browser_versie_lang = navigator.appVersion;
var browser_versie = null;

function get_browser_informatie()
{
var versie_hulp = parseFloat(browser_versie_lang);
browser_versie = versie_hulp;
if ((browser == "Microsoft Internet Explorer")  && (versie_hulp >= 4 ))
   {
	 browser_versie = parseFloat(browser_versie_lang.slice(browser_versie_lang.search(/msie/i)+5));
	 if(isNaN(browser_versie))
	    browser_versie = versie_hulp;
	 }
if ((browser == "Microsoft Internet Explorer")  && (browser_versie <= 8 ))
	 opacity_mode = false;    //  filter:alpha
else
	 opacity_mode = true;
}	 

get_browser_informatie();

/*    Einde  -  Bepalen browser    */


/*    Start  -  Bepalen schermresolutie & beschikbare resolutie    */

var schermresolutie_breedte = 0;
var schermresolutie_hoogte = 0;
var scherm_beschikbare_breedte = 0;
var scherm_beschikbare_hoogte = 0;

function get_schermresolutie()
{
schermresolutie_breedte = screen.width;
schermresolutie_hoogte = screen.height; 
scherm_beschikbare_breedte = screen.availWidth; 
scherm_beschikbare_hoogte = screen.availHeight; 
}

get_schermresolutie();    //  Initiële bepaling

/*    Einde  -  Bepalen schermresolutie & beschikbare resolutie    */


/*    Start  -  Bepalen actual window size & X/Y-positie    */

var window_breedte = 0;
var window_hoogte = 0;
var page_offset_x = 0;
var page_offset_y = 0;

function get_window_properties()
{
if (typeof(window.innerWidth) == 'number')
   {
   //  Non-IE
   window_breedte = window.innerWidth;
   window_hoogte = window.innerHeight;
   page_offset_x = window.pageXOffset;
   page_offset_y = window.pageYOffset;
   }
else if (document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight))
   { 
   //  IE 6+ in 'standards compliant mode'
   window_breedte = document.documentElement.clientWidth;
   window_hoogte = document.documentElement.clientHeight;
   page_offset_x = document.documentElement.scrollLeft;
   page_offset_y = document.documentElement.scrollTop; 
   }
else if (document.body && (document.body.clientWidth || document.body.clientHeight))
   {
   //  IE 4 compatible
   window_breedte = document.body.clientWidth;
   window_hoogte = document.body.clientHeight;
   page_offset_x = document.body.scrollLeft;
   page_offset_y = document.body.scrollTop; 
   }
}

get_window_properties();    //  Initiële bepaling

/*    Einde  -  Bepalen actual window size & X/Y-positie    */


/*    Start  -  Houd niet gewenst kopieëren van foto's in de perken    */

var node_copy_image;

//function onmouseout_ie8()    //  Alleen voor testen; moet er straks uit  -  NEE, BEWAREN VOOR TESTEN BIJ NIEUWE VERSIES / BROWSERS
//{
//document.getElementById("left_top").innerHTML = node_copy_image.box_x + " - " + node_copy_image.box_y;
//document.getElementById("afmeting").innerHTML = node_copy_image.offsetWidth + " : " + node_copy_image.offsetHeight;
//document.getElementById("offset_xy").innerHTML = node_copy_image.offset_x + " : " + node_copy_image.offset_y;
//document.getElementById("curpos").innerHTML = node_copy_image.cursor_x + " : " + node_copy_image.cursor_y;
//document.getElementById("dummy_ie8").innerHTML = event.clientX + " : " + event.clientY;
//}


//function redisp_box_xy (x,y)    // ten behoeve van testen
//{
//x -= 1;
//y -= 1;
//node_copy_image.style.left = x + "px";
//node_copy_image.style.top = y + "px";
//node_copy_image.style.visibility = "visible";
//alert('check');
//}

function corrigeer_box_xy (top_x, top_y, hoogte, offset_cursor_y)
{
var randje = 2;    //  open randje van x pixels
//  correctie-faktoren per browser indien nodig (default nul)
//  NOG WEL TE TESTEN INDIEN HORIZONTALE SCHUIFBALK PRESENT
var cf_y_bottom = cf_y_top = cf_x_left = 0;

//  bottom  -  bij smal venster preveleert de bovenkant boven de onderkant, dus onderkant eerst doen; bovendien geen cursor/handje probleem
if ((top_y + hoogte + randje) > (window_hoogte + cf_y_bottom))
   {
//	 alert('bottom');
   var verschil = ((top_y + hoogte + randje) - (window_hoogte + cf_y_bottom));
   top_y = top_y - verschil;
   offset_cursor_y = offset_cursor_y - verschil;
//	 redisp_box_xy (top_x,top_y);
	 }

//  left  -  als de box naar rechts moet verscuiven kan de cursur / het handje over de tekst komen, dus moet de box dan omhoog, maar
//            kan daardoor weer onder de bovenrand schuiven, dus links eerst
if ((top_x - randje) < cf_x_left)    //  eigenlijk:  kleiner dan (nul plus correctie)    [n.b.: correctie kan natuurlijk ook negatief zijn]
   {
//	 alert('left');
	 top_x = top_x + (cf_x_left - (top_x - randje));
//	 redisp_box_xy (top_x,top_y);
//	 alert('cursor over tekst');
	 top_y = top_y - offset_cursor_y + 10;    //  in verband met het handje (de cursor)
//	 redisp_box_xy (top_x,top_y);
	 } 

//  top
if ((top_y - randje) < cf_y_top)    //  eigenlijk:  kleiner dan (nul plus correctie)    [n.b.: correctie kan natuurlijk ook negatief zijn]
   {
//	 alert('top');
	 top_y = top_y + (cf_y_top - (top_y - randje));
//	 redisp_box_xy (top_x,top_y);
	 }
  	 
return [top_x,top_y,offset_cursor_y]
}


function image_oncontextmenu (evnt)    //  Om het kopieëren van foto's (zoveel mogelijk) tegen te gaan
{
if (node_copy_image != null)
	 var v = node_copy_image;
else
   {
   node_copy_image = document.body.appendChild(document.createElement('div'));    //  Een <p> gaf 16 pixels extra aan de bovenzijde
	 var v = node_copy_image;
   v.style.visibility = "hidden";
   v.style.position = "fixed";
   v.style.padding = "16px";
   v.style.backgroundColor = "#e0b2ff";
   var border_breedte = 4;
   v.style.borderWidth = border_breedte + "px";
   v.style.borderStyle = "solid";
   v.style.borderColor = "#888888";
	 if ($Pagina != "pers")
	    {
      v.style.cursor = "pointer";    // Eerst pointer, dan hand; in die volgorde
      v.style.cursor = "hand";       // Schijnt niet meer te hoeven; IE pakt pointer nu ook; FF geeft er een waarschuwing voor; maar laat maar staan
      v.onclick = function() {window.location.assign('pers.php');};
//      v.onclick = function() {window.location.assign('http://www.simonezingt.nl/pers.php');};    //  Voor testen op de server thuis 
      v.innerHTML = "Op de pers-pagina zijn<br />enkele foto's te downloaden" +
                          "<br /><br />" +
                          "Klik hier als je naar de<br />pers-pagina wilt gaan";
	    }
   else
	    {			
      v.onclick = function() {v.style.visibility = "hidden";};
      v.innerHTML = "Klik met de andere muisknop" +
                          "<br /><br />" +
                          "voor een vergroting";
	    }			
   }
if (!((browser_naam == "Internet Explorer") && (browser_versie == "8")))   //  Wordt bepaald in bepaal_cursor_positie op document.body niveau
   v.onmouseout = function() {v.style.visibility = "hidden";};
//else                                                                       //  Alleen voor testen;
//   v.onmousemove = function() {onmouseout_ie8();};    //  moet er straks uit
var cursor_x = evnt.clientX;
var cursor_y = evnt.clientY;
v.cursor_x = cursor_x;
v.cursor_y = cursor_y;
if ((browser_versie == "7") && (browser_naam == "Internet Explorer"))
   {
	 cursor_x -= 2;
	 cursor_y -= 2;
	 }
v.style.fontSize = "0.6em";
var offset_x = 30;
var offset_y = offset_x;
v.box_x = cursor_x - v.offsetWidth + offset_x;
v.box_y = cursor_y - v.offsetHeight + offset_y;
/*    Start - ten behoeve van testen    */
//v.style.left = v.box_x + "px";
//v.style.top = v.box_y + "px";
//v.style.visibility = "visible";
/*    Einde - ten behoeve van testen    */
var ar_box_xy = corrigeer_box_xy (v.box_x, v.box_y, v.offsetHeight, offset_y);
v.box_x = ar_box_xy[0];
v.box_y = ar_box_xy[1];
offset_y = ar_box_xy[2];
v.offset_x = offset_x;
v.offset_y = offset_y;    //  Kan gewijzigd zijn in v.box-xy
v.style.left = v.box_x + "px";
v.style.top = v.box_y + "px";
v.style.visibility = "visible";
return false;
}


function protect_images()    //  Om het kopieëren van foto's (zoveel mogelijk) tegen te gaan
{
var ar_img = document.images;
for (x=0; x<ar_img.length; x++)
  {
	hlp_img = ar_img[x];
  if (browser_naam != "Firefox")
     hlp_img.oncontextmenu = function() {return image_oncontextmenu(event);};
  else
     hlp_img.setAttribute("oncontextmenu","return image_oncontextmenu(event)");
  }
}

/*    Einde  -  Houd niet gewenst kopieëren van foto's in de perken    */


/*    Start  -  Houd indringers buiten de deur (-algoritme)    */

//  De $-tekens voor de variabel-namen moeten nog weg

var $commissie_maand = 0;
var $commissie_jaar = 0;

function commissie_datum()
{
var $commissie_today=new Date();
$commissie_maand = $commissie_today.getSeconds() + 321;
$commissie_jaar = $commissie_maand * 2 * 3 * 0.5;
}

/*    Einde  -  Houd indringers buiten de deur (-algoritme)    */


/*    Start  -  Algemene en binnenkomst routines - nog te documenteren    */

function bepaal_cursor_positie (evnt)
{
mouse_x = evnt.clientX;    //  global variable
mouse_y = evnt.clientY;    //  global variable
//document.getElementById("disp_cur_pos").innerHTML = mouse_x + " : " + mouse_y;                       //  Alleen voor testen;
//get_window_properties();                                                                                                    //  MAAR  WEL  LATEN  STAAN  VOOR BIJ  NIEUWE  VERSIES / BROWSERS
//document.getElementById("disp_window").innerHTML = window_breedte + " : " + window_hoogte;    //  moet er straks uit

//  Het volgende is ten behoeve van de functie image_oncontextmenu.
//  In IE-8 wordt het event onmouseout spontaan te vroeg getriggered. Door op het hoogste niveau (document.body) van het event
//  onmousemove gebruik te maken en de cursor-positie te vergelijken met het venster uit image_oncontextmenu wordt die
//  onmouseout hieronder gesimuleerd. Vandaar dat er in de body tag voor onmousemove een verwijzing staat naar deze
//  functie bepaal_cursor_positie. 
if ((node_copy_image) && (node_copy_image.style.visibility == "visible"))
   if ((mouse_x < node_copy_image.box_x) || (mouse_x > (node_copy_image.box_x + node_copy_image.offsetWidth)) || 
       (mouse_y < node_copy_image.box_y) || (mouse_y > (node_copy_image.box_y + node_copy_image.offsetHeight)))
      node_copy_image.style.visibility = "hidden";            // Deze regel onderdrukken bij testen  -  WEL  WEER  TERUGZETTEN
}


function window_resized ()    //  parameter ?
{
save_window_breedte = window_breedte;
save_window_hoogte = window_hoogte;
bepaal_cursor_positie (event);
}

window.onresize = window_resized;    //  Let op: werkt niet in Firefox


function on_unload_pagina()
{
}


function on_load_pagina()
{
protect_images();
}

function anti_copy_fotoos()
{
on_load_pagina();
}

/*    Einde  -  Algemene en binnenkomst routines - nog te documenteren    */

