better error-handling when it's Ajax

This commit is contained in:
Evan Prodromou 2011-04-21 15:25:29 -04:00
parent 963d052653
commit 9a62b7b18f

View File

@ -75,6 +75,10 @@ class NewbookmarkAction extends Action
{ {
parent::prepare($argarray); parent::prepare($argarray);
if ($this->boolean('ajax')) {
StatusNet::setApi(true);
}
$this->user = common_current_user(); $this->user = common_current_user();
if (empty($this->user)) { if (empty($this->user)) {
@ -122,9 +126,6 @@ class NewbookmarkAction extends Action
*/ */
function newBookmark() function newBookmark()
{ {
if ($this->boolean('ajax')) {
StatusNet::setApi(true);
}
try { try {
if (empty($this->title)) { if (empty($this->title)) {
// TRANS: Client exception thrown when trying to create a new bookmark without a title. // TRANS: Client exception thrown when trying to create a new bookmark without a title.
@ -148,10 +149,14 @@ class NewbookmarkAction extends Action
$options); $options);
} catch (ClientException $ce) { } catch (ClientException $ce) {
if ($this->boolean('ajax')) {
throw $ce;
} else {
$this->error = $ce->getMessage(); $this->error = $ce->getMessage();
$this->showPage(); $this->showPage();
return; return;
} }
}
if ($this->boolean('ajax')) { if ($this->boolean('ajax')) {
header('Content-Type: text/xml;charset=utf-8'); header('Content-Type: text/xml;charset=utf-8');