Go Back   vb.org Archive > vBulletin 3 Discussion > vB3 Programming Discussions
  #1  
Old 05-22-2008, 04:57 PM
jarosciak jarosciak is offline
 
Join Date: Apr 2005
Location: Toronto
Posts: 90
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Condition for 'Minimum Time Between Searches'

Great day everyone, I need some help.

Currently to take off the load from my busy forum, I've setup vbulletin's "Minimum Time Between Searches" to be 60 seconds.

What I would like to do, is to switch it to 10 seconds, but only to those users with paid subscription. In this case usergroup number: 9.

How do I implement this simple condition?

Thanks,
Joe
Reply With Quote
  #2  
Old 05-22-2008, 05:02 PM
Medina Medina is offline
 
Join Date: Oct 2006
Location: the Netherlands
Posts: 181
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

<if condition="is_member_of($vbulletin->userinfo, 7, 8, 9)">


change the numbers to the the usergroup you are using.
Reply With Quote
  #3  
Old 05-22-2008, 05:31 PM
jarosciak jarosciak is offline
 
Join Date: Apr 2005
Location: Toronto
Posts: 90
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Actually this I knew, but can someone please point me to where the search delay is specified and where I could use this condition?
Reply With Quote
  #4  
Old 05-22-2008, 05:48 PM
Medina Medina is offline
 
Join Date: Oct 2006
Location: the Netherlands
Posts: 181
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

You didn`t ask which template you have to add/edit for your request.

But I think you have to search in the template "navbar" or you have to edit/add a plugin.


anyway, goodluck.
Reply With Quote
  #5  
Old 05-22-2008, 08:52 PM
MoT3rror MoT3rror is offline
 
Join Date: Mar 2007
Posts: 423
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Here is the code in search.php that checks the time in between searches.
PHP Code:
if (in_array($_REQUEST['do'], array('intro''showresults''doprefs')) == false)
{
    
// get last search for this user and check floodcheck
    
if ($prevsearch $db->query_first("
        SELECT searchid, dateline
        FROM " 
TABLE_PREFIX "search AS search
        WHERE " 
iif(!$vbulletin->userinfo['userid'], "ipaddress ='" $db->escape_string(IPADDRESS) . "'""userid = " $vbulletin->userinfo['userid']) . "
        ORDER BY dateline DESC LIMIT 1
    "
))
    {
        if ((
$timepassed TIMENOW $prevsearch['dateline']) < $vbulletin->options['searchfloodtime'] AND $vbulletin->options['searchfloodtime'] != AND !($permissions['adminpermissions'] & $vbulletin->bf_ugp_adminpermissions['cancontrolpanel']) AND !can_moderate())
        {
            if (
$_REQUEST['do'] == 'process')
            {
                
$errors[] = array('searchfloodcheck'$vbulletin->options['searchfloodtime'], ($vbulletin->options['searchfloodtime'] - $timepassed));
            }
            else
            {
                eval(
standard_error(fetch_error('searchfloodcheck'$vbulletin->options['searchfloodtime'], ($vbulletin->options['searchfloodtime'] - $timepassed))));
            }
        }
    }

You will either have to modify this code or before this change the value of $vbulletin->options['searchfloodtime'] before this code with a plugin. You can use the is_member_of function to check if the user is in the group that you need.

PHP Code:
if(is_member_of($vbulletin->userinfo123))
{
$vbulletin->options['searchfloodtime'] = 10;

This is a example code that might work to change the value.
Reply With Quote
  #6  
Old 05-24-2008, 12:22 PM
jarosciak jarosciak is offline
 
Join Date: Apr 2005
Location: Toronto
Posts: 90
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Hi, I am going to test it out now. Thank you so much for your time, very appreciated.
Joe

--------------- Added [DATE]1211643584[/DATE] at [TIME]1211643584[/TIME] ---------------

Great, this is how I've got it working for usergroup number 9.

LOOK FOR:

PHP Code:
if (($timepassed TIMENOW $prevsearch['dateline']) < $vbulletin->options['searchfloodtime'] AND $vbulletin->options['searchfloodtime'] != AND !($permissions['adminpermissions'] & $vbulletin->bf_ugp_adminpermissions['cancontrolpanel']) AND !can_moderate()) 


BEFORE ADD:

PHP Code:
If(is_member_of($vbulletin->userinfo9)){$vbulletin->options['searchfloodtime'] = '0';} 

Works like a charm, group number 9, has no time limit now on searches.
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:22 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.03749 seconds
  • Memory Usage 2,222KB
  • 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
  • (4)bbcode_php
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (6)post_thanks_box
  • (6)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (6)post_thanks_postbit_info
  • (6)postbit
  • (6)postbit_onlinestatus
  • (6)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