Go Back   vb.org Archive > vBulletin Modifications > vBulletin 4.x Modifications > vBulletin 4.x Template Modifications

Reply
 
Thread Tools
Registration Optimization | vBsocial.com | Details »»
Registration Optimization | vBsocial.com |
Version: 1.00, by daveaite daveaite is offline
Developer Last Online: Oct 2015 Show Printable Version Email this Page

Category: Board Optimization - Version: 4.1.2 Rating:
Released: 11-29-2010 Last Update: Never Installs: 120
 
No support by the author.

Registration is a known tedious process, and I believe vBulletin makes it very hectic for the average guest to register at your forum.

I believe all ADDITIONAL INFORMATION should not be there including forum rules. These things, members can fill out later and also read the rules later. After all, the rules are very similar from forum to forum and no members read them anyways.

If you have a referral system, this modification isn't for you.
I think though, this will convert you more members than a referral system does anyways.

Go to admincp > Style Manager > Edit Templates > Register Templates > register and replace everything with the contents of the attached file.

Registration should be quick and easy! Good luck everyone


As far as I know this works on ALL VERSIONS OF 4.X and possibly earlier versions. I have been upgrading my vBulletin live sites with this modification and registration still works. I believe it also increases registrations tremendously. I've been getting anywhere between 30-60 registers a day.

Also it does include facebook connect and image verifcation ( even though the spam bots have beaten these)

Download Now

File Type: txt Shorter Registration.txt (9.9 KB, 1281 views)

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.
3 благодарности(ей) от:
ELROBLE, rodriiverduguez, synseal

Comments
  #42  
Old 04-12-2011, 08:10 PM
daveaite's Avatar
daveaite daveaite is offline
 
Join Date: Jul 2009
Location: Florida
Posts: 1,890
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

As far as I know this works on ALL VERSIONS OF 4.X and possibly earlier versions. I have been upgrading my vBulletin live sites with this modification and registration still works. I believe it also increases registrations tremendously. I've been getting anywhere between 30-60 registers a day.

Also it does include facebook connect and image verifcation ( even though the spam bots have beaten these)
Reply With Quote
  #43  
Old 04-12-2011, 08:14 PM
daveaite's Avatar
daveaite daveaite is offline
 
Join Date: Jul 2009
Location: Florida
Posts: 1,890
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Updated before and after images
Reply With Quote
  #44  
Old 04-28-2011, 03:28 AM
venom2124 venom2124 is offline
 
Join Date: Feb 2009
Location: North Carolina
Posts: 213
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Antidepresiv View Post
I think this can only help increase the registration of spam bots, since google recaptcha is cracked and useless, and this mod eliminates any usage of custom profile fields, they just don't display, or show up anywhere, so you are open for spam.. I would like if they were included, in this "optimized registration"..

Best Regards,
Antidepresiv
Totally agree that your registration numbers will go up, but at what cost. If all you are getting is spammers whats the point of making it easier for them to get on your board. Once they are on your board it could cause the real members to shy away since they don't want to deal with the spam.
Reply With Quote
  #45  
Old 04-30-2011, 01:25 AM
Wayne Luke's Avatar
Wayne Luke Wayne Luke is offline
Senior Member
 
Join Date: Jan 2002
Location: Southern California
Posts: 1,694
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Antidepresiv View Post
I think this can only help increase the registration of spam bots, since google recaptcha is cracked and useless, and this mod eliminates any usage of custom profile fields, they just don't display, or show up anywhere, so you are open for spam.. I would like if they were included, in this "optimized registration"..

Best Regards,
Antidepresiv
Captcha is dead and should have been considered a temporary solution at best. Pre-emptive scanning and filtering which doesn't require or allow input from the user is the way to control them. Sure some will get through but as they get reported, the filtering will only get stronger.

I suggest using this addon: https://vborg.vbsupport.ru/showthread.php?t=248042

Combine that with this registration form and your normal users will be a lot more at ease. You won't have to overwhelm them with a lot extraneous questions.
Reply With Quote
  #46  
Old 05-02-2011, 11:17 PM
WxP's Avatar
WxP WxP is offline
 
Join Date: Dec 2005
Location: Albania
Posts: 104
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

A required field called Gener is missing or has an invalid value.
You have entered an invalid birthday.
Reply With Quote
  #47  
Old 06-09-2011, 02:06 PM
just.b.jealous just.b.jealous is offline
 
Join Date: Aug 2009
Location: Middle of no where.
Posts: 74
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Added referral section and scroll box for forum rules. Works on vB 4.1.3.



Replace the "register" template with the following:

Code:
{vb:stylevar htmldoctype}
<html xmlns="http://www.w3.org/1999/xhtml"<vb:if condition="$vboptions['enablefacebookconnect']"> xmlns:fb="http://www.facebook.com/2008/fbml"</vb:if> dir="{vb:stylevar textdirection}" lang="{vb:stylevar languagecode}">
<head>
	{vb:raw headinclude}

	{vb:cssfile register.css}
	<title><vb:if condition="$show['coppa']">{vb:rawphrase coppa} </vb:if>{vb:rawphrase register_at_x, {vb:raw vboptions.bbtitle}}</title>
{vb:raw headinclude_bottom}
</head>
<body>

{vb:raw header}
{vb:raw navbar}

<div id="pagetitle">
	<h1>{vb:rawphrase vbulletin_registration}</h1>
	<vb:if condition="$vboptions['usecoppa']"><p class="description">{vb:rawphrase step_2_of_2}</p></vb:if>
</div>

<script type="text/javascript" src="clientscript/vbulletin_md5.js?v={vb:raw vboptions.simpleversion}"></script>
<script type="text/javascript">
function verify_passwords(password1, password2)
{
	// do various checks, this will save people noticing mistakes on next page
	if (password1.value == '' || password2.value == '')
	{
		alert('{vb:rawphrase fill_out_both_password_fields}');
		return false;
	}
	else if (password1.value != password2.value)
	{
		alert('{vb:rawphrase entered_passwords_do_not_match}');
		return false;
	}
	else
	{
		<vb:if condition="$show['coppa']">
		pass_copy = password1.value;
		passconfirm_copy = password2.value;
		</vb:if>

		var junk_output;

		md5hash(password1, document.forms.register.password_md5, junk_output, {vb:raw show.nopasswordempty});
		md5hash(password2, document.forms.register.passwordconfirm_md5, junk_output, {vb:raw show.nopasswordempty});

		<vb:if condition="$show['coppa']">
		document.forms.register.password.value = pass_copy;
		document.forms.register.passwordconfirm.value = passconfirm_copy;
		</vb:if>

		return true;
	}
	return false;
}
</script>

<form id="registerform" action="register.php?do=addmember" name="register" method="post" onsubmit="return verify_passwords(password, passwordconfirm);" class="vbform block">

	<vb:if condition="$show['errors']">
		<h2 class="blockhead">{vb:rawphrase errors_occurred_during_registration}</h2>
		<div class="blockbody">
			<ul class="blockrow">
				{vb:raw errorlist}
			</ul>
		</div>
	</vb:if>

	<h2 class="blockhead">{vb:rawphrase register_at_x, {vb:raw vboptions.bbtitle}}</h2>
	<div class="blockbody formcontrols">
		
		<vb:if condition="$show['coppa']">
			<div class="blockrow">{vb:rawphrase until_receive_signed_form}</div>
		</vb:if>

		<vb:if condition="$vboptions['enablefacebookconnect']">
			<h3 class="blocksubhead">{vb:rawphrase facebook_connect}</h3>
			<div class="section">
				<div id="fbregbox" class="blockrow hidden">
				<vb:if condition="$show['facebookuser']">
					<a href="{vb:raw fbprofileurl}">
						<img src="{vb:raw fbprofilepicurl}" title="{vb:var fbname}" alt="{vb:var fbname}" />
					</a>
					{vb:rawphrase welcome_x_link_y, {vb:var fbname}, {vb:raw fbprofileurl}}
					<a style="cursor: pointer" onclick="vBfb.register_logout();"><img src="{vb:stylevar imgdir_misc}/facebook_logout.gif" alt="{vb:rawphrase logout_of_facebook}"/></a>
				<vb:else />
					<a id="fb_regloginbtn" href="#"><img src="{vb:stylevar imgdir_misc}/facebook_login_long.gif" alt="{vb:rawphrase facebook_connect}"></a>
				</vb:if>
				</div>
			
			<vb:if condition="$show['facebookuser']">
				<div class="blockrow">
					<label for="facebookusername">{vb:rawphrase already_a_member}</label>
					<div class="rightcol">
						<input type="text" class="textbox" name="facebookusername" id="facebookusername" maxlength="50" tabindex="1" value="{vb:rawphrase username}" />
						<input type="text" class="textbox" name="facebookpassword_hint" id="facebookpassword_hint" maxlength="50" tabindex="1" value="{vb:rawphrase password}" />
						<input type="password" class="textbox" name="facebookpassword" id="facebookpassword" maxlength="50" tabindex="1" style="display: none;" />
						<input type="button" class="button" name="facebookassociate" id="facebookassociate" value="{vb:rawphrase log_in}" tabindex="1" />
						<p class="description">{vb:rawphrase associate_facebook_with_x_account, {vb:raw vboptions.bbtitle}}</p>
						<script type="text/javascript">
						YAHOO.util.Dom.setStyle('facebookpassword_hint', "display", "inline");
						YAHOO.util.Dom.setStyle('facebookpassword', "display", "none");
						YAHOO.util.Dom.setStyle('facebookusername', "color", "#828282");
						YAHOO.util.Dom.setStyle('facebookpassword_hint', "color", "#828282");
						vB_XHTML_Ready.subscribe(function()
						{
						//
							YAHOO.util.Event.on('facebookusername', "focus", facebookusername_focus);
							YAHOO.util.Event.on('facebookusername', "blur", facebookusername_blur);
							YAHOO.util.Event.on('facebookpassword_hint', "focus", facebookpassword_hint);
							YAHOO.util.Event.on('facebookpassword', "blur", facebookpassword);
						});

						function facebookusername_focus(e)
						{
						//
							var textbox = YAHOO.util.Event.getTarget(e);
							if (textbox.value == '{vb:rawphrase username}')
							{
							//
								textbox.value='';
								textbox.style.color='black';
							}
						}

						function facebookusername_blur(e)
						{
						//
							var textbox = YAHOO.util.Event.getTarget(e);
							if (textbox.value == '')
							{
							//
								textbox.value='{vb:rawphrase username}';
								textbox.style.color='#828282';
							}
						}

						function facebookpassword_hint(e)
						{
						//
							var textbox = YAHOO.util.Event.getTarget(e);

							YAHOO.util.Dom.setStyle('facebookpassword_hint', "display", "none");
							YAHOO.util.Dom.setStyle('facebookpassword', "display", "inline");
							YAHOO.util.Dom.get('facebookpassword').focus();
						}

						function facebookpassword(e)
						{
						//
							var textbox = YAHOO.util.Event.getTarget(e);

							if (textbox.value == '')
							{
								YAHOO.util.Dom.setStyle('facebookpassword_hint', "display", "inline");
								YAHOO.util.Dom.setStyle('facebookpassword', "display", "none");
							}
						}
						</script>
					</div>
				</div>
			</vb:if>
			</div>
			
			{vb:raw fbimportform}
		</vb:if>

		<h3 class="blocksubhead">{vb:rawphrase required_information}</h3>

		<div class="section">
			<div class="blockrow">
				<label for="regusername">{vb:rawphrase username}:</label>
				<div class="rightcol">
					<input class="primary textbox" id="regusername" type="text" name="username" maxlength="{vb:raw vboptions.maxuserlength}" value="{vb:raw username}" tabindex="1" />
					<!--<img src="{vb:raw vboptions.cleargifurl}" id="reg_verif_image" alt="" />-->
					<div id="reg_verif_div" class="primary" style="display:none;"></div>
					<script type="text/javascript" src="clientscript/vbulletin_ajax_nameverif.js?v={vb:raw vboptions.simpleversion}"></script>
					<script type="text/javascript">
					<!--
						regname_verif = new vB_AJAX_NameVerify('regname_verif', 'regusername');
					//-->
					</script>
					<p class="description">{vb:rawphrase enter_your_username}</p>
				</div>
			</div>

			<div class="blockrow">
				<ul class="group">
					<li>
						<label for="password">{vb:rawphrase password}:</label>
						<input type="password" class="textbox" name="password" id="password" maxlength="50" value="{vb:raw password}" tabindex="1" />
					</li>
					<li>
						<label for="passwordconfirm">{vb:rawphrase confirm_password}:</label>
						<input type="password" class="textbox" name="passwordconfirm" id="passwordconfirm" maxlength="50" value="{vb:raw passwordconfirm}" tabindex="1" />
					</li>
				</ul>
				<p class="description">{vb:rawphrase enter_password_for_account}</p>
			</div>

			<div class="blockrow">
				<ul class="group">
					<li>
						<label for="email">{vb:rawphrase email_address}:</label>
						<input type="text" class="textbox" name="email" id="email" maxlength="50" value="{vb:raw email}" dir="ltr" tabindex="1" />
					</li>
					<li>
						<label for="emailconfirm">{vb:rawphrase confirm_email_address}:</label>
						<input type="text" class="textbox" name="emailconfirm" id="emailconfirm" maxlength="50" value="{vb:raw emailconfirm}" dir="ltr" tabindex="1" />
					</li>
				</ul>
				<p class="description">{vb:rawphrase enter_valid_email_address}</p>
			</div>

			<vb:if condition="$show['coppa']">
			<div class="blockrow">
				<label for="parentemail">{vb:rawphrase parent_guardian_email}:</label>
				<input type="text" class="primary textbox" name="parentemail" id="parentemail" maxlength="50" value="{vb:raw parentemail}" dir="ltr" tabindex="1" />
			</div>
			</vb:if>

			{vb:raw human_verify}
			

	<vb:if condition="$show['referrer']">
			<div class="blockrow">
				<label for="referrerfield_ctrl">{vb:rawphrase referrer}:</label>
				<div class="rightcol">
					<div id="referrerfield" class="popupmenu nomouseover noclick nohovermenu">
						<input id="referrerfield_ctrl" type="text" class="primary textbox popupctrl" name="referrername" value="{vb:raw referrername}" tabindex="1" maxlength="{vb:raw vboptions.maxuserlength}" />
						<div id="referrerfield_body" class="popupbody"></div>
					</div>
					<script type="text/javascript" src="clientscript/vbulletin_ajax_suggest.js?v={vb:raw vboptions.simpleversion}"></script>
					<script type="text/javascript">
					<!--
						rnc = new vB_AJAX_NameSuggest('rnc', 'referrerfield_ctrl', 'referrerfield');
						rnc.allow_multiple = false;
					//-->
					</script>			
				</div>
			</div>
			</vb:if>
		</div>
	<div class="blockbody formcontrols">
		<div class="section">
			<div class="blockrow">
				<p class="label">{vb:rawphrase to_proceed_must_agree}</p>
				<div id="forumrules" class="restore">
					<vb:if condition="$show['coppa']">
						<vb:comment> coppa regulations </vb:comment>
						{vb:rawphrase coppa_rules_description, {vb:raw vboptions.bbtitle}, {vb:link forumhome|bburl}, {vb:raw session.sessionurl}, {vb:raw vboptions.webmasteremail}}
						<vb:comment> / coppa regulations</vb:comment>
					</vb:if>
			
					<vb:comment> regular forum rules </vb:comment>
					{vb:rawphrase forum_rules_registration, {vb:raw vboptions.forumhome}, {vb:raw session.sessionurl_q}}
					{vb:rawphrase forum_rules_description, {vb:raw vboptions.bbtitle}}
					<vb:comment> regular forum rules </vb:comment>
				</div>
			</div>
			<div class="blockrow singlecheck">
				<label for="cb_rules_agree" class="full"><input type="checkbox" name="agree" id="cb_rules_agree" tabindex="1" value="1" /> <strong>{vb:rawphrase read_agree_abide_by_rules, {vb:raw vboptions.bbtitle}}</strong></label>
			</div>
		</div>
	</div>

	<div class="blockfoot actionbuttons">
		<div class="group">
			<input type="hidden" name="s" value="{vb:raw session.sessionhash}" />
			<input type="hidden" name="securitytoken" value="{vb:raw bbuserinfo.securitytoken}" />
			<input type="hidden" name="do" value="addmember" />
			<input type="hidden" name="url" value="{vb:raw url}" />
			<input type="hidden" name="password_md5" />
			<input type="hidden" name="passwordconfirm_md5" />
			<vb:if condition="!$show['birthday']">
				<input type="hidden" name="day" value="{vb:raw day}" />
				<input type="hidden" name="month" value="{vb:raw month}" />
				<input type="hidden" name="year" value="{vb:raw year}" />
			</vb:if>
			<vb:if condition="$show['coppa']">
				<input type="hidden" name="coppauser" value="1" />
			</vb:if>
			<input type="submit" class="button" value="{vb:rawphrase complete_registration}" tabindex="1" accesskey="s" />
			<input type="reset" class="button" name="Reset" tabindex="1" value="{vb:rawphrase reset_fields}" />
		</div>
	</div>

</form>

{vb:raw footer}

</body>
</html>
Reply With Quote
  #48  
Old 06-10-2011, 02:14 AM
just.b.jealous just.b.jealous is offline
 
Join Date: Aug 2009
Location: Middle of no where.
Posts: 74
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Antidepresiv View Post
Can this mode be used combined with email verification code ? Thanks!
What do you mean? I don't quite get it..

Quote:
Originally Posted by sticky View Post
Great mod but can we get the birth date on the same page as the options to speed it all up and make it a 1 page process?
Yes and no, the information for the birthday page is stored in a different template, register_verify_age, and not the register template. Then it submits to a form to check your age and forward if everything is OK. Could be accomplished but would take time.


Quote:
Quote:
Originally Posted by lycheepassion View Post
I dont think this was good everyone is breaking the rulesnow! How do I find the original file?
Quote:
Originally Posted by lycheepassion View Post
Is it the register.php file for the original I want to revert? Thanx
I changed the code a bit and added the rules in a scroll box above the check mark. See one of my previous post in this thread.

Quote:
Originally Posted by Antidepresiv View Post
since google recaptcha is cracked and useless, and this mod eliminates any usage of custom profile fields, they just don't display, or show up anywhere, so you are open for spam.. I would like if they were included, in this "optimized registration"..

Best Regards,
Antidepresiv
Recaptcha.. provide your own images & questions, change them occasionally. Add isbot, (it's for vB3 but works on 4 with a few changes- look towards the end of their thread.), to your forum and you'll never get a spambot. Maybe a real person who takes the time to register and spam (people do get paid to do it), but as for bots- you'll get none.

Eliminates the usage of custom profile fields? Well that depends, if its a profile field you're requiring on the register page then yeah, but if it's just some other field then nothing should go wrong. If it is a field you're trying to require for registering- that's a simple fix. Need some help, let me know.
Reply With Quote
  #49  
Old 07-16-2011, 05:09 AM
daveaite's Avatar
daveaite daveaite is offline
 
Join Date: Jul 2009
Location: Florida
Posts: 1,890
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Thanks
Reply With Quote
  #50  
Old 07-20-2011, 12:14 AM
cloferba cloferba is offline
 
Join Date: Apr 2009
Posts: 437
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

why you add the section "already a member"?

if you enter to register.php you are not a member... i think those 2 boxs are innecesary
Reply With Quote
  #51  
Old 07-20-2011, 12:24 AM
mikeinjersey mikeinjersey is offline
 
Join Date: Feb 2006
Posts: 290
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

For people complaining about the spambots, I used the original code daveaite provided, and still had my simple spambot protection intact.

I used

Settings > Human Verification Manager > Question and Answer

made it something simple like "What is 5 + 5?"

After implementing his Registration code, it was still intact and functional along with his fields.

So maybe this is a better alternative for others.

very simple to setup.

Along with Spam-O-Matic plugin, it's almost bulletproof. :-)

nice job , Daveaite
Reply With Quote
Reply

Thread Tools

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 04:58 AM.


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.04738 seconds
  • Memory Usage 2,368KB
  • Queries Executed 26 (?)
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
  • (8)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (4)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (11)post_thanks_box
  • (3)post_thanks_box_bit
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (1)postbit_attachment
  • (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
  • fetch_musername
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • post_thanks_function_fetch_thanks_bit_start
  • post_thanks_function_show_thanks_date_start
  • post_thanks_function_show_thanks_date_end
  • post_thanks_function_fetch_thanks_bit_end
  • post_thanks_function_fetch_post_thanks_template_start
  • post_thanks_function_fetch_post_thanks_template_end
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_attachment
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete