This hack is like the quick reply hack but on forumdisplay, so when viewing a forum, if the user has proper permissions to make a new thread then this quick thread box will show up for them.
Also view the screenshot to see how it looks
Features- Shows the user's signature if they have one!
- subscribes to the thread according to what the user specified in their user options!
Additions- make it look better
Spoiler (click to open)
I made a few cosmetic changes to my forumdisplay_quickthread template, here it is:
PHP Code:
<form action="newthread.php" method="post" name="vbform">
<input type="hidden" name="s" value="$session[sessionurl]" />
<input type="hidden" name="forumid" value="$forumid" />
<input type="hidden" name="do" value="postthread" />
<input type="hidden" name="parseurl" value="1" />
<table cellpadding="0" cellspacing="0" border="0" class="tborder" width="100%" align="center"><tr><td>
<table cellpadding="6" cellspacing="1" border="0" width="100%">
<tr>
<td class="tcat" colspan="2">$vbphrase[quick_new_thread]</td>
</tr>
<tr>
<td class="alt1" colspan="2"><span class="smallfont"><phrase 1="$session[sessionurl]" 2="$foruminfo[forumid]">$vbphrase[more_options_newthread]</phrase></span></td>
</tr>
<tr class="alt2">
<td class="alt2"><b>$vbphrase[subject]:</b></td>
<td class="alt2"><input type="text" class="bginput" name="subject" value="$subject" size="40" maxlength="85" tabindex="1" /></td>
</tr>
<tr>
<td class="alt1" valign="top" nowrap="nowrap"><b>$vbphrase[message]:</b></td>
<td class="alt1">
<table cellpadding="0" cellspacing="0" border="0">
<tr valign="top">
<td><textarea name="message" rows="7" cols="$textareacols" tabindex="2">$message</textarea><br /><br /><input type="submit" class="button" name="submit" value="$vbphrase[submit_new_thread]" accesskey="s" tabindex="3" />
<input type="submit" class="button" name="preview" value="$vbphrase[preview_post]" accesskey="p" tabindex="4" /></td>
</tr>
</table>
</td>
</tr>
</table>
</td></tr></table>
<br />
<input type="hidden" name="signature" value="1" />
<input type="hidden" name="emailupdate" value="$emailupdate" />
</form>
- button class for buttons.
- tcat instead of thead for table header
- 6 padding instead of 4
This makes it look a little more like the quick reply box.
Heres a screenie:
Close
- able to collapse the table
Spoiler (click to open)
Quote by Slave
Gary .. any chance you could add collapsibility to it?
I did it with Karthick's template (thanks !) :
Find :
Code:
<tr>
<td class="tcat" colspan="2">$vbphrase[quick_new_thread]</td>
</tr>
<tr>
<td class="alt1" colspan="2"><span class="smallfont"><phrase 1="$session[sessionurl]" 2="$foruminfo[forumid]">$vbphrase[more_options_newthread]</phrase></span></td>
</tr>
<tr class="alt2">
<td class="alt2"><b>$vbphrase[subject]:</b></td>
<td class="alt2"><input type="text" class="bginput" name="subject" value="$subject" size="40" maxlength="85" tabindex="1" /></td>
<input type="submit" class="button" name="preview" value="$vbphrase[preview_post]" accesskey="p" tabindex="4" /></td>
</tr>
</table>
</td>
</tr>
</table>
</td></tr></table>
Replace with :
Code:
<tbody>
<tr>
<td class="tcat" colspan="2">
<a style="float:$stylevar[right]" href="#top" onclick="return toggle_collapse('quickthread')"><img id="collapseimg_quickthread" src="$stylevar[imgdir_button]/collapse_tcat$vbcollapse[collapseimg_quickthread].gif" alt="" border="0" /></a>$vbphrase[quick_new_thread]
</td>
</tr>
</tbody>
<tbody id="collapseobj_quickthread" style="$vbcollapse[collapseobj_quickthread]">
<tr>
<td class="alt1" colspan="2"><span class="smallfont"><phrase 1="$session[sessionurl]" 2="$foruminfo[forumid]">$vbphrase[more_options_newthread]</phrase></span></td>
</tr>
<tr class="alt2">
<td class="alt2"><b>$vbphrase[subject]:</b></td>
<td class="alt2"><input type="text" class="bginput" name="subject" value="$subject" size="40" maxlength="85" tabindex="1" /></td>
<input type="submit" class="button" name="preview" value="$vbphrase[preview_post]" accesskey="p" tabindex="4" /></td>
</tr>
</table>
</td>
</tr>
</table>
</td></tr></tbody></table>
Thanks for this very useful hack : 56k users love it !
Close
- better looking table (if the mod above does not work)
Spoiler (click to open)
Your instruction didn't work, so I just snip bits of codes and made it work: (entire template)
This one is better looking one with collapse aswell.
PHP Code:
<form action="newthread.php" method="post" name="vbform">
<input type="hidden" name="s" value="$session[sessionurl]" />
<input type="hidden" name="forumid" value="$forumid" />
<input type="hidden" name="do" value="postthread" />
<input type="hidden" name="parseurl" value="1" />
<table cellpadding="0" cellspacing="0" border="0" class="tborder" width="100%" align="center"><tr><td>
<table cellpadding="6" cellspacing="1" border="0" width="100%">
<tbody>
<tr>
<td class="tcat" colspan="2">
<a style="float:$stylevar[right]" href="#top" onclick="return toggle_collapse('quickthread')"><img id="collapseimg_quickthread" src="$stylevar[imgdir_button]/collapse_tcat$vbcollapse[collapseimg_quickthread].gif" alt="" border="0" /></a>$vbphrase[quick_new_thread]
</td>
</tr>
</tbody>
<tbody id="collapseobj_quickthread" style="$vbcollapse[collapseobj_quickthread]">
<tr>
<td class="alt1" colspan="2"><span class="smallfont"><phrase 1="$session[sessionurl]" 2="$foruminfo[forumid]">$vbphrase[more_options_newthread]</phrase></span></td>
</tr>
<tr class="alt2">
<td class="alt2"><b>$vbphrase[subject]:</b></td>
<td class="alt2"><input type="text" class="bginput" name="subject" value="$subject" size="40" maxlength="85" tabindex="1" /></td>
</tr>
<tr>
<td class="alt1" valign="top" nowrap="nowrap"><b>$vbphrase[message]:</b></td>
<td class="alt1">
<table cellpadding="0" cellspacing="0" border="0">
<tr valign="top">
<td><textarea name="message" rows="7" cols="$textareacols" tabindex="2">$message</textarea><br /><br /><input type="submit" class="button" name="submit" value="$vbphrase[submit_new_thread]" accesskey="s" tabindex="3" />
<input type="submit" class="button" name="preview" value="$vbphrase[preview_post]" accesskey="p" tabindex="4" /></td>
</tr>
</table>
</td>
</tr>
</table>
</td></tr></tbody></table>
<br />
<input type="hidden" name="signature" value="1" />
<input type="hidden" name="emailupdate" value="$emailupdate" />
</form>
Close
Instructions
OPEN forumdisplay.php AND FIND
PHP Code:
$phrasegroups = array('forumdisplay');
REPLACE WITH
PHP Code:
$phrasegroups = array('forumdisplay','posting');
Find
PHP Code:
require_once('./includes/functions_forumdisplay.php');
Add below
PHP Code:
require_once('./includes/functions_newpost.php');
FIND
PHP Code:
// check if there is a forum password and if so, ensure the user has it set
ABOVE, ADD
PHP Code:
$foruminfo = fetch_foruminfo($forumid);
if (!($foruminfo['allowposting']==0 or !($forumperms & CANVIEW) or !($forumperms & CANPOSTNEW)))
{
require_once('./includes/functions_editor.php');
// get the checked option for auto subscription
$emailchecked = fetch_emailchecked($threadinfo, $bbuserinfo, $newpost);
if ($emailchecked[9999])
{
$emailupdate = '9999';
}
if ($emailchecked[0])
{
$emailupdate = '0';
}
if ($emailchecked[1])
{
$emailupdate = '1';
}
if ($emailchecked[2])
{
$emailupdate = '2';
}
if ($emailchecked[3])
{
$emailupdate = '3';
}
$textareacols = fetch_textarea_width();
eval("\$quickthread = \"" . fetch_template('forumdisplay_quickthread')."\";");
}
CREATE A NEW TEMPLATE CALLED forumdisplay_quickthread
WITH THE FOLLOWING CONTENT
HTML Code:
<form action="newthread.php" method="post" name="vbform">
<input type="hidden" name="s" value="$session[sessionurl]" />
<input type="hidden" name="forumid" value="$forumid" />
<input type="hidden" name="do" value="postthread" />
<input type="hidden" name="parseurl" value="1" />
<table cellpadding="0" cellspacing="0" border="0" class="tborder" width="100%" align="center"><tr><td>
<table cellpadding="4" cellspacing="1" border="0" width="100%">
<tr>
<td class="thead" colspan="2">$vbphrase[quick_new_thread]</td>
</tr>
<tr>
<td class="alt1" colspan="2"><span class="smallfont"><phrase 1="$session[sessionurl]" 2="$foruminfo[forumid]">$vbphrase[more_options_newthread]</phrase></span></td>
</tr>
<tr class="alt2">
<td class="alt2"><b>$vbphrase[subject]:</b></td>
<td class="alt2"><input type="text" class="bginput" name="subject" value="$subject" size="40" maxlength="85" tabindex="1" /></td>
</tr>
<tr>
<td class="alt1" valign="top" nowrap="nowrap"><b>$vbphrase[message]:</b></td>
<td class="alt1">
<table cellpadding="0" cellspacing="0" border="0">
<tr valign="top">
<td><textarea name="message" rows="7" cols="$textareacols" tabindex="2">$message</textarea></td>
</tr>
</table>
</td>
</tr>
</table>
</td></tr></table>
<br />
<table cellpadding="2" cellspacing="0" border="0" width="95%" align="center">
<tr>
<td align="center">
<input type="submit" class="bginput" name="submit" value="$vbphrase[submit_new_thread]" accesskey="s" tabindex="3" />
<input type="submit" class="bginput" name="preview" value="$vbphrase[preview_post]" accesskey="p" tabindex="4" />
</td>
</tr>
</table>
<input type="hidden" name="signature" value="1" />
<input type="hidden" name="emailupdate" value="$emailupdate" />
</form>
OPEN forumdisplay TEMPLATE AND FIND
HTML Code:
<!-- / controls below thread list -->
BELOW ADD
HTML Code:
<br />$quickthread
CREATE THE FOLLOWING PHRASES
(They're in the form of 'phrase_name' / 'phrase_content')
(ALL IN 'Forum Display' CATEGORY!):
Code:
quick_new_thread / Quick New Thread
more_options_newthread / <a href="newthread.php?{1}do=newthread&f={2}">Click here</a> for more posting options.
THE HACK IS NOW INSTALLED, ENJOY!