diff options
author | Zach Copley <zach@status.net> | 2010-07-29 20:31:22 +0000 |
---|---|---|
committer | Zach Copley <zach@status.net> | 2010-07-29 20:31:22 +0000 |
commit | 0faa988e91056564b2ae19f045a81b322cce4e0c (patch) | |
tree | 79187009708588586bc3d3c087507408b89fd822 | |
parent | 4e8e77f6b091e024f58241c2807c61e0b7930e5c (diff) |
Fix for issue ID 2290: make sure errors are returned in the right
format, and use callback for errors when the request is JSONP
-rw-r--r-- | actions/apiaccountupdateprofilecolors.php | 6 | ||||
-rw-r--r-- | actions/apimediaupload.php | 6 | ||||
-rw-r--r-- | actions/apistatusesupdate.php | 17 | ||||
-rw-r--r-- | actions/apitimelinegroup.php | 6 | ||||
-rw-r--r-- | lib/apiaction.php | 2 |
5 files changed, 22 insertions, 15 deletions
diff --git a/actions/apiaccountupdateprofilecolors.php b/actions/apiaccountupdateprofilecolors.php index 3cac82974..c666f9d75 100644 --- a/actions/apiaccountupdateprofilecolors.php +++ b/actions/apiaccountupdateprofilecolors.php @@ -22,7 +22,7 @@ * @category API * @package StatusNet * @author Zach Copley <zach@status.net> - * @copyright 2009 StatusNet, Inc. + * @copyright 2009-2010 StatusNet, Inc. * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 * @link http://status.net/ */ @@ -131,7 +131,7 @@ class ApiAccountUpdateProfileColorsAction extends ApiAuthAction try { $this->setColors($design); } catch (WebColorException $e) { - $this->clientError($e->getMessage()); + $this->clientError($e->getMessage(), 400, $this->format); return false; } @@ -153,7 +153,7 @@ class ApiAccountUpdateProfileColorsAction extends ApiAuthAction try { $this->setColors($design); } catch (WebColorException $e) { - $this->clientError($e->getMessage()); + $this->clientError($e->getMessage(), 400, $this->format); return false; } diff --git a/actions/apimediaupload.php b/actions/apimediaupload.php index ec316edc8..7aa88c186 100644 --- a/actions/apimediaupload.php +++ b/actions/apimediaupload.php @@ -88,15 +88,15 @@ class ApiMediaUploadAction extends ApiAuthAction try { $upload = MediaFile::fromUpload('media', $this->auth_user); - } catch (ClientException $ce) { - $this->clientError($ce->getMessage()); + } catch (Exception $e) { + $this->clientError($e->getMessage(), $e->getCode()); return; } if (isset($upload)) { $this->showResponse($upload); } else { - $this->clientError('Upload failed.'); + $this->clientError(_('Upload failed.')); return; } } diff --git a/actions/apistatusesupdate.php b/actions/apistatusesupdate.php index 9be16b2c5..fa3f611c0 100644 --- a/actions/apistatusesupdate.php +++ b/actions/apistatusesupdate.php @@ -196,7 +196,8 @@ class ApiStatusesUpdateAction extends ApiAuthAction if ($_SERVER['REQUEST_METHOD'] != 'POST') { $this->clientError( _('This method requires a POST.'), - 400, $this->format + 400, + $this->format ); return; } @@ -217,7 +218,7 @@ class ApiStatusesUpdateAction extends ApiAuthAction if (empty($this->status)) { $this->clientError( - 'Client must provide a \'status\' parameter with a value.', + _('Client must provide a \'status\' parameter with a value.'), 400, $this->format ); @@ -291,8 +292,8 @@ class ApiStatusesUpdateAction extends ApiAuthAction try { $upload = MediaFile::fromUpload('media', $this->auth_user); - } catch (ClientException $ce) { - $this->clientError($ce->getMessage()); + } catch (Exception $e) { + $this->clientError($e->getMessage(), $e->getCode(), $this->format); return; } @@ -305,7 +306,11 @@ class ApiStatusesUpdateAction extends ApiAuthAction 'Max notice size is %d chars, ' . 'including attachment URL.' ); - $this->clientError(sprintf($msg, Notice::maxContent())); + $this->clientError( + sprintf($msg, Notice::maxContent()), + 400, + $this->format + ); } } @@ -332,7 +337,7 @@ class ApiStatusesUpdateAction extends ApiAuthAction $options ); } catch (Exception $e) { - $this->clientError($e->getMessage(), $e->getCode()); + $this->clientError($e->getMessage(), $e->getCode(), $this->format); return; } diff --git a/actions/apitimelinegroup.php b/actions/apitimelinegroup.php index c4a6a18d2..7a40fd808 100644 --- a/actions/apitimelinegroup.php +++ b/actions/apitimelinegroup.php @@ -25,7 +25,7 @@ * @author Evan Prodromou <evan@status.net> * @author Jeffery To <jeffery.to@gmail.com> * @author Zach Copley <zach@status.net> - * @copyright 2009 StatusNet, Inc. + * @copyright 2009-2010 StatusNet, Inc. * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 * @link http://status.net/ @@ -138,7 +138,9 @@ class ApiTimelineGroupAction extends ApiPrivateAuthAction $this->raw($atom->getString()); } catch (Atom10FeedException $e) { $this->serverError( - 'Could not generate feed for group - ' . $e->getMessage() + 'Could not generate feed for group - ' . $e->getMessage(), + 400, + $this->format ); return; } diff --git a/lib/apiaction.php b/lib/apiaction.php index 7868ecab1..479a86ad8 100644 --- a/lib/apiaction.php +++ b/lib/apiaction.php @@ -27,7 +27,7 @@ * @author Jeffery To <jeffery.to@gmail.com> * @author Toby Inkster <mail@tobyinkster.co.uk> * @author Zach Copley <zach@status.net> - * @copyright 2009 StatusNet, Inc. + * @copyright 2009-2010 StatusNet, Inc. * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 * @link http://status.net/ |