public static function geocode($address, $fullResults=false, $timeout=5, $apiKey=null, $url=null)
	{
		//prepare the url by replacing the placeholders
		$preparedUrl = static::getForwardUrl($address, $apiKey, $url);

		//perform api call
		$response = static::callApi($preparedUrl, $timeout);
		if ($response === false) return false;

		//parse result and act according to status
		$data = Json::decode($response);
		if (strcasecmp($data['status'], 'ok') === 0 && count($data['results']) > 0) {
			if ($fullResults) {
				return $data['results'];
			} else {
				return [
					'latitude'=>$data['results'][0]['geometry']['location']['lat'],
					'longitude'=>$data['results'][0]['geometry']['location']['lng'],
				];
			}
		} else {
			return false;
		}
	}