Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 3.5 > vBulletin 3.5 Add-ons

Reply
 
Thread Tools
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
Version: 1.00, by amykhar amykhar is offline
Developer Last Online: Nov 2013 Show Printable Version Email this Page

Version: 3.5.0 RC1 Rating:
Released: 07-08-2005 Last Update: 08-18-2005 Installs: 62
DB Changes Uses Plugins Template Edits
Additional Files Is in Beta Stage  
No support by the author.

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]">
- 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.

Comments
  #22  
Old 07-26-2005, 08:24 PM
chariotdriver chariotdriver is offline
 
Join Date: Jul 2005
Posts: 29
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I''ve had this Hack installed, and it is showing up in the "Posting Options" in the Forum Manager,.. but when I select "Require users to sign a contract before being allowed to post?" and then Save, and then go directly back in to check it out, it is set to off.
I cannot make it stick,..Anyone know what is happening?
thanks
Phil
Reply With Quote
  #23  
Old 07-26-2005, 08:32 PM
amykhar's Avatar
amykhar amykhar is offline
 
Join Date: Oct 2001
Location: PA
Posts: 4,438
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Make sure you made every file change and ran the queries.
Reply With Quote
  #24  
Old 07-26-2005, 09:02 PM
amykhar's Avatar
amykhar amykhar is offline
 
Join Date: Oct 2001
Location: PA
Posts: 4,438
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I will be updating this soon for RC1. Under RC1, as of right now, only one file edit is required. I'm trying to figure out a way to make that file edit not necessary either.
Reply With Quote
  #25  
Old 07-26-2005, 09:10 PM
Andreas's Avatar
Andreas Andreas is offline
 
Join Date: Jan 2004
Location: Germany
Posts: 6,863
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by amykhar
I'm trying to figure out a way to make that file edit not necessary either.
Hookname: showthread_post_start
PHP Code:
$contractsigned 1;
// Check to see if a contract is required.
if ($foruminfo['reqcontract'])
{
    
// Check to see if the user has signed the contract.

    
$contracts 0;
    
$contracts explode(",",$vbulletin->userinfo['contracts']);
    if (
$contracts)
    {
        
$contractsigned in_array($foruminfo['forumid'],$contracts);
    }
    else
    {
        
$contractsigned false;
    }
    if (
$show['quickreply'] AND !$contractsigned)
    {
        
$show['quickreply'] = false;
        
$show['wysiwyg'] = 0;
        
$quickreply ''
    }

Should work
Reply With Quote
  #26  
Old 07-27-2005, 12:30 AM
amykhar's Avatar
amykhar amykhar is offline
 
Join Date: Oct 2001
Location: PA
Posts: 4,438
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Yep. That's the last one I was playing with.

Amy
Reply With Quote
  #27  
Old 07-27-2005, 12:33 AM
Chris M's Avatar
Chris M Chris M is offline
 
Join Date: Dec 2001
Location: Northampton, England
Posts: 6,186
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

How did you get it to update class_dm_forum.php?

I can't for the life of me figure out how...

Satan
Reply With Quote
  #28  
Old 07-27-2005, 12:39 AM
amykhar's Avatar
amykhar amykhar is offline
 
Join Date: Oct 2001
Location: PA
Posts: 4,438
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

It's easy. forumdata_start
Code:
$this->validfields['mystrfield'] = array(TYPE_STR, REQ_NO);
$this->validfields['reqcontract'] = array(TYPE_UINT, REQ_NO);
Reply With Quote
  #29  
Old 07-27-2005, 12:42 AM
Chris M's Avatar
Chris M Chris M is offline
 
Join Date: Dec 2001
Location: Northampton, England
Posts: 6,186
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by amykhar
It's easy. forumdata_start
Code:
$this->validfields['mystrfield'] = array(TYPE_STR, REQ_NO);
$this->validfields['reqcontract'] = array(TYPE_UINT, REQ_NO);
You are goddessly

In my defence, it is 2:40am

Satan
Reply With Quote
  #30  
Old 07-27-2005, 12:43 AM
amykhar's Avatar
amykhar amykhar is offline
 
Join Date: Oct 2001
Location: PA
Posts: 4,438
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Don't thank me. Kirby taught me
Reply With Quote
  #31  
Old 07-27-2005, 12:45 AM
Chris M's Avatar
Chris M Chris M is offline
 
Join Date: Dec 2001
Location: Northampton, England
Posts: 6,186
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by amykhar
Don't thank me. Kirby taught me
Well Kirby isn't here, so when I'm thanking you, then I'm also thanking Kirby

Satan
Reply With Quote
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 05:17 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.05587 seconds
  • Memory Usage 2,320KB
  • Queries Executed 25 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (6)bbcode_code
  • (1)bbcode_php
  • (3)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (11)post_thanks_box
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (11)postbit_onlinestatus
  • (11)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete