[FILLED] Mark threads 'solved'

THE HACK YOU WANT IS IN MODIFICATION GRAVEYARD BECAUSE THIS IS MADE WITHOUT PERMISSION OF THE ORIGINAL OWNER, THIS IS THE ORIGINAL HACK, ONLY ITS FOR 3.6x BUT IT SHOULD WORK FINE ON 3.7x

******

What is this!?
This modification will allow you & your members (based on usergroup permissions) to mark a thread as "Solved". It will add the prefix "[SOLVED]" to the thread title, and if set in the admincp - it will also close the thread.

This mod came about, around a year ago - with this thread. But I never released it... until now. :)

Current Version
1.0.1

Features flagged for future version(s):
  • Thread starter can choose to solve a thread, and input the username of who solved it - that user would recieve rep. points. (admin-configurable amount of rep. points)
  • Given the above - include count of threads a user has solved in postbit & profile
  • Possibly figure out a way to automate everything on install - so there are no template edits.
And anything else that is suggested :)

Will this work on x.x.x ??
Unless otherwise stated, this will work on all 3.6 versions. I've not tested this on 3.5, but not much changed from 3.5 to 3.6 in this hack - so it should work on 3.5 as well.

Sounds cool. How do I install?
  1. Extract the zip, you should have the following directories/files (in the "upload" folder):
    Code:
    /
    |_ solved.php
    
    /images/
    	/buttons/
    	|_ marksolved.gif
    
    /includes/
    	/xml/
    	|_ bitfield_solvedthread.xml
  2. Upload the files/folders keeping the same structure.
  3. Import the product, product-solvedthread.xml
  4. Make the following template edits:
    SHOWTHREAD

    Find:
    HTML:
    		<if condition="$show['addpoll']">
    			<div><img class="inlineimg" src="$stylevar[imgdir_button]/addpoll.gif" alt="$vbphrase[add_a_poll]" vspace="1" /> <a href="poll.php?$session[sessionurl]do=newpoll&t=$threadinfo[threadid]">$vbphrase[add_a_poll_to_this_thread]</a></div>
    		</if>
    	</div>
    	<!-- / thread tools -->
    Replace with:
    HTML:
    		<if condition="$show['addpoll']">
    			<div><img class="inlineimg" src="$stylevar[imgdir_button]/addpoll.gif" alt="$vbphrase[add_a_poll]" vspace="1" /> <a href="poll.php?$session[sessionurl]do=newpoll&t=$threadinfo[threadid]">$vbphrase[add_a_poll_to_this_thread]</a></div>
    		</if>
    		<if condition="$show['solvedthread']">
    			<div><img class="inlineimg" src="$stylevar[imgdir_button]/marksolved.gif" alt="$vbphrase[solvedthread_marksolved]" vspace="1" /> <a href="solved.php?$session[sessionurl]do=marksolved&t=$threadinfo[threadid]">$vbphrase[solvedthread_marksolved]</a></div>
    		<else />
    			<if condition="$show['solvedthread_unsolve']">
    			<div><img class="inlineimg" src="$stylevar[imgdir_button]/marksolved.gif" alt="$vbphrase[solvedthread_markunsolved]" vspace="1" /> <a href="solved.php?$session[sessionurl]do=markunsolved&t=$threadinfo[threadid]">$vbphrase[solvedthread_markunsolved]</a></div>
    		</if>
    	</if>
    	</div>
    	<!-- / thread tools -->

    Find:
    HTML:
    	<if condition="$show['addpoll']">
    	<tr>
    		<td class="vbmenu_option"><img class="inlineimg" src="$stylevar[imgdir_button]/addpoll.gif" alt="$vbphrase[add_a_poll]" /> <a href="poll.php?$session[sessionurl]do=newpoll&t=$threadinfo[threadid]">$vbphrase[add_a_poll_to_this_thread]</a></td>
    	</tr>
    	</if>
    	<if condition="$show['adminoptions']">
    Replace with:
    HTML:
    	<if condition="$show['addpoll']">
    	<tr>
    		<td class="vbmenu_option"><img class="inlineimg" src="$stylevar[imgdir_button]/addpoll.gif" alt="$vbphrase[add_a_poll]" /> <a href="poll.php?$session[sessionurl]do=newpoll&t=$threadinfo[threadid]">$vbphrase[add_a_poll_to_this_thread]</a></td>
    	</tr>
    	</if>
    	<if condition="$show['solvedthread']">
    	<tr>
    		<td class="vbmenu_option"><img class="inlineimg" src="$stylevar[imgdir_button]/marksolved.gif" alt="$vbphrase[solvedthread_marksolved]" /> <a href="solved.php?$session[sessionurl]do=marksolved&t=$threadinfo[threadid]">$vbphrase[solvedthread_marksolved]</a></td>
    	</tr>
    		<else />
    			<if condition="$show['solvedthread_unsolve']">
    	<tr>
    		<td class="vbmenu_option"><img class="inlineimg" src="$stylevar[imgdir_button]/marksolved.gif" alt="$vbphrase[solvedthread_markunsolved]" /> <a href="solved.php?$session[sessionurl]do=markunsolved&t=$threadinfo[threadid]">$vbphrase[solvedthread_markunsolved]</a></td>
    	</tr>
    		</if>
    	</if>
    	<if condition="$show['adminoptions']">
  5. Set options in AdminCP > vBulletin Options > Solved Threads
  6. Edit Post / Thread Permissions > Can Mark Threads as Solved for each usergroup.

Upgrading
To 1.0.1

  • Re-import the product, product-solvedthreads.xml, with "Allow Overwrite" set to yes
  • Upload and overwrite solved.php
  • Make the following template edits:
    SHOWTHREAD

    Find:
    HTML:
    	<if condition="$show['solvedthread']">
    		<div><img class="inlineimg" src="$stylevar[imgdir_button]/marksolved.gif" alt="$vbphrase[solvedthread_marksolved]" vspace="1" /> <a href="solved.php?$session[sessionurl]do=marksolved&t=$threadinfo[threadid]">$vbphrase[solvedthread_marksolved]</a></div>
    	</if>
    Replace with:
    HTML:
    	<if condition="$show['solvedthread']">
    		<div><img class="inlineimg" src="$stylevar[imgdir_button]/marksolved.gif" alt="$vbphrase[solvedthread_marksolved]" vspace="1" /> <a href="solved.php?$session[sessionurl]do=marksolved&t=$threadinfo[threadid]">$vbphrase[solvedthread_marksolved]</a></div>
    	</if>
    	<else />
    		<if condition="$show['solvedthread_unsolve']">
    		<div><img class="inlineimg" src="$stylevar[imgdir_button]/marksolved.gif" alt="$vbphrase[solvedthread_markunsolved]" vspace="1" /> <a href="solved.php?$session[sessionurl]do=markunsolved&t=$threadinfo[threadid]">$vbphrase[solvedthread_markunsolved]</a></div>
    		</if>
    	</if>

    Find:
    HTML:
    		<if condition="$show['solvedthread']">
    		<tr>
    			<td class="vbmenu_option"><img class="inlineimg" src="$stylevar[imgdir_button]/marksolved.gif" alt="$vbphrase[solvedthread_marksolved]" /> <a href="solved.php?$session[sessionurl]do=marksolved&t=$threadinfo[threadid]">$vbphrase[solvedthread_marksolved]</a></td>
    		</tr>
    		</if>
    Replace with:
    HTML:
    		<if condition="$show['solvedthread']">
    		<tr>
    			<td class="vbmenu_option"><img class="inlineimg" src="$stylevar[imgdir_button]/marksolved.gif" alt="$vbphrase[solvedthread_marksolved]" /> <a href="solved.php?$session[sessionurl]do=marksolved&t=$threadinfo[threadid]">$vbphrase[solvedthread_marksolved]</a></td>
    		</tr>
    		<else />
    			<if condition="$show['solvedthread_unsolve']">
    		<tr>
    			<td class="vbmenu_option"><img class="inlineimg" src="$stylevar[imgdir_button]/marksolved.gif" alt="$vbphrase[solvedthread_markunsolved]" /> <a href="solved.php?$session[sessionurl]do=markunsolved&t=$threadinfo[threadid]">$vbphrase[solvedthread_markunsolved]</a></td>
    		</tr>
    			</if>
    	</if>

That's it! Enjoy! :)

Changelog
1.0.1 - July 12, 2007
- Added the ability to unsolve a thread.
- Added the ability to exclude this in certain forums
- Added the ability to change the prefix in that acp

1.0.0 - June 8, 2007
- Initial release.
 
Back
Top