//© 2010 Starwood Hotels & Resorts Worldwide, Inc.
//  All rights reserved.
function evalErrors(errorArray,f,pageType)
{
	var errorMsg, elemLoc;
	var errNum = 0;
	/* update opendate in opendate error message */
	var openDateUpdate = false;

	for (i=0; i < errorArray.length; i++){
		switch(errorArray[i]) {
			case 1:
				// MSGING.MSGTXT56
				errorMsg = '<img src="/Media/Graphics/Common/error_arrow.gif" border="0"> Check-in';
				elemLoc = 'divCI';
				break;
			case 2:
				// MSGING.MSGTXT57
				errorMsg = '<img src="/Media/Graphics/Common/error_arrow.gif" border="0"> Check-out';
				elemLoc = 'divCO';
				break;
			case 3:
				// ErrType.ERRTXT470zipUsOnly
				errorMsg = '<img src="/Media/Graphics/Common/error_arrow.gif" border="0"> Zip Code (U.S. only)';
				elemLoc = 'divZip';
				break;
			case 4:
				if (pageType == 'advSearch'){
					// TXTFRMLBL.LBLTXT112
					errorMsg = '<img src="/Media/Graphics/Common/error_arrow.gif" border="0"> Country';
				} else {
					errorMsg = '<img src="/Media/Graphics/Common/error_arrow.gif" border="0">&nbsp;';
				}
				elemLoc = 'divCountry';
				break;
			case 5:
				if (pageType == 'advSearch'){
					// TXTFRMLBL.LBLTXT108
					errorMsg = '<img src="/Media/Graphics/Common/error_arrow.gif" border="0"> State/Province';
				} else {
					errorMsg = '<img src="/Media/Graphics/Common/error_arrow.gif" border="0">&nbsp;';
				}
				elemLoc = 'divStateProvince';
				break;
			case 6:
				// TXTFRMLBL.LBLTXT608.RateRange
				errorMsg = '<img src="/Media/Graphics/Common/error_arrow.gif" border="0"> Rate Range (USD)';
				elemLoc = 'divRateRange';
				break;
			case 7:
				// ErrType.ERRTXT471.streetUsOnly
				errorMsg = '<img src="/Media/Graphics/Common/error_arrow.gif" border="0"> Street address (U.S. only)';
				elemLoc = 'divAddress';
				break;
			case 8:
				// TXTFRMLBL.LBLTXT107
				errorMsg = '<img src="/Media/Graphics/Common/error_arrow.gif" border="0"> City<br />';
				elemLoc = 'divCity';
				break;
            case 36:
				// TXTFRMLBL.LBLTXT107
				errorMsg = '<img src="/Media/Graphics/Common/error_arrow.gif" border="0"> null<br />';
				elemLoc = 'selectHotelsLabel';
				break;
			//---------------------
			case 9:
				// ErrType.ERRTXT456.ARRIVAL
				errorMsg = 'Arrival date cannot be earlier than today.<br /><br />';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				break;
			case 10:
				// ErrType.ERRTXT458.DEPARTURE
				errorMsg = 'Departure date cannot be earlier than arrival date.<br /><br />';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				break;
			case 11:
				// ErrType.ERRTXT459.ARRIVAL_DEPARTURE
				errorMsg = 'Arrival and departure date cannot be on the same day.<br /><br />';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				break;
			case 12:
				// ErrType.ERRTXT330.SPG.maximumLengthStayExceeded
				errorMsg = 'For stays longer than 31 nights, please call 866-539-3446.<br /><br />';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				break;
			case 13:
				// ErrType.ERRTXT472.550DaysAdvance
				errorMsg = 'You can only book up to 550 days in advance.<br /><br />';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				break;
			case 14:
				// ErrType.ERRTXT473.zipUsOnly
				errorMsg = 'Zip Code search is only available in the U.S.<br /><br />';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				break;
			case 15:
				// ErrType.ERRTXT474.addressUsOnly
				errorMsg = 'Address Search is only available in the U.S.<br /><br />';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				break;
			case 16:
				// ErrType.ERRTXT335.SPG.invalidZipCode
				errorMsg = 'The zip code entered is not valid. Please try again.<br /><br />';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				break;
			case 17:
				// ErrType.ERRTXT475.needCityStateCountry
				errorMsg = 'Need to enter city, state, and country for address search.<br /><br />';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				break;
			case 18:
				// ErrType.ERRTXT453.CHECKIN_CHECKOUT
				errorMsg = 'The check-in and checkout dates entered are not valid. Please try again.<br /><br />';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				break;
			case 19:
				// ErrType.ERRTXT454.CHECKIN
				errorMsg = 'The check-in date entered is not valid. Please try again.<br /><br />';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				break;
			case 20:
				// ErrType.ERRTXT455.CHECKOUT
				errorMsg = 'The checkout date entered is not valid. Please try again.<br /><br />';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				break;
			case 21:
				// ErrType.ERRTXT476.rateUsOnly
				errorMsg = 'Rate range search is for U.S. hotels only.<br /><br />';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				break;
			case 22:
				// ErrType.ERRTXT460.SEARCH_CRITERIA
				errorMsg = 'Please enter your search criteria.<br /><br />';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				break;
			case 23:
				// ErrType.ERRTXT477.needStateProvince
				errorMsg = 'Need to enter state/province for a U.S. or Canadian city search.<br /><br />';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				break;
			case 24:
				// TXTFRMLBL.LBLTXT822.BOOKING
				errorMsg = '<img src="/Media/Graphics/Common/error_arrow.gif" border="0"> Special Rate Plan (ID required at Check-in)<br/>';
				elemLoc = 'divSpecRate';
				break;
			case 25:
				// TXTFRMLBL.LBLTXT702 (Promo code)
				errorMsg = '<img src="/Media/Graphics/Common/error_arrow.gif" border="0"> Promotion code';
				elemLoc = 'divPromoCode';
				break;
			case 26:
			    //Corporate/SET Number
				errorMsg = '<img src="/Media/Graphics/Common/error_arrow.gif" border="0"> SET/Corporate Account #';
				elemLoc = 'divSET';
				break;
			case 27:
				errorMsg = '<img src="/Media/Graphics/Common/error_arrow.gif" border="0"> Travel Agent #(ARC/IATA/TIDS)';
				elemLoc = 'divIATA';
				break;
			case 28:
				// ErrType.ERRTXT478.travelAgentInvalid
				errorMsg = 'The Travel Agent number entered is not valid. Please try again.<br />';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				break;
			case 29:
				// ErrType.ERRTXT479.setInvalid
				errorMsg = 'The SET number entered is not valid. Please try again.<br />';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				break;
			case 30:
				// ErrType.ERRTXT480.clearPromoRatePlan
				errorMsg = 'You can either enter a promotion code or select a special rate plan. Please clear one of those fields.<br />';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				break;
			case 31:
				// ErrType.ERRTXT481.clearSetRatePlan
				errorMsg = 'You cannot select a special rate plan when you have entered a SET or corporate account number. Please clear one of those fields.<br />';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				break;
			case 32:
				// ErrType.ERRTXT482.agreeTC
				errorMsg = '<br/>You must agree to the Terms &amp; Conditions in order to continue.<br/><br/>';
				elemLoc = 'divTCError';
				errNum = errNum + 1;
				break;
			case 33:
				// ErrType.ERRTXT483.tooManyHotels
				errorMsg = '<br/>There are too many hotels in the United States to list here. Please specify at least City or State for best results.<br/><br/>';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				break;
			case 34:
				// ErrType.ERRTXT462.COUNTRY
				errorMsg = 'Need to enter a country for a city search.<br /><br />';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				break;
             case 35:
				// MESSAGEWHSEARCH.SELECTDESTERROR
				errorMsg = 'Please select the hotel that you would like to search by. <br />';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				break;
		    case 37:            
				errorMsg = 'You can either enter a promotion code or a SET/Corporate Account #. Please clear one of those fields.<br />';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				break;
			case 38:
				errorMsg = 'This hotel is taking reservations for dates on or after <span class=\"openDateDisplay\"></span>.<br />';
				elemLoc = 'divMsgTop';
				errNum = errNum + 1;
				var openDateUpdate = true;
				break;
		}
		if(sectionReference != null){tabSwitch('section1',pageType);}//switch the tab to see the error message
		if(pageType == 'home'){errorMsg = '<span class="searchFormErrorTextHome">' + errorMsg + '</span>';}
		else{errorMsg = '<span class="searchFormErrorText">' + errorMsg + '</span>';}
		writetoDiv(sectionReference,elemLoc,errorMsg,pageType);
	}
	//generic messaging
	//alert(errNum);
	if (errNum > 1 || errNum == 0){
		// ErrType.ERRTXT463REVIEW
		if(pageType == 'home'){errorMsg = '<span class="searchFormErrorTextHome">We need you to correct or provide more information. Please see each marked section.<br /><br /></span>';}
		// ErrType.ERRTXT463REVIEW
		else{errorMsg = '<span class="searchFormErrorText">We need you to correct or provide more information. Please see each marked section.<br /><br /></span>';}
		elemLoc = 'divMsgTop';
		if(sectionReference != null){tabSwitch('section1',pageType)};//switch the tab to see the error message
		writetoDiv(sectionReference,elemLoc,errorMsg,pageType);
	}
	/* update opendate in opendate error message */
	 if (openDateUpdate && outputOpenDateError_ratelist){outputOpenDateError_ratelist();}
}
