
if( NC4 ) document.write( "<STYLE> .off{ display:on; } </STYLE>" );

//------------------------------------------------------------------------------------
function disableField(field) {
	field.blur();
	self.status = "This data is read-only & for display/print purposes only...";
}

function clearField(field) { if ( field.value == field.defaultValue ) field.value = ""; }
function checkField(field) { if (field.value == "") field.value = field.defaultValue; }

//--------------------------------------------------------------------------------------

function setButton( Button, command ) {

	switch( command ) {

		case "enable":
			Button.value = " Submit Order ";
			if( dHTML ) Button.disabled = false;
			break;

		case "disable":
			Button.value = "Please Wait...";
			if( dHTML ) Button.disabled = true;
			break;

		default:
			alert( "SWITCH/CASE ERROR: Case caught by default handler in setButton( Button, command )" );
	}
}

//---------------------------------------------------------------------------------------

function checkForm( Form ) {

	if( dbLoaded() ) {

		setButton( Form.submit_button, "disable" );
		var missingInfo = "";
		var lineNumber = 0;
		var missingObj = null;
		var nMissingFields = 0;

		var noOrderStatusChecked = true;
		var Order_Status = Form.Order_Status;
		for(var i = 0; i < Order_Status.length; i++) {
			if( Order_Status[ i ].checked ) {
				noOrderStatusChecked = false;
				break;
			}
		}
		if( noOrderStatusChecked ) {
			lineNumber++;
			missingInfo += "\n   " + lineNumber + ". About This Order/Inquiry (top of page)";
			if( missingObj == null ) missingObj = Order_Status[ 0 ];
		}

		var Bride = Form.Bride;
		if( Bride.value == Bride.defaultValue ) {
			lineNumber++;
			nMissingFields++;
			missingInfo += "\n   " + lineNumber + ". Bride's Name";
			if( missingObj == null ) missingObj = Bride;
		}
		else recordData( "Bride", Bride.value );

		var Groom = Form.Groom;
		if( Groom.value == Groom.defaultValue ) {
			lineNumber++;
			nMissingFields++;
			missingInfo += "\n   " + lineNumber + ". Groom's Name";
			if( missingObj == null ) missingObj = Groom;
		}
		else recordData( "Groom", Groom.value );

		if( Bride.value == "." && Groom.value == "." ) {
			DeleteCookie( "pmwClientCookie", "/" );
			DeleteCookie( "pmwCartCookie", "/" );
			alert( "The following cookies have been deleted:\n1) pmwClientCookie\n2) pmwCartCookie" );
			setButton( Form.submit_button, "enable" );
			return false;
		}

		var Identity = document.form.Identity;
		var nIdentityChoices = Identity.length;
		for( var i = 0; i < nIdentityChoices; i++ ) {
			if( Identity[ i ].checked ) {
				recordData( 'Identity', i );
				break;
			}
			else continue;
		}

		var Name = document.form.Name;
		if( Name.value == Name.defaultValue ) {
			lineNumber++;
			missingInfo += "\n   " + lineNumber + ". Your Name";
			if( missingObj == null ) missingObj = Name;
		}
		else recordData( 'Name', Name.value );

		var Address = Form.Address;
		if( Address.value == '' ) {
			lineNumber++;
			missingInfo += "\n   " + lineNumber + ". Mailing Address";
			if( missingObj == null ) missingObj = Address;
		}
		else recordData( "Address", Address.value );

		var Home_Tel = Form.Home_Tel;
		var Work_Tel = Form.Work_Tel;
		if( Home_Tel.value == Home_Tel.defaultValue && Work_Tel.value == Work_Tel.defaultValue ) {
			lineNumber++;
			missingInfo += "\n   " + lineNumber + ". A Telephone Number";
			if( missingObj == null ) missingObj = Home_Tel;
		}
		else {
			if( Home_Tel.value != Home_Tel.defaultValue )
				recordData( "Home_Tel", Home_Tel.value );
			if( Work_Tel.value != Work_Tel.defaultValue )
				recordData( "Work_Tel", Work_Tel.value );
		}

		var email = Form.email;
		if( email.value == email.defaultValue ) {
			lineNumber++;
			missingInfo += "\n   " + lineNumber + ". E-mail Address";
			if( missingObj == null ) missingObj = email;
		}
		else recordData( "email", email.value );

		var Fax = Form.Fax;
		if( Fax.value != Fax.defaultValue ) recordData( "Fax", Fax.value );

		var Wedding_Date = Form.Wedding_Date;
		if( Wedding_Date.value != Wedding_Date.defaultValue )
			recordData( "Wedding_Date", Wedding_Date.value );

		var Wedding_Time = Form.Wedding_Time;
		if( Wedding_Time.value != Wedding_Time.defaultValue )
			recordData( "Wedding_Time", Wedding_Time.value );

		var Marriage_License_Appt = Form.Marriage_License_Appt; // Checkbox
		recordData( "Marriage_License_Appt", Form.Marriage_License_Appt.checked );

		if( Form.Marriage_License_Appt.checked ) {
			var Marriage_License_Date = Form.Marriage_License_Date;
			if( Marriage_License_Date.value != Marriage_License_Date.defaultValue )
				recordData( "Marriage_License_Date", Marriage_License_Date.value );

			var Marriage_License_Time = Form.Marriage_License_Time;
			if( Marriage_License_Time.value != Marriage_License_Time.defaultValue )
				recordData( "Marriage_License_Time", Marriage_License_Time.value );
		}
		else {
			recordData( "Marriage_License_Date", "" );
			recordData( "Marriage_License_Time", "" );
		}

		var Number_Guests = Form.Number_Guests;
		if( Number_Guests.value != Number_Guests.defaultValue )
			recordData( "Number_Guests", Number_Guests.value );

		var Number_Bridesmaids = Form.Number_Bridesmaids; // Pulldown
		if( Number_Bridesmaids.selectedIndex > 0 )
			recordData( "Number_Bridesmaids", Number_Bridesmaids.selectedIndex );

		var Number_Groomsmen = Form.Number_Groomsmen; // Pulldown
		if( Number_Groomsmen.selectedIndex > 0 )
			recordData( "Number_Groomsmen", Number_Groomsmen.selectedIndex );

		var Number_Flowergirls = Form.Number_Flowergirls; // Pulldown
		if( Number_Flowergirls.selectedIndex > 0 )
			recordData( "Number_Flowergirls", Number_Flowergirls.selectedIndex );

		var Number_Ringbearers = Form.Number_Ringbearers; // Pulldown
		if( Number_Ringbearers.selectedIndex > 0 )
			recordData( "Number_Ringbearers", Number_Ringbearers.selectedIndex );

		var Number_Parents = Form.Number_Parents; // Pulldown
		if( Number_Parents.selectedIndex > 0 )
			recordData( "Number_Parents", Number_Parents.selectedIndex );

		var Number_Grandparents = Form.Number_Grandparents; // Pulldown
		if( Number_Grandparents.selectedIndex > 0 )
			recordData( "Number_Grandparents", Number_Grandparents.selectedIndex );

		var Favorite_Flowers = Form.Favorite_Flowers;
		if( Favorite_Flowers.value != Favorite_Flowers.defaultValue )
			recordData( "Favorite_Flowers", Favorite_Flowers.value );

		var Color_Theme = Form.Color_Theme;
		if( Color_Theme.value != Color_Theme.defaultValue )
			recordData( "Color_Theme", Color_Theme.value );

		var Celebration_Style = Form.Celebration_Style; // Pulldown
		if( Celebration_Style.selectedIndex > 0 )
			recordData( "Celebration_Style", Celebration_Style.selectedIndex );

		var Accommodations_Arranged = Form.Accommodations_Arranged; // Checkbox
		recordData( "Accommodations_Arranged", Form.Accommodations_Arranged.checked );

		if( Form.Accommodations_Arranged.checked ) {
			var Arrival_Date = Form.Arrival_Date;
			if( Arrival_Date.value != Arrival_Date.defaultValue )
				recordData( "Arrival_Date", Arrival_Date.value );

			var Departure_Date = Form.Departure_Date;
			if( Departure_Date.value != Departure_Date.defaultValue )
				recordData( "Departure_Date", Departure_Date.value );

			var Name_of_Accomodations = Form.Name_of_Accomodations;
			if( Name_of_Accomodations.value != Name_of_Accomodations.defaultValue )
				recordData( "Name_of_Accomodations", Name_of_Accomodations.value );
		}
		else {
			recordData( "Arrival_Date", "" );
			recordData( "Departure_Date", "" );
			recordData( "Name_of_Accomodations", "" );
		}

		if( missingInfo != "" && Bride.value != "." ) {
			alert("You failed to provide the following information:\n" + missingInfo + "\n\nYou must fill in these missing item(s) to submit this form...");
			missingObj.focus();
			setButton( Form.submit_button, "enable" );
			return false;
		}
		else {

			var successURL = "http://" + document.location.hostname + "/index.html?";

			Form.success.value = ( Order_Status[ 1 ].checked ) ?
				successURL + "show=pay" : successURL + "show=notPay";

			return true;
		}
	}
}
//---------------------------------------------------------------------------------------

function emailAlert() {

	alert("You provided \"" + document.form.email.value + "\" as your e-mail address. Please review it and make sure you entered it accurately! It\'s important because if you make a typo in your e-mail address we will not be able to contact you by e-mail.");

}

//----------------------------------------------------------------------------------------
function modifyDueToday( value ) {
	if( typeof document.form.Amount_Due == "object" ) document.form.Amount_Due.value = value;
}

//--------------------------------------------------------------------------------------

var accomChecked = false;
var marLicChecked = false;

function resetFormElements() { // called OnLoad

	var Form = document.form;

	var OrderStatus = Form.Order_Status;
	if( eval( 'typeof OrderStatus' ) == 'object' ) {
		OrderStatus[0].checked = false;
		OrderStatus[1].checked = false;
	}

	var accomObj = Form.Accommodations_Arranged;
	if( eval( 'typeof accomObj' ) == 'object' ) { if( !accomChecked ) accomObj.checked = false; }

	var marLicObj = Form.Marriage_License_Appt;
	if( eval( 'typeof marLicObj' ) == 'object' ) { if( !marLicChecked ) marLicObj.checked = false; }

}

//--------------------------------------------------------------------------------------

function clearAccomFields() {

	var theForm = document.form;
	theForm.Arrival_Date.value = "";
	theForm.Departure_Date.value = "";
	theForm.Name_of_Accomodations.value = "";

}
//--------------------------------------------------------------------------------------

function clearMarLicFields() {

	var theForm = document.form;
	theForm.Marriage_License_Date.value = "";
	theForm.Marriage_License_Time.value = "";

}

//----------------------------------------------------------------------------------------

function setFormValues() { // called onLoad
	if( myPar ) {
		if( dbLoaded() ) {

			var Form = document.form;

			var Order = Form.Order;
			Order.value = getCart( false );

			var DueToday = Form.Amount_Due;
			DueToday.value = '$' + formatMoney( gPayableNow );
		}
		else setTimeout( "setFormValues();", 500 );

	}
}
//----------------------------------------------------------------------------------------
function writeFields() { // called onLoad

	var pmwClientCookie = GetCookie( "pmwClientCookie" );
	//alert( pmwClientCookie )
	var Form = document.form;

	if( pmwClientCookie != null ) {

		var Bride = getValueFromKey( "Bride", pmwClientCookie );
		if( Bride != "" ) Form.Bride.value = Bride;

		var Groom = getValueFromKey( "Groom", pmwClientCookie );
		if( Groom != "" ) Form.Groom.value = Groom;

		var Identity = getValueFromKey( 'Identity', pmwClientCookie );
		if( Identity != "" ) document.form.Identity[ parseInt( Identity ) ].checked = true;

		var Name = getValueFromKey( 'Name', pmwClientCookie );
		if( Name != "" ) document.form.Name.value = Name;

		var Address = getValueFromKey( "Address", pmwClientCookie );
		if( Address != "" ) Form.Address.value = Address;

		var Home_Tel = getValueFromKey( "Home_Tel", pmwClientCookie );
		if( Home_Tel != "" ) Form.Home_Tel.value = Home_Tel;

		var Work_Tel = getValueFromKey( "Work_Tel", pmwClientCookie );
		if( Work_Tel != "" ) Form.Work_Tel.value = Work_Tel;

		var email = getValueFromKey( "email", pmwClientCookie );
		if( email != "" ) Form.email.value = email;

		var Fax = getValueFromKey( "Fax", pmwClientCookie );
		if( Fax != "" ) Form.Fax.value = Fax;

		var Wedding_Date = getValueFromKey( "Wedding_Date", pmwClientCookie );
		if( Wedding_Date != "" ) Form.Wedding_Date.value = Wedding_Date;

		var Wedding_Time = getValueFromKey( "Wedding_Time", pmwClientCookie );
		if( Wedding_Time != "" ) Form.Wedding_Time.value = Wedding_Time;

		// Checkbox
		var Marriage_License_Appt = getValueFromKey( "Marriage_License_Appt", pmwClientCookie );
		if( Marriage_License_Appt == "true" ) {
			Form.Marriage_License_Appt.checked = true;
			section( "marriage_lic_dateID", "on" );
			section( "marriage_lic_timeID", "on" );
		}

		var Marriage_License_Date = getValueFromKey( "Marriage_License_Date", pmwClientCookie );
		if( Marriage_License_Date != "" ) Form.Marriage_License_Date.value = Marriage_License_Date;

		var Marriage_License_Time = getValueFromKey( "Marriage_License_Time", pmwClientCookie );
		if( Marriage_License_Time != "" )
			Form.Marriage_License_Time.value = Marriage_License_Time;

		var Number_Guests = getValueFromKey( "Number_Guests", pmwClientCookie );
		if( Number_Guests != "" ) Form.Number_Guests.value = Number_Guests;

		// Pulldown
		var Number_Bridesmaids = getValueFromKey( "Number_Bridesmaids", pmwClientCookie );
		if( Number_Bridesmaids != "" )
			Form.Number_Bridesmaids.selectedIndex = parseInt( Number_Bridesmaids );

		// Pulldown
		var Number_Groomsmen = getValueFromKey( "Number_Groomsmen", pmwClientCookie );
		if( Number_Bridesmaids != "" )
			Form.Number_Groomsmen.selectedIndex = parseInt( Number_Groomsmen );

		// Pulldown
		var Number_Flowergirls = getValueFromKey( "Number_Flowergirls", pmwClientCookie );
		if( Number_Bridesmaids != "" )
			Form.Number_Flowergirls.selectedIndex = parseInt( Number_Flowergirls );

		// Pulldown
		var Number_Ringbearers = getValueFromKey( "Number_Ringbearers", pmwClientCookie );
		if( Number_Bridesmaids != "" )
			Form.Number_Ringbearers.selectedIndex = parseInt( Number_Ringbearers );

		// Pulldown
		var Number_Parents = getValueFromKey( "Number_Parents", pmwClientCookie );
		if( Number_Bridesmaids != "" )
			Form.Number_Parents.selectedIndex = parseInt( Number_Parents );

		// Pulldown
		var Number_Grandparents = getValueFromKey( "Number_Grandparents", pmwClientCookie );
		if( Number_Bridesmaids != "" )
			Form.Number_Grandparents.selectedIndex = parseInt( Number_Grandparents );

		var Favorite_Flowers = getValueFromKey( "Favorite_Flowers", pmwClientCookie );
		if( Favorite_Flowers != "" ) Form.Favorite_Flowers.value = Favorite_Flowers;

		var Color_Theme = getValueFromKey( "Color_Theme", pmwClientCookie );
		if( Color_Theme != "" ) Form.Color_Theme.value = Color_Theme;

		// Pulldown
		var Celebration_Style = getValueFromKey( "Celebration_Style", pmwClientCookie );
		if( Number_Bridesmaids != "" )
			Form.Celebration_Style.selectedIndex = parseInt( Celebration_Style );

		// Checkbox
		var Accommodations_Arranged = getValueFromKey( "Accommodations_Arranged", pmwClientCookie );
		if( Accommodations_Arranged == "true" ) {
			Form.Accommodations_Arranged.checked = true;
			section( "arrive_dateID", "on" );
			section( "depart_dateID", "on" );
			section( "accommodationsID", "on" );
		}

		var Arrival_Date = getValueFromKey( "Arrival_Date", pmwClientCookie );
		if( Arrival_Date != "" ) Form.Arrival_Date.value = Arrival_Date;

		var Departure_Date = getValueFromKey( "Departure_Date", pmwClientCookie );
		if( Departure_Date != "" ) Form.Departure_Date.value = Departure_Date;

		var Name_of_Accomodations = getValueFromKey( "Name_of_Accomodations", pmwClientCookie );
		if( Name_of_Accomodations != "" )
			Form.Name_of_Accomodations.value = Name_of_Accomodations;

	}
}

//----------------------------------------------------------------------------------------
function recordSystemInfo() {

	var Form = document.form;

	Form.Operating_System.value = navigator.platform;
	Form.Browser.value = navigator.appName + " " + navigator.appVersion;
	Form.Java_Enabled.value = navigator.javaEnabled();
	Form.JavaScript_Enabled.value = true;
	Form.JavaScript_Engine.value = jsVer;
	Form.Cookies_Enabled.value = navigator.cookieEnabled;
	var saveCart = ( GetCookie( "pmwCartCookie" ) ) ? true : false;
	Form.Save_Cart.value = saveCart;
	Form.Monitor.value = screen.width + "×" + screen.height + "×" + screen.colorDepth;

}

//----------------------------------------------------------------------------------------

function getValueFromKey( key, strToSearch ) {

	var value = "";
	var lookUpPattern = key + "»";

	// If lookUpPattern is found
	if( strToSearch.indexOf( lookUpPattern ) != -1 ) {

		// if string has more than 1 key/value pair
		if( strToSearch.indexOf( "¦" ) != -1 ) {
			var searchArr = strToSearch.split( "¦" );
			for( var i = 0; i < searchArr.length; i++ ) {
				if( searchArr[ i ].indexOf( lookUpPattern ) == 0 ) {
					value = searchArr[ i ].split( "»" )[1];
					break;
				}
			}
		}
		else // There is only one key/value pair in strToSearch
			value = strToSearch.split( "»" )[1];
	}
	if( typeof value == "undefined" ) value = ""; //N6 problem
	return value;
}
//---------------------------------------------------------------------------------------

function recordData( key, value ) {

	var newCookie = "";
	var oldCookie = GetCookie( "pmwClientCookie" );

	var target = key + "»";
	var newKeyValPair = target + value;

	if( oldCookie != null ) {

		var startPos = oldCookie.indexOf( target );
		var endPos = oldCookie.indexOf( "¦", startPos );

		// If there is only one key/value pair in cookie
		if( endPos == -1 ) endPos = oldCookie.length;

		// key already exists; so update it with this new value
		if( startPos != -1 ) {

			var slice1 = oldCookie.substring( 0, startPos );
			var slice2 = oldCookie.substring( endPos, oldCookie.length );
			newCookie = slice1 + newKeyValPair + slice2;

		}
		else // Key does not exist in existing cookie so append this new key/value pair
			newCookie += oldCookie + "¦" + newKeyValPair;

		SetCookie( "pmwClientCookie", newCookie, expOneYear, "/" );
	}
	else // No existing cookie so make one
		SetCookie( "pmwClientCookie", newKeyValPair, expOneYear, "/" );

//alert( "Resulting Cookie: |" + GetCookie( "pmwClientCookie" ) + "|" )

}
//--------------------------------------------------------------------------------------

function writeName( identity ) { document.form.Name.value = identity; }