This little mod forces users to read and sign a "contract" before it allows them to post in certain forums of your choosing. It also allows you to "ticket" users who break your forum rules. After 3 tickets, the user can no longer post in the forum.
You may define a different contract for each of your forums if you so choose.
-------------------------------
YOU may easily extend this idea to make readers sign a contract before reading a certain forum. I do not need this feature and will not be adding it at this time.
------------- Template Conditionals You May Like to Use for the Ticket System:
Code:
<if condition="$post[reqcontract]">
- In the postbit, this lets you see if tickets are required in the forum.
Code:
<if condition="$post[ticket]">
- Check to see if the user has a ticket. This way, you don't have to show the number of tickets for people who don't have any.
Code:
<if condition="is_member_of($bbuserinfo,5,6)">
- use this to see if the person reading the post is an admin or supermod. If they are, you can show them the links that will ticket users.
Putting it all together, an example way to use the tickets in the postbit:
Code:
<if condition="$post[reqcontract]">
<if condition="is_member_of($bbuserinfo,5,6)">
<if condition="$post[ticket]">
User's Tickets in this forum: $post[ticket]<br />
</if>
<a href="ticket.php?do=addticket&forumid=$post[forumid]&userid=$post[userid]">Ticket User</a><br />
<if condition="$post[ticket]">
<a href="ticket.php?do=rticket&forumid=$post[forumid]&userid=$post[userid]">Remove One Ticket</a><br />
<a href="ticket.php?do=cticket&forumid=$post[forumid]&userid=$post[userid]">Clear the user's tickets</a><br />
</if>
</if>
</if>
A huge thank you to LiveWire, Boofo and HellSatan for testing this out.
Installation on 3.5 RC1 is as simple as importing the product, changing two existing phrases and making one template change.
------------------------------
This hack will always be free, however your donations are kindly accepted and will help towards further development. If you donate, please leave me some info (either your forum site or username at vB.org) so that I can thank you.
Amy
Show Your Support
This modification may not be copied, reproduced or published elsewhere without author's permission.
Would it be possible to force one contract for multiple forums? We have "trade" forums which need a contract to post. All have the same contract i don't want the users to read and agree the same contract 6 times ...
Would it be possible to force one contract for multiple forums? We have "trade" forums which need a contract to post. All have the same contract i don't want the users to read and agree the same contract 6 times ...
Yes, you could do it. If you go to the code in contract.php that writes the contract signature to the database, you could have it write the contract for all 6 forums when the user agrees to any of the group. The easiest way would be for you to hard code the forum ids into the code.
Is there any way to make this show up before vieweing the forum? So instead of making them sign it when posting, they sign it when they view the forum.
Is there any way to make this show up before vieweing the forum? So instead of making them sign it when posting, they sign it when they view the forum.
Possible?
Possible. You would need to do the check for the user having signed the contract on forumdisplay.php and showthread.php instead of where it is now.
@amykhar
I think this Hack could be implemented without File Edits in RC1 by using Hooks forumadmin_edit_form, showthread_post_start and forumdata_start.
Sou you might want to update it