X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;ds=sidebyside;f=actions%2Fpostnotice.php;h=b2f6f1bb95debe9a57e441bbdc07a96c8a37447e;hb=6cd0637e552ed6ce35b4447aa280fb13cf7f65cb;hp=c2e1c44cae0b4a84099663aee85d954befa4edaf;hpb=c5047fd90ac8f6f057780a34065e320883c7a31f;p=quix0rs-gnu-social.git diff --git a/actions/postnotice.php b/actions/postnotice.php index c2e1c44cae..b2f6f1bb95 100644 --- a/actions/postnotice.php +++ b/actions/postnotice.php @@ -54,7 +54,10 @@ class PostnoticeAction extends Action */ function prepare($argarray) { + StatusNet::setApi(true); // Send smaller error pages + parent::prepare($argarray); + try { $this->checkNotice(); } catch (Exception $e) { @@ -71,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; @@ -87,8 +98,8 @@ class PostnoticeAction extends Action $license = $_POST['omb_notice_license']; $site_license = common_config('license', 'url'); if ($license && !common_compatible_license($license, $site_license)) { - throw new Exception(sprintf(_('Notice license ‘%s’ is not ' . - 'compatible with site license ‘%s’.'), + throw new Exception(sprintf(_('Notice license ‘%1$s’ is not ' . + 'compatible with site license ‘%2$s’.'), $license, $site_license)); } }