function disableSubmit() {
        var submitted_ref = document.getElementById("submitted");
	submitted_ref.value = "1";
        return true;
}

function validate() {
        var error_str = "";
        var valid = true;
        var end = "<BR>";
        var spaces = "&nbsp;&nbsp;";
        var error_row_ref = document.getElementById("error_row");
        var error_text_ref = document.getElementById("error_txt");
        var status_msg_ref = document.getElementById("status");
        var title_ref = document.getElementById("title");
        var street_address_ref = document.getElementById("street_address");
        var city_ref = document.getElementById("city");
        var state_ref = document.getElementById("state_id");
        var zip_ref = document.getElementById("postal_code");
        var status_ref = document.getElementById("property_status_id");
        var ss_status_ref = document.getElementById("submission_status_id");
        var type_ref = document.getElementById("property_type_id");
        var class_ref = document.getElementById("property_class_id");
        var lake_ref = document.getElementById("lake_id");
        var first_name_ref = document.getElementById("first_name");
        var last_name_ref = document.getElementById("last_name");
        var email_ref = document.getElementById("email_address");
        var password_ref = document.getElementById("password");
        var phone_ac_ref = document.getElementById("phone_ac");
        var phone_npa_ref = document.getElementById("phone_npa");
        var phone_nxx_ref = document.getElementById("phone_nxx");
        var property_desc_ref = document.getElementById("property_desc");
        var rate_desc_ref = document.getElementById("rate_desc");
        var asking_price_ref = document.getElementById("asking_price");
        var picture_1_ref = document.getElementById("picture_1");
        var picture_2_ref = document.getElementById("picture_2");
        var picture_3_ref = document.getElementById("picture_3");
        var picture_4_ref = document.getElementById("picture_4");
        var picture_5_ref = document.getElementById("picture_5");
        var picture_6_ref = document.getElementById("picture_6");
        var submitted_ref = document.getElementById("submitted");

        var title = trim(title_ref.value);
        if (title.length == 0) {
                valid = false;
                error_str += spaces + "Please enter the title." + end;
        }

	if (type_ref.value == 1) {
        	var street_address = trim(street_address_ref.value);
        	if (street_address.length == 0) {
                	valid = false;
                	error_str += spaces + "Please enter the street address." + end;
		}
	}

        var city = trim(city_ref.value);
        if (city.length == 0) {
                valid = false;
                error_str += spaces + "Please enter the city." + end;
	}
        var sel_state = state_ref.selectedIndex;
        if (state_ref.options[sel_state].value == 0) {
                valid = false;
                error_str += spaces + "Please select the lake state." + end;
        }
        var zip = trim(zip_ref.value);
	// disabled zip check
        //if (zip.length == 0) {
        //       valid = false;
        //      error_str += spaces + "Please enter the zip." + end;
	//}

        var class_value = class_ref.value;
        if (class_value == 0) {
                valid = false;
                error_str += spaces + "Please enter the property type." + end;
        }

	var acc_reference = "seller";
	if (type_ref.value == 2) {
		acc_reference = "owner";
	}

        var first_name = trim(first_name_ref.value);
        if (first_name.length == 0) {
                valid = false;
                error_str += spaces + "Please enter the " + acc_reference + " first name." + end;
        }
        var last_name = trim(last_name_ref.value);
        if (last_name.length == 0) {
                valid = false;
                error_str += spaces + "Please enter the " + acc_reference + " last name." + end;
        }
        var email_address = trim(email_ref.value);
        if (email_address.length == 0) {
                valid = false;
                error_str += spaces + "Please enter the " + acc_reference + " email address." + end;
        }
        else if (!validateEmail(email_address)) {
                valid = false;
                error_str += spaces + "Please enter a valid " + acc_reference + " email address." + end;
        }
	
	var password = trim(password_ref.value);
        if (password.length == 0) {
                valid = false;
                error_str += spaces + "Please enter a password." + end;
        }

        if (!checkPhone(phone_ac_ref.value,phone_npa_ref.value,phone_nxx_ref.value)) {
                valid = false;
                error_str += spaces + "Please enter a valid " + acc_reference + " phone number." + end;
        }
        var prop_desc = trim(property_desc_ref.value);
        if (prop_desc.length == 0) {
                valid = false;
                error_str += spaces + "Please enter the property description." + end;
	}

	if (type_ref.value == 2) {
        	var rate_desc = trim(rate_desc_ref.value);
        	if (rate_desc.length == 0) {
                	valid = false;
                	error_str += spaces + "Please enter the rate description." + end;
		}
	}

	if (type_ref.value == 1) {
        	var asking_price = trim(asking_price_ref.value);
        	if (asking_price.length == 0) {
                	valid = false;
                	error_str += spaces + "Please enter the asking price." + end;
		}
        	else if (!isNumeric(asking_price)) {
                	valid = false;
                	error_str += spaces + "Please enter a valid asking price." + end;
        	}
	}
	//alert("BEGINNING PIC CHECK");
        // check picture_1 a
	//alert("PIC 1 val: " + picture_1_ref.value);
        if (picture_1_ref.value != "") {
                var toks = picture_1_ref.value.split(".");
                var ext = toks[toks.length-1].toLowerCase();
                if ( (ext != "gif") && (ext != "jpeg") && (ext != "jpg") && (ext != "png") ) {
                        valid = false;
                        error_str += spaces + "Please upload a valid file type for the first picture (.gif,.jpg,.png)" + end;
                }
        }
	//alert("BEGINNING PIC 2 CHECK");
        // check picture_2 
        if (picture_2_ref.value != "") {
                var toks = picture_2_ref.value.split(".");
                var ext = toks[toks.length-1].toLowerCase();
                if ( (ext != "gif") && (ext != "jpeg") && (ext != "jpg") && (ext != "png") ) {
                        valid = false;
                        error_str += spaces + "Please upload a valid file type for the second picture (.gif,.jpg,.png)" + end;
                }
        }
        // check picture_3 
        if (picture_3_ref.value != "") {
                var toks = picture_3_ref.value.split(".");
                var ext = toks[toks.length-1].toLowerCase();
                if ( (ext != "gif") && (ext != "jpeg") && (ext != "jpg") && (ext != "png") ) {
                        valid = false;
                        error_str += spaces + "Please upload a valid file type for the third picture (.gif,.jpg,.png)" + end;
                }
        }
        // check picture_4 
        if (picture_4_ref.value != "") {
                var toks = picture_4_ref.value.split(".");
                var ext = toks[toks.length-1].toLowerCase();
                if ( (ext != "gif") && (ext != "jpeg") && (ext != "jpg") && (ext != "png") ) {
                        valid = false;
                        error_str += spaces + "Please upload a valid file type for the fourth picture (.gif,.jpg,.png)" + end;
                }
        }
        // check picture_5
        if (picture_5_ref.value != "") {
                var toks = picture_5_ref.value.split(".");
                var ext = toks[toks.length-1].toLowerCase();
                if ( (ext != "gif") && (ext != "jpeg") && (ext != "jpg") && (ext != "png") ) {
                        valid = false;
                        error_str += spaces + "Please upload a valid file type for the fifth picture (.gif,.jpg,.png)" + end;
                }
        }
        // check picture_6
        if (picture_6_ref.value != "") {
                var toks = picture_6_ref.value.split(".");
                var ext = toks[toks.length-1].toLowerCase();
                if ( (ext != "gif") && (ext != "jpeg") && (ext != "jpg") && (ext != "png") ) {
                        valid = false;
                        error_str += spaces + "Please upload a valid file type for the sixth picture (.gif,.jpg,.png)" + end;
                }
        }

	if (submitted_ref.value == "1") {
		valid = false;
		error_str = spaces + "The property has already been submitted" + end;
	}


	//alert("RETURNING FROM VALIDATE: " + valid);
        if (!valid) {
                status_msg_ref.style.display = "";
                status_msg_ref.innerHTML = error_str;
                scrollTo(0,0);
		return valid;
        }
        return valid;
}

function postSavePropertyForm(action) {
        var action_ref = document.getElementById("post_action");
        action_ref.value = action;
        //return document.feedback.submit();
	//alert("VALIDATING");
	var valid = validate();
	if (valid) {	
		disableSubmit();
        	return document.forms[0].submit();
	}
	else {
		return valid;
	}
}

function postCancelPropertyForm(action) {
        var action_ref = document.getElementById("post_action");
        action_ref.value = action;
        //return document.feedback.submit();
       	return document.forms[0].submit();
}

