function geolocation_proximity_views_handler_filter_distance::latlng_validate in Geolocation Proximity 7.2
Validate the latitude and longitude values
2 calls to geolocation_proximity_views_handler_filter_distance::latlng_validate()
- geolocation_proximity_views_handler_filter_distance::exposed_validate in handlers/
geolocation_proximity_views_handler_filter_distance.inc - Validate the exposed handler form.
- geolocation_proximity_views_handler_filter_distance::value_validate in handlers/
geolocation_proximity_views_handler_filter_distance.inc - Validate the options form.
File
- handlers/
geolocation_proximity_views_handler_filter_distance.inc, line 229 - Definition of geolocation_proximity_views_handler_filter_distance.
Class
- geolocation_proximity_views_handler_filter_distance
- General proximity filter for location latitude/longitude.
Code
function latlng_validate(&$elements, &$values) {
if (!empty($values['googlemap'])) {
$values['latitude'] = $values['googlemap']['lat'];
$values['longitude'] = $values['googlemap']['lng'];
}
if ($values['latitude'] !== "") {
switch (TRUE) {
case !is_numeric($values['latitude']):
form_error($elements['latitude'], t('Invalid Latitude. Value must be numeric.'));
break;
case $values['latitude'] > 90:
case $values['latitude'] < -90:
form_error($elements['latitude'], t('Invalid Latitude. Value must be between 90 and -90.'));
break;
}
}
if ($values['longitude'] !== "") {
switch (TRUE) {
case !is_numeric($values['longitude']):
form_error($elements['longitude'], t('Invalid Longitude. Value must be numeric.'));
break;
case $values['longitude'] > 180:
case $values['longitude'] < -180:
form_error($elements['longitude'], t('Invalid Longitude. Value must be between 180 and -180.'));
break;
}
}
if (!is_numeric($values['search_distance']) || $values['search_distance'] < 0) {
form_error($elements['search_distance'], t('Invalid Distance. Value must be a positive number.'));
}
}