Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 3.5 > vBulletin 3.5 Add-ons
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
multiple site controller Details »»
multiple site controller
Version: 1.00, by robert_2004 robert_2004 is offline
Developer Last Online: Aug 2008 Show Printable Version Email this Page

Version: 3.5.5 Rating:
Released: 10-31-2006 Last Update: 11-01-2006 Installs: 7
Uses Plugins
Code Changes Additional Files Is in Beta Stage  
No support by the author.

This mod will allow you to combine multiple sites that you own and master, into the one set of files and database - easier to maintain, to update, to administer, and to master.

Even though this page is fairly long - there is a lot of info to set it up, but it's bloody easy to install, and easy to work with once installed.

What you can do:
- auto detect which site they have come to, and setup the right usergroup and style.
- run different styles on different sites.
- allow/deny different usergroups to different forums and version of site
- multiple forums with permissions set to individual sites
- multiple calendars with permissions set to individual sites

What you can't do:
- allow users to choose their own style (**coming soon**)
- can't run some plugins on some domains, and not on the others - all plugins must/will be active across the whole board.
- can't work if you have subdomains (at this point) - i dunno, it may - i just have 1 line which auto places 'www' on your domain.
- it is lacking an upgrade system to bring two forums together. I built this from the start - meaning my testing server was my original site, then i started a second test site, and started adding people to it - THERE IS NO MERGE SCRIPT *YET*. although, you might be able to use the vB to merge - CAN SOMEONE PLEASE VERIFIY / COMMENT ON THIS. (i.e. if you have 3000users/25,000posts in your main, and you want to bring 5000users/45,000posts from your 2nd site to combine them, we don't have anything on offer to reset the ID numbers, etc. possible the imPEX thinggy will resort all of that for you.)



----------
Important - My Current Setup:

i'm running vb 3.5 with vBa's CMPS.
i have it set up:
/public_html/index.php (cmps index)
/public_html/domains.php (this current mod)
/public_html/forum/ (all the forums' files)


USERGROUPS
With the usergroups - you are going to have to add the short_http into the start of the usergroup name - so please take this into account (as the system searches the short_http to grab the usergroup for the person viewing, to put them into that usergroup).

i set it up to not use the original 'registered users', but rather, each site has it's own 'registered users' usergroup.
The admin, super mod, banner member - i.e anything you want/think can work across ALL the sites can stay as one, the rest of the sites should have their own usergroups:
Code:
Please make sure that the custom usergroups are defined as below:
The number after the http_site (1st,2nd, etc) MUST correspond to the corresponding default vB usergroup id!

1.1st 1 - Unregistered / Not Logged In      
1.1st 2 - Registered Users                  
1.1st 3 - Users Awaiting Email Confirmation 
1.1st 5 - Super Moderators
1.1st 7 - Moderators
2.2nd 1 - Unregistered / Not Logged In      
2.2nd 2 - Registered Users 
2.2nd 3 - Users Awaiting Email Confirmation 
2.2nd5 - Super Moderators
2.2nd 7 - Moderators                 

the first number: i put in just to order the domains (as i don't use '1st' and '2nd' on my testmachine - i use NORTH and WEST - but west was the first site, so i wanted it to be displayed first on the list)
the second number: '1st' and '2nd' are the http_site - the short hand name for each site - if you are running two computer games sites, one counter strike and the other world of warcraft, then 'CS' and 'WOW' are suitable.
the third number: corresponds to the original usergroup id with the same name.
---------


Example:
none at this point.

hacks and addons:
- adding events to multple calendars at once (coming soon)
- calendar custom fields working on multiple calendars
------------------------



[Temp area - installation steps]
cpanel -> add parked domains
mysql database change
domains.php
global.php
register.php
class_dm_user.php
functions.php
create styles
add plugin - domains.php
add plugin - force style

-------------------
FIRSTLY, backup YOUR database!!!

[Step 1 - Park your Domains ]
go into your cPanel or Plesk, or your hosting control system, and park your domains to your account - this will make all your domains, myFirstDomain.com and mySecondDomain.com all display the front page of your first initial site.


[Step 2 - mySQL Changes ]
none that i can remember / find at this point.


[Step 3 - /public_html/domains.php ]
create this file and insert the following:
PHP Code:
<?php

  
###### multiple site controller #########
################################
// https://vborg.vbsupport.ru/showthread.php?p=1108615#post1108615

/* THIS FILE IS THE DOMAIN CHECKER FOR EACH FILE AND PAGE 
    THAT IS SHOWN ON THE SITE.

    IT WILL HELP SECURITY RISKS, AS IF A LINK CANNOT BE
    MADE BETWEEN THE CURRENT HTTP_HOST, AND AN IF()
    STATEMENT IN THIS FILE, IT WILL OUTPUT AN ERROR.
     THIS ABOVE STATEMENT MAY CAUSE PROBLEMS IF YOU HAVE 
    SISTER-SITES, TRYING TO ACCESS
    FILES AND/OR DATABASE

   IF ANOTHER SITE IS ADDED TO THE FAMILY, YOU WILL NEED
   TO CREATE THE IF() STATEMENT HERE TO ALLOW IT TO DISPLAY
   CORRECTLY.

   THIS FILE NEEDS TO BE CALLED VIA A PLUGIN
   AND AS IN INCLUDED() ON EVERY NON-FORUM PAGE

 TO CHANGE DOMAIN'S STYLE = adminCP ->Plugins -> Force Style for each Domain

*/

$http_host $_SERVER['HTTP_HOST'];
session_start();

// The Following will remove any problems by causing all your sites to begin with 'www'.
// Place WWW in front of all domains
if( strpos($_SERVER['HTTP_HOST'], 'www.') === false ) {
    
header("Location: http://www.$http_host$_SERVER[REQUEST_URI]");
}


if( 
preg_match('/MyFirstDomain.com/i'$http_host) ) {         #####     My First Domain #####
  // You can create any variables you want here:
    
$_SESSION['short_http'] = "1st";     // this is used in URL
    
$_SESSION['short_print'] = "1st";     // this is used for folder structure
    
$_SESSION['http_host']    = "MyFirstDomain.com";  
    
$_SESSION['site_title'] = "My First Domain!!";
    
$_SESSION['site_home_title'] = "First Domain Forum and Home";
}



elseif( 
preg_match('/MySecondDomain.com/i'$http_host) ) {     #####     My Second Domain         #####
    
$_SESSION['short_http'] = "2nd";
    
$_SESSION['short_print'] = "2nd";
    
$_SESSION['http_host']    = "MySecondDomain.com";
    
$_SESSION['site_title'] = "My Second Domain!!!";
    
$_SESSION['site_home_title'] = "Second Domain Forum and Home";
}


/*
  included an else clause here just to capture the unlikely 
  event that http_host is not passed. This can happen 
  with 1.0 useragents.
*/
else
{
  
header("upgradebrowser.html");
}



if (!
function_exists(findCustomGroup)) { 
function 
findCustomGroup($cid){
    global 
$vbulletin;
    
$customIds $vbulletin->db->query_read("SELECT usergroupid, title FROM " TABLE_PREFIX "usergroup");
    while (
$customId $vbulletin->db->fetch_array($customIds)){
        if (
strpos($customId['title'],$cid)){
            
$cId $customId['usergroupid'];
        }
    }
    return 
$cId;
}
}
if (!
function_exists(findAwaitingGroups)) { 
function 
findAwaitingGroups(){
    global 
$vbulletin;
    
$avug_array = array();
    
$avIds $vbulletin->db->query_read(" SELECT usergroupid, title FROM " TABLE_PREFIX "usergroup");
    while (
$avId $vbulletin->db->fetch_array($avIds)){
        if (
strpos($avId['title'],"Awaiting Email Confirmation")){
            
array_push($avug_array,$avId['usergroupid']);
        }
    }
    return 
$avug_array;
}
}
?>

[Step 4 - global.php]

find [line 115]
PHP Code:
$vbphrase init_language();

// set a default username
if ($vbulletin->userinfo['username'] == '')
{
    
$vbulletin->userinfo['username'] = $vbphrase['unregistered'];

below this, add
PHP Code:
// multiple site controller by Robert_2004
// https://vborg.vbsupport.ru/showthread.php?p=1108615#post1108615

require_once('../domains.php');

//let's set the appropriate site and forum titles as determined by the domains.php file.
//also used in providing the correct info in the appropriate emails (eg, activateaccount, welcomemail etc)
$vbulletin->options['hometitle'] = $_SESSION['site_home_title'];
$vbulletin->options['bbtitle'] = $_SESSION['site_title'];
$vbulletin->options['bburl'] = "http://www.".$_SESSION['http_host']."/forum";
$vbulletin->options['homeurl'] = "http://www.".$_SESSION['http_host'];
$vbulletin->options['http_host'] = $_SESSION['http_host'];

// set a default username
if ($vbulletin->userinfo['username'] == '')
{

    
//set the appropriate custom unregistered usergroup for all the guest accounts
    
$vbulletin->userinfo['username'] = $vbphrase['unregistered'];
    
$customUserGroup $_SESSION['short_print']." ".$vbulletin->userinfo['usergroupid'];         
    
$ncid findCustomGroup($customUserGroup);
    if (!empty(
$ncid)){
        
//print_r($vbulletin->userinfo);
        //do not tamper with usergroupid just yet but rather utilise a 
        //customusergroupid field which will be used to set the appropriate
        //forum permissions a little later on (function cache_permissions()).
        
$vbulletin->userinfo['usergroupid'] = $ncid;
    }

[Step 5 - register.php]
find [line 265]
PHP Code:
    // Set specified options
    
if (!empty($vbulletin->GPC['options']))
    {
        foreach (
$vbulletin->GPC['options'] AS $optionname => $onoff)
        {
            
$userdata->set_bitfield('options'$optionname$onoff);
        }
    } 
add, below:
PHP Code:
// multiple site controller by Robert_2004
// https://vborg.vbsupport.ru/showthread.php?p=1108615#post1108615
require_once('../domains.php'); 
find [line 285]
PHP Code:
    else
    {
        
$newusergroupid 2;
    } 
below, add:
PHP Code:
     // multiple site controller by Robert_2004
      // https://vborg.vbsupport.ru/showthread.php?p=1108615#post1108615
    //determine the correct unregistered custom usergroup
    
$customUserGroup $_SESSION['short_print']." ".$newusergroupid;
    
$ncid findCustomGroup($customUserGroup);
    
$newusergroupid $ncid
find:
PHP Code:
            // sort out emails and usergroups
            
if ($vbulletin->options['verifyemail'])
            {
                
$activateid build_user_activation_id($userid, (($vbulletin->options['moderatenewmembers'] OR $vbulletin->GPC['coppauser']) ? 2), 0);

                eval(
fetch_email_phrases('activateaccount'));

                
vbmail($email$subject$messagetrue);

            } 
replace with
PHP Code:
            // sort out emails and usergroups
            
if ($vbulletin->options['verifyemail'])
            {
                
// multiple site controller by Robert_2004
      // https://vborg.vbsupport.ru/showthread.php?p=1108615#post1108615
                //with custom registered usergroups it's no longer sufficient to simply pass 4 or 2 to
                //the build_user_activation_id() so let's be more dynamic.
                //$activateid = build_user_activation_id($userid, (($vbulletin->options['moderatenewmembers'] OR $vbulletin->GPC['coppauser']) ? 4 : 2 ), 0);
                //determine the appropriate registered usergroup to pass to build_user_activation_id()
                
$customRGroup $_SESSION['short_print']." 2";
                
$rcid findCustomGroup($customRGroup);
                
$activateid build_user_activation_id($userid, (($vbulletin->options['moderatenewmembers'] OR $vbulletin->GPC['coppauser']) ? $rcid ), 0);

                eval(
fetch_email_phrases('activateaccount'));

                
vbmail($email$subject$messagetrue);

            } 
find:
PHP Code:
    ($hook vBulletinHook::fetch_hook('register_activate_start')) ? eval($hook) : false;

    if (
$userinfo['usergroupid'] == 3
replace with
PHP Code:
    ($hook vBulletinHook::fetch_hook('register_activate_start')) ? eval($hook) : false;

    
// multiple site controller by Robert_2004
       // https://vborg.vbsupport.ru/showthread.php?p=1108615#post1108615
    
$customUserGroup $_SESSION['short_print']." ".$newusergroupid;
        
$ncid findCustomGroup($customUserGroup);
    
//grab all the relevant usergroupids for the various "Awaiting Validation" groups
    
$awug_array findAwaitingGroups();
    
//if ($userinfo['usergroupid'] == 3 )
    
if ($userinfo['usergroupid'] == || in_array($ncid,$awug_array)) 
find
PHP Code:
    $users $db->query_read("
        SELECT user.userid, user.usergroupid, username, email, activationid, languageid
        FROM " 
TABLE_PREFIX "user AS user
        LEFT JOIN " 
TABLE_PREFIX "useractivation AS useractivation ON(user.userid = useractivation.userid AND type = 0)
        WHERE email = '" 
$db->escape_string($vbulletin->GPC['email']) . "'"
    
); 
below, add:
PHP Code:
    // multiple site controller by Robert_2004
       // https://vborg.vbsupport.ru/showthread.php?p=1108615#post1108615
    
$customUserGroup $_SESSION['short_print']." ".$newusergroupid;
        
$ncid findCustomGroup($customUserGroup); 
find
PHP Code:
        while ($user $db->fetch_array($users))
        {
            if (
$user['usergroupid'] == 3)
            { 
// only do it if the user is in the correct usergroup
                // make random number
                
if (empty($user['activationid']))
                { 
//none exists so create one
                    
$user['activationid'] = build_user_activation_id($user['userid'], 20);
                }
                else
                {
                    
$user['activationid'] = vbrand(0100000000); 
replace with
PHP Code:
        while ($user $db->fetch_array($users))
        {
            
// multiple site controller by Robert_2004
       // https://vborg.vbsupport.ru/showthread.php?p=1108615#post1108615
            //if ($user['usergroupid'] == 3)
            
$awug_array findAwaitingGroups();
            if (
$user['usergroupid'] == || in_array($ncid,$awug_array))
            
            { 
// only do it if the user is in the correct usergroup
                // make random number
                
if (empty($user['activationid']))
                { 
//none exists so create one
                    // multiple site controller by Robert_2004
       // https://vborg.vbsupport.ru/showthread.php?p=1108615#post1108615
                    //$user['activationid'] = build_user_activation_id($user['userid'], 2, 0);
                    
if ($user['usergroupid'] == 3){
                        
$ncid $user['usergroupid'];
                    }
                    
$user['activationid'] = build_user_activation_id($user['userid'], $ncid0);
                    
                }
                else
                {
                    
$user['activationid'] = vbrand(0100000000); 
find
PHP Code:
    $userinfo verify_id('user'$vbulletin->GPC['u'], 11);
    
    if (
$userinfo['usergroupid'] == 3
replace with
PHP Code:
    $userinfo verify_id('user'$vbulletin->GPC['u'], 11);
    
    
// multiple site controller by Robert_2004
       // https://vborg.vbsupport.ru/showthread.php?p=1108615#post1108615
    
$customUserGroup $_SESSION['short_print']." ".$newusergroupid;
        
$ncid findCustomGroup($customUserGroup);
    
//if ($userinfo['usergroupid'] == 3)
    
$awug_array findAwaitingGroups();
    if (
$userinfo['usergroupid'] == || in_array($ncid,$awug_array)) 
find
PHP Code:
    $userinfo verify_id('user'$vbulletin->GPC['u'], 11);
    
    if (
$userinfo['usergroupid'] == 3
replace with
PHP Code:
    $userinfo verify_id('user'$vbulletin->GPC['u'], 11);
    
// multiple site controller by Robert_2004
       // https://vborg.vbsupport.ru/showthread.php?p=1108615#post1108615
    
$customUserGroup $_SESSION['short_print']." ".$newusergroupid;
        
$ncid findCustomGroup($customUserGroup);
    
//if ($userinfo['usergroupid'] == 3)
    
$awug_array findAwaitingGroups();
        if (
$userinfo['usergroupid'] == || in_array($ncid,$awug_array)) 


[Step 6 - class_dm_user.php]
find
PHP Code:
'usergroupid'        => array(TYPE_UINT,       REQ_YESVF_METHOD), 
below, add
PHP Code:
    // multiple site controller by Robert_2004
       // https://vborg.vbsupport.ru/showthread.php?p=1108615#post1108615
        
'customusergroupid'  =>array(TYPE_UINT,       REQ_NO), 

[Step 7 - functions.php]
find:
PHP Code:
    $intperms = array();
    
$_PERMQUERY = array();

    
// set the usergroupid of the user's primary usergroup
    
$USERGROUPID $user['usergroupid']; 
replace with:
PHP Code:
    $intperms = array();
    
$_PERMQUERY = array();
    
// multiple site controller by Robert_2004
       // https://vborg.vbsupport.ru/showthread.php?p=1108615#post1108615
    // if a user belongs to a custom Unregistered group then assign the custom usergroup id to foruminfo
    // so that when they browse the forums we can restrict them accordingly.
    
if (isset($user['customusergroupid'])){
        
$USERGROUPID $user['customusergroupid'];
    }
    else {
        
$USERGROUPID $user['usergroupid'];
    }
    
// set the usergroupid of the user's primary usergroup
        //$USERGROUPID = $user['usergroupid']; 
[Step 8 - styles]
either create child styles or import your styles
you'll figure out the best way to set them up

[step 9 - add plugins]
adminCP -> plugins -> add new plugin

product - vbulletin
hook location - global_start
title - Domains or anything you want
plugin php code -
PHP Code:
// PUT A DESCRIPTION HERE 
include('/home/{hosting_username}/public_html/domains.php'); 
(ACTIVATE PLUGIN)

NEXT PLUGIN:
product - vbulletin
hook location - style_fetch
title - Force Style for each Domain
code
PHP Code:
if( preg_match('/MyFirstDomain.com/i'$http_host) )
{
    
$styleid x// set this
}
elseif( 
preg_match('/MySecondDomain.com/i'$http_host) ) 
{
    
$styleid x

(ACTIVATE PLUGIN)


>>>>>>>> AND YOU ARE DONE!

Set all your forums - thee are permissions to set for forums, usergroups, CMPS pages, etc
- remember, all heirarchy works on forums, and usergroups



- now for you to help.
Firstly, CLICK INSTALL >>>>>>>>>>>>>>>>>>>>>>>>>>
- If someone can turn this into a plugin, please go ahead
- if someone can see something to fix - please write it
- if you can help with updating/improving some code - please do it
- this mod is open for anyone and everyone, if you want to do something with it and release it - you are more than welcome to - PM ME so i can put a link & description to your version (i.e if you make a lite version, or a to in a different direction with this mod).
- if you want any features or updates, please write so on this forum - if it's good enough for me, i'll get it done - otherwise we'll see.

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #22  
Old 05-23-2007, 10:56 PM
ochlocracy ochlocracy is offline
 
Join Date: Mar 2005
Posts: 2
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I like the idea, and it's something I'm looking for. I'm just not sure it will do what I want.

I run two forums for motorcycles and I created the 2nd forum off the 1st one so it has all the same forum topics.

I would like to merge the two forums into one, but still show 5 diffrent forums depending on what domain they are on. Would this be possible with this mod?

ie

widget.com has 5 forums dedicated to widgets
gadgets.com has it's 5 forums dedicated to gadgets

and the two domains share the offtopic section
Reply With Quote
  #23  
Old 06-05-2007, 10:45 PM
robert_2004 robert_2004 is offline
 
Join Date: Sep 2004
Posts: 126
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

ochlocracy, yes. you would place all the forums into the one area (like normal). then set up the two different sets of usergroups, 2 usergroups for unregistered (one for each site), 2 usergroups for registered, 2 usergroups for moderators, etc.
Then you would set the permissions on each usergroup to view only certain forums.
You then set the supermod and admin to view all the forums, or what ever suits your needs.

One thing - just test the installation on a test server to begin with.
you will need to import the forums and members from one site to the other - and this is really the only thing you need to test to make sure it works. This also means all the thread ids would be given new ids due to the ids already being taken by the other forum.
check to see if the impex will effectively do this for you, otherwise we'll need to create a custom export & import script.
Reply With Quote
  #24  
Old 06-05-2007, 10:52 PM
robert_2004 robert_2004 is offline
 
Join Date: Sep 2004
Posts: 126
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

also, some news regarding this script:

all members of this site that have installed this script, please check the last 5% of your member database, either 50 members or members which have registered over the past 2 months.
Check how many are full members, and how many haven't finalised and are still awaiting authorisation.
- is the 'awaiting authorisation' number abnormally high?
- should more people (based on record before installing this hack) be confirming their membership??

i've been noticing this problem with mine - seems people are receiving the confirmation email, but when they click it, it takes them to (my) site and says 'confirmed!'. but it doesn't actually change their membership in the database.
I've had a look through the code, but can't figure out why this bug is occuring.

a) it's only happening to between 30-60% of my new members since installing this script
b) it's a hit and miss. first time i tested was fine, second time it happened.

the problem is located in the register.php page, most likely.

Once this problem is fixed - we'll release an update. if anyone has any thoughts, i'd love to hear them.
Reply With Quote
  #25  
Old 01-09-2008, 09:04 PM
Floris Floris is offline
 
Join Date: Jan 2002
Posts: 1,898
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Is there an update on this product, say, a 3.6 plugin / product version?
Reply With Quote
  #26  
Old 01-14-2008, 07:41 AM
Alfa1's Avatar
Alfa1 Alfa1 is offline
 
Join Date: Dec 2005
Location: Netherlands
Posts: 3,537
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Very interesting!
Reply With Quote
  #27  
Old 01-14-2008, 02:15 PM
robert_2004 robert_2004 is offline
 
Join Date: Sep 2004
Posts: 126
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

i gave up on my site due to lack of hirable programmers.
we're getting back into it this year with a programmer i've been hoping to work with for the past few months - hopefully he will be good, and the site will come back online.
when it does, we'll be moving to vb3.6 and then we'll create an update.
Reply With Quote
  #28  
Old 01-14-2008, 11:03 PM
Alfa1's Avatar
Alfa1 Alfa1 is offline
 
Join Date: Dec 2005
Location: Netherlands
Posts: 3,537
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

That may be good news then. Check out vb 3.7.
Reply With Quote
  #29  
Old 03-05-2008, 06:41 PM
Karri's Avatar
Karri Karri is offline
 
Join Date: Feb 2002
Posts: 98
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

any news on an update for this?
Reply With Quote
  #30  
Old 03-11-2008, 05:19 PM
tazzarkin tazzarkin is offline
 
Join Date: Nov 2007
Posts: 137
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

did you work on this yet?
--------------
Quote:
Originally Posted by robert_2004 View Post
i gave up on my site due to lack of hirable programmers.
we're getting back into it this year with a programmer i've been hoping to work with for the past few months - hopefully he will be good, and the site will come back online.
when it does, we'll be moving to vb3.6 and then we'll create an update.
Reply With Quote
  #31  
Old 03-13-2008, 08:51 PM
superthang superthang is offline
 
Join Date: Aug 2007
Posts: 46
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

updates for 3.7?
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 02:54 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.13858 seconds
  • Memory Usage 2,460KB
  • Queries Executed 25 (?)
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)bbcode_code
  • (25)bbcode_php
  • (1)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (3)pagenav_pagelink
  • (11)post_thanks_box
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (11)postbit_onlinestatus
  • (11)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
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete