$this->notice is never unset after prepare

This commit is contained in:
Mikael Nordfeldth 2016-01-13 21:34:15 +01:00
parent adba38ce20
commit 1e5770bbcf
1 changed files with 24 additions and 56 deletions

View File

@ -133,43 +133,20 @@ class ApiStatusesShowAction extends ApiPrivateAuthAction
*/ */
function showNotice() function showNotice()
{ {
if (!empty($this->notice)) { switch ($this->format) {
switch ($this->format) { case 'xml':
case 'xml': $this->showSingleXmlStatus($this->notice);
$this->showSingleXmlStatus($this->notice); break;
break; case 'json':
case 'json': $this->show_single_json_status($this->notice);
$this->show_single_json_status($this->notice); break;
break; case 'atom':
case 'atom': $this->showSingleAtomStatus($this->notice);
$this->showSingleAtomStatus($this->notice); break;
break; default:
default: // TRANS: Exception thrown requesting an unsupported notice output format.
// TRANS: Exception thrown requesting an unsupported notice output format. // TRANS: %s is the requested output format.
// TRANS: %s is the requested output format. throw new Exception(sprintf(_("Unsupported format: %s."), $this->format));
throw new Exception(sprintf(_("Unsupported format: %s."), $this->format));
}
} else {
// XXX: Twitter just sets a 404 header and doens't bother
// to return an err msg
$deleted = Deleted_notice::getKV($this->notice_id);
if (!empty($deleted)) {
$this->clientError(
// TRANS: Client error displayed requesting a deleted status.
_('Status deleted.'),
410,
$this->format
);
} else {
$this->clientError(
// TRANS: Client error displayed requesting a status with an invalid ID.
_('No status with that ID found.'),
404,
$this->format
);
}
} }
} }
@ -193,11 +170,7 @@ class ApiStatusesShowAction extends ApiPrivateAuthAction
*/ */
function lastModified() function lastModified()
{ {
if (!empty($this->notice)) { return strtotime($this->notice->created);
return strtotime($this->notice->created);
}
return null;
} }
/** /**
@ -210,20 +183,15 @@ class ApiStatusesShowAction extends ApiPrivateAuthAction
*/ */
function etag() function etag()
{ {
if (!empty($this->notice)) { return '"' . implode(
':',
return '"' . implode( array($this->arg('action'),
':', common_user_cache_hash($this->auth_user),
array($this->arg('action'), common_language(),
common_user_cache_hash($this->auth_user), $this->notice->id,
common_language(), strtotime($this->notice->created))
$this->notice->id, )
strtotime($this->notice->created)) . '"';
)
. '"';
}
return null;
} }
function deleteNotice() function deleteNotice()