Back to vBulletin 3.8 Add-ons

Mark Threads As 'Solved'
Mod Version: 1.1.2, by Eric

vB Version: 3.8.x Rating: (14 votes - 4.50 average) Installs: 232
Released: 12 Apr 2009 Last Update: 16 Jan 2010 Downloads: 1077
Not Supported DB Changes Uses Plugins Template Edits Additional Files Re-usable Code  

My time is very limited these days, with my full time job. I have marked this mod as re-usable code, if any other coder wishes to continue work on it. I may still try to support this mod as time permits.

If you use this modification, please >> , http://www.vbulletin.org/forum/vborg_miscactions.php?do=nominate&threadid=211020&type=1, and consider donating via PayPal <<, TY!

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.

Current Version
1.1.2 - You can find the 3.6.x version, here.

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.7 - 3.8 versions. This will not work on 4.0. If you are looking for a vB4 version, you can find it here.

Sounds cool. How do I install?
  1. Extract the zip, you should have the following directories/files:

    Code:
    /
    |_ install.html
    |_ product-solvedthread.xml
    /upload/
    |_ solved.php
    	/upload/images/
    		/buttons/
    		|_ marksolved.gif
    	/upload/includes/
    		/xml/
    		|_ bitfield_solvedthread.xml
  2. Upload: (in the below instructions 'yourforum' would be where you have vBulletin installed)
    • /upload/solved.php to /yourforum/solved.php
    • /upload/images/buttons/marksolved.gif to /yourforum/images/buttons/marksolved.gif (upload to each style folder, if you have more than one style)
    • /upload/includes/xml/bitfield_solvedthread.xml to /yourforum/includes/xml/bitfield_solvedthread.xml
  3. Import the product, product-solvedthreads.xml by going to: AdminCP -> Plugins & Products -> Manage Products -> [Add/Import Product]
  4. Make the following template edits to all of your installed styles:

    SHOWTHREAD

    Find:
    HTML Code:
    		<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&amp;t=$threadinfo[threadid]">$vbphrase[add_a_poll_to_this_thread]</a></div>
    		</if>
    	</div>
    	<!-- / thread tools -->
    Replace with:
    HTML Code:
    		<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&amp;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&amp;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&amp;t=$threadinfo[threadid]">$vbphrase[solvedthread_markunsolved]</a></div>
    			</if>
    		</if>
    	</div>
    	<!-- / thread tools -->
    Find:
    HTML Code:
    	<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&amp;t=$threadinfo[threadid]">$vbphrase[add_a_poll_to_this_thread]</a></td>
    	</tr>
    	</if>
    	<if condition="$show['adminoptions']">
    Replace with:
    HTML Code:
    	<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&amp;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&amp;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&amp;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 Solved Threads Permissions > Can Mark Threads as Solved for each usergroup.
  7. To setup the forums it can be used in, follow the instructions in this

    Spoiler (click to open)


    Quote by TimberFloorAu
    Can this be triggered on a Per forum basis ?
    Quote by KevinGupta
    Can we choose which specific forums we want it to work on?
    Quote by SecondV
    Instead of 'excluding' forums, since using the Thread Prefix system, you can choose which forums this will be shown in.
    After installing, go to: Thread Prefixes >> Thread Prefix Manager

    You'll see: Solved Thread on the left, [Add Prefix] [Edit] [Delete] on the right. Choose Edit.

    Then you'll see: Use Prefix Set in These Forums, select the forums you want this used in. (Hold the CTRL button to select more than one)

    Close
    post.

Upgrade
To 1.1.2 from 1.1.0/1.1.1
  1. Re-import the product, product-solvedthreads.xml, with "Allow Overwrite" set to yes
  2. Upload the files/folders in the "upload" folder, allowing it to overwrite the old files.

To 1.1.x from 1.0.0
  1. ATM, it is not advised to do an upgrade from previous versions to this one if you already have 1.0.0 installed. Fresh installs should be fine.


That's it! Enjoy!

Changelog
1.1.2 - January 15, 2010
- Updated the product file, permissions, and phrases. This should, hopefully, resolve the blank page problems, along with the permission not showing up for usergroups.

1.1.1 - July 21, 2009
- Updated the product plugins and phrases, this should solve the blank page problem, and the problem of the option not showing in Admincp for ug permissions.

1.1.0 - April 14, 2009
- Small updates to xml file, no version # change. If it works for you, no need to do anything.
- If you have problems uninstalling, please see this

Spoiler (click to open)


Made some changes to the product XML - version number not changing.

Those having problems, please uninstall the mod completely - and try reinstalling. If the product won't uninstall:

Go to Manage Products -> Mark Threads As 'Solved' -> Edit -> Go

Edit the uninstall code, find and remove:

PHP Code:
// #######################################################################
$solvedthread_prefixsetdm =& datamanager_init('PrefixSet'$vbulletinERRTYPE_CP);

$solvedthread_prefixset $db->query_first("
    SELECT *
    FROM " 
TABLE_PREFIX "prefixset
    WHERE prefixsetid = 'solvedthread'
"
);

$solvedthread_prefixsetdm->set_existing($solvedthread_prefixset);
$solvedthread_prefixsetdm->delete();
unset(
$solvedthread_prefixsetdm);

if (!
function_exists('build_prefix_datastore'))
{
    require_once(
DIR '/includes/adminfunctions_prefix.php');
}

build_prefix_datastore();

// #######################################################################
$solvedthread_prefixdm =& datamanager_init('Prefix'$vbulletinERRTYPE_CP);

$solvedthread_prefix $db->query_first("
    SELECT *
    FROM " 
TABLE_PREFIX "prefix
    WHERE prefixid = 'solvedthread_solved'
"
);

$solvedthread_prefixdm->set_existing($solvedthread_prefix);
$solvedthread_prefixdm->delete();
unset(
$solvedthread_prefixdm);

build_prefix_datastore(); 
Save.

Then try to uninstall again.

Close
post.

1.1.0 - April 12, 2009
- Updated for 3.7 & 3.8
- Now uses the built-in Thread Prefix system
- Instead of 'excluding' forums, since using the Thread Prefix system, you can choose which forums this will be shown in.

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.


If you use this modification, please >> , http://www.vbulletin.org/forum/vborg_miscactions.php?do=nominate&threadid=211020&type=1, and consider donating via PayPal <<, TY!

NOTE: This mod is marked "unsupported", but I'll try my best (as time permits) to help those who have marked as installed.

Download

File Type: %1$s solved_threads_1.1.1.zip (7.7 KB, 375 downloads)
File Type: %1$s solved_threads_1.1.2.zip (7.8 KB, 563 downloads)

Similar Mods

New Posting Features Mark Threads As 'Solved' vBulletin 3.6 Add-ons
Add-On Releases Mark threads 'solved' Modification Graveyard

vblts.ru supports vBulletin®, 2022-2024