UI on profile settings page to opt out of following everyone
This commit is contained in:
parent
7a80ebeb13
commit
5d56d9bb69
@ -150,6 +150,47 @@ class FollowEveryonePlugin extends Plugin
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Show a checkbox on the profile form to ask whether to follow everyone
|
||||||
|
*
|
||||||
|
* @param Action $action The action being executed
|
||||||
|
*
|
||||||
|
* @return boolean hook value
|
||||||
|
*/
|
||||||
|
|
||||||
|
function onEndProfileFormData($action)
|
||||||
|
{
|
||||||
|
$user = common_current_user();
|
||||||
|
|
||||||
|
$action->elementStart('li');
|
||||||
|
// TRANS: Checkbox label in form for profile settings.
|
||||||
|
$action->checkbox('followeveryone', _('Follow everyone'),
|
||||||
|
($action->arg('followeveryone')) ?
|
||||||
|
$action->arg('followeveryone') :
|
||||||
|
User_followeveryone_prefs::followEveryone($user->id));
|
||||||
|
$action->elementEnd('li');
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Save checkbox value for following everyone
|
||||||
|
*
|
||||||
|
* @param Action $action The action being executed
|
||||||
|
*
|
||||||
|
* @return boolean hook value
|
||||||
|
*/
|
||||||
|
|
||||||
|
function onEndProfileSaveForm($action)
|
||||||
|
{
|
||||||
|
$user = common_current_user();
|
||||||
|
|
||||||
|
User_followeveryone_prefs::savePref($user->id,
|
||||||
|
$action->boolean('followeveryone'));
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Provide version information about this plugin.
|
* Provide version information about this plugin.
|
||||||
*
|
*
|
||||||
|
@ -145,4 +145,22 @@ class User_followeveryone_prefs extends Memcached_DataObject
|
|||||||
return (bool)$ufep->followeveryone;
|
return (bool)$ufep->followeveryone;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static function savePref($user_id, $followEveryone)
|
||||||
|
{
|
||||||
|
$ufep = self::staticGet('user_id', $user_id);
|
||||||
|
|
||||||
|
if (empty($ufep)) {
|
||||||
|
$ufep = new User_followeveryone_prefs();
|
||||||
|
$ufep->user_id = $user_id;
|
||||||
|
$ufep->followeveryone = $followEveryone;
|
||||||
|
$ufep->insert();
|
||||||
|
} else {
|
||||||
|
$orig = clone($ufep);
|
||||||
|
$ufep->followeveryone = $followEveryone;
|
||||||
|
$ufep->update();
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user