

//-------------------------------------------------------------------------------
// SUNVISION GENERIC MANDATORY FIELD ALERT
// WHICH IS INVOKED ON ANY EVENT 
// DEVELOPER CAN SET CUSTOMIZED ALERT TEXT
// IF FIELD IS GENERATED USING SST TLD METHOD
// , LABLE AND ABBR ARE WRITTEN AUTO 
// IF LABEL OF ANY FIELD IS WRITTEN IN SEPERATE TD, 
// PATTERN SHOULD MATCH WITH HTML CODE GENERATED BY TLD
// NOTE : NOW ABBR is replaced with innerHTML, should also be removed from TLD method
var alert_text_by_user_ind = false;
//var alert_text_by_user     = '';
var alert_multi_field_mode = true;
var alert_empty_field_list = '';
function confMultiNotNullById( evt, inFieldList )
{

  var return_value = 0;
  var lFieldList   = inFieldList;
  var lFieldObjArr = new Array();

  {
    lFieldObjArr = lFieldList.split(',');
    var lEmptyFieldlist = "";
    var lFieldObj       = "";
    var lFieldLabelObj  = "";
    var lEmptyFieldlistArr = new Array();
    //var lFieldObjFirst  = document.getElementById(lFieldObjArr[0]);
    var k = 0;
    for ( var lFieldNum = 0; lFieldNum < lFieldObjArr.length; lFieldNum++ )
    {
      lFieldObj  = document.getElementById(lFieldObjArr[lFieldNum]);
      if ( lFieldObj != null && stringTrim(lFieldObj.value).length > 0 )
        ;
      else
      {
        lFieldLabelObj  = document.getElementById("lable_"+lFieldObjArr[lFieldNum]);
        if ( lFieldLabelObj )
          //lEmptyFieldlist += lFieldLabelObj.abbr + ',';
          lEmptyFieldlist += lFieldLabelObj.innerHTML + ',';
          //lEmptyFieldlist = lEmptyFieldlist + document.getElementById("lable_"+lFieldObjArr[lFieldNum]).abbr +',';
        else
        {
          if ( lFieldObj )
            lEmptyFieldlist += lFieldObj.name+',';
          else
            lEmptyFieldlist += lFieldObjArr[lFieldNum]+',';
        }
        k = k+1;
        if ( !alert_multi_field_mode )
        {
          //alert("Please fill  "+ lEmptyFieldlist +" to continue.");
          break;
        }
      }
    }

    if ( lEmptyFieldlist.length > 0 )
    {
      return_value = -1;
      lEmptyFieldlist = lEmptyFieldlist.substring(0,(lEmptyFieldlist.length)-1); 
      if ( !alert_text_by_user_ind )
      {
        alert_empty_field_list = "<p align=\"right\" style=\"{color:darkred;}\">Please Fill Missing Mandadory Fields <br>["+lEmptyFieldlist.replace(/,/gi,'<br>')+"]</font>";
        //alert("Please fill  "+ lEmptyFieldlist +" to continue.");
      }
      $.alerts.dialogClass = $(this).attr('id'); // set custom style class
      //jAlert("Please fill  "+ lEmptyFieldlist +" to continue."
      jAlert( alert_empty_field_list 
            , 'Sunvision Mandatory Fields Alert Says'
            //, function() { $.alerts.dialogClass = null; } // reset to default
            );

      if ( document.getElementById(lFieldObjArr[lFieldObjArr.length-k]) )
        document.getElementById(lFieldObjArr[lFieldObjArr.length-k]).focus();

      //------------------------------------------------------------
      var lBrowserName = getBrowserName();
      if ( lBrowserName == 'Microsoft Internet Explorer' )
        window.event.returnValue=false;
      else
      if ( lBrowserName == 'Netscape' )
      {
        evt.preventDefault();
        evt.stopPropagation();
      }
      //------------------------------------------------------------
    }
  }
  return return_value;
}
//-------------------------------------------------------------------------------


//-------------------------------------------------------------------------------
// SUNVISION GENERIC LENGTH OF FIELD CHECK METHOD
// WHICH IS INVOKED ON ANY EVENT 
// DEVELOPER CAN SET CUSTOMIZED ALERT TEXT
// IF FIELD IS GENERATED USING SST TLD METHOD
// , LABLE AND ABBR ARE WRITTEN AUTO 
// IF LABEL OF ANY FIELD IS WRITTEN IN SEPERATE TD, 
// PATTERN SHOULD MATCH WITH HTML CODE GENERATED BY TLD
function confMultiFldLenById( evt, inFieldList, inLengthList )
{

  var return_value = 0;
  var lFieldList   = inFieldList;
  var lLengthList   = inLengthList;
  var lFieldObjArr = new Array();
  var lLengthObjArr = new Array();

  {
    lFieldObjArr = lFieldList.split(',');
    lLengthObjArr = lLengthList.split(',');
    if ( lFieldObjArr.length != lLengthObjArr.length )
    {
      jAlert( alert_empty_field_list, 'Sunvision Mandatory Fields Alert Says' );
      return return_value;
    }

    var lEmptyFieldlist = "";
    var lFieldObj       = "";
    var lFieldLabelObj  = "";
    var lEmptyFieldlistArr = new Array();
    //var lFieldObjFirst  = document.getElementById(lFieldObjArr[0]);
    var k = 0;
    for ( var lFieldNum = 0; lFieldNum < lFieldObjArr.length; lFieldNum++ )
    {
      lFieldObj  = document.getElementById(lFieldObjArr[lFieldNum]);
      if ( lFieldObj != null && stringTrim(lFieldObj.value).length <= lLengthObjArr[ lFieldNum ] )
        ;
      else
      {
        //lFieldObj.value = lFieldObj.value.substring(0,500);
        lFieldLabelObj  = document.getElementById("lable_"+lFieldObjArr[lFieldNum]);
        if ( lFieldLabelObj )
          //lEmptyFieldlist += lFieldLabelObj.abbr + ',';
          lEmptyFieldlist += lFieldLabelObj.innerHTML + ',';
        else
        {
          if ( lFieldObj )
            lEmptyFieldlist += lFieldObj.name+',';
          else
            lEmptyFieldlist += lFieldObjArr[lFieldNum]+',';
        }
        k = k+1;
        if ( !alert_multi_field_mode )
        {
          //alert("Please fill  "+ lEmptyFieldlist +" to continue.");
          break;
        }
      }
    }

    if ( lEmptyFieldlist.length > 0 )
    {
      return_value = -1;
      lEmptyFieldlist = lEmptyFieldlist.substring(0,(lEmptyFieldlist.length)-1); 
      if ( !alert_text_by_user_ind )
      {
        alert_empty_field_list = "<p align=\"right\" style=\"{color:darkred;}\">LENGTH OF VALUES EXCEEDS IN FIELDS<br>["+lEmptyFieldlist.replace(/,/gi,'<br>')+"]</font>";
        //alert("Please fill  "+ lEmptyFieldlist +" to continue.");
      }
      $.alerts.dialogClass = $(this).attr('id'); // set custom style class
      //jAlert("Please fill  "+ lEmptyFieldlist +" to continue."
      jAlert( alert_empty_field_list 
            , 'Sunvision Mandatory Fields Alert Says'
            //, function() { $.alerts.dialogClass = null; } // reset to default
            );

      if ( document.getElementById(lFieldObjArr[lFieldObjArr.length-k]) )
        document.getElementById(lFieldObjArr[lFieldObjArr.length-k]).focus();

      //------------------------------------------------------------
      var lBrowserName = getBrowserName();
      if ( lBrowserName == 'Microsoft Internet Explorer' )
        window.event.returnValue=false;
      else
      if ( lBrowserName == 'Netscape' )
      {
        evt.preventDefault();
        evt.stopPropagation();
      }
      //------------------------------------------------------------
    }
  }
  return return_value;
}
//-------------------------------------------------------------------------------

//-------------------------------------------------------------------------------
function stop_submit( inEvt )
{
  var lBrowserName = getBrowserName();
  if ( lBrowserName == 'Microsoft Internet Explorer' )
    window.event.returnValue=false;
  else
  if ( lBrowserName == 'Netscape' )
  {
    inEvt.preventDefault();
    inEvt.stopPropagation();
  }
}
//-------------------------------------------------------------------------------

//-------------------------------------------------------------------------------
function stringTrim( inString )
{
  a = inString.replace(/^\s+/, '');
  return a.replace(/\s+$/, '');
}
//-------------------------------------------------------------------------------

