var boxBackGroundColor="#FFFFCE"; var boxBordersColor="#F6C454"; //------------------------------------------------- //-------------DO NOT EDIT BELOW------------------- //------------------------------------------------- //begin SETTINGS var searchResultsPath="http://www.findpetcare.com/se/searchResults.aspx"; var imagesBasePath="http://www.findpetcare.com/se/img/"; var GMTOffset=new Date().getTimezoneOffset()*1000*60; //end SETTINGS var selectedServiceType=1; function displayError(strMsg){ window.alert(strMsg); return false; } function validateForm(){ var numberOfPets; var petSpecie; var roomAssignment; var checkInDate; var checkOutDate; var areaRange; var zipCode; var discountOptions; zCode = document.getElementById("txtZipCode").value; zipCode=zCode; if(zCode.match("^[0-9]*$") && zCode.length==5){ document.getElementById("txtZipCode").value = zCode; } else{ return displayError('Invalid zip code'); } var fromDateCalendar=BuildDateFromCombo('selMonthStartDate', 'selDayStartDate'); var toDateCalendar=BuildDateFromCombo('selMonthEndDate', 'selDayEndDate'); cDate = new Date(); if (fromDateCalendar.getDate() != document.getElementById('selDayStartDate').selectedIndex+1) return displayError("The check-in date is invalid"); if (toDateCalendar.getDate() != document.getElementById('selDayEndDate').selectedIndex+1) return displayError("The check-out date is invalid"); fromDate = fromDateCalendar; checkInDate=fromDate; toDate = toDateCalendar; checkOutDate=toDate; if(toDate < fromDate){ return displayError("Check-out date must be greater or equal to check-in date"); } if(fromDate-cDate < 72*60*60*1000){ return displayError("check-in date to close to today"); } if(selectedServiceType==1){ if(toDate.toString()==fromDate.toString()){ return displayError("Check-out date must be greater than check-in date"); } } totalPets = document.getElementById("cboPetNumber").value; numberOfPets=totalPets; totalRooms = document.getElementById("cboRuns").value; roomAssignmentCount = 0; roomAssignment=''; if(totalPets>1){ for(i=0;i< totalRooms;i++){ roomAssignmentCount += parseInt(document.getElementById("room_"+ (i+1) +"_guests").value); roomAssignment=roomAssignment+document.getElementById("room_"+ (i+1) +"_guests").value+','; } if(roomAssignmentCount != totalPets){ return displayError("Invalid rooms assignment"); } roomAssignment=roomAssignment.substring(0,roomAssignment.length-1); } else { roomAssignment="1"; } numberOfPets=document.getElementById('cboPetNumber').value; petSpecie=document.getElementById('cboPetType').value; areaRange=document.getElementById('cboRange').value; var sData=selectedServiceType+'|'+numberOfPets+'|'+petSpecie+'|'+roomAssignment+'|'+(checkInDate.getTime()-GMTOffset)+'|'+(checkOutDate.getTime()-GMTOffset)+'|'+areaRange+'|'+zipCode+'|||0||1|1|0'; return sData; } function BoadingClicked(){ if(selectedServiceType==1) return;//boarding already selected document.getElementById('tabBoarding').src=imagesBasePath+'boarding_selected.gif'; document.getElementById('tabDaycare').src=imagesBasePath+'daycare.gif'; document.getElementById('lblStartDate').innerHTML='Check-in:'; document.getElementById('lblEndDate').innerHTML='Check-out:'; selectedServiceType=1; } function DaycareClicked(){ if(selectedServiceType==2) return;//boarding already selected document.getElementById('tabBoarding').src=imagesBasePath+'boarding.gif'; document.getElementById('tabDaycare').src=imagesBasePath+'daycare_selected.gif'; document.getElementById('lblStartDate').innerHTML='From:'; document.getElementById('lblEndDate').innerHTML='To:'; selectedServiceType=2; } function getAccomodationName(breedType){ switch(breedType){ case '1' : return 'run'; case '2' : return 'condo'; case '3' : return 'cage'; case '4' : return 'cage'; case '5' : return 'bowl'; case '6' : return 'bowl'; case '7' : return 'bowl'; case '8' : return 'bowl'; case '9' : return 'stable'; case '10' : return 'cage'; default : return 'room'; } } function changeRoomsCount(val){ var oTBL; try{oTBL = document.getElementById('tblRunAssignment');}catch(e){return;} rLen = oTBL.rows.length for(o=1;o< rLen;o++){ oTBL.deleteRow(1); } for(i=0;i< val;i++){ str =' \n' oTR = oTBL.insertRow(oTBL.rows.length); oTD = oTR.insertCell(oTR.cells.length); oTD.innerHTML = getAccomodationName(document.getElementById('cboPetType').value) + ' ' + (i+1); oTD.className='smText' oTD = oTR.insertCell(oTR.cells.length); oTD.innerHTML = str; oTD = oTR.insertCell(oTR.cells.length); oTD.innerHTML = 'guest(s)'; oTD.className='smText' } } function changeNumPets(cbo){ var cboRuns=document.getElementById('cboRuns'); //replace the pet breed with plural or singular name try { var val = document.getElementById('cboPetNumber').value*1; for(idx=0;idx< document.getElementById("cboPetType").options.length;idx++){ cOption = document.getElementById("cboPetType").options[idx]; cOption.innerHTML = (val==1)?cOption.getAttribute("sgName"):cOption.getAttribute("plName"); } }catch(e){} //end name replace if(cboRuns){ cboRuns.options.length=0; if(cbo.selectedIndex==0){ document.getElementById('lblOnePetOneRun').style.display='block'; document.getElementById('tblRunAssignment').style.display='none'; return; } document.getElementById('lblOnePetOneRun').style.display='none'; document.getElementById('tblRunAssignment').style.display=document.all?'block':'table'; for(i=0;i< cbo.selectedIndex+1;i++){ opt=new Option(i+1,i+1); cboRuns.options[i]=opt; } var tbl=document.getElementById('tblRunAssignment'); var tblRows= tbl.rows.length; for(i=1;i< tblRows;i++){ tbl.deleteRow(1) } changeRoomsCount(cboRuns.selectedIndex+1); } } function petTypeChanged(){ var rName = getAccomodationName(document.getElementById('cboPetType').value); oTBL = document.getElementById('tblRunAssignment'); if(!oTBL)return; oTBL.rows[0].cells[0].innerHTML = rName + 's' for(i=1;i< oTBL.rows.length;i++){ oTBL.rows[i].cells[0].innerHTML = rName + ' ' + i; } document.getElementById('lblOnePetOneRun').innerHTML = '1 ' + rName + ' with 1 guest'; } function SearchServices(){ var sData=validateForm(); if(sData){ //TODO: add a cookie on the client computer to store selection window.location=searchResultsPath+'?sData='+sData; } } function enter(e) { var ev=window.Event?e.which:event.keyCode; if (ev == 13) SearchServices(); } function BuildDateFromCombo(monthCombo, dayCombo) { var date = new Date(2000, 1, 1); date.setHours(0); date.setMinutes(0); date.setSeconds(0); date.setMilliseconds(0); date.setYear((new Date()).getFullYear()); date.setMonth(document.getElementById(monthCombo).selectedIndex); var month1 = date.getMonth(); var month2 = new Date().getMonth(); if (month1 < month2) date.setYear(date.getFullYear()+1); date.setDate(document.getElementById(dayCombo).selectedIndex+1); return date; } function PutDatesInCombo() { var date = new Date(); date.setDate(date.getDate()+14); document.getElementById('selMonthStartDate').selectedIndex = date.getMonth(); document.getElementById('selDayStartDate').selectedIndex = date.getDate()-1; date.setDate(date.getDate()+7); document.getElementById('selMonthEndDate').selectedIndex = date.getMonth(); document.getElementById('selDayEndDate').selectedIndex = date.getDate()-1; }