function _signature_forum_get_default in Signatures for Forums 7
Get the default per-post display setting.
Parameters
$user: Use the defaults of this user. Give a uid for lazy loading.
$bundle = NULL: If given, use this bundle.
$object = NULL: If given, get the setting of that existing node or comment.
Return value
TRUE means signatures should be used.
3 calls to _signature_forum_get_default()
- signature_forum_form_alter in ./
signature_forum.module - Implementation of hook_form_alter().
- signature_forum_form_user_profile_form_alter in ./
signature_forum.module - Alter the user form.
- _signature_forum_object_load in ./
signature_forum.module - Load nodes or comments.
File
- ./
signature_forum.module, line 812 - Tweaks signatures in ways inspired by other traditional forum software:
Code
function _signature_forum_get_default($user, $bundle = NULL, $object = NULL) {
$mode = variable_get('signature_forum_defaults_mode', SIGNATURE_FORUM_PER_POST_DISABLED);
// Fast return, if the property is set.
if ($mode != SIGNATURE_FORUM_PER_POST_DISABLED && $object && isset($object->signature_forum_status)) {
return $object->signature_forum_status;
}
// Get global or user settings.
switch ($mode) {
case SIGNATURE_FORUM_PER_POST_DISABLED:
return TRUE;
case SIGNATURE_FORUM_PER_POST_USER:
if (!$user) {
return TRUE;
}
if (is_int($user)) {
$user = user_load($user);
}
if (!isset($user->data) || !isset($user->data['signature_forum_default'])) {
return TRUE;
}
return !!$user->data['signature_forum_default'];
case SIGNATURE_FORUM_PER_POST_GLOBAL:
$settings = variable_get('signature_forum_defaults_global', array());
return !empty($settings[$bundle]);
}
}