partkeepr

fork of partkeepr
git clone https://git.e1e0.net/partkeepr.git
Log | Files | Refs | Submodules | README | LICENSE

commit a1568a61e6ae60d7618b48fa3fdefe3e234d8b33
parent 1414cf1037c3a5b9471aea47589dc28afdec4a2f
Author: Felicitus <felicitus@felicitus.org>
Date:   Sat, 17 Sep 2011 20:33:22 +0200

Added jsonp callbacks

Diffstat:
Mfrontend/service.php | 18+++++++++++-------
1 file changed, 11 insertions(+), 7 deletions(-)

diff --git a/frontend/service.php b/frontend/service.php @@ -25,21 +25,25 @@ try { $response["status"] = "ok"; $response["response"] = ServiceManager::call($request); - echo json_encode($response); - } catch (de\RaumZeitLabor\PartKeepr\Util\SerializableException $e) { $response = array(); $response["status"] = "error"; $response["exception"] = $e->serialize(); - echo json_encode($response); } catch (\Exception $e) { $response = array(); $response["status"] = "systemerror"; $response["exception"] = get_class($e); $response["message"] = $e->getMessage(); $response["backtrace"] = $e->getTraceAsString(); - - echo json_encode($response); } -?>- \ No newline at end of file + +if (array_key_exists("type", $_REQUEST) && strtolower($_REQUEST["type"]) == "jsonp") { + if (array_key_exists("callback", $_REQUEST)) { + header('Content-Type: text/javascript'); + echo $_REQUEST["callback"]."(".json_encode($response).")"; + } +} else { + header('Content-Type: application/x-json'); + echo json_encode($response); +}+ \ No newline at end of file