﻿//var selectedItemsCount = 0;
//var selectedItems = new Array();
var gIsLoaded = false;
var sortBusy = false; // Nodig om de pijltjes bij de sorteerknopjes wat rustiger te maken

var state = "woningaanbod";
var plaatsNaam = "";

function initDWA(onLoad) {
    // Back button fix
    Sys.Application.add_navigate(onStateChanged);
    Sys.Application.add_load(applicationLoadHandler);
    
    //if (window.location.hash.startsWith("#&&Project=")) {
    //    window.location = "/woningaanbod.aspx?Project=" + window.location.hash.replace("#&&Project=", "");
    //}

    //if (onLoad) {       
        // Routine voor menubewegingen starten
        //initMenu();
    //}
    
    // Clientheight opvragen
    var clientHeight = document.documentElement.clientHeight;
    
    // Overlays links en rechts de goede hoogte geven
    var overlayLeft = document.getElementById('overlayLeft');
    var overlayRight = document.getElementById('overlayRight');
    overlayLeft.style.height = Math.max(clientHeight, 682) + 'px';
    overlayRight.style.height = Math.max(clientHeight, 682) + 'px';
    
    // Zoekresultaten de goede hoogte geven
    var resultObject = document.getElementById('searchResultsContentOmvat');
    var resizeHeight;
    resizeHeight = Math.floor((clientHeight - 166) / 138) * 138;
    resizeHeight = Math.max(resizeHeight, 414);
    resultObject.style.height = resizeHeight + 'px';
    
    // Afdekvlak positioneren
    var afdekDiv = document.getElementById('afdekDiv');
    afdekDiv.style.height = resizeHeight + 'px';
    afdekDiv.style.marginTop = - resizeHeight + 'px';
    
    // Ajaxload in afdekvlak positioneren
    document.getElementById('ajaxload2').style.marginTop = ((resizeHeight - 66) / 2) + 'px';
}


// --------------------- back button fix

function applicationLoadHandler() {
    //alert("applicationLoadHandler state: " + state);
}

function onStateChanged(sender, e) {
//    if (state == "Woningaanbod")
//        slideToProject();
    if (state == "project")
        slideToDWA();
}

function slideToDWA() {
    startSlide('moveDiv', 0, 0, 'setOverflowHidden(true)', 'setOverflowHidden(false);runAfterSlideToDWA()');
    state = "goWoningaanbod";
}

function runAfterSlideToDWA() {
    if (plaatsNaam != "") {
        seGLoadMetPlaats(plaatsNaam);
    }
    seDoPageAjaxMgrWithTarget('hbt', '');
    state = "Woningaanbod";
    setWinkelmandjeVisible();
}

//function tempDisableMenu()
//{
   //magMenuUitKlappen = false;
//}

function startSlideToProject(onyxId) {
    tempScroll = document.getElementById('searchResultsContentOmvat').scrollTop;
    document.seForm.vestedaMenu2$hitb.value = onyxId;
    seDoPageAjaxMgrWithTarget('vestedaMenu2$vbt', '');
}

function startSlideToKoopProject(RwId) {
    tempScroll = document.getElementById('searchResultsContentOmvat').scrollTop;
    document.seForm.vestedaMenu2$hitbKoop.value = RwId;
    seDoPageAjaxMgrWithTarget('vestedaMenu2$vbtKoop', '');
}

function startSlideToKoopContact(RwId) {
    tempScroll = document.getElementById('searchResultsContentOmvat').scrollTop;
    document.seForm.vestedaMenu2$hitbKoopContact.value = RwId;
    seDoPageAjaxMgrWithTarget('vestedaMenu2$vbtKoopContact', '');
}

function onloadSlideToProject()
{
    if (document.getElementById('projectsiteFrame').src != "" && document.getElementById('projectsiteFrame').src.indexOf("/woningaanbod.aspx") < 0 && document.getElementById('projectsiteFrame').src.indexOf("/koopaanbod.aspx") < 0) {
        slideToProject('undoAjaxLoad4()');
    }    
}

function stepSlideToProject(prjUrl) {
    document.getElementById('projectsiteFrame').src = prjUrl;
    document.getElementById('afdekDiv').style.display = 'block';
}

function slideToProject(runBefore) {
    if (runBefore != "")
        startSlide('moveDiv', -942, 0, "setOverflowHidden(true);" + runBefore, 'setOverflowHidden(false);runAfterSlideToProject()');
    else
        startSlide('moveDiv', -942, 0, 'setOverflowHidden(true);', 'setOverflowHidden(false);runAfterSlideToProject()');

    document.getElementById('afdekDiv').style.display = 'none';
}

function runAfterSlideToProject() {
    state = "project";
    //alert("runAfterSlideToProject: " + state);
}

function setOverflowHidden(setToHidden) {
    var obj = document.getElementById('moveDiv');
    
    if (obj) {
        if (setToHidden) {
            obj.style.overflow = 'hidden';
        }
        else {
            obj.style.overflow = '';
        }
    }
}

var ajaxLoad4 = null;

// AJAXLOAD 3A
function doAjaxLoad3a(obj)
{
    obj.src = '/images/dwa/ajaxload3a.gif'
}

// AJAXLOAD 3B
function doAjaxLoad3b(obj)
{
    obj.src = '/images/dwa/ajaxload3b.gif'
}

// AJAXLOAD 4
function doAjaxLoad4(obj) {
    undoAjaxLoad4();
    
    try{
        ajaxLoad4 = obj;
        ajaxLoad4.src = '/images/dwa/ajaxload4.gif'
    }
    
    catch(e)
    {
    }
}

// UNDO AJAXLOAD 4
function undoAjaxLoad4()
{
    if (ajaxLoad4) ajaxLoad4.src = '/images/dwa/meerInfoBtn1.gif';
    ajaxLoad4 = null;
}

function updateSelection2(vComplexId)
{
    // Werkt niet meer na update naar Telerik Q3 2008, ander oplossing zoeken (Bart, 08-12-2008)
    //AjaxNS.AR('projectpnl_' + vComplexId + '$selectBtn2', '', 'sePageAjaxMgr', event);
    //return false;
}

function scrollTo(to)
{   
    document.getElementById('searchResultsContentOmvat').scrollTop = to;
}

var tempScroll = 0; // houdt de scrollpositie en zet die weer goed na een ajax update van de zoekresultaten

function sePageAjaxMgr_OnRequestStart(sender, arguments)
{
    var action = arguments.EventTarget;
    //alert(action);
    if (action == "sePageAjaxMgr" || action.substring(0, 10) == "sortButton" || action.substring(12) == "corpBtn2" || action.substring(12) == "zoekBtn2")
    {
        document.getElementById('afdekDiv').style.display = 'block';
    }
    
    if (action == "vestedaMenu2$zoekBtn2" || action == "vestedaMenu2$corpBtn2")
    {
        //menuKlapMeteenIn();
        menuMainClose();
    }
    
    if (action.substring(18) == "meerInfoBtn") {
        tempScroll = document.getElementById('searchResultsContentOmvat').scrollTop;
    }
}

function sePageAjaxMgr_OnResponseEnd(sender, arguments)
{
    // Het afdekdiv dat evt. is verschenen weer verbergen
    document.getElementById('afdekDiv').style.display = 'none';
    
    // Omdat de sePageAjaxMgr wordt gebruikt én
    // het OnResponseEnd event anders wordt afgehandeld
    // dan standaard, hier de oorspronkelijke OnResponseEnd
    // aanroep handmatig uitvoeren (alleen indien ingelogd)
    try { seSetPageAjaxMessage('end'); } catch (err) { }
    
    /*
    try
    {
        selectedItems = new Array();
        selectedItems = document.getElementById('selectieCtrl_selectedItemsField').value.split(',');
        selectedItemsCount = selectedItems.length;
    }
    catch (err)
    {
        
    }
    */

    var action = arguments.EventTarget;
    //alert(action);
    if (action == "vestedaMenu2$zoekBtn2" || action == "vestedaMenu2$corpBtn2") {
        
        placeMarkers();
        
        var plaats = "";
        if (document.getElementById('vestedaMenu2_zbWoonplaats')) plaats = document.getElementById('vestedaMenu2_zbWoonplaats').value;
        
        if (action == "vestedaMenu2$corpBtn2")
        {
            plaats = document.getElementById('vestedaMenu2_zbWoonplaatsCorpHous').value;
        }
        
        if (plaats != "")
        {
            showAddress(plaats);
        }
        else
        {
            map.setCenter(new GLatLng(latStart, lonStart), zoomStart);
            slideToDWA();
        }
    }
    
    if (action == "sePageAjaxMgr" || action.substring(0, 10) == "sortButton")
    {
        document.getElementById('googleControls').style.visibility = 'visible';
        sortBusy = false;
    }
    
    if (action.substring(18) == "meerInfoBtn") {
        document.getElementById('searchResultsContentOmvat').scrollTop = tempScroll;
        doAjaxLoad4(ajaxLoad4);
    }
    
    if (tempScroll > 1) {
        document.getElementById('searchResultsContentOmvat').scrollTop = tempScroll;
        tempScroll = 0;
    }
    
    // klik boven ingeschoven projecten site in zoom sleutel
    if (action == "sePageAjaxMgr" && state == "project")
    {
        try{
            if (document.getElementById('projectsiteFrame'))
            {
                if (document.getElementById('projectsiteFrame').contentWindow.aanbodUrl)
                {
                    var now = new Date();
                    var url = document.getElementById('projectsiteFrame').contentWindow.aanbodUrl;
                    if (url.indexOf("?") > 0)
                    {
                        url += "&rnd=" + now.valueOf()
                    } else {
                        url += "?rnd=" + now.valueOf()
                    }                   
                    document.getElementById('projectsiteFrame').src = document.getElementById('projectsiteFrame').contentWindow.aanbodUrl;
                }
            }
        }
        catch(e)
        {}
    }
    
    /*
    // Voert na het deselecteren via Javascript de routine uit die de select-divjes
    // aan/uit/geselecteerd zet.
    if (action.substring(action.length-10, action.length-1) == "selectBtn")
    {   
        var divs = document.getElementsByTagName("div");
        
        for (i=0; i < divs.length; i++)
        {
            var id = divs[i].id.substring(divs[i].id.length-12, divs[i].id.length);

            if (id == "selecteerDiv")
            {
                if (selectedItemsCount == 5 && divs[i].className != "selecteerDivActive")
                {
                    divs[i].style.display = 'none';
                }
                else
                {
                    divs[i].style.display = '';
                }
            }
        }
    }
    */
}

var orgSrc = new Array();

function sortSwap(obj, swapBack)
{ 
    var src = obj.src;
    var newsrc = "";
    
    if (swapBack == true)
    {
        if (sortBusy == false) obj.src = orgSrc[obj];
    }
    else
    {
        orgSrc[obj] = src;
        
        if (src.search("off.gif") != -1)
        {
            newsrc = src.replace("off.gif", "up.gif");
        }
        if (src.search("down.gif") != -1)
        {
            newsrc = src.replace("down.gif", "up.gif");
        }
        if (src.search("up.gif") != -1)
        {
            newsrc = src.replace("up.gif", "down.gif");
        }
        
        obj.src = newsrc;
    }
}