// JavaScript Document
    
function open_popup(title, url, w, h) {
    if (window.frames["dialog_frame"]) {
        if (navigator.appName == 'Microsoft Internet Explorer') {
            window.frames["dialog_frame"].document.execCommand('Stop');
            } else {
                    window.frames["dialog_frame"].stop();
                    }
        }                

    $('#dialog').dialog({autoOpen: false, resizable: false});
    $('#dialog_frame').load(function() {
      	$('#dialog').dialog('option', 'title', title);    
      	$('#dialog').dialog('option', 'height', h+35);    
      	$('#dialog').dialog('option', 'width', w);
      	$('#dialog').dialog('option', 'show', 'slide');    
      	$('#dialog').dialog('option', 'position', ['right','top']);    
      	$('#dialog').dialog('open');
      	return false;
        })
    $('#dialog').attr("height", h);
    $('#dialog').attr("width", w);
    $('#dialog').height(h);
    $('#dialog').width(w);
    $('#dialog_frame').attr("height", h);
    $('#dialog_frame').attr("width", w);
    $('#dialog_frame').height(h);
    $('#dialog_frame').width(w);
    $('#dialog_frame').attr("src", url);
}    

/* -------------------------------------------------------------------------- */    
    
function init() {
    tipus_select();
    self.setInterval("search_count();", 2000);
    /*
    var item=document.getElementById("facebook_frame");
    if (item) {
        item.src="/inc/facebook_popup.html";
        }
    */
}

var last_search_url="";
var page_item_count=10;
var item_count=0;
var next_page=-1;
var load_page=false;
var ie=(navigator.appName=="Microsoft Internet Explorer");

function search_count() {
    var url="";
    var item;
    var k=new Array();
    var v=new Array();
    
    var start=document.forms["search_mini"].elements["search_bt"].style.display=="";
    
    var inputs=document.forms["search_mini"].getElementsByTagName("input");
    for(i in inputs) {
        item=inputs[i];
        if (array_key_exists("type", item)) {
            if (item.type=="text") {
                if (item.value!="") {
                    //url+="&"+escape(item.name)+"="+escape(item.value);
                    k.push(item.name);
                    v[item.name]=item.value;
                    }
                }
            else if (item.type=="radio") {
                if (item.checked) {
                    //url+="&"+escape(item.name)+"="+escape(item.value);
                    k.push(item.name);
                    v[item.name]=item.value;
                    }
                }
            else if (item.type=="checkbox") {
                if (item.checked) {
                    //url+="&"+escape(item.name)+"="+escape(item.value);
                    k.push(item.name);
                    v[item.name]=item.value;
                    }
                }
            else if (item.type=="hidden") {
                if (array_key_exists("name", item)) {
                    //url+="&"+escape(item.name)+"="+escape(item.value);
                    k.push(item.name);
                    v[item.name]=item.value;
                    }
                }
            else if (item.type=="select-one") {
                if (item.value!="") {
                    //url+="&"+escape(item.name)+"="+escape(item.value);
                    k.push(item.name);
                    v[item.name]=item.value;
                    }                
                }
            /*
            else {
                var s="";
                for (j in item) {
                    if ((item[j]!=null)&&(item[j]!='')) {
                        s+="'"+j+"'='"+item[j]+"'\n";
                        }
                    }
                alert(s);
                }
            */
            }
        }
    if (! array_key_exists("tipusID", k)) {
        item=document.getElementById("tipusID");
        if (item) {
            if (item.value!="") {
                k.push("tipusID");
                v["tipusID"]=item.value;
                }
            }
        }
    if (! array_key_exists("ertekesites_tipusID", k)) {
        item=document.getElementById("ertekesites_tipusID1");
        if (item) {
            if (item.checked) {
                //url+="&ertekesites_tipusID=1";
                k.push("ertekesites_tipusID");
                v["ertekesites_tipusID"]=1;
                } else {
                        //url+="&ertekesites_tipusID=2";
                        k.push("ertekesites_tipusID");
                        v["ertekesites_tipusID"]=2;
                        }
            }
        }
    k.sort();
    
    var url="/?p=search&f=count";
    var l="";
    for(i in k) {
        if (k[i]=="p") {
            }
        else if (k[i]=="f") {
            }
        else if (k[i]!=l) {
            url+="&"+escape(k[i])+"="+escape(v[k[i]]);
            l=k[i];
            }
        }
    //url=url.replace("&p=", "&p2=");
    //url=url.replace("&f=", "&f2=");
    //url="/?p=search&f=count"+url;    
    
    var auto=document.forms["search_mini"].elements["search_auto"].checked;
    var l=document.getElementById("search_auto_label");
    if (auto) {
        document.forms["search_mini"].elements["search_bt"].style.display="none";
        l.innerHTML="Ha lassú a kereső, az automata kikapcsolása";
        set_cookie("search_auto", "1", 2050, 12, 31, "/");
        } else {
                document.forms["search_mini"].elements["search_bt"].style.display="block";
                l.innerHTML="Automatikus keresés";
                set_cookie("search_auto", "0", 2050, 12, 31, "/");
                }

    if (url!=last_search_url) {
        last_search_url=url;

        var a_list=document.getElementById("a_list_image");
        if (a_list) {
            a_list.href="/ingatlan-lista/?"+url.replace("/?p=search&f=count", "");
            a_list.href=a_list.href.replace("?&", "?");
            }        

        url+="&r="+Math.floor(Math.random()*1000000);
        
        if (! auto) {
            ajax_data(url, "search_write('search_bt', 'value', 'Keresés ('+parseInt(xmlhttp.responseText)+' ingatlan)');");
            }
        ajax_data(url, "item_count=parseInt(xmlhttp.responseText);");

        var url2=url;
        url2=url2.replace("&ertekesites_tipusID=", "&ertekesites_tipusID2=");
        url2+="&ertekesites_tipusID=1";
        ajax_data(url2, "search_write('l_ertekesites_tipusID1', 'innerHTML', 'Eladó ('+parseInt(xmlhttp.responseText)+' ingatlan)');");

        url2=url;
        url2=url2.replace("&ertekesites_tipusID=", "&ertekesites_tipusID2=");
        url2+="&ertekesites_tipusID=2";
        ajax_data(url2, "search_write('l_ertekesites_tipusID2', 'innerHTML', 'Kiadó ('+parseInt(xmlhttp.responseText)+' ingatlan)');");
                
        if ((auto)&&(! start)) {
            next_page=0;
            url2=url;
            url2=url2.replace("&f=count", "&f=ajax_search");
            ajax_data(url2, "search_write('content_td', 'innerHTML', xmlhttp.responseText);");
            }
        else if (location.search.match("search_auto=1")) {
            next_page=0;
            }        
        }    

    if ((auto)&&(! load_page)&&(next_page>=0)) {      
        if ((next_page+1)*page_item_count<item_count) {
            //alert(get_doc_height()+"\n"+get_top()+"\n"+get_win_height());
            if (get_doc_height()-get_top()-get_win_height()<=get_win_height()) {
                next_page++;
                load_page=true;
                url2=url;
                url2=url2.replace("&f=count", "&f=ajax_search");
                url2+="&l="+next_page;
                search_write("content_td", "innerHTML", "<div class='auto_search_progress' id='auto_search_progress_"+next_page+"'>A(z) "+(next_page+1)+". oldal betöltése folyamatban van.</div>", true);                
                ajax_data(url2, "document.getElementById('auto_search_progress_"+next_page+"').style.display='none'; search_write('content_td', 'innerHTML', xmlhttp.responseText, true); load_page=false;");
                }            
            }    
        }        

/*        
    if ((auto)&&(! load_page)) {
        var td=document.getElementById("content_td");
        var items=td.getElementsByTagName("script");
        for(i in items) {
            if (items[i]) {
                if ((typeof(items[i].innerHTML)!="undefined")&&(items[i].innerHTML!="")) {
                    eval(items[i].innerHTML);
                    items[i].innerHTML="";
                    }
                }
            }
        }
*/        
}

function search_write(id, key, value, append) {
    if (typeof append=="undefined") {
        append=false;
        }

    //alert("'"+id+"', '"+key+"', '"+value+"'");
    var item=document.getElementById(id);
    if (item) {
        if (append) {
            if (key=="innerHTML") {
                var item2=document.createElement('div');
                item2.innerHTML=value;
                for(i=0; i<item2.childNodes.length; i++) {
                    item.appendChild(item2.childNodes[i].cloneNode(true));
                    }                
                } else {
                        item[key]+=value;
                        }
            } else {
                    item[key]=value;
                    }
        }
}

function ajax_data(url, callback) {
    var r=Math.floor(Math.random()*1000000);
    eval("if (window.XMLHttpRequest) { var xmlhttp"+r+"=new XMLHttpRequest(); } else { var xmlhttp"+r+"=new ActiveXObject('Microsoft.XMLHTTP'); } "+
         "xmlhttp"+r+".onreadystatechange=function() { if ((xmlhttp"+r+".readyState==4) && (xmlhttp"+r+".status==200)) { "+callback.replace("xmlhttp.", "xmlhttp"+r+".")+" } }; "+
         "xmlhttp"+r+".open('GET',url,true);"+
         "xmlhttp"+r+".send(null);");
}

/* -------------------------------------------------------------------------- */    

function ar_keydown(item, e) {
    var re=false
    
    var key;    
    if (window.event) {
        key=e.keyCode;
        }
    else if (e.which) {
        key=e.which;
        //item.onkeypress=ar_keypress;
        }
    if (key==0 || key == 8 || key == 37 || key == 39 || key == 46 || (key>=48 && key<=57) || (key>=96 && key<=105) || key == 188 || key == 190) {
        re=true;
        }
                
    return re;
}

function ar_keyup(item) {
    var s=item.value;

    while (s.match(/[^0-9\.\,]+/)) {
        s=s.replace(/[^0-9\.\,]+/, "");
        }
    while (s.match(/\,+/)) {
        s=s.replace(/\,+/, ".");
        }
    if (s.match(/\..*\./)) {
        while (s.match(/\.+/)) {
            s=s.replace(/\.+/, "");
            }
        } 
    
    if (item.value!=s) {
        item.value=s;
        }
        
    if (parseFloat(item.value)>999){
        alert("Az irányár mezőkbe milliót kell beírnia egyész számmal (5), vagy tizedestört folmájában (5.2)!\nMaximum 999-et írhat be.");
        item.value=999;
        }
}

/*
function ar_keyup(item) {
    var s=item.value;
    while (s.match(/[^0-9]+/)) {
        s=s.replace(/[^0-9]+/, "");
        }
    
    var s2="";
    var j=0;
    for(i=s.length-1; i>=0; i--) {
        j++;
        if (j==4) {
            j=1;
            s2=" "+s2;
            }
        s2=s.charAt(i)+s2;
        }
    if (item.value!=s2) {
        item.value=s2;
        }
}
*/

/* -------------------------------------------------------------------------- */    

function kerulet_frissit(id) {
    var item=document.getElementById("kerulet_div");
    var items=document.getElementsByTagName("input");    
    if (item) {
        if (id!=393) {
            item.style.backgroundColor="#F0F0F0";
            for(i in items) {
                if (items[i].className) {
                    if (items[i].className.match("check")) {
                        items[i].checked=false;
                        items[i].disabled="disabled";
                        }
                    }
                }            
            } else {
                    item.style.backgroundColor="#FFFFFF";
                    for(i in items) {
                        if (items[i].className) {
                            if (items[i].className.match("check")) {
                                items[i].disabled="";
                                }
                            }
                        }            
                    }
        }        
}

/* -------------------------------------------------------------------------- */

function search_utca_check() {
    var utca=document.forms["search_mini"].elements["search_utca"].checked;
    if (! utca) {
        var tr=document.getElementById("utca_tr");
        var div=document.getElementById("utca_div");
        if ((tr)&&(div)) {
            tr.style.display="none";
            div.innerHTML="";
            }
        } else {
                cimhely2_check();
                }    
}

/* -------------------------------------------------------------------------- */

function cimhely_check() {
    var tr=document.getElementById("utca_tr");
    var div=document.getElementById("utca_div");
    if ((tr)&&(div)) {    
        var url="/?p=search&f=ajax_cimhely&r="+Math.floor(Math.random()*1000000);        
    
        var items=document.getElementsByTagName("input");    
        for(i in items) {
            if (items[i]) {
                if (items[i].name) {
                    if (items[i].name.match("keruletID")) {
                        if (items[i].checked) {
                            url+="&keruletID[]="+items[i].value;
                            }
                        }
                    else if (items[i].name.match("cimhely")) {
                        if (items[i].checked) {
                            url+="&cimhely[]="+escape(items[i].value);
                            }
                        }
                    }
                }
            }

        if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari
            var xmlhttp=new XMLHttpRequest();
            } else { // code for IE6, IE5
                    var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
                    }
        xmlhttp.open("GET",url,false);
        xmlhttp.send(null);
        if (xmlhttp.responseText!="") {
            div.innerHTML=xmlhttp.responseText;
            tr.style.display="";
            } else {
                    div.innerHTML="";
                    tr.style.display="none";
                    }
        }    
}

/* -------------------------------------------------------------------------- */

function cimhely2_check() {
    var utca=document.forms["search_mini"].elements["search_utca"].checked;
    if (utca) {
        var tr=document.getElementById("utca_tr");
        var div=document.getElementById("utca_div");
        if ((tr)&&(div)) {    
            var url="/?p=search&f=ajax_cimhely&r="+Math.floor(Math.random()*1000000);        
        
            var items=document.getElementsByTagName("input");    
            for(i in items) {
                if (items[i]) {
                    if (items[i].name) {
                        if (items[i].name.match("tree")) {
                            if (items[i].checked) {
                                url+="&tree[]="+items[i].value;
                                }
                            }
                        else if (items[i].name.match("cimhely")) {
                            if (items[i].checked) {
                                url+="&cimhely[]="+escape(items[i].value);
                                }
                            }
                        }
                    }
                }
    
            if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari
                var xmlhttp=new XMLHttpRequest();
                } else { // code for IE6, IE5
                        var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
                        }
            xmlhttp.open("GET",url,false);
            xmlhttp.send(null);
            if (xmlhttp.responseText!="") {
                div.innerHTML=xmlhttp.responseText;
                tr.style.display="";
                } else {
                        div.innerHTML="";
                        tr.style.display="none";
                        }
            }
        }                        
}

/* -------------------------------------------------------------------------- */

function tipus_select() {
    var tipus=document.getElementById("tipusID");    
    if (tipus) {
        var i=0;
        var szerkezet_tr=document.getElementById("szerkezet_tr");
        if (szerkezet_tr) {
            szerkezet_tr.style.display="none";
            for(k in tipus_szerkezet[tipus.value]) {
                if (k.match(/^[\d]*$/)) {
                    var szerkezet=document.getElementById("szerkezet_"+k);
                    var szerkezet_div=document.getElementById("szerkezet_d"+k);
                    if ((szerkezet)&&(szerkezet_div)) {
                        if (tipus_szerkezet[tipus.value][k]==0) {
                            szerkezet_div.style.display="none";
                            szerkezet.checked=true;
                            } else {
                                    szerkezet_div.style.display="";
                                    i++;
                                    }
                        }
                    }
                }
            if (i>1) {
                szerkezet_tr.style.display="";
                }
            }        

        i=0;
        var futes_tr=document.getElementById("futes_tr");
        if (futes_tr) {
            futes_tr.style.display="none";
            for(k in tipus_futes[tipus.value]) {
                if (k.match(/^[\d]*$/)) {
                    var futes=document.getElementById("futes_"+k);
                    var futes_div=document.getElementById("futes_d"+k);
                    if ((futes)&&(futes_div)) {
                        if (tipus_futes[tipus.value][k]==0) {
                            futes_div.style.display="none";
                            futes.checked=true;
                            } else {
                                    futes_div.style.display="";
                                    i++;
                                    }
                        }
                    }
                }
            if (i>1) {
                futes_tr.style.display="";
                }
            }        
        }
}

function tipus2_select() {
    var tipus=document.getElementById("tipusID");    
    if (tipus) {
        var i;

        var szerkezet=document.getElementById("szerkezetID");
        var szerkezet_tr=document.getElementById("szerkezet_tr");
        if ((szerkezet)&&(szerkezet_tr)) {
            szerkezet_tr.style.display="none";
            if (tipus.value!="") {
                var szerkezet2=szerkezet.options[szerkezet.selectedIndex].text;
                i=0;
                for(k in tipus_szerkezet[tipus.value]) {
                    if (k.match(/^[\d]*$/)) {
                        szerkezet.options.length=i+1;
                        szerkezet.options[i].value=k;
                        szerkezet.options[i].text=tipus_szerkezet[tipus.value][k];
                        if (tipus_szerkezet[tipus.value][k]==szerkezet2) {
                            szerkezet.selectedIndex=i;
                            }
                        i++;
                        }
                    }
                if (i>1) {
                    szerkezet_tr.style.display="";
                    }
                }
            if (szerkezet_tr.style.display=="none") {
                szerkezet.selectedIndex=0;                
                }
            }        

        var futes=document.getElementById("futesID");
        var futes_tr=document.getElementById("futes_tr");
        if ((futes)&&(futes_tr)) {
            futes_tr.style.display="none";
            if (tipus.value!="") {
                var futes2=futes.options[futes.selectedIndex].text;
                i=0;
                for(k in tipus_futes[tipus.value]) {
                    if (k.match(/^[\d]*$/)) {
                        futes.options.length=i+1;
                        futes.options[i].value=k;
                        futes.options[i].text=tipus_futes[tipus.value][k];
                        if (tipus_futes[tipus.value][k]==futes2) {
                            futes.selectedIndex=i;
                            }
                        i++;
                        }
                    }
                if (i>1) {
                    futes_tr.style.display="";
                    }
                }
            if (futes_tr.style.display=="none") {
                futes.selectedIndex=0;                
                }
            }        
        }
}

/* -------------------------------------------------------------------------- */

function tree_node_click(id) {
    var table=document.getElementById("node_"+id);
    var col=document.getElementById("tree_collapse_"+id);
    var a=document.getElementById("tree_img_"+id);
    if ((table)&&(col)&&(a)) {
        if (col.value=="0") {
            table.className="";
            a.className="";
            col.value="1";
            } else {
                    table.className="closed";
                    a.className="closed";
                    col.value="0";
                    }
        }    
}

function tree_check_click(item) {
    if (item.checked) {
        var col=document.getElementById("tree_collapse_"+item.value);
        if (col) {
            col.value=0;   
            tree_node_click(item.value);
            }
        
        var p_item=document.getElementById("tree_parent_"+item.value);
        if (p_item) {
            if (p_item.value!="") {
                var a=p_item.value.split("|");
                for(k in a) {
                    var item2=document.getElementById("tree_"+a[k]);
                    if (item2) {
                        item2.checked=false;
                        }
                    }
                }
            }
        var c_item=document.getElementById("tree_child_"+item.value);
        var ca_item=document.getElementById("tree_all_child_"+item.value);
        if ((c_item)&&(ca_item)) {
            if ((ca_item.value!="")&&(c_item.value!="")) {
                //var check=(c_item.value.match(/l[0-9]+\-[0-9]+/)!=null);
                var check=(c_item.value.match(/l[0-9]+/)!=null);
                var a=ca_item.value.split("|");
                for(k in a) {
                    var item2=document.getElementById("tree_"+a[k]);
                    if (item2) {
                        item2.checked=check;
                        }
                    }
                }
            }

        if ((item.value.match(/t[0-9]+/))&&(item.value!=tree_default)) {
            var d_item=document.getElementById("tree_"+tree_default);
            if (d_item) {
                if (d_item.checked) {
                    d_item.checked=false;
                    tree_check_click(d_item);
                    }
                }                    
            }    
        } else {
                /*
                var col=document.getElementById("tree_collapse_"+item.value);
                if (col) {
                    col.value=1;   
                    tree_node_click(item.value);
                    }
                */
                
                var c_item=document.getElementById("tree_all_child_"+item.value);
                if (c_item) {
                    if (c_item.value!="") {
                        var a=c_item.value.split("|");
                        for(k in a) {
                            var item2=document.getElementById("tree_"+a[k]);
                            if (item2) {
                                item2.checked=false;
                                }
                            }
                        }
                    }                    
                }
}


/* -------------------------------------------------------------------------- */

function contact_select() {
    document.getElementById("offer_form_div").style.display="none";
    document.getElementById("contact_form_div").style.display="";
}

function offer_select() {
    document.getElementById("contact_form_div").style.display="none";
    document.getElementById("offer_form_div").style.display="";
}

/* -------------------------------------------------------------------------- */

/*
function add_favorite(id, login) {
    if (login) {
        if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari
            var xmlhttp=new XMLHttpRequest();
            } else { // code for IE6, IE5
                    var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
                    }
        xmlhttp.open("GET","/?p=account&f=add_favorite&id="+id,false);
        xmlhttp.send(null);
        if (xmlhttp.responseText=="1") {
            alert("Az ingatlant a kedvencek közé tette!");
            } else {
                    alert("Nem sikerült az ingatlant a kedvencei közé tenni!\nValószínűleg rendszerünk idő közben kiléptette. Lépjen be újra!");
                    }
        } else {
                //alert('A funkció használatához lépjen be az "Önkiszolgáló Ügyfélszolgálat"-hoz.\nHa még nincs hozzáférése, regisztráljon!');
                location="/?p=account&f=register&id="+id;
                }    
}
*/

/*
function add_favorite(id, login) {
    add_my_bookmark(id);
    if (login) {
        var c=get_cookie("no-bookmark-search");
        if (c!="1") {
            if (confirm("Az ingatlant a lakáslistába tette!\nHa azt szeretné, hogy a ingatlan adatai alapján egy keresést hozzunk létre és az ennek megfelelő új ingatlanokról rendszeres értesítést küldjünk, kattintson az OK gombra.")) {
                ajax_data("/ajax/bookmark-search/?id="+id, "");
                } else {
                        set_cookie("no-bookmark-search", "1");
                        }            
            } else {
                    alert("Az ingatlant a lakáslistába tette!");
                    }
        } else {
                var c=get_cookie("no-register");
                if (c!="1") {
                    if (confirm("Az ingatlant a lakáslistába tette!\nJelenleg nincs bejelentkezve az \"Önkiszolgáló Ügyfélszolgálat\"-ra, ezért ez a rögzítés csak ideiglenes.\nHa szeretne most belépni, hogy lakáslistáját véglegesen rögzítse és azokat bárhonnan elérhesse, kattintson az OK gombra.")) {
                        location="/?p=account&f=register&id="+id;
                        } else {
                                set_cookie("no-register", "1");
                                }            
                    } else {
                            alert("Az ingatlant a lakáslistába tette!");
                            }
                }
}
*/

function add_favorite(id, login, addsearch) {
    add_my_bookmark(id);
    if (login) {
        if (addsearch) {
            ajax_data("/ajax/bookmark-search/?id="+id, "");
            } else {
                    var c=get_cookie("no-bookmark-search");
                    if (c!="1") {
                        if (confirm("Az ingatlant a lakáslistába tette!\nHa azt szeretné, hogy a ingatlan adatai alapján egy keresést hozzunk létre és az ennek megfelelő új ingatlanokról rendszeres értesítést küldjünk, kattintson az OK gombra.")) {
                            ajax_data("/ajax/bookmark-search/?id="+id, "");
                            } else {
                                    set_cookie("no-bookmark-search", "1");
                                    }            
                        } else {
                                alert("Az ingatlant a lakáslistába tette!");
                                }
                    }
        } else {
                var c=get_cookie("no-register");
                if (c!="1") {
                    if (confirm("Az ingatlant a lakáslistába tette, mely a jelenleg használt számítógépen fog a lakáslistában megjelenni.\nHa szeretne hirdetésfigyelőt beállítani, és az ennek megfelelő új ingatlanokról rendszeres értesítést kapni, kattintson az OK gombra.")) {
                        location="/?p=account&f=register&id="+id;
                        } else {
                                set_cookie("no-register", "1");
                                }            
                    } else {
                            alert("Az ingatlant a lakáslistába tette!");
                            }
                }
}

/* -------------------------------------------------------------------------- */

function add_my_bookmark(id) {
    set_cookie("bookmark["+id+"]", "1", 2050, 12, 31, "/");
    reload_my_bookmark();    
}

function remove_my_bookmark(id) {
    set_cookie("bookmark["+id+"]", "0", 2050, 12, 31, "/");
    ajax_data("/ajax/bookmark-delete/?id="+id, "");
    reload_my_bookmark();
}

function clear_my_bookmark() {
    var c=document.cookie.split(";");
    var re=/bookmark\[([0-9]+)\]/;
    var m;
    for(i in c) {
        if (m=re.exec(c[i])) {
            remove_my_bookmark(m[1]);
            }
        }
    ajax_data("/ajax/bookmark-clear/", "");
    reload_my_bookmark();    
}

function reload_my_bookmark() {
    ajax_data("/ajax/bookmark-list/", "document.getElementById('bookmark_list').innerHTML=xmlhttp.responseText; if (document.getElementById('bookmark_list').innerHTML=='') { document.getElementById('bookmark_list_container').style.display='none'; } else { document.getElementById('bookmark_list_container').style.display='' } ");
}

/* -------------------------------------------------------------------------- */

function array_key_exists(k, a) {
    var re=false;
    try {
        if (a[k]) {
            re=true;
            }
        }
    catch(err) {
        }
    return re;
}

/* -------------------------------------------------------------------------- */

function set_cookie ( name, value, exp_y, exp_m, exp_d, path, domain, secure ) {
    var cookie_string = name + "=" + escape (value);
    if (exp_y) {
        var expires = new Date ( exp_y, exp_m, exp_d );
        cookie_string += "; expires=" + expires.toGMTString();
        }
    if (path) {
        cookie_string += "; path=" + escape (path);
        }
    if (domain) {
        cookie_string += "; domain=" + escape (domain);
        }
    if (secure) {
        cookie_string += "; secure";
        }
    document.cookie = cookie_string;
}

function get_cookie (cookie_name) {
    var results = document.cookie.match ( '(^|;) ?' + cookie_name + '=([^;]*)(;|$)' );
    if ( results ) return ( unescape ( results[2] ) );
        else return null;
}

function get_top () {
    var top=0;
    if (self.pageYOffset || self.pageXOffset) {
        top = self.pageYOffset;
        }
    else if (document.documentElement && document.documentElement.scrollTop || document.documentElement.scrollLeft ){  // Explorer 6 Strict
        top = document.documentElement.scrollTop;
        }
    else if (document.body) {// all other Explorers
        top = document.body.scrollTop;
        }
    return top;
}

function get_doc_height() {
    var D = document;
    return Math.max(
        Math.max(D.body.scrollHeight, D.documentElement.scrollHeight),
        Math.max(D.body.offsetHeight, D.documentElement.offsetHeight),
        Math.max(D.body.clientHeight, D.documentElement.clientHeight)
    );
}

function get_win_height() {
    var height=0;
    if (document.body && document.body.offsetWidth) {
        height=document.body.offsetHeight;
        }
    if ((document.compatMode=='CSS1Compat')&&(document.documentElement)&&(document.documentElement.offsetWidth)) {
        height=document.documentElement.offsetHeight;
        }
    if ((window.innerWidth)&&(window.innerHeight)) {
        height=window.innerHeight;
        }
    return height;
}

