diff options
author | Brion Vibber <brion@pobox.com> | 2010-10-18 15:21:02 -0700 |
---|---|---|
committer | Brion Vibber <brion@pobox.com> | 2010-10-18 15:21:02 -0700 |
commit | 53d45d7ffbe6bcdf336a0e666942557c11cf909b (patch) | |
tree | 7c26b636624162fd1036529ecc08ae63caef59f6 /lib/apiaction.php | |
parent | 9a35e48ee2a15ded31dd1dba8e0af9071e8a28ac (diff) | |
parent | 39cfdf0d8b333fec0c35e02d3ce9abb4f4338bf5 (diff) |
Merge branch '0.9.x'
Diffstat (limited to 'lib/apiaction.php')
-rw-r--r-- | lib/apiaction.php | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/lib/apiaction.php b/lib/apiaction.php index 0ebf88282..afba8ab63 100644 --- a/lib/apiaction.php +++ b/lib/apiaction.php @@ -1244,23 +1244,29 @@ class ApiAction extends Action // Do not emit error header for JSONP if (!isset($this->callback)) { - header('HTTP/1.1 '.$code.' '.$status_string); + header('HTTP/1.1 ' . $code . ' ' . $status_string); } - if ($format == 'xml') { + switch($format) { + case 'xml': $this->initDocument('xml'); $this->elementStart('hash'); $this->element('error', null, $msg); $this->element('request', null, $_SERVER['REQUEST_URI']); $this->elementEnd('hash'); $this->endDocument('xml'); - } elseif ($format == 'json'){ + break; + case 'json': $this->initDocument('json'); $error_array = array('error' => $msg, 'request' => $_SERVER['REQUEST_URI']); print(json_encode($error_array)); $this->endDocument('json'); - } else { - + break; + case 'text': + header('Content-Type: text/plain; charset=utf-8'); + print $msg; + break; + default: // If user didn't request a useful format, throw a regular client error throw new ClientException($msg, $code); } |