MyBB Hacks

Full Version: Pre Formatted Thread
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3
This is useful if we want our member to provide some info when they create a thread in a specified forum.
In this simple example, we will set a forum so when a member create a new thread in that forum, they need to fill a field with their Website URL, which is required, and optionally, they can fill a field with they Forum URL, which is not required.

Here is the simple setting for our XThreads:

1. XThreads Options in Forum settings:
  • Template Prefix: intro_
  • Show first post on every showthread page: Yes
2. Create a Custom Thread Fields with this settings:
  • Title: Your Website URL
  • Key: wwwurl
  • Description: Fill the field with your full site URL (required).
  • Applicable Forums: 'select a forum that we want the fields to be applied'
  • Input Field Type: Textbox
  • Editable by / Required Field?: Everyone (Required)
  • Display Format:

    HTML Code
    <strong>Website URL: {VALUE}</strong><br />

3. Create another Custom Thread Fields with this settings:
  • Title: Your Forum URL
  • Key: forumurl
  • Description: Fill the field with your full forum url (not required).
  • Applicable Forums: 'select the same as the forum in point 2'
  • Input Field Type: Textbox
  • Editable by / Required Field?: Everyone
  • Display Order: 2
  • Blank Replacement Value:

    HTML Code
    <strong>Forum URL: None</strong><br />

  • Display Format:

    HTML Code
    <strong>Forum URL: {VALUE}</strong><br />

4. Create a new template in Global Template:
  • Template Name: intro_postbit_first
  • Template Content:

    HTML Code
    {$ignore_bit}
    <a name="pid{$post['pid']}" id="pid{$post['pid']}"></a>
    <table border="0" cellspacing="{$theme['borderwidth']}" cellpadding="{$theme['tablespace']}" class="tborder" style="{$post_extra_style} {$post_visibility}" id="post_{$post['pid']}">
    	<tbody>
    		<tr>
    			<td class="tcat">
    				<div class="float_left smalltext">
    					{$post['postdate']}, {$post['posttime']} <span id="edited_by_{$post['pid']}">{$post['editedmsg']}</span>
    				</div>
    				{$post['posturl']}
    			</td>
    		</tr>
    
    		<tr>
    			<td class="trow1 {$unapproved_shade}">
    				<table cellspacing="0" cellpadding="0" border="0" style="width: 100%;">
    					<tr>
    						<td class="post_avatar" width="1" style="{$post['avatar_padding']}">
    							{$post['useravatar']}
    						</td>
    						<td class="post_author">
    							<strong><span class="largetext">{$post['profilelink']}</span></strong> {$post['onlinestatus']}<br />
    							<span class="smalltext">
    								{$post['usertitle']}<br />
    								{$post['userstars']}
    								{$post['groupimage']}
    							</span>
    						</td>
    						<td class="smalltext post_author_info" width="165">
    							{$post['user_details']}
    						</td>
    					</tr>
    				</table>
    			</td>
    		</tr>
    
    		<tr>
    			<td class="trow2 post_content {$unapproved_shade}">
    				<span class="smalltext"><strong>{$post['icon']}{$post['subject']} {$post['subject_extra']}</strong></span>
    
    				<div class="post_body" id="pid_{$post['pid']}">
    					{$GLOBALS['threadfields']['wwwurl']}{$GLOBALS['threadfields']['forumurl']}{$post['message']}
    				</div>
    				{$post['attachments']}
    				{$post['signature']}
    
    				<div class="post_meta" id="post_meta_{$post['pid']}">
    				{$post['iplogged']}
    				</div>
    			</td>
    		</tr>
    
    		<tr>
    			<td class="trow1 post_buttons {$unapproved_shade}">
    				<div class="author_buttons float_left">
    					{$post['button_email']}{$post['button_pm']}{$post['button_www']}{$post['button_find']}
    				</div>
    				<div class="post_management_buttons float_right">{$post['button_edit']}{$post['button_quickdelete']}{$post['button_quote']}{$post['button_multiquote']}{$post['button_report']}{$post['button_warn']}{$post['button_reply_pm']}{$post['button_replyall_pm']}{$post['button_forward_pm']}{$post['button_delete_pm']}
    				</div>
    			</td>
    		</tr>
    	</tbody>
    </table>

    The template above based on the default postbit template. If we have a custom postbit template, copy paste the template content into intro_postbit_first template. Then add {$GLOBALS['threadfields']['wwwurl']} and {$GLOBALS['threadfields']['forumurl']} variables into the template.

  • Template Name: intro_postbit_first_classic
  • Template Content:

    HTML Code
    {$ignore_bit}
    <table border="0" cellspacing="{$theme['borderwidth']}" cellpadding="{$theme['tablespace']}" class="tborder" style="{$post_extra_style} {$post_visibility}" id="post_{$post['pid']}">
    	<tr>
    		<td class="{$altbg}" width="15%" valign="top" style="white-space: nowrap; text-align: center;"><a name="pid{$post['pid']}" id="pid{$post['pid']}"></a>
    		<strong><span class="largetext">{$post['profilelink']}</span></strong> {$post['onlinestatus']}<br />
    		<span class="smalltext">
    			{$post['usertitle']}<br />
    			{$post['userstars']}
    			{$post['groupimage']}
    			{$post['useravatar']}<br />
    			{$post['user_details']}
    		</span>
    	</td>
    	<td class="{$altbg}" valign="top">
    		<table width="100%">
    			<tr><td>{$post['posturl']}<span class="smalltext"><strong>{$post['icon']}{$post['subject']} {$post['subject_extra']}</strong></span>
    			<br />
    			<div id="pid_{$post['pid']}" style="padding: 5px 0 5px 0;">
    				{$GLOBALS['threadfields']['wwwurl']}{$GLOBALS['threadfields']['forumurl']}{$post['message']}
    			</div>
    			{$post['attachments']}
    			{$post['signature']}
    			<div style="text-align: right; vertical-align: bottom;" id="post_meta_{$post['pid']}">
    				<div id="edited_by_{$post['pid']}">{$post['editedmsg']}</div>
    				{$post['iplogged']}
    			</div>
    		</td></tr>
    	</table>
    </td>
    </tr>
    <tr>
    	<td class="{$altbg}" style="white-space: nowrap; text-align: center; vertical-align: middle;"><span class="smalltext">{$post['postdate']} {$post['posttime']}</span></td>
    	<td class="{$altbg}" style="vertical-align: middle;">
    		<table width="100%" border="0" cellpadding="0" cellspacing="0">
    			<tr valign="bottom">
    				<td align="left" ><span class="smalltext">{$post['button_email']}{$post['button_pm']}{$post['button_www']}{$post['button_find']}</span></td>
    				<td align="right">{$post['button_edit']}{$post['button_quickdelete']}{$post['button_quote']}{$post['button_multiquote']}{$post['button_report']}{$post['button_warn']}{$post['button_reply_pm']}{$post['button_replyall_pm']}{$post['button_forward_pm']}{$post['button_delete_pm']}</td>
    			</tr>
    		</table>
    	</td>
    </tr>
    </table>

    Again, the template above based on the default postbit_classic template. If we have a custom postbit_classic template, copy paste the template content into intro_postbit_first_classic template. Then add {$GLOBALS['threadfields']['wwwurl']} and {$GLOBALS['threadfields']['forumurl']} variables into the template.

    Please remember that the key for this is, adding {$GLOBALS['threadfields']['wwwurl']} and {$GLOBALS['threadfields']['forumurl']} variables into the intro_postbit_first and/or intro_postbit_first_classic template.


Screenshots:

1. A member create a new thread in a specified forum:

[Image: xc7x8m.jpg]

2. Result (Horizontal postbit layout):

[Image: 2v2igq8.jpg]

3. Result (Classic postbit layout):

[Image: 10xeovp.jpg]

4. Error message will be displayed when they didn't fill the "Website URL" field (required field):

[Image: 33w8go1.jpg]
Erk, damn permissions.  Hopefully that's fixed now - you should be able to post in this forum.

Thanks a lot for the guide RateU Smile  Nice and easy to follow!
Biggrin
Thanks, Yumi Smile
How can I add the format to thread box instead of adding new fields to the thread? Like.. Instead of the "This is my Introduction" we will add some info like:

"Site:
Name:
E-Mail:"

Then  the user complete the info and submit.

Is this possible?
- Sorry for bumping this thread.
That's a bit different to what this thread is about.

Just set a template prefix for the forum, then copy your newthread template as prefix_newthread and then edit the <textarea> tag to stick in whatever default you want.
That worked Smile Thanks.
Actually, sorry, thinking about it, that may be a bad idea because text may stuff up in Preview Post / post errors.
Probably better off with using Template Conditionals, replace {$message} with:

Code:
<if $message || $message === '0' then>{$message}<else> stick your stuff in here </if>

Thank you for the heads up. Changed the {$message}.
Hey ZiNgA BuRgA

I love this plugin! I want users to be able to upload an image which will be included with the reformatted thread.

How can I do this? I tried to set my plugin settings to:
name:imgone
input type:file
valid file extensions:blank
capture tab key: yes
only accept image files: yes
Display Format:<img src="{URL}" alt="{FILENAME}">

and my intro_firstbit_first and classic templates have this:
<div class="post_body" id="pid_{$post['pid']}">
  {$GLOBALS['threadfields']['imgone']}{$post['message']}

Any ideas?

Thanks Biggrin
Pages: 1 2 3
Reference URL's