Log in

View Full Version : Having trouble adding a plugin


Addicted2HD
08-19-2008, 12:55 PM
Hi,

I'm following the instructions found at the following link to add a plugin to my forum.
http://www.vbulletin.com/forum/showthread.php?t=173937

I'm trying to add the current poll script found at the following link to the side bar.
http://www.joedolson.com/poll-v2/

I have used the following code in the plugin php code box:
ob_start();
include('../poll/currentpoll.php');
$currentpoll = ob_get_contents();
ob_end_clean();

Then in my sidebar where I want the poll to show up I added:
$currentpoll

When I make the plugin active it kills my board. Kills all styling and tells me I'm not logged in or authorized to view the current thread (which is viewable by anyone).

Here are the contents of currentpoll.php (the file being included in the plugin code)
<?php
require_once("jdp_functions.php");
require_once("mysql_connect.php");
// Define this poll
$pollname = "default_poll"; // Name of referenced poll.
global $formpath;
$formpath = "/poll"; // Absolute path to poll. No final slash.
global $ctype;
$ctype = "p"; // chart type (regular pie chart = 'p', 3d pie chart = 'p3'
include("poll.php");
?>

The files referenced in the currentpoll.php reside in the same directory as currentpoll.php.

Any ideas? Could there be a conflict with using the the settings within mysql_connect.php which use the same settings as vbulletin? I don't think there is because the variable names are different but figured I'd ask.

TIA,
Scott

Marco van Herwaarden
08-19-2008, 02:39 PM
Try forcing the includes to use the correct directory:

Example.

Use:
include("./poll/poll.php");
instead of:
include("poll.php");

Addicted2HD
08-19-2008, 02:59 PM
Try forcing the includes to use the correct directory:

Example.

Use:
include("./poll/poll.php");
instead of:
include("poll.php");

Actually wouldn't that mean there was a "poll" directory inside the "poll" directory at the root?

directory structure is (just in case there's any confusion):
/root/poll
/root/vbulletin

I used ../poll/poll.php and I don't get any errors but I also don't get the poll to display. I'll keep working on it but any more ideas would be appreciated.

Thanks,
Scott

--------------- Added 1219161740 at 1219161740 ---------------

Check that, got it working! I switched the hook during trouble shooting from "global_start" to "forum_complete" and forgot to switch it back.

Thanks for the help!

Marco van Herwaarden
08-20-2008, 07:22 AM
When the plugin is executed it will have the vBulletin installation directory as current directory. Including a file in another directory (include('../poll/currentpoll.php');) does not chdir() to that directory, so the included script will still be running "from" the vB directory. So if your script includes "poll.php" first the current working directory (ie. your vB installation directory) will be searched first for the a script with this name and it will find the vBulletin poll.php file.