//AJAX stuff //CHECK USERNAMES function CheckUser(username){ if(ValidUser.validate()){ $('checkUserPreloader').style.display = ''; $('userAvailableSpan').style.display = 'none'; $('userUnavailableSpan').style.display = 'none'; var url = "/ajax/checkuser.php"; var request = new Ajax.Request( url, { method: 'post', parameters: 'user='+username, onComplete: CheckUserReceptor, onSuccess: Success, onFailure: Failure, onException: function(request, exception) { alert("Js Exception: " + exception.message); } } ); } } function CheckUserReceptor(result){ $('checkUserPreloader').style.display = 'none'; if(result.status == 200){ if(result.responseText == 'free'){ $('userAvailableSpan').style.display = ''; }else{ $('userUnavailableSpan').style.display = ''; } } } function Success(result){ //alert('success'); } function Failure(result, detail){ alert('failure'); } //End AJAX stuff //Function to execute when the university is selected function universityChange(num){ if(num == 1){ $('otherUniversitySpan').style.display = ''; }else{ $('otherUniversitySpan').style.display = 'none'; } } function studentTypeChange(num){ if(num == 6){ $('careerSelect').style.display = ''; $('otherCareerDesc').style.display = 'none'; }else{ $('careerSelect').style.display = 'none'; $('otherCareerDesc').style.display = ''; } } function adTypeChange(num){ if(num == 1){ //Alquila $('searchingDiv').style.display = 'none'; $('rentingDiv').style.display = ''; }else{ //Busca $('searchingDiv').style.display = ''; $('rentingDiv').style.display = 'none'; } } var validUser = function(value, options){ if (value.length < 3 || value.length > 20) return false; var RegExPattern = /^[a-zA-Z\d-]{3,20}$/i; if (!value.match(RegExPattern)) return false; return true; } //Form validation function preSubmit(){ var bAllOk = true; if($('no_account').value == "true"){ if(!ValidUser.validate()){ bAllOk = false; } if(!Email.validate()){ bAllOk = false; } } if(!ValidTitle.validate()){ bAllOk = false; } if(!ValidAdType.validate()){ bAllOk = false; }else{ if($('ad_type').value == "1"){ //Renting floor if(!ValidRentFloorOptions.validate()){ bAllOk = false; } if(!ValidRentSmoking.validate()){ bAllOk = false; } if(!ValidRentPet.validate()){ bAllOk = false; } if(!ValidRentUrgent.validate()){ bAllOk = false; } if(!ValidStudentsAmount.validate()){ bAllOk = false; } if(!ValidRentUniversity.validate()){ bAllOk = false; } if(!ValidInternet.validate()){ bAllOk = false; } }else{ //Searching for floor if(!ValidFloorOptions.validate()){ bAllOk = false; } if(!ValidSmokes.validate()){ bAllOk = false; } if(!ValidSexualityOptions.validate()){ bAllOk = false; } if(!ValidPet.validate()){ bAllOk = false; } if(!ValidErasmus.validate()){ bAllOk = false; } if(!ValidUrgent.validate()){ bAllOk = false; } if($('university').value == "1"){ if(!ValidUniversityText.validate()){ bAllOk = false; } } if($('student_type').value == "6"){ if(!ValidCareer.validate()){ bAllOk = false; } }else{ if(!ValidCareerText.validate()){ bAllOk = false; } } if(!ValidUniversity.validate()){ bAllOk = false; } if(!ValidStudent.validate()){ bAllOk = false; } } } if(!ValidRegion.validate()){ bAllOk = false; } if($('show_email').checked == true){ if(!ContactEmail.validate()){ bAllOk = false; } } //Validate image types for all uploads if($('pic_1').value){ if(!checkValidImageFormat($('pic_1').value)){ bAllOk = false; $('mainPicStatus').style.display = ''; }else{ $('mainPicStatus').style.display = 'none'; } } for(i=2;i<=4;i++){ if($('pic_'+i).value){ if(!checkValidImageFormat($('pic_'+i).value)){ bAllOk = false; $('picStatus_'+i).style.display = ''; }else{ $('picStatus_'+i).style.display = 'none'; } }else{ $('picStatus_'+i).style.display = 'none'; } } if(bAllOk == true){ $('formStatus').style.display = 'none'; //alert('form passed!'); $('form1').submit(); }else{ $('formStatus').style.display = ''; } } //Spry validation variables //TextField validation var ContactEmail = new Spry.Widget.ValidationTextField("contactEmailContainer", "email", {isRequired:true,maxChars:128, validateOn:["blur"]}); var ValidUser = new Spry.Widget.ValidationTextField("nameLabel", "custom", {validation: validUser, validateOn:["blur"]}); var Email = new Spry.Widget.ValidationTextField("emailLabel", "email", {validateOn:["blur"]}); var ValidTitle = new Spry.Widget.ValidationTextField("titleLabel","none", {isRequired:true,maxChars:128, validateOn:["blur"]}); var ValidUniversityText = new Spry.Widget.ValidationTextField("otherUniversitySpan","none", {isRequired:true,maxChars:128, validateOn:["blur"]}); var ValidCareerText = new Spry.Widget.ValidationTextField("otherCareerDesc","none", {isRequired:true,maxChars:128, validateOn:["blur"]}); //Radio validation //For searching ads var ValidFloorOptions = new Spry.Widget.ValidationRadio("floorOptionsDiv", {isRequired:true, validateOn:["change", "blur"]}); var ValidSmokes = new Spry.Widget.ValidationRadio("smokesDiv", {isRequired:true, validateOn:["change", "blur"]}); var ValidSexualityOptions = new Spry.Widget.ValidationRadio("sexualityOptionsDiv", {isRequired:true, validateOn:["change", "blur"]}); var ValidPet = new Spry.Widget.ValidationRadio("petDiv", {isRequired:true, validateOn:["change", "blur"]}); var ValidErasmus = new Spry.Widget.ValidationRadio("erasmusDiv", {isRequired:true, validateOn:["change", "blur"]}); var ValidUrgent = new Spry.Widget.ValidationRadio("urgentDiv", {isRequired:true, validateOn:["change", "blur"]}); var ValidInternet = new Spry.Widget.ValidationRadio("rentInternetDiv", {isRequired:true, validateOn:["change", "blur"]}); //For rent ads var ValidRentFloorOptions = new Spry.Widget.ValidationRadio("rentFloorOptionsDiv", {isRequired:true, validateOn:["change", "blur"]}); var ValidRentSmoking = new Spry.Widget.ValidationRadio("smokingDiv", {isRequired:true, validateOn:["change", "blur"]}); var ValidRentPet = new Spry.Widget.ValidationRadio("rentPetDiv", {isRequired:true, validateOn:["change", "blur"]}); var ValidRentUrgent = new Spry.Widget.ValidationRadio("rentUrgentDiv", {isRequired:true, validateOn:["change", "blur"]}); //Selects validation //var ValidCountry = new Spry.Widget.ValidationSelect("countryDiv",{isRequired:true, validateOn:['blur','change']}); var ValidAdType = new Spry.Widget.ValidationSelect("AdTypeLabel",{isRequired:true, validateOn:['blur','change']}); var ValidRegion = new Spry.Widget.ValidationSelect("region_div",{isRequired:true, validateOn:['blur','change']}); var ValidUniversity = new Spry.Widget.ValidationSelect("universityLabel",{isRequired:true, validateOn:['blur','change']}); var ValidRentUniversity = new Spry.Widget.ValidationSelect("rentUniversityLabel",{isRequired:true, validateOn:['blur','change']}); var ValidStudent = new Spry.Widget.ValidationSelect("studentTypeLabel",{isRequired:true, validateOn:['blur','change']}); var ValidCareer = new Spry.Widget.ValidationSelect("careerSelect",{isRequired:true, validateOn:['blur','change']}); var ValidStudentsAmount = new Spry.Widget.ValidationSelect("amountStudentsDiv",{isRequired:true, validateOn:['blur','change']}); //TextArea validation //var ValidAboutMe = new Spry.Widget.ValidationTextarea("aboutMeDiv", {maxChars:1000, counterType:"chars_remaining", counterId:"about_me_counter", validateOn:["change"]}); //Checkboxes validation //var ValidFriendship = new Spry.Widget.ValidationCheckbox("friendship_option_checks", {minSelections:1, maxSelections:2, validateOn:["change", "blur"]});