var serverURL    = "server.asp";
var strDelimiter = "~"

function Fill_array ( strValue )
{
   this.Value = strValue;
}

var numActivityID
var strActivityCOUNCIL
var datActivityACTIVITYDATE
var strActivityACTIVITY
var strActivityPICTURE
var strActivityLOCATION
var strActivityCHAIRMAN
var strActivityPHONEEMAIL
var strActivityFULLDESCRIPTION

function retrieveActivity ( myArray )
{
   numActivityID              = jsIntegerConvert ( myArray [ 0] );
   strActivityCOUNCIL         = jsStringConvert  ( myArray [ 1] );
   datActivityACTIVITYDATE    = jsDateConvert    ( myArray [ 2] );
   strActivityACTIVITY        = jsStringConvert  ( myArray [ 3] );
   strActivityPICTURE         = jsStringConvert  ( myArray [ 4] );
   strActivityLOCATION        = jsStringConvert  ( myArray [ 5] );
   strActivityCHAIRMAN        = jsStringConvert  ( myArray [ 6] );
   strActivityPHONEEMAIL      = jsStringConvert  ( myArray [ 7] );
   strActivityFULLDESCRIPTION = jsStringConvert  ( myArray [ 8] );

   return true;
}

function Lookup_CouncilActivity ( Activity_Number )
{
   var myVar,
       myArray,
       numFound;

   numActivityID              = 0;
   strActivityCOUNCIL         = "";
   datActivityACTIVITYDATE    = "";
   strActivityACTIVITY        = "";
   strActivityPICTURE         = "";
   strActivityLOCATION        = "";
   strActivityCHAIRMAN        = "";
   strActivityPHONEEMAIL      = "";
   strActivityFULLDESCRIPTION = "";

   myVar      = RSExecute ( serverURL, "lookupCouncilActivity", Activity_Number );

   myArray    = myVar.return_value.split( strDelimiter );
   numFound   = myArray.length-1;

   if ( numFound > 0 )
      retrieveActivity( myArray );

   return ( numFound );
}

function Lookup_ProlifeActivity ( Activity_Number )
{
   var myVar,
       myArray,
       numFound;

   myVar      = RSExecute ( serverURL, "lookupProlifeActivity", Activity_Number );

   myArray    = myVar.return_value.split( strDelimiter );
   numFound   = myArray.length-1;

   if ( numFound > 0 )
      retrieveActivity( myArray );

   return ( numFound );
}

function Lookup_AssemblyActivity ( Activity_Number )
{
   var myVar,
       myArray,
       numFound;

   myVar      = RSExecute ( serverURL, "lookupAssemblyActivity", Activity_Number );

   myArray    = myVar.return_value.split( strDelimiter );
   numFound   = myArray.length-1;

   if ( numFound > 0 )
      retrieveActivity( myArray );

   return ( numFound );
}

var numMembershipEventsID
var strMembershipEventsTYPE
var datMembershipEventsSTART_DATE
var datMembershipEventsEND_DATE
var datMembershipEventsACTIVITYDATE
var strMembershipEventsACTIVITYTIME
var strMembershipEventsLOCATION
var strMembershipEventsCONTACT
var strMembershipEventsPHONEEMAIL
var strMembershipEventsFULLDESCRIPTION

function retrieveMembershipEvent ( myArray )
{
   numMembershipEventsID              = jsIntegerConvert ( myArray [ 0] );
   strMembershipEventsTYPE            = jsStringConvert  ( myArray [ 1] );
   datMembershipEventsSTART_DATE      = jsDateConvert    ( myArray [ 2] );
   datMembershipEventsEND_DATE        = jsDateConvert    ( myArray [ 3] );
   datMembershipEventsACTIVITYDATE    = jsDateConvert    ( myArray [ 4] );
   strMembershipEventsACTIVITYTIME    = jsTimeConvert    ( myArray [ 5] );
   strMembershipEventsLOCATION        = jsStringConvert  ( myArray [ 6] );
   strMembershipEventsCONTACT         = jsStringConvert  ( myArray [ 7] );
   strMembershipEventsPHONEEMAIL      = jsStringConvert  ( myArray [ 8] );
   strMembershipEventsFULLDESCRIPTION = jsStringConvert  ( myArray [ 9] );

   return true;
}

function Lookup_MembershipEvent ( Activity_Number )
{
   var myVar,
       myArray,
       numFound;

   myVar      = RSExecute ( serverURL, "lookupMembershipEvent", Activity_Number );

   myArray    = myVar.return_value.split( strDelimiter );
   numFound   = myArray.length-1;

   if ( numFound > 0 )
      retrieveMembershipEvent( myArray );

   return ( numFound );
}

//
//  Flyers table
//
var numFlyerID_NUM;
var strFlyerCOUNCIL;
var datFlyerSTART_DATE;
var datFlyerEVENT_DATE;
var strFlyerSCREEN_PROMPT;
var strFlyerFILENAME;
var strFlyerFULLDESCRIPTION;

function retrieveFlyer ( myArray )
{
   numFlyerID_NUM          = jsIntegerConvert ( myArray [ 0] );
   strFlyerCOUNCIL         = jsStringConvert  ( myArray [ 1] );
   datFlyerSTART_DATE      = jsDateConvert    ( myArray [ 2] );
   datFlyerEVENT_DATE      = jsDateConvert    ( myArray [ 3] );
   strFlyerSCREEN_PROMPT   = jsStringConvert  ( myArray [ 4] );
   strFlyerFILENAME        = jsStringConvert  ( myArray [ 5] );
   strFlyerFULLDESCRIPTION = jsStringConvert  ( myArray [ 6] );

   return true;
}

function Lookup_CouncilFlyer ( Flyer_Number )
{
   var myVar,
       myArray,
       numFound;

   numFlyerID_NUM          = 0;
   strFlyerCOUNCIL         = "";
   datFlyerSTART_DATE      = "";
   datFlyerEVENT_DATE      = "";
   strFlyerSCREEN_PROMPT   = "";
   strFlyerFILENAME        = "";
   strFlyerFULLDESCRIPTION = "";

   myVar      = RSExecute ( serverURL, "lookupCouncilFlyer", Flyer_Number );

   myArray    = myVar.return_value.split( strDelimiter );
   numFound   = myArray.length-1;

   if ( numFound > 0 )
      retrieveFlyer( myArray );

   return ( numFound );
}

//
//  MonthlyNotices table
//
var numMonthlyNoticeID_NUM;
var strMonthlyNoticeCOUNCIL;
var datMonthlyNoticeSTART_DATE;
var datMonthlyNoticeEVENT_DATE;
var strMonthlyNoticeSCREEN_PROMPT;
var strMonthlyNoticeFILENAME;

function retrieveMonthlyNotice ( myArray )
{
   numMonthlyNoticeID_NUM        = jsIntegerConvert ( myArray [ 0] );
   strMonthlyNoticeCOUNCIL       = jsStringConvert  ( myArray [ 1] );
   datMonthlyNoticeSTART_DATE    = jsDateConvert    ( myArray [ 2] );
   datMonthlyNoticeEVENT_DATE    = jsDateConvert    ( myArray [ 3] );
   strMonthlyNoticeSCREEN_PROMPT = jsStringConvert  ( myArray [ 4] );
   strMonthlyNoticeFILENAME      = jsStringConvert  ( myArray [ 5] );

   return true;
}

function Lookup_MonthlyNotice ( Notice_Number )
{
   var myVar,
       myArray,
       numFound;

   numMonthlyNoticeID_NUM        = 0;
   strMonthlyNoticeCOUNCIL       = "";
   datMonthlyNoticeSTART_DATE    = "";
   datMonthlyNoticeEVENT_DATE    = "";
   strMonthlyNoticeSCREEN_PROMPT = "";
   strMonthlyNoticeFILENAME      = "";

   myVar      = RSExecute ( serverURL, "lookupMonthlyNotice", Notice_Number );

   myArray    = myVar.return_value.split( strDelimiter );
   numFound   = myArray.length-1;

   if ( numFound > 0 )
      retrieveMonthlyNotice( myArray );

   return ( numFound );
}

//
//  FrontPageAds table
//
var numFrontPageAdsID_NUM;
var strFrontPageAdsCOUNCIL;
var datFrontPageAdsSTART_DATE;
var datFrontPageAdsEVENT_DATE;
var strFrontPageAdsEVENTNAME;
var strFrontPageAdsEVENTDESCR;

var strFrontPageAdsSCRPROMPT1;
var strFrontPageAdsFILENAME1;

var strFrontPageAdsSCRPROMPT2;
var strFrontPageAdsFILENAME2;

var strFrontPageAdsSCRPROMPT3;
var strFrontPageAdsFILENAME3;

var strFrontPageAdsSCRPROMPT4;
var strFrontPageAdsFILENAME4;

function retrieveFrontPageAds ( myArray )
{
   numFrontPageAdsID_NUM      = jsIntegerConvert ( myArray [ 0] );
   strFrontPageAdsCOUNCIL     = jsStringConvert  ( myArray [ 1] );
   datFrontPageAdsSTART_DATE  = jsDateConvert    ( myArray [ 2] );
   datFrontPageAdsEVENT_DATE  = jsDateConvert    ( myArray [ 3] );
   strFrontPageAdsEVENTNAME   = jsStringConvert  ( myArray [ 4] );
   strFrontPageAdsEVENTDESCR  = jsStringConvert  ( myArray [ 5] );

   strFrontPageAdsSCRPROMPT1  = jsStringConvert  ( myArray [ 6] );
   strFrontPageAdsFILENAME1   = jsStringConvert  ( myArray [ 7] );

   strFrontPageAdsSCRPROMPT2  = jsStringConvert  ( myArray [ 8] );
   strFrontPageAdsFILENAME2   = jsStringConvert  ( myArray [ 9] );

   strFrontPageAdsSCRPROMPT3  = jsStringConvert  ( myArray [10] );
   strFrontPageAdsFILENAME3   = jsStringConvert  ( myArray [11] );

   strFrontPageAdsSCRPROMPT4  = jsStringConvert  ( myArray [12] );
   strFrontPageAdsFILENAME4   = jsStringConvert  ( myArray [13] );

   return true;
}

function Lookup_FrontPageAds ( FrontPageAds_Number )
{
   var myVar,
       myArray,
       numFound;

   numFrontPageAdsID_NUM      = 0;
   strFrontPageAdsCOUNCIL     = "";
   datFrontPageAdsSTART_DATE  = "";
   datFrontPageAdsEVENT_DATE  = "";
   strFrontPageAdsEVENTNAME   = "";
   strFrontPageAdsEVENTDESCR  = "";

   strFrontPageAdsSCRPROMPT1  = "";
   strFrontPageAdsFILENAME1   = "";

   strFrontPageAdsSCRPROMPT2  = "";
   strFrontPageAdsFILENAME2   = "";

   strFrontPageAdsSCRPROMPT3  = "";
   strFrontPageAdsFILENAME3   = "";

   strFrontPageAdsSCRPROMPT4  = "";
   strFrontPageAdsFILENAME4   = "";

   myVar      = RSExecute ( serverURL, "lookupFrontPageAds", FrontPageAds_Number );

   myArray    = myVar.return_value.split( strDelimiter );
   numFound   = myArray.length-1;

   if ( numFound > 0 )
      retrieveFrontPageAds ( myArray );

   return ( numFound );
}

//
//  NL_Articles table
//
var numNL_ArticlesID;
var numNL_ArticlesYEAR;
var numNL_ArticlesMONTH;
var numNL_ArticlesBIGSTORY;
var strNL_ArticlesTITLE;
var strNL_ArticlesARTICLE;
var strNL_ArticlesPRESENTER;
var strNL_ArticlesATTACHMENT;
var strNL_ArticlesCAPTION;
var datNL_ArticlesCREATE_DATE;
var strNL_ArticlesCREATE_USER;
var datNL_ArticlesUPDATE_DATE;
var strNL_ArticlesUPDATE_USER;

var strNL_ArticlesCREATE_FULLNAME;
var strNL_ArticlesUPDATE_FULLNAME;

function retrieveNL_Articles ( myArray )
{
   numNL_ArticlesID          = jsIntegerConvert ( myArray [ 0] );
   numNL_ArticlesYEAR        = jsIntegerConvert ( myArray [ 1] );
   numNL_ArticlesMONTH       = jsIntegerConvert ( myArray [ 2] );
   numNL_ArticlesBIGSTORY    = jsIntegerConvert ( myArray [ 3] );
   strNL_ArticlesTITLE       = jsStringConvert  ( myArray [ 4] );
   strNL_ArticlesARTICLE     = jsStringConvert  ( myArray [ 5] );
   strNL_ArticlesPRESENTER   = jsStringConvert  ( myArray [ 6] );
   strNL_ArticlesATTACHMENT  = jsStringConvert  ( myArray [ 7] );
   strNL_ArticlesCAPTION     = jsStringConvert  ( myArray [ 8] );
   datNL_ArticlesCREATE_DATE = jsDateTimeConvert( myArray [ 9] );
   strNL_ArticlesCREATE_USER = jsStringConvert  ( myArray [10] );
   datNL_ArticlesUPDATE_DATE = jsDateTimeConvert( myArray [11] );
   strNL_ArticlesUPDATE_USER = jsStringConvert  ( myArray [12] );

   return true;
}

var strNL_PhotosPHOTO   = new Array( 4 );
var strNL_PhotosCAPTION = new Array( 4 );

function retrieveNL_Photos ( myArray, numTotal )
{
   var x, y;

   for ( x = 0; x < 4; x++ )
      {
      strNL_PhotosPHOTO   [x] = "";
      strNL_PhotosCAPTION [x] = "";
      }

   for ( x = 0, y = 0; x < numTotal; x++, y += 2 )
      {
      strNL_PhotosPHOTO   [x] = jsStringConvert ( myArray [y + 0] );
      strNL_PhotosCAPTION [x] = jsStringConvert ( myArray [y + 1] );
      }

   return;
}

var numNL_QuestionsTOT_QUESTIONS;

var numNL_QuestionsID           = new Array( 30 );
var numNL_QuestionsARTICLEID    = new Array( 30 );
var logNL_QuestionsAPPROVAL     = new Array( 30 );
var strNL_QuestionsQUESTION     = new Array( 30 );
var strNL_QuestionsANSWER       = new Array( 30 );
var strNL_QuestionsPERSON       = new Array( 30 );
var strNL_QuestionsEMAIL        = new Array( 30 );
var strNL_QuestionsDATEENTERED  = new Array( 30 );
var strNL_QuestionsDATEAPPROVED = new Array( 30 );

function retrieveNL_Questions ( myArray, numTotal )
{
   var x, y;

   numNL_QuestionsTOT_QUESTIONS = numTotal;

   for ( x = 0; x < 30; x++ )
      {
      numNL_QuestionsID        [x] = 0;
      numNL_QuestionsARTICLEID [x] = 0;
      logNL_QuestionsAPPROVAL  [x] = 0;
      strNL_QuestionsQUESTION  [x] = "";
      strNL_QuestionsANSWER    [x] = "";
      strNL_QuestionsPERSON    [x] = "";
      strNL_QuestionsEMAIL     [x] = "";
      }

   for ( x = 0, y = 0; x < numTotal; x++, y += 9 )
      {
      numNL_QuestionsID           [x] = jsIntegerConvert  ( myArray [y + 0] );
      numNL_QuestionsARTICLEID    [x] = jsIntegerConvert  ( myArray [y + 1] );
      logNL_QuestionsAPPROVAL     [x] = jsIntegerConvert  ( myArray [y + 2] );
      strNL_QuestionsQUESTION     [x] = jsStringConvert   ( myArray [y + 3] );
      strNL_QuestionsANSWER       [x] = jsStringConvert   ( myArray [y + 4] );
      strNL_QuestionsPERSON       [x] = jsStringConvert   ( myArray [y + 5] );
      strNL_QuestionsEMAIL        [x] = jsStringConvert   ( myArray [y + 6] );
      strNL_QuestionsDATEENTERED  [x] = jsDateTimeConvert ( myArray [y + 7] );
      strNL_QuestionsDATEAPPROVED [x] = jsDateTimeConvert ( myArray [y + 8] );
      }

   return;
}

var numNL_CommentsTOT_COMMENTS;

var numNL_CommentsID           = new Array( 30 );
var numNL_CommentsARTICLEID    = new Array( 30 );
var logNL_CommentsAPPROVAL     = new Array( 30 );
var strNL_CommentsCOMMENT      = new Array( 30 );
var strNL_CommentsPERSON       = new Array( 30 );
var strNL_CommentsEMAIL        = new Array( 30 );
var strNL_CommentsDATEENTERED  = new Array( 30 );
var strNL_CommentsDATEAPPROVED = new Array( 30 );

function retrieveNL_Comments ( myArray, numTotal )
{
   var x, y;

   numNL_CommentsTOT_COMMENTS = numTotal;

   for ( x = 0; x < 30; x++ )
      {
      numNL_CommentsID        [x] = 0;
      numNL_CommentsARTICLEID [x] = 0;
      logNL_CommentsAPPROVAL  [x] = 0;
      strNL_CommentsCOMMENT   [x] = "";
      strNL_CommentsPERSON    [x] = "";
      strNL_CommentsEMAIL     [x] = "";
      }

   for ( x = 0, y = 0; x < numTotal; x++, y += 8 )
      {
      numNL_CommentsID           [x] = jsIntegerConvert( myArray [y + 0] );
      numNL_CommentsARTICLEID    [x] = jsIntegerConvert( myArray [y + 1] );
      logNL_CommentsAPPROVAL     [x] = jsIntegerConvert( myArray [y + 2] );
      strNL_CommentsCOMMENT      [x] = jsStringConvert ( myArray [y + 3] );
      strNL_CommentsPERSON       [x] = jsStringConvert ( myArray [y + 4] );
      strNL_CommentsEMAIL        [x] = jsStringConvert ( myArray [y + 5] );
      strNL_CommentsDATEENTERED  [x] = jsDateTimeConvert ( myArray [y + 6] );
      strNL_CommentsDATEAPPROVED [x] = jsDateTimeConvert ( myArray [y + 7] );
      }

   return;
}

function Lookup_NL_Articles ( NL_Articles_Number )
{
   var myVar,
       myArray,
       numFound,
       numPhotos;

   numNL_ArticlesID          = 0;
   strNL_ArticlesCAT_NAME    = "";
   numNL_ArticlesYEAR        = 0;
   numNL_ArticlesMONTH       = 0;
   strNL_ArticlesTITLE       = "";
   strNL_ArticlesARTICLE     = "";
   strNL_ArticlesPRESENTER   = "";
   strNL_ArticlesATTACHMENT  = "";
   strNL_ArticlesCAPTION     = "";
   datNL_ArticlesCREATE_DATE = "";
   strNL_ArticlesCREATE_USER = "";
   datNL_ArticlesUPDATE_DATE = "";
   strNL_ArticlesUPDATE_USER = "";

   strNL_ArticlesCREATE_FULLNAME = "";
   strNL_ArticlesUPDATE_FULLNAME = "";

   myVar      = RSExecute ( serverURL, "lookupNL_Articles", NL_Articles_Number );

   myArray    = myVar.return_value.split( strDelimiter );
   numFound   = myArray.length-1;

   if ( numFound > 0 )
      {
      retrieveNL_Articles ( myArray );

      //
      //  Now get the ancillary items:  Photos
      //                                Questions
      //                                Comments
      //                                Author and updater of the article
      //

      // PHOTOS
      myVar        = RSExecute ( serverURL, "lookupNL_Photos", NL_Articles_Number );

      myArray      = myVar.return_value.split( strDelimiter );
      numPhotos    = (myArray.length-1) / 2;

      retrieveNL_Photos ( myArray, numPhotos );

      // QUESTIONS
      myVar        = RSExecute ( serverURL, "lookupNL_Questions", NL_Articles_Number );

      myArray      = myVar.return_value.split( strDelimiter );
      numQuestions = (myArray.length-1) / 9;

      retrieveNL_Questions ( myArray, numQuestions );

      // COMMENTS
      myVar        = RSExecute ( serverURL, "lookupNL_Comments", NL_Articles_Number );

      myArray      = myVar.return_value.split( strDelimiter );
      numComments  = (myArray.length-1) / 8;

      retrieveNL_Comments ( myArray, numComments );

      // AUTHOR
      myVar        = RSExecute ( serverURL, "Get_UserInfo", strNL_ArticlesCREATE_USER );
      myArray      = myVar.return_value.split( strDelimiter );
      strNL_ArticlesCREATE_FULLNAME = jsStringConvert ( myArray [0] );

      // UPDATER
      myVar        = RSExecute ( serverURL, "Get_UserInfo", strNL_ArticlesUPDATE_USER );
      myArray      = myVar.return_value.split( strDelimiter );
      strNL_ArticlesUPDATE_FULLNAME = jsStringConvert ( myArray [0] );
      }

   return ( numFound );
}

//
//  Members table
//
var strMembersMEMBNO    = new Array( 30 );
var strMembersCOUNCIL   = new Array( 30 );
var logMembersPRIVACY   = new Array( 30 );
var strMembersMAIL_TYPE = new Array( 30 );
var strMembersSPECIAL   = new Array( 30 );
var strMembersTITL      = new Array( 30 );
var strMembersFNAME     = new Array( 30 );
var strMembersMI        = new Array( 30 );
var strMembersLNAME     = new Array( 30 );
var strMembersSUFX      = new Array( 30 );
var strMembersFULL_NAME = new Array( 30 );
var strMembersADDR1     = new Array( 30 );
var strMembersCITY      = new Array( 30 );
var strMembersST        = new Array( 30 );
var strMembersZIP       = new Array( 30 );
var strMembersPHONE     = new Array( 30 );
var strMembersPHOTO     = new Array( 30 );
var strMembersEMAIL     = new Array( 30 );
var strMembersWIFE      = new Array( 30 );
var strMembersMEMTYPE   = new Array( 30 );
var strMembersMEMCLASS  = new Array( 30 );
var strMembersSSNBR     = new Array( 30 );
var strMembersDOB       = new Array( 30 );
var datMembersFIRSTDEG  = new Array( 30 );
var datMembersSECONDDEG = new Array( 30 );
var datMembersTHIRDDEG  = new Array( 30 );
var datMembersFORTHDEG  = new Array( 30 );
var strMembersASSEMBLY  = new Array( 30 );
var datMembersSUSPDT    = new Array( 30 );
var datMembersUPDATE    = new Array( 30 );
var strMembersBY_WHOM   = new Array( 30 );

function retrieveMember ( myArray, numFound )
{
   var x,
       numCustomers = numFound / 31;

   for ( x = 0; x < 30; x++ )
      {
      strMembersMEMBNO    [x] = "";
      strMembersCOUNCIL   [x] = "";
      logMembersPRIVACY   [x] = false;
      strMembersMAIL_TYPE [x] = "";
      strMembersSPECIAL   [x] = "";
      strMembersTITL      [x] = "";
      strMembersFNAME     [x] = "";
      strMembersMI        [x] = "";
      strMembersLNAME     [x] = "";
      strMembersSUFX      [x] = "";
      strMembersFULL_NAME [x] = "";
      strMembersADDR1     [x] = "";
      strMembersCITY      [x] = "";
      strMembersST        [x] = "";
      strMembersZIP       [x] = "";
      strMembersPHONE     [x] = "";
      strMembersPHOTO     [x] = "";
      strMembersEMAIL     [x] = "";
      strMembersWIFE      [x] = "";
      strMembersMEMTYPE   [x] = "";
      strMembersMEMCLASS  [x] = "";
      strMembersSSNBR     [x] = "";
      strMembersDOB       [x] = "";
      datMembersFIRSTDEG  [x] = "";
      datMembersSECONDDEG [x] = "";
      datMembersTHIRDDEG  [x] = "";
      datMembersFORTHDEG  [x] = "";
      strMembersASSEMBLY  [x] = "";
      datMembersSUSPDT    [x] = "";
      datMembersUPDATE    [x] = "";
      strMembersBY_WHOM   [x] = "";
      }

   for ( x = 0, y = 0; y < numCustomers; x += 31, y++ )
      {
      strMembersMEMBNO    [y] = jsStringConvert ( myArray [x +  0] );
      strMembersCOUNCIL   [y] = jsStringConvert ( myArray [x +  1] );
      logMembersPRIVACY   [y] = jsBooleanConvert( myArray [x +  2] );
      strMembersMAIL_TYPE [y] = jsStringConvert ( myArray [x +  3] );
      strMembersSPECIAL   [y] = jsStringConvert ( myArray [x +  4] );
      strMembersTITL      [y] = jsStringConvert ( myArray [x +  5] );
      strMembersFNAME     [y] = jsStringConvert ( myArray [x +  6] );
      strMembersMI        [y] = jsStringConvert ( myArray [x +  7] );
      strMembersLNAME     [y] = jsStringConvert ( myArray [x +  8] );
      strMembersSUFX      [y] = jsStringConvert ( myArray [x +  9] );
      strMembersFULL_NAME [y] = jsStringConvert ( myArray [x + 10] );
      strMembersADDR1     [y] = jsStringConvert ( myArray [x + 11] );
      strMembersCITY      [y] = jsStringConvert ( myArray [x + 12] );
      strMembersST        [y] = jsStringConvert ( myArray [x + 13] );
      strMembersZIP       [y] = jsStringConvert ( myArray [x + 14] );
      strMembersPHONE     [y] = jsStringConvert ( myArray [x + 15] );
      strMembersPHOTO     [y] = jsStringConvert ( myArray [x + 16] );
      strMembersEMAIL     [y] = jsStringConvert ( myArray [x + 17] );
      strMembersWIFE      [y] = jsStringConvert ( myArray [x + 18] );
      strMembersMEMTYPE   [y] = jsStringConvert ( myArray [x + 19] );
      strMembersMEMCLASS  [y] = jsStringConvert ( myArray [x + 20] );
      strMembersSSNBR     [y] = jsStringConvert ( myArray [x + 21] );
      strMembersDOB       [y] = jsDateConvert   ( myArray [x + 22] );
      datMembersFIRSTDEG  [y] = jsDateConvert   ( myArray [x + 23] );
      datMembersSECONDDEG [y] = jsDateConvert   ( myArray [x + 24] );
      datMembersTHIRDDEG  [y] = jsDateConvert   ( myArray [x + 25] );
      datMembersFORTHDEG  [y] = jsDateConvert   ( myArray [x + 26] );
      strMembersASSEMBLY  [y] = jsIntegerConvert( myArray [x + 27] );
      datMembersSUSPDT    [y] = jsDateConvert   ( myArray [x + 28] );
      datMembersUPDATE    [y] = jsDateConvert   ( myArray [x + 29] );
      strMembersBY_WHOM   [y] = jsStringConvert ( myArray [x + 30] );

      if ( strMembersFULL_NAME [y] == "" )
         {
         strMembersFULL_NAME [y] = strMembersFNAME [y] + " " + strMembersLNAME [y]
         }
      }

   return;
}

function Lookup_Member ( Member_ID )
{
   var myVar,
       myArray,
       numFound;

   myVar      = RSExecute ( serverURL, "lookupMember", Member_ID );
   myArray    = myVar.return_value.split( strDelimiter );
   numFound   = myArray.length-1;

   if ( numFound > 0 )
      retrieveMember ( myArray, 30 );

   return numFound;
}

function Lookup_MemberName ( strCouncil, FName, LName )
{
   var myVar,
       myArray,
       numFound;

   myVar      = RSExecute ( serverURL, "lookupMemberName", strCouncil, FName, LName );
   myArray    = myVar.return_value.split( strDelimiter );

   numFound   = myArray.length-1;

   if ( numFound > 0 )
      retrieveMember ( myArray, numFound );

   return numFound / 31;
}

function Create_TempMember ( strCouncil, strNextNum )
{
   var strTempMembershipNumber;

   myVar      = RSExecute ( serverURL, "createTemporaryMember", strCouncil, strNextNum );
   myArray    = myVar.return_value.split( strDelimiter );

   strTempMembershipNumber = jsStringConvert  ( myArray [0] )

   return ( strTempMembershipNumber );
}

var strMember_BIO_MEMBNO
var strMember_BIO_BIO

function retrieveMember_BIO ( myArray )
{
   strMember_BIO_MEMBNO = jsStringConvert ( myArray [0] );
   strMember_BIO_BIO    = jsStringConvert ( myArray [1] );
}

function Lookup_Member_BIO ( Member_ID )
{
   var myVar,
       myArray,
       numFound;

   myVar      = RSExecute ( serverURL, "lookupMember_BIO", Member_ID );
   myArray    = myVar.return_value.split( strDelimiter );
   numFound   = myArray.length-1;

   if ( numFound > 0 )
      retrieveMember_BIO ( myArray );
   else
      strMember_BIO_BIO = "";

   return numFound;
}



//
//  Council table
//

var strCouncilCOUNCIL
var strCouncilPWORD
var strCouncilNAME
var strCouncilADDRESS
var strCouncilPHONE
var strCouncilFORMED
var numCouncilMEET_NITES
var strCouncilMEET_TIME
var strCouncilOPEN_HOUSE
var strCouncilWEB_ADDR
var strCouncilEMAIL_ADDR
var numCouncilTOT_MEMBER
var numCouncilTOT_TAXABL
var numCouncilTOT_HONOR
var numCouncilTOT_DISABL
var numCouncilPER_CAPITA
var numCouncilDID_ACTS
var flagCouncilSHOW_DIR
var flagCouncilINACTIVE

function retrieveCouncil ( myArray )
{
   strCouncilCOUNCIL      = jsStringConvert  ( myArray [ 0] );
   strCouncilPWORD        = jsStringConvert  ( myArray [ 1] );
   strCouncilNAME         = jsStringConvert  ( myArray [ 2] );
   strCouncilADDRESS      = jsStringConvert  ( myArray [ 3] );
   strCouncilPHONE        = jsStringConvert  ( myArray [ 4] );
   strCouncilFORMED       = jsStringConvert  ( myArray [ 5] );
   numCouncilMEET_NITES   = jsIntegerConvert ( myArray [ 6] );
   strCouncilMEET_TIME    = jsStringConvert  ( myArray [ 7] );
   strCouncilOPEN_HOUSE   = jsStringConvert  ( myArray [ 8] );
   strCouncilWEB_ADDR     = jsStringConvert  ( myArray [ 9] );
   strCouncilEMAIL_ADDR   = jsStringConvert  ( myArray [10] );
   numCouncilTOT_MEMBER   = jsIntegerConvert ( myArray [11] );
   numCouncilTOT_TAXABL   = jsIntegerConvert ( myArray [12] );
   numCouncilTOT_HONOR    = jsIntegerConvert ( myArray [13] );
   numCouncilTOT_DISABL   = jsIntegerConvert ( myArray [14] );
   numCouncilPER_CAPITA   = jsFloatConvert   ( myArray [15] );
   numCouncilDID_ACTS     = jsIntegerConvert ( myArray [16] );
   flagCouncilSHOW_DIR    = jsBooleanConvert ( myArray [17] );
   flagCouncilINACTIVE    = jsBooleanConvert ( myArray [18] );

   return true;
}

function Lookup_Council ( Council_Number )
{
   var myVar,
       myArray,
       numFound;

   while ( Council_Number.length < 5 )
      Council_Number = "0" + Council_Number;

   myVar      = RSExecute ( serverURL, "lookupCouncil", Council_Number );

   myArray    = myVar.return_value.split( strDelimiter );
   numFound   = myArray.length-1;

   if ( numFound > 0 )
      retrieveCouncil( myArray );

   return ( numFound );
}

var strDirectorCOUNCIL
var strDirectorGRAND_KNIG
var strDirectorCHAPLAIN
var strDirectorDGK
var strDirectorCHANCELLOR
var strDirectorWARDEN
var strDirectorFIN_SECY
var strDirectorPROGRAM
var strDirectorMEMBERSHIP
var strDirectorRECORDER
var strDirectorTREASURER
var strDirectorPRO_LIFE
var strDirectorADVOCATE
var strDirectorTRUSTEE_1
var strDirectorTRUSTEE_2
var strDirectorTRUSTEE_3
var strDirectorDELEGATE
var strDirectorALTERNATE1
var strDirectorALTERNATE2
var strDirectorINSIDE_GD
var strDirectorOUTSIDE_G1
var strDirectorOUTSIDE_G2

var strCounOffMembnos = new Array ( 22 );
var strCounOffNames   = new Array ( "Grand Knight", "Chaplain", "Deputy Grand Knight", "Chancellor", "Warden", "Financial Secretary", "Program Director", "Membership Director", "Recorder", "Treasurer", "Pro Life Chairman", "Advocate", "Trustee", "Trustee", "Trustee", "Delegate", "Delegate", "Delegate", "Inside Guard", "Outside Guard", "Outside Guard" );

function retrieveOfficers ( myArray )
{
   strDirectorCOUNCIL     = jsStringConvert  ( myArray [ 0] );
   strDirectorGRAND_KNIG  = jsStringConvert  ( myArray [ 1] );
   strDirectorCHAPLAIN    = jsStringConvert  ( myArray [ 2] );
   strDirectorDGK         = jsStringConvert  ( myArray [ 3] );
   strDirectorCHANCELLOR  = jsStringConvert  ( myArray [ 4] );
   strDirectorWARDEN      = jsStringConvert  ( myArray [ 5] );
   strDirectorFIN_SECY    = jsStringConvert  ( myArray [ 6] );
   strDirectorPROGRAM     = jsStringConvert  ( myArray [ 7] );
   strDirectorMEMBERSHIP  = jsStringConvert  ( myArray [ 8] );
   strDirectorRECORDER    = jsStringConvert  ( myArray [ 9] );
   strDirectorTREASURER   = jsStringConvert  ( myArray [10] );
   strDirectorPRO_LIFE    = jsStringConvert  ( myArray [11] );
   strDirectorADVOCATE    = jsStringConvert  ( myArray [12] );
   strDirectorTRUSTEE_1   = jsStringConvert  ( myArray [13] );
   strDirectorTRUSTEE_2   = jsStringConvert  ( myArray [14] );
   strDirectorTRUSTEE_3   = jsStringConvert  ( myArray [15] );
   strDirectorDELEGATE    = jsStringConvert  ( myArray [16] );
   strDirectorALTERNATE1  = jsStringConvert  ( myArray [17] );
   strDirectorALTERNATE2  = jsStringConvert  ( myArray [18] );
   strDirectorINSIDE_GD   = jsStringConvert  ( myArray [19] );
   strDirectorOUTSIDE_G1  = jsStringConvert  ( myArray [20] );
   strDirectorOUTSIDE_G2  = jsStringConvert  ( myArray [21] );

   for ( x = 0; x < 22; x++ )
      strCounOffMembnos[x] = jsStringConvert  ( myArray [x+1] );

   return true;
}

function Lookup_Officers ( Council_Number )
{
   var myVar,
       myArray,
       numFound;

   if ( Council_Number.length > 5 )
      {
      return ( 0 );
      }

   while ( Council_Number.length < 5 )
      Council_Number = "0" + Council_Number;

   myVar      = RSExecute ( serverURL, "lookupOfficers", Council_Number );

   myArray    = myVar.return_value.split( strDelimiter );
   numFound   = myArray.length-1;

   if ( numFound > 0 )
      retrieveOfficers( myArray );

   return ( numFound );
}

var numStateOfficersOFFICE;
var strStateOfficersMEMBNO;
var strStateOfficersWIFE;

var strOffices  = new Array ( "State Deputy", "State Chaplain", "Assistant State Chaplain", "State Secretary", "State Treasurer", "State Advocate", "State Warden", "Immediate PSD" );

function retrieveStateOfficer ( myArray )
{
   numStateOfficersOFFICE = jsIntegerConvert ( myArray [ 0] );
   strStateOfficersMEMBNO = jsStringConvert  ( myArray [ 1] );
   strStateOfficersWIFE   = jsStringConvert  ( myArray [ 2] );

   return ( strOffices [ numStateOfficersOFFICE - 1 ] );
}

function Lookup_StateOfficers ( strMembno )
{
   var myVar,
       myArray,
       numFound;

   myVar      = RSExecute ( serverURL, "lookupStateOfficer", strMembno );

   myArray    = myVar.return_value.split( strDelimiter );
   numFound   = myArray.length-1;

   if ( numFound > 0 )
      return ( retrieveStateOfficer ( myArray ) );
   else
      return ( "" );
}



//
//  Assembly table
//
var numAssemblyASSEMBLY
var strAssemblyPWORD
var strAssemblyNAME
var strAssemblyFN_ACCNTNO
var strAssemblyFN_PHONE
var strAssemblyFC_ACCNTNO
var strAssemblyFC_PHONE

function retrieveAssembly ( myArray )
{
   numAssemblyASSEMBLY   = jsIntegerConvert ( myArray [ 0] );
   strAssemblyPWORD      = jsStringConvert  ( myArray [ 1] );
   strAssemblyNAME       = jsStringConvert  ( myArray [ 2] );
   strAssemblyFN_ACCNTNO = jsStringConvert  ( myArray [ 3] );
   strAssemblyFN_PHONE   = jsStringConvert  ( myArray [ 4] );
   strAssemblyFC_ACCNTNO = jsStringConvert  ( myArray [ 5] );
   strAssemblyFC_PHONE   = jsStringConvert  ( myArray [ 6] );

   return true;
}

function Lookup_Assembly ( Assembly_Number )
{
   var myVar,
       myArray,
       numFound;

   myVar      = RSExecute ( serverURL, "lookupAssembly", Assembly_Number );

   myArray    = myVar.return_value.split( strDelimiter );
   numFound   = myArray.length-1;

   if ( numFound > 0 )
      retrieveAssembly( myArray );

   return ( numFound );
}

//
//  Users table
//

var numUsersUSERID
var strUsersMEMBNO
var numUsersLEVEL
var strUsersUSERNAME
var strUsersPASSWORD
var flgUsersCANEDIT_STATE
var strUsersCOUNCIL_NUMBER
var flgUsersCANEDIT_COUNCIL
var numUsersASSEMBLY_NUMBER
var flgUsersCANEDIT_ASSEMBLY
var flgUsersVALIDLOGIN

// var arrEdit_Councils = new Array ( 100 );
var arrEdit_Councils;
var numCouncilsCount = 0;

function jsSplitString ( strUsersCOUNCIL_NUMBER, strDelimiter )
{
   arrEdit_Councils = strUsersCOUNCIL_NUMBER.split ( strDelimiter );

   return 1;
}

function retrieveUser ( myArray )
{
   var x;

   numUsersUSERID           = jsIntegerConvert ( myArray [ 0] );
   strUsersMEMBNO           = jsStringConvert  ( myArray [ 1] );
   numUsersLEVEL            = jsIntegerConvert ( myArray [ 2] );
   strUsersUSERNAME         = jsStringConvert  ( myArray [ 3] );
   strUsersPASSWORD         = jsStringConvert  ( myArray [ 4] );
   flgUsersCANEDIT_STATE    = jsBooleanConvert ( myArray [ 5] );
   strUsersCOUNCIL_NUMBER   = jsStringConvert  ( myArray [ 6] );
   flgUsersCANEDIT_COUNCIL  = jsBooleanConvert ( myArray [ 7] );
   numUsersASSEMBLY_NUMBER  = jsIntegerConvert ( myArray [ 8] );
   flgUsersCANEDIT_ASSEMBLY = jsBooleanConvert ( myArray [ 9] );
   flgUsersVALIDLOGIN       = jsBooleanConvert ( myArray [10] );

   jsSplitString ( strUsersCOUNCIL_NUMBER, "," );

   for ( x = 0; x < 10; x++ )
      {
      numCouncilsCount = x;

      if ( arrEdit_Councils [x] == undefined )
         {
         break;
         }
      }

   return true;
}

var strCouncilOfficePrompt = "";

function Lookup_User ( UserName, PassWord )
{
   var myVar,
       userArray,
       stateArray,
       councilArray,
       numFound,
       numFoundUser;

   var dtmVar    = new Date(),
       numHour,
       strIntro  = "Hello . . . ";

   numHour = dtmVar.getHours();

   if ( numHour >= 5 && numHour < 12 )
      strIntro = "Good Morning";

   if ( numHour >= 12 && numHour < 18 )
      strIntro = "Good Afternoon";

   if ( numHour >= 18 && numHour < 24 )
      strIntro = "Good Evening";

   myVar              = RSExecute ( serverURL, "lookupUser", UserName, PassWord );

   userArray          = myVar.return_value.split( strDelimiter );
   numFoundUser       = userArray.length-1;

   strCouncilOfficePrompt = "";
   strMembersLNAME    [0] = "Knight";
   if ( numFoundUser > 0 )
      {
      retrieveUser  ( userArray      );

      if ( strUsersMEMBNO != "" )
         {
         Lookup_Member ( strUsersMEMBNO );

         strPrompt = Lookup_StateOfficers ( strUsersMEMBNO );

         if ( strPrompt != "" )
            {
            strCouncilOfficePrompt = strIntro + " Worthy " + strPrompt + " " + strMembersLNAME [0];
            }
         else
            {
            numFound = Lookup_Officers ( strMembersCOUNCIL[0] );
            for ( x = 0; x < 22; x++ )
               {
               if ( strCounOffMembnos[x] == strUsersMEMBNO )
                  {
                  strCouncilOfficePrompt = strIntro + " Worthy " + strCounOffNames[x] + " " + strMembersLNAME [0];
                  break;
                  }
               }
            }
         }
      }

   if ( strCouncilOfficePrompt == "" )
      strCouncilOfficePrompt = "Hello Brother " + strMembersLNAME [0];

   return ( numFoundUser );
}

function Lookup_User_by_MEMBNO ( strMemberNumber )
{
   var myVar,
       myArray,
       numFound;

   myVar      = RSExecute ( serverURL, "lookupUser_by_MEMBNO", strMemberNumber );

   myArray    = myVar.return_value.split( strDelimiter );
   numFound   = myArray.length-1;


   if ( numFound > 0 )
      retrieveUser( myArray );

   return ( numFound );
}

function retrieveSpecUser ( myArray )
{
   var x;

   numUsersUSERID   = jsIntegerConvert ( myArray [ 0] );
   strUsersMEMBNO   = jsStringConvert  ( myArray [ 1] );
   strUsersUSERNAME = jsStringConvert  ( myArray [ 2] );
   strUsersPASSWORD = jsStringConvert  ( myArray [ 3] );

   return true;
}

function Lookup_SpecUser ( UserName, PassWord )
{
   var myVar,
       userArray,
       stateArray,
       councilArray,
       numFound,
       numFoundUser;

   var dtmVar    = new Date(),
       numHour,
       strIntro  = "Hello . . . ";

   numHour = dtmVar.getHours();

   if ( numHour >= 5 && numHour < 12 )
      strIntro = "Good Morning";

   if ( numHour >= 12 && numHour < 18 )
      strIntro = "Good Afternoon";

   if ( numHour >= 18 && numHour < 24 )
      strIntro = "Good Evening";

   myVar              = RSExecute ( serverURL, "lookupSpecUser", UserName, PassWord );

   userArray          = myVar.return_value.split( strDelimiter );
   numFoundUser       = userArray.length-1;

   strCouncilOfficePrompt = "";
   strMembersLNAME    [0] = "Knight";
   if ( numFoundUser > 0 )
      {
      retrieveUser  ( userArray );

      if ( strUsersMEMBNO != "" )
         Lookup_Member ( strUsersMEMBNO );
      }

   strCouncilOfficePrompt = strIntro + ", Brother " + strMembersLNAME [0];

   return ( numFoundUser );
}

function Lookup_SpecUser_by_MEMBNO ( strMemberNumber )
{
   var myVar,
       myArray,
       numFound;

   myVar      = RSExecute ( serverURL, "lookupSpecUser_by_MEMBNO", strMemberNumber );

   myArray    = myVar.return_value.split( strDelimiter );
   numFound   = myArray.length-1;


   if ( numFound > 0 )
      retrieveSpecUser( myArray );

   return ( numFound );
}
