mirror of
https://git.friendi.ca/friendica/friendica-addons.git
synced 2025-07-09 01:48:48 +00:00
New addon: Default Features - allow admin to turn some Additional Features on by default for new users.
This commit is contained in:
parent
94f1e23071
commit
98e4c7e26d
4 changed files with 87 additions and 0 deletions
57
defaultfeatures/defaultfeatures.php
Executable file
57
defaultfeatures/defaultfeatures.php
Executable file
|
@ -0,0 +1,57 @@
|
|||
<?php
|
||||
/**
|
||||
* Name: Default Features
|
||||
* Description: Choose which Additional Features are on by default for new users on the site.
|
||||
* Version: 1.0
|
||||
* Author: Michael Johnston
|
||||
*/
|
||||
|
||||
function defaultfeatures_install() {
|
||||
register_hook('register_account', 'addon/defaultfeatures/defaultfeatures.php', 'defaultfeatures_register');
|
||||
logger("installed defaultfeatures plugin");
|
||||
}
|
||||
|
||||
function defaultfeatures_uninstall() {
|
||||
unregister_hook('register_account', 'addon/defaultfeatures/defaultfeatures.php', 'defaultfeatures_register');
|
||||
logger("uninstalled defaultfeatures plugin");
|
||||
}
|
||||
|
||||
function defaultfeatures_register($a, $newuid) {
|
||||
$arr = array();
|
||||
$features = get_features();
|
||||
foreach($features as $fname => $fdata) {
|
||||
foreach(array_slice($fdata,1) as $f) {
|
||||
set_pconfig($newuid,'feature',$f[0],((intval(get_config('defaultfeatures',$f[0]))) ? "1" : "0"));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function defaultfeatures_plugin_admin_post (&$a) {
|
||||
check_form_security_token_redirectOnErr('/admin/plugins/defaultfeatures', 'admin_themes');
|
||||
foreach($_POST as $k => $v) {
|
||||
if(strpos($k,'feature_') === 0) {
|
||||
set_config('defaultfeatures',substr($k,8),((intval($v)) ? 1 : 0));
|
||||
}
|
||||
}
|
||||
info( t('Features updated') . EOL);
|
||||
}
|
||||
|
||||
function defaultfeatures_plugin_admin (&$a, &$o) {
|
||||
$t = get_markup_template( "admin.tpl", "addon/defaultfeatures/" );
|
||||
$arr = array();
|
||||
$features = get_features();
|
||||
foreach($features as $fname => $fdata) {
|
||||
$arr[$fname] = array();
|
||||
$arr[$fname][0] = $fdata[0];
|
||||
foreach(array_slice($fdata,1) as $f) {
|
||||
$arr[$fname][1][] = array('feature_' .$f[0],$f[1],((intval(get_config('defaultfeatures',$f[0]))) ? "1" : "0"),$f[2],array(t('Off'),t('On')));
|
||||
}
|
||||
}
|
||||
|
||||
//logger("Features: " . print_r($arr,true));
|
||||
|
||||
$o = replace_macros($t, array(
|
||||
'$submit' => t('Submit'),
|
||||
'$features' => $arr
|
||||
));
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue