// JavaScript Document

// BROWSERDETECTIE
var d, dom, ie, ie4, ie5x, moz, mac, win, lin, old, ie5mac, ie5xwin, op;

d = document;
n = navigator;
na = n.appVersion;
nua = n.userAgent;
win = ( na.indexOf( 'Win' ) != -1 );
mac = ( na.indexOf( 'Mac' ) != -1 );
lin = ( nua.indexOf( 'Linux' ) != -1 );

if ( !d.layers ){
	dom = ( d.getElementById );
	op = ( nua.indexOf( 'Opera' ) != -1 ); 					// OPERA
	konq = ( nua.indexOf( 'Konqueror' ) != -1 ); 			// KONQUEROR (LINUX)
	saf = ( nua.indexOf( 'Safari' ) != -1 ); 				// SAFARI (MAC)
	moz = ( nua.indexOf( 'Gecko' ) != -1 && !saf && !konq); // FIREFOX
	ie = ( d.all && !op ); 									// IE < 4 --- ??? ---
	ie4 = ( ie && !dom ); 									// IE 4

	/*
	ie5x tests only for functionality. ( dom||ie5x ) would be default settings. 
	Opera will register true in this test if set to identify as IE 5
	*/

	ie5x = ( d.all && dom ); 								// IE 5 
	ie5mac = ( mac && ie5x ); 								// IE 5 (MAC)
	ie5xwin = ( win && ie5x ); 								// IE 5 (WIN)
}

// ------------------------------------------------------------------------------------------

// SCHERMGROOTTE BEPALEN
var myHeight = 0, myWidth = 0, boolImg = 1;

if( typeof( window.innerWidth ) == 'number' ) {
	//Non-IE
	myWidth = window.innerWidth;
	myHeight = window.innerHeight;
} else if( document.documentElement && ( document.documentElement.clientWidth || 
												document.documentElement.clientHeight ) ) {
	//IE 6+ in 'standards compliant mode'
	myWidth = document.documentElement.clientWidth;
	myHeight = document.documentElement.clientHeight;
} else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
	//IE 4 compatible
	myWidth = document.body.clientWidth;
	myHeight = document.body.clientHeight;
}

// ------------------------------------------------------------------------------------------

// AFBEELDINGEN ALLEEN NAAST NAVIGATIEBALK ZETTEN ALS HET VENSTER GROOT GENOEG IS
if(myWidth < 920) {
	boolImg = 0;
}

function imgInvoegen() {
	//if(boolImg) {
	//	document.write('<td align="center" valign="middle">');
	//	document.write('<img src="afbeeldingen/logotrans.gif" alt="WinFakt!" /></td>');
	//}
}

// ------------------------------------------------------------------------------------------

// CENTREREN WORDT BEMOEILIJKT DOOR SCROLLBAR
function kolomInvoegen() {
	if(op) {
		document.write('<td width="18"></td>');
	} else if(moz) {
		document.write('<td width="19"></td>');
	} else { // IE = standaard
		document.write('<td width="18"></td>');
	}
}

// ------------------------------------------------------------------------------------------

// POPUP MET FOTO OP ORIGINELE GROOTTE OPENEN
// pg = html-page - eventueel gewoon url van foto, w = width van foto, h = height van foto
function openwin(pg,w,h) {
	// GEEN SCROLLBARS (normaal niet nodig)
	if(moz) {
		w = w + 19;
	}
	
	var raampje = open("leeg.htm","_blank","width=" + w + ",height=" + h + 
					   ",status=no,toolbar=no,menubar=no,margin=0");
	// OPM: #: leeg, verder invullen
	//		pg: pagina of afbeelding meegeven
	// OPM: _blank: telkens nieuwe popup
	//		popup: (= naam) alles in 1 popup
	
	// RAAMPJE INVULLEN
	raampje.document.open();
	 // HTML: OPENEN
	raampje.document.write('<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"' + 
		'"http://www.w3.org/TR/html4/loose.dtd"><html><head><title>WinFakt! Help - Voorbeeld</title>' + 
		'<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">' + 
		'<link rel="stylesheet" type="text/css" href="bestanden/stijl.css" />' + 
		'</head><body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"' +
		'link="#007DC6" alink="#007DC6" vlink="#007DC6" class="voorgrond" onLoad="window.moveTo(' + 
		((myWidth - w) / 2) + ', ' + (myHeight - h) + ');">' + 
		'<table id="tblMarges" border="0" cellpadding="0" cellspacing="0"' + 
		'width="100%" height="100%"><tr height="' + h + '" valign="top"><td>');
	 // INHOUD PAGINA
	raampje.document.write('<img src="' + pg + '" alt="FOTO:oorspronkelijk formaat" class="gnmarge" />');
	 // HTML: SLUITEN
	raampje.document.write('</td></tr></body></html>');
	raampje.document.close();
}

// ------------------------------------------------------------------------------------------

// POPUP MET VOORBEELD VAN FORMULE OPENEN
// INITIALISATIES
var ditvb = 0;
var geopend = false;
var aantRegels = 33;
var arrFor = new Array(aantRegels);
for(i=1; i<=aantRegels; i++) { arrFor[i] = new Array(3); }
arrayVullen();

// POPUP MET VOORBEELDEN
// vb = tekst met html-code (praktijkvoorbeeld van een formule)
function openvb(vbnr) {	
	// ALLE VBN TSS  EN 1 EN aantRegels
	if(vbnr > aantRegels) { ditvb = 1; } else if(vbnr < 1) { ditvb = aantRegels; } else { ditvb = vbnr; }
	
	// RAAM MAKEN
	var raam = open("leeg.htm","popup","width=475,height=180" + 
					   ",status=no,toolbar=no,menubar=no,margin=0");
	
	// RAAM INVULLEN
	raam.document.open();
	 // HTML: OPENEN
	raam.document.write('<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"' + 
		'"http://www.w3.org/TR/html4/loose.dtd"><html><head><title>WinFakt! Help - Voorbeeld</title>' + 
		'<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">' + 
		'<link rel="stylesheet" type="text/css" href="bestanden/stijl.css" />' + 
		'<script type="text/javascript" language="javascript" src="bestanden/scriptje.js"></script>' + 
		'</head><body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"' +
		'link="#007DC6" alink="#007DC6" vlink="#007DC6" class="streepjes" ' + 
		'onLoad="window.moveTo(' + (myWidth / 2) + ', ' + (myHeight - 100) + ');">' + 
		'<table id="tblMarges" border="0" cellpadding="0" cellspacing="0"' + 
		'width="100%" height="100%" class="vb"><tr height="125" valign="top"><td>');
	 // INHOUD PAGINA
	raam.document.write('<h2>Voorbeeld</h2>');
	 if(moz) { raam.document.write('<font size="-1">'); }
	raam.document.write('<p><strong>' + arrFor[ditvb][3] + '</strong></p>');
	 if(moz) { raam.document.write('</font>'); }
	 if(!moz) { // tijdelijk omdat het niet werkt in mozilla ---
	raam.document.write('</td></tr><tr><td align="right">' + 
		'<a href="javascript:openvb(' + (ditvb - 1) + ');">' + 
			'<img src="afbeeldingen/kVorige.gif" alt="vorige" border="0" /></a>&nbsp;&nbsp;' + 
		'<a href="#" onClick="window.close();">' + 
			'<img src="afbeeldingen/kTerug.gif" alt="terug" border="0" /></a>&nbsp;&nbsp;' + 
		'<a href="javascript:openvb(' + (ditvb + 1) + ');">' + 
			'<img src="afbeeldingen/kVolgende.gif" alt="volgende" border="0" /></a>');
	 }
	 // HTML: SLUITEN
	raam.document.write('</td></tr></body></html>');
	raam.document.close();
	
	geopend = true;
}

// ------------------------------------------------------------------------------------------

function schrijfLegende() {
	document.write('<p>Legende:</p><ul>' + 
				'<li><strong>C</strong>: Tekenreeks met vaste lengte</li>' + 
				'<li><strong>M</strong>: Tekenreeks zonder vaste lengte</li>' + 
				'<li><strong>N</strong>: Numerieke waarde</li>' + 
				'<li><strong>L</strong>: Logische waarde</li>' + 
				'<li><strong>D</strong>: Datum</li>' + 
				'</ul><ul>' + 
				'<li><strong>x, y, z</strong>: Invoer</li>' + 
				'<li><strong>a</strong>: Uitvoer</li>' + 
				'<li><strong>[]</strong>: Optioneel</li>' + 
				'</ul><br /><br />');
}

// ------------------------------------------------------------------------------------------

function schrijfRegels() {
	for(x=1; x<=aantRegels; x++) {
		document.write('<tr height="40" align="left" valign="top">' + 
			'<td class="otabellinks"><a href="javascript:openvb(' + x + ');">' + 
			arrFor[x][1] +
			'</td><td class="otabelgeg">' + 
			arrFor[x][2] +
			'</td></tr>');
	}
}

// ------------------------------------------------------------------------------------------

function arrayVullen() {
	// ALLE FORMULES IN EEN ARRAY
	//
	arrFor[1][1] = 'Abs( Nx ) = Na';
	arrFor[1][2] = 'Geeft de absolute waarde van een numerieke waarde x terug.';
	arrFor[1][3] = 'Abs( -6 ) = 6<br />Abs( 5 - 7 ) = 2';
	//
	arrFor[2][1] = 'AllTrim( Cx ) = Ca';
	arrFor[2][2] = 'Verwijdert alle voor- en volgspaties van een tekenreeks x.';
	arrFor[2][3] = 'AllTrim( &quot; dit is een test &quot; ) = &quot;dit is een test&quot;';
	//
	arrFor[3][1] = 'At( Cx, Cy ) = Na';
	arrFor[3][2] = 'Bepaalt vanaf welke positie een tekenreeks y een deelreeks x bevat.';
	arrFor[3][3] = 'At( &quot;test&quot;, &quot;dit is een test&quot; ) = 12';
	//
	arrFor[4][1] = 'CtoD( Cx ) = Da';
	arrFor[4][2] = 'Zet een tekenreeks x om in een datum.';
	arrFor[4][3] = 'CtoD( &quot;11/08/2005&quot; ) = 11/08/2005';
	//
	arrFor[5][1] = 'Date() = Da';
	arrFor[5][2] = 'Geeft de huidige datum terug.';
	arrFor[5][3] = 'Date() = &lt;datum van vandaag&gt;';
	//
	arrFor[6][1] = 'Day( Dx ) = Na';
	arrFor[6][2] = 'Geeft de dag van een datum x terug.';
	arrFor[6][3] = 'Day( &lt;datum&gt; ) = &lt;dag uit datum&gt;<br />' + 
					'Day( CtoD( &quot;13/09/2010&quot; ) ) = &quot;13&quot;';
	//
	arrFor[7][1] = 'DoW( Dx ) = Na';
	arrFor[7][2] = 'Geeft de dag van de week van een datum x terug.';
	arrFor[7][3] = 'DoW( &lt;datum&gt; ) = &lt;dag van de week uit datum&gt;<br />' + 
					'DoW( CtoD( &quot;11/08/2005&quot; ) ) = 5<br />' + 
					'<strong>opm:</strong> zondag = 1, zaterdag = 7';
	//
	arrFor[8][1] = 'DtoC( Dx ) = Ca';
	arrFor[8][2] = 'Zet een datum x om in een tekenreeks.';
	arrFor[8][3] = 'DtoC( &lt;datum&gt; ) = &lt;tekenreeks van datum&gt;<br />' + 
					'DtoC( Date() ) = &quot;1/1/2006&quot;<br />(als het vandaag 1 januari 2006 is)';
	//
	arrFor[9][1] = 'Empty( x ) = La';
	arrFor[9][2] = 'Geeft .T. (=Ja) terug als x leeg is of een:<br />' + 
					'° tekenreeks met enkel spaties;<br />' + 
					'° numerieke waarde nul;<br />' + 
					'° datum " / / ";<br />' + 
					'° logische waarde .F.';
	arrFor[9][3] = 'Empty( &quot;&quot; ) = .T.<br />Empty( 1 ) = .F.';
	//
	arrFor[10][1] = 'If( Lx, y, z )';
	arrFor[10][2] = 'Voert y uit als x waar is. Voert z uit als x niet waar is.';
	arrFor[10][3] = 'If( DoW( Date() )=7, &quot;Het is zaterdag.&quot;, &quot;' + 
					'Het is geen zaterdag.&quot; )';
	//
	arrFor[11][1] = 'Int( Nx ) = Na';
	arrFor[11][2] = 'Verwijdert alle decimalen van x.';
	arrFor[11][3] = 'Int( 5.95 ) = 5<br />Int( -5.95 ) = -5<br />';
	//
	arrFor[12][1] = 'Left( Cx, Ny ) = Ca';
	arrFor[12][2] = 'Geeft y aantal tekens weer van x te beginnen van links.';
	arrFor[12][3] = 'Left( &quot;Dit is een test&quot;, 5 ) = &quot;Dit i&quot;<br />' + 
					'Left( &quot;Dit is een test&quot;, 0 ) = &quot;&quot;';
	//
	arrFor[13][1] = 'Len( Cx ) = Na';
	arrFor[13][2] = 'Bepaalt de lengte van een tekenreeks x.';
	arrFor[13][3] = 'Len( &quot;Dit is een test&quot; ) = 15<br />' + 
					'Len( DtoC( Date() ) ) = 10';
	//
	arrFor[14][1] = 'Lower( Cx ) = Ca';
	arrFor[14][2] = 'Geeft een tekenreeks x terug in kleine letters.';
	arrFor[14][3] = 'Lower( &quot;Dit Is Een Test&quot; ) = &quot;dit is een test&quot;<br />' + 
					'Lower( &quot;ABC123&quot; ) = &quot;abc123&quot;';
	//
	arrFor[15][1] = 'LTrim( Cx ) = Ca';
	arrFor[15][2] = 'Verwijdert alle spaties aan de linkerkant van x.';
	arrFor[15][3] = 'LTrim( &quot; Test123 &quot; ) = &quot;Test123 &quot;';
	//
	arrFor[16][1] = 'Max( NDx, NDy ) = NDa';
	arrFor[16][2] = 'Geeft de grootste terug van 2 waarden x en y.';
	arrFor[16][3] = 'Max( 5, 8 ) = 8<br />' + 
					'Max( CtoD( &quot;01/01/1960&quot; ), CtoD( &quot;31/31/1960&quot; ) ) = 31/31/1960';
	//
	arrFor[17][1] = 'Min( NDx, NDy ) = NDa';
	arrFor[17][2] = 'Geeft de kleinste terug van 2 waarden x en y.';
	arrFor[17][3] = 'Min( 5, 8 ) = 5<br />' + 
					'Min( CtoD( &quot;01/01/1960&quot; ), CtoD( &quot;31/31/1960&quot; ) ) = 01/01/1960';
	//
	arrFor[18][1] = 'Month( Dx ) = Na';
	arrFor[18][2] = 'Bepaalt de maand van een datum x.';
	arrFor[18][3] = 'Month( CtoD( &quot;15/5/2001&quot; ) ) = &quot;5&quot;';
	//
	arrFor[19][1] = 'PadL( Cx, Ny, [Cz] ) = Ca';
	arrFor[19][2] = 'Vult x links aan met y z&rsquo;en. Als z niet ingevuld wordt, dan komen ' + 
					'er spaties te staan.';
	arrFor[19][3] = 'PadL( &quot;Test&quot;, 7 ) = &quot;&nbsp;&nbsp;&nbsp;Test&quot;<br />' + 
					'PadL( &quot;Test&quot;, 7, &quot;a&quot; ) = &quot;aaaTest&quot;';
	//
	arrFor[20][1] = 'PadR( Cx, Ny, [Cz] ) = Ca';
	arrFor[20][2] = 'Vult x rechts aan met y z&rsquo;en. Als z niet ingevuld wordt, dan komen ' + 
					'er spaties te staan.';
	arrFor[20][3] = 'PadR( &quot;Test&quot;, 7 ) = &quot;Test&nbsp;&nbsp;&nbsp;&quot;<br />' + 
					'PadR( &quot;Test&quot;, 7, &quot;a&quot; ) = &quot;Testaaa&quot;';
	//
	arrFor[21][1] = 'RAt( Cx, Cy ) = Na';
	arrFor[21][2] = 'Geeft de positie terug waar x zich bevindt in y te beginnen van rechts.';
	arrFor[21][3] = 'RAt( &quot;e&quot;, &quot;Deze test is beter dan de rest&quot; ) = 28';
	//
	arrFor[22][1] = 'Right( Cx, Ny ) = Ca';
	arrFor[22][2] = 'Geeft y aantal tekens weer aan de rechterkant van x.';
	arrFor[22][3] = 'Right( &quot;Dit is een test&quot;, 4 ) = &quot;test&quot;';
	//
	arrFor[23][1] = 'Round( Nx, Ny ) = Na';
	arrFor[23][2] = 'Rondt een numerieke waarde x af op y decimalen.';
	arrFor[23][3] = 'Round( 10.9562451, 3 ) = 10.956<br />Round( 10.5, 0 ) = 11';
	//
	arrFor[24][1] = 'RTrim( Cx ) = Ca';
	arrFor[24][2] = 'Verwijdert alle spaties aan de rechterkant van x.';
	arrFor[24][3] = 'RTrim( &quot; Test123 &quot; ) = &quot; Test123&quot;';
	//
	arrFor[25][1] = 'Space( Nx ) = Ca';
	arrFor[25][2] = 'Geeft x aantal spaties terug.';
	arrFor[25][3] = '&quot;Test&quot; + Space( 1 ) = &quot;Test &quot;';
	//
	arrFor[26][1] = 'SQRT( Nx ) = Na';
	arrFor[26][2] = 'Geeft de vierkantswortel van een numerieke waarde x.';
	arrFor[26][3] = 'SQRT( 49 ) = 7';
	//
	arrFor[27][1] = 'sTakeout( Cx, Cy, Nz ) = Ca';
	arrFor[27][2] = 'Deelt een tekenreeks x op in stukken die gescheiden worden door y&rsquo;s en ' + 
					'geeft u vervolgens het z&rsquo;ste deel.';
	arrFor[27][3] = 'sTakeout( &quot;Dit - Is - Een - Test&quot;, &quot;-&quot;, 3 ) = &quot;Een&quot;';
	//
	arrFor[28][1] = 'Str( Nx, [Ny], [Nz] ) = Ca';
	arrFor[28][2] = 'Maakt van een numerieke waarde x een tekenreeks. U kunt de lengte y en ' + 
					'het aantal cijfers na de komma z meegeven.';
	arrFor[28][3] = 'Str( 950 ) = &quot;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;950&quot; ' + 
					'(de standaardlengte is 10)<br />Str( 950.25, 5, 1 ) = &quot;950.2&quot;';
	//
	arrFor[29][1] = 'Substr( Cx, Ny, [Nz] ) = Ca';
	arrFor[29][2] = 'Geeft z aantal tekens terug uit een tekenreeks x, ' + 
					'beginnend vanaf positie y. (de standaardwaarde van y is ???---)';
	arrFor[29][3] = 'Substr( &quot;Dit is een test&quot;, 12, 10 ) = &quot;test&quot;<br />' + 
					'Substr( &quot;Dit is een test&quot;, 15, -4 ) = &quot;test&quot;';
	//
	arrFor[30][1] = 'Tx( Nx, [Ny], [Nz] ) = Ca';
	arrFor[30][2] = 'Maakt van een numerieke waarde x een tekenreeks en verwijdert tevens alle ' + 
					'spaties aan de linkerkant. U kunt de lengte y en ' + 
					'het aantal cijfers na de komma z meegeven.<br />' +  
					'Geeft hetzelfde effect als:<br />LTrim( Str( Nx, [Ny], [Nz] ) ) = Ca.';
	arrFor[30][3] = 'Tx( 1050 ) = &quot;1050&quot;';
	//
	arrFor[31][1] = 'Upper( Cx ) = Ca';
	arrFor[31][2] = 'Geeft een tekenreeks x terug in hoofdletters.';
	arrFor[31][3] = 'Upper( &quot;Dit is een test&quot; ) = &quot;DIT IS EEN TEST&quot;';
	//
	arrFor[32][1] = 'Val( Cx ) = Na';
	arrFor[32][2] = 'Maakt een numerieke waarde van een tekebreeks x.';
	arrFor[32][3] = 'Val( &quot;123test&quot; ) = 123<br />Val( &quot;test123&quot; ) = 0';
	//
	arrFor[33][1] = 'Year( Dx ) = Na';
	arrFor[33][2] = 'Geeft het jaar terug van een datum x.';
	arrFor[33][3] = 'Year( CtoD( &quot;15/08/1983&quot; ) ) = &quot;1983&quot;';
}
	  
// ------------------------------------------------------------------------------------------

function ankeren() { // TEST: DIT IS BODY: onFocus="ankeren();"
	// UIT POPUP --> NAAR JUISTE REGEL VAN TABEL GAAN
	if(geopend) { // geopend mag mss helemaal weg ---
		parent.onder.location='pbformules.htm#' + ditvb;
		geopend = false;
	}
}

// ------------------------------------------------------------------------------------------

function new_win(get, wi, he){
		 
	    mywindow = window.open(get,'voorbeeld','width='+ wi +',height=' + he + ',scrollbars=yes,toolbar=no');
		
		 mywindow.moveTo(2,230);
		 return false;
	 
	 }
