diff options
author | Evan Prodromou <evan@status.net> | 2010-03-01 15:31:20 -0500 |
---|---|---|
committer | Evan Prodromou <evan@status.net> | 2010-03-01 15:31:20 -0500 |
commit | 9b4ee9070467eb5df02b350e2e3d01a2c2497836 (patch) | |
tree | 15a27ee8afef4715db659db1e0508f74d73d739f | |
parent | 90689008ee8649d9592ad97579d7de44d1ce389d (diff) |
return correct HTTP status code for OMB errors
-rw-r--r-- | actions/postnotice.php | 8 | ||||
-rw-r--r-- | actions/updateprofile.php | 8 |
2 files changed, 16 insertions, 0 deletions
diff --git a/actions/postnotice.php b/actions/postnotice.php index f092d54d1..ad3f00e34 100644 --- a/actions/postnotice.php +++ b/actions/postnotice.php @@ -74,6 +74,14 @@ class PostnoticeAction extends Action $srv = new OMB_Service_Provider(null, omb_oauth_datastore(), omb_oauth_server()); $srv->handlePostNotice(); + } catch (OMB_RemoteServiceException $rse) { + $msg = $rse->getMessage(); + if (preg_match('/^Revoked accesstoken/', $msg) || + preg_match('/^No subscriber/', $msg)) { + $this->clientError($msg, 403); + } else { + $this->clientError($msg); + } } catch (Exception $e) { $this->serverError($e->getMessage()); return; diff --git a/actions/updateprofile.php b/actions/updateprofile.php index dfc31f542..44fafdd92 100644 --- a/actions/updateprofile.php +++ b/actions/updateprofile.php @@ -77,6 +77,14 @@ class UpdateprofileAction extends Action $srv = new OMB_Service_Provider(null, omb_oauth_datastore(), omb_oauth_server()); $srv->handleUpdateProfile(); + } catch (OMB_RemoteServiceException $rse) { + $msg = $rse->getMessage(); + if (preg_match('/^Revoked accesstoken/', $msg) || + preg_match('/^No subscriber/', $msg)) { + $this->clientError($msg, 403); + } else { + $this->clientError($msg); + } } catch (Exception $e) { $this->serverError($e->getMessage()); return; |