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 02-21-2012, 07:29 PM
Goatpod's Avatar
Goatpod Goatpod is offline
 
Join Date: Oct 2005
Posts: 64
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Using a variable in a plug in

Hello, hope someone can help with this problem.

I've created a plug in that calls on an ebay api script (phpBay Pro) to add Ebay listings underneath a product review. The review mod. is TedS' wonderful Product Review Forums ? Research, Reviews & Comparisons and I'm trying to reuse one of its variables: vb:raw product.mfrg.

Everything works fine if a keyword is substituted for the vb:raw product.mfrg variable in the plugin; but I'm lost when it comes to what should be the right syntax to enter so that the correct keyword appears (which is the title as defined by the review mod.).

The plugin code is:
Code:
ob_start();
require_once("./phpbay/ebay.php");
phpBayAPI("{(vb:raw product.mfrg)}", "5", "", "", "", false);
$php_include = ob_get_contents();
ob_end_clean();
vB_Template::preRegister('prodforums_product_details',array('php_include' => $php_include));
Thanks for any help that can be offered.

Dave
Reply With Quote
  #2  
Old 02-21-2012, 08:58 PM
kh99 kh99 is offline
 
Join Date: Aug 2009
Location: Maine
Posts: 13,185
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

You would want to use $product[mfrg] in plugin code, but you might find that it's not set, depending on what hook location you use and where the mod actually sets the value.
Reply With Quote
  #3  
Old 02-21-2012, 09:48 PM
Goatpod's Avatar
Goatpod Goatpod is offline
 
Join Date: Oct 2005
Posts: 64
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks KH99. I'm currently using the global_start hook, but open to suggestions as to what may be a better hook to use. Have you any pointers as to where I should be looking for where the mod sets the value?
Reply With Quote
  #4  
Old 02-21-2012, 10:38 PM
kh99 kh99 is offline
 
Join Date: Aug 2009
Location: Maine
Posts: 13,185
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I see the template is prodforums_product_details, so you'd have to find where render() is called for that template. It will be a section of code something like:

Code:
$templater = vB_Template::create('prodforums_product_details');
    $templater->register('my_var', $my_var);
    /// etc, etc
    $templater->render();

So probably $product is set to something somwhere around there, and your code would have to be after that. If it's completely custom code it's possible there is no hook, in which case you might have to edit the code.
Reply With Quote
  #5  
Old 03-10-2012, 12:15 AM
Goatpod's Avatar
Goatpod Goatpod is offline
 
Join Date: Oct 2005
Posts: 64
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Hi kh99, thanks again for repsonding.

I'm still nocking my head against the wall with this one. I've found:

Code:
// show product display
					$templater = vB_Template::create('prodforums_product_details');
					$templater->register('product', $product);
					$templater->register('prodforums_stars', $prodforums_stars);
					$template_hook['showthread_above_posts'] .= $templater->render();
The code is in the product's .xml file.

I've been trying many different ways to get it to work in the plug in without success, could you let me know the correct syntax that should appear in the plugin in order to get this variable to appear?

Here's my last attempt:

Code:
ob_start();
require_once("./phpbay/ebay.php");
$keyword = $product['product'];
phpBayAPI($keyword, "5", "", "", "", false);
echo "The value of the vb variable = " . $keyword . "<br />\r\n";
$php_include = ob_get_contents();
ob_end_clean();
vB_Template::preRegister('prodforums_product_details',array('php_include' => $php_include));
There's an $keyword/echo included just to check to see if the variable is appearing.
When the $product['product'] variable is replaced with a sample keyword the whole thing works perfectly.

Hope this makes some sense!

Many thanks, Dave
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 09:41 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.03566 seconds
  • Memory Usage 2,197KB
  • 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_code
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (5)post_thanks_box
  • (5)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (5)post_thanks_postbit_info
  • (5)postbit
  • (5)postbit_onlinestatus
  • (5)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