getFieldNames(); foreach ($fields as $field) { add_filter('api-search-'.$field.'-default', array(&$this, 'getDefaultFor_'.$field)); } } function __call($method, $args) { $field = str_replace('getDefaultFor_', '', $method); if (isset($this->defaults[$field])) { return $this->defaults[$field]; } return ''; } function createScript($script) { return $script; } function createMarkup($markup) { return $markup; } function getFieldNames($fields = array()) { return $fields; } function getDefaultFor($field) { if (isset($this->defaults[$field])) { return $this->defaults[$field]; } return null; } function getValue($field) { $getDefault = 'getDefaultFor_'.$field; return (isset($_REQUEST[$field]) ? $_REQUEST[$field] : $this->$getDefault()); } function buildSelectBlock($options, $name, $label, $blank = true) { $optionsBlock = $blank ? '' : ''; $received = $this->getValue($name); foreach ($options as $option => $value) { $selected = ($received == $option) ? ' selected="selected" ' : ''; $optionsBlock .= ""; } return "
"; } function buildRadioBlock($options, $name, $label, $blank = true) { $optionsBlock = $blank ? "" : ''; $received = $this->getValue($name); foreach ($options as $option => $value) { $selected = ($received == $option) ? ' checked="checked" ' : ''; $optionsBlock .= ""; } return "
{$optionsBlock}
"; } } ?> 51.50803, 'long' => -0.1248, 'distance' => 55, 'address' => 'London, UK' ); function createScript($script) { $address = $this->getValue('address'); $lat = $this->getValue('lat'); $long = $this->getValue('long'); $distance = $this->getValue('distance'); $distance = min($distance, 55); // api key activated by adwords-admin@metropolis.co.uk return $script." if (Modernizr.geolocation === true) { $('#share-location').button(); $('#share-location').click(function() { $('#share-location').button('disable'); $('#address').val('Searching...'); $('#address').attr('disabled', 'disabled'); navigator.geolocation.getCurrentPosition(function(position) { latlng = new google.maps.LatLng(position.coords.latitude, position.coords.longitude); $.ajax({ url: 'http://maps.googleapis.com/maps/api/geocode/json?latlng=' + position.coords.latitude + ',' + position.coords.longitude + '&sensor=false', //&key=AIzaSyC6TjUt41V4p7XfA0ecedg9_EH0s6Miz0g', success: function(res) { $('#latitude').val(position.coords.latitude); $('#longitude').val(position.coords.longitude); $('#address').val(res.results[0].formatted_address); $('#share-location').button('enable'); $('#address').removeAttr('disabled'); }, error: function() { $('#share-location').button('enable'); $('#address').removeAttr('disabled'); } }); }, function(e) { $('#share-location').button('enable'); }, { enableHighAccuracy:true }); return false; }); } else { $('#share-location').detach(); } $('#address').keypress(function() { $('#search_form').addClass('field-modified'); }); $('#address').autocomplete({ source: function(request, response) { geocoder.geocode( {'address': request.term, componentRestrictions: {country: 'uk'}}, function(results, status) { response($.map(results, function(item) { return { label: item.formatted_address, value: item.formatted_address, geocode: item }; })); }); }, select: function(e, u) { $('#latitude').val(u.item.geocode.geometry.location.lat()); $('#longitude').val(u.item.geocode.geometry.location.lng()); } }); $('#address').blur(function() { if ($('#search_form').hasClass('field-modified')) { geocoder.geocode({'address': $('#address').val(), componentRestrictions: {country: 'uk'}}, function(results, status) { if (results.length > 0) { $('#latitude').val(results[0].geometry.location.lat()); $('#longitude').val(results[0].geometry.location.lng()); $('#address').val(results[0].formatted_address); } else { $('#address').val(''); } }); } }); $('#radius-slider').slider({ min: 5, max: 55, step: 10, value: {$distance}, range: 'min', slide: function(e, u) { $('#radius').text(u.value); $('#distance').val(u.value); } }); "; } function createMarkup($markup) { $address = $this->getValue('address'); $lat = $this->getValue('lat'); $long = $this->getValue('long'); $distance = $this->getValue('distance'); $distance = min($distance, 55); return $markup."
Get My Location
{$distance} miles
"; } function getFieldNames($fields = array()) { $fields[] = 'lat'; $fields[] = 'long'; $fields[] = 'distance'; return $fields; } } new ApiSearch_Location(); ?> 0, 'ageMax_boys' => 21 ); function createScript($script) { $min = $this->getValue('ageMin_boys'); $max = $this->getValue('ageMax_boys'); $min = min($min, 21); $max = min($max, 21); return $script." $('#age-slider').slider({ min: 0, max: 21, range: true, values: [{$min}, {$max}], slide: function(e, u) { $('#min-boys-age').val(u.values[0]); $('#min-girls-age').val(u.values[0]); $('#max-boys-age').val(u.values[1]); $('#max-girls-age').val(u.values[1]); $('#max-age-show').text(u.values[1]); $('#min-age-show').text(u.values[0]); } }); "; } function createMarkup($markup) { $min = $this->getValue('ageMin_boys'); $max = $this->getValue('ageMax_boys'); $min = min($min, 21); $max = min($max, 21); return $markup."
from {$min} to {$max} years
"; } function getFieldNames($fields = array()) { $fields[] = 'ageMin_boys'; $fields[] = 'ageMax_boys'; $fields[] = 'ageMin_girls'; $fields[] = 'ageMax_girls'; return $fields; } } new ApiSearch_Age(); ?> 2000, 'feeMax' => 13000 ); function createScript($script) { $min = $this->getValue('feeMin'); $max = $this->getValue('feeMax'); return $script." $('#fee-slider').slider({ min: 2000, max: 13000, range: true, step: 500, values: [{$min}, {$max}], slide: function(e, u) { $('#min-fee').val(u.values[0]); $('#max-fee').val(u.values[1]); $('#min-fee-show').text(u.values[0]); $('#max-fee-show').text(u.values[1]); } }); "; } function createMarkup($markup) { $min = $this->getValue('feeMin'); $max = $this->getValue('feeMax'); return $markup."
£{$min} - £{$max} (per term)
"; } function getFieldNames($fields = array()) { $fields[] = 'feeMin'; $fields[] = 'feeMax'; return $fields; } } new ApiSearch_Fee(); ?> 'Pre-Prep', // 'Prep' => 'Prep', // 'Senior' => 'Senior', // 'Sixth' => 'Sixth', // 'Summer' => 'Summer' // ); $options = array( '' => 'All', 'boys' => 'Boys', 'girls' => 'Girls', 'co-educational' => 'Co-Ed', //'boys (some girls)' => 'Boys (some girls)', //'girls (some boys)' => 'Girls (some boys)' ); return $markup.$this->buildSelectBlock($options, 'school_type', 'School Type', false); } function getFieldNames($fields = array()) { $fields[] = 'school_type'; return $fields; } } new ApiSearch_School_Type(); ?> WordPress › Error
This site is no longer available.