diff --git a/modules/discojuice/www/country.php b/modules/discojuice/www/country.php index 1e09dc61ab386c93e01135af47e672dce5d98ebd..0aac0046a3e7021148d7a9cb8cc665fbd2542b72 100644 --- a/modules/discojuice/www/country.php +++ b/modules/discojuice/www/country.php @@ -1,6 +1,5 @@ <?php -header('Content-type: application/json; utf-8'); try { @@ -29,8 +28,16 @@ try { $result['geo'] = array('lat' => (float) $matches[1], 'lon' => (float)$matches[2]); } - echo json_encode($result); exit; - throw new Exception('Could not lookup, invalid format: ' . $region); + + + if(preg_match('/^[0-9A-Za-z_\-]+$/', $_REQUEST['callback'], $matches)) { + header('Content-type: application/javascript; utf-8'); + echo $_REQUEST['callback'] . '(' . json_encode($result) . ');'; + } else { + header('Content-type: application/json; utf-8'); + echo json_encode($result); + } + } catch(Exception $e) {