X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fsettings.php;h=3a07e714d07acf9e2678fb6d1aba79fe52b42c0b;hb=8504cf4f059c89732c47f51d39aa1a3b0d5e913a;hp=ae4c36e0cc0be0e2df3778daeaff4916a1f51ad9;hpb=cf0ebd952f662654f5e1291845fa82b1047155d4;p=friendica.git
diff --git a/mod/settings.php b/mod/settings.php
index ae4c36e0cc..3a07e714d0 100644
--- a/mod/settings.php
+++ b/mod/settings.php
@@ -16,6 +16,11 @@ function get_theme_config_file($theme){
function settings_init(&$a) {
+ if(! local_user()) {
+ notice( t('Permission denied.') . EOL );
+ return;
+ }
+
// APC deactivated, since there are problems with PHP 5.5
//if (function_exists("apc_delete")) {
// $toDelete = new APCIterator('user', APC_ITER_VALUE);
@@ -35,48 +40,57 @@ function settings_init(&$a) {
array(
'label' => t('Account'),
'url' => $a->get_baseurl(true).'/settings',
- 'selected' => (($a->argc == 1)?'active':''),
+ 'selected' => (($a->argc == 1) && ($a->argv[0] === 'settings')?'active':''),
+ 'accesskey' => 'o',
),
array(
'label' => t('Additional features'),
'url' => $a->get_baseurl(true).'/settings/features',
'selected' => (($a->argc > 1) && ($a->argv[1] === 'features') ? 'active' : ''),
+ 'accesskey' => 't',
),
array(
'label' => t('Display'),
'url' => $a->get_baseurl(true).'/settings/display',
'selected' => (($a->argc > 1) && ($a->argv[1] === 'display')?'active':''),
+ 'accesskey' => 'i',
),
array(
'label' => t('Social Networks'),
'url' => $a->get_baseurl(true).'/settings/connectors',
'selected' => (($a->argc > 1) && ($a->argv[1] === 'connectors')?'active':''),
+ 'accesskey' => 'w',
),
array(
'label' => t('Plugins'),
'url' => $a->get_baseurl(true).'/settings/addon',
'selected' => (($a->argc > 1) && ($a->argv[1] === 'addon')?'active':''),
+ 'accesskey' => 'l',
),
array(
'label' => t('Delegations'),
'url' => $a->get_baseurl(true).'/delegate',
- 'selected' => (($a->argc > 1) && ($a->argv[1] === 'addon')?'active':''),
+ 'selected' => (($a->argc == 1) && ($a->argv[0] === 'delegate')?'active':''),
+ 'accesskey' => 'd',
),
array(
'label' => t('Connected apps'),
'url' => $a->get_baseurl(true) . '/settings/oauth',
'selected' => (($a->argc > 1) && ($a->argv[1] === 'oauth')?'active':''),
+ 'accesskey' => 'b',
),
array(
'label' => t('Export personal data'),
'url' => $a->get_baseurl(true) . '/uexport',
- 'selected' => ''
+ 'selected' => (($a->argc == 1) && ($a->argv[0] === 'uexport')?'active':''),
+ 'accesskey' => 'e',
),
array(
'label' => t('Remove account'),
'url' => $a->get_baseurl(true) . '/removeme',
- 'selected' => ''
+ 'selected' => (($a->argc == 1) && ($a->argv[0] === 'removeme')?'active':''),
+ 'accesskey' => 'r',
)
);
@@ -172,7 +186,11 @@ function settings_post(&$a) {
check_form_security_token_redirectOnErr('/settings/connectors', 'settings_connectors');
- if(x($_POST, 'imap-submit')) {
+ if(x($_POST, 'general-submit')) {
+ set_pconfig(local_user(), 'system', 'no_intelligent_shortening', intval($_POST['no_intelligent_shortening']));
+ set_pconfig(local_user(), 'system', 'ostatus_autofriend', intval($_POST['snautofollow']));
+ //set_pconfig(local_user(), 'system', 'ostatus_legacy_contact', $_POST['legacy_contact']);
+ } elseif(x($_POST, 'imap-submit')) {
$mail_server = ((x($_POST,'mail_server')) ? $_POST['mail_server'] : '');
$mail_port = ((x($_POST,'mail_port')) ? $_POST['mail_port'] : '');
@@ -395,6 +413,8 @@ function settings_post(&$a) {
$post_joingroup = (($_POST['post_joingroup'] == 1) ? 1: 0);
$post_profilechange = (($_POST['post_profilechange'] == 1) ? 1: 0);
+ $email_textonly = (($_POST['email_textonly'] == 1) ? 1 : 0);
+
$notify = 0;
if(x($_POST,'notify1'))
@@ -467,7 +487,7 @@ function settings_post(&$a) {
$str_contact_deny = perms2str($_POST['contact_deny']);
$openidserver = $a->user['openidserver'];
- $openid = normalise_openid($openid);
+ //$openid = normalise_openid($openid);
// If openid has changed or if there's an openid but no openidserver, try and discover it.
@@ -495,6 +515,7 @@ function settings_post(&$a) {
set_pconfig(local_user(),'system','post_joingroup', $post_joingroup);
set_pconfig(local_user(),'system','post_profilechange', $post_profilechange);
+ set_pconfig(local_user(),'system','email_textonly', $email_textonly);
if($page_flags == PAGE_PRVGROUP) {
$hidewall = 1;
@@ -505,7 +526,7 @@ function settings_post(&$a) {
}
else {
notice( t('Private forum has no privacy permissions and no default privacy group.') . EOL);
- }
+ }
}
}
@@ -590,7 +611,7 @@ function settings_content(&$a) {
nav_set_selected('settings');
if(! local_user()) {
- notice( t('Permission denied.') . EOL );
+ #notice( t('Permission denied.') . EOL );
return;
}
@@ -656,7 +677,7 @@ function settings_content(&$a) {
}
- $r = q("SELECT clients.*, tokens.id as oauth_token, (clients.uid=%d) AS my
+ $r = q("SELECT clients.*, tokens.id as oauth_token, (clients.uid=%d) AS my
FROM clients
LEFT JOIN tokens ON clients.client_id=tokens.client_id
WHERE clients.uid IN (%d,0)",
@@ -725,13 +746,50 @@ function settings_content(&$a) {
if(($a->argc > 1) && ($a->argv[1] === 'connectors')) {
- $settings_connectors = "";
+ $settings_connectors = '';
+ $settings_connectors .= ''. t('General Social Media Settings').'
';
+ $settings_connectors .= '';
+ $settings_connectors .= '
';
call_hooks('connector_settings', $settings_connectors);
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')));
- $ostat_enabled = sprintf( t('Built-in support for %s connectivity is %s'), t('StatusNet'), ((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)'), ((get_config('system','ostatus_disabled')) ? t('disabled') : t('enabled')));
} else {
$diasp_enabled = "";
$ostat_enabled = "";
@@ -830,7 +888,7 @@ function settings_content(&$a) {
$is_experimental = file_exists('view/theme/' . $th . '/experimental');
$unsupported = file_exists('view/theme/' . $th . '/unsupported');
$is_mobile = file_exists('view/theme/' . $th . '/mobile');
- if (!$is_experimental or ($is_experimental && (get_config('experimentals','exp_themes')==1 or get_config('experimentals','exp_themes')===false))){
+ if (!$is_experimental or ($is_experimental && (get_config('experimentals','exp_themes')==1 or get_config('experimentals','exp_themes')===false))){
$theme_name = (($is_experimental) ? sprintf("%s - \x28Experimental\x29", $f) : $f);
if($is_mobile) {
$mobile_themes[$f]=$theme_name;
@@ -888,6 +946,7 @@ function settings_content(&$a) {
'$infinite_scroll' => array('infinite_scroll', t("Infinite scroll"), $infinite_scroll, ''),
'$no_auto_update' => array('no_auto_update', t("Automatic updates only at the top of the network page"), $no_auto_update, 'When disabled, the network page is updated all the time, which could be confusing while reading.'),
+ 'stitle' => t('Theme settings'),
'$theme_config' => $theme_config,
));
@@ -994,7 +1053,7 @@ function settings_content(&$a) {
$openid_field = false;
}
else {
- $openid_field = array('openid_url', t('OpenID:'),$openid, t("\x28Optional\x29 Allow this OpenID to login to this account."));
+ $openid_field = array('openid_url', t('OpenID:'),$openid, t("\x28Optional\x29 Allow this OpenID to login to this account."), "", "", "url");
}
@@ -1022,7 +1081,7 @@ function settings_content(&$a) {
));
$hide_wall = replace_macros($opt_tpl,array(
- '$field' => array('hidewall', t('Hide your profile details from unknown viewers?'), $a->user['hidewall'], '', array(t('No'),t('Yes'))),
+ '$field' => array('hidewall', t('Hide your profile details from unknown viewers?'), $a->user['hidewall'], t("If enabled, posting public messages to Diaspora and other networks isn't possible."), array(t('No'),t('Yes'))),
));
@@ -1056,21 +1115,17 @@ function settings_content(&$a) {
info( t('Profile is not published.') . EOL );
- $subdir = ((strlen($a->get_path())) ? '
' . t('or') . ' ' . $a->get_baseurl(true) . '/profile/' . $nickname : '');
+ //$subdir = ((strlen($a->get_path())) ? '
' . t('or') . ' ' . $a->get_baseurl(true) . '/profile/' . $nickname : '');
$tpl_addr = get_markup_template("settings_nick_set.tpl");
$prof_addr = replace_macros($tpl_addr,array(
- '$desc' => t('Your Identity Address is'),
- '$nickname' => $nickname,
- '$subdir' => $subdir,
+ '$desc' => sprintf(t("Your Identity Address is '%s' or '%s'."), $nickname.'@'.$a->get_hostname().$a->get_path(), $a->get_baseurl().'/profile/'.$nickname),
'$basepath' => $a->get_hostname()
));
$stpl = get_markup_template('settings.tpl');
- $celeb = ((($a->user['page-flags'] == PAGE_SOAPBOX) || ($a->user['page-flags'] == PAGE_COMMUNITY)) ? true : false);
-
$expire_arr = array(
'days' => array('expire', t("Automatically expire posts after this many days:"), $expire, t('If empty, posts will not expire. Expired posts will be deleted')),
'advanced' => t('Advanced expiration settings'),
@@ -1078,8 +1133,8 @@ function settings_content(&$a) {
'items' => array('expire_items', t("Expire posts:"), $expire_items, '', array(t('No'),t('Yes'))),
'notes' => array('expire_notes', t("Expire personal notes:"), $expire_notes, '', array(t('No'),t('Yes'))),
'starred' => array('expire_starred', t("Expire starred posts:"), $expire_starred, '', array(t('No'),t('Yes'))),
- 'photos' => array('expire_photos', t("Expire photos:"), $expire_photos, '', array(t('No'),t('Yes'))),
- 'network_only' => array('expire_network_only', t("Only expire posts by others:"), $expire_network_only, '', array(t('No'),t('Yes'))),
+ 'photos' => array('expire_photos', t("Expire photos:"), $expire_photos, '', array(t('No'),t('Yes'))),
+ 'network_only' => array('expire_network_only', t("Only expire posts by others:"), $expire_network_only, '', array(t('No'),t('Yes'))),
);
require_once('include/group.php');
@@ -1123,7 +1178,7 @@ function settings_content(&$a) {
'$h_basic' => t('Basic Settings'),
'$username' => array('username', t('Full Name:'), $username,''),
- '$email' => array('email', t('Email Address:'), $email, ''),
+ '$email' => array('email', t('Email Address:'), $email, '', '', '', 'email'),
'$timezone' => array('timezone_select' , t('Your Timezone:'), select_timezone($timezone), ''),
'$defloc' => array('defloc', t('Default Post Location:'), $defloc, ''),
'$allowloc' => array('allow_location', t('Use Browser Location:'), ($a->user['allow_location'] == 1), ''),
@@ -1135,7 +1190,7 @@ function settings_content(&$a) {
'$permissions' => t('Default Post Permissions'),
'$permdesc' => t("\x28click to open/close\x29"),
'$visibility' => $profile['net-publish'],
- '$aclselect' => populate_acl($a->user,$celeb),
+ '$aclselect' => populate_acl($a->user),
'$suggestme' => $suggestme,
'$blockwall'=> $blockwall, // array('blockwall', t('Allow friends to post to your profile page:'), !$blockwall, ''),
'$blocktags'=> $blocktags, // array('blocktags', t('Allow friends to tag your posts:'), !$blocktags, ''),
@@ -1175,10 +1230,15 @@ function settings_content(&$a) {
'$notify3' => array('notify3', t('Someone writes on your profile wall'), ($notify & NOTIFY_WALL), NOTIFY_WALL, ''),
'$notify4' => array('notify4', t('Someone writes a followup comment'), ($notify & NOTIFY_COMMENT), NOTIFY_COMMENT, ''),
'$notify5' => array('notify5', t('You receive a private message'), ($notify & NOTIFY_MAIL), NOTIFY_MAIL, ''),
- '$notify6' => array('notify6', t('You receive a friend suggestion'), ($notify & NOTIFY_SUGGEST), NOTIFY_SUGGEST, ''),
- '$notify7' => array('notify7', t('You are tagged in a post'), ($notify & NOTIFY_TAGSELF), NOTIFY_TAGSELF, ''),
- '$notify8' => array('notify8', t('You are poked/prodded/etc. in a post'), ($notify & NOTIFY_POKE), NOTIFY_POKE, ''),
-
+ '$notify6' => array('notify6', t('You receive a friend suggestion'), ($notify & NOTIFY_SUGGEST), NOTIFY_SUGGEST, ''),
+ '$notify7' => array('notify7', t('You are tagged in a post'), ($notify & NOTIFY_TAGSELF), NOTIFY_TAGSELF, ''),
+ '$notify8' => array('notify8', t('You are poked/prodded/etc. in a post'), ($notify & NOTIFY_POKE), NOTIFY_POKE, ''),
+
+ '$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'),
+ get_pconfig(local_user(),'system','email_textonly'),
+ t('Send text only notification emails, without the html part')),
'$h_advn' => t('Advanced Account/Page Type Settings'),
'$h_descadvn' => t('Change the behaviour of this account for special situations'),