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

Reply
 
Thread Tools Display Modes
  #1  
Old 03-30-2011, 11:36 AM
cheaton cheaton is offline
 
Join Date: Oct 2009
Location: Moskow
Posts: 2
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Help. Where I can hook to show different post text depending on user ID?

Please help me to solve my problem ...

I am writing a script that handles my own bbtag ([test_results] for example) in messages that are visible to all users. But I can't find right place to analyze can user view text plased inside tag ...?

This is a handler for [test_results]xxx[/test_results] tag, I am setting this hook on bbcode_create

PHP Code:
if (function_exists("handle_testResults") == false

  function 
handle_testResults(&$parser$param
  { 
   global 
$vbulletin

if (
$vbulletin->userinfo['userid'] == 2)
{
return 
"HERE TEXT WICH THIS USER CAN VIEW";
}
else
{
return 
"YOU CANNOT VIEW THIS MESSAGE!";

  } 

  
$this->tag_list['no_option']['test_results']['callback'] = 'handle_external'
  
$this->tag_list['no_option']['test_results']['external_callback'] = 'handle_testResults'

But this way doesn't change message for guests for example, it show "HERE TEXT WICH THIS USER CAN VIEW" for all users.

Help me to find right plase for this code, so I can show custom text for some users or groups, and other users. Also where I can plase same code, to prevent users to view this text if user will click "Answer with quotation" button in reply text...

Sorry for my bad english and thanks for your help...
Reply With Quote
  #2  
Old 03-30-2011, 01:49 PM
Lynne's Avatar
Lynne Lynne is offline
 
Join Date: Sep 2004
Location: California/Idaho
Posts: 41,180
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

If you are in debug mode, then you get a list of the hooks the page goes through on the bottom of the page. I'd try a few of the hook locations around where the postbit_display_* hooks are:
Code:
showthread_query
bbcode_fetch_tags
bbcode_create
showthread_postbit_create
postbit_factory
postbit_display_start
reputation_image
bbcode_parse_start
postbit_imicons
postbit_display_complete
Reply With Quote
  #3  
Old 03-30-2011, 02:27 PM
cheaton cheaton is offline
 
Join Date: Oct 2009
Location: Moskow
Posts: 2
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Lynne View Post
If you are in debug mode, then you get a list of the hooks the page goes through on the bottom of the page. I'd try a few of the hook locations around where the postbit_display_* hooks are:
Thank you for your advice. Looks like I've set hooks right before, looks like my problem in appears, because this code doesn't work

if (function_exists("handle_testResults") == false)
{
function handle_testResults(&$parser, $param)
{
global $post, $vbulletin;


echo "111111111111111111111111111111";
return "222222222222222222222222";
}
}

$this->tag_list['no_option']['test_results']['callback'] = 'handle_external';
$this->tag_list['no_option']['test_results']['external_callback'] = 'handle_testResults';

I think here I am using incorrect call to my function, wich must return "222222222222222222222222" instead text inside tag...

Actualy bbcode_create works, but it display same result for all users...:-( How I can process post only if it have [test_results] tag for each user with his own result? Just I don't want to parse all messages in thread, I am trying to make code, wich will work only with messages with custom tag. Thanks.
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:12 PM.


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.03792 seconds
  • Memory Usage 2,190KB
  • Queries Executed 13 (?)
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
  • (1)bbcode_code
  • (1)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_postinfo_query
  • fetch_postinfo
  • 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