X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=actions%2Fapifavoritedestroy.php;h=02f81cf4dfe25f9ea0b315d5bd2a929afc9ae44a;hb=c075b9f73068066897f2d42cdbcf1be1bf812380;hp=9f2efdd0033b0afbefdcfb71db3d8bd268d84614;hpb=b1a68e15b760aa2e588680c9e8c7526a7a6d1d13;p=quix0rs-gnu-social.git diff --git a/actions/apifavoritedestroy.php b/actions/apifavoritedestroy.php index 9f2efdd003..02f81cf4df 100644 --- a/actions/apifavoritedestroy.php +++ b/actions/apifavoritedestroy.php @@ -34,8 +34,6 @@ if (!defined('STATUSNET')) { exit(1); } -require_once INSTALLDIR . '/lib/apiauth.php'; - /** * Un-favorites the status specified in the ID parameter as the authenticating user. * Returns the un-favorited status in the requested format when successful. @@ -48,10 +46,8 @@ require_once INSTALLDIR . '/lib/apiauth.php'; * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 * @link http://status.net/ */ - class ApiFavoriteDestroyAction extends ApiAuthAction { - var $notice = null; /** @@ -60,15 +56,19 @@ class ApiFavoriteDestroyAction extends ApiAuthAction * @param array $args $_REQUEST args * * @return boolean success flag - * */ - function prepare($args) { parent::prepare($args); $this->user = $this->auth_user; - $this->notice = Notice::staticGet($this->arg('id')); + $this->notice = Notice::getKV($this->arg('id')); + if ($this->notice->repeat_of != '' ) { + common_log(LOG_DEBUG, 'Trying to unFave '.$this->notice->id); + common_log(LOG_DEBUG, 'Will unFave '.$this->notice->repeat_of.' instead'); + $real_notice_id = $this->notice->repeat_of; + $this->notice = Notice::getKV($real_notice_id); + } return true; } @@ -82,13 +82,13 @@ class ApiFavoriteDestroyAction extends ApiAuthAction * * @return void */ - function handle($args) { parent::handle($args); if ($_SERVER['REQUEST_METHOD'] != 'POST') { $this->clientError( + // TRANS: Client error. POST is a HTTP command. It should not be translated. _('This method requires a POST.'), 400, $this->format @@ -98,6 +98,7 @@ class ApiFavoriteDestroyAction extends ApiAuthAction if (!in_array($this->format, array('xml', 'json'))) { $this->clientError( + // TRANS: Client error displayed when coming across a non-supported API method. _('API method not found.'), 404, $this->format @@ -107,6 +108,7 @@ class ApiFavoriteDestroyAction extends ApiAuthAction if (empty($this->notice)) { $this->clientError( + // TRANS: Client error displayed when trying to remove a favourite with an invalid ID. _('No status found with that ID.'), 404, $this->format @@ -120,6 +122,7 @@ class ApiFavoriteDestroyAction extends ApiAuthAction if (!$fave->find(true)) { $this->clientError( + // TRANS: Client error displayed when trying to remove a favourite that was not a favourite. _('That status is not a favorite.'), 403, $this->favorite @@ -132,6 +135,7 @@ class ApiFavoriteDestroyAction extends ApiAuthAction if (!$result) { common_log_db_error($fave, 'DELETE', __FILE__); $this->clientError( + // TRANS: Client error displayed when removing a favourite has failed. _('Could not delete favorite.'), 404, $this->format @@ -147,5 +151,4 @@ class ApiFavoriteDestroyAction extends ApiAuthAction $this->show_single_json_status($this->notice); } } - }