We are no longer offering accounts on this server. Consider https://gitlab.freedesktop.org/ as a place to host projects.

Commit 3ffe57c7 authored by Evan Prodromou's avatar Evan Prodromou

add autosubscribe to profile settings

darcs-hash:20080720202705-84dde-da40ebc8bcb9bd438e891c5a103211ebd67fd2c7.gz
parent d294c91d
......@@ -52,6 +52,8 @@ class ProfilesettingsAction extends SettingsAction {
common_input('location', _('Location'),
($this->arg('location')) ? $this->arg('location') : $profile->location,
_('Where you are, like "City, State (or Region), Country"'));
common_checkbox('autosubscribe', _('Automatically subscribe to whoever subscribes to me (best for non-humans)'),
($this->arg('autosubscribe') : $this->boolean('autosubscribe') : $user->autosubscribe);
common_submit('submit', _('Save'));
common_element_end('form');
common_show_footer();
......@@ -64,7 +66,8 @@ class ProfilesettingsAction extends SettingsAction {
$homepage = $this->trimmed('homepage');
$bio = $this->trimmed('bio');
$location = $this->trimmed('location');
$autosubscribe = $this->boolean('autosubscribe');
# Some validation
if (!Validate::string($nickname, array('min_length' => 1,
......@@ -115,6 +118,22 @@ class ProfilesettingsAction extends SettingsAction {
}
}
# XOR
if ($user->autosubscribe ^ $autosubscribe) {
$original = clone($user);
$user->nickname = $nickname;
$result = $user->update($original);
if ($result === FALSE) {
common_log_db_error($user, 'UPDATE', __FILE__);
common_server_error(_('Couldn\'t update user.'));
return;
}
}
$profile = $user->getProfile();
$orig_profile = clone($profile);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment