Go Back   vb.org Archive > vBulletin 3 Discussion > vB3 Programming Discussions
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools Display Modes
  #1  
Old 05-27-2004, 01:29 PM
Harlequin's Avatar
Harlequin Harlequin is offline
 
Join Date: Aug 2003
Posts: 78
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default $bbuserinfo[buddylist] return -> check -> OK.

Hey guys.

I know I haven't posted in awhile, but certainly due to all of your helpful efforts I've been coding tidbits in a frenzy. So when I tried this out, I collected (what I thought to be) a logical idea in my head.. and when I tried to code it, ultimately it failed (several times.)

Essentially, I've been attempting to use $bbuserinfo[buddylist] to pull the buddylist for a person viewing a page and if $bbuserinfo[userid] = a user in the buddylist of the page owner and the buddylist of the page viewer = the page owner userid, then display something on the page.

It's just a check to verify that both of you are buddies of each other in order to perform an event.

At any rate, is there any simplistic way to perform this? I had a query or two, a str_replace or two, and a bunch of if's in my trial and errors..
Reply With Quote
  #2  
Old 05-27-2004, 06:11 PM
Xenon's Avatar
Xenon Xenon is offline
 
Join Date: Oct 2001
Location: Bavaria
Posts: 12,878
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

hmm, ok, lets say you have $userinfo as the userinfo array of the user who belongs to that page, and of course $bbuserinfo as the array for the browsing user.

so all you have to do now is to use that code (taken from fetch_online_status):
PHP Code:
if ($bbuserinfo['buddylist'] = trim($bbuserinfo['buddylist']))
{
    
$bb_buddylist preg_split('/\s+/'$bbuserinfo['buddylist'], -1PREG_SPLIT_NO_EMPTY);
}
else
{
    
$bb_buddylist = array();
}
if (
$userinfo['buddylist'] = trim($userinfo['buddylist']))
{
    
$user_buddylist preg_split('/\s+/'$bbuserinfo['buddylist'], -1PREG_SPLIT_NO_EMPTY);
}
else
{
    
$user_buddylist = array();

and then use that conditon:
PHP Code:
if (in_array($userinfo['userid'], $bb_buddylist) AND in_array($bbuserinfo['userid'], $user_buddylist))
{
    
your special code here

Reply With Quote
  #3  
Old 05-27-2004, 06:22 PM
Harlequin's Avatar
Harlequin Harlequin is offline
 
Join Date: Aug 2003
Posts: 78
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I'll definitely give that a try, Xenon. Thank you so much.

preg_split and array()/in_array are two things I haven't played with all of that much because I haven't really found the need (until now?)

I guess there's no time like the present to start learnin'.
Reply With Quote
  #4  
Old 05-27-2004, 07:06 PM
Xenon's Avatar
Xenon Xenon is offline
 
Join Date: Oct 2001
Location: Bavaria
Posts: 12,878
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

You're welcome

Yeah, exactly my thoughts, everytime is the best time to learn
Reply With Quote
Reply


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 08:45 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.03693 seconds
  • Memory Usage 2,192KB
  • 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
  • (2)bbcode_php
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (4)post_thanks_box
  • (4)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (4)post_thanks_postbit_info
  • (4)postbit
  • (4)postbit_onlinestatus
  • (4)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