summaryrefslogtreecommitdiff
path: root/actions/newnotice.php
diff options
context:
space:
mode:
Diffstat (limited to 'actions/newnotice.php')
-rw-r--r--actions/newnotice.php19
1 files changed, 14 insertions, 5 deletions
diff --git a/actions/newnotice.php b/actions/newnotice.php
index 535b1a512..b2c513733 100644
--- a/actions/newnotice.php
+++ b/actions/newnotice.php
@@ -55,13 +55,22 @@ class NewnoticeAction extends Action {
$id = $notice->insert();
- if ($id) {
- common_broadcast_notices($id);
- common_redirect(common_local_url('shownotice',
- array('notice' => $id)), 303);
- } else {
+ if (!$id) {
+ common_server_error(_t('Problem saving notice.'));
+ return;
+ }
+
+ $orig = clone($notice);
+ $notice->uri = common_mint_tag('notice:' . $id);
+
+ if (!$notice->update($orig)) {
common_server_error(_t('Problem saving notice.'));
+ return;
}
+
+ common_broadcast_notice($notice);
+ common_redirect(common_local_url('shownotice',
+ array('notice' => $id)), 303);
}
function show_form($msg=NULL) {