Seditio Source
Root |
./othercms/b2evolution_7.2.3/inc/users/views/_display.form.php
<?php
/**
 * This file is part of the evoCore framework - {@link http://evocore.net/}
 * See also {@link https://github.com/b2evolution/b2evolution}.
 *
 * @license GNU GPL v2 - {@link http://b2evolution.net/about/gnu-gpl-license}
 *
 * @copyright (c)2009-2016 by Francois Planque - {@link http://fplanque.com/}
 * Parts of this file are copyright (c)2009 by The Evo Factory - {@link http://www.evofactory.com/}.
 *
 * @package evocore

 */
if( !defined('EVO_MAIN_INIT') ) die( 'Please, do not access this page directly.' );

/**
 * @var GeneralSettings
 */
global $Settings;

global
$collections_Module;

$Form = new Form( NULL, 'settings_checkchanges' );
$Form->begin_form( 'fform', '',
   
// enable all form elements on submit (so values get sent):
   
array( 'onsubmit'=>'var es=this.elements; for( var i=0; i < es.length; i++ ) { es[i].disabled=false; };' ) );

   
$Form->add_crumb( 'display' );
   
$Form->hidden( 'ctrl', 'display' );
   
$Form->hidden( 'action', 'update' );
   
$Form->hidden( 'tab', 'display' );

    if( isset(
$GLOBALS['files_Module']) )
    {
       
load_funcs( 'files/model/_image.funcs.php' );
       
$params['force_keys_as_values'] = true;
    }

// --------------------------------------------

$Form->begin_fieldset( TB_('Profile pictures').get_manual_link('profile-picture-settings') );

   
$Form->checkbox_input( 'use_gravatar', $Settings->get('use_gravatar'), TB_('Use gravatar'), array( 'note' => TB_('Fall back to Gravatar if a user has not uploaded a profile picture.') ) );

   
$default_avatar_unknown = get_default_avatar_url();
   
$default_avatar_men = get_default_avatar_url( 'M' );
   
$default_avatar_women = get_default_avatar_url( 'F' );
   
$default_images_info = '<br />'.TB_('For unknown gender').': <a href="'.$default_avatar_unknown.'" target="_blank">'.$default_avatar_unknown.'</a>';
   
$default_images_info .= '<br />'.TB_('For men').': <a href="'.$default_avatar_men.'" target="_blank">'.$default_avatar_men.'</a>';
   
$default_images_info .= '<br />'.TB_('For women').': <a href="'.$default_avatar_women.'" target="_blank">'.$default_avatar_women.'</a>';
   
$Form->radio( 'default_gravatar', $Settings->get('default_gravatar'),
        array( array(
'b2evo', TB_('Default image'), $default_images_info ),
                    array(
'', 'Gravatar' ),
                    array(
'identicon', 'Identicon' ),
                    array(
'monsterid', 'Monsterid' ),
                    array(
'wavatar', 'Wavatar' ),
                    array(
'retro', 'Retro' ),
        ),
TB_('Default gravatars'), true, TB_('Gravatar users can choose to set up a unique icon for themselves, and if they don\'t, they will be assigned a default image.') );

$Form->end_fieldset();

// --------------------------------------------

$Form->begin_fieldset( TB_('Username display options').get_manual_link('user-username-display-options') );

   
$Form->radio( 'username_display', $Settings->get( 'username_display' ),
        array( array(
'login', TB_('Usernames/Logins'), TB_('Most secure option') ),
                    array(
'name', TB_('Friendly names (Nickname or Firstname if available)'), TB_('WARNING: this may allow users to fake their identity') ),
        ),
TB_('What to display'), true );

       
$Form->checkbox_input( 'gender_colored', $Settings->get('gender_colored'), TB_('Display gender in back-office'), array( 'note'=>TB_('Use colored usernames to differentiate men & women.') ) );

$Form->end_fieldset();

// --------------------------------------------

$Form->begin_fieldset( TB_('Username display in back-office').get_manual_link('user-username-display-backoffice')  );

   
$Form->checkbox_input( 'bubbletip', $Settings->get('bubbletip'), TB_('Username bubble tips'), array( 'note'=>TB_('Check to enable bubble tips on usernames') ) );

    if( isset(
$GLOBALS['files_Module']) )
    {
       
$Form->select_input_array( 'bubbletip_size_admin', $Settings->get('bubbletip_size_admin') , get_available_thumb_sizes(), TB_('Bubble tip image format'), '', $params );
    }

$Form->end_fieldset();

// --------------------------------------------

$Form->begin_fieldset( TB_('Username display for logged-in users (front-office)').get_manual_link('user-username-display-frontoffice') );

   
$Form->radio( 'user_url_loggedin', $Settings->get( 'user_url_loggedin' ),
        array( array(
'page', TB_('Always user page'), '' ),
                    array(
'url', TB_('User website if available (fallback to user page)'), '' ),
        ),
TB_('Link to'), true );

   
$Form->info( TB_('Note'), TB_('Enable bubble tips in each skin\'s settings.') );

    if( isset(
$GLOBALS['files_Module']) )
    {
       
$Form->select_input_array( 'bubbletip_size_front', $Settings->get('bubbletip_size_front') , get_available_thumb_sizes(), TB_('Bubble tip image format'), '', $params );
    }

$Form->end_fieldset();

// --------------------------------------------

$Form->begin_fieldset( TB_('Username display for anonymous user (front-office)').get_manual_link('user-username-display-anonymous') );

   
$Form->radio( 'user_url_anonymous', $Settings->get( 'user_url_anonymous' ),
        array( array(
'page', TB_('Always user page (if allowed)'), '' ),
                    array(
'url', TB_('User website if available (fallback to user page)'), '' ),
        ),
TB_('Link to'), true );

   
// Allow anonymous users to see the user display ( disp=user )
   
$Form->checkbox_input( 'allow_anonymous_user_profiles', $Settings->get('allow_anonymous_user_profiles'), TB_('Allow to see user profiles') );

   
$Form->info( TB_('Note'), TB_('Enable bubble tips in each skin\'s settings.') );

   
$Form->checkbox_input( 'bubbletip_anonymous', $Settings->get('bubbletip_anonymous'), TB_('Allow to see bubbletips'), array( 'note'=>TB_('Check to enable bubble tips on usernames') ) );

    if( isset(
$GLOBALS['files_Module']) )
    {
       
$Form->select_input_array( 'bubbletip_size_anonymous', $Settings->get('bubbletip_size_anonymous') , get_available_thumb_sizes(), TB_('Bubble tip image format'), '', $params );
    }

   
$Form->textarea( 'bubbletip_overlay', $Settings->get( 'bubbletip_overlay' ), 5, TB_('Image overlay text'), '', 20 );

$Form->end_fieldset();


// --------------------------------------------

$Form->begin_fieldset( TB_('Other permissions for anonymous users').get_manual_link('anonymous-users-permissions') );

   
$Form->checkbox_input( 'allow_anonymous_user_list', $Settings->get('allow_anonymous_user_list'), TB_('Allow to see user list') );

   
$user_level_params = array();
    if( !
$Settings->get('allow_anonymous_user_list') && ! $Settings->get('allow_anonymous_user_profiles') )
    {
// Disable the user groups levels interval because the users pages are not available for anonymous users
       
$user_level_params['disabled'] = 'disabled';
    }
   
$Form->begin_line( TB_('Show only User Groups Levels'), 'allow_anonymous_user_level_min' );
       
$Form->text_input( 'allow_anonymous_user_level_min', $Settings->get('allow_anonymous_user_level_min'), 2, TB_('from'), '', $user_level_params );
       
$Form->text_input( 'allow_anonymous_user_level_max', $Settings->get('allow_anonymous_user_level_max'), 2, TB_('to'), '', $user_level_params );
   
$Form->end_line();

$Form->end_fieldset();

// --------------------------------------------

if( check_user_perm( 'users', 'edit' ) )
{
   
$Form->end_form( array( array( 'submit', 'submit', TB_('Save Changes!'), 'SaveButton' ) ) );
}

?>
<script>
jQuery( '#allow_anonymous_user_list, #allow_anonymous_user_profiles' ).click( function()
{
    if( ! jQuery( '#allow_anonymous_user_list' ).is( ':checked' ) && ! jQuery( '#allow_anonymous_user_profiles' ).is( ':checked' ) )
    { // Disable the user groups levels interval, If the users pages are not available for anonymous users
        jQuery( '#allow_anonymous_user_level_min' ).attr( 'disabled', 'disabled' );
        jQuery( '#allow_anonymous_user_level_max' ).attr( 'disabled', 'disabled' );
    }
    else
    { // Enable the user groups levels interval
        jQuery( '#allow_anonymous_user_level_min' ).removeAttr( 'disabled' );
        jQuery( '#allow_anonymous_user_level_max' ).removeAttr( 'disabled' );
    }
} );
</script>