    
function Main(
         lblCompanyNameID,
         lblUserNameID,
         tbSearchID,
         cbExtendSessionID,
         splitterBodyID,
         paneContentID,
         paneMenuID,
         cbGetGMTOffsetID
         )
{
    this.LoadCompany = LoadCompany;
    this.LoadContentFrame = LoadContentFrame;
    this.DoSearch = DoSearch;
    this.ExtendSession = ExtendSession
    this.HideMenuPane = HideMenuPane;
    this.GetGMTOffset = GetGMTOffset;
    
    
    function HideMenuPane()
    {
        var splitter = $find(splitterBodyID);
        var pane = splitter.getPaneById(paneMenuID);
        if (!pane) return;
        pane.collapse();
    }
    
    
    function ExtendSession()
    {
        ASPxClientControl.GetControlCollection().Get(cbExtendSessionID).SendCallback("extendsession");
    }
    
    function GetGMTOffset()
    {
        var d = new Date();
        var offset = d.getTimezoneOffset();
        ASPxClientControl.GetControlCollection().Get(cbGetGMTOffsetID).SendCallback(offset);
    }
    
    function DoSearch()
    {
      var tbSearch = document.getElementById(tbSearchID);
      
      if (tbSearch.value == null || tbSearch.value == "" || tbSearch.value == "Knowledge Base Search")
      {
        alert("Please enter some search keywords.");
        return;
      }
      var url = "KBSearch.aspx?searchtext=" + tbSearch.value;
      this.LoadContentFrame(url);
    }
  
    
    function LoadContentFrame(url) 
    {
        var splitter = $find(splitterBodyID);
        var pane = splitter.getPaneById(paneContentID);
        if (!pane) return;
        pane.set_contentUrl(url);
    }


    function LoadCompany(id, name)
    {
        // Update the company name label
        document.getElementById(lblCompanyNameID).innerHTML = name;
        
        
        // Reload the IncidentList page into the content pane
        LoadContentFrame("IncidentList.aspx");
       
    }

}
