PDA

View Full Version : Miscellaneous Hacks - Who's Online for all Vbadvanced Pages


Lionel
01-28-2007, 10:00 PM
This will solved the Unknown Location in who's online page for all vbadvanced pages , e.g. index.php?page=XX (and other non vbadvanced problematic pages too)

This cannot be a plugin or product as you have to determine your own page names.
Below I used my soccer page as an example. You need to create 3 plugins using your own names and give it some meaningful names, replacing soccer with it.

For soccermain.php simply call it any.php, replacing "any" with a unique name.

I commented the hook location for each plugin

For those who need to see a screenshot, click on any vbulletin forum who's online

You need to repeat the same process for every problematic page
Online Location Preprocess Soccer
//online_location_pre-process
if ($loc == '/index.php?page=soccer' OR $loc == '/?page=soccer' )
{
$filename = 'soccermain.php';
}
################################################## #######
Online Location Process Soccer
//online_location_process
if ($filename == 'soccermain.php')
{
$userinfo['activity'] = 'soccermain';
}
################################################## ################################
Online Location Unknown Soccer
//online_location_unknown

if ($userinfo['activity'] == 'soccermain')
{
$userinfo['where'] = '<a href="/index.php?' . $vbulletin->session->vars['sessionurl'] . 'page=soccer"> Soccer Main Page</a>';
$userinfo['action'] = "Viewing Soccer";
$handled = true;
}
################################################## ############################

Hornstar
01-29-2007, 07:29 AM
Because you seem to know what your doing. I was wanting to basically add something like this to my site, but also a few other things. just wondering if you could help with the below.

Add a 'Whos online' to my cms www.gamerzneeds.net That way it will show all members and guests down the bottom of the cms, kinda like vb does.

Also, whoever is on the cms, then a way for those members to also show in the vbulletin 'whos online'

If you could help me with this, I would be very greatful.

Thanks.

Lionel
01-29-2007, 07:41 AM
If you are using vbadvanced, there is a module that ships with it and does that

ZEvilWyvernX
02-02-2007, 01:26 PM
If you are using vbadvanced, there is a module that ships with it and does that

Hmmm There is??? Ive never seen it tried solving this problem for a while now

Could you point me in the right direction

Brian31fl
02-03-2007, 06:02 AM
cause ur useing a differant cms

extremesanity
06-27-2007, 08:51 PM
For those using vbAdvanced along with vBulletin, here are full instructions based off of what Lionel started. We are going to add 3 plugins to the admin cp for each page we want to identify.


Go to:
Admin CP > Plugins & Products

Step 1:

- Add New Plugin
- "Product" = vBulletin or vbAdvanced (doesn't really matter)
- "Hook Location" = online_location_pre-process
- "Title" = Online Users Fix 1 (or anything, its just a description)
- "Execution Order" = 6 (steps 1-3 need to execute in sequence)
- Edit the following code and put it into the PHP Code field

if ($loc == '/forum/vbadvanced_home.php' OR $loc == 'vbadvanced_home.php')
{
$filename = 'vbadvanced_home.php';
}

vbadvanced_home.php is the custom filename I have for the main vbadvanced page

- push save


Step 2:

- Add New Plugin
- "Product" = vBulletin or vbAdvanced (doesn't really matter)
- "Hook Location" = online_location_process
- "Title" = Online Users Fix 2 (or anything, its just a description)
- "Execution Order" = 7 (steps 1-3 need to execute in sequence)
- Edit the following code and put it into the PHP Code field

if ($filename == 'vbadvanced_home.php')
{
$userinfo['activity'] = 'vbadvanced';
}

vbadvanced_home.php is the custom filename I have for the main vbadvanced page. vbadvanced is just a description we will be using later

- push save


Step 3:

- Add New Plugin
- "Product" = vBulletin or vbAdvanced (doesn't really matter)
- "Hook Location" = online_location_unknown
- "Title" = Online Users Fix 3 (or anything, its just a description)
- "Execution Order" = 8 (steps 1-3 need to execute in sequence)
- Edit the following code and put it into the PHP Code field

if ($userinfo['activity'] == 'vbadvanced')
{
$userinfo['where'] = '<a href="/forum/vbadvanced_home.php?' . $vbulletin->session->vars['sessionurl'].'">Home</a>';
$userinfo['action'] = "Viewing Home Page";
$handled = true;
}

Here your using the description we set in step 2, putting a description for what the user is looking at, and putting a link below that description for the user to visit the same place.

- push save

Skavenger
07-31-2007, 05:04 AM
I have vbadvanced in the root of the site and my forum in a folder, how can I make this work with that?

Maddogz420
11-30-2007, 06:55 PM
Is it possible to have this a little more specific?

We have two types of pagenames in our cmps, ?page=sf* such as ?page=sfblueitems, and ?page=tq*, such as page=tqmaps. Is it possible to have this plugin show anything with ?page=sf* as "Shadowflare Content" and all ?page=tq* items as "Titan Quest Content" ?

A third one would be nice too, to distinguish between people viewing the standard index_cmps.php file (home page) and the other content pages.

Lionel
11-30-2007, 07:26 PM
Have you tried at least?

Maddogz420
11-30-2007, 08:03 PM
Yeah, ive been messing with it for a while now. I think ive gotten it half-working... In the first part, i used "cmps_index.php?page=sf*" and its properly showing those pages.... Still have some more to work on

Great mod by the way, suprised the cmps doesnt have support for this already

Maddogz420
01-04-2008, 01:35 AM
I've gotten this to properly show anything with page=sf_ as "Viewing Shadowflare Content", however we use the plain cmps_index.php file as homepage. It will show anyone on the homepage as also viewing the shadowflare content. Here's my code, perhaps you can tell me what I've done wrong


if ($loc == '/vb/cmps_index.php?page=sf*' OR $loc == 'cmps_index.php?page=sf*' OR $loc == '/vb/cmps_index.php?page=shadowflare*' OR $loc == 'cmps_index.php?page=shadowflare*')
{
$filename = 'cmps_index.php?page=sf';
}
if ($loc == '/vb/cmps_index.php')
{
$filename = 'cmps_index.php';
}


if ($filename == 'cmps_index.php?page=sf')

{
$userinfo['activity'] = 'sfcontent';
}

if ($filename == 'cmps_index.php')

{
$userinfo['activity'] = 'portal';
}

if ($userinfo['activity'] == 'sfcontent')
{
$userinfo['where'] = '';
$userinfo['action'] = "Viewing Shadowflare Content";
$handled = true;
}
if ($userinfo['activity'] == 'portal')
{
$userinfo['where'] = '';
$userinfo['action'] = "Viewing Homepage";
$handled = true;
}

Andy92
01-13-2008, 07:06 PM
Will this work in vbulletin version 3.7?

I have installed this...

http://www.vbseo.com/f34/display-users-viewing-non-vbulletin-pages-online-users-16307/

But, it is all working, but it displays unkown location for all people viewing pages outside my /forum directory? Even though i have installed the plugin.

Will this solve that problem?