Merge pull request #3866 from annando/detailled_notif

There is now a user switch to change between notification styles
This commit is contained in:
Hypolite Petovan 2017-11-05 08:14:10 -05:00 committed by GitHub
commit 93fd189198
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 250 additions and 244 deletions

View file

@ -2,6 +2,7 @@
use Friendica\App; use Friendica\App;
use Friendica\Core\System; use Friendica\Core\System;
use Friendica\Core\PConfig;
require_once('include/datetime.php'); require_once('include/datetime.php');
require_once('include/bbcode.php'); require_once('include/bbcode.php');
@ -477,9 +478,14 @@ function ping_get_notifications($uid)
if ($notification["visible"] && !$notification["spam"] && if ($notification["visible"] && !$notification["spam"] &&
!$notification["deleted"] && !is_array($result[$notification["parent"]])) { !$notification["deleted"] && !is_array($result[$notification["parent"]])) {
// Should we condense the notifications or show them all?
if (PConfig::get(local_user(), 'system', 'detailed_notif')) {
$result[$notification["id"]] = $notification;
} else {
$result[$notification["parent"]] = $notification; $result[$notification["parent"]] = $notification;
} }
} }
}
} while ((count($result) < 50) && !$quit); } while ((count($result) < 50) && !$quit);
return($result); return($result);

View file

@ -2,6 +2,8 @@
use Friendica\App; use Friendica\App;
use Friendica\Core\System; use Friendica\Core\System;
use Friendica\Core\Config;
use Friendica\Core\PConfig;
require_once('include/group.php'); require_once('include/group.php');
require_once('include/socgraph.php'); require_once('include/socgraph.php');
@ -26,12 +28,6 @@ function settings_init(App $a) {
return; return;
} }
// APC deactivated, since there are problems with PHP 5.5
//if (function_exists("apc_delete")) {
// $toDelete = new APCIterator('user', APC_ITER_VALUE);
// apc_delete($toDelete);
//}
// These lines provide the javascript needed by the acl selector // These lines provide the javascript needed by the acl selector
$tpl = get_markup_template("settings-head.tpl"); $tpl = get_markup_template("settings-head.tpl");
@ -204,10 +200,10 @@ function settings_post(App $a) {
check_form_security_token_redirectOnErr('/settings/connectors', 'settings_connectors'); check_form_security_token_redirectOnErr('/settings/connectors', 'settings_connectors');
if (x($_POST, 'general-submit')) { if (x($_POST, 'general-submit')) {
set_pconfig(local_user(), 'system', 'no_intelligent_shortening', intval($_POST['no_intelligent_shortening'])); PConfig::set(local_user(), 'system', 'no_intelligent_shortening', intval($_POST['no_intelligent_shortening']));
set_pconfig(local_user(), 'system', 'ostatus_autofriend', intval($_POST['snautofollow'])); PConfig::set(local_user(), 'system', 'ostatus_autofriend', intval($_POST['snautofollow']));
set_pconfig(local_user(), 'ostatus', 'default_group', $_POST['group-selection']); PConfig::set(local_user(), 'ostatus', 'default_group', $_POST['group-selection']);
set_pconfig(local_user(), 'ostatus', 'legacy_contact', $_POST['legacy_contact']); PConfig::set(local_user(), 'ostatus', 'legacy_contact', $_POST['legacy_contact']);
} elseif (x($_POST, 'imap-submit')) { } elseif (x($_POST, 'imap-submit')) {
$mail_server = ((x($_POST, 'mail_server')) ? $_POST['mail_server'] : ''); $mail_server = ((x($_POST, 'mail_server')) ? $_POST['mail_server'] : '');
@ -221,9 +217,10 @@ function settings_post(App $a) {
$mail_pubmail = ((x($_POST, 'mail_pubmail')) ? $_POST['mail_pubmail'] : ''); $mail_pubmail = ((x($_POST, 'mail_pubmail')) ? $_POST['mail_pubmail'] : '');
$mail_disabled = ((function_exists('imap_open') && (! get_config('system','imap_disabled'))) ? 0 : 1); $mail_disabled = ((function_exists('imap_open') && (!Config::get('system', 'imap_disabled'))) ? 0 : 1);
if(get_config('system','dfrn_only')) if (Config::get('system', 'dfrn_only')) {
$mail_disabled = 1; $mail_disabled = 1;
}
if (!$mail_disabled) { if (!$mail_disabled) {
$failed = false; $failed = false;
@ -270,10 +267,11 @@ function settings_post(App $a) {
} }
} }
} }
if(! $failed) if (!$failed) {
info(t('Email settings updated.') . EOL); info(t('Email settings updated.') . EOL);
} }
} }
}
call_hooks('connector_settings_post', $_POST); call_hooks('connector_settings_post', $_POST);
return; return;
@ -283,7 +281,7 @@ function settings_post(App $a) {
check_form_security_token_redirectOnErr('/settings/features', 'settings_features'); check_form_security_token_redirectOnErr('/settings/features', 'settings_features');
foreach ($_POST as $k => $v) { foreach ($_POST as $k => $v) {
if (strpos($k, 'feature_') === 0) { if (strpos($k, 'feature_') === 0) {
set_pconfig(local_user(),'feature',substr($k,8),((intval($v)) ? 1 : 0)); PConfig::set(local_user(), 'feature', substr($k, 8), ((intval($v)) ? 1 : 0));
} }
} }
info(t('Features updated') . EOL); info(t('Features updated') . EOL);
@ -305,9 +303,10 @@ function settings_post(App $a) {
$browser_update = x($_POST, 'browser_update') ? intval($_POST['browser_update']) : 0; $browser_update = x($_POST, 'browser_update') ? intval($_POST['browser_update']) : 0;
if ($browser_update != -1) { if ($browser_update != -1) {
$browser_update = $browser_update * 1000; $browser_update = $browser_update * 1000;
if ($browser_update < 10000) if ($browser_update < 10000) {
$browser_update = 10000; $browser_update = 10000;
} }
}
$itemspage_network = x($_POST, 'itemspage_network') ? intval($_POST['itemspage_network']) : 40; $itemspage_network = x($_POST, 'itemspage_network') ? intval($_POST['itemspage_network']) : 40;
if ($itemspage_network > 100) { if ($itemspage_network > 100) {
@ -319,19 +318,19 @@ function settings_post(App $a) {
} }
if ($mobile_theme !== '') { if ($mobile_theme !== '') {
set_pconfig(local_user(),'system','mobile_theme',$mobile_theme); PConfig::set(local_user(), 'system', 'mobile_theme', $mobile_theme);
} }
set_pconfig(local_user(), 'system', 'nowarn_insecure' , $nowarn_insecure); PConfig::set(local_user(), 'system', 'nowarn_insecure' , $nowarn_insecure);
set_pconfig(local_user(), 'system', 'update_interval' , $browser_update); PConfig::set(local_user(), 'system', 'update_interval' , $browser_update);
set_pconfig(local_user(), 'system', 'itemspage_network' , $itemspage_network); PConfig::set(local_user(), 'system', 'itemspage_network' , $itemspage_network);
set_pconfig(local_user(), 'system', 'itemspage_mobile_network', $itemspage_mobile_network); PConfig::set(local_user(), 'system', 'itemspage_mobile_network', $itemspage_mobile_network);
set_pconfig(local_user(), 'system', 'no_smilies' , $nosmile); PConfig::set(local_user(), 'system', 'no_smilies' , $nosmile);
set_pconfig(local_user(), 'system', 'first_day_of_week' , $first_day_of_week); PConfig::set(local_user(), 'system', 'first_day_of_week' , $first_day_of_week);
set_pconfig(local_user(), 'system', 'ignore_info' , $noinfo); PConfig::set(local_user(), 'system', 'ignore_info' , $noinfo);
set_pconfig(local_user(), 'system', 'infinite_scroll' , $infinite_scroll); PConfig::set(local_user(), 'system', 'infinite_scroll' , $infinite_scroll);
set_pconfig(local_user(), 'system', 'no_auto_update' , $no_auto_update); PConfig::set(local_user(), 'system', 'no_auto_update' , $no_auto_update);
set_pconfig(local_user(), 'system', 'bandwidth_saver' , $bandwidth_saver); PConfig::set(local_user(), 'system', 'bandwidth_saver' , $bandwidth_saver);
if ($theme == $a->user['theme']) { if ($theme == $a->user['theme']) {
// call theme_post only if theme has not been changed // call theme_post only if theme has not been changed
@ -362,7 +361,7 @@ function settings_post(App $a) {
call_hooks('settings_post', $_POST); call_hooks('settings_post', $_POST);
if((x($_POST,'password')) || (x($_POST,'confirm'))) { if (x($_POST, 'password') || x($_POST, 'confirm')) {
$newpass = $_POST['password']; $newpass = $_POST['password'];
$confirm = $_POST['confirm']; $confirm = $_POST['confirm'];
@ -374,7 +373,7 @@ function settings_post(App $a) {
$err = true; $err = true;
} }
if((! x($newpass)) || (! x($confirm))) { if (!x($newpass) || !x($confirm)) {
notice(t('Empty passwords are not allowed. Password unchanged.') . EOL); notice(t('Empty passwords are not allowed. Password unchanged.') . EOL);
$err = true; $err = true;
} }
@ -437,35 +436,45 @@ function settings_post(App $a) {
$post_profilechange = (($_POST['post_profilechange'] == 1) ? 1: 0); $post_profilechange = (($_POST['post_profilechange'] == 1) ? 1: 0);
$email_textonly = (($_POST['email_textonly'] == 1) ? 1 : 0); $email_textonly = (($_POST['email_textonly'] == 1) ? 1 : 0);
$detailed_notif = (($_POST['detailed_notif'] == 1) ? 1 : 0);
$notify = 0; $notify = 0;
if(x($_POST,'notify1')) if (x($_POST, 'notify1')) {
$notify += intval($_POST['notify1']); $notify += intval($_POST['notify1']);
if(x($_POST,'notify2')) }
if (x($_POST, 'notify2')) {
$notify += intval($_POST['notify2']); $notify += intval($_POST['notify2']);
if(x($_POST,'notify3')) }
if (x($_POST, 'notify3')) {
$notify += intval($_POST['notify3']); $notify += intval($_POST['notify3']);
if(x($_POST,'notify4')) }
if (x($_POST, 'notify4')) {
$notify += intval($_POST['notify4']); $notify += intval($_POST['notify4']);
if(x($_POST,'notify5')) }
if (x($_POST, 'notify5')) {
$notify += intval($_POST['notify5']); $notify += intval($_POST['notify5']);
if(x($_POST,'notify6')) }
if (x($_POST, 'notify6')) {
$notify += intval($_POST['notify6']); $notify += intval($_POST['notify6']);
if(x($_POST,'notify7')) }
if (x($_POST, 'notify7')) {
$notify += intval($_POST['notify7']); $notify += intval($_POST['notify7']);
if(x($_POST,'notify8')) }
if (x($_POST, 'notify8')) {
$notify += intval($_POST['notify8']); $notify += intval($_POST['notify8']);
}
// Adjust the page flag if the account type doesn't fit to the page flag. // Adjust the page flag if the account type doesn't fit to the page flag.
if (($account_type == ACCOUNT_TYPE_PERSON) && !in_array($page_flags, array(PAGE_NORMAL, PAGE_SOAPBOX, PAGE_FREELOVE))) if (($account_type == ACCOUNT_TYPE_PERSON) && !in_array($page_flags, array(PAGE_NORMAL, PAGE_SOAPBOX, PAGE_FREELOVE))) {
$page_flags = PAGE_NORMAL; $page_flags = PAGE_NORMAL;
elseif (($account_type == ACCOUNT_TYPE_ORGANISATION) && !in_array($page_flags, array(PAGE_SOAPBOX))) } elseif (($account_type == ACCOUNT_TYPE_ORGANISATION) && !in_array($page_flags, array(PAGE_SOAPBOX))) {
$page_flags = PAGE_SOAPBOX; $page_flags = PAGE_SOAPBOX;
elseif (($account_type == ACCOUNT_TYPE_NEWS) && !in_array($page_flags, array(PAGE_SOAPBOX))) } elseif (($account_type == ACCOUNT_TYPE_NEWS) && !in_array($page_flags, array(PAGE_SOAPBOX))) {
$page_flags = PAGE_SOAPBOX; $page_flags = PAGE_SOAPBOX;
elseif (($account_type == ACCOUNT_TYPE_COMMUNITY) && !in_array($page_flags, array(PAGE_COMMUNITY, PAGE_PRVGROUP))) } elseif (($account_type == ACCOUNT_TYPE_COMMUNITY) && !in_array($page_flags, array(PAGE_COMMUNITY, PAGE_PRVGROUP))) {
$page_flags = PAGE_COMMUNITY; $page_flags = PAGE_COMMUNITY;
}
$email_changed = false; $email_changed = false;
@ -475,11 +484,13 @@ function settings_post(App $a) {
if ($username != $a->user['username']) { if ($username != $a->user['username']) {
$name_change = true; $name_change = true;
if(strlen($username) > 40) if (strlen($username) > 40) {
$err .= t(' Please use a shorter name.'); $err .= t(' Please use a shorter name.');
if(strlen($username) < 3) }
if (strlen($username) < 3) {
$err .= t(' Name too short.'); $err .= t(' Name too short.');
} }
}
if ($email != $a->user['email']) { if ($email != $a->user['email']) {
$email_changed = true; $email_changed = true;
@ -491,8 +502,9 @@ function settings_post(App $a) {
$email = $a->user['email']; $email = $a->user['email'];
} }
// check the email is valid // check the email is valid
if(! valid_email($email)) if (!valid_email($email)) {
$err .= t(' Not valid email.'); $err .= t(' Not valid email.');
}
// ensure new email is not the admin mail // ensure new email is not the admin mail
//if ((x($a->config, 'admin_email')) && (strcasecmp($email, $a->config['admin_email']) == 0)) { //if ((x($a->config, 'admin_email')) && (strcasecmp($email, $a->config['admin_email']) == 0)) {
if (x($a->config, 'admin_email')) { if (x($a->config, 'admin_email')) {
@ -509,8 +521,7 @@ function settings_post(App $a) {
return; return;
} }
if($timezone != $a->user['timezone']) { if (($timezone != $a->user['timezone']) && strlen($timezone)) {
if(strlen($timezone))
date_default_timezone_set($timezone); date_default_timezone_set($timezone);
} }
@ -532,32 +543,32 @@ function settings_post(App $a) {
$open_id_obj = new LightOpenID; $open_id_obj = new LightOpenID;
$open_id_obj->identity = $openid; $open_id_obj->identity = $openid;
$openidserver = $open_id_obj->discover($open_id_obj->identity); $openidserver = $open_id_obj->discover($open_id_obj->identity);
} } else {
else
$openidserver = ''; $openidserver = '';
} }
}
set_pconfig(local_user(),'expire','items', $expire_items); PConfig::set(local_user(), 'expire', 'items', $expire_items);
set_pconfig(local_user(),'expire','notes', $expire_notes); PConfig::set(local_user(), 'expire', 'notes', $expire_notes);
set_pconfig(local_user(),'expire','starred', $expire_starred); PConfig::set(local_user(), 'expire', 'starred', $expire_starred);
set_pconfig(local_user(),'expire','photos', $expire_photos); PConfig::set(local_user(), 'expire', 'photos', $expire_photos);
set_pconfig(local_user(),'expire','network_only', $expire_network_only); PConfig::set(local_user(), 'expire', 'network_only', $expire_network_only);
set_pconfig(local_user(),'system','suggestme', $suggestme); PConfig::set(local_user(), 'system', 'suggestme', $suggestme);
set_pconfig(local_user(),'system','post_newfriend', $post_newfriend); PConfig::set(local_user(), 'system', 'post_newfriend', $post_newfriend);
set_pconfig(local_user(),'system','post_joingroup', $post_joingroup); PConfig::set(local_user(), 'system', 'post_joingroup', $post_joingroup);
set_pconfig(local_user(),'system','post_profilechange', $post_profilechange); PConfig::set(local_user(), 'system', 'post_profilechange', $post_profilechange);
set_pconfig(local_user(),'system','email_textonly', $email_textonly); PConfig::set(local_user(), 'system', 'email_textonly', $email_textonly);
PConfig::set(local_user(), 'system', 'detailed_notif', $detailed_notif);
if ($page_flags == PAGE_PRVGROUP) { if ($page_flags == PAGE_PRVGROUP) {
$hidewall = 1; $hidewall = 1;
if((! $str_contact_allow) && (! $str_group_allow) && (! $str_contact_deny) && (! $str_group_deny)) { if (!$str_contact_allow && !$str_group_allow && !$str_contact_deny && !$str_group_deny) {
if ($def_gid) { if ($def_gid) {
info(t('Private forum has no privacy permissions. Using default privacy group.'). EOL); info(t('Private forum has no privacy permissions. Using default privacy group.'). EOL);
$str_group_allow = '<' . $def_gid . '>'; $str_group_allow = '<' . $def_gid . '>';
} } else {
else {
notice(t('Private forum has no privacy permissions and no default privacy group.') . EOL); notice(t('Private forum has no privacy permissions and no default privacy group.') . EOL);
} }
} }
@ -597,8 +608,9 @@ function settings_post(App $a) {
dbesc($language), dbesc($language),
intval(local_user()) intval(local_user())
); );
if($r) if ($r) {
info(t('Settings updated.') . EOL); info(t('Settings updated.') . EOL);
}
// clear session language // clear session language
unset($_SESSION['language']); unset($_SESSION['language']);
@ -628,7 +640,7 @@ function settings_post(App $a) {
if (($old_visibility != $net_publish) || ($page_flags != $old_page_flags)) { if (($old_visibility != $net_publish) || ($page_flags != $old_page_flags)) {
// Update global directory in background // Update global directory in background
$url = $_SESSION['my_url']; $url = $_SESSION['my_url'];
if ($url && strlen(get_config('system','directory'))) { if ($url && strlen(Config::get('system', 'directory'))) {
proc_run(PRIORITY_LOW, "include/directory.php", $url); proc_run(PRIORITY_LOW, "include/directory.php", $url);
} }
} }
@ -657,7 +669,7 @@ function settings_content(App $a) {
nav_set_selected('settings'); nav_set_selected('settings');
if (!local_user()) { if (!local_user()) {
#notice( t('Permission denied.') . EOL ); //notice(t('Permission denied.') . EOL);
return; return;
} }
@ -801,7 +813,7 @@ function settings_content(App $a) {
$settings_connectors .= '<h3 class="connector">'. t('General Social Media Settings').'</h3>'; $settings_connectors .= '<h3 class="connector">'. t('General Social Media Settings').'</h3>';
$settings_connectors .= '</span>'; $settings_connectors .= '</span>';
$checked = ((get_pconfig(local_user(), 'system', 'no_intelligent_shortening')) ? ' checked="checked" ' : ''); $checked = ((PConfig::get(local_user(), 'system', 'no_intelligent_shortening')) ? ' checked="checked" ' : '');
$settings_connectors .= '<div id="no_intelligent_shortening" class="field checkbox">'; $settings_connectors .= '<div id="no_intelligent_shortening" class="field checkbox">';
$settings_connectors .= '<label id="no_intelligent_shortening-label" for="shortening-checkbox">'. t('Disable intelligent shortening'). '</label>'; $settings_connectors .= '<label id="no_intelligent_shortening-label" for="shortening-checkbox">'. t('Disable intelligent shortening'). '</label>';
@ -809,7 +821,7 @@ function settings_content(App $a) {
$settings_connectors .= '<span class="field_help">'.t('Normally the system tries to find the best link to add to shortened posts. If this option is enabled then every shortened post will always point to the original friendica post.').'</span>'; $settings_connectors .= '<span class="field_help">'.t('Normally the system tries to find the best link to add to shortened posts. If this option is enabled then every shortened post will always point to the original friendica post.').'</span>';
$settings_connectors .= '</div>'; $settings_connectors .= '</div>';
$checked = ((get_pconfig(local_user(), 'system', 'ostatus_autofriend')) ? ' checked="checked" ' : ''); $checked = ((PConfig::get(local_user(), 'system', 'ostatus_autofriend')) ? ' checked="checked" ' : '');
$settings_connectors .= '<div id="snautofollow-wrapper" class="field checkbox">'; $settings_connectors .= '<div id="snautofollow-wrapper" class="field checkbox">';
$settings_connectors .= '<label id="snautofollow-label" for="snautofollow-checkbox">'. t('Automatically follow any GNU Social (OStatus) followers/mentioners'). '</label>'; $settings_connectors .= '<label id="snautofollow-label" for="snautofollow-checkbox">'. t('Automatically follow any GNU Social (OStatus) followers/mentioners'). '</label>';
@ -817,8 +829,8 @@ function settings_content(App $a) {
$settings_connectors .= '<span class="field_help">'.t('If you receive a message from an unknown OStatus user, this option decides what to do. If it is checked, a new contact will be created for every unknown user.').'</span>'; $settings_connectors .= '<span class="field_help">'.t('If you receive a message from an unknown OStatus user, this option decides what to do. If it is checked, a new contact will be created for every unknown user.').'</span>';
$settings_connectors .= '</div>'; $settings_connectors .= '</div>';
$default_group = get_pconfig(local_user(), 'ostatus', 'default_group'); $default_group = PConfig::get(local_user(), 'ostatus', 'default_group');
$legacy_contact = get_pconfig(local_user(), 'ostatus', 'legacy_contact'); $legacy_contact = PConfig::get(local_user(), 'ostatus', 'legacy_contact');
$settings_connectors .= mini_group_select(local_user(), $default_group, t("Default group for OStatus contacts")); $settings_connectors .= mini_group_select(local_user(), $default_group, t("Default group for OStatus contacts"));
@ -842,17 +854,17 @@ function settings_content(App $a) {
call_hooks('connector_settings', $settings_connectors); call_hooks('connector_settings', $settings_connectors);
if (is_site_admin()) { if (is_site_admin()) {
$diasp_enabled = sprintf( t('Built-in support for %s connectivity is %s'), t('Diaspora'), ((get_config('system','diaspora_enabled')) ? t('enabled') : t('disabled'))); $diasp_enabled = sprintf(t('Built-in support for %s connectivity is %s'), t('Diaspora'), ((Config::get('system', 'diaspora_enabled')) ? t('enabled') : t('disabled')));
$ostat_enabled = sprintf( t('Built-in support for %s connectivity is %s'), t('GNU Social (OStatus)'), ((get_config('system','ostatus_disabled')) ? t('disabled') : t('enabled'))); $ostat_enabled = sprintf(t('Built-in support for %s connectivity is %s'), t('GNU Social (OStatus)'), ((Config::get('system', 'ostatus_disabled')) ? t('disabled') : t('enabled')));
} else { } else {
$diasp_enabled = ""; $diasp_enabled = "";
$ostat_enabled = ""; $ostat_enabled = "";
} }
$mail_disabled = ((function_exists('imap_open') && (! get_config('system','imap_disabled'))) ? 0 : 1); $mail_disabled = ((function_exists('imap_open') && (!Config::get('system', 'imap_disabled'))) ? 0 : 1);
if(get_config('system','dfrn_only')) if (Config::get('system', 'dfrn_only')) {
$mail_disabled = 1; $mail_disabled = 1;
}
if (!$mail_disabled) { if (!$mail_disabled) {
$r = q("SELECT * FROM `mailacct` WHERE `uid` = %d LIMIT 1", $r = q("SELECT * FROM `mailacct` WHERE `uid` = %d LIMIT 1",
local_user() local_user()
@ -910,16 +922,16 @@ function settings_content(App $a) {
* DISPLAY SETTINGS * DISPLAY SETTINGS
*/ */
if (($a->argc > 1) && ($a->argv[1] === 'display')) { if (($a->argc > 1) && ($a->argv[1] === 'display')) {
$default_theme = get_config('system','theme'); $default_theme = Config::get('system', 'theme');
if (!$default_theme) { if (!$default_theme) {
$default_theme = 'default'; $default_theme = 'default';
} }
$default_mobile_theme = get_config('system','mobile-theme'); $default_mobile_theme = Config::get('system', 'mobile-theme');
if (!$mobile_default_theme) { if (!$mobile_default_theme) {
$mobile_default_theme = 'none'; $mobile_default_theme = 'none';
} }
$allowed_themes_str = get_config('system','allowed_themes'); $allowed_themes_str = Config::get('system', 'allowed_themes');
$allowed_themes_raw = explode(',', $allowed_themes_str); $allowed_themes_raw = explode(',', $allowed_themes_str);
$allowed_themes = array(); $allowed_themes = array();
if (count($allowed_themes_raw)) { if (count($allowed_themes_raw)) {
@ -940,7 +952,7 @@ function settings_content(App $a) {
$is_experimental = file_exists('view/theme/' . $th . '/experimental'); $is_experimental = file_exists('view/theme/' . $th . '/experimental');
$unsupported = file_exists('view/theme/' . $th . '/unsupported'); $unsupported = file_exists('view/theme/' . $th . '/unsupported');
$is_mobile = file_exists('view/theme/' . $th . '/mobile'); $is_mobile = file_exists('view/theme/' . $th . '/mobile');
if (!$is_experimental || ($is_experimental && (get_config('experimentals','exp_themes')==1 || get_config('experimentals','exp_themes')===false))){ if (!$is_experimental || ($is_experimental && (Config::get('experimentals', 'exp_themes')==1 || Config::get('experimentals', 'exp_themes')===false))) {
$theme_name = (($is_experimental) ? sprintf("%s - \x28Experimental\x29", $f) : $f); $theme_name = (($is_experimental) ? sprintf("%s - \x28Experimental\x29", $f) : $f);
if ($is_mobile) { if ($is_mobile) {
$mobile_themes[$f]=$theme_name; $mobile_themes[$f]=$theme_name;
@ -953,35 +965,35 @@ function settings_content(App $a) {
$theme_selected = (!x($_SESSION, 'theme')? $default_theme : $_SESSION['theme']); $theme_selected = (!x($_SESSION, 'theme')? $default_theme : $_SESSION['theme']);
$mobile_theme_selected = (!x($_SESSION, 'mobile-theme')? $default_mobile_theme : $_SESSION['mobile-theme']); $mobile_theme_selected = (!x($_SESSION, 'mobile-theme')? $default_mobile_theme : $_SESSION['mobile-theme']);
$nowarn_insecure = intval(get_pconfig(local_user(), 'system', 'nowarn_insecure')); $nowarn_insecure = intval(PConfig::get(local_user(), 'system', 'nowarn_insecure'));
$browser_update = intval(get_pconfig(local_user(), 'system','update_interval')); $browser_update = intval(PConfig::get(local_user(), 'system', 'update_interval'));
if (intval($browser_update) != -1) { if (intval($browser_update) != -1) {
$browser_update = (($browser_update == 0) ? 40 : $browser_update / 1000); // default if not set: 40 seconds $browser_update = (($browser_update == 0) ? 40 : $browser_update / 1000); // default if not set: 40 seconds
} }
$itemspage_network = intval(get_pconfig(local_user(), 'system','itemspage_network')); $itemspage_network = intval(PConfig::get(local_user(), 'system', 'itemspage_network'));
$itemspage_network = (($itemspage_network > 0 && $itemspage_network < 101) ? $itemspage_network : 40); // default if not set: 40 items $itemspage_network = (($itemspage_network > 0 && $itemspage_network < 101) ? $itemspage_network : 40); // default if not set: 40 items
$itemspage_mobile_network = intval(get_pconfig(local_user(), 'system','itemspage_mobile_network')); $itemspage_mobile_network = intval(PConfig::get(local_user(), 'system', 'itemspage_mobile_network'));
$itemspage_mobile_network = (($itemspage_mobile_network > 0 && $itemspage_mobile_network < 101) ? $itemspage_mobile_network : 20); // default if not set: 20 items $itemspage_mobile_network = (($itemspage_mobile_network > 0 && $itemspage_mobile_network < 101) ? $itemspage_mobile_network : 20); // default if not set: 20 items
$nosmile = get_pconfig(local_user(),'system','no_smilies'); $nosmile = PConfig::get(local_user(), 'system', 'no_smilies');
$nosmile = (($nosmile===false)? '0': $nosmile); // default if not set: 0 $nosmile = (($nosmile===false)? '0': $nosmile); // default if not set: 0
$first_day_of_week = get_pconfig(local_user(),'system','first_day_of_week'); $first_day_of_week = PConfig::get(local_user(), 'system', 'first_day_of_week');
$first_day_of_week = (($first_day_of_week===false)? '0': $first_day_of_week); // default if not set: 0 $first_day_of_week = (($first_day_of_week===false)? '0': $first_day_of_week); // default if not set: 0
$weekdays = array(0 => t("Sunday"), 1 => t("Monday")); $weekdays = array(0 => t("Sunday"), 1 => t("Monday"));
$noinfo = get_pconfig(local_user(),'system','ignore_info'); $noinfo = PConfig::get(local_user(), 'system', 'ignore_info');
$noinfo = (($noinfo===false)? '0': $noinfo); // default if not set: 0 $noinfo = (($noinfo===false)? '0': $noinfo); // default if not set: 0
$infinite_scroll = get_pconfig(local_user(),'system','infinite_scroll'); $infinite_scroll = PConfig::get(local_user(), 'system', 'infinite_scroll');
$infinite_scroll = (($infinite_scroll===false)? '0': $infinite_scroll); // default if not set: 0 $infinite_scroll = (($infinite_scroll===false)? '0': $infinite_scroll); // default if not set: 0
$no_auto_update = get_pconfig(local_user(),'system','no_auto_update'); $no_auto_update = PConfig::get(local_user(), 'system', 'no_auto_update');
$no_auto_update = (($no_auto_update===false)? '0': $no_auto_update); // default if not set: 0 $no_auto_update = (($no_auto_update===false)? '0': $no_auto_update); // default if not set: 0
$bandwidth_saver = get_pconfig(local_user(), 'system', 'bandwidth_saver'); $bandwidth_saver = PConfig::get(local_user(), 'system', 'bandwidth_saver');
$bandwidth_saver = (($bandwidth_saver === false) ? '0' : $bandwidth_saver); // default if not set: 0 $bandwidth_saver = (($bandwidth_saver === false) ? '0' : $bandwidth_saver); // default if not set: 0
$theme_config = ""; $theme_config = "";
@ -1056,33 +1068,15 @@ function settings_content(App $a) {
$unkmail = $a->user['unkmail']; $unkmail = $a->user['unkmail'];
$cntunkmail = $a->user['cntunkmail']; $cntunkmail = $a->user['cntunkmail'];
$expire_items = get_pconfig(local_user(), 'expire','items'); $expire_items = PConfig::get(local_user(), 'expire', 'items', true);
$expire_items = (($expire_items===false)? '1' : $expire_items); // default if not set: 1 $expire_notes = PConfig::get(local_user(), 'expire', 'notes', true);
$expire_starred = PConfig::get(local_user(), 'expire', 'starred', true);
$expire_notes = get_pconfig(local_user(), 'expire','notes'); $expire_photos = PConfig::get(local_user(), 'expire', 'photos', false);
$expire_notes = (($expire_notes===false)? '1' : $expire_notes); // default if not set: 1 $expire_network_only = PConfig::get(local_user(), 'expire', 'network_only', false);
$suggestme = PConfig::get(local_user(), 'system', 'suggestme', false);
$expire_starred = get_pconfig(local_user(), 'expire','starred'); $post_newfriend = PConfig::get(local_user(), 'system', 'post_newfriend', false);
$expire_starred = (($expire_starred===false)? '1' : $expire_starred); // default if not set: 1 $post_joingroup = PConfig::get(local_user(), 'system', 'post_joingroup', false);
$post_profilechange = PConfig::get(local_user(), 'system', 'post_profilechange', false);
$expire_photos = get_pconfig(local_user(), 'expire','photos');
$expire_photos = (($expire_photos===false)? '0' : $expire_photos); // default if not set: 0
$expire_network_only = get_pconfig(local_user(), 'expire','network_only');
$expire_network_only = (($expire_network_only===false)? '0' : $expire_network_only); // default if not set: 0
$suggestme = get_pconfig(local_user(), 'system','suggestme');
$suggestme = (($suggestme===false)? '0': $suggestme); // default if not set: 0
$post_newfriend = get_pconfig(local_user(), 'system','post_newfriend');
$post_newfriend = (($post_newfriend===false)? '0': $post_newfriend); // default if not set: 0
$post_joingroup = get_pconfig(local_user(), 'system','post_joingroup');
$post_joingroup = (($post_joingroup===false)? '0': $post_joingroup); // default if not set: 0
$post_profilechange = get_pconfig(local_user(), 'system','post_profilechange');
$post_profilechange = (($post_profilechange===false)? '0': $post_profilechange); // default if not set: 0
// nowarn_insecure // nowarn_insecure
@ -1147,7 +1141,7 @@ function settings_content(App $a) {
)); ));
$noid = get_config('system','no_openid'); $noid = Config::get('system', 'no_openid');
if ($noid) { if ($noid) {
$openid_field = false; $openid_field = false;
@ -1156,7 +1150,7 @@ function settings_content(App $a) {
} }
$opt_tpl = get_markup_template("field_yesno.tpl"); $opt_tpl = get_markup_template("field_yesno.tpl");
if (get_config('system','publish_all')) { if (Config::get('system', 'publish_all')) {
$profile_in_dir = '<input type="hidden" name="profile_in_directory" value="1" />'; $profile_in_dir = '<input type="hidden" name="profile_in_directory" value="1" />';
} else { } else {
$profile_in_dir = replace_macros($opt_tpl, array( $profile_in_dir = replace_macros($opt_tpl, array(
@ -1164,7 +1158,7 @@ function settings_content(App $a) {
)); ));
} }
if (strlen(get_config('system','directory'))) { if (strlen(Config::get('system', 'directory'))) {
$profile_in_net_dir = replace_macros($opt_tpl, array( $profile_in_net_dir = replace_macros($opt_tpl, array(
'$field' => array('profile_in_netdirectory', t('Publish your default profile in the global social directory?'), $profile['net-publish'], '', array(t('No'), t('Yes'))) '$field' => array('profile_in_netdirectory', t('Publish your default profile in the global social directory?'), $profile['net-publish'], '', array(t('No'), t('Yes')))
)); ));
@ -1271,7 +1265,7 @@ function settings_content(App $a) {
'$password2'=> array('confirm', t('Confirm:'), '', t('Leave password fields blank unless changing')), '$password2'=> array('confirm', t('Confirm:'), '', t('Leave password fields blank unless changing')),
'$password3'=> array('opassword', t('Current Password:'), '', t('Your current password to confirm the changes')), '$password3'=> array('opassword', t('Current Password:'), '', t('Your current password to confirm the changes')),
'$password4'=> array('mpassword', t('Password:'), '', t('Your current password to confirm the changes')), '$password4'=> array('mpassword', t('Password:'), '', t('Your current password to confirm the changes')),
'$oid_enable' => (! get_config('system','no_openid')), '$oid_enable' => (!Config::get('system', 'no_openid')),
'$openid' => $openid_field, '$openid' => $openid_field,
'$h_basic' => t('Basic Settings'), '$h_basic' => t('Basic Settings'),
@ -1336,9 +1330,13 @@ function settings_content(App $a) {
'$desktop_notifications' => array('desktop_notifications', t('Activate desktop notifications') , false, t('Show desktop popup on new notifications')), '$desktop_notifications' => array('desktop_notifications', t('Activate desktop notifications') , false, t('Show desktop popup on new notifications')),
'$email_textonly' => array('email_textonly', t('Text-only notification emails'), '$email_textonly' => array('email_textonly', t('Text-only notification emails'),
get_pconfig(local_user(),'system','email_textonly'), PConfig::get(local_user(), 'system', 'email_textonly'),
t('Send text only notification emails, without the html part')), t('Send text only notification emails, without the html part')),
'$detailed_notif' => array('detailed_notif', t('Show detailled notifications'),
PConfig::get(local_user(), 'system', 'detailed_notif'),
t('Per default the notificiation are condensed to a single notification per item. When enabled, every notification is displayed.')),
'$h_advn' => t('Advanced Account/Page Type Settings'), '$h_advn' => t('Advanced Account/Page Type Settings'),
'$h_descadvn' => t('Change the behaviour of this account for special situations'), '$h_descadvn' => t('Change the behaviour of this account for special situations'),
'$pagetype' => $pagetype, '$pagetype' => $pagetype,

View file

@ -135,6 +135,7 @@
</div> </div>
{{include file="field_checkbox.tpl" field=$email_textonly}} {{include file="field_checkbox.tpl" field=$email_textonly}}
{{include file="field_checkbox.tpl" field=$detailed_notif}}
<!-- <!--

View file

@ -194,7 +194,7 @@
</div> </div>
{{include file="field_checkbox.tpl" field=$email_textonly}} {{include file="field_checkbox.tpl" field=$email_textonly}}
{{include file="field_checkbox.tpl" field=$detailed_notif}}
{{* commented out because it was commented out in the original template {{* commented out because it was commented out in the original template
<div class="field"> <div class="field">

View file

@ -131,6 +131,7 @@
</div> </div>
{{include file="field_checkbox.tpl" field=$email_textonly}} {{include file="field_checkbox.tpl" field=$email_textonly}}
{{include file="field_checkbox.tpl" field=$detailed_notif}}
</div> </div>