/* CANVAS.JS
   Verschillen tussen CANVAS.JS en /BOEKH/BASIS.JS:
   - menu bevat de Achtergrond items
   - heeft functie InstalleerOpmaak(): zet in head de gewenste OPMAAK.CSS
*/

// GLOBALE INITIALISATIES
// ======================
var open_fqdn = "www.strt.nl"
var safe_fqdn = "secure--strt--nl.p-ssl.net"
var open_prot_fqdn    = "http://www.strt.nl/"
var safe_prot_fqdn    = "https://secure--strt--nl.p-ssl.net/"
var server_id = "strt"        // zit altijd en alleen in servernaam
var open_id = "strt.nl"       // zit altijd en alleen in open servernaam
var safe_id ="p-ssl.net"      // zit altijd en alleen in https URL
var hurl, wurl, elm           // globale vars van WisselTaal
hurl = location.href;         // huidige url
var InternetExplorer = Boolean(document.attachEvent)
var is_ie6 = ('ActiveXObject' in window && !('XMLHttpRequest' in window));

var taal = -1  // taal van huidig document, evt na taalwissel
var nutm = -1  // globale aangepaste tm uit LogoMenu()
var nuth = -1  // globale aangepaste th uit LogoMenu()
var decoreen = 17
var decorend = 20


var taalid = "talid"  // 
var taaltop = ""

// Var menu is de inhoud van het universele tweetalige menu,
// Het eerste veld in iedere sub-menu betekent:
// 0 = betreft een item in de menubalk,
// 1 = betreft een menu-item hangend aan een menubalk-item

// De overige vaste posities (offset 0) in sub-lists van menu:
var tme = 1             // taal menu engels
var tmn = 2             // taal menu nederlands
var the = 3             // taal htm-file engels      (bij achtergrond: css-file)
var thn = 4             // taal htm-file nederlands  (bij achtergrond: css-file)

var csafeengref = 'csafeeng.htm'
var csafenedref = 'csafened.htm'
if(location.href.toLowerCase().indexOf(server_id) > -1) {
    csafeengref = safe_prot_fqdn + 'csafeeng.htm'
    csafenedref = safe_prot_fqdn + 'csafened.htm'
    }
var menu = new Array();
menu[0]  = new Array(0, 'Home Page', 'Home Page')
menu[1]  = new Array(1, 'Home&nbsp;Page&nbsp;&nbsp;english','Home&nbsp;page&nbsp;nederlands', 'HUISENG.HTM','HUISNED.HTM')
menu[2]  = new Array(0, 'Books', 'Boeken')
menu[3]  = new Array(1, 'Recent&nbsp;Acquisitions','Nieuwe&nbsp;aanvoer', 'RECENT.HTM','RECENT.HTM')
menu[4]  = new Array(1, 'Short&nbsp;Sample&nbsp;Catalogs','Kleine&nbsp;wisselende&nbsp;selecties', 'KORTENG.HTM','KORTNED.HTM')
menu[5]  = new Array(1, 'Large&nbsp;Stock&nbsp;Catalogs','<nobr>Grote&nbsp;voorraad-catalogi</nobr>', 'LANGENG.HTM','LANGNED.HTM')
menu[6]  = new Array(1, 'Search','Zoeken', 'HAALENG.HTM','HAALNED.HTM')
menu[7]  = new Array(0, 'How to <b>. . .</b>','Hoe kan ik<b>&nbsp;.&nbsp;.&nbsp;.</b>' )
menu[8]  = new Array(1, 'How&nbsp;to&nbsp;Order','Hoe&nbsp;kan&nbsp;ik&nbsp;bestellen', 'BESTENG.HTM','BESTNED.HTM')
menu[9]  = new Array(1, 'How&nbsp;to&nbsp;Pay','Hoe&nbsp;kan&nbsp;ik&nbsp;betalen', 'GELDENG.HTM','GELDNED.HTM')
menu[10] = new Array(1, 'Other&nbsp;Frequently&nbsp;Asked&nbsp;Questions','Andere&nbsp;vaak&nbsp;gestelde&nbsp;vragen', 'FAQSENG.HTM','FAQSNED.HTM')
menu[11] = new Array(0, 'Contact', 'Contact')
menu[12] = new Array(1, 'E-mail&nbsp;us','Email&nbsp;naar&nbsp;Straat', 'cmaileng.htm','cmailned.htm')
menu[13] = new Array(1, 'Order&nbsp;Form','Bestelformulier', 'cbesteng.htm','cbestned.htm')
menu[14] = new Array(1, 'Safe&nbsp;Communication','Veilige&nbsp;communicatie', csafeengref, csafenedref)
menu[15] = new Array(1, 'About&nbsp;us','Colofon', 'ADRESCOL.HTM','ADRESCOL.HTM')
menu[16] = new Array(0, 'Background','Achtergrond')
menu[17] = new Array(1, 'Neutral grey', 'Egaal grijs','NEUTRAAL.CSS','NEUTRAAL.CSS')
menu[18] = new Array(1, 'Soft Colours', 'Vage kleuren','AQUAREL.CSS','AQUAREL.CSS')
menu[19] = new Array(1, 'Street Cobbles', 'Keistenen','KEIEN.CSS','KEIEN.CSS')
menu[20] = new Array(1, 'River in Belgium', 'Vlaanderen','BELGIE.CSS','BELGIE.CSS')
menu[21] = new Array(1, 'Remarks','Opmerkingen', 'HINTSENG.HTM','HINTSNED.HTM')
menu[22] = new Array(0, 'nederlands', 'english')

taaltop  = "top" + (menu.length - 1)

// FUNCTIES
// ========

function InstalleerOpmaak(){ // --------------------------------------
// Als er een cookie is,
// en die bevat info over de gewenste opmaak:
// haal die info uit de cookie,
// en link naar de gewenste css file
// anders: link naar de default css file
// varianten: NEUTRAAL.CSS AQUAREL.CSS KEIEN.CSS BELGIE.CSS
var koek=LeesCookie('opmaak');
var OPMAAK = koek ? koek : "NEUTRAAL.CSS" 
var cookietekst = 'opmaak='+OPMAAK+';path=/'
if (document.URL.indexOf(server_id) > -1) {
    cookietekst += ';domain=strt.nl'
    }
document.write('<link href=' + OPMAAK + ' rel="stylesheet" type="text/css" id="stylesheet"> ')
document.cookie=cookietekst
}

function WisselOpmaak(cssarg){ // ------------------------------------
var cssnaam = cssarg
var cookietekst = 'opmaak='+cssnaam+';path=/'
if (document.URL.indexOf(server_id) > -1) {
    cookietekst += ';domain=strt.nl'
    }
//alert("1-In WisselOpmaak is cssnaam: " + cssnaam)
//alert("2-cookietekst is: " + cookietekst)
document.getElementById("stylesheet").href=cssnaam
document.cookie=cookietekst
location.reload(true)
}

function Meta(){  // -------------------------------------------------
document.write('<meta name="keywords"    content="antiquarian old used books tweedehands boeken">');
document.write('<meta name="owner"       content="Christiane De Backer & Just Schadd">');
document.write('<meta name="author" content="egbert">');
document.write('<meta http-equiv="charset" content="iso-8859-1">');

document.write('<!--');
document.write('<script type="text/javascript" src="functies.js"></script>');
document.write('<script type="text/javascript" src="/usr/share/javascript/jquery/jquery.js"></script>');
document.write('-->');
}

function ZetHerkomstCookie(arg){ // ----------------------------------
// Zet de herkomst-cookie klaar voor de *volgende* pagina,
// de huidige pagina moet deze cookie na ZetBase() niet meer gebruiken.
// De cookie wordt NIET gezet als huidige pagina of de referrer
// secure en/of cgi zijn. 

if(document.URL.indexOf(safe_id) == -1 && document.URL.indexOf('cgi') == -1) {
    document.cookie = "herkomst=" + document.URL + "; path=/; domain=strt.nl; "
    }
else if (document.referrer.indexOf(safe_id) == -1 &&document.referrer.indexOf('cgi') == -1) {
    document.cookie = "herkomst=" + document.referrer + "; path=/; domain=" + safe_fqdn + ";"
    }
}
function LeesCookie(naam){  // ---------------------------------------
var naamIs = naam + "=";
var koeken = document.cookie.split(';');
for (var i=0; i<koeken.length; i++){
    var k = koeken[i];
    while (k.charAt(0)==" ") k=k.substring(1,k.length);
    if(k.indexOf(naamIs)==0) return k.substring(naamIs.length, k.length);
    }
    return null;
}


function WisCookie(){  // --------------------------------------------
var wisdatum = new Date(1999,1,1,0,0,0,0);
document.cookie = "Ben ik een aap ?; expires=" + wisdatum.toDateString()
    }

function BaseHref(){  // ---------------------------------------------
var base_pad, http_pos, slash_pos
var base_bron = document.cookie
if (base_bron.length > 0 ) {
    http_pos  = base_bron.indexOf("http")
    slash_pos = base_bron.lastIndexOf("/")
    if (http_pos > -1 && slash_pos > -1) {
        base_pad = base_bron.substring(http_pos,slash_pos)
        }
    else {
        base_pad = open_prot_fqdn
        }
    }
else {
    slash_pos = location.href.lastIndexOf("/")
    base_pad  = location.href.substring(0,slash_pos)
    }
return base_pad ;
}

function ZetBase() {  // ---------------------------------------------      
var baseref = BaseHref()
var s3 = baseref.indexOf("///")
if (s3 > -1) {
    baseref = baseref.substring(0,s3) + baseref.substring(s3+1)
    }
// alert('<!-- base href="' + baseref + '" -->')
document.write('<base href="' + baseref + '" ><BR>')
}

function Identificatie(){  // ----------------------------------------
document.write("document.referrer- " + document.referrer + "<BR>")
document.write("document.cookie-- " + document.cookie + "<BR>")
document.write("document.domain- " + document.domain + "<BR>")
document.write("document.location- " + document.location + "<BR>")
document.write("document.URL----- " + document.URL + "<BR>")
document.write("location.href-------- " + location.href + "<BR>")
document.write("location.host-------- " + location.host + "<BR>")
document.write("location.hostname- " + location.hostname + "<BR>")
document.write("location.pathname- " + location.pathname + "<BR>")
var baseref = BaseHref()
document.write("base_pad---------- " + baseref + "<BR>")
}


function LogoMenu(taalwens){  // -------------------------------------
taal = taalwens // 0 = engels,  1 = nederlands
// Hercodering van taalwens naar posities in sublists van menu:
var tm  = taalwens + 1  // taal ivm keuze van taal in menu
var th  = taalwens + 3  // taal ivm keuze van htm bestand

nutm = tm
nuth = th

var top = -1  // onderhavige balk-item
var sub = -1  // onderhavige sub-item onder een balk-item

/*  ------------------------------------------------------------------ */
    function BalkMenu() {
    document.write('        <table  id="balkmenu"  cellspacing=0 cellpadding=0 >');
    document.write('        <tr>');
    // begin comment 2

    var i, item;
    for (i=0; i < menu.length; i++) {
        item = menu[i]
        // document.write('<br>' + item);
        if (item[0] == 0) {          // een balkitem
            top += 1
            if (top > 0 ) {
                // dit is een tweede of later balkitem
                if (sub > -1 ) {
                    // er liep een ul sub-menu
                    document.write('            </ul>');
                    sub = -1
                    } // einde ul menu
                document.write('        </td>');
                } // einde latere balkitem
            topid = "top" + top
            if (i == (menu.length-1) ){ // laatste menu-item: taal
                // taal balkitem
                document.write('        <td class="balkitem" >');
                if (InternetExplorer) {
                    document.write('<a  style="cursor: pointer;" onClick="javascript: WisselTaal()" id="' + taalid +'" >' + item[tm] + '</a>');
                    //document.write('<a href="#" onClick="javascript: WisselTaal()" id="' + taalid +'" >' + item[tm] + '</a>');
                    }
                else { //FireFox enz: OK
                    document.write('<a href="javascript: WisselTaal()" id="' + taalid +'" >' + item[tm] + '</a>');
                    }
                // taal balkitem heeft eigen id, NIET volgens systeem
                }
            else {
                 // voorgaande balkitems
                document.write('        <td class="balkitem" >');
                document.write('<span id="' + topid + '">' + item[tm] + '</span>');
                }  //length
            }  // einde balkitem
    // begin comment 3
        else {
            // een submenu item
            sub += 1
            subid = ("sub" + top) + sub
            if (sub == 0) {
                // eerste li van ul
                document.write('            <ul>');
                }
            if (top == 0) { // homepage-balkitem
                // homepage submenu item twee keer gebruiken:
                document.write('            <li><a id="' + subid + '" href="'+item[the]+'">'+item[tme]+'</a></li>');
                sub += 1
                subid = ("sub" + top) + sub
                document.write('            <li><a id="' + subid + '" href="'+item[thn]+'">'+item[tmn]+'</a></li>');
                }
            //else if (item.length > 3 && item[th].toUpperCase().indexOf('CSS') > -1) ){  // achtergrond
            else if (i >= decoreen && i <= decorend) {  // achtergrond
                if (InternetExplorer) {
                    //alert('Hallo IE: '+ item[th] + ' ' + item.length + ' ' + item[th].indexOf('css'))
                    document.write('            <li><a  style="cursor: pointer;" onClick="javascript: WisselOpmaak(\''+ item[th] + '\')" id="' + subid +'" >' + item[tm] + '</a></li>');
                    }
                else { //FireFox enz: OK
                    document.write('            <li><a href="javascript: WisselOpmaak(\'' + item[th] + '\')" id="' + subid +'" >' + item[tm] + '</a></li>');
                    }
                }
            else {  // niet het homepage-balkiten en niet het taal-balkitem
                document.write('            <li>');
                document.write('<a id="' + subid + '" href="'+item[th]+'">'+item[tm]+'</a></li>');
                // de speciale behandeling van hints is uitgeschakeld:
                //if ( item[th].toUpperCase().indexOf('HINTS') > -1) {
                //    document.write('<a id="hints" href="'+item[th]+'">'+item[tm]+'</a></li>');
                //    }
                //else {
                //    document.write('<a id="' + subid + '" href="'+item[th]+'">'+item[tm]+'</a></li>');
                //    }
                }

            } // einde sub-menu item
    // einde comment 3
        }     // einde item loop
    // einde comment 2

    document.write('        </td>');
    document.write('        </tr>');
    document.write('        </table>');
    }   // einde subfunctie BalkMenu

/*  ------------------------------------------------------------------ */

    function BladMenu() {
    document.write('        <table  id="balkmenu"  cellspacing=0 cellpadding=0 >');
    document.write('        <tr>');

    document.write('        <td class="IE6menu">');
    document.write('Menu in<b>:</b> &nbsp;&nbsp; ')
    document.write('<a href="JLOOSNED.HTM"><b>dutch</b></a> &nbsp;&nbsp; ')
    document.write('<a href="JLOOSENG.HTM"><b>english</b></a>')
    document.write('</td>')

    document.write('        <td class="IE6memo">');
    document.write('In newer browsers you can use our one-click menu.<br> ')
    document.write('Now you have to use <b>BACK</b> and the menus on the left.<br> ')
    document.write('</td>')


    document.write('        </tr>');
    document.write('        </table>');
    }   // einde function Bladmenu

/*  ------------------------------------------------------------------ */

document.write('<table class="bodytable" cellspacing=0 cellpadding=0>');
document.write('<tr><td id="straat" >STR<span id="aalogo">AA</span>T</td>');
// begin comment 1
document.write('    <td id="menuruimte" rowspan="2">');

if (is_ie6) {
    BladMenu()
    }
else {
    BalkMenu()
    }

document.write('    </td>');
// einde comment 1

document.write('</tr> ');
document.write('<tr><td id="antiquaren">antiquaren</td> ');
document.write('</tr>');
document.write('</table>');

if (InternetExplorer) {
    var i, balkrij, balkuls,  marge="0px 0px 0px -40px",
        margeLinks = "0px", margeTop="0px";
    balkrij = document.getElementById('balkmenu').getElementsByTagName('tr')[0]

    for (var i=0; i<balkrij.length; i++) {
         balkrij[i].style.color="white"
         //balkrij[i]:hover.style.background=#555555
        }

    balkuls = balkrij.getElementsByTagName('ul')
    //alert("aantal balkuls: " + balkuls.length)
    for (var i=0; i<balkuls.length; i++) {
        balkuls[i].style.margin=marge;
        //balkuls[i].style.marginLeft=margeLinks;
        //balkuls[i].style.marginTop=margeTop;
        }  // for
    }      // if
} // einde van functie LogoMenu


function WisselTaal(){  // -------------------------------------------
var top, sub, i, id, item;
var hurllengte, hurlstaart, koplengte;
var meertalig = true;

taal = 1 - taal // 0 wordt (1-0)=1  en 1 wordt (1-1)=0
hurl = location.href;       // huidige url
wurl = hurl;                // wens url

hurllengte = hurl.length;
koplengte = hurllengte - (open_id.length + 1);
hurlstaart = hurl.slice(koplengte);

//alert("URL was: " + hurl + "-" + hurllengte + "-" + koplengte + "-" + hurlstaart+ "-" + hurl.slice(-1))

if(hurlstaart.indexOf(open_id) > -1) { // in LAATSTE posities
    if(hurl.slice(-1)=="/") {
        wurl = hurl + menu[1][thn]
        //alert("Lange URL was: " + hurl + " en wordt: " + wurl)
        }
    else {
        wurl = hurl + "/" + menu[1][thn]
        //alert("Korte URL was: " + hurl + " en wordt: " + wurl)
        }
    }
else if(hurl.indexOf("index.html") > -1) {
    wurl = hurl.replace("index.html","HUISNED.HTM")
    }
else if(hurl.indexOf("ENG") > -1) {
    wurl = hurl.replace("ENG","NED")
    }
else if(hurl.indexOf("NED") > -1)  {
    wurl = hurl.replace("NED","ENG")
    }
else if(hurl.indexOf("eng") > -1) {
    wurl = hurl.replace("eng","ned")
    }
else if(hurl.indexOf("ned") > -1)  {
    wurl = hurl.replace("ned","eng")
    }
else {
    meertalig = false ;
    }

//document.write(wurl);
//alert("document.attachEvent: " + new Boolean(document.attachEvent))
//alert("meertalig: " + meertalig)

//location.replace(wurl) ;
if (meertalig) {
    location.replace(wurl) ;
    }

// begin comment 2
//else if (InternetExplorer) {
//    location.reload(true)
//    }
else {
    // wissel alleen de menu-taal
    // alert("Wissel ALLEEN de MENU-taal")
    nuth = 7 - nuth
    nutm = 3 - nutm

    top = -1
    sub = -1
    // begin comment 1
    for (i=0; i < menu.length; i++) {
        item = menu[i];
        if (item[0] == 0 ) {          // een balkitem
            top += 1
            sub = -1
            if (i == (menu.length - 1)) {
                id = taalid
                // alert("Gezochte taal-balkitem id: " + id)
                }
            else {
                id = "top" + top
                // alert("Gezochte NON-taal-balkitem id: " + id)
                }
            
            elm = document.getElementById(id)
            // alert("elm is: " + elm)
            // alert("id: " + id + " " + elm.nodeName +" " + elm.firstChild.nodeValue + "  " + elm.innerHTML)
            // alert("wordt: " + item[nutm] + "  met nutm: " + nutm);
            elm.innerHTML = item[nutm];
            }  // balkitem
        else {
            sub += 1
            id = ("sub" + top) + sub
            elm = document.getElementById(id)
            if ( elm == null ) {
                alert("element is null met id " + id + " bij " + item[nutm])
                }
            elm.innerHTML      = item[nutm];
            elm.innerHTML.href = item[nuth];
            }
        }      // for i
    // einde comment 1
    }          // alleen menutaal
// einde comment 2
//alert("Einde van functie WisselTaal")
}              // functie

function Terug(){ // -------------------------------------------------
    var terugtekst = new Array('BACK TO YOUR MESSAGE','TERUG NAAR UW BERICHT');
    // document.write('<BR>')
    // document.write('Some experimental buttons etc; do not use them:')
    // document.write('<BR>')
    // Niet goed: met # ga je terug naar index.html
    // document.write('<a href="#" onclick="history.back()">TERUG: # history.back</a>')
    // document.write('<BR>')
    // werkt, maar de knop is beter:
    // document.write('<a href="javascript: history.go(-1)">TERUG: javascript history.go</a>')
    document.write('<BR>')
    if (is_ie6) {
        document.write('<a href="javascript: history.go(-1)">BACK TERUG</a>')
        }
    else {
        document.write('<form>')
        document.write('<input type="button" value="' + terugtekst[taal] + 
                           '" onclick="history.go(-1); return false;"/>')
        document.write('</form>')
        }
    }

// EXPERIMENTEN
// ============
var proefvar='Globaal';
function proef1(){ // ------------------------------------------------
var proefvar='Binnen proef1'
function proef3(){
    alert('proefvar in nested proef3 is: ' + proefvar)
    }
proef2()
proef3()
}
function proef2(){ // ------------------------------------------------
// Vertoont: Globaal dwz proef2, gestart binnen proef1, 
// kent de locale vars van proef1 niet.
alert('proefvar in losse proef2 is: ' + proefvar)
}

// OPERATIES
// =========
ZetHerkomstCookie(hurl) ;
// klaar
