﻿function beginRequestHandler(sender, args) 
{
   args.get_request().set_userContext(args.get_postBackElement().id);
}

function endRequestHandler(sender, args)
{
    var postbackSender = args.get_response().get_webRequest().get_userContext();
    
    if (postbackSender.toLowerCase().indexOf("maptimer") != -1)
    {
        if (document.getElementById("ctl00_hidMapEnv") != null && 
        document.getElementById("ctl00_hidMapEnv").value.toLowerCase() == "google")
        {
            CrystalBall.GService.GetOptimizedGoogleObject(ID,fGetGoogleObjectOptimized);
        }
        else //assume navteq
        {
            if (mapInteractive)
            {
                CrystalBall.NavteqService.GetOptimizedNavteqObject(ID,fGetNavteqObjectOptimized);
            }
        }
    }        
        
    if (args.get_error() != undefined)
        args.set_errorHandled(true);
}

function pageLoad()
{
    if (Sys.WebForms.PageRequestManager.getInstance() != null)
    {
        if(!Sys.WebForms.PageRequestManager.getInstance().get_isInAsyncPostBack())
        {
            Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(beginRequestHandler);
            Sys.WebForms.PageRequestManager.getInstance().add_endRequest(endRequestHandler);
        }
    }
}
