dbClass = new dbClass(); } function getLatitudeLongitude($zip) { //Returns latitude and longitude of a given zipcode $query = "SELECT latitude, longitude FROM ctrak_zipcodes WHERE zipcode = ".$zip; $results = $this->dbClass->query($query); return $results; } function getZipArray($zip, $distance = 10) { //Given a zipcode and a distance, returns an comma separated list of zipcodes within this distance //If distance = 0 change to a very small distance if ($distance==0) $distance = 0.001; //Get zipcode location $location = $this->getLatitudeLongitude($zip); if(isset($location[0])) { $latitude = $location[0]['latitude']; $longitude = $location[0]['longitude']; //Get rectangle area $this->RadiusAssistant($latitude, $longitude, $distance); //Select all zipcodes within rectangle $query = "SELECT zipcode FROM ctrak_zipcodes WHERE latitude <= ".$this->maxLat." AND latitude >= ".$this->minLat; $query.= " AND longitude <= ".$this->maxLong." AND longitude >= ".$this->minLong; $results = $this->dbClass->query($query); $list = array(); foreach ($results as $key=>$value) { $list[] = $value['zipcode']; } $result = implode(",",$list); } else { $result =""; } return $result; } function Calculate( $dblLat1, $dblLong1, $dblLat2, $dblLong2 ) { $EARTH_RADIUS_MILES = 3963; $dist = 0; //convert degrees to radians $dblLat1 = $dblLat1 * M_PI / 180; $dblLong1 = $dblLong1 * M_PI / 180; $dblLat2 = $dblLat2 * M_PI / 180; $dblLong2 = $dblLong2 * M_PI / 180; if ($dblLat1 != $dblLat2 || $dblLong1 != $dblLong2) { //the two points are not the same $dist = sin($dblLat1) * sin($dblLat2) + cos($dblLat1) * cos($dblLat2) * cos($dblLong2 - $dblLong1); $dist = $EARTH_RADIUS_MILES * (-1 * atan($dist / sqrt(1 - $dist * $dist)) + M_PI / 2); } return $dist; } function RadiusAssistant($Latitude, $Longitude, $Miles) { $EQUATOR_LAT_MILE = 69.172; $this->maxLat = $Latitude + $Miles / $EQUATOR_LAT_MILE; $this->minLat = $Latitude - ($this->maxLat - $Latitude); $this->maxLong = $Longitude + $Miles / (cos($this->minLat * M_PI / 180) * $EQUATOR_LAT_MILE); $this->minLong = $Longitude - ($this->maxLong - $Longitude); } } ?> EVERYHOMEPRO.com
EVERYHOMEPRO.com site sponsor
 
FAQ

Question: What makes your website different from all the rest?
Answer: EVERYHOMEPRO.com is a new and revolutionary way of choosing home improvement & repair professionals. We are reaching out to every homeowner across America to help us create the largest, most powerful home improvement referral resource available.

Question: By whom are professionals in EVERYHOMEPRO.com rated?
Answer: Professionals are rated both by former customers and industry peers.

Question: Does EVERYHOMEPRO.com list every Home Improvement & Repair professional?
Answer: We strive to. If you don't see your pro listed, please select Add A Pro and add them.
If they’ve done work for you in the past, evaluate them in our Rate A Pro section.

Question: What value-added benefits does EVERYHOMEPRO.com offer its users?
Answer:

  • Evaluate home improvement & repair professionals in our Rate A Pro
  • Purchase furnishings, electronics and more - visit MyStore
  • Buying or selling a home? Visit our Get A Loan and Find A Realtor sections
  • Paying too much for insurance? Visit Buy Insurance to find low rates
  • And much more.....
Question: The answer to my question is not listed here. What should I do?
Answer: Please contact us with your question and we’ll be more than happy to respond.