]> git.mxchange.org Git - friendica.git/blobdiff - mod/settings.php
Merge pull request #1880 from annando/1509-performance
[friendica.git] / mod / settings.php
index a003401dffeccd39c3ebfa387a415120713d19f6..3a07e714d07acf9e2678fb6d1aba79fe52b42c0b 100644 (file)
@@ -41,47 +41,56 @@ function settings_init(&$a) {
                        'label' => t('Account'),
                        'url'   => $a->get_baseurl(true).'/settings',
                        '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[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' => (($a->argc == 1) && ($a->argv[0] === 'uexport')?'active':''),
+                       'accesskey' => 'e',
                ),
                array(
                        'label' => t('Remove account'),
                        'url' => $a->get_baseurl(true) . '/removeme',
                        'selected' => (($a->argc == 1) && ($a->argv[0] === 'removeme')?'active':''),
+                       'accesskey' => 'r',
                )
        );
 
@@ -178,7 +187,9 @@ function settings_post(&$a) {
                check_form_security_token_redirectOnErr('/settings/connectors', 'settings_connectors');
 
                if(x($_POST, 'general-submit')) {
-                       set_pconfig(local_user(), 'system', 'no_intelligent_shortening', $_POST['no_intelligent_shortening']);
+                       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'] : '');
@@ -751,6 +762,25 @@ function settings_content(&$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 .= '</div>';
 
+               $checked = ((get_pconfig(local_user(), 'system', 'ostatus_autofriend')) ? ' checked="checked" ' : '');
+
+               $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 .= '<input id="snautofollow-checkbox" type="checkbox" name="snautofollow" value="1" ' . $checked . '/>';
+               $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>';
+
+               /*
+               // Deactivated by now - it doesn't seem to work reliable
+               $legacy_contact = get_pconfig(local_user(), 'system', 'ostatus_legacy_contact');
+
+               $settings_connectors .= '<div id="legacy-contact-wrapper" class="field input">';
+               $settings_connectors .= '<label id="legacy-contact-label" for="snautofollow-checkbox">'. t('Your legacy GNU Social account'). '</label>';
+               $settings_connectors .= '<input id="legacy-contact-checkbox" name="legacy_contact" value="'.$legacy_contact.'"/>';
+               $settings_connectors .= '<span class="field_help">'.t('If you enter your old GNU Social/Statusnet account name here (in the format user@domain.tld), your contacts will be added automatically. The field will be emptied when done.').'</span>';
+               $settings_connectors .= '</div>';
+               */
+
                $settings_connectors .= '<div class="settings-submit-wrapper" ><input type="submit" name="general-submit" class="settings-submit" value="' . t('Save Settings') . '" /></div>';
 
                $settings_connectors .= '</div><div class="clear"></div>';
@@ -759,7 +789,7 @@ function settings_content(&$a) {
 
                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 = "";
@@ -916,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,
                ));
 
@@ -1084,21 +1115,17 @@ function settings_content(&$a) {
                info( t('Profile is <strong>not published</strong>.') . EOL );
 
 
-       $subdir = ((strlen($a->get_path())) ? '<br />' . t('or') . ' ' . $a->get_baseurl(true) . '/profile/' . $nickname : '');
+       //$subdir = ((strlen($a->get_path())) ? '<br />' . 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 <strong>'%s'</strong> 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'),
@@ -1163,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, ''),
@@ -1207,9 +1234,7 @@ function settings_content(&$a) {
                '$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' => t('Activate desktop notifications'),
-                '$desktop_notifications_note' => t('Note: This is an experimental feature, as being not supported by each browser'),
-                '$desktop_notifications_success_message' => t('You will now receive desktop 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'),
                                                                        get_pconfig(local_user(),'system','email_textonly'),