vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vBulletin 3.0 Full Releases (https://vborg.vbsupport.ru/forumdisplay.php?f=33)
-   -   Text Message on PM (https://vborg.vbsupport.ru/showthread.php?t=73205)

yoyoyoyo 02-13-2005 04:43 AM

Quote:

Originally Posted by fiber1
How would I run the queries if I have no table Prefix?

[SQL]ALTER TABLE user ADD `cellnum` TINYTEXT NOT NULL;
ALTER TABLE user ADD `cellprovider` VARCHAR( 8 ) NOT NULL;[/SQL]
[SQL]INSERT INTO phrase (`languageid`, `varname`, `text`, `phrasetypeid`) VALUES (0, 'pmreceived_celltxt', '$touserinfo[username], You have received a new private message at $vboptions[bbtitle] from $bbuserinfo[username].', 3000);
INSERT INTO phrase (`languageid`, `varname`, `text`, `phrasetypeid`) VALUES (0, 'pmreceived_celltxt', 'New Priv Msg at $vboptions[bbtitle]!', 4000);
INSERT INTO phrase (`languageid`, `varname`, `text`, `phrasetypeid`) VALUES (0, 'badcellnum', 'You have provided an invalid cell phone number. Please provide a United States of America cell phone number including area code and a seven digit number.', 1000);
INSERT INTO phrase (`languageid`, `varname`, `text`, `phrasetypeid`) VALUES (0, 'cellnummismatch', 'Your cell phone number provided does not match the confirmation cell phone number you provided, please go back and correctly fill in these fields.', 1000);
INSERT INTO phrase (`languageid`, `varname`, `text`, `phrasetypeid`) VALUES (0, 'cellnumtaken', 'The cell phone number you provided is already in use. If this is your cell phone number please contact your board''s administrator.', 1000);
INSERT INTO phrase (`languageid`, `varname`, `text`, `phrasetypeid`) VALUES (0, 'invalidcellprovider', 'The cell phone provider you have provided does not exist or is not yet supported. Please contact your board''s administrator about this.', 1000);[/SQL]

Vizionz 02-13-2005 03:37 PM

Works with tmobile as well just so you know and with 3.06 of vb

fiber1 02-13-2005 09:52 PM

Thats odd I get the following error when running the first query.

Code:

An error occurred while attempting to execute your query. The following information was returned.
error number: 1064
error desc: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near ''cellnum' TINYTEXT NOT NULL;
ALTER TABLE user ADD `cellprovide

Anyone have any ideas?

AN-net 02-13-2005 09:54 PM

try running them one at a time

yoyoyoyo 02-13-2005 10:05 PM

Quote:

Originally Posted by fiber1
Thats odd I get the following error when running the first query.

Code:

An error occurred while attempting to execute your query. The following information was returned.
error number: 1064
error desc: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near ''cellnum' TINYTEXT NOT NULL;
ALTER TABLE user ADD `cellprovide

Anyone have any ideas?

If that is the complete error then it looks to me like you didn't copy all of the syntax, either

fiber1 02-14-2005 01:15 AM

Tried to run one at a time and that was the whole syntax.

:(

Scerina 03-11-2005 10:15 PM

Personally, I would luv this hack on my forum...is it possible for someone who has more advance experince in hackin and coding to install it for me? Cuz I just try to do it and am already recievin error messages...

I mean I luv this hack already...and I know my members would ADORE it!!!

TundraSoul 03-12-2005 01:30 AM

AN-net, could I please get a code revison for this piece of code? I'm using v3.0 and my code is a little different in profile.php

According to the directions I should look for:

Code:

~~~~~~~~~~~~~~~~~~~~~~
Find:
if ($newpassword OR $newemail)
{
$DB_site->query("UPDATE " . TABLE_PREFIX . "user SET $newpassword $newemail usergroupid = " . intval($bbuserinfo['usergroupid']) . " WHERE userid = $bbuserinfo[userid]");
}

But the closest thing I have is this:

Code:

if (!empty($newpassword))
{
// insert record into password history
$DB_site->query("INSERT INTO " . TABLE_PREFIX . "passwordhistory (userid, password, passworddate) VALUES ($bbuserinfo[userid], '" . addslashes($newpassword) . "', NOW())");
$newpassword = "password = '" . addslashes($newpassword) . "', passworddate = NOW(),";
} else {
$newpassword = '';
}
$DB_site->query("UPDATE " . TABLE_PREFIX . "user SET $newpassword $newemail usergroupid = " . intval($bbuserinfo['usergroupid']) . " WHERE userid='$bbuserinfo[userid]'");
if ($newemailaddress)
{
$url = "usercp.php?$session[sessionurl]";
eval(print_standard_redirect('redirect_updatethanks_newemail'));
}
else
{
$url = "usercp.php?$session[sessionurl]";
eval(print_standard_redirect('redirect_updatethanks'));
}
}

Can you provide me with a revised bit of code for this step in your directions?

Thank you very much!

AN-net 03-12-2005 03:24 AM

Quote:

Originally Posted by TundraSoul
AN-net, could I please get a code revison for this piece of code? I'm using v3.0 and my code is a little different in profile.php

According to the directions I should look for:

Code:

~~~~~~~~~~~~~~~~~~~~~~
Find:
if ($newpassword OR $newemail)
{
$DB_site->query("UPDATE " . TABLE_PREFIX . "user SET $newpassword $newemail usergroupid = " . intval($bbuserinfo['usergroupid']) . " WHERE userid = $bbuserinfo[userid]");
}

But the closest thing I have is this:

Code:

if (!empty($newpassword))
{
// insert record into password history
$DB_site->query("INSERT INTO " . TABLE_PREFIX . "passwordhistory (userid, password, passworddate) VALUES ($bbuserinfo[userid], '" . addslashes($newpassword) . "', NOW())");
$newpassword = "password = '" . addslashes($newpassword) . "', passworddate = NOW(),";
} else {
$newpassword = '';
}
$DB_site->query("UPDATE " . TABLE_PREFIX . "user SET $newpassword $newemail usergroupid = " . intval($bbuserinfo['usergroupid']) . " WHERE userid='$bbuserinfo[userid]'");
if ($newemailaddress)
{
$url = "usercp.php?$session[sessionurl]";
eval(print_standard_redirect('redirect_updatethanks_newemail'));
}
else
{
$url = "usercp.php?$session[sessionurl]";
eval(print_standard_redirect('redirect_updatethanks'));
}
}

Can you provide me with a revised bit of code for this step in your directions?

Thank you very much!

ill try to look into this:)

AN-net 03-12-2005 03:26 AM

For those experiencing problems running the following queries:
[sql]
ALTER ~TablePrefix~user ADD 'cellnum' TINYTEXT NOT NULL;
ALTER ~TablePrefix~user ADD `cellprovider` VARCHAR( 8 ) NOT NULL;
[/sql]

use these instead
[sql]
ALTER TABLE ~TablePrefix~user ADD cellnum TINYTEXT NOT NULL;
ALTER TABLE ~TablePrefix~user ADD cellprovider VARCHAR( 8 ) NOT NULL;
[/sql]

T3MEDIA 03-17-2005 09:34 PM

Quote:

Originally Posted by AN-net
I am still looking for people interested to test this feature:)

how do I test with Canadian providers?

Blam Forumz 03-17-2005 09:43 PM

Hi, any chance you'll be working on a UK version of this?

hugh_ 03-21-2005 08:19 AM

What about using paid messaging providers such as MBLOX? Text messaging's a great way to add value to a site and could represent a good revenue stream and I'd be more than happy to pay for proper coverage although it might also require a credits system using paid subscriptions...

Also could this hack also be used with events reminders (and possibly even distribution lists)? I have a busy calendar section for which this hack would be very useful...

Finally I'm unclear as to the level of support this hack has in the europe at present (none?!)?

Thanks...

hugh

Thug 03-23-2005 01:23 AM

hi

im inthe uk and i require 02,t mobile,vodafone and orange all uk networks to be added
please try sort it,ive installed the hack but is only for USA
p.s needs to be 11numbers for our mobiles

Kohhal 03-25-2005 02:16 PM

Quote:

Originally Posted by AN-net
It looks as Vodafone Ireland(not sure about the entire network yet) does not support the service required for this hack...

Pity that, sounds like a great hack that I could have used, I'll keep an eye on this and if you get some European operators up and running it might be something I can use.

TundraSoul 03-26-2005 12:56 AM

Never mind, no problem. I went and upgrade to 3.0.7.

Q. If you edit your phone number, shouldn't you first see it there in the Cell Phone Number line?

Quote:

Originally Posted by AN-net
ill try to look into this:)


TundraSoul 03-26-2005 01:15 AM

Tested with Cingular, and it worked perfectly.

Installed.

el diablo 04-23-2005 07:39 PM

Tested on Cingular as well - works ALMOST perfect. I had AT&T and they switched to Cingular - on the AT&T phone i never received a message but on the new Cingular (purchased from Cingular store) it works perfect.

FD929 05-26-2005 12:20 AM

AT&T has since merged with Cingular and both now use @mmode.com

Search private.php for @mobile.att.net and @mobile.mycingular.net and replace both with mmode.com

Awesome hack dude.

T3MEDIA 05-26-2005 02:02 PM

sytax is wrong.
if you have a prefix use this.... (prefix) is your prefix here

Code:

INSERT INTO (prefix)phrase (`languageid`, `varname`, `text`, `phrasetypeid`) VALUES (0, 'pmreceived_celltxt', '$touserinfo[username], You have received a new private message at $vboptions[bbtitle] from $bbuserinfo[username].', 3000);

INSERT INTO (prefix)phrase (`languageid`, `varname`, `text`, `phrasetypeid`) VALUES (0, 'pmreceived_celltxt', 'New Priv Msg at $vboptions[bbtitle]!', 4000);

INSERT INTO (prefix)phrase (`languageid`, `varname`, `text`, `phrasetypeid`) VALUES (0, 'badcellnum', 'You have provided an invalid cell phone number. Please provide a United States of America cell phone number including area code and a seven digit number.', 1000);

INSERT INTO (prefix)phrase (`languageid`, `varname`, `text`, `phrasetypeid`) VALUES (0, 'cellnummismatch', 'Your cell phone number provided does not match the confirmation cell phone number you provided, please go back and correctly fill in these fields.', 1000);

INSERT INTO (prefix)phrase (`languageid`, `varname`, `text`, `phrasetypeid`) VALUES (0, 'cellnumtaken', 'The cell phone number you provided is already in use. If  this is your cell phone number please contact your board''s administrator.', 1000);

INSERT INTO (prefix)phrase (`languageid`, `varname`, `text`, `phrasetypeid`) VALUES (0, 'invalidcellprovider',  'The cell phone provider you have provided does not exist or is not yet supported. Please contact your board''s administrator about this.', 1000);


sv1cec 06-01-2005 01:03 PM

Hey guys, sweet little hack. Installed it a little while ago, and even though my cell provider was not listed, I received my first SMS within less than one hour, from the start of the installation.

OK you Europeans, especially Vodafone subscribers, the trick here is simple. Here are the requirements for this hack to work in your area:

1. Your provider offers you an email account, in the form of 5559999999@vodafone.gr. In this example 555 is the area code for Vodafone, 9999999 is your particular number and of course the .gr can be .co.uk or .de or whatever suffix is used by your provider in your country.
2. The above email account offers the option to send you an SMS (as text messages are called in the GSM world), when a new email arrives at your mailbox. Mine sends me both an SMS and leaves a message in my answering service, which I hate. The SMS causes my telephone to emit a small beep-beep, while the answering service rings my phone, until I answer it. But maybe there is a way around that, I am talking with Vodafone to see if this can be fixed.

To have this hack adapted to your area of the world, here is what you need to do:

- Install the hack as described. Then edit your private.php file and find:

PHP Code:

        vbmail($cellemail$emailsubject$emailmessage); 

Right above that line, add something like:

PHP Code:

else if($touserinfo['cellprovider']=="vodaf-gr")
{
    
$cellemail="".$touserinfo['cellnum']."@vodafone.gr";


Note that I am using a shortcut in the first line, "vodaf-gr". This is the name with which your provider is internally known to the system. Unfortunatelly, the hack instructs you to create a varcha(8) column only for this, so you cannot use something like "vodafone-uk", it has to be 8 characters maximum. If you haven't install the hack yet and you want to use something more meaningful, alter the query :

ALTER user ADD `cellprovider` VARCHAR( 8 ) NOT NULL

and make than number inside the parenthesis, something larger. Not necessary though.

This part, @vodafone.gr has also to be changed to whatever the domain name is, for your Vodafone email account.

Save the file and upload it.

Edit file profile.php and find:

PHP Code:

if(!in_array($_POST['cellprovider'], array('verizon''virgin''att''alltel''cingular''nextel''tmobile''sprint'))) 

Replace that, with something like:

if(!in_array($_POST['cellprovider'], array('verizon', 'virgin', 'att', 'alltel', 'cingular', 'nextel', 'tmobile', 'sprint', 'vodaf-gr')))
[/php]

Note the differences between these two lines, all I did at the end of the original line, was to add a comma, and the shortcut of the provider name, in single quotes.

Finally, open your modify password template, and find:

HTML Code:

<option value="virgin">Virgin Mobile(USA)</option>
Right below that, add something like:

HTML Code:

<option value="vodaf-gr">Vodafone (Greece)</option>
Note, that in the value field, you are again using the shortcut, the internal representation of your provider, while the part between > and < is just a text description to remind you of this provider, it can be any meaningful text you want.

Well, that's it. Given that Vodafone Greece is a whole-owned subsidiary of Vodafone UK (or at least something like that), I believe that the systems they use here, must be the same with the systems used by Vodafone, in other parts of the world.

Good luck! I am clicking "Install".

Note to the Author: Yes, you may confirm that the hack works with Vodafone Greece, with the above changes.

mfarmerhi 06-11-2005 09:51 AM

I'd love this hack, but it's conflicting with the Allow Group to Read Titles, but not threads hack I already have installed.

I believe the conflict is coming in the inclues/init.php changes. Specifically the change in this hack:
Code:

$_USEROPTIONS = array(
        'showsignatures'    => 1,
        'showavatars'      => 2,
        'showimages'        => 4,
        'coppauser'        => 8,
        'adminemail'        => 16,
        'showvcard'        => 32,
        'dstauto'          => 64,
        'dstonoff'          => 128,
        'showemail'        => 256,
        'invisible'        => 512,
        'showreputation'    => 1024,
        'receivepm'        => 2048,
        'emailonpm'        => 4096,
        'txtmsgonpm'          => 8192,
        'hasaccessmask'    => 16384,
        //'emailnotification' => 32768, // this value is now handled by the user.autosubscribe field
        'postorder'        => 65536,
);

conflicting with the change in the includes/init.php in "allow users to see thread title":
Code:

Find:        'canthreadrate'    => 65536,
        'isalwaysmoderated' => 131072,
        'canseedelnotice'  => 262144
);

Replace with:
        'canthreadrate'    => 65536,
        'isalwaysmoderated' => 131072,
        'canseedelnotice'  => 262144,
// ================================================= \\
// == [ ALLOW GROUP TO READ TITLE / NOT CONTENT - GTP BEGIN ]
        'gtpcanreadcontent'        => 524288,
// == [ 00-00-2004 - GTP END ]
// ================================================= \\
);

If I change the includes/init.php file as directed in this "text message on pm" hack, it causes *everybody* (including those with access via masks) to receive the warning generated by the "allow users to read title but not posts" hack.

Anyone have a clue why the conflict is occurring; and more importantly how I could have both hacks working without the current conflict?

T3MEDIA 06-11-2005 10:54 AM

Is the confilict "Post order"?
Just from glancing over the post (I didnt studdy it much) I can tell the numbers are dubbled each row.
So if you have something already in place you will have to bump up some numbers on the other hack.

Now if there is more to it I am sure others will fill in.

mfarmerhi 06-12-2005 05:10 AM

Okay... I'm thinking the problem is coming from this hack's redefining "hasaccessmask"

Prior to installing this hack, 'hasaccessmask' reads:
Code:

'hasaccessmask'    => 8192,
This hack redefines it:

Code:

'hasaccessmask'    => 16384,
"Allow groups to view titles" uses the access masks feature to decide whether it will or won't display the thread contents, and I'm guessing that redefining hasaccessmask is causing the conflict.

This hack is using 8192 for the new 'txtmsgonpm'. Can 'txtmsgonpm' be redefined to the 16384 or some other number, so that 'hassaccessmask' can remain 8192?

~ Mark

sv1cec 06-12-2005 05:23 AM

I have no idea on how this thing works, but I noticed that also when I installed this hack and I am not sure I like it. Somehow, changing the existing permissions does not seem logical, but as I said, I am no expert.

Rgds

mfarmerhi 06-12-2005 07:50 AM

Alright. The more I explore, the more sure I am of the conclusion I came to in my last post above.

In the end, I've left both hacks installed.

Because the "Text on PM" redefines the bitfield for 'hasaccessmask', if you choose to use both hacks ("Text on PM" and "Allow Groups to read"); AND you've first installed the "Allow Groups" hack FIRST, THEN installed "Text on PM", you'll need to go back to all the users you've allowed to read the thread contents (in the forum(s) you've selected as your "Allow Groups to read" forum(s)) and:

1) Change each user first to "no" or "default"; THEN
2) Change that same user BACK to "yes"

YOU HAVE TO DO THIS EVEN THOUGH YOUR USER ACCESS MASKS WILL STILL SHOW THOSE USERS AS HAVING PERMISSION TO READ CONTENTS

Although I am not sure how it happens, it's my belief that by redefining 'hasaccessmask' with a new bitfield, it causes vB to "forget" whom could and could not read thread contents, requiring you to again re-define them.

Said another way, the variable that used to define who could read contents, has been changed. To restore that permission you need to again define those users.

Again, this *should* only apply to users who have FIRST installed the "allow groups to read" hack, THEN installed the "text on pm" hack.

~ Mark

sv1cec 06-12-2005 11:36 AM

Mark,

since the author is not jumping in to explain this to us, may I ask you something. Please correct me if I am wrong.

Since bitvalue 8192 is already assigned to hasaccessmask, by vb, redefining this value to mean "Yes, I want to receive text messages" means that each user which had that value defined, now is set to receive text messages. Is that right? I would expect any hack to add at the bottom of that list, instead of using one of the existing bit values.

Right now, I have this hack installed and I am not sure, if the above change has created havoc in my user permissions or not. And for sure, I am not going to go back and re-give all the users any permissions, just because of this hack, there are other ways to check if the user has selected to receive text messages than this.

Can someone who understands how these things operate, jump in and clear the issue for us?

P.S. : Well, scrab that, I removed the bitvalue thing and reset the $_USEROPTIONS array to the state it was before this hack. I then created a new column in the user table, where the equivalent option is stored. In that way, at least, I do not risk creating havoc in my forums.

mfarmerhi 06-13-2005 06:12 PM

Hey John,

Yes, I believe your conclusions were right (but again, am not educated in php/mysql, so am not positive how this all is working).

I also think your solution -- adding the new features onto the END of the user tables -- seems to make more sense.

Another vb.org member suggested the problems might just have come because I didn't clear my cookie cache/close browswer/end session; and I suppose that *might* have been part of the proglem with the postbits (if that's how they work)... dunno, and by the time I figured out what I did, I'd been screwing with both hacks for a couple of hours.

But here's something else I noticed:

Can someone else duplicate this error:

Correctly enter in your cell number in your options. THEN go back and enter in your correct phone number in the top space; and a phone number where the last digit is off by one, in the "Confirm Cell Phone Number" box.

E.g. Enter 8085244983 into both boxes the first time.

Then go back to the same options page and enter:
Cell number: 8085244983
Confirm number: 8085244984

and press enter.

Why does the script allow that and process it?

I noticed this error while testing the hack to ensure that providing a non-matching phone number in the "confirm" box would indeed return the error message. I was a little surprised when the system let me get away with it...

sv1cec 06-13-2005 07:45 PM

I am sorry, but I can't help you on this. You see, I do not think it is such a great deal to reveal a member's telephone number, in his UserCP templates. What's so dangerous about it? No one else can see it, but him, and if we worry about transmitting the number unencrypted, we have several other more interesting things that we should worry about. So I removed the checking of the number, and moved the whole thing in the Options screen.

Rgds

mfarmerhi 06-13-2005 08:38 PM

Quote:

Originally Posted by sv1cec
I ... moved the whole thing in the Options screen.

??? I thought the whole thing was already only in the options screen?

Sv1cec, I don't quite understand your post. The hack doesn't disply users numbers. I haven't added anything that would display users numbers. And the checking mechinism doesn't do anything else with the user's number that would make it any less secure than the hack already is or is not.

Regardless, would anyone that has the hack -- as is -- test the same error I'm getting?

sv1cec 06-14-2005 04:40 AM

No the user cell number and provider were in the password screen. And no, I was not commenting about your actions, the author of this hack said that we should not display the cell phone numbers in any template, which I fail to understand. So, I moved everything to the Edit Options screen and the cell number is openly visible when the user enters it. If he enters it wrong, it's his fault.

mfarmerhi 06-16-2005 02:28 AM

Can someone confirm the error I'm getting:

The "confirm number" is not working correctly.

MorrisMcD 06-20-2005 03:15 AM

Quote:

Originally Posted by mfarmerhi
Can someone confirm the error I'm getting:

The "confirm number" is not working correctly.

Sweet hack.. Unfortunatly, I would say about 1/4 if not more of the people in my area use Cincinnati Bell.. :(

I dont suppose anyone is that same area that has added the code... ??? Or even someone willing to research it? I am way too stupid to figure that out on my own :)

sv1cec 06-20-2005 04:11 AM

Read this post, I think I've covered the "what is needed for this to work, all over the globe".

If your provider offers these, it's easy to patch the hack for that one.

Rgds

Antivirus 08-04-2005 10:34 PM

Is is possible for the sender of the private message to choose (while composing the message) whether or not the pm gets sent to only their inbox, only the cellphone, or both? (providing of course they have the option to rec text msgs checked on the edit options page)

This would be great, as many people get billed a few cents when receiving text mssgs so sender can choose to use it only if an "emergency", etc...

Anyone know how?

sv1cec 08-05-2005 04:19 AM

Well, my experience says that if you give that option, most people will abuse it. And since it is the recipient who pays for those SMS messages, I think it is safer to leave that option to the recipient.

Rgds

mfarmerhi 08-14-2005 02:11 AM

Anyone been able to test this hack with Tmobile? Their SMS has been down now for MONTHS...

gbechtel 08-27-2005 09:34 PM

Works with NEXTEL!

funinthesun 11-06-2005 07:58 PM

Does this work on 3.5 and does it work on spanish networks? Thanks :)

monotreme 02-03-2006 05:57 AM

also want to know if you plans make plugins compatible for 3.5 at top says only database change no addn'l files so I'm in trouble to believe that. I might hack your hack for 3.5 if no one else is.


All times are GMT. The time now is 01:17 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.01517 seconds
  • Memory Usage 1,892KB
  • 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
  • (11)bbcode_code_printable
  • (2)bbcode_html_printable
  • (3)bbcode_php_printable
  • (8)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (2)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