summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--actions/newnotice.php19
-rw-r--r--actions/register.php3
-rw-r--r--lib/util.php2
3 files changed, 17 insertions, 7 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) {
diff --git a/actions/register.php b/actions/register.php
index c67235f9d..fc729a29b 100644
--- a/actions/register.php
+++ b/actions/register.php
@@ -103,7 +103,8 @@ class RegisterAction extends Action {
$user->password = common_munge_password($password, $id);
$user->email = $email;
$user->created = DB_DataObject_Cast::dateTime(); # current time
-
+ $user->uri = common_mint_tag('user:'.$id);
+
$result = $user->insert();
if (!$result) {
# Try to clean up...
diff --git a/lib/util.php b/lib/util.php
index 9057382db..64fa230d2 100644
--- a/lib/util.php
+++ b/lib/util.php
@@ -411,7 +411,7 @@ function common_redirect($url, $code=307) {
common_element('a', array('href' => $url), $url);
}
-function common_broadcast_notices($id) {
+function common_broadcast_notice($notice) {
// XXX: broadcast notices to remote subscribers
// XXX: broadcast notices to SMS
// XXX: broadcast notices to Jabber