The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
Require Users to Sign a Contract Before Posting in an Individual Forum Details »» | |||||||||||||||||||||||||||
Require Users to Sign a Contract Before Posting in an Individual Forum
Developer Last Online: Nov 2013
This is a port of this mod:
https://vborg.vbsupport.ru/showthread.php?t=76835 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]"> Code:
<if condition="$post[ticket]"> Code:
<if condition="is_member_of($bbuserinfo,5,6)"> 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
|
Comments |
#82
|
|||
|
|||
Nice work!
The hack works well other than "to_proceed_must_agree and read_agree_abide_by_rules" phrase isn't listed at all. I added the phrase manually and it still doesn't show up next to the checkbox. Any thoughts here? I am a bit of a VB noob, so the answer is not so obvious to me. Thanks in advance to any who might point me in the right direction. |
#83
|
|||
|
|||
I aint sure either how to change the 2 phrases to Global
|
#84
|
|||
|
|||
OK, found the right phrases but.........
"To do this, you must be in DEBUG mode." <--How do I do this? I am not sure if my host has PHP debug on or installed. Thanks |
#85
|
||||
|
||||
There is a sticky thread in the how-to and tutorials forum about debug mode.
|
#86
|
|||
|
|||
Thanks, will have a look. Looked around before I asked in here but couldn't seem to find a thread on the topic. Thank again
|
#87
|
||||
|
||||
I installed everything correctly I believe, however, I changed the hook location from posts to forum view (Due to the quick reply error). I don't see any sign of a ticket system. Everything else works correctly though.
|
#88
|
|||
|
|||
hi!
we use the same contract text on all of our forums. so we wanted it so that if they agree to the contract once, they can post on any forum requiring a contract. this is a simple one line fix in two hooks. modify hook: newreply_start and newthread_start near the bottom, replace: Code:
if (!$contractsigned) { Code:
if (is_null($vbulletin->userinfo['contracts']) or $vbulletin->userinfo['contracts']=="") { you still have to enable the contract on each and every forum though... you could make this a bit more effecient yet, but here's a KISS method that doesn't cause too much overhead by ommitting unnecessary code when not checking for specific forum contract acceptances. hope someone finds this usefull! |
#89
|
|||
|
|||
secondly, they wanted the same contracttext to show up for all forums. i.e. they did not want to copy/paste the contract text into each and every one of their 20 forums and then have to do it again upon a text change.
we did this by another 1-line edit and 1 phrase creation. create a phrase: master_contract_text put into it whatever rules you want or whatever verbage you want displayed. edit template: forum_contract replace: Code:
$rules Code:
$vbphrase[master_contract_text] it should be noted that you could skip the phrase setup and just replace $rules w/ the verbage you want as well. but you won't have to hunt around for the text in the template each time you want to make a text change if you do it via creating a phrase. lastly, thank you Amy for a nifty plugin! |
#90
|
|||
|
|||
Does anyone know if there is something similar to this for 3.6?
[edit]Never mind found this one that seems to be working: https://vborg.vbsupport.ru/showthread.php?t=97699[/edit] |
#91
|
||||
|
||||
Pleeeeeeeeeeeease tell me this hack is 3.6.x compatible? Please..
|
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|