function mkButBar(tit, ob, w, arr, typ, url) {
    var c1;
    //var br=;
    //var htm="";
    switch (typ) {
    case 'iniAP':
        var bw = Math.ceil(arr.childs.length / 2) + Math.ceil(arr.app.length / 2);
        arr.childs.each(function (item, n) {
            if (! (n % 5)) {
                if (n) ob.grab(c1);
                c1 = new Element('div', {
                    'class': 'c2'
                });
                //.clone()
                //c1.empty();
            }
            var a = new Element('a', {
                'href': root + path + '/' + item.utt
            });
            c1.adopt(a.set('html', item.tit), new Element('br', {
                'styles': {
                    'clear': 'both'
                }
            })); //br.clone()
        });

        ob.grab(c1); //.clone()
        //c1.empty();
        for (var i = 0; i < (w - bw); i++) {
            c1 = new Element('div', {
                'class': 'c1'
            });
            ob.grab(c1.set('html', '&nbsp;')); //clone()
        }
        arr = arr.app;
        break;
    default:
        if (arr.length > 5) {
            var bw = Math.ceil(arr.length / 5);
            
			if(w==5){//eerste
				c2 = new Element('div', {
					'class': 'c1'
				});
				ob.grab(c2.set('html', '<a href="http://www.mondriaanfoundation.nl/internationalactivities/" class="lnk extern" target="_blank"><img src="/gfx/globe.gif" border=0><br />international activities</a>')); 
				c3 = new Element('div', {
					'class': 'c2'
				});
				ob.grab(c3.set('html', '<a href="http://www.dutchartmap.nl/" class="lnk extern" target="_blank"><img src="/gfx/dutchartmap.gif" border=0><br />Dutch Art Map</a>')); 
			}else{
				for (var i = 0; i < (w - bw); i++) {
					c1 = new Element('div', {
						'class': 'c1'
					});
					ob.grab(c1.set('html', ((!i && tit) ? '<h3>' + tit + '</h3>' : '&nbsp;'))); //.clone()
				}
			}
	} else {
            var c2 = new Element('div', {
                'class': 'c2'
            });
            ob.grab(c2.set('html', ((!i && tit) ? '<h3>' + tit + '</h3>' : '&nbsp;')));
        }
        break;
    }
    //var c1=new Element('div',{'class':'c1'});
    arr.each(function (item, n) {
        if (! (n % 5)) {
            if (n) ob.grab(c1); //.clone()
            c1 = new Element('div', {
                'class': 'c1'
            });
            //c1.empty();
        }
        if (item.txt == '{link: Aanvragen}' || item.txt == '{link: Applications}') { //uitz. voor aanvragen!
            var a = new Element('a', {
                'href': root + path + '/' + ((lan) ? 'ap' : 'av')
            });
            c1.adopt(a.set('html', item.tit), new Element('br', {
                'styles': {
                    'clear': 'both'
                }
            }));
        } else {
            var a = new Element('a', {
                'href': root + path + '/' + item.utt
            });
            c1.adopt(a.set('html', item.tit), new Element('br', {
                'styles': {
                    'clear': 'both'
                }
            }));
        }
    });
    if (c1) ob.grab(c1);
    ob.getElements('a:not(.extern)').each(function (item, n) {
        if (root + path + '/' + url == item) {
            item.pas = true;
            item.setStyle('color', ((url.split('/')[0].toLowerCase() == ((lan) ? 'ap' : 'av')) ? '#22cd00' : '#19a5ff'));
        }
        item.addEvent('click', function (e) {
            if (String(this).split((root + path))[1].toLowerCase() == ((lan) ? '/ap' : '/av')) {
                $('bot_h').getElement('a').fireEvent('click', e);
            } else {
                new Event(e).stop();
                if (!this.pas) SWFAddress.setValue(String(this).split((root + path))[1]);
            }
        });
        if (String(item).split((root + path))[1].toLowerCase() == ((lan) ? '/ap' : '/av')) {
            item.addEvent('mouseover', function () {
                $('bot_h').getElement('a').fireEvent('mouseover');
            })
            item.addEvent('mouseout', function () {
                $('bot_h').getElement('a').fireEvent('mouseout');
            })
        }

    });
}

function mkFirstPg(tab, div) {
    var bb = div.getElement('.but_bar');
    if (tab == 'top') {
        div.getElement('.c5 h1').set('text', site.mf.txt);
        mkButBar('', bb, 5, site.mf.childs, '');
    } else {
        var c = div.getElement('.c5');
        var htm = "";
        site.ap.links.each(function (link) {
            htm += '<div class="lft" style="width:20px"><h2>&minus;</h2></div>';
            htm += '<div class="lft" style="width:620px"><h2><a href="' + link.link + '">' + link.tit + '</a></h2>';
            htm += '</div>';
            htm += '<br style="clear:both" />';
        });
        div.getElement('.c5').set('html', htm);

        t = $(document.body).getElement('.tooltip');
        t.fd = new Fx.Tween(t, {
            'duration': 500,
            'wait': false
        });
        t.fd.set('opacity', 0);
        div.getElement('.c5').getElements('a').each(function (a, n) {
            var reg = site.ap.links[n].reg;
            a.addEvent('click', function (e) {
                new Event(e).stop();
                SWFAddress.setValue(String(this).split((root + path))[1]);
            });

            a.getParent().addEvent('mouseenter', function () {
                t.getElement('.txt').set('text', reg);
                t.getElement('.txt').setStyle('background', ''); //reset incase of blue
                var pief = t.getElement('img');
                pief.src = String(pief.src).split('2').join(''); //reset incase of blue
                t.fd.start('opacity', 0.9);
                this.addEvent('mousemove', function (e) {
                    var ev = new Event(e);
                    t.setStyles({
                        'top': (ev.client.y - 107) + 9 + 'px',
                        'left': ((ev.client.x)) + 32 + 'px'
                    });
                });
                a.getParent().addEvent('mouseleave', function () {
                    t.fd.start('opacity', 0);
                    this.removeEvent('mousemove');
                });
            });
        });
        mkButBar('', bb, 5, site.ap, 'iniAP');
    }
}

function mkPg(ob, url) {
    var w = new Element('div', {
        'class': ((ob.kol) ? ob.kol : 'pg w3')
    });
    var bb = new Element('div', {
        'class': 'but_bar'
    });
    var typ = $type(ob.txt);
    //if(ob._db=='txt_ch') ob.childs.shift() //remove text from child array 
    if (ob.typ == 'pro' && ob.org) {
        mkButBar(ob.tit + '<h4>' + ob.org + '<h4>', bb, 3, ((ob.childs) ? ob.childs : []), '', url);
    } else {
        mkButBar(ob.tit+ ((ob.dat1) ? '<h5>' + ob.dat1 + '</h5>' : ''), bb, 3, ((ob.childs) ? ((ob._db == 'txt_ch') ? [] : ob.childs) : []), '', url);
    }

    if (typ == 'string') {
        ob.txt = ob.txt.split('[ad]').join('&#064;');
        var c = new Element('div', {
            'class': 'c3'
        });
        var htm = '';
        if (ob.img && ob.img.length > 3) {
            htm = '<div class="clp"><img src="/content/images/' + addImgTyp(ob.img, '_clp') + '"/></div>';
        }
        switch (ob.typ) {
        case 'qry_form':
            htm += '<form action="" method="post" name="form" target="_blank">';
            var fields = ["vraag", "organisatie", "naam", "telefoon", "email"];
            var display = ((lan == "_en") ? ["question", "organisation", "name", "phone", "email"] : ["vraag", "organisatie", "naam", "telefoon", "email"]);
			htm += '<input type="hidden" name="lan" value="' + lan + '">';

			i=0;
			fields.each(function (field) {
                htm += '<p><label for="' + field + '">' + display[i++] + '</label>';
                switch (field) {
                case "question":
                case "vraag":
                    htm += '<textarea cols="20" rows="10" name="' + field + '" class="txt_area"></textarea>';
                    break;
                default:
                    htm += '<input  type="text" name="' + field + '" value="" class="inp" />';
                    break;
                }
            });
            htm += "</p><br/>";
            htm += '<p><input type="submit" id="submit"  name="submit" value="' + ((lan) ? "send" : "verstuur") + '"  class="sbm"/></p><br />';
            htm += '<p><label>&nbsp;</label><span class="msg">' + ((lan) ? 'You will receive a response as soon as possible.' : 'Wij beantwoorden uw vraag zo spoedig mogelijk.') + '</span></p></form>';
            break;
        case 'qry_form1':
            htm += '<form action="" method="post" name="form" target="_blank">';
            var fields = ["naam", "organisatie", "telefoon", "email", "opmerkingen"];
			var display = ((lan == "_en") ? ["name", "organisation", "phone", "email", "comment"] : ["naam", "organisatie", "telefoon", "email", "opmerkingen"]);
            htm += "";
            htm += ((lan) ? "Application for:<br /><h3>" + ob.act + "</h3>" : "Aanmelden voor:<br /><h3>" + ob.act + "</h3>");
            htm += "<br />";
			 htm += '<input type="hidden" name="lan" value="' + lan + '">';
            htm += '<input type="hidden" name="activiteit" value="' + ob.act + '">';
            htm += '<input type="hidden" name="activiteit_id" value="' + ob.aid + '">';
			i=0;
            fields.each(function (field) {
                if (field == 'comment' || field == 'opmerkingen') htm += "<br /><br />";
                htm += '<p><label for="' + field + '">' + display[i++] + '</label>';
                switch (field) {
                case "comment":
                case "opmerkingen":
                    htm += '<textarea cols="20" rows="10" name="' + field + '" class="txt_area"></textarea>';
                    break;
                default:
                    htm += '<input  type="text" name="' + field + '" value="" class="inp" />';
                    break;
                }
            });
            htm += "</p>";
            htm += '<p><input type="submit" id="submit"  name="submit" value="' + ((lan) ? "send" : "verstuur") + '"  class="sbm"/></p><br />';
            htm += '<span class="msg"></span></form>';
            break;
        case 'qry_form2':
            htm += '<form action="" method="post" name="form" target="_blank">';
            var fields = ["naam", "organisatie", "email", "opmerkingen"];
			var display = ((lan == "_en") ? ["name", "organisation", "email", "comment"] : ["naam", "organisatie", "email", "opmerkingen"]);
            htm += "";
            htm += ((lan) ? "<h3>Application for the newsletter</h3>" : "<h3>Aanmelden voor de nieuwsbrief</h3>");
            htm += "<br />";
			htm += '<input type="hidden" name="lan" value="' + lan + '">';

			i=0;
            fields.each(function (field) {
                if (field == 'comment' || field == 'opmerkingen') htm += "<br /><br />";
                htm += '<p><label for="' + field + '">' + display[i++] + '</label>';
                switch (field) {
                case "comment":
                case "opmerkingen":
                    htm += '<textarea cols="20" rows="10" name="' + field + '" class="txt_area"></textarea>';
                    break;
                default:
                    htm += '<input  type="text" name="' + field + '" value="" class="inp" />';
                    break;
                }
            });
            htm += "</p>";
            htm += '<p><input type="submit" id="submit"  name="submit" value="' + ((lan) ? "send" : "verstuur") + '"  class="sbm"/></p><br />';
            htm += '<span class="msg"></span></form>';
            break;

        case 'qry':
            htm += $('top').buff.get('html');
            htm += '<div></div></div>';
            c.setProperty('id', 'buff');
            break;
        case 'info':
            ob.info.each(function (inf) {
                htm += '<div class="lft" style="width:16px;margin:4px"><h4>&minus; </h4></div><div class="lft" style="width:340px;margin:4px 0;"><h4>' + inf.tit + '</h4><div class="hidden">' + inf.txt + '</div></div><br style=\"clear:both\">'; //<a href=""></a>
            });
            break;
        case 'pub':
            if (ob.img && ob.img.length > 3) {
                htm = '<div class="clp"><img src="/content/publications/' + addImgTyp(ob.img, '_clp') + '"/></div>';
            }
            htm += ob.txt;
            break;
        case 'act':
        case 'pro':
            htm += ob.txt;
            break;
        case 'doc':
            htm += '<h4>&mdash; <a href="' + root + '/content/doc/' + ob.txt + '" target="_blank">download' + ((lan) ? " application form" : " aanvraagformulier") + " (.pdf)</h4></a>";
            if (ob.bgr) {
                htm += '<br /><br /><h4>&mdash; <a href="' + root + '/content/doc/' + ob.bgr + '" target="_blank">download' + ((lan) ? " standard budget" : " modelbegroting") + " (.pdf)</h4></a>";
            }
            break;
        case 'reg':
            htm += ((ob.txt.length < 600) ? '<h4>' + ob.txt + '</h4>' : ob.txt);
            htm += '<br /><br /><a href="http://www.mondriaanfoundation.nl/print/index.php?r=' + ob.id + ((lan) ? '&l=' + lan : '') + '" target=\"_blank\"><img src="/gfx/print.gif" class="il"> print</a>';
            break;
        default:
            htm += ((ob.txt.length < 600) ? '<h4>' + ob.txt + '</h4>' : ob.txt);
            break;
        }

        if (ob.pdf) htm += '<br /><h4><a href="/content/pdf/' + ob.pdf + '" target="_blank"><img src="/gfx/download.gif" width=12 height=12 class="il"> .pdf</a></h4><br />';
        if (ob.doc) htm += '<br /><h4><a href="/content/doc/' + ob.pdf + '" target="_blank"><img src="/gfx/download.gif" width=12 height=12 class="il"> .doc</a></h4><br />';

        c.set('html', htm);
        switch (ob.typ) {
        case 'info':
            c.getElements('h4').each(function (h4) {
                h4.setStyle('cursor', 'pointer');
                h4.div = h4.getNext();
                h4.act = false;
                h4.addEvent('click', function () {
                    this.div.setStyle('display', ((this.act) ? 'none' : 'inline'));
                    this.act = ((this.act) ? false : true);
                })
            });
            break;
        case 'qry_form':
            var form = c.getElement('form');
            form.fields = form.getElements('input');
            form.fields.push(form.getElement('textarea'));
            form.ajax = new Request({
                'url': "qry_form.php",
                'headers': header,
                'onComplete': function (rs) {
                    rs = JSON.decode(rs);
                    if (rs.error.length) {
                        this.getElement('.msg').set('html', '<span class="err">' + rs.error[0].msg + ((rs.error[1]) ? ', ' + rs.error[1].msg : '') + '</span>');
                    } else {
                        var pr = this.getParent()
                        pr.empty();
                        pr.set('html', rs.msg);
                    }

                }.bind(form)
            });

            form.addEvent('submit', function (e) {
                this.getElement('.msg').set('text', '');
                var fail = false;
                this.fields.each(function (f) {
                    if (f.type != 'submit') {
                        var lb = f.getPrevious('label');
                        var htm = f.name;
                        if (!f.value && f.name != "organisatie" && f.name != "organisation") {
							
                            htm += '<font color="red">!</font>';
                            //fail = true;
                        }
                       // lb.set('html', htm);
                    }
                });
                new Event(e).stop();
                if (!fail) {
                    this.ajax.post(this);
                } else {
                    this.getElement('.msg').set('html', '<span class="err">' + ((lan) ? 'Not all fields are specified ' : 'Niet alle velden zijn ingevuld.')) + '</span>';
                }
            })
            break;
        case 'qry_form1':
            var form = c.getElement('form');
            form.fields = form.getElements('input');
            form.fields.push(form.getElement('textarea'));
            form.ajax = new Request({
                'url': "qry_form1.php",
                'headers': header,
                'onComplete': function (rs) {
                    rs = JSON.decode(rs);
                    if (rs.error.length) {
                        this.getElement('.msg').set('html', '<span class="err">' + rs.error[0].msg + ((rs.error[1]) ? ', ' + rs.error[1].msg : '') + '</span>');
                    } else {
                        var pr = this.getParent()
                        pr.empty();
                        pr.set('html', rs.msg);
                    }

                }.bind(form)
            });

            form.addEvent('submit', function (e) {
                this.getElement('.msg').set('text', '');
                var fail = false;

                new Event(e).stop();
                if (!fail) {
                    this.ajax.post(this);
                } else {
                    this.getElement('.msg').set('html', '<span class="err">' + ((lan) ? 'Not all fields are specified ' : 'Niet alle velden zijn ingevuld')) + '</span>';
                }
            })
            break;
        case 'qry_form2':
            var form = c.getElement('form');
            form.fields = form.getElements('input');
            form.fields.push(form.getElement('textarea'));
            form.ajax = new Request({
                'url': "qry_form2.php",
                'headers': header,
                'onComplete': function (rs) {
                    rs = JSON.decode(rs);
                    if (rs.error.length) {
                        this.getElement('.msg').set('html', '<span class="err">' + rs.error[0].msg + ((rs.error[1]) ? ', ' + rs.error[1].msg : '') + '</span>');
                    } else {
                        var pr = this.getParent()
                        pr.empty();
                        pr.set('html', rs.msg);
                    }

                }.bind(form)
            });

            form.addEvent('submit', function (e) {
                this.getElement('.msg').set('text', '');
                var fail = false;

                new Event(e).stop();
                if (!fail) {
                    this.ajax.post(this);
                } else {
                    this.getElement('.msg').set('html', '<span class="err">' + ((lan) ? 'Not all fields are specified ' : 'Niet alle velden zijn ingevuld')) + '</span>';
                }
            })
            break;
        }
    } else if (typ == 'array') {
        var c = new Element('div', {
            'class': 'w3 scrl'
        });
        c = mkTopMultiple(c, ob, url);
    }
    return w.adopt(bb, c);
}

function mkTopMultiple(c, ob, url) {
    var c1 = new Element('div', {
        'class': 'c1'
    });
    var br = new Element('br', {
        'styles': {
            'clear': 'both'
        }
    });
    var htm = '';
    if (ob.txt.length) {
        ob.txt.each(function (item, n) {
            switch (item._db) {
            case 'nws':
                if (! (n % 3) && n) htm += '<br style="clear:both;" />';
                htm += '<div class="c1">';
                if (item.img && item.img.length > 3) {
                    htm += '<div class="thu"><img src="/content/images/' + addImgTyp(item.img, '_thu') + '"></div>';
                }
                htm += '<a href="' + ob.utt + '/' + item.utt + '" title="' + item.tit + '"><h4>' + item.tit + '</h4></a>';
                if (item['sub']) htm += item['sub'] + '<br />';
                if (item.dat1) htm += item.dat1;

                htm += '<br />' + item.shr + '<a href="' + ob.utt + '/' + item.utt + '" class="rgt" title="';
                htm += ((lan == 'nl') ? "Lees verder..." : "Read further...") + '">&gt;</a></div>';
                //c.grab(br.clone());
                break;
            case 'pro':
                if (! (n % 3) && n) htm += '<br style="clear:both;" />';
                htm += '<div class="c1" style="margin-bottom:10px;margin-right:-2px;">';
                htm += '<a href="' + ob.utt + '/' + item.utt + '" title="' + item.tit + '">';
                if (item.thu) {
                    htm += '<div class="thu"><img src="/content/images/' + item.thu + '"></div>';
                }
                htm += '<h4>' + item.tit + '</h4></a>';
                htm += item.org;
                htm += '</div>';
                break;
            case 'pub':
                if (! (n % 3) && n) htm += '<br style="clear:both;" />';
                htm += '<div class="c1" style="margin-bottom:10px;margin-right:-2px;">';
                htm += '<a href="' + ob.utt + '/' + item.utt + '" title="' + item.tit + '">';
                if (item.thu) {
                    htm += '<div class="thu"><img src="/content/publications/' + item.thu + '"></div>';
                }
                htm += '<h4>' + item.tit + '</h4></a>';
                htm += item.org;
                htm += '</div>';
                break;
            default:
                if (!n) htm += '<div class="c3">';
                //htm+='<h4><a href="'+ob.utt+'/'+item.utt+'" title="'+item.tit+'">- '+item.tit+'</a></h4>';
                // PRINTVERSIE ADDED 14-7 : MB
                if (ob.txt_ch && !n) {
                    if (ob.typ == 'reg') {
                        p_but = '<br /><a href="http://www.mondriaanfoundation.nl/print/index.php?r=' + ob.id + ((lan) ? '&l=' + lan : '') + '" target="_blank" class="lnk extern"><img src="/gfx/print.gif" class="il"> print</a>';
                    } else {
                        p_but = '';
                    }
                    htm += '<p class="lft">' + ob.txt_ch + p_but + '</p><br style="clear:both" />';
                }
                switch (item._db) {
                case 'arc':
                    pre = ((lan)?'News archive: ': 'Nieuws archief: ');
                    break;
                case 'prs':
                    pre = ((lan)?'Press releases: ': 'Persberichten: ');
                    break;
                default:
                    pre = '';
                }
                if (item._db == "letter") {
                    htm += '<div class="lft" style="width:16px;margin:4px">&minus; </div><div class="lft" style="width:340px;margin:4px 0;">' + pre + item.dat1 + '<h4><a href="http://www.mondriaanfoundation.nl/newsletter/?id=' + item.id + '" target="_blank" class="extern">' + item.tit + '</a></h4></div><br style="clear:both"/>';
                } else {
                    item.dat1 = ((item.dat1 != '') ? item.dat1 : ' ');
                    htm += '<div class="lft" style="width:340px;margin:4px 0;">';
                    if (pre) htm += pre;
                    if (item.dat1) htm += item.dat1;

                    htm += '<h3><a href="';
                    if (ob.txt_ch) { // text + children heeft absolute url
                        htm += item.utt;
                    } else {
                        htm += ob.utt + '/' + item.utt;
                    }

                    htm += '" title="' + item.tit + '">' + item.tit + '</a></h3>';
                    if (item.sub) htm += item.sub;
                    htm += '</div><br style="clear:both"/>';
                }

                if (n == ob.txt.length - 1) htm += '</div>';
                break;
            }
        });
    } else if (ob.txt_ch) {
        htm += '<div class="c3">';
        if (ob.typ == 'reg') {
            p_but = '<br /><a href="http://www.mondriaanfoundation.nl/print/index.php?r=' + ob.id + ((lan) ? '&l=' + lan : '') + '" target="_blank" class="lnk extern"><img src="/gfx/print.gif" class="il"> print</a>';
        } else {
            p_but = '';
        }
        htm += '<p class="lft">' + ob.txt_ch + p_but + '</p><br style="clear:both" /></div>';
    }

    c.set('html', htm);
    c.getElements('a').each(function (a) {
        if (!a.hasClass('extern')) {
            a.addEvent('click', function (e) {
                new Event(e).stop();
                SWFAddress.setValue(String(this).split((root + path))[1]);
            });
        }
    });

    return c;
}