Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 3.5 > vBulletin 3.5 Add-ons
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
Prevent Doubleposting Details »»
Prevent Doubleposting
Version: 1.0, by Xenon Xenon is offline
Developer Last Online: Oct 2023 Show Printable Version Email this Page

Version: 3.5.3 Rating:
Released: 09-19-2005 Last Update: 01-15-2007 Installs: 877
Uses Plugins
 
No support by the author.

When a User posts into a thread where he already has the lastpost, no new post will be added. The lastpost of him will be edited and the new text is put after his first message.
This will be done until the old post is older than 24 hours (you can change this timespan yourself)

Nothing more to say about that, it's the quite same as my vb3.0 version.

This Mod should run with 3.6 as well


** Please make sure you ENABLE this product after you install it - it is disabled by default. **

For vb 3.8 there are two alternative updates ;

https://vborg.vbsupport.ru/showthread.php?t=203705
https://vborg.vbsupport.ru/showthread.php?t=204177

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.
Благодарность от:
inphoenix

Comments
  #752  
Old 10-18-2007, 05:34 PM
Black Tiger's Avatar
Black Tiger Black Tiger is offline
 
Join Date: Apr 2004
Location: Netherlands
Posts: 957
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

No sorry I don't know, it's not my adjustment. Somewhere I've seen still another, more like you wanted, I have looked for it but can't find it anymore.
Reply With Quote
  #753  
Old 10-31-2007, 01:43 PM
redlabour's Avatar
redlabour redlabour is offline
 
Join Date: Mar 2004
Location: Wuppertal, NRW, Germany
Posts: 1,541
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Any Idea how to excluded a ForumID from beeing affected?

Quote:
Additional Condition (experts only)
Here you can add extra conditions, which will be required for a post to be seen as a doublepost. Be carefull, as this code is evaluated without doing any errorchecking, so use it at your own risk! (Examlpe: add !can_moderate() into the box to exclude moderators from doublepost prevention)
It collides at NuWiki if the Articlewriter wants to post a first Comment.
Reply With Quote
  #754  
Old 10-31-2007, 04:05 PM
yoyoyoyo's Avatar
yoyoyoyo yoyoyoyo is offline
 
Join Date: Dec 2004
Location: USA
Posts: 1,612
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Here is the edited product, which works in 3.6.8, and it is no longer disabled by default.

Thanks to Xenon for a great mod.
Reply With Quote
  #755  
Old 10-31-2007, 04:21 PM
Black Tiger's Avatar
Black Tiger Black Tiger is offline
 
Join Date: Apr 2004
Location: Netherlands
Posts: 957
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
which works in 3.6.8
What was needed to be edited then? The original one also worked in 3.6.8. You only changed the "disabled by default" or did you also change other things?
Reply With Quote
  #756  
Old 10-31-2007, 05:27 PM
yoyoyoyo's Avatar
yoyoyoyo yoyoyoyo is offline
 
Join Date: Dec 2004
Location: USA
Posts: 1,612
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

well, perhaps I worded it poorly - just stating it works in 3.6.8, not implying the other one didn't...

I made the changes indicated here:
https://vborg.vbsupport.ru/showpost....&postcount=725
and also made it enabled by default, since many people seemed to have problems with that.
Reply With Quote
  #757  
Old 10-31-2007, 10:13 PM
Black Tiger's Avatar
Black Tiger Black Tiger is offline
 
Join Date: Apr 2004
Location: Netherlands
Posts: 957
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Ah oke, I understand. Nice change, thanks!
Is the option from the change you made selectable like an on/off setting?
Reply With Quote
  #758  
Old 11-02-2007, 05:59 AM
redlabour's Avatar
redlabour redlabour is offline
 
Join Date: Mar 2004
Location: Wuppertal, NRW, Germany
Posts: 1,541
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by redlabour View Post
Any Idea how to excluded a ForumID from beeing affected?



It collides at NuWiki if the Articlewriter wants to post a first Comment.

Anyone ?
Reply With Quote
  #759  
Old 11-05-2007, 07:22 PM
Keyser S?ze's Avatar
Keyser S?ze Keyser S?ze is offline
 
Join Date: Apr 2002
Location: USA
Posts: 690
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

i would love it if when someone double posts and it is merged it would time stamp the merge,

i have mine set up that when it is merged it says -edit- above the merge, looks nice, and a time stamp next to it would be great
Reply With Quote
  #760  
Old 11-06-2007, 01:55 PM
Kalina's Avatar
Kalina Kalina is offline
 
Join Date: Mar 2005
Location: Canada
Posts: 99
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by too_cool_3 View Post
Thats Black Tiger but alas, that was one of the first things I tried but instead of having it show up like:

--------------- Added 17 Oct 2007 at 7:17pm ---------------

Which is how I want it, it shows up like this:

User Poster xx Hours and xx Minutes Later

In the same size font and colour as regular user posts so you cant tell the difference between the Post Separator and what the actual user wrote!?

Please someone must know.
I achieved what you're looking for by editing the "Main Doublepost Prevent Engine" plugin. You can replace all the code in it with the following.

PHP Code:
// ########### Xenon's prevent doublepost modification #########

$vbulletin->GPC['xen_isdoublepost'] = false;

// parse custom conditions
$custcond true;
if (
trim($vbulletin->options['xen_dp_custcond']) != '')
{
    eval(
'$custcond = ((' $vbulletin->options['xen_dp_custcond'] . ') ? true : false);');
}


// at first check if there is at least the possibility to be a doublepost
if ($custcond AND $type != 'thread'
    
AND $dp_threadinfo['lastpost'] > TIMENOW $vbulletin->options['xen_dp_timespan'] * 60
    
AND $dp_threadinfo['lastposter'] == $vbulletin->userinfo['username']
    AND 
$dataman->fetch_field('attach') == 0)
{
    
// we are here, so we may have a doublepost -> do more exact checkings
    
$doublepost $vbulletin->db->query_first("
        SELECT post.*
        FROM " 
TABLE_PREFIX "post AS post
        LEFT JOIN " 
TABLE_PREFIX "deletionlog AS deletionlog ON(deletionlog.primaryid = post.postid AND type = 'post')
        WHERE post.threadid = 
$threadinfo[threadid]
            AND post.dateline > " 
. (TIMENOW $vbulletin->options['xen_dp_timespan'] * 60) . "
            AND post.visible = 1 AND deletionlog.primaryid IS NULL
            AND post.postid <> 
$post[postid]
        ORDER BY post.dateline DESC
        LIMIT 1
    "
);

    if (
$doublepost['userid'] == $vbulletin->userinfo['userid'] AND $doublepost['attach'] == 0)
    {
        
// we truely have a doublepost, now check if the merged post still fits the rules!
        
$dpdataman =& datamanager_init('Post'$vbulletinERRTYPE_ARRAY'threadpost');
        
$dpdataman->set_existing($doublepost);
        
$doublepost['message'] = $doublepost['pagetext'] . "\n\n[SIZE="1"][COLOR="Silver"]" $vbulletin->userinfo['username'] . ' added ' intval((TIMENOW $doublepost['dateline'])/60) . ' Minutes and ' . ((TIMENOW $doublepost['dateline']) % 60). ' Seconds later...' $vbulletin->options['xen_dp_spacer'] . "[/COLOR][/SIZE]\n\n" $post['message'];

        
// set info
        
$dpdataman->set_info('preview'$post['preview']);
        
$dpdataman->set_info('parseurl'$post['parseurl']);
        
$dpdataman->set_info('posthash'$post['posthash']);
        
$dpdataman->set_info('forum'$foruminfo);
        
$dpdataman->set_info('thread'$dp_threadinfo);

        
// set options
        
$dpdataman->setr('showsignature'$post['signature']);
        
$dpdataman->setr('allowsmilie'$post['enablesmilies']);

        
// set data
        
$dpdataman->setr('pagetext'$doublepost['message']);
        
$dpdataman->setr('iconid'$post['iconid']);

        
$dpdataman->pre_save();
        if (!
$dpdataman->errors)
        {
            
// merged post is ok, so actually do the merging by editing old post
            
$vbulletin->GPC['xen_isdoublepost'] = true;

            if (
$vbulletin->options['xen_dp_bumpthread'])
            {
                
// bump thread, so change the post's dateline
                
$doublepost['dateline'] = TIMENOW;
                
$dpdataman->setr('dateline'$doublepost['dateline']);
            }
            
$dpdataman->save();

            
// as we have edited an old post, we can now delete the new created post
            
$postman =& datamanager_init('Post'$vbulletinERRTYPE_SILENT'threadpost');
            
$postman->set_existing($post);
            
$postman->delete($foruminfo['countposts'], $threadinfo['threadid'], $removaltype true, array('userid' => $vbulletin->userinfo['userid'], 'username' => $vbulletin->userinfo['username'], 'reason' => $vbulletin->options['xen_dp_editedby'], 'keepattachments' => false), false);
            unset(
$postman);

            
$doublepost['oldmessage'] = $post['message'];
            
$post $doublepost;
            
$id $post['postid'];

            
//now add edited by message
            
if ($vbulletin->options['xen_dp_editedby'] != '')
            {
                
$vbulletin->db->query_write("
                    REPLACE INTO " 
TABLE_PREFIX "editlog (postid, userid, username, dateline, reason)
                    VALUES (
$post[postid], " $vbulletin->userinfo['userid'] . ", '" addslashes($vbulletin->userinfo['username']) . "', " TIMENOW ", '" addslashes($vbulletin->options['xen_dp_editedby']) . "')
                "
);
            }

            
// last step update counters
            
build_thread_counters($post['threadid']);
            
build_forum_counters($foruminfo['forumid']);
        }
    }

Reply With Quote
  #761  
Old 11-07-2007, 04:33 AM
mauro1947 mauro1947 is offline
 
Join Date: Nov 2006
Posts: 90
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Anyone knows how to disable to a certain user (mauro1947 for example)???
Thanks
Regards!
Reply With Quote
Reply


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 04:45 AM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.05406 seconds
  • Memory Usage 2,380KB
  • 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
  • (1)bbcode_php
  • (4)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
  • (3)pagenav_pagelinkrel
  • (11)post_thanks_box
  • (1)post_thanks_box_bit
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit
  • (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
  • fetch_musername
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • post_thanks_function_fetch_thanks_bit_start
  • post_thanks_function_show_thanks_date_start
  • post_thanks_function_show_thanks_date_end
  • post_thanks_function_fetch_thanks_bit_end
  • post_thanks_function_fetch_post_thanks_template_start
  • post_thanks_function_fetch_post_thanks_template_end
  • 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