vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vBulletin 3.6 Add-ons (https://vborg.vbsupport.ru/forumdisplay.php?f=194)
-   -   Private Messages Enhancements - Can't Use Private Messages Before X posts (https://vborg.vbsupport.ru/showthread.php?t=155308)

vitrag24 11-24-2007 05:20 PM

**EDITED**
Working.
Thanks.

But i would like to make an upgrade in which users even can't see pm window .as if users see pm window and click on send and see msg they can not use pm then they will be frustrated if pm was longer as they wasted itme in writing. :D

ParsianSat_Net 11-25-2007 12:44 PM

what is doing?

DPtheGod 12-09-2007 07:21 AM

It is working fine on my 3.6.8.

Nice hack. Saved me time of editing usergroup promotions!

redlabour 01-29-2008 05:02 PM

Does it still work in 3.7?

Julrou 02-06-2008 01:09 PM

Quote:

Originally Posted by redlabour (Post 1431851)
Does it still work in 3.7?

Yes, of course. :)

But it still doesn't work with members already registered on the board, it works only with the new members... ;)

tanujdude91 02-08-2008 11:41 AM

Can we disable this option for some usergroups???

AngelBlue 02-14-2008 08:39 PM

I suggest :

(1) You should add a URL tag to your product, so that they can find this page again more easily:
PHP Code:

<url>https://vborg.vbsupport.ru/showthread.php?t=155308</url> 

(2) That you consider implementing a version of this hack simply with template changes.

Example: I find that by adding the following to the beginning :
Code:

<if condition="in_array($bbuserinfo['usergroupid'], array(6,4,2,1,3,9,8,18,13,14,15,10))">
<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><TR><TD class="tcat">Sorry, you cannot send private messages.</TD></TR>
<TR><TD>
<BR><B>This is usually caused by a low post count</b>, although other possible causes are :
<UL>
<LI>A negative reputation score</LI>
<LI>A recent infraction</LI>
<LI>Your account awaiting email or admin activation</LI>
</UL>
<BR>To contact the webmaster or a moderator, you should instead post a new thread in <a href="http://www.ourdomainname.org/forum/forumdisplay.php?f=XXX">the requests forum</a>.
</TD></TR></TABLE>
<else />

and the following to the end :
Code:

</if>
of the "pm_newpm" template, I can very effectively stop certain usergroups from sending PMs. Combined with using the "promote based on posts" options in the promotions system, this can be a very effective alternative to your hack. Not only does it stop them seeing the "send pm" box at all (as opposed to letting them fill it out, but then giving them an error when they try to use it), but it has less overhead, too.
The downsides of my versions are :
(1) not as flexible as having php code to define who can and who can't send PMs
(2) can't know who you are sending the PMs to, unfortunately... so not very effective for blocking the sending of PMs to all but certain people. I get around this restriction by having a "requests" forum which anyone can post a thread in and reply to their own thread in... but only moderators can see or reply to other peoples' threads. This hack still lets the affected users be *sent* pms... so staff can contact the users concerned via PMs... the users are just forced to use a requests forum or email if they want to talk back.

(3) Have you considered having a pre-filled in "to" field in the send_pm template?
Say, you could make a product that, when someone loads the new_pm page, creates a $restricted_pm_html variable, and populates it with a drop-down menu of the names of the administrators or people designated to handle pms by new/restricted users.
If the template detected the user being restricted and, instead of giving them a free text entry box for the recipient name, simply gave them a drop-down menu... that could be a very effective way of limiting PMs.

For example, if you want people with zero posts to only be able to send PMs to the administrator, you could take :
Code:

                                        <if condition="$show['popups']">
                                        <script type="text/javascript" src="clientscript/vbulletin_ajax_namesugg.js?v=$vboptions[simpleversion]"></script>
                                        </if>
                                        <div>$vbphrase[recipient_usernames]</div>
                                        <div id="pmrecips"><textarea id="pmrecips_txt" name="recipients" rows="<if condition="is_browser('mozilla')">1<else />2</if>" cols="50" tabindex="1">$pm[recipients]</textarea></div>
                                        <if condition="$show['popups']">
                                                <div class="vbmenu_popup" id="pmrecips_menu" style="display:none; z-index:50"></div>
                                                <script type="text/javascript">
                                                <!--
                                                vbmenu_register('pmrecips', true);
                                                recip_sugg = new vB_AJAX_NameSuggest('recip_sugg', 'pmrecips_txt', 'pmrecips');
                                                recip_sugg.allow_multiple = true;
                                                //-->
                                                </script>
                                        </if>
                                        <span style="display:none" onclick="return swapbcc(this);" id="bccspan1">[<a href="#">$vbphrase[bcc]</a>]</span>
                                        <span id="bccspan2">$vbphrase[bcc] $vbphrase[recipient_usernames]<br /></span>
                                        <div id="bccpmrecips"><textarea id="bccpmrecips_txt" name="bccrecipients" rows="<if condition="is_browser('mozilla')">1<else />2</if>" cols="50" tabindex="1">$pm[bccrecipients]</textarea></div>
                                        <if condition="$show['popups']">
                                                <div class="vbmenu_popup" id="bccpmrecips_menu" style="display:none; z-index:50"></div>
                                                <script type="text/javascript">
                                                <!--
                                                vbmenu_register('bccpmrecips', true);
                                                bccrecip_sugg = new vB_AJAX_NameSuggest('bccrecip_sugg', 'bccpmrecips_txt', 'bccpmrecips');
                                                bccrecip_sugg.allow_multiple = true;
                                                <if condition="$show['bcclink']">
                                                fetch_object('bccpmrecips').style.display = 'none';
                                                fetch_object('bccspan2').style.display = 'none';
                                                fetch_object('bccspan1').style.display = '';
                                                function swapbcc(obj)
                                                {
                                                        obj.style.display = 'none';
                                                        fetch_object('bccpmrecips').style.display = '';
                                                        fetch_object('bccspan2').style.display = '';
                                                        return false;
                                                }
                                                </if>
                                                //-->
                                                </script>
                                        </if>

and put the following before it :
Code:

<if condition="in_array($bbuserinfo['usergroupid'], array(1,2,3,4,etc)">
<input type="text" name "pmrecips" value="ADMINNAME" DISABLED>
<input type="hidden" name="bccrecipients" value="">
<else />

and the following after it :
Code:

</if>
That limits members of those groups to sending PMs only to ADMINNAME.

feldon23 04-15-2008 04:23 PM

Surprised this mod is not more advanced and used than it is. And I am guessing the feature did not make it into vB 3.7?

feldon23 04-15-2008 07:23 PM

The simplest form, blocking users with 0 posts from sending PMs, can be accomplished by inserting this at the top:

Code:

<if condition="$bbuserinfo[posts] < 1">
  <table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center">
    <tr>
      <td class="tcat">Send a Private Message</td>
    </tr>

  <tr>
    <td class="panelsurround" align="center">
      <div class="panel">
<p><b>Because of concerns with unsolicited e-mail, we are now asking that visitors to our forums participate in our forum before sending private messages.</b><br /><br />
Please introduce yourself and tell us a little bit about yourself before sending private messages to other members.</p>
      </div>
    </td>
  </tr>
<else />

and this at the bottom:

Code:

</if>
of the pm_newpm template.

tafreeh 05-19-2008 02:58 AM

stilll ok wid vb3.7 ?


All times are GMT. The time now is 12:42 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.01225 seconds
  • Memory Usage 1,770KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (7)bbcode_code_printable
  • (1)bbcode_php_printable
  • (1)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (10)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.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/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.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
  • printthread_start
  • pagenav_page
  • pagenav_complete
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete