Go Back   vb.org Archive > Community Discussions > Modification Requests/Questions (Unpaid)
  #1  
Old 04-14-2011, 06:31 PM
Nocturnal222 Nocturnal222 is offline
 
Join Date: Dec 2006
Posts: 121
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Ip Restriction

Restrict supermoderators from searching IPs of the SuperAdmin / Administrator

PHP Code:
// ############################# start do ips #########################
if ($_REQUEST['do'] == 'doips')
{
    if (
function_exists('set_time_limit') AND !SAFEMODE)
    {
        @
set_time_limit(0);
    }

    
$vbulletin->input->clean_array_gpc('r', array(
        
'depth'     => TYPE_INT,
        
'username'  => TYPE_STR,
        
'ipaddress' => TYPE_NOHTML,
    ));

    if ((
$vbulletin->GPC['username'] OR $vbulletin->GPC['userid'] OR $vbulletin->GPC['ipaddress']) AND $_POST['do'] != 'doips')
    {
        
// we're doing a search of some type, that's not submitted via post,
        // so we need to verify the CP sessionhash
        
verify_cp_sessionhash();
    }

    if (empty(
$vbulletin->GPC['depth']))
    {
        
$vbulletin->GPC['depth'] = 1;
    }

    if (
$vbulletin->GPC['username'])
    {
        
$getuserid $db->query_first("
            SELECT userid
            FROM " 
TABLE_PREFIX "user
            WHERE username = '" 
$db->escape_string(htmlspecialchars_uni($vbulletin->GPC['username'])) . "'
        "
);
        
$userid intval($getuserid['userid']);

        
$userinfo fetch_userinfo($userid);
        if (!
$userinfo)
        {
            
print_stop_message('invalid_user_specified');
        }
    }
    else if (
$vbulletin->GPC['userid'])
    {
        
$userid $vbulletin->GPC['userid'];
        
$userinfo fetch_userinfo($userid);
        if (!
$userinfo)
        {
            
print_stop_message('invalid_user_specified');
        }
        
$vbulletin->GPC['username'] = unhtmlspecialchars($userinfo['username']);
    }
    else
    {
        
$userid 0;
    }

    if (
$vbulletin->GPC['ipaddress'] OR $userid)
    {
        if (
$vbulletin->GPC['ipaddress'])
        {
            
print_form_header('''');
            
print_table_header(construct_phrase($vbphrase['ip_address_search_for_ip_address_x'], $vbulletin->GPC['ipaddress']));
            
$hostname = @gethostbyaddr($vbulletin->GPC['ipaddress']);
            if (!
$hostname OR $hostname == $vbulletin->GPC['ipaddress'])
            {
                
$hostname $vbphrase['could_not_resolve_hostname'];
            }
            
print_description_row("<div style=\"margin-" vB_Template_Runtime::fetchStyleVar('left') . ":20px\"><a href=\"usertools.php?" $vbulletin->session->vars['sessionurl'] . "do=gethost&amp;ip=" $vbulletin->GPC['ipaddress'] . "\">" $vbulletin->GPC['ipaddress'] . "</a> : <b>$hostname</b></div>");

            
$results construct_ip_usage_table($vbulletin->GPC['ipaddress'], 0$vbulletin->GPC['depth']);
            
print_description_row($vbphrase['post_ip_addresses'], false2'thead');
            
print_description_row($results $results $vbphrase['no_matches_found']);

            
$results construct_ip_register_table($vbulletin->GPC['ipaddress'], 0$vbulletin->GPC['depth']);
            
print_description_row($vbphrase['registration_ip_addresses'], false2'thead');
            
print_description_row($results $results $vbphrase['no_matches_found']);

            
print_table_footer();
        }

        if (
$userid)
        {
            
print_form_header('''');
            
print_table_header(construct_phrase($vbphrase['ip_address_search_for_user_x'], htmlspecialchars_uni($vbulletin->GPC['username'])));
            
print_label_row($vbphrase['registration_ip_address'], ($userinfo['ipaddress'] ? $userinfo['ipaddress'] : $vbphrase['n_a']));

            
$results construct_user_ip_table($userid0$vbulletin->GPC['depth']);
            
print_description_row($vbphrase['post_ip_addresses'], false2'thead');
            
print_description_row($results $results $vbphrase['no_matches_found']);

            if (
$userinfo['ipaddress'])
            {
                
$results construct_ip_register_table($userinfo['ipaddress'], $userid$vbulletin->GPC['depth']);
            }
            else
            {
                
$results '';
            }
            
print_description_row($vbphrase['registration_ip_addresses'], false2'thead');
            
print_description_row($results $results $vbphrase['no_matches_found']);

            
print_table_footer();
        }
    }

    
print_form_header('usertools''doips');
    
print_table_header($vbphrase['search_ip_addresses']);
    
print_input_row($vbphrase['find_users_by_ip_address'], 'ipaddress'$vbulletin->GPC['ipaddress'], 0);
    
print_input_row($vbphrase['find_ip_addresses_for_user'], 'username'$vbulletin->GPC['username']);
    
print_select_row($vbphrase['depth_to_search'], 'depth', array(=> 1=> 2), $vbulletin->GPC['depth']);
    
print_submit_row($vbphrase['find']);

how can i add a code where if they search user under admin group, they cannot do depth 2 search or view more users on the ip address / restrict ip search of admins
Reply With Quote
  #2  
Old 04-14-2011, 07:06 PM
borbole's Avatar
borbole borbole is offline
 
Join Date: Jan 2010
Posts: 2,559
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Try this:

PHP Code:
if ($_REQUEST['do'] == 'doips' AND $vbulletin->userinfo['usergroupid'] == 5)
{
 
print_stop_message('no_permission_ips');

This will prevent Super Moderators from using the Search Ip option at the Mod CP. 5 is the default if for the Super Moderators, if you are using a custom id for that group, you should replace 5 with that custom id.
Reply With Quote
  #3  
Old 04-15-2011, 05:26 AM
Nocturnal222 Nocturnal222 is offline
 
Join Date: Dec 2006
Posts: 121
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by borbole View Post
Try this:

PHP Code:
if ($_REQUEST['do'] == 'doips' AND $vbulletin->userinfo['usergroupid'] == 5)
{
 
print_stop_message('no_permission_ips');

This will prevent Super Moderators from using the Search Ip option at the Mod CP. 5 is the default if for the Super Moderators, if you are using a custom id for that group, you should replace 5 with that custom id.
thank you sir.
how about, they can do ips but if they will search ip of usergroupid 6 they will get a message as print_stop_message('no_permission_ips');


thank you
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 01:48 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.03935 seconds
  • Memory Usage 2,238KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)ad_showthread_firstpost
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (3)bbcode_php
  • (1)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (3)post_thanks_box
  • (3)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (3)post_thanks_postbit_info
  • (3)postbit
  • (3)postbit_onlinestatus
  • (3)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete