//================================= CLASS CONSTRUCTOR ========================================
function EventMediatorNMsgs()
{
//MEMBER VARIABLES
//JSPs that currently use this mediator ...
 this.page = null;
 this.msgFrmSet = null;
 this.toggleFrm = null;
 this.foldersFrm = null;
 this.tableFrm = null;

 this.initialize();
}

//====================================== STATIC ==============================================
//CONSTANTS

//====================================== MEMBERS =============================================
EventMediatorNMsgs.prototype.setDefaults = function()
{
 this.page = null;
 this.msgFrmSet = null;
 this.toggleFrm = null;
 this.foldersFrm = null;
 this.tableFrm = null;
}

EventMediatorNMsgs.prototype.initialize = function()
{
 this.setDefaults();
}

EventMediatorNMsgs.prototype.registerPage = function(ipage)
{
 this.page = ipage;
}

EventMediatorNMsgs.prototype.registerMsgFrmSet = function(imsgFrmSet)
{
 this.msgFrmSet = imsgFrmSet;
}

EventMediatorNMsgs.prototype.registerToggleFrm = function(itoggleFrm)
{
 this.toggleFrm = itoggleFrm;
}

EventMediatorNMsgs.prototype.registerFoldersFrm = function(ifoldersFrm)
{
 this.foldersFrm = ifoldersFrm;
}

EventMediatorNMsgs.prototype.registerTableFrm = function(itableFrm)
{
 this.tableFrm = itableFrm;
}

//SOURCE: ToggleFrm.jsp | TARGET: MsgFrmSet.jsp
//NAME: FoldersTogglerVisibleCanChange
EventMediatorNMsgs.prototype.canChangeFTVisible = function()
{
 if (this.msgFrmSet == null)
  return false;
 return true;
}

//NAME: onFoldersTogglerVisibleChanged
EventMediatorNMsgs.prototype.onFTVisibleChanged = function(ivisible)
{
 if (!this.canChangeFTVisible())
  return false;
 this.msgFrmSet.setCFoldersFrmVisible(ivisible);
 return true;
}

//SOURCE: MsgTableFrm.jsp | TARGET: FoldersFrm.jsp
EventMediatorNMsgs.prototype.canGetSelectedDirectoryId = function()
{
 if (this.foldersFrm == null)
  return false;
 return true;
}

EventMediatorNMsgs.prototype.onGetSelectedDirectoryId = function()
{
 if (!this.canGetSelectedDirectoryId())
  return false;
 return this.foldersFrm.getSelectedDirectoryId();
}

EventMediatorNMsgs.prototype.canAddDirectoryMessages = function()
{
 if (this.foldersFrm == null)
  return false;
 return true;
}

EventMediatorNMsgs.prototype.onAddDirectoryMessages = function(idirectoryId,imsgCnt)
{
 if (!this.canAddDirectoryMessages())
  return false;
 return this.foldersFrm.onAddDirectoryMessages(idirectoryId,imsgCnt);
}

EventMediatorNMsgs.prototype.canRemoveDirectoryMessages = function()
{
 if (this.foldersFrm == null)
  return false;
 return true;
}

EventMediatorNMsgs.prototype.onRemoveDirectoryMessages = function(idirectoryId,imsgCnt)
{
 if (!this.canRemoveDirectoryMessages())
  return false;
 return this.foldersFrm.onRemoveDirectoryMessages(idirectoryId,imsgCnt);
}

//SOURCE: page.jsp+foldersFrm.jsp | TARGET: msgtablefrm.jsp
EventMediatorNMsgs.prototype.canApplyOperation = function()
{
 if (this.tableFrm == null)
  return false;
 return true;
}

EventMediatorNMsgs.prototype.onApplyOperation = function(iidOp)
{
 if (!this.canApplyOperation())
  return false;
 if (!this.tableFrm.applyOperation(iidOp))
  return false;
 return true;
}

EventMediatorNMsgs.prototype.canRequery = function()
{
 if (this.tableFrm == null)
  return false;
 return true;
}

EventMediatorNMsgs.prototype.onRequery = function()
{
 if (!this.canRequery())
  return false;
 if (!this.tableFrm.requery())
  return false;
 return true;
}

EventMediatorNMsgs.prototype.canQueryPrevPage = function()
{
 if (this.tableFrm == null)
  return false;
 return true;
}

EventMediatorNMsgs.prototype.onQueryPrevPage = function()
{
 if (!this.canQueryNextPage())
  return false;
 if (!this.tableFrm.movePrevious())
  return false;
 return true;
}

EventMediatorNMsgs.prototype.canQueryNextPage = function()
{
 if (this.tableFrm == null)
  return false;
 return true;
}

EventMediatorNMsgs.prototype.onQueryNextPage = function()
{
 if (!this.canQueryNextPage())
  return false;
 if (!this.tableFrm.moveNext())
  return false;
 return true;
}

EventMediatorNMsgs.prototype.canChangeQueryPageSize = function()
{
 if (this.tableFrm == null)
  return false;
 return true;
}

EventMediatorNMsgs.prototype.onQueryPageSizeChanged = function(ipageSize)
{
 if (!this.canChangeQueryPageSize())
  return false;
 this.tableFrm.setQueryPageSize(ipageSize);
 return true;
}

EventMediatorNMsgs.prototype.canChangeFieldSortOrder = function()
{
 if (this.tableFrm == null)
  return false;
 return true;
}

EventMediatorNMsgs.prototype.onFieldSortOrderChanged = function(ifield)
{
 if (!this.canChangeFieldSortOrder())
  return false;
 this.tableFrm.onFieldSortOrderChanged(ifield);
 return true;
}

//SOURCE: msgtablefrm.jsp | TARGET: page.jsp
EventMediatorNMsgs.prototype.canChangeStatus = function()
{
 if (this.page == null)
  return false;
 return true;
}

EventMediatorNMsgs.prototype.onStatusChanged = function(istartPage,icount)
{
 if (!this.canChangeStatus())
  return false;
 this.page.setPageRange(istartPage,icount);
 return true;
}

EventMediatorNMsgs.prototype.canGetPageSize = function()
{
 if (this.page == null)
  return false;
 return true;
}

EventMediatorNMsgs.prototype.onGetPageSize = function()
{
 if (!this.canGetPageSize())
  return false;
 return this.page.getPageSize();
}

EventMediatorNMsgs.prototype.finalize = function()
{
 this.setDefaults();
}
