/**
* @brief check if feature is enabled
- *
+ *
* @return boolean
*/
-function feature_enabled($uid,$feature) {
-
- $x = get_config('feature_lock',$feature);
- if($x === false) {
- $x = get_pconfig($uid,'feature',$feature);
- if($x === false) {
- $x = get_config('feature',$feature);
- if($x === false)
+function feature_enabled($uid, $feature) {
+
+ if (($feature == 'richtext') AND !get_app()->theme_richtext_editor) {
+ return false;
+ }
+
+ $x = get_config('feature_lock', $feature);
+
+ if ($x === false) {
+ $x = get_pconfig($uid, 'feature', $feature);
+ if ($x === false) {
+ $x = get_config('feature', $feature);
+ if ($x === false) {
$x = get_feature_default($feature);
+ }
}
}
+
$arr = array('uid' => $uid, 'feature' => $feature, 'enabled' => $x);
call_hooks('feature_enabled',$arr);
return($arr['enabled']);
//array('expire', t('Content Expiration'), t('Remove old posts/comments after a period of time')),
array('multi_profiles', t('Multiple Profiles'), t('Ability to create multiple profiles'), false, get_config('feature_lock','multi_profiles')),
array('photo_location', t('Photo Location'), t('Photo metadata is normally stripped. This extracts the location (if present) prior to stripping metadata and links it to a map.'), false, get_config('feature_lock','photo_location')),
+ array('export_calendar', t('Export Public Calendar'), t('Ability for visitors to download the public calendar'), false, get_config('feature_lock','export_calendar')),
),
// Post composition
t('Post Composition Features'),
array('richtext', t('Richtext Editor'), t('Enable richtext editor'), false, get_config('feature_lock','richtext')),
array('preview', t('Post Preview'), t('Allow previewing posts and comments before publishing them'), false, get_config('feature_lock','preview')),
- array('aclautomention', t('Auto-mention Forums'), t('Add/remove mention when a fourm page is selected/deselected in ACL window.'), false, get_config('feature_lock','aclautomention')),
+ array('aclautomention', t('Auto-mention Forums'), t('Add/remove mention when a forum page is selected/deselected in ACL window.'), false, get_config('feature_lock','aclautomention')),
),
// Network sidebar widgets
}
}
+ // Remove the richtext editor setting if the theme doesn't support it
+ if (!get_app()->theme_richtext_editor) {
+ unset($arr['composition'][1]);
+ }
+
call_hooks('get_features',$arr);
return $arr;
}