vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vBulletin 3 Articles (https://vborg.vbsupport.ru/forumdisplay.php?f=187)
-   -   [How-to] Add more tabs to the vB 3.7 profile pages (https://vborg.vbsupport.ru/showthread.php?t=165554)

Cledus James 02-16-2009 03:59 PM

Thought I would give this a bump in hopes of finding a solution. Thanks.

Lynne 02-16-2009 04:22 PM

Your spitting it out into an unordered list, <ul>. You will need to explode the ranks and then put an <li> in front of each one. What exactly are you doing with the rank list? Are you exploding it after you get it? Post the code you use to deal with it and spit it out.

Cledus James 02-16-2009 05:00 PM

lol, Im not that good. Basically Im just manually entering that list of items info into a custom field created in the admin cp under each user and then just calling that field to the tab. Honestly, I have no idea what you're talking about with the "exploding and spit out". There is no code I'm dealing with besides the code in the new template and the pluggin.

Oddly, Right now I also have the custom field in a profile module on the right and it displays as it was typed in the admin cp > users, in a list format.

Here's a link to my profile on the site. That <br /> was entered in the admin cp > user > custom field blank.

Could there be something I could do in the memberinfo_block_mymodification template code:

Code:

<div class="alt1 block_row">
        <ul class="list_no_decoration">
                $block_data[mymodification]
        </ul>
</div>

And like I said before, thank you for all the help, I know it can be frustrating dealing with someone that doesn't know as much. Be nice to get this finally completed, it's really the last thing I got left to do.

Lynne 02-16-2009 06:04 PM

The thing is, all you have is a bunch of text. If you want it to display a certain way, then you need to have some html in there. You can't just write:
Code:

1. Website Owner 2. 6 month Member 3. 1 year Member
and have it show up as:
Code:

1. Website Owner
2. 6 month Member
3. 1 year Member

You need to write:
Code:

</li>1. Website Owner <li>2. 6 month Member <li>3. 1 year Member
and acutally, more correctly, change the <ul>s in the template to <ol>s for an ordered list instead of an unordered list and then change the list to:
Code:

</li>Website Owner <li>6 month Member <li>1 year Member

PaulSonny 03-02-2009 09:35 AM

Hello,

Is there a way to link to the profile and load a particular tab?

Regards, Paul.

ragtek 03-02-2009 09:56 AM

yes add &tab=tabid to the url

example: http://vbulletin-germany.org/member....2&tab=releases

PaulSonny 03-05-2009 07:22 AM

Thanks very much tagtek.

Kind Regards, Paul.

EagleNick 04-13-2009 01:38 AM

Great article!

I'm not sure how to display the tab for only certain usergroups though. Do I use regular template conditionals? Or a PHP conditional? And where do I put it?

Thanks.

Merriweather 04-16-2009 03:30 AM

If I set up a tab to show some custom profile fields, is there a way to let each user define who can see the information on that tab (i.e. Everyone, Registered Users, Contacts, Friends)?

Wired1 04-23-2009 03:49 PM

Quote:

Originally Posted by Merriweather (Post 1792195)
If I set up a tab to show some custom profile fields, is there a way to let each user define who can see the information on that tab (i.e. Everyone, Registered Users, Contacts, Friends)?

The "profile.php?do=privacy" page uses the modifyprofileprivacy template. Within it the actual list of items is contained within the $profileprivacybits variable.

A hook needs to be within a particular function to enable privacy settings for custom tabs. Looks like it was already requested in January:
http://www.vbulletin.com/forum/showt...cy#post1673419

Quote:

Originally Posted by Andreas (Post 1673419)
A Hook in profile.php at the end of combined action privacy/doprivacy is needed to handle privacy for custom blocks.

http://www.vbulletin.com/forum/showthread.php?t=302214

Looks like privacy settings for categories worked in 3.8.0, but was broken in 3.8.1, and fixed in 3.8.2. Here's hoping they did a similar fix for custom blocks in total in 3.8.2 (gotta remember to download it lol).

Chadi 04-24-2009 02:47 AM

NOTE: I'm creating a new mode for Shelfari called "My Shelfari Bookshelf". I reserve this idea, so please don't steal my idea ;)

Having a hard time applying this for a new tab called "Shelfari" (shelfari.com)

The template is:

memberinfo_block_shelfari

Code:

<div class="alt1 block_row">
    <ul class="list_no_decoration">
        $block_data[shelfari]
    </ul>
</div>

The plugin is:
Code:

$blocklist = array_merge($blocklist, array(
    'mymodification' => array(
        'class' => 'Shelfari',
        'title' => 'My Shelfari Bookshelf',
        'hook_location' => 'profile_left_last'
    )
));

class vB_ProfileBlock_Shelfari extends vB_ProfileBlock
{
    var $template_name = 'memberinfo_block_shelfari';

    function confirm_empty_wrap()
    {
        return false;
    }

    function confirm_display()
    {
        return ($this->block_data['shelfari'] != '');
    }

    function prepare_output($id = '', $options = array())
    {
        $this->block_data['shelfari'] = '<embed width="500" height="500" src="http://www.shelfari.com/ws/shelf.swf" wmode="transparent" FlashVars="UserName=chadi&ShelfType=list&verE=s1.5&ListType=isowned&booksize=large&Alpha=0&BGColor=FFFFFF"></embed>';
    }
}

Note, "chadi" in that Shelfari embed code I pasted at the end of the plugin is my actual Shelfari username. However, I created a user profile field called "My Shelfari Bookshelf", which is field44.

I tried replacing chadi with $userinfo[field44] and it did not pull correctly.

What is the actual proper replacement code to pull whatever content from the user's field44 profile field to replace my actual username?

Can some also please explain how to properly create a plugin file for this, so I can share it as a mod?

Lynne 04-24-2009 02:55 AM

Quote:

Originally Posted by Chadi (Post 1797889)
What is the actual proper replacement code to pull whatever content from the user's field44 profile field to replace my actual username?

Try $this->profile->userinfo['field44']

Chadi 04-24-2009 03:02 AM

Thanks, but the tab doesn't show up now.

Code:

$blocklist = array_merge($blocklist, array(
    'mymodification' => array(
        'class' => 'Shelfari',
        'title' => 'My Shelfari Bookshelf',
        'hook_location' => 'profile_left_last'
    )
));

class vB_ProfileBlock_Shelfari extends vB_ProfileBlock
{
    var $template_name = 'memberinfo_block_shelfari';

    function confirm_empty_wrap()
    {
        return false;
    }

    function confirm_display()
    {
        return ($this->block_data['shelfari'] != '');
    }

    function prepare_output($id = '', $options = array())
    {
        $this->block_data['shelfari'] = '<embed width="700" height="700" src="http://www.shelfari.com/ws/shelf.swf" wmode="transparent" FlashVars="UserName=$this->profile->userinfo['field44']&ShelfType=list&verE=s1.5&ListType=isowned&booksize=large&AmazonAssociate=taljes-20&Alpha=0&BGColor=FFFFFF"></embed>';
    }
}


Lynne 04-24-2009 03:08 AM

Try assigning it to a variable and then use the variable in that line of code:
PHP Code:

$var $this->profile->userinfo['field44'];
   
$this->block_data['shelfari'] = '..... UserName=' $var '&Shel....'

Something like that. You'll probably have to play with it a bit.

Chadi 04-24-2009 03:15 AM

Sorry, but I really don't know what you're telling me here. I'm not a coder :)

Can you give me a hint by pasting what the entire plugin code should look like? It'll be easier for me to dissect it carefully from there.

--------------- Added [DATE]1240546636[/DATE] at [TIME]1240546636[/TIME] ---------------

Ok, I tried this:

Code:

$blocklist = array_merge($blocklist, array(
    'mymodification' => array(
        'class' => 'Shelfari',
        'title' => 'My Shelfari Bookshelf',
        'hook_location' => 'profile_left_last'
    )
));

class vB_ProfileBlock_Shelfari extends vB_ProfileBlock
{
    var $template_name = 'memberinfo_block_shelfari';

    function confirm_empty_wrap()
    {
        return false;
    }

    function confirm_display()
    {
        return ($this->block_data['shelfari'] != '');
    }

    function prepare_output($id = '', $options = array())
    {
$var = $this->profile->userinfo['field44'];
        $this->block_data['shelfari'] = '<embed width="700" height="700" src="http://www.shelfari.com/ws/shelf.swf" wmode="transparent" FlashVars="UserName' . $var . '&ShelfType=list&verE=s1.5&ListType=isowned&booksize=large&AmazonAssociate=taljes-20&Alpha=0&BGColor=FFFFFF"></embed>';
    }
}

now, the output works except one more problem:

The actual widget is giving an error stating that a username was not provided and must be provided.

--------------- Added [DATE]1240547063[/DATE] at [TIME]1240547063[/TIME] ---------------

Fixed. I had to had the = after UserName.

Thanks Lynne.

One quick question, I'd like to make an xml plugin file so people can install this as a product. Could I trouble you to explain how this can be done?

Lynne 04-24-2009 02:16 PM

Quote:

Originally Posted by Chadi (Post 1797903)
One quick question, I'd like to make an xml plugin file so people can install this as a product. Could I trouble you to explain how this can be done?

Looks like you already figured that out since I saw you released your mod. :)

Chadi 04-24-2009 02:33 PM

Yes, and gave you and Wired1 credit for the help.

Thank you Lynne, appreciate it.

PS: would you like me to make you co-author of the mod? I'm honestly not sure how these things work on the forums. I've only started releasing mods a couple days ago. I'm not even a programmer.

Lynne 04-24-2009 03:41 PM

Quote:

Originally Posted by Chadi (Post 1798167)
PS: would you like me to make you co-author of the mod? I'm honestly not sure how these things work on the forums. I've only started releasing mods a couple days ago. I'm not even a programmer.

No, no. I am here just to help out. I really don't know what the co-author thing is for, but just giving you a couple pointers doesn't make me a co-author. You did all the hard work.

H3C x Nevz 04-29-2009 09:52 PM

Okay, I've installed this properly, and I need a somewhat specific request:

-- Search for all threads started by user, in forumID 12 and all child boards -- [USERNAME]'s Posted Content -- End Link --

Sorry, I really don't know a lot about using variables...

harmor19 05-07-2009 07:42 AM

If you want to know how to pull HTML from a template rather than writing the HTML in the plugin take a look at what I've wrote.
PHP Code:

function prepare_output($id ''$options = array())
{
    global 
$vbulletin$db;       

    
$query $db->query_read("SELECT * FROM " TABLE_PREFIX "mkwtracktimes WHERE userid = '".$vbulletin->userinfo['userid']."'");
    while(
$mkw $db->fetch_array($query))
    {
        eval(
'$data .= "' fetch_template('mkw_profilebit') . '";');
    }

    
$this->block_data['mkwttrecords'] = $data;



harmor19 05-08-2009 01:35 PM

I'm not sure as I haven't tried but the code below might work if you don't want to loop data.

PHP Code:

eval($this->block_data['mkwttrecords'] .' .= "' fetch_template('mkw_profilebit') . '";'); 


edytwinky 07-01-2009 03:20 AM

I'm trying to get this information to show but for some reason it keeps bringing errors. Any ideas?

Currently my plugin is the default:

PHP Code:

$blocklist array_merge($blocklist, array(
    
'mymodification' => array(
        
'class' => 'MyModification',
        
'title' => 'My Teams',
        
'hook_location' => 'profile_right_last'
    
)
));

class 
vB_ProfileBlock_MyModification extends vB_ProfileBlock
{
    var 
$template_name 'memberinfo_block_mymodification';

    function 
confirm_empty_wrap()
    {
        return 
false;
    }

    function 
confirm_display()
    {
        return (
$this->block_data['mymodification'] != '');
    }

    function 
prepare_output($id ''$options = array())
    {
        
$this->block_data['mymodification'] ='Coming Soon';

    }




And i'm trying to get the following code in:
PHP Code:

<if condition="!empty($post[nbateam])">
                <
div>
                    
$vbphrase[my_nbateam]: <img src="$vboptions[bburl]/images/nba/$post[nbateam].gif" border="0" />
                </
div>
                </if> 

I put the new code in the 'coming soon' section and all it showed in the new tab was the text $vbphrase[my_nbateam]:
It did not show the image whatsoever.

--------------- Added [DATE]1246493739[/DATE] at [TIME]1246493739[/TIME] ---------------

I've been toying around with every single combination of codes and it keeps only bringing up the text of the coding or error message.

Any assistance would be greatly appreciated.

euantor 08-19-2009 08:03 AM

Does this work with VBulletin 3.8.4? I've tried it, but I can't get the tab I'm trying to add to display.

ragtek 08-19-2009 02:19 PM

Yes it should work, nothing changed here.

What's the code you're using?

euantor 08-20-2009 07:25 AM

The code in the first two boxes. I believe I've done it all correctly, but it doesn't work.

KW802 08-26-2009 10:38 PM

With the hook locations we can specify relative positions (eg: first on the left, last on the right, etc.) but is it possible to specify a specific location, as in the second position from the left?

Thanks :)

Lynne 08-26-2009 10:47 PM

No, not with default vbulletin. You may modify the template and add another template_hook to use in the location you want. (I think there is even an article on how to do this.)

krike 09-08-2009 08:20 AM

just thought I would share with the people who are looking for help.

my vB version is 3.8.1

I needed to query a table I created myself to display all the tutorials of that specific user.
here is the code I used and it works like a charm

Code:

function prepare_output($id = '', $options = array())
        {
            $sql = mysql_query("SELECT * FROM tutorials WHERE approved = 1 AND user_id=".$this->profile->userinfo[userid]."");
            $test = "<ul>";
            while($result = mysql_fetch_array($sql))
            {
                $test .= "<li> <img src='http://cmstutorials.org/".$result['tutorial_thumb']."' width='50' height='50' alt='' />
                            <a href='http://cmstutorials.org/tutorial/".$result['tutorial_id']."' target='_blank'>".$result['title']."</a></li>
                        ";
            }
            $test .= "</ul>";
            $this->block_data['mymodification'] = $test;
    }

--------------- Added [DATE]1252407273[/DATE] at [TIME]1252407273[/TIME] ---------------

how do you call a specific tab with a url?

http://cmstutorials.org/forums/member.php?u=1#tabname ????

--------------- Added [DATE]1252407322[/DATE] at [TIME]1252407322[/TIME] ---------------

ok I found it http://cmstutorials.org/forums/membe...1&tab=favorite

Quote:

For About Me: ?tab=aboutme
For Contacts: ?tab=contact
For Friends: ?tab=friends
For Statistics: ?tab=stats

KW802 09-08-2009 02:31 PM

Quote:

Originally Posted by Lynne (Post 1875075)
No, not with default vbulletin. You may modify the template and add another template_hook to use in the location you want. (I think there is even an article on how to do this.)

Lynne, I missed your response earlier, just saw it now after the newest post. :o

Thanks for the info. :) For now I'll go with the relative positions since one of our goals with the project is to make it as template edit free as possible for the site admin'.

reddyink 11-11-2009 03:16 PM

I am trying tocreate a Tab where it can list specific user Threads in different forums like the profile page on vb.org where it pulls users threads from MODs forum, Templates, Styles forum.

example: I want this users threads from forum ids 2, 4, 6 etc

towards the bottom of
https://vborg.vbsupport.ru/member.php?u=925

Appreciate your help! I am new to programming.

ageurtse 12-26-2009 04:20 AM

this works also in vb4.0

ragtek 12-26-2009 06:34 AM

Not true;)

Plugin=> yes
Template not, have to be changed to the vB4 Syntax;)

ageurtse 12-27-2009 11:08 AM

what is wrong with the template.
on my test site it run's almost oke.

only when i call te tab by itself http://xxx/forums/member.php?3-Peter...cation&page=10 my custom code is way below everything what is wrong.
When i hit the mymodification tab al is displayed normal.

--------------- Added [DATE]1261950936[/DATE] at [TIME]1261950936[/TIME] ---------------

is there also a way to call a php page that should display his content in this newly created tab ?

Warlord 01-04-2010 05:37 PM

Quote:

Originally Posted by krike (Post 1881501)
just thought I would share with the people who are looking for help.

my vB version is 3.8.1

I needed to query a table I created myself to display all the tutorials of that specific user.
here is the code I used and it works like a charm

Code:

function prepare_output($id = '', $options = array())
        {
            $sql = mysql_query("SELECT * FROM tutorials WHERE approved = 1 AND user_id=".$this->profile->userinfo[userid]."");
            $test = "<ul>";
            while($result = mysql_fetch_array($sql))
            {
                $test .= "<li> <img src='http://cmstutorials.org/".$result['tutorial_thumb']."' width='50' height='50' alt='' />
                            <a href='http://cmstutorials.org/tutorial/".$result['tutorial_id']."' target='_blank'>".$result['title']."</a></li>
                        ";
            }
            $test .= "</ul>";
            $this->block_data['mymodification'] = $test;
    }

--------------- Added [DATE]1252407273[/DATE] at [TIME]1252407273[/TIME] ---------------

how do you call a specific tab with a url?

http://cmstutorials.org/forums/member.php?u=1#tabname ????

--------------- Added [DATE]1252407322[/DATE] at [TIME]1252407322[/TIME] ---------------

ok I found it http://cmstutorials.org/forums/membe...1&tab=favorite

Is tutorial_thumb a column in one of you sql tables? I'm trying to do something similar but it's really kicking my butt.

I have a form users submit their resume's on. It saves it to the database in the table formresults. The information I want to display on the profile is located in a column labeled output in the formresults table.

Below is the code I'm using in the member_build_blocks_start hook location.

Code:

$blocklist = array_merge($blocklist, array(
    'resume' => array(
        'class' => 'Resume',
        'title' => 'Resume',
        'hook_location' => 'profile_left_last'
    )
));

class vB_ProfileBlock_resume extends vB_ProfileBlock
{
  var $template_name = 'memberinfo_block_resume';
  function confirm_empty_wrap()
  {
    return false;
  }
  function confirm_display()
  {
    return ($this->block_data['resume'] != '');
  }
        function prepare_output($id = '', $options = array())
{
        global $db;
        $sql= $db->query_read("SELECT output FROM " . TABLE_PREFIX . "formresults WHERE userid = '.$this->profile->userinfo[userid].' AND title = 'Resume' ");
            $test = "<div>";
            while($result = mysql_fetch_array($sql))
            {
                $test .= "'.$result['output'].'"
                        ";
            }
            $test .= "</div>";


    $this->block_data['resume'] = $test;
  }
}

I think the code in bolded red is the part I'm getting lost on?

I get this error when displaying the memberinfo profile page.

Quote:

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/righscom/public_html/addons/projectfanboy/vb/member.php(463) : eval()'d code on line 249

Warlord 01-05-2010 07:57 PM

Anyone?

Lynne 01-05-2010 08:45 PM

Quote:

Originally Posted by Warlord (Post 1948169)
Anyone?

Too many quotes in this 'line':
PHP Code:

                $test .= "'.$result['output'].'"
                        "; 


Warlord 01-05-2010 11:51 PM

Quote:

Originally Posted by Lynne (Post 1948211)
Too many quotes in this 'line':
PHP Code:

                $test .= "'.$result['output'].'"
                        "; 



I see what you're talking about, thanks for that. While there was some syntax error there, unfortunately it didn't solve my problem. I changed it to this:

PHP Code:

                $test .= " .$result['output']. "

I'm still getting the same error though:

Quote:

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/righscom/public_html/addons/projectfanboy/vb/member.php(463) : eval()'d code on line 249
I thought maybe I was just calling the column in the table contained in the array incorrectly, which gave me the error, but you didn't mention that, so can I assume that if the column in the table is called output that this would be the correct way to retrieve that data?

PHP Code:

$result['output'


dartho 01-05-2010 11:58 PM

shouldn;'t it just be :
PHP Code:

$test .= $result['output']; 

?

of if you wanted a space after each result

PHP Code:

$test .= $result['output'] . " "


Warlord 01-06-2010 12:11 AM

Quote:

Originally Posted by dartho (Post 1948346)
shouldn;'t it just be :
PHP Code:

$test .= $result['output']; 


Thank you, that got rid of the annoying error. I really could've sworn I had tried that before but apparently not. :confused:

The Resume tab shows up now, unfortunately there is still no data in it. Could it be the type of data that's in there (a mixture of html and php variables) causing it to not show up?

--------------- Added [DATE]1262744048[/DATE] at [TIME]1262744048[/TIME] ---------------

Hmmm... I guess not. I changed the data in there to be just the string "This is only a test" and still nothing shows up. :confused:

--------------- Added [DATE]1262744441[/DATE] at [TIME]1262744441[/TIME] ---------------

HOLY CRAP! I'm almost there! I've been working on this for like a week and I was almost ready to give up but now I'm ALMOST THERE! :D :D :D

The problem was the SQL query was returning no results because apparently this line of code doesn't work the way I thought it did.

PHP Code:

.$this->profile->userinfo[userid]. 

I changed that to my userid and it worked! Now I just need to figure out the right way to call for the user profile id! :D Thanks everyone!

--------------- Added [DATE]1262745188[/DATE] at [TIME]1262745188[/TIME] ---------------

Quote:

Originally Posted by Warlord (Post 1948356)
HOLY CRAP! I'm almost there! I've been working on this for like a week and I was almost ready to give up but now I'm ALMOST THERE! :D :D :D

The problem was the SQL query was returning no results because apparently this line of code doesn't work the way I thought it did.

PHP Code:

.$this->profile->userinfo[userid]. 

I changed that to my userid and it worked! Now I just need to figure out the right way to call for the user profile id! :D Thanks everyone!

Okay, apparently it does work the way I thought it did, I just had removed the extra " because I thought it was wrong. I still don't quite understand why it should be there but it seems to work now! Woohoo! :D:D:D

For anyone who's interested in what the code looked like that finally ended up working, here it is. :D

PHP Code:

$blocklist array_merge($blocklist, array(
    
'resume' => array(
        
'class' => 'Resume',
        
'title' => 'Resume',
        
'hook_location' => 'profile_left_last'
    
)
));

class 
vB_ProfileBlock_resume extends vB_ProfileBlock
{
  var 
$template_name 'memberinfo_block_resume';
  function 
confirm_empty_wrap()
  {
    return 
false;
  }
  function 
confirm_display()
  {
    return (
$this->block_data['resume'] != '');
  }
    function 
prepare_output($id ''$options = array())
{
    global 
$db;
    
$sql$db->query_read("SELECT * FROM " TABLE_PREFIX "formresults WHERE title = 'Resume' AND userid=".$this->profile->userinfo[userid]."");

            
$test "<div>";
            while(
$result mysql_fetch_array($sql))
            {
$test .= $result['output'];  
            }
            
$test .= "</div>";


    
$this->block_data['resume'] = $test;
  }



Warlord 01-13-2010 11:40 PM

Is there something else you have to do to add more pages? When I repeat the steps I did to create the first tab the new tab I create replaces the first tab I created instead of appearing next to it. :confused:


All times are GMT. The time now is 10:46 AM.

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.02239 seconds
  • Memory Usage 1,939KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (12)bbcode_code_printable
  • (15)bbcode_php_printable
  • (14)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (3)pagenav_pagelink
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (40)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.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/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.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
  • printthread_start
  • pagenav_page
  • pagenav_complete
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete