Go Back   vb.org Archive > vBulletin 3 Discussion > vB3 Programming Discussions
  #1  
Old 07-03-2006, 01:10 PM
pyro.699 pyro.699 is offline
 
Join Date: Sep 2005
Location: Fredericton, New Brunswic
Posts: 261
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Unknown Function in class_postbit.php

Hello,

I am making a new hack, based off of the ucash and ushop modification from scratch. As you would guess, there is a postbit modification for when the user posts. It will display his/her current points. Here is the plugin that i used:


Hook Location: postbit_display_complete
PHP Code:
$result $vbulletin->db->query_write("SELECT points FROM user WHERE userid = ".$post['userid']."");
while (
$row mysql_fetch_assoc($result))
{
    
$this->post['posts'] .= '<div>'.
$vbphrase['point_name'].': '.$row[points].'
</div>'
;

This avoids template editing.

Now, another portion of my script involves giving out elaborate pm's to users. When you go to view the pm, i get this error message:
Quote:
Originally Posted by http://localhost/mixed/private.php?do=showpm&pmid=1
Fatal error: Call to a member function query_write() on a non-object in X:\xampp\htdocs\mixed\includes\class_postbit.php(2 79) : eval()'d code on line 1
Line 279:
PHP Code:
($hook =& vBulletinHook::fetch_hook('postbit_display_complete')) ? eval($hook) : false
is including the hook 'postbit_display_complete' which is where my plugin is.

I believe that there is something wrong with me adding on to the variable which probably doesn't exist, since its not a post, but a pm. I need a way to tell if it is making a post or viewing a pm!

(also, i do not know what the variable is, inside of $this->X['posts'] to add under the post count of a pm)

If you have any ideas, please let me know!
~Cody Woolaver
Reply With Quote
  #2  
Old 07-03-2006, 02:52 PM
Adrian Schneider's Avatar
Adrian Schneider Adrian Schneider is offline
 
Join Date: Jul 2004
Posts: 2,528
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

This will add a query for each post displayed... (bad idea)

Use $this->registry->db instead of $vbulletin->db, as $vbulletin isn't available inside of classes. Don't use mysql_fetch_array; instead, use $this->registry->fetch_array()

You are probably better off editing the template cache dynamically rather than modifying the post count value, because from the looks of it now this will break your HTML a little...
Reply With Quote
  #3  
Old 02-02-2012, 03:46 PM
tonjohn tonjohn is offline
 
Join Date: Sep 2008
Posts: 27
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Adrian Schneider View Post
This will add a query for each post displayed... (bad idea)
I assume the better idea is to hook showthread_query?

Except in pyro.699's case, there is no need to alter the query or add another as the showthread_query selects all columns from the user table already.
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 08:14 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.06006 seconds
  • Memory Usage 2,181KB
  • 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
  • (2)bbcode_php
  • (2)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