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 07-09-2010, 11:40 AM
James Birkett James Birkett is offline
 
Join Date: Jun 2009
Posts: 633
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Plugin on fetch_musername

I have a plugin running on the fetch_musername hook that changes the username mark-up depending on a selection in their profile.

The plugin is:
PHP Code:
if((!empty($user['field14'])) && ($user['displaygroupid'] == 40)){
    switch(
$user['field14']){
    case 
'Ice Blue':
    
$user['musername'] = "<span style=\"color:#74BBFB; font-weight:bold;\">".$user['username']."</span>";
    break;
    case 
'Tree Green':
    
$user['musername'] = "<span style=\"color:#9CDE7B; font-weight:bold;\">".$user['username']."</span>";
    break;
    case 
'Orange':
    
$user['musername'] = "<span style=\"color:#F38330; font-weight:bold;\">".$user['username']."</span>";
    break;
    case 
'Pink':
    
$user['musername'] = "<span style=\"color:#EA3884; font-weight:bold;\">".$user['username']."</span>";
    break;
    case 
'Purple':
    
$user['musername'] = "<span style=\"color:#B290C0; font-weight:bold;\">".$user['username']."</span>";
    break;
    }

Now, this plugin works around some areas (profile, posts) but it fails to work on things like visitor messaging and the who's online display block.

Has anyone got any ideas how to fix this?

I'd take a guess that it's because I'm using the $user variable, that isn't globally available... so perhaps I would have to change the conditional too...

Would I have to declare the $post['fieldX'] and $bbuserinfo['fieldX'] in there too?

EDIT: I tried this code too, and it failed to work:
PHP Code:
if((!empty($user['field14'])) && ($user['displaygroupid'] == 40)){
    switch(
$user['field14']){
        case 
'Ice Blue':
        
$user['musername'] = "<span style=\"color:#74BBFB; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Tree Green':
        
$user['musername'] = "<span style=\"color:#9CDE7B; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Orange':
        
$user['musername'] = "<span style=\"color:#F38330; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Pink':
        
$user['musername'] = "<span style=\"color:#EA3884; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Purple':
        
$user['musername'] = "<span style=\"color:#B290C0; font-weight:bold;\">".$user['username']."</span>";
        break;
    }
    switch(
$post['field14']){
        case 
'Ice Blue':
        
$user['musername'] = "<span style=\"color:#74BBFB; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Tree Green':
        
$user['musername'] = "<span style=\"color:#9CDE7B; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Orange':
        
$user['musername'] = "<span style=\"color:#F38330; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Pink':
        
$user['musername'] = "<span style=\"color:#EA3884; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Purple':
        
$user['musername'] = "<span style=\"color:#B290C0; font-weight:bold;\">".$user['username']."</span>";
        break;
    }
    switch(
$bbuserinfo['field14']){
        case 
'Ice Blue':
        
$user['musername'] = "<span style=\"color:#74BBFB; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Tree Green':
        
$user['musername'] = "<span style=\"color:#9CDE7B; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Orange':
        
$user['musername'] = "<span style=\"color:#F38330; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Pink':
        
$user['musername'] = "<span style=\"color:#EA3884; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Purple':
        
$user['musername'] = "<span style=\"color:#B290C0; font-weight:bold;\">".$user['username']."</span>";
        break;
    }

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

Bump.

Sorry guys, this is something I've been looking at for ages and I can't debug it
Reply With Quote
  #2  
Old 07-10-2010, 11:10 PM
BirdOPrey5's Avatar
BirdOPrey5 BirdOPrey5 is offline
Senior Member
 
Join Date: Jun 2008
Location: New York
Posts: 10,610
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

$bbuserinfo is global so it should work anywhere... My guess is in the locations it's not working is because the hook isn't called.
Reply With Quote
  #3  
Old 07-11-2010, 10:03 AM
James Birkett James Birkett is offline
 
Join Date: Jun 2009
Posts: 633
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I've got debug mode on and the hook is called on Forumdisplay and on visitor messages and there's still no change.

I can't use bbuserinfo in the condition because I need to use $user to grab the profile field.
Reply With Quote
  #4  
Old 07-11-2010, 03:30 PM
BirdOPrey5's Avatar
BirdOPrey5 BirdOPrey5 is offline
Senior Member
 
Join Date: Jun 2008
Location: New York
Posts: 10,610
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

$bbuserinfo['filedX'] should pull the profile field X for that user.
Reply With Quote
  #5  
Old 07-11-2010, 04:54 PM
James Birkett James Birkett is offline
 
Join Date: Jun 2009
Posts: 633
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I removed the conditional, leaving my code as:

PHP Code:
if($user['displaygroupid'] == 40){
    switch(
$user['field14']){
        case 
'Ice Blue':
        
$user['musername'] = "<span style=\"color:#74BBFB; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Tree Green':
        
$user['musername'] = "<span style=\"color:#9CDE7B; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Orange':
        
$user['musername'] = "<span style=\"color:#F38330; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Pink':
        
$user['musername'] = "<span style=\"color:#EA3884; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Purple':
        
$user['musername'] = "<span style=\"color:#B290C0; font-weight:bold;\">".$user['username']."</span>";
        break;
    }
    switch(
$post['field14']){
        case 
'Ice Blue':
        
$user['musername'] = "<span style=\"color:#74BBFB; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Tree Green':
        
$user['musername'] = "<span style=\"color:#9CDE7B; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Orange':
        
$user['musername'] = "<span style=\"color:#F38330; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Pink':
        
$user['musername'] = "<span style=\"color:#EA3884; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Purple':
        
$user['musername'] = "<span style=\"color:#B290C0; font-weight:bold;\">".$user['username']."</span>";
        break;
    }
    switch(
$bbuserinfo['field14']){
        case 
'Ice Blue':
        
$user['musername'] = "<span style=\"color:#74BBFB; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Tree Green':
        
$user['musername'] = "<span style=\"color:#9CDE7B; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Orange':
        
$user['musername'] = "<span style=\"color:#F38330; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Pink':
        
$user['musername'] = "<span style=\"color:#EA3884; font-weight:bold;\">".$user['username']."</span>";
        break;
        case 
'Purple':
        
$user['musername'] = "<span style=\"color:#B290C0; font-weight:bold;\">".$user['username']."</span>";
        break;
    }

Yet it still doesn't display on forumdisplay, forumhome, visitor messaging etc.

If the $bbuserinfo variable worked, it should work on the switch, yet it doesn't.
Reply With Quote
  #6  
Old 07-11-2010, 05:31 PM
BirdOPrey5's Avatar
BirdOPrey5 BirdOPrey5 is offline
Senior Member
 
Join Date: Jun 2008
Location: New York
Posts: 10,610
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Sorry, I didn't see you tried $bbuserinfo first. I wish there was a list of variables and where they are available someplace.
Reply With Quote
  #7  
Old 07-11-2010, 05:36 PM
James Birkett James Birkett is offline
 
Join Date: Jun 2009
Posts: 633
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Yeah, the debug mode should list the variables being called on that page.
Reply With Quote
  #8  
Old 07-12-2010, 10:32 PM
James Birkett James Birkett is offline
 
Join Date: Jun 2009
Posts: 633
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Bump (again).

I'm baffled by this one, can anyone else share an insight.

The hook is being called on all of the pages that I require.
Reply With Quote
  #9  
Old 07-13-2010, 08:53 AM
Marco van Herwaarden Marco van Herwaarden is offline
 
Join Date: Jul 2004
Posts: 25,415
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Which username on a page like for example forumdisplay would not show?
Reply With Quote
  #10  
Old 07-13-2010, 09:13 AM
James Birkett James Birkett is offline
 
Join Date: Jun 2009
Posts: 633
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

The username of the user who filled the condition ($user['displaygroupid'] == 40).

I thought I had covered all options by using $post, $user, $bbuserinfo - apparently not!
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 07:52 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.04211 seconds
  • Memory Usage 2,320KB
  • 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)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (1)pagenav_pagelink
  • (10)post_thanks_box
  • (10)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (10)post_thanks_postbit_info
  • (10)postbit
  • (10)postbit_onlinestatus
  • (10)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
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete