﻿// JScript File
/************************************************************************************* 
-  JScriptNavObjects  This file contains JavaScript objects that 
-       facilitate Navigation
**************************************************************************************/
/************************************************************************************* 
-  Related Jscript files   
-       JScriptCommPageFunctions.  This is REQUIRED in order to have navigation function.
**************************************************************************************/
/*Navigation Classes *****************************************************************/
/* *********************************************************************************** 
-  Class: NavObject   
-  Purpose: This object will enable dynamic navigation on the client side.  It will
-           use the Server side Navigation object as a backstore.  It will also set
-           navigation message text if needed.  
-  Date:  10/17/2007
-  Mods:
-     
************************************************************************************ */ 
function NavObject()
{

  // Constructor
   this.Init = Init();
  //Public Methods 
  this.ChangeTextMsg = ChangeTextMsg; 
  this.SetTextMsg = SetTextMsg;  
  // Private Variable Declarations ////////////////////////
  var _RedirectTo;
  var _Redirect;
  var _cont;
  var _changeText;
  // Property Getters
  //GetRedirectTo - String that contains the redirection address.
  this.GetRedirectTo = GetRedirectTo; 
  function GetRedirectTo()
    {
        return _RedirectTo;
    }
  //IsChangeText - Flag that indicates message text change.
  this.IsChangeText = IsChangeText; 
  function IsChangeText()
    {
        return _changeText;
    }  
  
  //Objects
  var _Nav;      
////////////////////////////////////////////////////////
// Public Functions ////////////////////////////////////
/* *********************************************************************************** 
-  Function: Init  
-  Purpose: Constructor sets up any metadata for this navigation object.  
-             
-  Parameters: None. 
-  Date:  01/08/2007
-  Mods:
-     
************************************************************************************ */  
  function Init()
    {
      var _Nav = AjaxProxy.GetNavObject();
      
      _RedirectTo = _Nav.value.RedirectTo;
      _Redirect = _Nav.value.Redirect;
      _changeText = _Nav.value.ChangeText;
    }

}
/* *********************************************************************************** 
-  Function: ChangeTextMsg  
-  Purpose: Changes Text based upon navigation criteria.  
-             
-  Parameters: None. 
-  Date:  01/18/2007
-  Mods:
-     
************************************************************************************ */  
  function ChangeTextMsg()
    {
           var MsgEle;
           var MsgTxt;
           var MsgArr;
           var MsgPosColl; 
           var MsgEleArray; 
    
          NavMsgId = AjaxProxy.GetNavMsgID(formId);
          
          if(NavMsgId.value == null)
          {
            return;
          }
          
          MsgEleArray = NavMsgId.value.split(",");
          if(NavMsgId.value != null)
          { 
            //MsgEle = document.getElementById(NavMsgId.value);
          
              MsgPosColl =  AjaxProxy.GetNavMsgPos();
              for(var i = 0; i < MsgPosColl.value.length; i++)
                {
                     if(MsgEleArray.length > 0)
                     {
                        MsgEle = document.getElementById(MsgEleArray[i]);
                     }
                     else
                     {
                        MsgEle = document.getElementById(MsgEleArray);
                     }
                     if(MsgEle != null)
                        {
                            MsgTxt = AjaxProxy.GetNavMsgTxt(formId, MsgPosColl.value[i]);
                            MsgEle.innerHTML = MsgTxt.value;
                        }   
                
                }  
    
            
         }
         AjaxProxy.ResetMsgFlag();
    }
/* *********************************************************************************** 
-  Function: SetTextMsg  
-  Purpose: Sets Text based upon page.  
-             
-  Parameters: None. 
-  Date:  01/18/2007
-  Mods:
-     
************************************************************************************ */  
  function SetTextMsg(PagName)
    {
        AjaxProxy.SetNavMsgPos(PagName);
    }    
/*End Navigation Classes *************************************************************/ 
