summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEvan Prodromou <evan@controlyourself.ca>2009-02-06 15:22:48 -0500
committerEvan Prodromou <evan@controlyourself.ca>2009-02-06 15:22:48 -0500
commit26053c186850a202d560c241ddc4e84106c46874 (patch)
treefec98dd69ce297dbf0328360b9bdb57ded1545fb
parent1f07b187e7968ae3d03c0a23a1566e476b8a1f71 (diff)
Make adding and removing an incoming email in SMS settings
Fixes Bug#1036.
-rw-r--r--actions/smssettings.php51
1 files changed, 51 insertions, 0 deletions
diff --git a/actions/smssettings.php b/actions/smssettings.php
index f89cbe1ab..a5f75d266 100644
--- a/actions/smssettings.php
+++ b/actions/smssettings.php
@@ -490,4 +490,55 @@ class SmssettingsAction extends ConnectSettingsAction
common_redirect(common_local_url('confirmaddress',
array('code' => $code)));
}
+
+ /**
+ * Handle a request to remove an incoming email address
+ *
+ * @return void
+ */
+
+ function removeIncoming()
+ {
+ $user = common_current_user();
+
+ if (!$user->incomingemail) {
+ $this->showForm(_('No incoming email address.'));
+ return;
+ }
+
+ $orig = clone($user);
+
+ $user->incomingemail = null;
+
+ if (!$user->updateKeys($orig)) {
+ common_log_db_error($user, 'UPDATE', __FILE__);
+ $this->serverError(_("Couldn't update user record."));
+ }
+
+ $this->showForm(_('Incoming email address removed.'), true);
+ }
+
+ /**
+ * Generate a new incoming email address
+ *
+ * @return void
+ *
+ * @see Emailsettings::newIncoming
+ */
+
+ function newIncoming()
+ {
+ $user = common_current_user();
+
+ $orig = clone($user);
+
+ $user->incomingemail = mail_new_incoming_address();
+
+ if (!$user->updateKeys($orig)) {
+ common_log_db_error($user, 'UPDATE', __FILE__);
+ $this->serverError(_("Couldn't update user record."));
+ }
+
+ $this->showForm(_('New incoming email address added.'), true);
+ }
}